libdvbpsi  1.2.0
Data Structures | Typedefs | Functions
atsc_stt.h File Reference

Decode PSIP System Time Table (ATSC STT). More...

Go to the source code of this file.

Data Structures

struct  dvbpsi_atsc_stt_s
 STT structure. More...

Typedefs

typedef struct dvbpsi_atsc_stt_s dvbpsi_atsc_stt_t
 dvbpsi_atsc_stt_t type definition.
typedef void(* dvbpsi_atsc_stt_callback )(void *p_cb_data, dvbpsi_atsc_stt_t *p_new_stt)
 Callback type definition.

Functions

bool dvbpsi_atsc_AttachSTT (dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension, dvbpsi_atsc_stt_callback pf_stt_callback, void *p_cb_data)
 Creation and initialization of a STT decoder.
void dvbpsi_atsc_DetachSTT (dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_externsion)
 Destroy a STT decoder.
void dvbpsi_atsc_InitSTT (dvbpsi_atsc_stt_t *p_stt, uint8_t i_table_id, uint16_t i_extension, uint8_t i_protocol, bool b_current_next)
 Initialize a user-allocated dvbpsi_atsc_stt_t structure.
dvbpsi_atsc_stt_tdvbpsi_atsc_NewSTT (uint8_t i_table_id, uint16_t i_extension, uint8_t i_version, bool b_current_next)
 Allocate and initialize a new dvbpsi_atsc_stt_t structure. Use ObjectRefDec to delete it.
void dvbpsi_atsc_EmptySTT (dvbpsi_atsc_stt_t *p_stt)
 Clean a dvbpsi_atsc_stt_t structure.
void dvbpsi_atsc_DeleteSTT (dvbpsi_atsc_stt_t *p_stt)
 Clean and free a dvbpsi_atsc_stt_t structure.

Detailed Description

Decode PSIP System Time Table (ATSC STT).

Author
Adam Charrett

Function Documentation

bool dvbpsi_atsc_AttachSTT ( dvbpsi_t p_dvbpsi,
uint8_t  i_table_id,
uint16_t  i_extension,
dvbpsi_atsc_stt_callback  pf_stt_callback,
void *  p_cb_data 
)

Creation and initialization of a STT decoder.

Parameters
p_dvbpsidvbpsi handle to Subtable demultiplexor to which the decoder is attached
i_table_idTable ID, 0xCD.
i_extensionTable ID extension, here it should be 0.
pf_stt_callbackfunction to call back on new STT.
p_cb_dataprivate data given in argument to the callback.
Returns
true if everything went ok else false
dvbpsi_atsc_DeleteSTT ( dvbpsi_atsc_stt_t p_stt)

Clean and free a dvbpsi_atsc_stt_t structure.

Parameters
p_sttpointer to the STT structure
Returns
nothing.
void dvbpsi_atsc_DetachSTT ( dvbpsi_t p_dvbpsi,
uint8_t  i_table_id,
uint16_t  i_extension 
)

Destroy a STT decoder.

Parameters
p_dvbpsidvbpsi handle to Subtable demultiplexor to which the decoder is attached.
i_table_idTable ID, 0xCD.
i_extensionTable extension, ignored as this should always be 0. (Required to match prototype for demux)
Returns
nothing.
void dvbpsi_atsc_EmptySTT ( dvbpsi_atsc_stt_t p_stt)

Clean a dvbpsi_atsc_stt_t structure.

Parameters
p_sttpointer to the STT structure
Returns
nothing.
void dvbpsi_atsc_InitSTT ( dvbpsi_atsc_stt_t p_stt,
uint8_t  i_table_id,
uint16_t  i_extension,
uint8_t  i_protocol,
bool  b_current_next 
)

Initialize a user-allocated dvbpsi_atsc_stt_t structure.

Parameters
p_sttpointer to the STT structure
i_table_idTable ID, 0xCD.
i_extensionTable extension, ignored as this should always be 0.
i_protocolPSIP Protocol version.
b_current_nextcurrent next indicator
Returns
nothing.
dvbpsi_atsc_stt_t * dvbpsi_atsc_NewSTT ( uint8_t  i_table_id,
uint16_t  i_extension,
uint8_t  i_version,
bool  b_current_next 
)

Allocate and initialize a new dvbpsi_atsc_stt_t structure. Use ObjectRefDec to delete it.

Parameters
i_table_idTable ID, 0xCD.
i_extensionTable extension, ignored as this should always be 0.
i_versionPSIP Protocol version.
b_current_nextcurrent next indicator
Returns
p_stt pointer to the STT structure