Skip to main content

cu29_runtime/
app_sim.rs

1use crate::curuntime::{CuRuntime, KeyFrame};
2use cu29_clock::CuTime;
3use cu29_traits::CopperListTuple;
4
5/// Helper methods injected for simulation-only builds.
6impl<CT, CB, P, M, const NBCL: usize> CuRuntime<CT, CB, P, M, NBCL>
7where
8    P: CopperListTuple + crate::copperlist::CuListZeroedInit + Default + 'static,
9    M: crate::monitoring::CuMonitor,
10{
11    #[cfg(feature = "std")]
12    pub fn set_forced_keyframe_timestamp(&mut self, ts: CuTime) {
13        self.keyframes_manager.set_forced_timestamp(ts);
14    }
15
16    /// Reuse a recorded keyframe verbatim (used during deterministic replay).
17    #[cfg(feature = "std")]
18    pub fn lock_keyframe(&mut self, keyframe: &KeyFrame) {
19        self.keyframes_manager.lock_keyframe(keyframe);
20    }
21}