Expand description
Stream boundary contract: the StreamEnvelope that wraps every packet
crossing the streaming fabric.
An envelope binds a StreamPacket to the routing and timing metadata a
transport needs to carry it: the originating stream and packet ids, the
media and direction, a monotonic sequence number, the Ticks that locate
it on its clocks, the ClockDomains it rides, the TransportProfile
that bounds what the transport may do, and any diagnostics raised along the
way.
The kernel owns the protocol vocabulary referenced here – Symbol,
Expr, Tick, and the clock/capability contracts. This module supplies
the concrete envelope behavior: construction with validation, the wire form
(StreamEnvelope::to_expr / TryFrom<Expr>), and the mapping of
clock-domain symbols to the ClockDomain enum.
Structs§
- Stream
Envelope - A single packet plus the routing and timing metadata that carries it across the streaming fabric.
- Transport
Profile - The capability and latency contract a transport offers for a stream.
Enums§
- Clock
Domain - Clock a stream is timed against.
- Latency
Class - Real-time latency promise a transport profile makes.
- Stream
Capability - One thing a transport is permitted to do with a stream.
Constants§
- STREAM_
ENVELOPE_ VERSION - Wire version of the
StreamEnvelopemap form.
Functions§
- stream_
envelope_ tag_ symbol - Returns the runtime tag
Symbolthat marks a map as a stream envelope.