pub struct SimulationState<B: SimBackend> { /* private fields */ }Expand description
Backend-independent state and execution rules for timed simulation.
Implementations§
Source§impl<B: SimBackend> SimulationState<B>
impl<B: SimBackend> SimulationState<B>
Sourcepub fn synchronize_event_values(&mut self, backend: &B)
pub fn synchronize_event_values(&mut self, backend: &B)
Rebase edge detection after state was advanced outside this scheduler.
pub fn new( backend: &B, topo_signals: Vec<(SignalRef, usize, usize)>, domain_kinds: Vec<Option<DomainKind>>, event_info: Vec<EventInfo<B>>, ) -> Self
pub fn add_clock( &mut self, event: B::Event, signal: SignalRef, period: u64, initial_delay: u64, )
pub fn schedule( &mut self, event: B::Event, signal: SignalRef, time: u64, value: u8, )
pub fn step<E>(
&mut self,
executor: &mut E,
) -> Result<Option<u64>, SimulatorErrorCode>where
E: SimulationExecutor<Backend = B>,
pub fn time(&self) -> u64
pub fn set_time(&mut self, time: u64)
pub fn next_event_time(&self) -> Option<u64>
Auto Trait Implementations§
impl<B> Freeze for SimulationState<B>
impl<B> RefUnwindSafe for SimulationState<B>
impl<B> Send for SimulationState<B>
impl<B> Sync for SimulationState<B>
impl<B> Unpin for SimulationState<B>
impl<B> UnsafeUnpin for SimulationState<B>
impl<B> UnwindSafe for SimulationState<B>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more