Expand description
Ejection delays: the time from burnout to the ejection charge, or none for a plugged motor.
Motor files and catalogs write a motor’s available delays as one string. The RASP spec gives
“delays separated by dashes”, with 0 for an ejection charge with no delay and P for plugged
(docs/format/eng.md). Real files also use commas, a trailing P, and 100 or 1000 as
plugged markers; checked against ThrustCurve.org’s metadata, 100 and 1000 nearly always mean
plugged, and so does 0 more often than not (counts in docs/format/eng.md and rse.md). So
this reader:
- splits on
-and,, dropping empty pieces with a warning; - reads
P(either case),100and1000asDelay::Plugged; - reads
0asDelay::ZeroOrPlugged, with a warning, so that it can’t become an ejection at burnout without a decision; - reads other numbers as
Delay::Seconds.
The raw string stays in the file model so writers reproduce it exactly; physics should prefer the catalog’s delays.
Structs§
- Delay
List - A delay string read into settings.
- Delay
Warning - A problem found while reading a delay string.
Enums§
- Delay
- One available delay setting. Serialized with a
kindtag and the seconds asvalue:{"kind":"seconds","value":6.0},{"kind":"plugged"}.