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

Decode PSIP Master Guide Table (ATSC MGT). More...

Go to the source code of this file.

Data Structures

struct  dvbpsi_atsc_mgt_table_s
 MGT table structure. More...
struct  dvbpsi_atsc_mgt_s
 MGT structure. More...

Typedefs

typedef struct
dvbpsi_atsc_mgt_table_s 
dvbpsi_atsc_mgt_table_t
 dvbpsi_atsc_mgt_table_t type definition.
typedef struct dvbpsi_atsc_mgt_s dvbpsi_atsc_mgt_t
 dvbpsi_atsc_mgt_t type definition.
typedef void(* dvbpsi_atsc_mgt_callback )(void *p_cb_data, dvbpsi_atsc_mgt_t *p_new_mgt)
 Callback type definition.

Functions

bool dvbpsi_atsc_AttachMGT (dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension, dvbpsi_atsc_mgt_callback pf_callback, void *p_cb_data)
 Creation and initialization of a MGT decoder.
void dvbpsi_atsc_DetachMGT (dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension)
 Destroy a MGT decoder.
void dvbpsi_atsc_InitMGT (dvbpsi_atsc_mgt_t *p_mgt, uint8_t i_table_id, uint16_t i_extension, uint8_t i_version, uint8_t i_protocol, bool b_current_next)
 Initialize a user-allocated dvbpsi_atsc_mgt_t structure.
dvbpsi_atsc_mgt_tdvbpsi_atsc_NewMGT (uint8_t i_table_id, uint16_t i_extension, uint8_t i_version, uint8_t i_protocol, bool b_current_next)
 Allocate and initialize a new dvbpsi_mgt_t structure.
void dvbpsi_atsc_EmptyMGT (dvbpsi_atsc_mgt_t *p_mgt)
 Clean a dvbpsi_mgt_t structure.
void dvbpsi_atsc_DeleteMGT (dvbpsi_atsc_mgt_t *p_mgt)
 Clean and free a dvbpsi_mgt_t structure.

Detailed Description

Decode PSIP Master Guide Table (ATSC MGT).

Author
Adam Charrett and Michael Krufky

Function Documentation

bool dvbpsi_atsc_AttachMGT ( dvbpsi_t p_dvbpsi,
uint8_t  i_table_id,
uint16_t  i_extension,
dvbpsi_atsc_mgt_callback  pf_callback,
void *  p_cb_data 
)

Creation and initialization of a MGT decoder.

Parameters
p_dvbpsidvbpsi handle to Subtable demultiplexor to which the decoder is attached
i_table_idTable ID, 0xC7.
i_extensionTable ID extension, here 0x0000.
pf_callbackfunction to call back on new MGT.
p_cb_dataprivate data given in argument to the callback.
Returns
true if everything went ok, false otherwise
void dvbpsi_atsc_DeleteMGT ( dvbpsi_atsc_mgt_t p_mgt)

Clean and free a dvbpsi_mgt_t structure.

Parameters
p_mgtpointer to the MGT structure
Returns
nothing.
void dvbpsi_atsc_DetachMGT ( dvbpsi_t p_dvbpsi,
uint8_t  i_table_id,
uint16_t  i_extension 
)

Destroy a MGT decoder.

Parameters
p_dvbpsidvbpsi handle to Subtable demultiplexor to which the decoder is attached
i_table_idTable ID, 0xC7.
i_extensionTable ID extension, here 0x0000.
Returns
nothing.
void dvbpsi_atsc_EmptyMGT ( dvbpsi_atsc_mgt_t p_mgt)

Clean a dvbpsi_mgt_t structure.

Parameters
p_mgtpointer to the MGT structure
Returns
nothing.
void dvbpsi_atsc_InitMGT ( dvbpsi_atsc_mgt_t p_mgt,
uint8_t  i_table_id,
uint16_t  i_extension,
uint8_t  i_version,
uint8_t  i_protocol,
bool  b_current_next 
)

Initialize a user-allocated dvbpsi_atsc_mgt_t structure.

Parameters
p_mgtpointer to the MGT structure
i_table_idTable ID, 0xC7.
i_extensionTable ID extension, here 0x0000.
i_versionMGT version
i_protocolPSIP Protocol version.
b_current_nextcurrent next indicator
Returns
nothing.
dvbpsi_atsc_mgt_t * dvbpsi_atsc_NewMGT ( uint8_t  i_table_id,
uint16_t  i_extension,
uint8_t  i_version,
uint8_t  i_protocol,
bool  b_current_next 
)

Allocate and initialize a new dvbpsi_mgt_t structure.

Parameters
i_table_idTable ID, 0xC7.
i_extensionTable ID extension, here 0x0000.
i_versionMGT version
i_protocolPSIP Protocol version.
b_current_nextcurrent next indicator
Returns
p_mgt pointer to the MGT structure, or NULL on failure