Struct mpeg2ts_reader::psi::TableSyntaxHeader[][src]

pub struct TableSyntaxHeader<'buf> { /* fields omitted */ }

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

impl<'buf> TableSyntaxHeader<'buf>[src]

pub const SIZE: usize[src]

The size of the header; 5 bytes

pub fn new(buf: &'buf [u8]) -> TableSyntaxHeader<'buf>[src]

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.

pub fn id(&self) -> u16[src]

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_id when it appears within a Program Association Section
  • part of the reserved field when it appears within a Conditional Access Section
  • program_number when it appears within a Program Map Section
  • table_id_extension when it appears within a Private Section

pub fn version(&self) -> u8[src]

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.

pub fn current_next_indicator(&self) -> CurrentNext[src]

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.

pub fn section_number(&self) -> u8[src]

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.

pub fn last_section_number(&self) -> u8[src]

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.

Trait Implementations

impl<'buf> Debug for TableSyntaxHeader<'buf>[src]

Auto Trait Implementations

impl<'buf> RefUnwindSafe for TableSyntaxHeader<'buf>

impl<'buf> Send for TableSyntaxHeader<'buf>

impl<'buf> Sync for TableSyntaxHeader<'buf>

impl<'buf> Unpin for TableSyntaxHeader<'buf>

impl<'buf> UnwindSafe for TableSyntaxHeader<'buf>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.