pub trait CuRecordedReplayApplication<S: SectionStorage, L: UnifiedLogWrite<S> + 'static>: CuSimApplication<S, L> {
type RecordedDataSet: CopperListTuple;
// Required method
fn replay_recorded_copperlist(
&mut self,
clock_mock: &RobotClockMock,
copperlist: &CopperList<Self::RecordedDataSet>,
keyframe: Option<&KeyFrame>,
) -> CuResult<()>;
}Expand description
Simulation-enabled applications that can replay a recorded CopperList verbatim.
This is the exact-output replay primitive used by deterministic re-sim flows: task outputs and bridge receives are overridden from the recorded CopperList, bridge sends are skipped, and an optional recorded keyframe can be injected verbatim when the current CL is expected to capture one.
Required Associated Types§
Sourcetype RecordedDataSet: CopperListTuple
type RecordedDataSet: CopperListTuple
The generated recorded CopperList payload set for this application.
Required Methods§
Sourcefn replay_recorded_copperlist(
&mut self,
clock_mock: &RobotClockMock,
copperlist: &CopperList<Self::RecordedDataSet>,
keyframe: Option<&KeyFrame>,
) -> CuResult<()>
fn replay_recorded_copperlist( &mut self, clock_mock: &RobotClockMock, copperlist: &CopperList<Self::RecordedDataSet>, keyframe: Option<&KeyFrame>, ) -> CuResult<()>
Replay one recorded CopperList exactly as logged.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.