From: Steve Lhomme Date: Mon, 15 Mar 2010 16:07:14 +0000 (+0000) Subject: add some macros to access the EBML ID/Context and use them X-Git-Tag: release-0.9.0~50 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2c2dc8845d0d1619e48827d4cb3890e24f022e8c;p=libmatroska add some macros to access the EBML ID/Context and use them git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libmatroska@14 a6f86f6d-0131-4f8e-9e7b-e335508773d5 --- diff --git a/matroska/KaxCluster.h b/matroska/KaxCluster.h index b8596a0..493147e 100644 --- a/matroska/KaxCluster.h +++ b/matroska/KaxCluster.h @@ -135,7 +135,7 @@ class MATROSKA_DLL_API KaxCluster : public EbmlMaster { bool SetSilentTrackUsed() { bSilentTracksUsed = true; - return FindFirstElt(KaxClusterSilentTracks::ClassInfos, true) != NULL; + return FindFirstElt(EBML_INFO(KaxClusterSilentTracks), true) != NULL; } bool AddBlockBlob(KaxBlockBlob * NewBlob); diff --git a/matroska/KaxTracks.h b/matroska/KaxTracks.h index 408736d..bd2224c 100644 --- a/matroska/KaxTracks.h +++ b/matroska/KaxTracks.h @@ -65,7 +65,7 @@ class MATROSKA_DLL_API KaxTrackEntry : public EbmlMaster { operator const EbmlId &() const {return ClassInfos.GlobalId;} EbmlElement * Clone() const {return new KaxTrackEntry(*this);} - EbmlUInteger & TrackNumber() const { return *(static_cast(FindElt(KaxTrackNumber::ClassInfos))); } + EbmlUInteger & TrackNumber() const { return *(static_cast(FindElt(EBML_INFO(KaxTrackNumber)))); } void EnableLacing(bool bEnable = true); @@ -73,7 +73,7 @@ class MATROSKA_DLL_API KaxTrackEntry : public EbmlMaster { \note lacing set by default */ inline bool LacingEnabled() const { - KaxTrackFlagLacing * myLacing = static_cast(FindFirstElt(KaxTrackFlagLacing::ClassInfos)); + KaxTrackFlagLacing * myLacing = static_cast(FindFirstElt(EBML_INFO(KaxTrackFlagLacing))); return((myLacing == NULL) || (uint8(*myLacing) != 0)); } diff --git a/matroska/KaxVersion.h b/matroska/KaxVersion.h index 58add0d..9e7d618 100644 --- a/matroska/KaxVersion.h +++ b/matroska/KaxVersion.h @@ -40,9 +40,9 @@ START_LIBMATROSKA_NAMESPACE -#define LIBMATROSKA_VERSION 0x000801 +#define LIBMATROSKA_VERSION 0x000900 -static const std::string KaxCodeVersion = "0.8.1"; +static const std::string KaxCodeVersion = "0.9.0"; static const std::string KaxCodeDate = __TIMESTAMP__; /*! diff --git a/src/KaxAttached.cpp b/src/KaxAttached.cpp index d725e39..03ecc4c 100644 --- a/src/KaxAttached.cpp +++ b/src/KaxAttached.cpp @@ -47,13 +47,13 @@ EbmlSemantic KaxAttached_ContextList[5] = EbmlSemantic KaxAttached_ContextList[6] = #endif // MATROSKA_VERSION { - EbmlSemantic(true, true, KaxFileName::ClassInfos), - EbmlSemantic(true, true, KaxMimeType::ClassInfos), - EbmlSemantic(true, true, KaxFileData::ClassInfos), - EbmlSemantic(false, true, KaxFileDescription::ClassInfos), - EbmlSemantic(true, true, KaxFileUID::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxFileName)), + EbmlSemantic(true, true, EBML_INFO(KaxMimeType)), + EbmlSemantic(true, true, EBML_INFO(KaxFileData)), + EbmlSemantic(false, true, EBML_INFO(KaxFileDescription)), + EbmlSemantic(true, true, EBML_INFO(KaxFileUID)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(false, true, KaxFileReferral::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxFileReferral)), #endif // MATROSKA_VERSION }; @@ -67,14 +67,14 @@ EbmlId KaxFileUID_TheId (0x46AE, 2); EbmlId KaxFileReferral_TheId (0x4675, 2); #endif // MATROSKA_VERSION -const EbmlSemanticContext KaxAttached_Context = EbmlSemanticContext(countof(KaxAttached_ContextList), KaxAttached_ContextList, &KaxAttachments_Context, *GetKaxGlobal_Context, &KaxAttached::ClassInfos); -const EbmlSemanticContext KaxFileDescription_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &KaxFileDescription::ClassInfos); -const EbmlSemanticContext KaxFileName_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &KaxFileName::ClassInfos); -const EbmlSemanticContext KaxMimeType_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &KaxMimeType::ClassInfos); -const EbmlSemanticContext KaxFileData_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &KaxFileData::ClassInfos); -const EbmlSemanticContext KaxFileUID_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &KaxFileUID::ClassInfos); +const EbmlSemanticContext KaxAttached_Context = EbmlSemanticContext(countof(KaxAttached_ContextList), KaxAttached_ContextList, &KaxAttachments_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxAttached)); +const EbmlSemanticContext KaxFileDescription_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxFileDescription)); +const EbmlSemanticContext KaxFileName_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxFileName)); +const EbmlSemanticContext KaxMimeType_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxMimeType)); +const EbmlSemanticContext KaxFileData_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxFileData)); +const EbmlSemanticContext KaxFileUID_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxFileUID)); #if MATROSKA_VERSION >= 2 -const EbmlSemanticContext KaxFileReferral_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &KaxFileReferral::ClassInfos); +const EbmlSemanticContext KaxFileReferral_Context = EbmlSemanticContext(0, NULL, &KaxAttachments_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxFileReferral)); #endif // MATROSKA_VERSION const EbmlCallbacks KaxAttached::ClassInfos(KaxAttached::Create, KaxAttached_TheId, "AttachedFile", KaxAttached_Context); diff --git a/src/KaxAttachments.cpp b/src/KaxAttachments.cpp index 4a654fa..2dca49e 100644 --- a/src/KaxAttachments.cpp +++ b/src/KaxAttachments.cpp @@ -43,10 +43,10 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxAttachments_ContextList[1] = { - EbmlSemantic(true, false, KaxAttached::ClassInfos), ///< EBMLVersion + EbmlSemantic(true, false, EBML_INFO(KaxAttached)), ///< EBMLVersion }; -const EbmlSemanticContext KaxAttachments_Context = EbmlSemanticContext(countof(KaxAttachments_ContextList), KaxAttachments_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxAttachments::ClassInfos); +const EbmlSemanticContext KaxAttachments_Context = EbmlSemanticContext(countof(KaxAttachments_ContextList), KaxAttachments_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxAttachments)); EbmlId KaxAttachments_TheId(0x1941A469, 4); const EbmlCallbacks KaxAttachments::ClassInfos(KaxAttachments::Create, KaxAttachments_TheId, "Attachments", KaxAttachments_Context); diff --git a/src/KaxBlock.cpp b/src/KaxBlock.cpp index 2e95c72..33c8be3 100644 --- a/src/KaxBlock.cpp +++ b/src/KaxBlock.cpp @@ -48,30 +48,30 @@ const EbmlSemantic KaxBlockGroup_ContextList[6] = const EbmlSemantic KaxBlockGroup_ContextList[9] = #endif // MATROSKA_VERSION { - EbmlSemantic(true, true, KaxBlock::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxBlock)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(false, true, KaxBlockVirtual::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxBlockVirtual)), #endif // MATROSKA_VERSION - EbmlSemantic(false, true, KaxBlockDuration::ClassInfos), - EbmlSemantic(false, true, KaxSlices::ClassInfos), - EbmlSemantic(true, true, KaxReferencePriority::ClassInfos), - EbmlSemantic(false, false, KaxReferenceBlock::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxBlockDuration)), + EbmlSemantic(false, true, EBML_INFO(KaxSlices)), + EbmlSemantic(true, true, EBML_INFO(KaxReferencePriority)), + EbmlSemantic(false, false, EBML_INFO(KaxReferenceBlock)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(false, true, KaxReferenceVirtual::ClassInfos), - EbmlSemantic(false, true, KaxCodecState::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxReferenceVirtual)), + EbmlSemantic(false, true, EBML_INFO(KaxCodecState)), #endif // MATROSKA_VERSION - EbmlSemantic(false, true, KaxBlockAdditions::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxBlockAdditions)), }; const EbmlSemantic KaxBlockAdditions_ContextList[1] = { - EbmlSemantic(true, false, KaxBlockMore::ClassInfos) + EbmlSemantic(true, false, EBML_INFO(KaxBlockMore)) }; const EbmlSemantic KaxBlockMore_ContextList[2] = { - EbmlSemantic(true, true, KaxBlockAddID::ClassInfos), - EbmlSemantic(true, true, KaxBlockAdditional::ClassInfos) + EbmlSemantic(true, true, EBML_INFO(KaxBlockAddID)), + EbmlSemantic(true, true, EBML_INFO(KaxBlockAdditional)) }; EbmlId KaxBlockGroup_TheId (0xA0, 1); @@ -87,18 +87,18 @@ EbmlId KaxBlockMore_TheId (0xA6, 1); EbmlId KaxBlockAddID_TheId (0xEE, 1); EbmlId KaxBlockAdditional_TheId(0xA5, 1); -const EbmlSemanticContext KaxBlockGroup_Context = EbmlSemanticContext(countof(KaxBlockGroup_ContextList), KaxBlockGroup_ContextList, &KaxCluster_Context, *GetKaxGlobal_Context, &KaxBlockGroup::ClassInfos); -const EbmlSemanticContext KaxBlock_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxBlock::ClassInfos); -const EbmlSemanticContext KaxBlockDuration_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxBlockDuration::ClassInfos); +const EbmlSemanticContext KaxBlockGroup_Context = EbmlSemanticContext(countof(KaxBlockGroup_ContextList), KaxBlockGroup_ContextList, &KaxCluster_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlockGroup)); +const EbmlSemanticContext KaxBlock_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlock)); +const EbmlSemanticContext KaxBlockDuration_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlockDuration)); #if MATROSKA_VERSION >= 2 -const EbmlSemanticContext KaxSimpleBlock_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &KaxSimpleBlock::ClassInfos); -const EbmlSemanticContext KaxBlockVirtual_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxBlockVirtual::ClassInfos); -const EbmlSemanticContext KaxCodecState_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxCodecState::ClassInfos); +const EbmlSemanticContext KaxSimpleBlock_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSimpleBlock)); +const EbmlSemanticContext KaxBlockVirtual_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlockVirtual)); +const EbmlSemanticContext KaxCodecState_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecState)); #endif // MATROSKA_VERSION -const EbmlSemanticContext KaxBlockAdditions_Context = EbmlSemanticContext(countof(KaxBlockAdditions_ContextList), KaxBlockAdditions_ContextList, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxBlockAdditions::ClassInfos); -const EbmlSemanticContext KaxBlockMore_Context = EbmlSemanticContext(countof(KaxBlockMore_ContextList), KaxBlockMore_ContextList, &KaxBlockAdditions_Context, *GetKaxGlobal_Context, &KaxBlockMore::ClassInfos); -const EbmlSemanticContext KaxBlockAddID_Context = EbmlSemanticContext(0, NULL, &KaxBlockMore_Context, *GetKaxGlobal_Context, &KaxBlockAddID::ClassInfos); -const EbmlSemanticContext KaxBlockAdditional_Context = EbmlSemanticContext(0, NULL, &KaxBlockMore_Context, *GetKaxGlobal_Context, &KaxBlockAdditional::ClassInfos); +const EbmlSemanticContext KaxBlockAdditions_Context = EbmlSemanticContext(countof(KaxBlockAdditions_ContextList), KaxBlockAdditions_ContextList, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlockAdditions)); +const EbmlSemanticContext KaxBlockMore_Context = EbmlSemanticContext(countof(KaxBlockMore_ContextList), KaxBlockMore_ContextList, &KaxBlockAdditions_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlockMore)); +const EbmlSemanticContext KaxBlockAddID_Context = EbmlSemanticContext(0, NULL, &KaxBlockMore_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlockAddID)); +const EbmlSemanticContext KaxBlockAdditional_Context = EbmlSemanticContext(0, NULL, &KaxBlockMore_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxBlockAdditional)); const EbmlCallbacks KaxBlockGroup::ClassInfos(KaxBlockGroup::Create, KaxBlockGroup_TheId, "BlockGroup", KaxBlockGroup_Context); const EbmlCallbacks KaxBlock::ClassInfos(KaxBlock::Create, KaxBlock_TheId, "Block", KaxBlock_Context); @@ -543,7 +543,7 @@ uint64 KaxInternalBlock::ReadData(IOCallback & input, ScopeMode ReadFully) bLocalTimecodeUsed = true; cursor += 2; - if (EbmlId(*this) == KaxSimpleBlock::ClassInfos.GlobalId) { + if (EbmlId(*this) == EBML_ID(KaxSimpleBlock)) { bIsKeyframe = (*cursor & 0x80) != 0; bIsDiscardable = (*cursor & 0x01) != 0; } @@ -650,7 +650,7 @@ uint64 KaxInternalBlock::ReadData(IOCallback & input, ScopeMode ReadFully) bLocalTimecodeUsed = true; cursor += 2; - if (EbmlId(*this) == KaxSimpleBlock::ClassInfos.GlobalId) { + if (EbmlId(*this) == EBML_ID(KaxSimpleBlock)) { bIsKeyframe = (*cursor & 0x80) != 0; bIsDiscardable = (*cursor & 0x01) != 0; } @@ -824,14 +824,14 @@ bool KaxBlockGroup::AddFrame(const KaxTrackEntry & track, uint64 timecode, DataB uint64 KaxBlockGroup::GlobalTimecode() const { assert(ParentCluster != NULL); // impossible otherwise - KaxInternalBlock & MyBlock = *static_cast(this->FindElt(KaxBlock::ClassInfos)); + KaxInternalBlock & MyBlock = *static_cast(this->FindElt(EBML_INFO(KaxBlock))); return MyBlock.GlobalTimecode(); } uint16 KaxBlockGroup::TrackNumber() const { - KaxInternalBlock & MyBlock = *static_cast(this->FindElt(KaxBlock::ClassInfos)); + KaxInternalBlock & MyBlock = *static_cast(this->FindElt(EBML_INFO(KaxBlock))); return MyBlock.TrackNum(); } @@ -850,7 +850,7 @@ uint64 KaxInternalBlock::ClusterPosition() const unsigned int KaxBlockGroup::ReferenceCount() const { unsigned int Result = 0; - KaxReferenceBlock * MyBlockAdds = static_cast(FindFirstElt(KaxReferenceBlock::ClassInfos)); + KaxReferenceBlock * MyBlockAdds = static_cast(FindFirstElt(EBML_INFO(KaxReferenceBlock))); if (MyBlockAdds != NULL) { Result++; while ((MyBlockAdds = static_cast(FindNextElt(*MyBlockAdds))) != NULL) @@ -863,7 +863,7 @@ unsigned int KaxBlockGroup::ReferenceCount() const const KaxReferenceBlock & KaxBlockGroup::Reference(unsigned int Index) const { - KaxReferenceBlock * MyBlockAdds = static_cast(FindFirstElt(KaxReferenceBlock::ClassInfos)); + KaxReferenceBlock * MyBlockAdds = static_cast(FindFirstElt(EBML_INFO(KaxReferenceBlock))); assert(MyBlockAdds != NULL); // call of a non existing reference while (Index != 0) { @@ -876,7 +876,7 @@ const KaxReferenceBlock & KaxBlockGroup::Reference(unsigned int Index) const void KaxBlockGroup::ReleaseFrames() { - KaxInternalBlock & MyBlock = *static_cast(this->FindElt(KaxBlock::ClassInfos)); + KaxInternalBlock & MyBlock = *static_cast(this->FindElt(EBML_INFO(KaxBlock))); MyBlock.ReleaseFrames(); } @@ -897,13 +897,13 @@ void KaxBlockGroup::SetBlockDuration(uint64 TimeLength) { assert(ParentTrack != NULL); int64 scale = ParentTrack->GlobalTimecodeScale(); - KaxBlockDuration & myDuration = *static_cast(FindFirstElt(KaxBlockDuration::ClassInfos, true)); + KaxBlockDuration & myDuration = *static_cast(FindFirstElt(EBML_INFO(KaxBlockDuration), true)); *(static_cast(&myDuration)) = TimeLength / uint64(scale); } bool KaxBlockGroup::GetBlockDuration(uint64 &TheTimecode) const { - KaxBlockDuration * myDuration = static_cast(FindElt(KaxBlockDuration::ClassInfos)); + KaxBlockDuration * myDuration = static_cast(FindElt(EBML_INFO(KaxBlockDuration))); if (myDuration == NULL) { return false; } diff --git a/src/KaxBlockData.cpp b/src/KaxBlockData.cpp index 216f409..a66b793 100644 --- a/src/KaxBlockData.cpp +++ b/src/KaxBlockData.cpp @@ -42,16 +42,16 @@ START_LIBMATROSKA_NAMESPACE const EbmlSemantic KaxSlices_ContextList[1] = { - EbmlSemantic(false, false, KaxTimeSlice::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxTimeSlice)), }; const EbmlSemantic KaxTimeSlice_ContextList[5] = { - EbmlSemantic(false, true, KaxSliceLaceNumber::ClassInfos), - EbmlSemantic(false, true, KaxSliceFrameNumber::ClassInfos), - EbmlSemantic(false, true, KaxSliceBlockAddID::ClassInfos), - EbmlSemantic(false, true, KaxSliceDelay::ClassInfos), - EbmlSemantic(false, true, KaxSliceDuration::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxSliceLaceNumber)), + EbmlSemantic(false, true, EBML_INFO(KaxSliceFrameNumber)), + EbmlSemantic(false, true, EBML_INFO(KaxSliceBlockAddID)), + EbmlSemantic(false, true, EBML_INFO(KaxSliceDelay)), + EbmlSemantic(false, true, EBML_INFO(KaxSliceDuration)), }; EbmlId KaxReferencePriority_TheId(0xFA, 1); @@ -67,17 +67,17 @@ EbmlId KaxSliceDuration_TheId (0xCF, 1); EbmlId KaxReferenceVirtual_TheId (0xFD, 1); #endif // MATROSKA_VERSION -const EbmlSemanticContext KaxReferencePriority_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxReferencePriority::ClassInfos); -const EbmlSemanticContext KaxReferenceBlock_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxReferenceBlock::ClassInfos); -const EbmlSemanticContext KaxSlices_Context = EbmlSemanticContext(countof(KaxSlices_ContextList), KaxSlices_ContextList, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxSlices::ClassInfos); -const EbmlSemanticContext KaxTimeSlice_Context = EbmlSemanticContext(countof(KaxTimeSlice_ContextList), KaxTimeSlice_ContextList, &KaxSlices_Context, *GetKaxGlobal_Context, &KaxTimeSlice::ClassInfos); -const EbmlSemanticContext KaxSliceLaceNumber_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &KaxSliceLaceNumber::ClassInfos); -const EbmlSemanticContext KaxSliceFrameNumber_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &KaxSliceFrameNumber::ClassInfos); -const EbmlSemanticContext KaxSliceBlockAddID_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &KaxSliceBlockAddID::ClassInfos); -const EbmlSemanticContext KaxSliceDelay_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &KaxSliceDelay::ClassInfos); -const EbmlSemanticContext KaxSliceDuration_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &KaxSliceDuration::ClassInfos); +const EbmlSemanticContext KaxReferencePriority_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxReferencePriority)); +const EbmlSemanticContext KaxReferenceBlock_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxReferenceBlock)); +const EbmlSemanticContext KaxSlices_Context = EbmlSemanticContext(countof(KaxSlices_ContextList), KaxSlices_ContextList, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSlices)); +const EbmlSemanticContext KaxTimeSlice_Context = EbmlSemanticContext(countof(KaxTimeSlice_ContextList), KaxTimeSlice_ContextList, &KaxSlices_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTimeSlice)); +const EbmlSemanticContext KaxSliceLaceNumber_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSliceLaceNumber)); +const EbmlSemanticContext KaxSliceFrameNumber_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSliceFrameNumber)); +const EbmlSemanticContext KaxSliceBlockAddID_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSliceBlockAddID)); +const EbmlSemanticContext KaxSliceDelay_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSliceDelay)); +const EbmlSemanticContext KaxSliceDuration_Context = EbmlSemanticContext(0, NULL, &KaxTimeSlice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSliceDuration)); #if MATROSKA_VERSION >= 2 -const EbmlSemanticContext KaxReferenceVirtual_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &KaxReferenceVirtual::ClassInfos); +const EbmlSemanticContext KaxReferenceVirtual_Context = EbmlSemanticContext(0, NULL, &KaxBlockGroup_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxReferenceVirtual)); #endif // MATROSKA_VERSION const EbmlCallbacks KaxReferencePriority::ClassInfos(KaxReferencePriority::Create, KaxReferencePriority_TheId, "FlagReferenced", KaxReferencePriority_Context); diff --git a/src/KaxChapters.cpp b/src/KaxChapters.cpp index cbb163c..7281b2a 100644 --- a/src/KaxChapters.cpp +++ b/src/KaxChapters.cpp @@ -40,86 +40,86 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxChapters_ContextList[1] = { - EbmlSemantic(true, false, KaxEditionEntry::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxEditionEntry)), }; EbmlSemantic KaxEditionEntry_ContextList[5] = { - EbmlSemantic(false, true , KaxEditionUID::ClassInfos), - EbmlSemantic(true , true , KaxEditionFlagHidden::ClassInfos), - EbmlSemantic(true , true , KaxEditionFlagDefault::ClassInfos), - EbmlSemantic(false, true , KaxEditionFlagOrdered::ClassInfos), - EbmlSemantic(true , false, KaxChapterAtom::ClassInfos), + EbmlSemantic(false, true , EBML_INFO(KaxEditionUID)), + EbmlSemantic(true , true , EBML_INFO(KaxEditionFlagHidden)), + EbmlSemantic(true , true , EBML_INFO(KaxEditionFlagDefault)), + EbmlSemantic(false, true , EBML_INFO(KaxEditionFlagOrdered)), + EbmlSemantic(true , false, EBML_INFO(KaxChapterAtom)), }; EbmlSemantic KaxChapterAtom_ContextList[12] = { - EbmlSemantic(false, false, KaxChapterAtom::ClassInfos), - EbmlSemantic(true, true, KaxChapterUID::ClassInfos), - EbmlSemantic(true, true, KaxChapterTimeStart::ClassInfos), - EbmlSemantic(false, true, KaxChapterTimeEnd::ClassInfos), - EbmlSemantic(true , true, KaxChapterFlagHidden::ClassInfos), - EbmlSemantic(true , true, KaxChapterFlagEnabled::ClassInfos), - EbmlSemantic(false, true, KaxChapterSegmentUID::ClassInfos), - EbmlSemantic(false, true, KaxChapterSegmentEditionUID::ClassInfos), - EbmlSemantic(false, true, KaxChapterPhysicalEquiv::ClassInfos), - EbmlSemantic(false, true, KaxChapterTrack::ClassInfos), - EbmlSemantic(false, false, KaxChapterDisplay::ClassInfos), - EbmlSemantic(false, false, KaxChapterProcess::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxChapterAtom)), + EbmlSemantic(true, true, EBML_INFO(KaxChapterUID)), + EbmlSemantic(true, true, EBML_INFO(KaxChapterTimeStart)), + EbmlSemantic(false, true, EBML_INFO(KaxChapterTimeEnd)), + EbmlSemantic(true , true, EBML_INFO(KaxChapterFlagHidden)), + EbmlSemantic(true , true, EBML_INFO(KaxChapterFlagEnabled)), + EbmlSemantic(false, true, EBML_INFO(KaxChapterSegmentUID)), + EbmlSemantic(false, true, EBML_INFO(KaxChapterSegmentEditionUID)), + EbmlSemantic(false, true, EBML_INFO(KaxChapterPhysicalEquiv)), + EbmlSemantic(false, true, EBML_INFO(KaxChapterTrack)), + EbmlSemantic(false, false, EBML_INFO(KaxChapterDisplay)), + EbmlSemantic(false, false, EBML_INFO(KaxChapterProcess)), }; EbmlSemantic KaxChapterTrack_ContextList[1] = { - EbmlSemantic(true, false, KaxChapterTrackNumber::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxChapterTrackNumber)), }; EbmlSemantic KaxChapterDisplay_ContextList[3] = { - EbmlSemantic(true, true, KaxChapterString::ClassInfos), - EbmlSemantic(true, false, KaxChapterLanguage::ClassInfos), - EbmlSemantic(false, false, KaxChapterCountry::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxChapterString)), + EbmlSemantic(true, false, EBML_INFO(KaxChapterLanguage)), + EbmlSemantic(false, false, EBML_INFO(KaxChapterCountry)), }; EbmlSemantic KaxChapterProcess_ContextList[3] = { - EbmlSemantic(true, true, KaxChapterProcessCodecID::ClassInfos), - EbmlSemantic(false, true, KaxChapterProcessPrivate::ClassInfos), - EbmlSemantic(false, false, KaxChapterProcessCommand::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxChapterProcessCodecID)), + EbmlSemantic(false, true, EBML_INFO(KaxChapterProcessPrivate)), + EbmlSemantic(false, false, EBML_INFO(KaxChapterProcessCommand)), }; EbmlSemantic KaxChapterProcessCommand_ContextList[2] = { - EbmlSemantic(true, true, KaxChapterProcessTime::ClassInfos), - EbmlSemantic(true, true, KaxChapterProcessData::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxChapterProcessTime)), + EbmlSemantic(true, true, EBML_INFO(KaxChapterProcessData)), }; -const EbmlSemanticContext KaxChapters_Context = EbmlSemanticContext(countof(KaxChapters_ContextList), KaxChapters_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxChapters::ClassInfos); -const EbmlSemanticContext KaxEditionEntry_Context = EbmlSemanticContext(countof(KaxEditionEntry_ContextList), KaxEditionEntry_ContextList, &KaxChapters_Context, *GetKaxGlobal_Context, &KaxEditionEntry::ClassInfos); -const EbmlSemanticContext KaxEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &KaxEditionUID::ClassInfos); -const EbmlSemanticContext KaxEditionFlagHidden_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &KaxEditionFlagHidden::ClassInfos); -const EbmlSemanticContext KaxEditionFlagDefault_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &KaxEditionFlagDefault::ClassInfos); -const EbmlSemanticContext KaxEditionFlagOrdered_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &KaxEditionFlagOrdered::ClassInfos); -const EbmlSemanticContext KaxChapterAtom_Context = EbmlSemanticContext(countof(KaxChapterAtom_ContextList), KaxChapterAtom_ContextList, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &KaxChapterAtom::ClassInfos); -const EbmlSemanticContext KaxChapterTrack_Context = EbmlSemanticContext(countof(KaxChapterTrack_ContextList), KaxChapterTrack_ContextList, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterTrack::ClassInfos); -const EbmlSemanticContext KaxChapterDisplay_Context = EbmlSemanticContext(countof(KaxChapterDisplay_ContextList), KaxChapterDisplay_ContextList, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterDisplay::ClassInfos); -const EbmlSemanticContext KaxChapterUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterUID::ClassInfos); -const EbmlSemanticContext KaxChapterTimeStart_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterTimeStart::ClassInfos); -const EbmlSemanticContext KaxChapterTimeEnd_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterTimeEnd::ClassInfos); -const EbmlSemanticContext KaxChapterFlagHidden_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterFlagHidden::ClassInfos); -const EbmlSemanticContext KaxChapterFlagEnabled_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterFlagEnabled::ClassInfos); -const EbmlSemanticContext KaxChapterSegmentUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterSegmentUID::ClassInfos); -const EbmlSemanticContext KaxChapterSegmentEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterSegmentEditionUID::ClassInfos); -const EbmlSemanticContext KaxChapterPhysicalEquiv_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterPhysicalEquiv::ClassInfos); -const EbmlSemanticContext KaxChapterTrackNumber_Context = EbmlSemanticContext(0, NULL, &KaxChapterTrack_Context, *GetKaxGlobal_Context, &KaxChapterTrackNumber::ClassInfos); -const EbmlSemanticContext KaxChapterString_Context = EbmlSemanticContext(0, NULL, &KaxChapterDisplay_Context, *GetKaxGlobal_Context, &KaxChapterString::ClassInfos); -const EbmlSemanticContext KaxChapterLanguage_Context = EbmlSemanticContext(0, NULL, &KaxChapterLanguage_Context, *GetKaxGlobal_Context, &KaxChapterLanguage::ClassInfos); -const EbmlSemanticContext KaxChapterCountry_Context = EbmlSemanticContext(0, NULL, &KaxChapterCountry_Context, *GetKaxGlobal_Context, &KaxChapterCountry::ClassInfos); -const EbmlSemanticContext KaxChapterProcess_Context = EbmlSemanticContext(countof(KaxChapterProcess_ContextList), KaxChapterProcess_ContextList, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &KaxChapterProcess::ClassInfos); -const EbmlSemanticContext KaxChapterProcessCodecID_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcess_Context, *GetKaxGlobal_Context, &KaxChapterProcessCodecID::ClassInfos); -const EbmlSemanticContext KaxChapterProcessPrivate_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcess_Context, *GetKaxGlobal_Context, &KaxChapterProcessPrivate::ClassInfos); -const EbmlSemanticContext KaxChapterProcessCommand_Context = EbmlSemanticContext(countof(KaxChapterProcessCommand_ContextList), KaxChapterProcessCommand_ContextList, &KaxChapterProcess_Context, *GetKaxGlobal_Context, &KaxChapterProcessCommand::ClassInfos); -const EbmlSemanticContext KaxChapterProcessTime_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcessCommand_Context, *GetKaxGlobal_Context, &KaxChapterProcessTime::ClassInfos); -const EbmlSemanticContext KaxChapterProcessData_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcessCommand_Context, *GetKaxGlobal_Context, &KaxChapterProcessData::ClassInfos); +const EbmlSemanticContext KaxChapters_Context = EbmlSemanticContext(countof(KaxChapters_ContextList), KaxChapters_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapters)); +const EbmlSemanticContext KaxEditionEntry_Context = EbmlSemanticContext(countof(KaxEditionEntry_ContextList), KaxEditionEntry_ContextList, &KaxChapters_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxEditionEntry)); +const EbmlSemanticContext KaxEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxEditionUID)); +const EbmlSemanticContext KaxEditionFlagHidden_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxEditionFlagHidden)); +const EbmlSemanticContext KaxEditionFlagDefault_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxEditionFlagDefault)); +const EbmlSemanticContext KaxEditionFlagOrdered_Context = EbmlSemanticContext(0, NULL, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxEditionFlagOrdered)); +const EbmlSemanticContext KaxChapterAtom_Context = EbmlSemanticContext(countof(KaxChapterAtom_ContextList), KaxChapterAtom_ContextList, &KaxEditionEntry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterAtom)); +const EbmlSemanticContext KaxChapterTrack_Context = EbmlSemanticContext(countof(KaxChapterTrack_ContextList), KaxChapterTrack_ContextList, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTrack)); +const EbmlSemanticContext KaxChapterDisplay_Context = EbmlSemanticContext(countof(KaxChapterDisplay_ContextList), KaxChapterDisplay_ContextList, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterDisplay)); +const EbmlSemanticContext KaxChapterUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterUID)); +const EbmlSemanticContext KaxChapterTimeStart_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTimeStart)); +const EbmlSemanticContext KaxChapterTimeEnd_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTimeEnd)); +const EbmlSemanticContext KaxChapterFlagHidden_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterFlagHidden)); +const EbmlSemanticContext KaxChapterFlagEnabled_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterFlagEnabled)); +const EbmlSemanticContext KaxChapterSegmentUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterSegmentUID)); +const EbmlSemanticContext KaxChapterSegmentEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterSegmentEditionUID)); +const EbmlSemanticContext KaxChapterPhysicalEquiv_Context = EbmlSemanticContext(0, NULL, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterPhysicalEquiv)); +const EbmlSemanticContext KaxChapterTrackNumber_Context = EbmlSemanticContext(0, NULL, &KaxChapterTrack_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTrackNumber)); +const EbmlSemanticContext KaxChapterString_Context = EbmlSemanticContext(0, NULL, &KaxChapterDisplay_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterString)); +const EbmlSemanticContext KaxChapterLanguage_Context = EbmlSemanticContext(0, NULL, &KaxChapterLanguage_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterLanguage)); +const EbmlSemanticContext KaxChapterCountry_Context = EbmlSemanticContext(0, NULL, &KaxChapterCountry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterCountry)); +const EbmlSemanticContext KaxChapterProcess_Context = EbmlSemanticContext(countof(KaxChapterProcess_ContextList), KaxChapterProcess_ContextList, &KaxChapterAtom_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterProcess)); +const EbmlSemanticContext KaxChapterProcessCodecID_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcess_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterProcessCodecID)); +const EbmlSemanticContext KaxChapterProcessPrivate_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcess_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterProcessPrivate)); +const EbmlSemanticContext KaxChapterProcessCommand_Context = EbmlSemanticContext(countof(KaxChapterProcessCommand_ContextList), KaxChapterProcessCommand_ContextList, &KaxChapterProcess_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterProcessCommand)); +const EbmlSemanticContext KaxChapterProcessTime_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcessCommand_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterProcessTime)); +const EbmlSemanticContext KaxChapterProcessData_Context = EbmlSemanticContext(0, NULL, &KaxChapterProcessCommand_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterProcessData)); EbmlId KaxChapters_TheId (0x1043A770, 4); EbmlId KaxEditionEntry_TheId (0x45B9, 2); diff --git a/src/KaxCluster.cpp b/src/KaxCluster.cpp index 807181a..df0ce91 100644 --- a/src/KaxCluster.cpp +++ b/src/KaxCluster.cpp @@ -45,17 +45,17 @@ EbmlSemantic KaxCluster_ContextList[5] = EbmlSemantic KaxCluster_ContextList[6] = #endif // MATROSKA_VERSION { - EbmlSemantic(true, true, KaxClusterTimecode::ClassInfos), - EbmlSemantic(false, true, KaxClusterSilentTracks::ClassInfos), - EbmlSemantic(false, true, KaxClusterPrevSize::ClassInfos), - EbmlSemantic(false, false, KaxBlockGroup::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxClusterTimecode)), + EbmlSemantic(false, true, EBML_INFO(KaxClusterSilentTracks)), + EbmlSemantic(false, true, EBML_INFO(KaxClusterPrevSize)), + EbmlSemantic(false, false, EBML_INFO(KaxBlockGroup)), #if MATROSKA_VERSION == 2 - EbmlSemantic(false, false, KaxSimpleBlock::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxSimpleBlock)), #endif - EbmlSemantic(false, true, KaxClusterPosition::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxClusterPosition)), }; -const EbmlSemanticContext KaxCluster_Context = EbmlSemanticContext(countof(KaxCluster_ContextList), KaxCluster_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxCluster::ClassInfos); +const EbmlSemanticContext KaxCluster_Context = EbmlSemanticContext(countof(KaxCluster_ContextList), KaxCluster_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCluster)); EbmlId KaxCluster_TheId(0x1F43B675, 4); const EbmlCallbacks KaxCluster::ClassInfos(KaxCluster::Create, KaxCluster_TheId, "Cluster", KaxCluster_Context); @@ -78,12 +78,12 @@ KaxCluster::KaxCluster(const KaxCluster & ElementToClone) std::vector::const_iterator Itr = begin(); while (Itr != end()) { - if (EbmlId(**Itr) == KaxBlockGroup::ClassInfos.GlobalId) { + if (EbmlId(**Itr) == EBML_ID(KaxBlockGroup)) { static_cast(*Itr)->SetParent(*this); - } else if (EbmlId(**Itr) == KaxBlock::ClassInfos.GlobalId) { + } else if (EbmlId(**Itr) == EBML_ID(KaxBlock)) { static_cast(*Itr)->SetParent(*this); #if MATROSKA_VERSION >= 2 - } else if (EbmlId(**Itr) == KaxBlockVirtual::ClassInfos.GlobalId) { + } else if (EbmlId(**Itr) == EBML_ID(KaxBlockVirtual)) { static_cast(*Itr)->SetParent(*this); #endif // MATROSKA_VERSION } @@ -177,7 +177,7 @@ uint32 KaxCluster::Render(IOCallback & output, KaxCues & CueToUpdate, bool bSave size_t TrkIndex, Index; // update the Timecode of the Cluster before writing - KaxClusterTimecode * Timecode = static_cast(this->FindElt(KaxClusterTimecode::ClassInfos)); + KaxClusterTimecode * Timecode = static_cast(this->FindElt(EBML_INFO(KaxClusterTimecode))); *static_cast(Timecode) = GlobalTimecode() / GlobalTimecodeScale(); if (Blobs.size() == 0) { @@ -187,14 +187,14 @@ uint32 KaxCluster::Render(IOCallback & output, KaxCues & CueToUpdate, bool bSave // check the parent cluster for existing tracks and see if they are contained in this cluster or not if (bSilentTracksUsed) { - KaxTracks & MyTracks = *static_cast(ParentSegment->FindElt(KaxTracks::ClassInfos)); + KaxTracks & MyTracks = *static_cast(ParentSegment->FindElt(EBML_INFO(KaxTracks))); for (TrkIndex = 0; TrkIndex < MyTracks.ListSize(); TrkIndex++) { - if (EbmlId(*MyTracks[TrkIndex]) == KaxTrackEntry::ClassInfos.GlobalId) + if (EbmlId(*MyTracks[TrkIndex]) == EBML_ID(KaxTrackEntry)) { KaxTrackEntry & entry = *static_cast(MyTracks[TrkIndex]); uint32 tracknum = entry.TrackNumber(); for (Index = 0; Index < ListSize(); Index++) { - if (EbmlId(*(*this)[Index]) == KaxBlockGroup::ClassInfos.GlobalId) { + if (EbmlId(*(*this)[Index]) == EBML_ID(KaxBlockGroup)) { KaxBlockGroup & group = *static_cast((*this)[Index]); if (group.TrackNumber() == tracknum) break; // this track is used @@ -203,9 +203,9 @@ uint32 KaxCluster::Render(IOCallback & output, KaxCues & CueToUpdate, bool bSave // the track wasn't found in this cluster if (Index == ListSize()) { - KaxClusterSilentTracks * SilentTracks = static_cast(this->FindFirstElt(KaxClusterSilentTracks::ClassInfos)); + KaxClusterSilentTracks * SilentTracks = static_cast(this->FindFirstElt(EBML_INFO(KaxClusterSilentTracks))); assert(SilentTracks != NULL); // the flag bSilentTracksUsed should be set when creating the Cluster - KaxClusterSilentTrackNumber * trackelt = static_cast(SilentTracks->AddNewElt(KaxClusterSilentTrackNumber::ClassInfos)); + KaxClusterSilentTrackNumber * trackelt = static_cast(SilentTracks->AddNewElt(EBML_INFO(KaxClusterSilentTrackNumber))); *static_cast(trackelt) = tracknum; } } @@ -216,7 +216,7 @@ uint32 KaxCluster::Render(IOCallback & output, KaxCues & CueToUpdate, bool bSave // For all Blocks add their position on the CueEntry for (Index = 0; Index < ListSize(); Index++) { - if (EbmlId(*(*this)[Index]) == KaxBlockGroup::ClassInfos.GlobalId) { + if (EbmlId(*(*this)[Index]) == EBML_ID(KaxBlockGroup)) { CueToUpdate.PositionSet(*static_cast((*this)[Index])); } } @@ -236,9 +236,9 @@ uint32 KaxCluster::Render(IOCallback & output, KaxCues & CueToUpdate, bool bSave // check the parent cluster for existing tracks and see if they are contained in this cluster or not if (bSilentTracksUsed) { - KaxTracks & MyTracks = *static_cast(ParentSegment->FindElt(KaxTracks::ClassInfos)); + KaxTracks & MyTracks = *static_cast(ParentSegment->FindElt(EBML_INFO(KaxTracks))); for (TrkIndex = 0; TrkIndex < MyTracks.ListSize(); TrkIndex++) { - if (EbmlId(*MyTracks[TrkIndex]) == KaxTrackEntry::ClassInfos.GlobalId) + if (EbmlId(*MyTracks[TrkIndex]) == EBML_ID(KaxTrackEntry)) { KaxTrackEntry & entry = *static_cast(MyTracks[TrkIndex]); uint32 tracknum = entry.TrackNumber(); @@ -249,9 +249,9 @@ uint32 KaxCluster::Render(IOCallback & output, KaxCues & CueToUpdate, bool bSave // the track wasn't found in this cluster if (Index == ListSize()) { - KaxClusterSilentTracks * SilentTracks = static_cast(this->FindFirstElt(KaxClusterSilentTracks::ClassInfos)); + KaxClusterSilentTracks * SilentTracks = static_cast(this->FindFirstElt(EBML_INFO(KaxClusterSilentTracks))); assert(SilentTracks != NULL); // the flag bSilentTracksUsed should be set when creating the Cluster - KaxClusterSilentTrackNumber * trackelt = static_cast(SilentTracks->AddNewElt(KaxClusterSilentTrackNumber::ClassInfos)); + KaxClusterSilentTrackNumber * trackelt = static_cast(SilentTracks->AddNewElt(EBML_INFO(KaxClusterSilentTrackNumber))); *static_cast(trackelt) = tracknum; } } @@ -299,7 +299,7 @@ int16 KaxCluster::GetBlockLocalTimecode(uint64 aGlobalTimecode) const uint64 KaxCluster::GetBlockGlobalTimecode(int16 GlobalSavedTimecode) { if (!bFirstFrameInside) { - KaxClusterTimecode * Timecode = static_cast(this->FindElt(KaxClusterTimecode::ClassInfos)); + KaxClusterTimecode * Timecode = static_cast(this->FindElt(EBML_INFO(KaxClusterTimecode))); assert (bFirstFrameInside); // use the InitTimecode() hack for now MinTimecode = MaxTimecode = PreviousTimecode = *static_cast(Timecode); bFirstFrameInside = true; @@ -320,7 +320,7 @@ void KaxCluster::ReleaseFrames() size_t Index; for (Index = 0; Index < ListSize(); Index++) { - if (EbmlId(*(*this)[Index]) == KaxBlockGroup::ClassInfos.GlobalId) { + if (EbmlId(*(*this)[Index]) == EBML_ID(KaxBlockGroup)) { static_cast((*this)[Index])->ReleaseFrames(); } } diff --git a/src/KaxClusterData.cpp b/src/KaxClusterData.cpp index ec195dd..68b08f3 100644 --- a/src/KaxClusterData.cpp +++ b/src/KaxClusterData.cpp @@ -45,14 +45,14 @@ EbmlId KaxClusterPosition_TheId (0xA7, 1); EbmlSemantic KaxClusterSilentTracks_ContextList[1] = { - EbmlSemantic(false, false, KaxClusterSilentTrackNumber::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxClusterSilentTrackNumber)), }; -const EbmlSemanticContext KaxClusterTimecode_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &KaxClusterTimecode::ClassInfos); -const EbmlSemanticContext KaxClusterSilentTracks_Context = EbmlSemanticContext(countof(KaxClusterSilentTracks_ContextList), KaxClusterSilentTracks_ContextList, &KaxCluster_Context, *GetKaxGlobal_Context, &KaxClusterSilentTracks::ClassInfos); -const EbmlSemanticContext KaxClusterSilentTrackNumber_Context = EbmlSemanticContext(0, NULL, &KaxClusterSilentTracks_Context, *GetKaxGlobal_Context, &KaxClusterSilentTrackNumber::ClassInfos); -const EbmlSemanticContext KaxClusterPosition_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &KaxClusterPosition::ClassInfos); -const EbmlSemanticContext KaxClusterPrevSize_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &KaxClusterPrevSize::ClassInfos); +const EbmlSemanticContext KaxClusterTimecode_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxClusterTimecode)); +const EbmlSemanticContext KaxClusterSilentTracks_Context = EbmlSemanticContext(countof(KaxClusterSilentTracks_ContextList), KaxClusterSilentTracks_ContextList, &KaxCluster_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxClusterSilentTracks)); +const EbmlSemanticContext KaxClusterSilentTrackNumber_Context = EbmlSemanticContext(0, NULL, &KaxClusterSilentTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxClusterSilentTrackNumber)); +const EbmlSemanticContext KaxClusterPosition_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxClusterPosition)); +const EbmlSemanticContext KaxClusterPrevSize_Context = EbmlSemanticContext(0, NULL, &KaxCluster_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxClusterPrevSize)); const EbmlCallbacks KaxClusterTimecode::ClassInfos(KaxClusterTimecode::Create, KaxClusterTimecode_TheId, "ClusterTimecode", KaxClusterTimecode_Context); const EbmlCallbacks KaxClusterSilentTracks::ClassInfos(KaxClusterSilentTracks::Create, KaxClusterSilentTracks_TheId, "ClusterSilentTracks", KaxClusterSilentTracks_Context); diff --git a/src/KaxContentEncoding.cpp b/src/KaxContentEncoding.cpp index f46e87b..d6f698c 100644 --- a/src/KaxContentEncoding.cpp +++ b/src/KaxContentEncoding.cpp @@ -38,29 +38,29 @@ START_LIBMATROSKA_NAMESPACE const EbmlSemantic KaxContentEncodings_ContextList[1] = { - EbmlSemantic(true, true, KaxContentEncoding::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxContentEncoding)), }; const EbmlSemantic KaxContentEncoding_ContextList[5] = { - EbmlSemantic(true, true, KaxContentEncodingOrder::ClassInfos), - EbmlSemantic(true, true, KaxContentEncodingScope::ClassInfos), - EbmlSemantic(true, true, KaxContentEncodingType::ClassInfos), - EbmlSemantic(false, true, KaxContentCompression::ClassInfos), - EbmlSemantic(false, true, KaxContentEncryption::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxContentEncodingOrder)), + EbmlSemantic(true, true, EBML_INFO(KaxContentEncodingScope)), + EbmlSemantic(true, true, EBML_INFO(KaxContentEncodingType)), + EbmlSemantic(false, true, EBML_INFO(KaxContentCompression)), + EbmlSemantic(false, true, EBML_INFO(KaxContentEncryption)), }; const EbmlSemantic KaxContentCompression_ContextList[2] = { - EbmlSemantic(true, true, KaxContentCompAlgo::ClassInfos), - EbmlSemantic(false, true, KaxContentCompSettings::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxContentCompAlgo)), + EbmlSemantic(false, true, EBML_INFO(KaxContentCompSettings)), }; const EbmlSemantic KaxContentEncryption_ContextList[6] = { - EbmlSemantic(false, true, KaxContentEncAlgo::ClassInfos), - EbmlSemantic(false, true, KaxContentEncKeyID::ClassInfos), - EbmlSemantic(false, true, KaxContentSignature::ClassInfos), - EbmlSemantic(false, true, KaxContentSigKeyID::ClassInfos), - EbmlSemantic(false, true, KaxContentSigAlgo::ClassInfos), - EbmlSemantic(false, true, KaxContentSigHashAlgo::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxContentEncAlgo)), + EbmlSemantic(false, true, EBML_INFO(KaxContentEncKeyID)), + EbmlSemantic(false, true, EBML_INFO(KaxContentSignature)), + EbmlSemantic(false, true, EBML_INFO(KaxContentSigKeyID)), + EbmlSemantic(false, true, EBML_INFO(KaxContentSigAlgo)), + EbmlSemantic(false, true, EBML_INFO(KaxContentSigHashAlgo)), }; EbmlId KaxContentEncodings_TheId (0x6d80, 2); @@ -83,81 +83,81 @@ const EbmlSemanticContext KaxContentEncodings_Context = EbmlSemanticContext(countof(KaxContentEncodings_ContextList), KaxContentEncodings_ContextList, &KaxTrackEntry_Context, *GetKaxGlobal_Context, - &KaxContentEncodings::ClassInfos); + &EBML_INFO(KaxContentEncodings)); const EbmlSemanticContext KaxContentEncoding_Context = EbmlSemanticContext(countof(KaxContentEncoding_ContextList), KaxContentEncoding_ContextList, &KaxContentEncodings_Context, *GetKaxGlobal_Context, - &KaxContentEncoding::ClassInfos); + &EBML_INFO(KaxContentEncoding)); const EbmlSemanticContext KaxContentEncodingOrder_Context = EbmlSemanticContext(0, NULL, &KaxContentEncoding_Context, *GetKaxGlobal_Context, - &KaxContentEncodingOrder::ClassInfos); + &EBML_INFO(KaxContentEncodingOrder)); const EbmlSemanticContext KaxContentEncodingScope_Context = EbmlSemanticContext(0, NULL, &KaxContentEncoding_Context, *GetKaxGlobal_Context, - &KaxContentEncodingScope::ClassInfos); + &EBML_INFO(KaxContentEncodingScope)); const EbmlSemanticContext KaxContentEncodingType_Context = EbmlSemanticContext(0, NULL, &KaxContentEncoding_Context, *GetKaxGlobal_Context, - &KaxContentEncodingType::ClassInfos); + &EBML_INFO(KaxContentEncodingType)); const EbmlSemanticContext KaxContentCompression_Context = EbmlSemanticContext(countof(KaxContentCompression_ContextList), KaxContentCompression_ContextList, &KaxContentEncoding_Context, *GetKaxGlobal_Context, - &KaxContentCompression::ClassInfos); + &EBML_INFO(KaxContentCompression)); const EbmlSemanticContext KaxContentCompAlgo_Context = EbmlSemanticContext(0, NULL, &KaxContentCompression_Context, *GetKaxGlobal_Context, - &KaxContentCompAlgo::ClassInfos); + &EBML_INFO(KaxContentCompAlgo)); const EbmlSemanticContext KaxContentCompSettings_Context = EbmlSemanticContext(0, NULL, &KaxContentCompression_Context, *GetKaxGlobal_Context, - &KaxContentCompSettings::ClassInfos); + &EBML_INFO(KaxContentCompSettings)); const EbmlSemanticContext KaxContentEncryption_Context = EbmlSemanticContext(countof(KaxContentEncryption_ContextList), KaxContentEncryption_ContextList, &KaxContentEncoding_Context, *GetKaxGlobal_Context, - &KaxContentEncryption::ClassInfos); + &EBML_INFO(KaxContentEncryption)); const EbmlSemanticContext KaxContentEncAlgo_Context = EbmlSemanticContext(0, NULL, &KaxContentEncryption_Context, *GetKaxGlobal_Context, - &KaxContentEncAlgo::ClassInfos); + &EBML_INFO(KaxContentEncAlgo)); const EbmlSemanticContext KaxContentEncKeyID_Context = EbmlSemanticContext(0, NULL, &KaxContentEncryption_Context, *GetKaxGlobal_Context, - &KaxContentEncKeyID::ClassInfos); + &EBML_INFO(KaxContentEncKeyID)); const EbmlSemanticContext KaxContentSignature_Context = EbmlSemanticContext(0, NULL, &KaxContentEncryption_Context, *GetKaxGlobal_Context, - &KaxContentSignature::ClassInfos); + &EBML_INFO(KaxContentSignature)); const EbmlSemanticContext KaxContentSigAlgo_Context = EbmlSemanticContext(0, NULL, &KaxContentEncryption_Context, *GetKaxGlobal_Context, - &KaxContentSigKeyID::ClassInfos); + &EBML_INFO(KaxContentSigKeyID)); const EbmlSemanticContext KaxContentSigHashAlgo_Context = EbmlSemanticContext(0, NULL, &KaxContentEncryption_Context, *GetKaxGlobal_Context, - &KaxContentSigKeyID::ClassInfos); + &EBML_INFO(KaxContentSigKeyID)); const EbmlSemanticContext KaxContentSigKeyID_Context = EbmlSemanticContext(0, NULL, &KaxContentEncryption_Context, *GetKaxGlobal_Context, - &KaxContentSigKeyID::ClassInfos); + &EBML_INFO(KaxContentSigKeyID)); const EbmlCallbacks KaxContentEncodings::ClassInfos(KaxContentEncodings::Create, diff --git a/src/KaxCues.cpp b/src/KaxCues.cpp index 7aee21c..e3007d5 100644 --- a/src/KaxCues.cpp +++ b/src/KaxCues.cpp @@ -42,10 +42,10 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxCues_ContextList[1] = { - EbmlSemantic(true, false, KaxCuePoint::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxCuePoint)), }; -const EbmlSemanticContext KaxCues_Context = EbmlSemanticContext(countof(KaxCues_ContextList), KaxCues_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxCues::ClassInfos); +const EbmlSemanticContext KaxCues_Context = EbmlSemanticContext(countof(KaxCues_ContextList), KaxCues_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCues)); EbmlId KaxCues_TheId(0x1C53BB6B, 4); const EbmlCallbacks KaxCues::ClassInfos(KaxCues::Create, KaxCues_TheId, "Cues", KaxCues_Context); @@ -134,10 +134,10 @@ const KaxCuePoint * KaxCues::GetTimecodePoint(uint64 aTimecode) const for (unsigned int i=0; i((*this)[i]); // check the tile - const KaxCueTime *aTime = static_cast(tmp->FindFirstElt(KaxCueTime::ClassInfos)); + const KaxCueTime *aTime = static_cast(tmp->FindFirstElt(EBML_INFO(KaxCueTime))); if (aTime != NULL) { uint64 _Time = uint64(*aTime); diff --git a/src/KaxCuesData.cpp b/src/KaxCuesData.cpp index 0140226..db68faa 100644 --- a/src/KaxCuesData.cpp +++ b/src/KaxCuesData.cpp @@ -43,8 +43,8 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxCuePoint_ContextList[2] = { - EbmlSemantic(true, true, KaxCueTime::ClassInfos), - EbmlSemantic(true, false, KaxCueTrackPositions::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxCueTime)), + EbmlSemantic(true, false, EBML_INFO(KaxCueTrackPositions)), }; #if MATROSKA_VERSION == 1 @@ -53,22 +53,22 @@ EbmlSemantic KaxCueTrackPositions_ContextList[3] = EbmlSemantic KaxCueTrackPositions_ContextList[5] = #endif // MATROSKA_VERSION { - EbmlSemantic(true, true, KaxCueTrack::ClassInfos), - EbmlSemantic(true, true, KaxCueClusterPosition::ClassInfos), - EbmlSemantic(false, true, KaxCueBlockNumber::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxCueTrack)), + EbmlSemantic(true, true, EBML_INFO(KaxCueClusterPosition)), + EbmlSemantic(false, true, EBML_INFO(KaxCueBlockNumber)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(false, true, KaxCueCodecState::ClassInfos), - EbmlSemantic(false, false, KaxCueReference::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxCueCodecState)), + EbmlSemantic(false, false, EBML_INFO(KaxCueReference)), #endif // MATROSKA_VERSION }; #if MATROSKA_VERSION >= 2 EbmlSemantic KaxCueReference_ContextList[4] = { - EbmlSemantic(true, true, KaxCueRefTime::ClassInfos), - EbmlSemantic(true, true, KaxCueRefCluster::ClassInfos), - EbmlSemantic(false, true, KaxCueRefNumber::ClassInfos), - EbmlSemantic(false, true, KaxCueRefCodecState::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxCueRefTime)), + EbmlSemantic(true, true, EBML_INFO(KaxCueRefCluster)), + EbmlSemantic(false, true, EBML_INFO(KaxCueRefNumber)), + EbmlSemantic(false, true, EBML_INFO(KaxCueRefCodecState)), }; #endif // MATROSKA_VERSION @@ -87,19 +87,19 @@ EbmlId KaxCueRefNumber_TheId (0x535F, 2); EbmlId KaxCueRefCodecState_TheId (0xEB, 1); #endif // MATROSKA_VERSION -const EbmlSemanticContext KaxCuePoint_Context = EbmlSemanticContext(countof(KaxCuePoint_ContextList), KaxCuePoint_ContextList, &KaxCues_Context, *GetKaxGlobal_Context, &KaxCuePoint::ClassInfos); -const EbmlSemanticContext KaxCueTime_Context = EbmlSemanticContext(0, NULL, &KaxCuePoint_Context, *GetKaxGlobal_Context, &KaxCueTime::ClassInfos); -const EbmlSemanticContext KaxCueTrackPositions_Context = EbmlSemanticContext(countof(KaxCueTrackPositions_ContextList), KaxCueTrackPositions_ContextList, &KaxCuePoint_Context, *GetKaxGlobal_Context, &KaxCueTrackPositions::ClassInfos); -const EbmlSemanticContext KaxCueTrack_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &KaxCueTrack::ClassInfos); -const EbmlSemanticContext KaxCueClusterPosition_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &KaxCueClusterPosition::ClassInfos); -const EbmlSemanticContext KaxCueBlockNumber_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &KaxCueBlockNumber::ClassInfos); +const EbmlSemanticContext KaxCuePoint_Context = EbmlSemanticContext(countof(KaxCuePoint_ContextList), KaxCuePoint_ContextList, &KaxCues_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCuePoint)); +const EbmlSemanticContext KaxCueTime_Context = EbmlSemanticContext(0, NULL, &KaxCuePoint_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueTime)); +const EbmlSemanticContext KaxCueTrackPositions_Context = EbmlSemanticContext(countof(KaxCueTrackPositions_ContextList), KaxCueTrackPositions_ContextList, &KaxCuePoint_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueTrackPositions)); +const EbmlSemanticContext KaxCueTrack_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueTrack)); +const EbmlSemanticContext KaxCueClusterPosition_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueClusterPosition)); +const EbmlSemanticContext KaxCueBlockNumber_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueBlockNumber)); #if MATROSKA_VERSION >= 2 -const EbmlSemanticContext KaxCueCodecState_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &KaxCueCodecState::ClassInfos); -const EbmlSemanticContext KaxCueReference_Context = EbmlSemanticContext(countof(KaxCueReference_ContextList), KaxCueReference_ContextList, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &KaxCueReference::ClassInfos); -const EbmlSemanticContext KaxCueRefTime_Context = EbmlSemanticContext(0, NULL, &KaxCueReference_Context, *GetKaxGlobal_Context, &KaxCueRefTime::ClassInfos); -const EbmlSemanticContext KaxCueRefCluster_Context = EbmlSemanticContext(0, NULL, &KaxCueRefTime_Context, *GetKaxGlobal_Context, &KaxCueRefCluster::ClassInfos); -const EbmlSemanticContext KaxCueRefNumber_Context = EbmlSemanticContext(0, NULL, &KaxCueRefTime_Context, *GetKaxGlobal_Context, &KaxCueRefNumber::ClassInfos); -const EbmlSemanticContext KaxCueRefCodecState_Context = EbmlSemanticContext(0, NULL, &KaxCueRefTime_Context, *GetKaxGlobal_Context, &KaxCueRefCodecState::ClassInfos); +const EbmlSemanticContext KaxCueCodecState_Context = EbmlSemanticContext(0, NULL, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueCodecState)); +const EbmlSemanticContext KaxCueReference_Context = EbmlSemanticContext(countof(KaxCueReference_ContextList), KaxCueReference_ContextList, &KaxCueTrackPositions_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueReference)); +const EbmlSemanticContext KaxCueRefTime_Context = EbmlSemanticContext(0, NULL, &KaxCueReference_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueRefTime)); +const EbmlSemanticContext KaxCueRefCluster_Context = EbmlSemanticContext(0, NULL, &KaxCueRefTime_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueRefCluster)); +const EbmlSemanticContext KaxCueRefNumber_Context = EbmlSemanticContext(0, NULL, &KaxCueRefTime_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueRefNumber)); +const EbmlSemanticContext KaxCueRefCodecState_Context = EbmlSemanticContext(0, NULL, &KaxCueRefTime_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCueRefCodecState)); #endif // MATROSKA_VERSION const EbmlCallbacks KaxCuePoint::ClassInfos(KaxCuePoint::Create, KaxCuePoint_TheId, "CuePoint", KaxCuePoint_Context); @@ -159,7 +159,7 @@ void KaxCuePoint::PositionSet(const KaxBlockGroup & BlockReference, uint64 Globa } } - KaxCodecState *CodecState = static_cast(BlockReference.FindFirstElt(KaxCodecState::ClassInfos)); + KaxCodecState *CodecState = static_cast(BlockReference.FindFirstElt(EBML_INFO(KaxCodecState))); if (CodecState != NULL) { KaxCueCodecState &CueCodecState = AddNewChild(NewPositions); *static_cast(&CueCodecState) = BlockReference.GetParentCluster()->GetParentSegment()->GetRelativePosition(CodecState->GetElementPosition()); @@ -199,7 +199,7 @@ void KaxCuePoint::PositionSet(const KaxBlockBlob & BlobReference, uint64 GlobalT #if MATROSKA_VERSION >= 2 if (!BlobReference.IsSimpleBlock()) { const KaxBlockGroup &BlockGroup = BlobReference; - const KaxCodecState *CodecState = static_cast(BlockGroup.FindFirstElt(KaxCodecState::ClassInfos)); + const KaxCodecState *CodecState = static_cast(BlockGroup.FindFirstElt(EBML_INFO(KaxCodecState))); if (CodecState != NULL) { KaxCueCodecState &CueCodecState = AddNewChild(NewPositions); *static_cast(&CueCodecState) = BlockGroup.GetParentCluster()->GetParentSegment()->GetRelativePosition(CodecState->GetElementPosition()); @@ -244,11 +244,11 @@ bool KaxCuePoint::operator<(const EbmlElement & EltB) const const KaxCuePoint & theEltB = *static_cast(&EltB); // compare timecode - const KaxCueTime * TimeCodeA = static_cast(FindElt(KaxCueTime::ClassInfos)); + const KaxCueTime * TimeCodeA = static_cast(FindElt(EBML_INFO(KaxCueTime))); if (TimeCodeA == NULL) return false; - const KaxCueTime * TimeCodeB = static_cast(theEltB.FindElt(KaxCueTime::ClassInfos)); + const KaxCueTime * TimeCodeB = static_cast(theEltB.FindElt(EBML_INFO(KaxCueTime))); if (TimeCodeB == NULL) return false; @@ -259,11 +259,11 @@ bool KaxCuePoint::operator<(const EbmlElement & EltB) const return false; // compare tracks (timecodes are equal) - const KaxCueTrack * TrackA = static_cast(FindElt(KaxCueTrack::ClassInfos)); + const KaxCueTrack * TrackA = static_cast(FindElt(EBML_INFO(KaxCueTrack))); if (TrackA == NULL) return false; - const KaxCueTrack * TrackB = static_cast(theEltB.FindElt(KaxCueTrack::ClassInfos)); + const KaxCueTrack * TrackB = static_cast(theEltB.FindElt(EBML_INFO(KaxCueTrack))); if (TrackB == NULL) return false; @@ -278,7 +278,7 @@ bool KaxCuePoint::operator<(const EbmlElement & EltB) const bool KaxCuePoint::Timecode(uint64 & aTimecode, uint64 GlobalTimecodeScale) const { - const KaxCueTime *aTime = static_cast(FindFirstElt(KaxCueTime::ClassInfos)); + const KaxCueTime *aTime = static_cast(FindFirstElt(EBML_INFO(KaxCueTime))); if (aTime == NULL) return false; aTimecode = uint64(*aTime) * GlobalTimecodeScale; @@ -293,10 +293,10 @@ const KaxCueTrackPositions * KaxCuePoint::GetSeekPosition() const const KaxCueTrackPositions * result = NULL; uint64 aPosition = EBML_PRETTYLONGINT(0xFFFFFFFFFFFFFFF); // find the position of the "earlier" Cluster - const KaxCueTrackPositions *aPoss = static_cast(FindFirstElt(KaxCueTrackPositions::ClassInfos)); + const KaxCueTrackPositions *aPoss = static_cast(FindFirstElt(EBML_INFO(KaxCueTrackPositions))); while (aPoss != NULL) { - const KaxCueClusterPosition *aPos = static_cast(aPoss->FindFirstElt(KaxCueClusterPosition::ClassInfos)); + const KaxCueClusterPosition *aPos = static_cast(aPoss->FindFirstElt(EBML_INFO(KaxCueClusterPosition))); if (aPos != NULL && uint64(*aPos) < aPosition) { aPosition = uint64(*aPos); result = aPoss; @@ -309,7 +309,7 @@ const KaxCueTrackPositions * KaxCuePoint::GetSeekPosition() const uint64 KaxCueTrackPositions::ClusterPosition() const { - const KaxCueClusterPosition *aPos = static_cast(FindFirstElt(KaxCueClusterPosition::ClassInfos)); + const KaxCueClusterPosition *aPos = static_cast(FindFirstElt(EBML_INFO(KaxCueClusterPosition))); if (aPos == NULL) return 0; @@ -318,7 +318,7 @@ uint64 KaxCueTrackPositions::ClusterPosition() const uint16 KaxCueTrackPositions::TrackNumber() const { - const KaxCueTrack *aTrack = static_cast(FindFirstElt(KaxCueTrack::ClassInfos)); + const KaxCueTrack *aTrack = static_cast(FindFirstElt(EBML_INFO(KaxCueTrack))); if (aTrack == NULL) return 0; diff --git a/src/KaxInfo.cpp b/src/KaxInfo.cpp index 8b8242d..b33bace 100644 --- a/src/KaxInfo.cpp +++ b/src/KaxInfo.cpp @@ -42,25 +42,25 @@ START_LIBMATROSKA_NAMESPACE const EbmlSemantic KaxInfo_ContextList[14] = { - EbmlSemantic(false, true, KaxSegmentUID::ClassInfos), - EbmlSemantic(false, true, KaxSegmentFilename::ClassInfos), - EbmlSemantic(false, true, KaxPrevUID::ClassInfos), - EbmlSemantic(false, true, KaxPrevFilename::ClassInfos), - EbmlSemantic(false, true, KaxNextUID::ClassInfos), - EbmlSemantic(false, true, KaxNextFilename::ClassInfos), - EbmlSemantic(false, false, KaxSegmentFamily::ClassInfos), - EbmlSemantic(false, false, KaxChapterTranslate::ClassInfos), - EbmlSemantic(true, true, KaxTimecodeScale::ClassInfos), - EbmlSemantic(false, true, KaxDuration::ClassInfos), - EbmlSemantic(false, true, KaxDateUTC::ClassInfos), - EbmlSemantic(false, true, KaxTitle::ClassInfos), - EbmlSemantic(true, true, KaxMuxingApp::ClassInfos), - EbmlSemantic(true, true, KaxWritingApp::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxSegmentUID)), + EbmlSemantic(false, true, EBML_INFO(KaxSegmentFilename)), + EbmlSemantic(false, true, EBML_INFO(KaxPrevUID)), + EbmlSemantic(false, true, EBML_INFO(KaxPrevFilename)), + EbmlSemantic(false, true, EBML_INFO(KaxNextUID)), + EbmlSemantic(false, true, EBML_INFO(KaxNextFilename)), + EbmlSemantic(false, false, EBML_INFO(KaxSegmentFamily)), + EbmlSemantic(false, false, EBML_INFO(KaxChapterTranslate)), + EbmlSemantic(true, true, EBML_INFO(KaxTimecodeScale)), + EbmlSemantic(false, true, EBML_INFO(KaxDuration)), + EbmlSemantic(false, true, EBML_INFO(KaxDateUTC)), + EbmlSemantic(false, true, EBML_INFO(KaxTitle)), + EbmlSemantic(true, true, EBML_INFO(KaxMuxingApp)), + EbmlSemantic(true, true, EBML_INFO(KaxWritingApp)), }; -const EbmlSemanticContext KaxInfo_Context = EbmlSemanticContext(countof(KaxInfo_ContextList), KaxInfo_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxInfo::ClassInfos); -const EbmlSemanticContext KaxMuxingApp_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxMuxingApp::ClassInfos); -const EbmlSemanticContext KaxWritingApp_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxWritingApp::ClassInfos); +const EbmlSemanticContext KaxInfo_Context = EbmlSemanticContext(countof(KaxInfo_ContextList), KaxInfo_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxInfo)); +const EbmlSemanticContext KaxMuxingApp_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxMuxingApp)); +const EbmlSemanticContext KaxWritingApp_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxWritingApp)); EbmlId KaxInfo_TheId (0x1549A966, 4); EbmlId KaxMuxingApp_TheId (0x4D80, 2); diff --git a/src/KaxInfoData.cpp b/src/KaxInfoData.cpp index 5a1b597..ef6a7aa 100644 --- a/src/KaxInfoData.cpp +++ b/src/KaxInfoData.cpp @@ -40,9 +40,9 @@ START_LIBMATROSKA_NAMESPACE const EbmlSemantic KaxChapterTranslate_ContextList[3] = { - EbmlSemantic(false, false, KaxChapterTranslateEditionUID::ClassInfos), - EbmlSemantic(true, true, KaxChapterTranslateCodec::ClassInfos), - EbmlSemantic(true, true, KaxChapterTranslateID::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxChapterTranslateEditionUID)), + EbmlSemantic(true, true, EBML_INFO(KaxChapterTranslateCodec)), + EbmlSemantic(true, true, EBML_INFO(KaxChapterTranslateID)), }; EbmlId KaxSegmentUID_TheId (0x73A4, 2); @@ -61,21 +61,21 @@ EbmlId KaxDuration_TheId (0x4489, 2); EbmlId KaxDateUTC_TheId (0x4461, 2); EbmlId KaxTitle_TheId (0x7BA9, 2); -const EbmlSemanticContext KaxSegmentUID_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxSegmentUID::ClassInfos); -const EbmlSemanticContext KaxSegmentFilename_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxSegmentFilename::ClassInfos); -const EbmlSemanticContext KaxPrevUID_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxPrevUID::ClassInfos); -const EbmlSemanticContext KaxPrevFilename_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxPrevFilename::ClassInfos); -const EbmlSemanticContext KaxNextUID_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxNextUID::ClassInfos); -const EbmlSemanticContext KaxNextFilename_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxNextFilename::ClassInfos); -const EbmlSemanticContext KaxSegmentFamily_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxSegmentFamily::ClassInfos); -const EbmlSemanticContext KaxChapterTranslate_Context = EbmlSemanticContext(countof(KaxChapterTranslate_ContextList), KaxChapterTranslate_ContextList, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxChapterTranslate::ClassInfos); -const EbmlSemanticContext KaxChapterTranslateEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterTranslate_Context, *GetKaxGlobal_Context, &KaxChapterTranslateEditionUID::ClassInfos); -const EbmlSemanticContext KaxChapterTranslateCodec_Context = EbmlSemanticContext(0, NULL, &KaxChapterTranslate_Context, *GetKaxGlobal_Context, &KaxChapterTranslateCodec::ClassInfos); -const EbmlSemanticContext KaxChapterTranslateID_Context = EbmlSemanticContext(0, NULL, &KaxChapterTranslate_Context, *GetKaxGlobal_Context, &KaxChapterTranslateID::ClassInfos); -const EbmlSemanticContext KaxTimecodeScale_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxTimecodeScale::ClassInfos); -const EbmlSemanticContext KaxDuration_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxDuration::ClassInfos); -const EbmlSemanticContext KaxDateUTC_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxDateUTC::ClassInfos); -const EbmlSemanticContext KaxTitle_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &KaxTitle::ClassInfos); +const EbmlSemanticContext KaxSegmentUID_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSegmentUID)); +const EbmlSemanticContext KaxSegmentFilename_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSegmentFilename)); +const EbmlSemanticContext KaxPrevUID_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxPrevUID)); +const EbmlSemanticContext KaxPrevFilename_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxPrevFilename)); +const EbmlSemanticContext KaxNextUID_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxNextUID)); +const EbmlSemanticContext KaxNextFilename_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxNextFilename)); +const EbmlSemanticContext KaxSegmentFamily_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSegmentFamily)); +const EbmlSemanticContext KaxChapterTranslate_Context = EbmlSemanticContext(countof(KaxChapterTranslate_ContextList), KaxChapterTranslate_ContextList, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTranslate)); +const EbmlSemanticContext KaxChapterTranslateEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxChapterTranslate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTranslateEditionUID)); +const EbmlSemanticContext KaxChapterTranslateCodec_Context = EbmlSemanticContext(0, NULL, &KaxChapterTranslate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTranslateCodec)); +const EbmlSemanticContext KaxChapterTranslateID_Context = EbmlSemanticContext(0, NULL, &KaxChapterTranslate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxChapterTranslateID)); +const EbmlSemanticContext KaxTimecodeScale_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTimecodeScale)); +const EbmlSemanticContext KaxDuration_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxDuration)); +const EbmlSemanticContext KaxDateUTC_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxDateUTC)); +const EbmlSemanticContext KaxTitle_Context = EbmlSemanticContext(0, NULL, &KaxInfo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTitle)); const EbmlCallbacks KaxSegmentUID::ClassInfos(KaxSegmentUID::Create, KaxSegmentUID_TheId, "SegmentUID", KaxSegmentUID_Context); diff --git a/src/KaxSeekHead.cpp b/src/KaxSeekHead.cpp index 4dfceca..ec9aaf2 100644 --- a/src/KaxSeekHead.cpp +++ b/src/KaxSeekHead.cpp @@ -44,19 +44,19 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxSeekHead_ContextList[1] = { - EbmlSemantic(true, false, KaxSeek::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxSeek)), }; EbmlSemantic KaxSeek_ContextList[2] = { - EbmlSemantic(true, true, KaxSeekID::ClassInfos), - EbmlSemantic(true, true, KaxSeekPosition::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxSeekID)), + EbmlSemantic(true, true, EBML_INFO(KaxSeekPosition)), }; -const EbmlSemanticContext KaxSeekHead_Context = EbmlSemanticContext(countof(KaxSeekHead_ContextList), KaxSeekHead_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxSeekHead::ClassInfos); -const EbmlSemanticContext KaxSeek_Context = EbmlSemanticContext(countof(KaxSeek_ContextList), KaxSeek_ContextList, &KaxSeekHead_Context, *GetKaxGlobal_Context, &KaxSeek::ClassInfos); -const EbmlSemanticContext KaxSeekID_Context = EbmlSemanticContext(0, NULL, &KaxSeek_Context, *GetKaxGlobal_Context, &KaxSeekID::ClassInfos); -const EbmlSemanticContext KaxSeekPosition_Context = EbmlSemanticContext(0, NULL, &KaxSeek_Context, *GetKaxGlobal_Context, &KaxSeekPosition::ClassInfos); +const EbmlSemanticContext KaxSeekHead_Context = EbmlSemanticContext(countof(KaxSeekHead_ContextList), KaxSeekHead_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSeekHead)); +const EbmlSemanticContext KaxSeek_Context = EbmlSemanticContext(countof(KaxSeek_ContextList), KaxSeek_ContextList, &KaxSeekHead_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSeek)); +const EbmlSemanticContext KaxSeekID_Context = EbmlSemanticContext(0, NULL, &KaxSeek_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSeekID)); +const EbmlSemanticContext KaxSeekPosition_Context = EbmlSemanticContext(0, NULL, &KaxSeek_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxSeekPosition)); EbmlId KaxSeekHead_TheId (0x114D9B74, 4); EbmlId KaxSeek_TheId (0x4DBB, 2); @@ -99,12 +99,12 @@ void KaxSeekHead::IndexThis(const EbmlElement & aElt, const KaxSegment & ParentS KaxSeek * KaxSeekHead::FindFirstOf(const EbmlCallbacks & Callbacks) const { // parse all the Entries and find the first to match the type - KaxSeek * aElt = static_cast(FindFirstElt(KaxSeek::ClassInfos)); + KaxSeek * aElt = static_cast(FindFirstElt(EBML_INFO(KaxSeek))); while (aElt != NULL) { KaxSeekID * aId = NULL; for (unsigned int i = 0; iListSize(); i++) { - if (EbmlId(*(*aElt)[i]) == KaxSeekID::ClassInfos.GlobalId) { + if (EbmlId(*(*aElt)[i]) == EBML_ID(KaxSeekID)) { aId = static_cast((*aElt)[i]); EbmlId aEbmlId(aId->GetBuffer(), aId->GetSize()); if (aEbmlId == Callbacks.GlobalId) @@ -136,7 +136,7 @@ KaxSeek * KaxSeekHead::FindNextOf(const KaxSeek &aPrev) const iIndex++; for (; iIndexIsEbmlId(aPrev)) @@ -150,7 +150,7 @@ KaxSeek * KaxSeekHead::FindNextOf(const KaxSeek &aPrev) const int64 KaxSeek::Location() const { - KaxSeekPosition *aPos = static_cast(FindFirstElt(KaxSeekPosition::ClassInfos)); + KaxSeekPosition *aPos = static_cast(FindFirstElt(EBML_INFO(KaxSeekPosition))); if (aPos == NULL) return 0; return uint64(*aPos); @@ -158,7 +158,7 @@ int64 KaxSeek::Location() const bool KaxSeek::IsEbmlId(const EbmlId & aId) const { - KaxSeekID *_Id = static_cast(FindFirstElt(KaxSeekID::ClassInfos)); + KaxSeekID *_Id = static_cast(FindFirstElt(EBML_INFO(KaxSeekID))); if (_Id == NULL) return false; EbmlId aEbmlId(_Id->GetBuffer(), _Id->GetSize()); @@ -167,10 +167,10 @@ bool KaxSeek::IsEbmlId(const EbmlId & aId) const bool KaxSeek::IsEbmlId(const KaxSeek & aPoint) const { - KaxSeekID *_IdA = static_cast(FindFirstElt(KaxSeekID::ClassInfos)); + KaxSeekID *_IdA = static_cast(FindFirstElt(EBML_INFO(KaxSeekID))); if (_IdA == NULL) return false; - KaxSeekID *_IdB = static_cast(aPoint.FindFirstElt(KaxSeekID::ClassInfos)); + KaxSeekID *_IdB = static_cast(aPoint.FindFirstElt(EBML_INFO(KaxSeekID))); if (_IdB == NULL) return false; EbmlId aEbmlIdA(_IdA->GetBuffer(), _IdA->GetSize()); diff --git a/src/KaxSegment.cpp b/src/KaxSegment.cpp index 34bcad9..c947366 100644 --- a/src/KaxSegment.cpp +++ b/src/KaxSegment.cpp @@ -50,24 +50,24 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxMatroska_ContextList[2] = { - EbmlSemantic(true, true, EbmlHead::ClassInfos), - EbmlSemantic(true, false, KaxSegment::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(EbmlHead)), + EbmlSemantic(true, false, EBML_INFO(KaxSegment)), }; EbmlSemantic KaxSegment_ContextList[8] = { - EbmlSemantic(false, false, KaxCluster::ClassInfos), - EbmlSemantic(false, false, KaxSeekHead::ClassInfos), - EbmlSemantic(false, true, KaxCues::ClassInfos), - EbmlSemantic(false, false, KaxTracks::ClassInfos), - EbmlSemantic(true, true, KaxInfo::ClassInfos), - EbmlSemantic(false, true, KaxChapters::ClassInfos), - EbmlSemantic(false, true, KaxAttachments::ClassInfos), - EbmlSemantic(false, true, KaxTags::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxCluster)), + EbmlSemantic(false, false, EBML_INFO(KaxSeekHead)), + EbmlSemantic(false, true, EBML_INFO(KaxCues)), + EbmlSemantic(false, false, EBML_INFO(KaxTracks)), + EbmlSemantic(true, true, EBML_INFO(KaxInfo)), + EbmlSemantic(false, true, EBML_INFO(KaxChapters)), + EbmlSemantic(false, true, EBML_INFO(KaxAttachments)), + EbmlSemantic(false, true, EBML_INFO(KaxTags)), }; const EbmlSemanticContext KaxMatroska_Context = EbmlSemanticContext(countof(KaxMatroska_ContextList), KaxMatroska_ContextList, NULL, *GetKaxGlobal_Context, NULL); -const EbmlSemanticContext KaxSegment_Context = EbmlSemanticContext(countof(KaxSegment_ContextList), KaxSegment_ContextList, NULL, *GetKaxGlobal_Context, &KaxSegment::ClassInfos); +const EbmlSemanticContext KaxSegment_Context = EbmlSemanticContext(countof(KaxSegment_ContextList), KaxSegment_ContextList, NULL, *GetKaxGlobal_Context, &EBML_INFO(KaxSegment)); EbmlId KaxSegment_TheId(0x18538067, 4); const EbmlCallbacks KaxSegment::ClassInfos(KaxSegment::Create, KaxSegment_TheId, "Segment\0rotomopogo", KaxSegment_Context); @@ -86,7 +86,7 @@ KaxSegment::KaxSegment(const KaxSegment & ElementToClone) std::vector::const_iterator Itr = begin(); while (Itr != end()) { - if (EbmlId(**Itr) == KaxCluster::ClassInfos.GlobalId) { + if (EbmlId(**Itr) == EBML_ID(KaxCluster)) { static_cast(*Itr)->SetParent(*this); } } diff --git a/src/KaxTag.cpp b/src/KaxTag.cpp index 86cd817..1720959 100644 --- a/src/KaxTag.cpp +++ b/src/KaxTag.cpp @@ -44,157 +44,157 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxTag_ContextList[14] = { - EbmlSemantic(true, true, KaxTagTargets::ClassInfos), - EbmlSemantic(false, true, KaxTagGeneral::ClassInfos), - EbmlSemantic(false, true, KaxTagGenres::ClassInfos), - EbmlSemantic(false, true, KaxTagAudioSpecific::ClassInfos), - EbmlSemantic(false, true, KaxTagImageSpecific::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiCommercial::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiDate::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiEntity::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiIdentifier::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiLegal::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiTitle::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiAttachment::ClassInfos), -// EbmlSemantic(false, false, KaxTagLength::ClassInfos), -// EbmlSemantic(false, false, KaxTagPlaylistDelay::ClassInfos), -// EbmlSemantic(false, false, KaxTagUnsynchronisedText::ClassInfos), -// EbmlSemantic(false, false, KaxTagUserDefinedURL::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiComment::ClassInfos), - EbmlSemantic(true, false, KaxTagSimple::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagTargets)), + EbmlSemantic(false, true, EBML_INFO(KaxTagGeneral)), + EbmlSemantic(false, true, EBML_INFO(KaxTagGenres)), + EbmlSemantic(false, true, EBML_INFO(KaxTagAudioSpecific)), + EbmlSemantic(false, true, EBML_INFO(KaxTagImageSpecific)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiCommercial)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiDate)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiEntity)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiIdentifier)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiLegal)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiTitle)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiAttachment)), +// EbmlSemantic(false, false, EBML_INFO(KaxTagLength)), +// EbmlSemantic(false, false, EBML_INFO(KaxTagPlaylistDelay)), +// EbmlSemantic(false, false, EBML_INFO(KaxTagUnsynchronisedText)), +// EbmlSemantic(false, false, EBML_INFO(KaxTagUserDefinedURL)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiComment)), + EbmlSemantic(true, false, EBML_INFO(KaxTagSimple)), }; EbmlSemantic KaxTagTargets_ContextList[6] = { - EbmlSemantic(false, true, KaxTagTargetTypeValue::ClassInfos), - EbmlSemantic(false, true, KaxTagTargetType::ClassInfos), - EbmlSemantic(false, false, KaxTagTrackUID::ClassInfos), - EbmlSemantic(false, false, KaxTagEditionUID::ClassInfos), - EbmlSemantic(false, false, KaxTagChapterUID::ClassInfos), - EbmlSemantic(false, false, KaxTagAttachmentUID::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxTagTargetTypeValue)), + EbmlSemantic(false, true, EBML_INFO(KaxTagTargetType)), + EbmlSemantic(false, false, EBML_INFO(KaxTagTrackUID)), + EbmlSemantic(false, false, EBML_INFO(KaxTagEditionUID)), + EbmlSemantic(false, false, EBML_INFO(KaxTagChapterUID)), + EbmlSemantic(false, false, EBML_INFO(KaxTagAttachmentUID)), }; EbmlSemantic KaxTagGeneral_ContextList[17] = { - EbmlSemantic(false, true, KaxTagArchivalLocation::ClassInfos), - EbmlSemantic(false, true, KaxTagFile::ClassInfos), - EbmlSemantic(false, false, KaxTagKeywords::ClassInfos), - EbmlSemantic(false, true, KaxTagMood::ClassInfos), - EbmlSemantic(false, false, KaxTagRecordLocation::ClassInfos), - EbmlSemantic(false, true, KaxTagSource::ClassInfos), - EbmlSemantic(false, true, KaxTagSourceForm::ClassInfos), - EbmlSemantic(false, true, KaxTagProduct::ClassInfos), - EbmlSemantic(false, true, KaxTagOriginalMediaType::ClassInfos), - EbmlSemantic(false, true, KaxTagPlayCounter::ClassInfos), - EbmlSemantic(false, true, KaxTagPopularimeter::ClassInfos), - EbmlSemantic(false, true, KaxTagSubject::ClassInfos), - EbmlSemantic(false, true, KaxTagBibliography::ClassInfos), - EbmlSemantic(false, true, KaxTagLanguage::ClassInfos), - EbmlSemantic(false, true, KaxTagRating::ClassInfos), - EbmlSemantic(false, true, KaxTagEncoder::ClassInfos), - EbmlSemantic(false, true, KaxTagEncodeSettings::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxTagArchivalLocation)), + EbmlSemantic(false, true, EBML_INFO(KaxTagFile)), + EbmlSemantic(false, false, EBML_INFO(KaxTagKeywords)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMood)), + EbmlSemantic(false, false, EBML_INFO(KaxTagRecordLocation)), + EbmlSemantic(false, true, EBML_INFO(KaxTagSource)), + EbmlSemantic(false, true, EBML_INFO(KaxTagSourceForm)), + EbmlSemantic(false, true, EBML_INFO(KaxTagProduct)), + EbmlSemantic(false, true, EBML_INFO(KaxTagOriginalMediaType)), + EbmlSemantic(false, true, EBML_INFO(KaxTagPlayCounter)), + EbmlSemantic(false, true, EBML_INFO(KaxTagPopularimeter)), + EbmlSemantic(false, true, EBML_INFO(KaxTagSubject)), + EbmlSemantic(false, true, EBML_INFO(KaxTagBibliography)), + EbmlSemantic(false, true, EBML_INFO(KaxTagLanguage)), + EbmlSemantic(false, true, EBML_INFO(KaxTagRating)), + EbmlSemantic(false, true, EBML_INFO(KaxTagEncoder)), + EbmlSemantic(false, true, EBML_INFO(KaxTagEncodeSettings)), }; EbmlSemantic KaxTagGenres_ContextList[3] = { - EbmlSemantic(false, false, KaxTagAudioGenre::ClassInfos), - EbmlSemantic(false, false, KaxTagVideoGenre::ClassInfos), - EbmlSemantic(false, true, KaxTagSubGenre::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxTagAudioGenre)), + EbmlSemantic(false, false, EBML_INFO(KaxTagVideoGenre)), + EbmlSemantic(false, true, EBML_INFO(KaxTagSubGenre)), }; EbmlSemantic KaxTagAudioSpecific_ContextList[10] = { - EbmlSemantic(false, true, KaxTagAudioPeak::ClassInfos), - EbmlSemantic(false, true, KaxTagAudioEncryption::ClassInfos), - EbmlSemantic(false, true, KaxTagAudioGain::ClassInfos), - EbmlSemantic(false, true, KaxTagBPM::ClassInfos), - EbmlSemantic(false, true, KaxTagDiscTrack::ClassInfos), - EbmlSemantic(false, true, KaxTagSetPart::ClassInfos), - EbmlSemantic(false, true, KaxTagEqualisation::ClassInfos), - EbmlSemantic(false, true, KaxTagInitialKey::ClassInfos), - EbmlSemantic(false, true, KaxTagOfficialAudioFileURL::ClassInfos), - EbmlSemantic(false, true, KaxTagOfficialAudioSourceURL::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxTagAudioPeak)), + EbmlSemantic(false, true, EBML_INFO(KaxTagAudioEncryption)), + EbmlSemantic(false, true, EBML_INFO(KaxTagAudioGain)), + EbmlSemantic(false, true, EBML_INFO(KaxTagBPM)), + EbmlSemantic(false, true, EBML_INFO(KaxTagDiscTrack)), + EbmlSemantic(false, true, EBML_INFO(KaxTagSetPart)), + EbmlSemantic(false, true, EBML_INFO(KaxTagEqualisation)), + EbmlSemantic(false, true, EBML_INFO(KaxTagInitialKey)), + EbmlSemantic(false, true, EBML_INFO(KaxTagOfficialAudioFileURL)), + EbmlSemantic(false, true, EBML_INFO(KaxTagOfficialAudioSourceURL)), }; EbmlSemantic KaxTagImageSpecific_ContextList[6] = { - EbmlSemantic(false, true, KaxTagCaptureDPI::ClassInfos), - EbmlSemantic(false, true, KaxTagCaptureLightness::ClassInfos), - EbmlSemantic(false, true, KaxTagCapturePaletteSetting::ClassInfos), - EbmlSemantic(false, true, KaxTagCaptureSharpness::ClassInfos), - EbmlSemantic(false, true, KaxTagCropped::ClassInfos), - EbmlSemantic(false, true, KaxTagOriginalDimensions::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxTagCaptureDPI)), + EbmlSemantic(false, true, EBML_INFO(KaxTagCaptureLightness)), + EbmlSemantic(false, true, EBML_INFO(KaxTagCapturePaletteSetting)), + EbmlSemantic(false, true, EBML_INFO(KaxTagCaptureSharpness)), + EbmlSemantic(false, true, EBML_INFO(KaxTagCropped)), + EbmlSemantic(false, true, EBML_INFO(KaxTagOriginalDimensions)), }; EbmlSemantic KaxTagSimple_ContextList[6] = { - EbmlSemantic(true, true, KaxTagName::ClassInfos), - EbmlSemantic(true, true, KaxTagLangue::ClassInfos), - EbmlSemantic(true, true, KaxTagDefault::ClassInfos), - EbmlSemantic(false, true, KaxTagString::ClassInfos), - EbmlSemantic(false, true, KaxTagBinary::ClassInfos), - EbmlSemantic(false, false, KaxTagSimple::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagName)), + EbmlSemantic(true, true, EBML_INFO(KaxTagLangue)), + EbmlSemantic(true, true, EBML_INFO(KaxTagDefault)), + EbmlSemantic(false, true, EBML_INFO(KaxTagString)), + EbmlSemantic(false, true, EBML_INFO(KaxTagBinary)), + EbmlSemantic(false, false, EBML_INFO(KaxTagSimple)), }; -const EbmlSemanticContext KaxTag_Context = EbmlSemanticContext(countof(KaxTag_ContextList), KaxTag_ContextList, &KaxTags_Context, *GetKaxTagsGlobal_Context, &KaxTag::ClassInfos); -const EbmlSemanticContext KaxTagTargets_Context = EbmlSemanticContext(countof(KaxTagTargets_ContextList), KaxTagTargets_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagTargets::ClassInfos); -const EbmlSemanticContext KaxTagGeneral_Context = EbmlSemanticContext(countof(KaxTagGeneral_ContextList), KaxTagGeneral_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagGeneral::ClassInfos); -const EbmlSemanticContext KaxTagGenres_Context = EbmlSemanticContext(countof(KaxTagGenres_ContextList), KaxTagGenres_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagGenres::ClassInfos); -const EbmlSemanticContext KaxTagAudioSpecific_Context = EbmlSemanticContext(countof(KaxTagAudioSpecific_ContextList), KaxTagAudioSpecific_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagAudioSpecific::ClassInfos); -const EbmlSemanticContext KaxTagImageSpecific_Context = EbmlSemanticContext(countof(KaxTagImageSpecific_ContextList), KaxTagImageSpecific_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagImageSpecific::ClassInfos); -const EbmlSemanticContext KaxTagBibliography_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagBibliography::ClassInfos); -const EbmlSemanticContext KaxTagEncoder_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagEncoder::ClassInfos); -const EbmlSemanticContext KaxTagEncodeSettings_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagEncodeSettings::ClassInfos); -const EbmlSemanticContext KaxTagLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagLanguage::ClassInfos); -const EbmlSemanticContext KaxTagLength_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagLength::ClassInfos); -const EbmlSemanticContext KaxTagPlaylistDelay_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagPlaylistDelay::ClassInfos); -const EbmlSemanticContext KaxTagRating_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagRating::ClassInfos); -const EbmlSemanticContext KaxTagSubject_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagSubject::ClassInfos); -const EbmlSemanticContext KaxTagUnsynchronisedText_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagUnsynchronisedText::ClassInfos); -const EbmlSemanticContext KaxTagUserDefinedURL_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagUserDefinedURL::ClassInfos); -const EbmlSemanticContext KaxTagTargetTypeValue_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &KaxTagTargetTypeValue::ClassInfos); -const EbmlSemanticContext KaxTagTargetType_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &KaxTagTargetType::ClassInfos); -const EbmlSemanticContext KaxTagTrackUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &KaxTagTrackUID::ClassInfos); -const EbmlSemanticContext KaxTagEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &KaxTagEditionUID::ClassInfos); -const EbmlSemanticContext KaxTagChapterUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &KaxTagChapterUID::ClassInfos); -const EbmlSemanticContext KaxTagAttachmentUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &KaxTagAttachmentUID::ClassInfos); -const EbmlSemanticContext KaxTagArchivalLocation_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagArchivalLocation::ClassInfos); -const EbmlSemanticContext KaxTagFile_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagFile::ClassInfos); -const EbmlSemanticContext KaxTagKeywords_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagKeywords::ClassInfos); -const EbmlSemanticContext KaxTagMood_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagMood::ClassInfos); -const EbmlSemanticContext KaxTagRecordLocation_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagRecordLocation::ClassInfos); -const EbmlSemanticContext KaxTagSource_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagSource::ClassInfos); -const EbmlSemanticContext KaxTagSourceForm_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagSourceForm::ClassInfos); -const EbmlSemanticContext KaxTagProduct_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagProduct::ClassInfos); -const EbmlSemanticContext KaxTagOriginalMediaType_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagOriginalMediaType::ClassInfos); -const EbmlSemanticContext KaxTagPlayCounter_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagPlayCounter::ClassInfos); -const EbmlSemanticContext KaxTagPopularimeter_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &KaxTagPopularimeter::ClassInfos); -const EbmlSemanticContext KaxTagAudioGenre_Context = EbmlSemanticContext(0, NULL, &KaxTagGenres_Context, *GetKaxGlobal_Context, &KaxTagAudioGenre::ClassInfos); -const EbmlSemanticContext KaxTagVideoGenre_Context = EbmlSemanticContext(0, NULL, &KaxTagGenres_Context, *GetKaxGlobal_Context, &KaxTagVideoGenre::ClassInfos); -const EbmlSemanticContext KaxTagSubGenre_Context = EbmlSemanticContext(0, NULL, &KaxTagGenres_Context, *GetKaxGlobal_Context, &KaxTagSubGenre::ClassInfos); -const EbmlSemanticContext KaxTagAudioEncryption_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagAudioEncryption::ClassInfos); -const EbmlSemanticContext KaxTagAudioGain_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagAudioGain::ClassInfos); -const EbmlSemanticContext KaxTagAudioPeak_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagAudioPeak::ClassInfos); -const EbmlSemanticContext KaxTagBPM_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagBPM::ClassInfos); -const EbmlSemanticContext KaxTagDiscTrack_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagDiscTrack::ClassInfos); -const EbmlSemanticContext KaxTagSetPart_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagSetPart::ClassInfos); -const EbmlSemanticContext KaxTagEqualisation_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagEqualisation::ClassInfos); -const EbmlSemanticContext KaxTagInitialKey_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagInitialKey::ClassInfos); -const EbmlSemanticContext KaxTagOfficialAudioFileURL_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagOfficialAudioFileURL::ClassInfos); -const EbmlSemanticContext KaxTagOfficialAudioSourceURL_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &KaxTagOfficialAudioSourceURL::ClassInfos); -const EbmlSemanticContext KaxTagCaptureDPI_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &KaxTagCaptureDPI::ClassInfos); -const EbmlSemanticContext KaxTagCaptureLightness_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &KaxTagCaptureLightness::ClassInfos); -const EbmlSemanticContext KaxTagCapturePaletteSetting_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &KaxTagCapturePaletteSetting::ClassInfos); -const EbmlSemanticContext KaxTagCaptureSharpness_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &KaxTagCaptureSharpness::ClassInfos); -const EbmlSemanticContext KaxTagCropped_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &KaxTagCropped::ClassInfos); -const EbmlSemanticContext KaxTagOriginalDimensions_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &KaxTagOriginalDimensions::ClassInfos); +const EbmlSemanticContext KaxTag_Context = EbmlSemanticContext(countof(KaxTag_ContextList), KaxTag_ContextList, &KaxTags_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTag)); +const EbmlSemanticContext KaxTagTargets_Context = EbmlSemanticContext(countof(KaxTagTargets_ContextList), KaxTagTargets_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagTargets)); +const EbmlSemanticContext KaxTagGeneral_Context = EbmlSemanticContext(countof(KaxTagGeneral_ContextList), KaxTagGeneral_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagGeneral)); +const EbmlSemanticContext KaxTagGenres_Context = EbmlSemanticContext(countof(KaxTagGenres_ContextList), KaxTagGenres_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagGenres)); +const EbmlSemanticContext KaxTagAudioSpecific_Context = EbmlSemanticContext(countof(KaxTagAudioSpecific_ContextList), KaxTagAudioSpecific_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagAudioSpecific)); +const EbmlSemanticContext KaxTagImageSpecific_Context = EbmlSemanticContext(countof(KaxTagImageSpecific_ContextList), KaxTagImageSpecific_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagImageSpecific)); +const EbmlSemanticContext KaxTagBibliography_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagBibliography)); +const EbmlSemanticContext KaxTagEncoder_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagEncoder)); +const EbmlSemanticContext KaxTagEncodeSettings_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagEncodeSettings)); +const EbmlSemanticContext KaxTagLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagLanguage)); +const EbmlSemanticContext KaxTagLength_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagLength)); +const EbmlSemanticContext KaxTagPlaylistDelay_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagPlaylistDelay)); +const EbmlSemanticContext KaxTagRating_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagRating)); +const EbmlSemanticContext KaxTagSubject_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagSubject)); +const EbmlSemanticContext KaxTagUnsynchronisedText_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagUnsynchronisedText)); +const EbmlSemanticContext KaxTagUserDefinedURL_Context = EbmlSemanticContext(0, NULL, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagUserDefinedURL)); +const EbmlSemanticContext KaxTagTargetTypeValue_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagTargetTypeValue)); +const EbmlSemanticContext KaxTagTargetType_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagTargetType)); +const EbmlSemanticContext KaxTagTrackUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagTrackUID)); +const EbmlSemanticContext KaxTagEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagEditionUID)); +const EbmlSemanticContext KaxTagChapterUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagChapterUID)); +const EbmlSemanticContext KaxTagAttachmentUID_Context = EbmlSemanticContext(0, NULL, &KaxTagTargets_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagAttachmentUID)); +const EbmlSemanticContext KaxTagArchivalLocation_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagArchivalLocation)); +const EbmlSemanticContext KaxTagFile_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagFile)); +const EbmlSemanticContext KaxTagKeywords_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagKeywords)); +const EbmlSemanticContext KaxTagMood_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMood)); +const EbmlSemanticContext KaxTagRecordLocation_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagRecordLocation)); +const EbmlSemanticContext KaxTagSource_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagSource)); +const EbmlSemanticContext KaxTagSourceForm_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagSourceForm)); +const EbmlSemanticContext KaxTagProduct_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagProduct)); +const EbmlSemanticContext KaxTagOriginalMediaType_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagOriginalMediaType)); +const EbmlSemanticContext KaxTagPlayCounter_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagPlayCounter)); +const EbmlSemanticContext KaxTagPopularimeter_Context = EbmlSemanticContext(0, NULL, &KaxTagGeneral_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagPopularimeter)); +const EbmlSemanticContext KaxTagAudioGenre_Context = EbmlSemanticContext(0, NULL, &KaxTagGenres_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagAudioGenre)); +const EbmlSemanticContext KaxTagVideoGenre_Context = EbmlSemanticContext(0, NULL, &KaxTagGenres_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagVideoGenre)); +const EbmlSemanticContext KaxTagSubGenre_Context = EbmlSemanticContext(0, NULL, &KaxTagGenres_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagSubGenre)); +const EbmlSemanticContext KaxTagAudioEncryption_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagAudioEncryption)); +const EbmlSemanticContext KaxTagAudioGain_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagAudioGain)); +const EbmlSemanticContext KaxTagAudioPeak_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagAudioPeak)); +const EbmlSemanticContext KaxTagBPM_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagBPM)); +const EbmlSemanticContext KaxTagDiscTrack_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagDiscTrack)); +const EbmlSemanticContext KaxTagSetPart_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagSetPart)); +const EbmlSemanticContext KaxTagEqualisation_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagEqualisation)); +const EbmlSemanticContext KaxTagInitialKey_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagInitialKey)); +const EbmlSemanticContext KaxTagOfficialAudioFileURL_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagOfficialAudioFileURL)); +const EbmlSemanticContext KaxTagOfficialAudioSourceURL_Context = EbmlSemanticContext(0, NULL, &KaxTagAudioSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagOfficialAudioSourceURL)); +const EbmlSemanticContext KaxTagCaptureDPI_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagCaptureDPI)); +const EbmlSemanticContext KaxTagCaptureLightness_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagCaptureLightness)); +const EbmlSemanticContext KaxTagCapturePaletteSetting_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagCapturePaletteSetting)); +const EbmlSemanticContext KaxTagCaptureSharpness_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagCaptureSharpness)); +const EbmlSemanticContext KaxTagCropped_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagCropped)); +const EbmlSemanticContext KaxTagOriginalDimensions_Context = EbmlSemanticContext(0, NULL, &KaxTagImageSpecific_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagOriginalDimensions)); -const EbmlSemanticContext KaxTagSimple_Context = EbmlSemanticContext(countof(KaxTagSimple_ContextList), KaxTagSimple_ContextList, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagSimple::ClassInfos); -const EbmlSemanticContext KaxTagName_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &KaxTagName::ClassInfos); -const EbmlSemanticContext KaxTagLangue_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &KaxTagLangue::ClassInfos); -const EbmlSemanticContext KaxTagDefault_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &KaxTagDefault::ClassInfos); -const EbmlSemanticContext KaxTagString_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &KaxTagString::ClassInfos); -const EbmlSemanticContext KaxTagBinary_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &KaxTagBinary::ClassInfos); +const EbmlSemanticContext KaxTagSimple_Context = EbmlSemanticContext(countof(KaxTagSimple_ContextList), KaxTagSimple_ContextList, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagSimple)); +const EbmlSemanticContext KaxTagName_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagName)); +const EbmlSemanticContext KaxTagLangue_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagLangue)); +const EbmlSemanticContext KaxTagDefault_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagDefault)); +const EbmlSemanticContext KaxTagString_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagString)); +const EbmlSemanticContext KaxTagBinary_Context = EbmlSemanticContext(0, NULL, &KaxTagSimple_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagBinary)); EbmlId KaxTag_TheId (0x7373, 2); EbmlId KaxTagTargets_TheId (0x63C0, 2); diff --git a/src/KaxTagMulti.cpp b/src/KaxTagMulti.cpp index 42e1618..3eb1da6 100644 --- a/src/KaxTagMulti.cpp +++ b/src/KaxTagMulti.cpp @@ -42,175 +42,175 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxTagMultiGlobal_ContextList[1] = { - EbmlSemantic(false, false, KaxTagMultiComment::ClassInfos), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiComment)), }; EbmlSemantic KaxTagMultiComment_ContextList[3] = { - EbmlSemantic(false, true, KaxTagMultiCommentName::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiCommentComments::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiCommentLanguage::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiCommentName)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiCommentComments)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiCommentLanguage)), }; EbmlSemantic KaxTagMultiCommercial_ContextList[1] = { - EbmlSemantic(true, false, KaxTagCommercial::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTagCommercial)), }; EbmlSemantic KaxTagCommercial_ContextList[5] = { - EbmlSemantic(true, true, KaxTagMultiCommercialType::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiCommercialAddress::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiCommercialURL::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiCommercialEmail::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiPrice::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagMultiCommercialType)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiCommercialAddress)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiCommercialURL)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiCommercialEmail)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiPrice)), }; EbmlSemantic KaxTagMultiPrice_ContextList[3] = { - EbmlSemantic(false, true, KaxTagMultiPriceCurrency::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiPriceAmount::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiPricePriceDate::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiPriceCurrency)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiPriceAmount)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiPricePriceDate)), }; EbmlSemantic KaxTagMultiDate_ContextList[1] = { - EbmlSemantic(true, false, KaxTagDate::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTagDate)), }; EbmlSemantic KaxTagDate_ContextList[3] = { - EbmlSemantic(true, true, KaxTagMultiDateType::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiDateDateBegin::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiDateDateEnd::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagMultiDateType)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiDateDateBegin)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiDateDateEnd)), }; EbmlSemantic KaxTagMultiEntity_ContextList[1] = { - EbmlSemantic(true, false, KaxTagEntity::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTagEntity)), }; EbmlSemantic KaxTagEntity_ContextList[5] = { - EbmlSemantic(true, true, KaxTagMultiEntityType::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiEntityName::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiEntityURL::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiEntityEmail::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiEntityAddress::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagMultiEntityType)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiEntityName)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiEntityURL)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiEntityEmail)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiEntityAddress)), }; EbmlSemantic KaxTagMultiIdentifier_ContextList[1] = { - EbmlSemantic(true, false, KaxTagIdentifier::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTagIdentifier)), }; EbmlSemantic KaxTagIdentifier_ContextList[3] = { - EbmlSemantic(true, true, KaxTagMultiIdentifierType::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiIdentifierBinary::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiIdentifierString::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagMultiIdentifierType)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiIdentifierBinary)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiIdentifierString)), }; EbmlSemantic KaxTagMultiLegal_ContextList[1] = { - EbmlSemantic(true, false, KaxTagLegal::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTagLegal)), }; EbmlSemantic KaxTagLegal_ContextList[4] = { - EbmlSemantic(true, true, KaxTagMultiLegalType::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiLegalContent::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiLegalURL::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiLegalAddress::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagMultiLegalType)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiLegalContent)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiLegalURL)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiLegalAddress)), }; EbmlSemantic KaxTagMultiTitle_ContextList[1] = { - EbmlSemantic(true, false, KaxTagTitle::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTagTitle)), }; EbmlSemantic KaxTagTitle_ContextList[8] = { - EbmlSemantic(true, true, KaxTagMultiTitleType::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiTitleName::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiTitleSubTitle::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiTitleEdition::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiTitleAddress::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiTitleURL::ClassInfos), - EbmlSemantic(false, false, KaxTagMultiTitleEmail::ClassInfos), - EbmlSemantic(false, true, KaxTagMultiTitleLanguage::ClassInfos), + EbmlSemantic(true, true, EBML_INFO(KaxTagMultiTitleType)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiTitleName)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiTitleSubTitle)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiTitleEdition)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiTitleAddress)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiTitleURL)), + EbmlSemantic(false, false, EBML_INFO(KaxTagMultiTitleEmail)), + EbmlSemantic(false, true, EBML_INFO(KaxTagMultiTitleLanguage)), }; EbmlSemantic KaxTagMultiAttachment_ContextList[1] = { - EbmlSemantic(true, false, KaxTagAttachment::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTagAttachment)), }; EbmlSemantic KaxTagAttachment_ContextList[1] = { - EbmlSemantic(false, true, KaxTagAttachmentID::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxTagAttachmentID)), }; const EbmlSemanticContext KaxTagMultiGlobal_Context = EbmlSemanticContext(countof(KaxTagMultiGlobal_ContextList), KaxTagMultiGlobal_ContextList, NULL, *GetKaxGlobal_Context, NULL); -const EbmlSemanticContext KaxTagMultiComment_Context = EbmlSemanticContext(countof(KaxTagMultiComment_ContextList), KaxTagMultiComment_ContextList, &KaxTag_Context, *GetKaxGlobal_Context, &KaxTagMultiComment::ClassInfos); -const EbmlSemanticContext KaxTagMultiCommentName_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiComment_Context, *GetKaxGlobal_Context, &KaxTagMultiCommentName::ClassInfos); -const EbmlSemanticContext KaxTagMultiCommentComments_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiComment_Context, *GetKaxGlobal_Context, &KaxTagMultiCommentComments::ClassInfos); -const EbmlSemanticContext KaxTagMultiCommentLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiComment_Context, *GetKaxGlobal_Context, &KaxTagMultiCommentLanguage::ClassInfos); - -const EbmlSemanticContext KaxTagMultiCommercial_Context = EbmlSemanticContext(countof(KaxTagMultiCommercial_ContextList), KaxTagMultiCommercial_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiCommercial::ClassInfos); -const EbmlSemanticContext KaxTagCommercial_Context = EbmlSemanticContext(countof(KaxTagCommercial_ContextList), KaxTagCommercial_ContextList, &KaxTagMultiCommercial_Context, *GetKaxTagsGlobal_Context, &KaxTagCommercial::ClassInfos); -const EbmlSemanticContext KaxTagMultiCommercialType_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &KaxTagMultiCommercialType::ClassInfos); -const EbmlSemanticContext KaxTagMultiCommercialAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &KaxTagMultiCommercialAddress::ClassInfos); -const EbmlSemanticContext KaxTagMultiCommercialURL_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &KaxTagMultiCommercialURL::ClassInfos); -const EbmlSemanticContext KaxTagMultiCommercialEmail_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &KaxTagMultiCommercialEmail::ClassInfos); - -const EbmlSemanticContext KaxTagMultiPrice_Context = EbmlSemanticContext(countof(KaxTagMultiPrice_ContextList), KaxTagMultiPrice_ContextList, &KaxTagCommercial_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiPrice::ClassInfos); -const EbmlSemanticContext KaxTagMultiPriceCurrency_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiPrice_Context, *GetKaxGlobal_Context, &KaxTagMultiPriceCurrency::ClassInfos); -const EbmlSemanticContext KaxTagMultiPriceAmount_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiPrice_Context, *GetKaxGlobal_Context, &KaxTagMultiPriceAmount::ClassInfos); -const EbmlSemanticContext KaxTagMultiPricePriceDate_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiPrice_Context, *GetKaxGlobal_Context, &KaxTagMultiPricePriceDate::ClassInfos); - -const EbmlSemanticContext KaxTagMultiDate_Context = EbmlSemanticContext(countof(KaxTagMultiDate_ContextList), KaxTagMultiDate_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiDate::ClassInfos); -const EbmlSemanticContext KaxTagDate_Context = EbmlSemanticContext(countof(KaxTagDate_ContextList), KaxTagDate_ContextList, &KaxTagMultiDate_Context, *GetKaxTagsGlobal_Context, &KaxTagDate::ClassInfos); -const EbmlSemanticContext KaxTagMultiDateType_Context = EbmlSemanticContext(0, NULL, &KaxTagDate_Context, *GetKaxGlobal_Context, &KaxTagMultiDateType::ClassInfos); -const EbmlSemanticContext KaxTagMultiDateDateBegin_Context = EbmlSemanticContext(0, NULL, &KaxTagDate_Context, *GetKaxGlobal_Context, &KaxTagMultiDateDateBegin::ClassInfos); -const EbmlSemanticContext KaxTagMultiDateDateEnd_Context = EbmlSemanticContext(0, NULL, &KaxTagDate_Context, *GetKaxGlobal_Context, &KaxTagMultiDateDateEnd::ClassInfos); - -const EbmlSemanticContext KaxTagMultiEntity_Context = EbmlSemanticContext(countof(KaxTagMultiEntity_ContextList), KaxTagMultiEntity_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiEntity::ClassInfos); -const EbmlSemanticContext KaxTagEntity_Context = EbmlSemanticContext(countof(KaxTagEntity_ContextList), KaxTagEntity_ContextList, &KaxTagMultiEntity_Context, *GetKaxTagsGlobal_Context, &KaxTagEntity::ClassInfos); -const EbmlSemanticContext KaxTagMultiEntityType_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &KaxTagMultiEntityType::ClassInfos); -const EbmlSemanticContext KaxTagMultiEntityName_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &KaxTagMultiEntityName::ClassInfos); -const EbmlSemanticContext KaxTagMultiEntityURL_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &KaxTagMultiEntityURL::ClassInfos); -const EbmlSemanticContext KaxTagMultiEntityEmail_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &KaxTagMultiEntityEmail::ClassInfos); -const EbmlSemanticContext KaxTagMultiEntityAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &KaxTagMultiEntityAddress::ClassInfos); - -const EbmlSemanticContext KaxTagMultiIdentifier_Context = EbmlSemanticContext(countof(KaxTagMultiIdentifier_ContextList), KaxTagMultiIdentifier_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiIdentifier::ClassInfos); -const EbmlSemanticContext KaxTagIdentifier_Context = EbmlSemanticContext(countof(KaxTagIdentifier_ContextList), KaxTagIdentifier_ContextList, &KaxTagMultiIdentifier_Context, *GetKaxTagsGlobal_Context, &KaxTagIdentifier::ClassInfos); -const EbmlSemanticContext KaxTagMultiIdentifierType_Context = EbmlSemanticContext(0, NULL, &KaxTagIdentifier_Context, *GetKaxGlobal_Context, &KaxTagMultiIdentifierType::ClassInfos); -const EbmlSemanticContext KaxTagMultiIdentifierBinary_Context = EbmlSemanticContext(0, NULL, &KaxTagIdentifier_Context, *GetKaxGlobal_Context, &KaxTagMultiIdentifierBinary::ClassInfos); -const EbmlSemanticContext KaxTagMultiIdentifierString_Context = EbmlSemanticContext(0, NULL, &KaxTagIdentifier_Context, *GetKaxGlobal_Context, &KaxTagMultiIdentifierString::ClassInfos); - -const EbmlSemanticContext KaxTagMultiLegal_Context = EbmlSemanticContext(countof(KaxTagMultiLegal_ContextList), KaxTagMultiLegal_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiLegal::ClassInfos); -const EbmlSemanticContext KaxTagLegal_Context = EbmlSemanticContext(countof(KaxTagLegal_ContextList), KaxTagLegal_ContextList, &KaxTagMultiLegal_Context, *GetKaxTagsGlobal_Context, &KaxTagLegal::ClassInfos); -const EbmlSemanticContext KaxTagMultiLegalType_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &KaxTagMultiLegalType::ClassInfos); -const EbmlSemanticContext KaxTagMultiLegalContent_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &KaxTagMultiLegalContent::ClassInfos); -const EbmlSemanticContext KaxTagMultiLegalURL_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &KaxTagMultiLegalURL::ClassInfos); -const EbmlSemanticContext KaxTagMultiLegalAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &KaxTagMultiLegalAddress::ClassInfos); - -const EbmlSemanticContext KaxTagMultiTitle_Context = EbmlSemanticContext(countof(KaxTagMultiTitle_ContextList), KaxTagMultiTitle_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiTitle::ClassInfos); -const EbmlSemanticContext KaxTagTitle_Context = EbmlSemanticContext(countof(KaxTagTitle_ContextList), KaxTagTitle_ContextList, &KaxTagMultiTitle_Context, *GetKaxTagsGlobal_Context, &KaxTagTitle::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleType_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleType::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleName_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleName::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleSubTitle_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleSubTitle::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleEdition_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleEdition::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleAddress::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleURL_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleURL::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleEmail_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleEmail::ClassInfos); -const EbmlSemanticContext KaxTagMultiTitleLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &KaxTagMultiTitleLanguage::ClassInfos); - -const EbmlSemanticContext KaxTagMultiAttachment_Context = EbmlSemanticContext(countof(KaxTagMultiAttachment_ContextList), KaxTagMultiAttachment_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &KaxTagMultiAttachment::ClassInfos); -const EbmlSemanticContext KaxTagAttachment_Context = EbmlSemanticContext(countof(KaxTagAttachment_ContextList), KaxTagAttachment_ContextList, &KaxTagMultiAttachment_Context, *GetKaxTagsGlobal_Context, &KaxTagAttachment::ClassInfos); -const EbmlSemanticContext KaxTagAttachmentID_Context = EbmlSemanticContext(0, NULL, &KaxTagAttachment_Context, *GetKaxGlobal_Context, &KaxTagAttachmentID::ClassInfos); +const EbmlSemanticContext KaxTagMultiComment_Context = EbmlSemanticContext(countof(KaxTagMultiComment_ContextList), KaxTagMultiComment_ContextList, &KaxTag_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiComment)); +const EbmlSemanticContext KaxTagMultiCommentName_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiComment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiCommentName)); +const EbmlSemanticContext KaxTagMultiCommentComments_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiComment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiCommentComments)); +const EbmlSemanticContext KaxTagMultiCommentLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiComment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiCommentLanguage)); + +const EbmlSemanticContext KaxTagMultiCommercial_Context = EbmlSemanticContext(countof(KaxTagMultiCommercial_ContextList), KaxTagMultiCommercial_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiCommercial)); +const EbmlSemanticContext KaxTagCommercial_Context = EbmlSemanticContext(countof(KaxTagCommercial_ContextList), KaxTagCommercial_ContextList, &KaxTagMultiCommercial_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagCommercial)); +const EbmlSemanticContext KaxTagMultiCommercialType_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiCommercialType)); +const EbmlSemanticContext KaxTagMultiCommercialAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiCommercialAddress)); +const EbmlSemanticContext KaxTagMultiCommercialURL_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiCommercialURL)); +const EbmlSemanticContext KaxTagMultiCommercialEmail_Context = EbmlSemanticContext(0, NULL, &KaxTagCommercial_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiCommercialEmail)); + +const EbmlSemanticContext KaxTagMultiPrice_Context = EbmlSemanticContext(countof(KaxTagMultiPrice_ContextList), KaxTagMultiPrice_ContextList, &KaxTagCommercial_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiPrice)); +const EbmlSemanticContext KaxTagMultiPriceCurrency_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiPrice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiPriceCurrency)); +const EbmlSemanticContext KaxTagMultiPriceAmount_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiPrice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiPriceAmount)); +const EbmlSemanticContext KaxTagMultiPricePriceDate_Context = EbmlSemanticContext(0, NULL, &KaxTagMultiPrice_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiPricePriceDate)); + +const EbmlSemanticContext KaxTagMultiDate_Context = EbmlSemanticContext(countof(KaxTagMultiDate_ContextList), KaxTagMultiDate_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiDate)); +const EbmlSemanticContext KaxTagDate_Context = EbmlSemanticContext(countof(KaxTagDate_ContextList), KaxTagDate_ContextList, &KaxTagMultiDate_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagDate)); +const EbmlSemanticContext KaxTagMultiDateType_Context = EbmlSemanticContext(0, NULL, &KaxTagDate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiDateType)); +const EbmlSemanticContext KaxTagMultiDateDateBegin_Context = EbmlSemanticContext(0, NULL, &KaxTagDate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiDateDateBegin)); +const EbmlSemanticContext KaxTagMultiDateDateEnd_Context = EbmlSemanticContext(0, NULL, &KaxTagDate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiDateDateEnd)); + +const EbmlSemanticContext KaxTagMultiEntity_Context = EbmlSemanticContext(countof(KaxTagMultiEntity_ContextList), KaxTagMultiEntity_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiEntity)); +const EbmlSemanticContext KaxTagEntity_Context = EbmlSemanticContext(countof(KaxTagEntity_ContextList), KaxTagEntity_ContextList, &KaxTagMultiEntity_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagEntity)); +const EbmlSemanticContext KaxTagMultiEntityType_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiEntityType)); +const EbmlSemanticContext KaxTagMultiEntityName_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiEntityName)); +const EbmlSemanticContext KaxTagMultiEntityURL_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiEntityURL)); +const EbmlSemanticContext KaxTagMultiEntityEmail_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiEntityEmail)); +const EbmlSemanticContext KaxTagMultiEntityAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagEntity_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiEntityAddress)); + +const EbmlSemanticContext KaxTagMultiIdentifier_Context = EbmlSemanticContext(countof(KaxTagMultiIdentifier_ContextList), KaxTagMultiIdentifier_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiIdentifier)); +const EbmlSemanticContext KaxTagIdentifier_Context = EbmlSemanticContext(countof(KaxTagIdentifier_ContextList), KaxTagIdentifier_ContextList, &KaxTagMultiIdentifier_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagIdentifier)); +const EbmlSemanticContext KaxTagMultiIdentifierType_Context = EbmlSemanticContext(0, NULL, &KaxTagIdentifier_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiIdentifierType)); +const EbmlSemanticContext KaxTagMultiIdentifierBinary_Context = EbmlSemanticContext(0, NULL, &KaxTagIdentifier_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiIdentifierBinary)); +const EbmlSemanticContext KaxTagMultiIdentifierString_Context = EbmlSemanticContext(0, NULL, &KaxTagIdentifier_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiIdentifierString)); + +const EbmlSemanticContext KaxTagMultiLegal_Context = EbmlSemanticContext(countof(KaxTagMultiLegal_ContextList), KaxTagMultiLegal_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiLegal)); +const EbmlSemanticContext KaxTagLegal_Context = EbmlSemanticContext(countof(KaxTagLegal_ContextList), KaxTagLegal_ContextList, &KaxTagMultiLegal_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagLegal)); +const EbmlSemanticContext KaxTagMultiLegalType_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiLegalType)); +const EbmlSemanticContext KaxTagMultiLegalContent_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiLegalContent)); +const EbmlSemanticContext KaxTagMultiLegalURL_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiLegalURL)); +const EbmlSemanticContext KaxTagMultiLegalAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagLegal_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiLegalAddress)); + +const EbmlSemanticContext KaxTagMultiTitle_Context = EbmlSemanticContext(countof(KaxTagMultiTitle_ContextList), KaxTagMultiTitle_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiTitle)); +const EbmlSemanticContext KaxTagTitle_Context = EbmlSemanticContext(countof(KaxTagTitle_ContextList), KaxTagTitle_ContextList, &KaxTagMultiTitle_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagTitle)); +const EbmlSemanticContext KaxTagMultiTitleType_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleType)); +const EbmlSemanticContext KaxTagMultiTitleName_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleName)); +const EbmlSemanticContext KaxTagMultiTitleSubTitle_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleSubTitle)); +const EbmlSemanticContext KaxTagMultiTitleEdition_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleEdition)); +const EbmlSemanticContext KaxTagMultiTitleAddress_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleAddress)); +const EbmlSemanticContext KaxTagMultiTitleURL_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleURL)); +const EbmlSemanticContext KaxTagMultiTitleEmail_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleEmail)); +const EbmlSemanticContext KaxTagMultiTitleLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTagTitle_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagMultiTitleLanguage)); + +const EbmlSemanticContext KaxTagMultiAttachment_Context = EbmlSemanticContext(countof(KaxTagMultiAttachment_ContextList), KaxTagMultiAttachment_ContextList, &KaxTag_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagMultiAttachment)); +const EbmlSemanticContext KaxTagAttachment_Context = EbmlSemanticContext(countof(KaxTagAttachment_ContextList), KaxTagAttachment_ContextList, &KaxTagMultiAttachment_Context, *GetKaxTagsGlobal_Context, &EBML_INFO(KaxTagAttachment)); +const EbmlSemanticContext KaxTagAttachmentID_Context = EbmlSemanticContext(0, NULL, &KaxTagAttachment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTagAttachmentID)); //The Muti Elements EbmlId KaxTagMultiComment_TheId (0x5B7B, 2); diff --git a/src/KaxTags.cpp b/src/KaxTags.cpp index 4b9b712..272f63d 100644 --- a/src/KaxTags.cpp +++ b/src/KaxTags.cpp @@ -44,10 +44,10 @@ START_LIBMATROSKA_NAMESPACE EbmlSemantic KaxTags_ContextList[1] = { - EbmlSemantic(true, false, KaxTag::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTag)), }; -const EbmlSemanticContext KaxTags_Context = EbmlSemanticContext(countof(KaxTags_ContextList), KaxTags_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxTags::ClassInfos); +const EbmlSemanticContext KaxTags_Context = EbmlSemanticContext(countof(KaxTags_ContextList), KaxTags_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTags)); EbmlId KaxTags_TheId(0x1254C367, 4); diff --git a/src/KaxTrackAudio.cpp b/src/KaxTrackAudio.cpp index 7fc934d..5671c35 100644 --- a/src/KaxTrackAudio.cpp +++ b/src/KaxTrackAudio.cpp @@ -45,22 +45,22 @@ const EbmlSemantic KaxTrackAudio_ContextList[4] = const EbmlSemantic KaxTrackAudio_ContextList[5] = #endif // MATROSKA_VERSION { - EbmlSemantic(true , true, KaxAudioSamplingFreq::ClassInfos), - EbmlSemantic(true , true, KaxAudioChannels::ClassInfos), - EbmlSemantic(false, true, KaxAudioBitDepth::ClassInfos), - EbmlSemantic(false, true, KaxAudioOutputSamplingFreq::ClassInfos), + EbmlSemantic(true , true, EBML_INFO(KaxAudioSamplingFreq)), + EbmlSemantic(true , true, EBML_INFO(KaxAudioChannels)), + EbmlSemantic(false, true, EBML_INFO(KaxAudioBitDepth)), + EbmlSemantic(false, true, EBML_INFO(KaxAudioOutputSamplingFreq)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(false, true, KaxAudioPosition::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxAudioPosition)), #endif // MATROSKA_VERSION }; -const EbmlSemanticContext KaxTrackAudio_Context = EbmlSemanticContext(countof(KaxTrackAudio_ContextList), KaxTrackAudio_ContextList, &KaxTrackEntry_Context, *GetKaxGlobal_Context, &KaxTrackAudio::ClassInfos); -const EbmlSemanticContext KaxAudioSamplingFreq_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &KaxAudioSamplingFreq::ClassInfos); -const EbmlSemanticContext KaxAudioOutputSamplingFreq_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &KaxAudioOutputSamplingFreq::ClassInfos); -const EbmlSemanticContext KaxAudioChannels_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &KaxAudioChannels::ClassInfos); -const EbmlSemanticContext KaxAudioBitDepth_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &KaxAudioBitDepth::ClassInfos); +const EbmlSemanticContext KaxTrackAudio_Context = EbmlSemanticContext(countof(KaxTrackAudio_ContextList), KaxTrackAudio_ContextList, &KaxTrackEntry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackAudio)); +const EbmlSemanticContext KaxAudioSamplingFreq_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxAudioSamplingFreq)); +const EbmlSemanticContext KaxAudioOutputSamplingFreq_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxAudioOutputSamplingFreq)); +const EbmlSemanticContext KaxAudioChannels_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxAudioChannels)); +const EbmlSemanticContext KaxAudioBitDepth_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxAudioBitDepth)); #if MATROSKA_VERSION >= 2 -const EbmlSemanticContext KaxAudioPosition_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &KaxAudioPosition::ClassInfos); +const EbmlSemanticContext KaxAudioPosition_Context = EbmlSemanticContext(0, NULL, &KaxTrackAudio_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxAudioPosition)); #endif // MATROSKA_VERSION EbmlId KaxTrackAudio_TheId (0xE1, 1); diff --git a/src/KaxTrackEntryData.cpp b/src/KaxTrackEntryData.cpp index a26cfd9..7f8fce9 100644 --- a/src/KaxTrackEntryData.cpp +++ b/src/KaxTrackEntryData.cpp @@ -40,9 +40,9 @@ START_LIBMATROSKA_NAMESPACE const EbmlSemantic KaxTrackTranslate_ContextList[3] = { - EbmlSemantic(false, false,KaxTrackTranslateEditionUID::ClassInfos), - EbmlSemantic(true , true, KaxTrackTranslateCodec::ClassInfos), - EbmlSemantic(true , true, KaxTrackTranslateTrackID::ClassInfos), + EbmlSemantic(false, false,EBML_INFO(KaxTrackTranslateEditionUID)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackTranslateCodec)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackTranslateTrackID)), }; EbmlId KaxTrackNumber_TheId (0xD7, 1); @@ -75,34 +75,34 @@ EbmlId KaxCodecDownloadURL_TheId (0x26B240, 3); EbmlId KaxCodecDecodeAll_TheId (0xAA, 1); #endif // MATROSKA_VERSION -const EbmlSemanticContext KaxTrackNumber_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackNumber::ClassInfos); -const EbmlSemanticContext KaxTrackUID_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackUID::ClassInfos); -const EbmlSemanticContext KaxTrackType_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackType::ClassInfos); -const EbmlSemanticContext KaxTrackFlagDefault_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackFlagDefault::ClassInfos); -const EbmlSemanticContext KaxTrackFlagForced_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackFlagForced::ClassInfos); -const EbmlSemanticContext KaxTrackFlagLacing_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackFlagLacing::ClassInfos); -const EbmlSemanticContext KaxTrackMinCache_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackMinCache::ClassInfos); -const EbmlSemanticContext KaxTrackMaxCache_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackMaxCache::ClassInfos); -const EbmlSemanticContext KaxTrackDefaultDuration_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackDefaultDuration::ClassInfos); -const EbmlSemanticContext KaxTrackTimecodeScale_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackTimecodeScale::ClassInfos); -const EbmlSemanticContext KaxMaxBlockAdditionID_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxMaxBlockAdditionID::ClassInfos); -const EbmlSemanticContext KaxTrackName_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackName::ClassInfos); -const EbmlSemanticContext KaxTrackLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackLanguage::ClassInfos); -const EbmlSemanticContext KaxCodecID_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxCodecID::ClassInfos); -const EbmlSemanticContext KaxCodecPrivate_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxCodecPrivate::ClassInfos); -const EbmlSemanticContext KaxCodecName_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxCodecName::ClassInfos); -const EbmlSemanticContext KaxTrackAttachmentLink_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackAttachmentLink::ClassInfos); -const EbmlSemanticContext KaxTrackOverlay_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackOverlay::ClassInfos); -const EbmlSemanticContext KaxTrackTranslate_Context = EbmlSemanticContext(countof(KaxTrackTranslate_ContextList), KaxTrackTranslate_ContextList, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackTranslate::ClassInfos); -const EbmlSemanticContext KaxTrackTranslateEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxTrackTranslate_Context, *GetKaxGlobal_Context, &KaxTrackTranslateEditionUID::ClassInfos); -const EbmlSemanticContext KaxTrackTranslateCodec_Context = EbmlSemanticContext(0, NULL, &KaxTrackTranslate_Context, *GetKaxGlobal_Context, &KaxTrackTranslateCodec::ClassInfos); -const EbmlSemanticContext KaxTrackTranslateTrackID_Context = EbmlSemanticContext(0, NULL, &KaxTrackTranslate_Context, *GetKaxGlobal_Context, &KaxTrackTranslateTrackID::ClassInfos); +const EbmlSemanticContext KaxTrackNumber_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackNumber)); +const EbmlSemanticContext KaxTrackUID_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackUID)); +const EbmlSemanticContext KaxTrackType_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackType)); +const EbmlSemanticContext KaxTrackFlagDefault_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackFlagDefault)); +const EbmlSemanticContext KaxTrackFlagForced_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackFlagForced)); +const EbmlSemanticContext KaxTrackFlagLacing_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackFlagLacing)); +const EbmlSemanticContext KaxTrackMinCache_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackMinCache)); +const EbmlSemanticContext KaxTrackMaxCache_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackMaxCache)); +const EbmlSemanticContext KaxTrackDefaultDuration_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackDefaultDuration)); +const EbmlSemanticContext KaxTrackTimecodeScale_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackTimecodeScale)); +const EbmlSemanticContext KaxMaxBlockAdditionID_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxMaxBlockAdditionID)); +const EbmlSemanticContext KaxTrackName_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackName)); +const EbmlSemanticContext KaxTrackLanguage_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackLanguage)); +const EbmlSemanticContext KaxCodecID_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecID)); +const EbmlSemanticContext KaxCodecPrivate_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecPrivate)); +const EbmlSemanticContext KaxCodecName_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecName)); +const EbmlSemanticContext KaxTrackAttachmentLink_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackAttachmentLink)); +const EbmlSemanticContext KaxTrackOverlay_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackOverlay)); +const EbmlSemanticContext KaxTrackTranslate_Context = EbmlSemanticContext(countof(KaxTrackTranslate_ContextList), KaxTrackTranslate_ContextList, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackTranslate)); +const EbmlSemanticContext KaxTrackTranslateEditionUID_Context = EbmlSemanticContext(0, NULL, &KaxTrackTranslate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackTranslateEditionUID)); +const EbmlSemanticContext KaxTrackTranslateCodec_Context = EbmlSemanticContext(0, NULL, &KaxTrackTranslate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackTranslateCodec)); +const EbmlSemanticContext KaxTrackTranslateTrackID_Context = EbmlSemanticContext(0, NULL, &KaxTrackTranslate_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackTranslateTrackID)); #if MATROSKA_VERSION >= 2 -const EbmlSemanticContext KaxTrackFlagEnabled_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackFlagEnabled::ClassInfos); -const EbmlSemanticContext KaxCodecSettings_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxCodecSettings::ClassInfos); -const EbmlSemanticContext KaxCodecInfoURL_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxCodecInfoURL::ClassInfos); -const EbmlSemanticContext KaxCodecDownloadURL_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxCodecDownloadURL::ClassInfos); -const EbmlSemanticContext KaxCodecDecodeAll_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxCodecDecodeAll::ClassInfos); +const EbmlSemanticContext KaxTrackFlagEnabled_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackFlagEnabled)); +const EbmlSemanticContext KaxCodecSettings_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecSettings)); +const EbmlSemanticContext KaxCodecInfoURL_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecInfoURL)); +const EbmlSemanticContext KaxCodecDownloadURL_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecDownloadURL)); +const EbmlSemanticContext KaxCodecDecodeAll_Context = EbmlSemanticContext(0, NULL, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxCodecDecodeAll)); #endif // MATROSKA_VERSION const EbmlCallbacks KaxTrackNumber::ClassInfos(KaxTrackNumber::Create, KaxTrackNumber_TheId, "TrackNumber", KaxTrackNumber_Context); diff --git a/src/KaxTrackVideo.cpp b/src/KaxTrackVideo.cpp index 64726d8..c1fdd8f 100644 --- a/src/KaxTrackVideo.cpp +++ b/src/KaxTrackVideo.cpp @@ -45,42 +45,42 @@ const EbmlSemantic KaxTrackVideo_ContextList[10] = const EbmlSemantic KaxTrackVideo_ContextList[15] = #endif // MATROSKA_VERSION { - EbmlSemantic(true , true, KaxVideoPixelWidth::ClassInfos), - EbmlSemantic(true , true, KaxVideoPixelHeight::ClassInfos), - EbmlSemantic(false, true, KaxVideoPixelCropBottom::ClassInfos), - EbmlSemantic(false, true, KaxVideoPixelCropTop::ClassInfos), - EbmlSemantic(false, true, KaxVideoPixelCropLeft::ClassInfos), - EbmlSemantic(false, true, KaxVideoPixelCropRight::ClassInfos), - EbmlSemantic(false, true, KaxVideoDisplayWidth::ClassInfos), - EbmlSemantic(false, true, KaxVideoDisplayHeight::ClassInfos), - EbmlSemantic(false, true, KaxVideoColourSpace::ClassInfos), - EbmlSemantic(false, true, KaxVideoFrameRate::ClassInfos), + EbmlSemantic(true , true, EBML_INFO(KaxVideoPixelWidth)), + EbmlSemantic(true , true, EBML_INFO(KaxVideoPixelHeight)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoPixelCropBottom)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoPixelCropTop)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoPixelCropLeft)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoPixelCropRight)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoDisplayWidth)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoDisplayHeight)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoColourSpace)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoFrameRate)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(true , true, KaxVideoFlagInterlaced::ClassInfos), - EbmlSemantic(false, true, KaxVideoStereoMode::ClassInfos), - EbmlSemantic(false, true, KaxVideoDisplayUnit::ClassInfos), - EbmlSemantic(false, true, KaxVideoAspectRatio::ClassInfos), - EbmlSemantic(false, true, KaxVideoGamma::ClassInfos), + EbmlSemantic(true , true, EBML_INFO(KaxVideoFlagInterlaced)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoStereoMode)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoDisplayUnit)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoAspectRatio)), + EbmlSemantic(false, true, EBML_INFO(KaxVideoGamma)), #endif // MATROSKA_VERSION }; -const EbmlSemanticContext KaxTrackVideo_Context = EbmlSemanticContext(countof(KaxTrackVideo_ContextList), KaxTrackVideo_ContextList, &KaxTrackEntry_Context, *GetKaxGlobal_Context, &KaxTrackVideo::ClassInfos); -const EbmlSemanticContext KaxVideoPixelWidth_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoPixelWidth::ClassInfos); -const EbmlSemanticContext KaxVideoPixelHeight_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoPixelHeight::ClassInfos); -const EbmlSemanticContext KaxVideoPixelCropBottom_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoPixelCropBottom::ClassInfos); -const EbmlSemanticContext KaxVideoPixelCropTop_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoPixelCropTop::ClassInfos); -const EbmlSemanticContext KaxVideoPixelCropRight_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoPixelCropLeft::ClassInfos); -const EbmlSemanticContext KaxVideoPixelCropLeft_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoPixelCropRight::ClassInfos); -const EbmlSemanticContext KaxVideoDisplayWidth_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoDisplayWidth::ClassInfos); -const EbmlSemanticContext KaxVideoDisplayHeight_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoDisplayHeight::ClassInfos); -const EbmlSemanticContext KaxVideoColourSpace_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoColourSpace::ClassInfos); -const EbmlSemanticContext KaxVideoFrameRate_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoFrameRate::ClassInfos); +const EbmlSemanticContext KaxTrackVideo_Context = EbmlSemanticContext(countof(KaxTrackVideo_ContextList), KaxTrackVideo_ContextList, &KaxTrackEntry_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackVideo)); +const EbmlSemanticContext KaxVideoPixelWidth_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoPixelWidth)); +const EbmlSemanticContext KaxVideoPixelHeight_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoPixelHeight)); +const EbmlSemanticContext KaxVideoPixelCropBottom_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoPixelCropBottom)); +const EbmlSemanticContext KaxVideoPixelCropTop_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoPixelCropTop)); +const EbmlSemanticContext KaxVideoPixelCropRight_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoPixelCropLeft)); +const EbmlSemanticContext KaxVideoPixelCropLeft_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoPixelCropRight)); +const EbmlSemanticContext KaxVideoDisplayWidth_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoDisplayWidth)); +const EbmlSemanticContext KaxVideoDisplayHeight_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoDisplayHeight)); +const EbmlSemanticContext KaxVideoColourSpace_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoColourSpace)); +const EbmlSemanticContext KaxVideoFrameRate_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoFrameRate)); #if MATROSKA_VERSION >= 2 -const EbmlSemanticContext KaxVideoFlagInterlaced_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoFlagInterlaced::ClassInfos); -const EbmlSemanticContext KaxVideoStereoMode_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoStereoMode::ClassInfos); -const EbmlSemanticContext KaxVideoDisplayUnit_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoDisplayUnit::ClassInfos); -const EbmlSemanticContext KaxVideoAspectRatio_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoAspectRatio::ClassInfos); -const EbmlSemanticContext KaxVideoGamma_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &KaxVideoGamma::ClassInfos); +const EbmlSemanticContext KaxVideoFlagInterlaced_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoFlagInterlaced)); +const EbmlSemanticContext KaxVideoStereoMode_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoStereoMode)); +const EbmlSemanticContext KaxVideoDisplayUnit_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoDisplayUnit)); +const EbmlSemanticContext KaxVideoAspectRatio_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoAspectRatio)); +const EbmlSemanticContext KaxVideoGamma_Context = EbmlSemanticContext(0, NULL, &KaxTrackVideo_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxVideoGamma)); #endif // MATROSKA_VERSION EbmlId KaxTrackVideo_TheId (0xE0, 1); diff --git a/src/KaxTracks.cpp b/src/KaxTracks.cpp index 4fc79fa..7813379 100644 --- a/src/KaxTracks.cpp +++ b/src/KaxTracks.cpp @@ -45,7 +45,7 @@ START_LIBMATROSKA_NAMESPACE const EbmlSemantic KaxTracks_ContextList[1] = { - EbmlSemantic(true, false, KaxTrackEntry::ClassInfos), + EbmlSemantic(true, false, EBML_INFO(KaxTrackEntry)), }; #if MATROSKA_VERSION == 1 @@ -54,41 +54,41 @@ const EbmlSemantic KaxTrackEntry_ContextList[22] = const EbmlSemantic KaxTrackEntry_ContextList[27] = #endif // MATROSKA_VERSION { - EbmlSemantic(true , true, KaxTrackNumber::ClassInfos), - EbmlSemantic(true , true, KaxTrackUID::ClassInfos), - EbmlSemantic(true , true, KaxTrackType::ClassInfos), + EbmlSemantic(true , true, EBML_INFO(KaxTrackNumber)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackUID)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackType)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(true , true, KaxTrackFlagEnabled::ClassInfos), + EbmlSemantic(true , true, EBML_INFO(KaxTrackFlagEnabled)), #endif // MATROSKA_VERSION - EbmlSemantic(true , true, KaxTrackFlagDefault::ClassInfos), - EbmlSemantic(true , true, KaxTrackFlagForced::ClassInfos), - EbmlSemantic(true , true, KaxTrackFlagLacing::ClassInfos), - EbmlSemantic(true , true, KaxTrackMinCache::ClassInfos), - EbmlSemantic(false, true, KaxTrackMaxCache::ClassInfos), - EbmlSemantic(false, true, KaxTrackDefaultDuration::ClassInfos), - EbmlSemantic(true , true, KaxTrackTimecodeScale::ClassInfos), - EbmlSemantic(true , true, KaxMaxBlockAdditionID::ClassInfos), - EbmlSemantic(false, true, KaxTrackName::ClassInfos), - EbmlSemantic(false, true, KaxTrackLanguage::ClassInfos), - EbmlSemantic(true , true, KaxCodecID::ClassInfos), - EbmlSemantic(false, true, KaxCodecPrivate::ClassInfos), - EbmlSemantic(false, true, KaxCodecName::ClassInfos), - EbmlSemantic(false, true, KaxTrackAttachmentLink::ClassInfos), + EbmlSemantic(true , true, EBML_INFO(KaxTrackFlagDefault)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackFlagForced)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackFlagLacing)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackMinCache)), + EbmlSemantic(false, true, EBML_INFO(KaxTrackMaxCache)), + EbmlSemantic(false, true, EBML_INFO(KaxTrackDefaultDuration)), + EbmlSemantic(true , true, EBML_INFO(KaxTrackTimecodeScale)), + EbmlSemantic(true , true, EBML_INFO(KaxMaxBlockAdditionID)), + EbmlSemantic(false, true, EBML_INFO(KaxTrackName)), + EbmlSemantic(false, true, EBML_INFO(KaxTrackLanguage)), + EbmlSemantic(true , true, EBML_INFO(KaxCodecID)), + EbmlSemantic(false, true, EBML_INFO(KaxCodecPrivate)), + EbmlSemantic(false, true, EBML_INFO(KaxCodecName)), + EbmlSemantic(false, true, EBML_INFO(KaxTrackAttachmentLink)), #if MATROSKA_VERSION >= 2 - EbmlSemantic(false, true, KaxCodecSettings::ClassInfos), - EbmlSemantic(false, false,KaxCodecInfoURL::ClassInfos), - EbmlSemantic(false, false,KaxCodecDownloadURL::ClassInfos), - EbmlSemantic(true , true, KaxCodecDecodeAll::ClassInfos), + EbmlSemantic(false, true, EBML_INFO(KaxCodecSettings)), + EbmlSemantic(false, false,EBML_INFO(KaxCodecInfoURL)), + EbmlSemantic(false, false,EBML_INFO(KaxCodecDownloadURL)), + EbmlSemantic(true , true, EBML_INFO(KaxCodecDecodeAll)), #endif // MATROSKA_VERSION - EbmlSemantic(false, false,KaxTrackOverlay::ClassInfos), - EbmlSemantic(false, false,KaxTrackTranslate::ClassInfos), - EbmlSemantic(false, true, KaxTrackAudio::ClassInfos), - EbmlSemantic(false, true, KaxTrackVideo::ClassInfos), - EbmlSemantic(false, true, KaxContentEncodings::ClassInfos), + EbmlSemantic(false, false,EBML_INFO(KaxTrackOverlay)), + EbmlSemantic(false, false,EBML_INFO(KaxTrackTranslate)), + EbmlSemantic(false, true, EBML_INFO(KaxTrackAudio)), + EbmlSemantic(false, true, EBML_INFO(KaxTrackVideo)), + EbmlSemantic(false, true, EBML_INFO(KaxContentEncodings)), }; -const EbmlSemanticContext KaxTracks_Context = EbmlSemanticContext(countof(KaxTracks_ContextList), KaxTracks_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &KaxTracks::ClassInfos); -const EbmlSemanticContext KaxTrackEntry_Context = EbmlSemanticContext(countof(KaxTrackEntry_ContextList), KaxTrackEntry_ContextList, &KaxTracks_Context, *GetKaxGlobal_Context, &KaxTrackEntry::ClassInfos); +const EbmlSemanticContext KaxTracks_Context = EbmlSemanticContext(countof(KaxTracks_ContextList), KaxTracks_ContextList, &KaxSegment_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTracks)); +const EbmlSemanticContext KaxTrackEntry_Context = EbmlSemanticContext(countof(KaxTrackEntry_ContextList), KaxTrackEntry_ContextList, &KaxTracks_Context, *GetKaxGlobal_Context, &EBML_INFO(KaxTrackEntry)); EbmlId KaxTracks_TheId (0x1654AE6B, 4); EbmlId KaxTrackEntry_TheId(0xAE, 1);