17 #ifndef _TS2_TABLES_H_    18 #define _TS2_TABLES_H_    33 #define TS2_PAT_TABLE_ID 0x00    34 #define TS2_CAT_TABLE_ID 0x01    35 #define TS2_PMT_TABLE_ID 0x02    37 #define TS2_SECTION_CRC_SIZE            4    38 #define TS2_SECTION_LONG_HEADER_SIZE    8    39 #define TS2_SECTION_SHORT_HEADER_SIZE   3   127                   const ATX_Byte* data,
   129                   ATX_Boolean     payload_unit_start);
   141                              ATX_DataBuffer*  packets,
   142                              ATX_UInt32*      continuity_counter);
   162                        ATX_UInt16*    pmt_pid);
   166                   ATX_UInt16     program_num,
   167                   ATX_UInt16*    pmt_pid);
   187 #define TS2_SectionHeader_GetSize(h)    \   188     (h)->section_syntax_indicator?      \   189     TS2_SECTION_LONG_HEADER_SIZE:       \   190     TS2_SECTION_SHORT_HEADER_SIZE TS2_SectionHeader header
Definition: Ts2Tables.h:56
Definition: Ts2Tables.h:99
ATX_List * descriptors
Definition: Ts2Tables.h:101
Definition: Ts2Tables.h:86
ATX_Result TS2_SectionHeader_Serialize(TS2_SectionHeader *header, ATX_Byte *buffer)
ATX_Result(* ParseSection)(TS2_Table *self)
Definition: Ts2Tables.h:76
Definition: Ts2Tables.h:81
TS2_EXPORT ATX_Result TS2_Table_AddPacket(TS2_Table *self, const TS2_Packet *packet)
same as TS2_Table_AddData where the packet payload is added 
ATX_Result(* CheckTableId)(ATX_UInt8 table_id)
Definition: Ts2Tables.h:75
Definition: Ts2Tables.h:55
ATX_Result TS2_Table_UpdateSectionBuffer(TS2_Table *self)
TS2_EXPORT ATX_Result TS2_PAT_Construct(TS2_PAT *self)
TS2_EXPORT ATX_Result TS2_CAT_Construct(TS2_CAT *self)
TS2_Table base
Definition: Ts2Tables.h:100
void(* Destruct)(TS2_Table *self)
Definition: Ts2Tables.h:77
ATX_List * program_info_descs
Definition: Ts2Tables.h:95
ATX_UInt16 pcr_pid
Definition: Ts2Tables.h:93
TS2_Section section
Definition: Ts2Tables.h:78
ATX_Boolean TS2_Table_IsEqual(TS2_Table *self, TS2_Table *other)
Definition: Ts2Tables.h:104
ATX_List * elementary_streams
Definition: Ts2Tables.h:96
ATX_UInt16 pid
Definition: Ts2Tables.h:83
ATX_Size TS2_Section_GetPayloadSize(TS2_Section *section)
#define TS2_EXPORT
Definition: Ts2Config.h:67
ATX_Result TS2_PMT_RemoveCADescriptors(TS2_PMT *self)
ATX_Byte * buffer
Definition: Ts2Tables.h:58
Definition: Ts2Tables.h:65
Definition: Ts2Packet.h:91
TS2_EXPORT ATX_Result TS2_PMT_Construct(TS2_PMT *self)
TS2_Table base
Definition: Ts2Tables.h:87
ATX_Boolean is_complete
Definition: Ts2Tables.h:70
ATX_Result TS2_Table_AddData(TS2_Table *self, const ATX_Byte *data, ATX_Size data_size, ATX_Boolean payload_unit_start)
Definition: Ts2Tables.h:68
TS2_EXPORT ATX_Result TS2_PAT_GetFirstPMTPid(const TS2_PAT *self, ATX_UInt16 *pmt_pid)
TS2_EXPORT ATX_Result TS2_PAT_GetPMTPid(const TS2_PAT *self, ATX_UInt16 program_num, ATX_UInt16 *pmt_pid)
ATX_UInt16 program_number
Definition: Ts2Tables.h:82
ATX_Size bytes_read
Definition: Ts2Tables.h:59
TS2_EXPORT void TS2_Table_Destruct(TS2_Table *self)
Definition: Ts2Tables.h:64
ATX_Result(* UpdateSectionBuffer)(TS2_Table *self)
Definition: Ts2Tables.h:72
ATX_Byte * payload
Definition: Ts2Tables.h:57
TS2_Table base
Definition: Ts2Tables.h:105
Definition: Ts2Tables.h:91
Definition: Ts2Tables.h:63
TS2_Table base
Definition: Ts2Tables.h:92
ATX_Result TS2_Table_SerializeToPackets(TS2_Table *self, ATX_UInt16 pid, ATX_DataBuffer *packets, ATX_UInt32 *continuity_counter)
TS2_Crc_Status
Definition: Ts2Tables.h:62
ATX_UInt16 program_info_length
Definition: Ts2Tables.h:94
TS2_Crc_Status crc_status
Definition: Ts2Tables.h:71
ATX_List * programs_to_pids
Definition: Ts2Tables.h:88