pub struct OutStepContext<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T>{ /* private fields */ }Expand description
A StepContext view that only exposes outputs / managers / clock / telemetry.
Explicitly does not provide access to input queues or input managers.
Implementations§
Source§impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>where
OutP: Payload,
OutQ: Edge,
OutM: MemoryManager<OutP>,
C: PlatformClock + Sized,
T: Telemetry + Sized,
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>where
OutP: Payload,
OutQ: Edge,
OutM: MemoryManager<OutP>,
C: PlatformClock + Sized,
T: Telemetry + Sized,
Sourcepub fn out_try_push(&mut self, o: usize, m: Message<OutP>) -> EnqueueResult
pub fn out_try_push(&mut self, o: usize, m: Message<OutP>) -> EnqueueResult
Push a message to an output queue via the memory manager.
Stores the message in the manager, pushes the token to the edge, and handles eviction (frees evicted tokens from the manager).
Sourcepub fn out_occupancy(&mut self, o: usize) -> EdgeOccupancy
pub fn out_occupancy(&mut self, o: usize) -> EdgeOccupancy
Snapshot occupancy for the given output edge.
Sourcepub fn out_policy(&mut self, o: usize) -> EdgePolicy
pub fn out_policy(&mut self, o: usize) -> EdgePolicy
Return the policy for the given output (copy).
Sourcepub fn telemetry_mut(&mut self) -> &mut T
pub fn telemetry_mut(&mut self) -> &mut T
Borrow the telemetry sink.
Sourcepub fn ticks_to_nanos(&self, t: Ticks) -> u64
pub fn ticks_to_nanos(&self, t: Ticks) -> u64
Convert clock ticks to nanoseconds.
Sourcepub fn nanos_to_ticks(&self, ns: u64) -> Ticks
pub fn nanos_to_ticks(&self, ns: u64) -> Ticks
Convert nanoseconds to clock ticks.
Auto Trait Implementations§
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> Freeze for OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> RefUnwindSafe for OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>where
C: RefUnwindSafe,
T: RefUnwindSafe,
OutP: RefUnwindSafe,
OutQ: RefUnwindSafe,
OutM: RefUnwindSafe,
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> Send for OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> Sync for OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> Unpin for OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>where
OutP: Unpin,
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> UnsafeUnpin for OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>
impl<'graph, 'ctx, 'clock, const OUT: usize, OutP, OutQ, OutM, C, T> !UnwindSafe for OutStepContext<'graph, 'ctx, 'clock, OUT, OutP, OutQ, OutM, C, T>
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