pub enum SystemFrame {
Start,
Stop,
Interrupt,
Error {
message: Arc<str>,
fatal: bool,
},
}Expand description
System frames: lifecycle, control, and errors.
These are bidirectional: Interrupt and Start/Stop travel downstream;
Error typically travels upstream. Immutable once constructed.
A frame belongs on this lane only if it must hop the queue — be handled
ahead of the data backlog instead of in sequence with it. That is a
deliberately small set (a barge-in Interrupt, Start/Stop lifecycle, an
Error), and the bar is high. Anything that marks a point in the stream —
a state change that must stay ordered with the media it annotates, like the
voice-activity edges (SpeechStarted / SpeechStopped) or a future turn
boundary — instead rides the data lane as a DataFrame, where frames keep
their arrival order. When in doubt, use the data lane.
Variants§
Start
Pipeline is starting; stages should initialise any runtime state.
Stop
Graceful shutdown; stages should flush and clean up.
Interrupt
User barged in; stages should discard in-flight work and reset.
Error
An error propagated through the pipeline.
Trait Implementations§
Source§impl Clone for SystemFrame
impl Clone for SystemFrame
Source§fn clone(&self) -> SystemFrame
fn clone(&self) -> SystemFrame
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more