class CMXFBaseTable :
public CMXFBaseFun
{
public:
CMXFBaseTable(void);
~CMXFBaseTable(void);
BOOL Init();
int Prase_Identification(BYTE *pBuf,DWORD PayloadLen);
int Prase_Preface(BYTE *pBuf,DWORD PayloadLen);
int Prase_sequence(BYTE *pBuf,DWORD PayloadLen);
int Prase_RealData(BYTE *pBuf,DWORD PayloadLen);
int Prase_SourceClip(BYTE *pBuf,DWORD PayloadLen);
int Prase_TimeCode_Component(BYTE *pBuf,DWORD PayloadLen);
int Prase_Content_storage(BYTE *pBuf,DWORD PayloadLen);
int Prase_Material_pack(BYTE *pBuf,DWORD PayloadLen);
int Prase_Track(BYTE *pBuf,DWORD PayloadLen,CString strPackageName);
int PraseEssence_Container_data(BYTE *pBuf,DWORD PayloadLen);
int PraseMetadata_CDCI_Essence_Desc(BYTE *pBuf,DWORD PayloadLen,BYTE nMpeg_desc = 0);
int Prase_SourcePack(BYTE *pBuf,DWORD PayloadLen);
int PraseSound_Essence_desc(BYTE *pBuf,DWORD PayloadLen,BYTE nIsPbuf47 = 0);
int Prase_Multiple_desc(BYTE *pBuf,DWORD PayloadLen);
int Prase_Generic_pack(BYTE *pBuf,DWORD PayloadLen,CString strPackageName,DWORD &CurOffset,BOOL ISMaterial_pack);
int Prase_File_Descriptor(BYTE *pBuf,DWORD PayloadLen,CString strPackageName,DWORD &CurOffset,CMXF_Base_Descriptor *pMulti_desc,BOOL bDefaultIsError = TRUE);
int Prase_Generic_Picture(BYTE *pBuf,DWORD PayloadLen,CString strPackageName,DWORD &CurOffset,BOOL bDefaultIsError = TRUE);
int CDCIEssenceDescriptorType(BYTE *pBuf,DWORD PayloadLen,CString strPackageName,DWORD &CurOffset,BOOL bDefaultIsError = TRUE);
int Prase_Generic_Sound(BYTE *pBuf,DWORD PayloadLen,CString strPackageName,DWORD &CurOffset,BOOL bDefaultIsError = TRUE);
int Prase_Unknow_Sound(BYTE *pBuf,DWORD PayloadLen,CString strPackageName,DWORD &CurOffset,BOOL bDefaultIsError = TRUE);
int Mpeg_Video_Descriptor(BYTE *pBuf,DWORD PayloadLen,CString strPackageName,DWORD &CurOffset,BOOL bDefaultIsErro = TRUE);
int Prase_DM_Segment(BYTE *pBuf,DWORD PayloadLen);
int Prase_DM_SourceClip(BYTE *pBuf,DWORD PayloadLen);
void Release_all_list();
public:
TracksMap *m_pTracksMap;
protected:
CMXF_Preface *m_pPreface;
//For previous package,It is not parsed.
MXF_SEQUENCE_LIST m_Unknow_seqList;
//For previous package,Its ID not found.
MXF_SOURCECLIP_LIST m_Unknow_SourClipList;
MXF_SUB_DESCRIPTOR_LIST m_Unknow_SubDescList;
private:
int CheckGeneration_UID(CString strLogName,BYTE *pBuf,DWORD PayloadLen);