pub struct TableSyntaxHeader<'buf> { /* private fields */ }Expand description
Represents the fields that appear within table sections that use the common ‘section syntax’.
This will only be used for a table section if the
section_syntax_indicator
field in the SectionCommonHeader of the section is true.
Implementations§
Source§impl<'buf> TableSyntaxHeader<'buf>
impl<'buf> TableSyntaxHeader<'buf>
Sourcepub fn new(buf: &'buf [u8]) -> TableSyntaxHeader<'buf>
pub fn new(buf: &'buf [u8]) -> TableSyntaxHeader<'buf>
Constructs a new TableSyntaxHeader, wrapping the given slice, which will all parsing of the header’s fields.
Panics if the given slice is less than TableSyntaxHeader::SIZE bytes long.
Sourcepub fn id(&self) -> u16
pub fn id(&self) -> u16
The initial 16-bit field within a ‘section syntax’ PSI table (which immediately follows the
section_length field).
13818-1 refers to this field as,
transport_stream_idwhen it appears within a Program Association Section- part of the
reservedfield when it appears within a Conditional Access Section program_numberwhen it appears within a Program Map Sectiontable_id_extensionwhen it appears within a Private Section
Sourcepub fn version(&self) -> u8
pub fn version(&self) -> u8
A 5-bit value that can be used to quickly check if this table has changed since the last time it was periodically inserted within the transport stream being read.
Sourcepub fn current_next_indicator(&self) -> CurrentNext
pub fn current_next_indicator(&self) -> CurrentNext
Is this table applicable now, or will it become applicable at some future time.
NB I’ve not seen sample data that uses anything other than CurrentNext::Current, so
handling of tables with ‘future’ applicability may not actually work properly.
Sourcepub fn section_number(&self) -> u8
pub fn section_number(&self) -> u8
The number of this section, within a potentially multi-section table.
It is common for only one section to appear within any PSI table, in which case this value
will always be 0 within a given stream. The value of last_section_number() can be
used to tell if multiple sections are expected.
Sourcepub fn last_section_number(&self) -> u8
pub fn last_section_number(&self) -> u8
Indicates the value of section_number() that will appear within the last section within
a table. In many streams, this value is always 0, however multiple table sections may
need be used if the table needs to carry a large number of entries.