#[non_exhaustive]pub enum DataUnitPayload<'a> {
Teletext(TeletextDataField),
Vps(VpsDataField),
Wss(WssDataField),
ClosedCaptioning(ClosedCaptioningDataField),
Monochrome(MonochromeDataField<'a>),
Stuffing {
length: u8,
},
Opaque(&'a [u8]),
}Expand description
The typed body of one data unit (ETSI EN 301 775 §4.4, dispatched on
data_unit_id).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Teletext(TeletextDataField)
EBU / Inverted Teletext (0x02, 0x03, 0xC0) — §4.5.
Vps(VpsDataField)
VPS (0xC3) — §4.6.
Wss(WssDataField)
WSS (0xC4) — §4.7.
ClosedCaptioning(ClosedCaptioningDataField)
Closed Captioning (0xC5) — §4.8.
Monochrome(MonochromeDataField<'a>)
Monochrome 4:2:2 luminance samples (0xC6) — §4.9.
Stuffing
Stuffing (0xFF) — §4.4.1: no data field. data_unit_length stuffing
bytes follow and are discarded; their count is retained for round-trip.
Opaque(&'a [u8])
Reserved / user-defined data_unit_id whose body this crate does not interpret (Table 3: discard). The raw body bytes are retained.
Implementations§
Source§impl<'a> DataUnitPayload<'a>
impl<'a> DataUnitPayload<'a>
Sourcepub fn serialized_len(&self) -> usize
pub fn serialized_len(&self) -> usize
The number of body bytes (data_unit_length) this payload serializes to.
Sourcepub fn parse(id: DataUnitId, body: &'a [u8]) -> Result<Self>
pub fn parse(id: DataUnitId, body: &'a [u8]) -> Result<Self>
Parse a data-unit body of length bytes against its id (§4.4, Table 1
dispatch, resolved per Table 3). body must be exactly the
data_unit_length bytes following the length field.
Sourcepub fn serialize_into(&self, out: &mut [u8]) -> Result<usize>
pub fn serialize_into(&self, out: &mut [u8]) -> Result<usize>
Serialize the body into out, returning the number of bytes written.
Trait Implementations§
Source§impl<'a> Clone for DataUnitPayload<'a>
impl<'a> Clone for DataUnitPayload<'a>
Source§fn clone(&self) -> DataUnitPayload<'a>
fn clone(&self) -> DataUnitPayload<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'a> Debug for DataUnitPayload<'a>
impl<'a> Debug for DataUnitPayload<'a>
impl<'a> Eq for DataUnitPayload<'a>
Source§impl<'a> PartialEq for DataUnitPayload<'a>
impl<'a> PartialEq for DataUnitPayload<'a>
Source§impl<'a> Serialize for DataUnitPayload<'a>
Available on crate feature serde only.
impl<'a> Serialize for DataUnitPayload<'a>
serde only.