pub struct OutputEnvelope {Show 13 fields
pub feed_id: FeedId,
pub frame_seq: u64,
pub ts: MonotonicTs,
pub wall_ts: WallTs,
pub detections: DetectionSet,
pub tracks: Vec<Track>,
pub signals: Vec<DerivedSignal>,
pub scene_features: Vec<SceneFeature>,
pub view: ViewState,
pub provenance: Provenance,
pub metadata: TypedMetadata,
pub frame: Option<FrameEnvelope>,
pub admission: AdmissionSummary,
}Expand description
Structured output for one processed frame.
Contains the complete perception result, view state, and full provenance.
Delivered to the user via OutputSink::emit.
Broadcast subscribers receive Arc<OutputEnvelope> to avoid cloning the
full payload on every send. The per-feed OutputSink receives owned
values.
Fields§
§feed_id: FeedIdWhich feed produced this output.
frame_seq: u64Monotonic frame sequence number.
ts: MonotonicTsMonotonic timestamp of the source frame.
wall_ts: WallTsWall-clock timestamp of the source frame.
detections: DetectionSetFinal detection set after all stages.
tracks: Vec<Track>Final track set after all stages.
signals: Vec<DerivedSignal>All derived signals from all stages.
scene_features: Vec<SceneFeature>Scene-level features from all stages.
view: ViewStateView state at the time of this frame.
provenance: ProvenanceFull provenance: stage timings, view decisions, pipeline latency.
metadata: TypedMetadataExtensible output metadata.
frame: Option<FrameEnvelope>The source frame, present when FrameInclusion::Always is
configured, or on sampled frames when FrameInclusion::Sampled
is configured.
This is a zero-copy Arc clone of the frame the pipeline processed.
admission: AdmissionSummaryTemporal-store admission outcome for this frame’s tracks.
Trait Implementations§
Source§impl Clone for OutputEnvelope
impl Clone for OutputEnvelope
Source§fn clone(&self) -> OutputEnvelope
fn clone(&self) -> OutputEnvelope
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for OutputEnvelope
impl !RefUnwindSafe for OutputEnvelope
impl Send for OutputEnvelope
impl Sync for OutputEnvelope
impl Unpin for OutputEnvelope
impl UnsafeUnpin for OutputEnvelope
impl !UnwindSafe for OutputEnvelope
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more