Expand description

Trait defining static storage sizes.

A type that implements this trait defines the sizes for the static storage used for OSNMA data. In general, unsigned integers from the typenum crate should be used anywhere a StaticStorageTypenum is needed.

There is some consistency that must be ensured between the different sizes. If a type does not follow these consistency rules, users of that type may panic or give wrong results.

Required Associated Types

Number of navigation message subframes to store.

Several navigation messages are stored as a history of past data. The value used here should usually be one more than the value of MackDepth, because tags in the MACK message refer to navigation data transmitted in the previous subframe.

Product of NUM_SATS and NavMessageDepth.

This type should always equal the product of NUM_SATS and NavMessageDepth.

Number of MACK message subframes to store.

Several MACK messages are stored as a history of past data. In order to process Slow MAC, the value of this type should be at least 12, because it is necessary to store the current subframe, the previous subframe (whose tags correspond to the key in the current subframe), plus the 10 previous subframes to account for the Slow MAC delay. If Slow MAC processing is not needed, then this value can be as small as 2.

Product of NUM_SATS and MackDepth.

This type should always equal the product of NUM_SATS and MackDepth.

Required Associated Constants

The number of satellites to store in parallel.

This should be 36 (or NUM_SVNS) to store data for the full constellation, and a value around 8 to 12 to store data only for the satellites in view.

Implementors