nasa / fprime

F´ - A flight software and embedded systems framework
https://fprime.jpl.nasa.gov
Apache License 2.0
9.96k stars 1.29k forks source link

Properly Support ERT Ordering #2650

Open LeStarch opened 3 months ago

LeStarch commented 3 months ago
F´ Version
Affected Component

Feature Description

In order to properly support ERT ordering, I recommend:

  1. Add a TimeType field to the SysData class and add an accessor for get_ert_time().
  2. Have the GDS record ERT at some point.
  3. Preserve the use of the fsw_order argument in the test API's constructor and sub-history functions by passing the fsw_order argument to the chronological history constructor.
  4. Modify chronological history to choose whether to use get_time() or get_ert_time() for its ordering/returning operations:
LeStarch commented 3 months ago

As part of the work to add ERT and have chronological histories work for both ERT and FSW orders, histories should be updated to have a get_current_marker() method. This will allow the histories to specify the best way to mark a position with respect to their own implementations. For reference: ChronologicalHistories should use a TimeType, Ram and Test History should use an index.