[matroska] r983 - in trunk/libmatroska: matroska src

[email protected]
Newsgroups gmane.comp.multimedia.matroska.cvs
Message-ID <[email protected]>
Author: robux4
Date: 2004-12-18 20:52:09 +0300 (Sat, 18 Dec 2004)
New Revision: 983

Modified:
   trunk/libmatroska/matroska/KaxBlock.h
   trunk/libmatroska/matroska/KaxTrackEntryData.h
   trunk/libmatroska/src/KaxBlock.cpp
   trunk/libmatroska/src/KaxTrackEntryData.cpp
   trunk/libmatroska/src/KaxTracks.cpp
Log:
support for KaxMaxBlockAdditionID and fix default values

Modified: trunk/libmatroska/matroska/KaxBlock.h
===================================================================
--- trunk/libmatroska/matroska/KaxBlock.h	2004-12-18 08:49:52 UTC (rev 982)
+++ trunk/libmatroska/matroska/KaxBlock.h	2004-12-18 17:52:09 UTC (rev 983)
@@ -341,7 +341,7 @@
 
 class MATROSKA_DLL_API KaxBlockAddID : public EbmlUInteger {
 	public:
-		KaxBlockAddID() :EbmlUInteger(0) {}
+		KaxBlockAddID() :EbmlUInteger(1) {}
 		KaxBlockAddID(const KaxBlockAddID & ElementToClone) :EbmlUInteger(ElementToClone) {}
 		static EbmlElement & Create() {return *(new KaxBlockAddID);}
 		const EbmlCallbacks & Generic() const {return ClassInfos;}

Modified: trunk/libmatroska/matroska/KaxTrackEntryData.h
===================================================================
--- trunk/libmatroska/matroska/KaxTrackEntryData.h	2004-12-18 08:49:52 UTC (rev 982)
+++ trunk/libmatroska/matroska/KaxTrackEntryData.h	2004-12-18 17:52:09 UTC (rev 983)
@@ -170,6 +170,17 @@
 		EbmlElement * Clone() const {return new KaxTrackTimecodeScale(*this);}
 };
 
+class MATROSKA_DLL_API KaxMaxBlockAdditionID : public EbmlUInteger {
+	public:
+		KaxMaxBlockAdditionID() :EbmlUInteger(1) {}
+		KaxMaxBlockAdditionID(const KaxMaxBlockAdditionID & ElementToClone) :EbmlUInteger(ElementToClone) {}
+		static EbmlElement & Create() {return *(new KaxMaxBlockAdditionID);}
+		const EbmlCallbacks & Generic() const {return ClassInfos;}
+		static const EbmlCallbacks ClassInfos;
+		operator const EbmlId &() const {return ClassInfos.GlobalId;}
+		EbmlElement * Clone() const {return new KaxMaxBlockAdditionID(*this);}
+};
+
 class MATROSKA_DLL_API KaxTrackName : public EbmlUnicodeString {
 	public:
 		KaxTrackName() {}

Modified: trunk/libmatroska/src/KaxBlock.cpp
===================================================================
--- trunk/libmatroska/src/KaxBlock.cpp	2004-12-18 08:49:52 UTC (rev 982)
+++ trunk/libmatroska/src/KaxBlock.cpp	2004-12-18 17:52:09 UTC (rev 983)
@@ -43,7 +43,7 @@
 START_LIBMATROSKA_NAMESPACE
 
 #if MATROSKA_VERSION == 1
-const EbmlSemantic KaxBlockGroup_ContextList[5] =
+const EbmlSemantic KaxBlockGroup_ContextList[6] =
 #else // MATROSKA_VERSION
 const EbmlSemantic KaxBlockGroup_ContextList[8] =
 #endif // MATROSKA_VERSION
@@ -58,11 +58,10 @@
 	EbmlSemantic(false, false, KaxReferenceBlock::ClassInfos),
 #if MATROSKA_VERSION >= 2
 	EbmlSemantic(false, true,  KaxReferenceVirtual::ClassInfos),
-	EbmlSemantic(false, true,  KaxBlockAdditions::ClassInfos),
 #endif // MATROSKA_VERSION
+	EbmlSemantic(false, true,  KaxBlockAdditions::ClassInfos),
 };
 
-#if MATROSKA_VERSION >= 2
 const EbmlSemantic KaxBlockAdditions_ContextList[1] =
 {
 	EbmlSemantic(true,  false,  KaxBlockMore::ClassInfos)
@@ -73,18 +72,17 @@
 	EbmlSemantic(true,  true,  KaxBlockAddID::ClassInfos),
 	EbmlSemantic(true,  true,  KaxBlockAdditional::ClassInfos)
 };
-#endif // MATROSKA_VERSION
 
 EbmlId KaxBlockGroup_TheId     (0xA0, 1);
 EbmlId KaxBlock_TheId          (0xA1, 1);
 EbmlId KaxBlockDuration_TheId  (0x9B, 1);
 #if MATROSKA_VERSION >= 2
 EbmlId KaxBlockVirtual_TheId   (0xA2, 1);
+#endif // MATROSKA_VERSION
 EbmlId KaxBlockAdditions_TheId (0x75A1, 2);
 EbmlId KaxBlockMore_TheId      (0xA6, 1);
 EbmlId KaxBlockAddID_TheId     (0xEE, 1);
 EbmlId KaxBlockAdditional_TheId(0xA5, 1);
-#endif // MATROSKA_VERSION
 
 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);

Modified: trunk/libmatroska/src/KaxTrackEntryData.cpp
===================================================================
--- trunk/libmatroska/src/KaxTrackEntryData.cpp	2004-12-18 08:49:52 UTC (rev 982)
+++ trunk/libmatroska/src/KaxTrackEntryData.cpp	2004-12-18 17:52:09 UTC (rev 983)
@@ -48,6 +48,7 @@
 EbmlId KaxTrackMaxCache_TheId          (0x6DF8, 2);
 EbmlId KaxTrackDefaultDuration_TheId   (0x23E383, 3);
 EbmlId KaxTrackTimecodeScale_TheId     (0x23314F, 3);
+EbmlId KaxMaxBlockAdditionID_TheId     (0x55EE, 2);
 EbmlId KaxTrackName_TheId              (0x536E, 2);
 EbmlId KaxTrackLanguage_TheId          (0x22B59C, 3);
 EbmlId KaxCodecID_TheId                (0x86, 1);
@@ -73,6 +74,7 @@
 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);
@@ -98,6 +100,7 @@
 const EbmlCallbacks KaxTrackMaxCache::ClassInfos(KaxTrackMaxCache::Create, KaxTrackMaxCache_TheId, "TrackMaxCache", KaxTrackMaxCache_Context);
 const EbmlCallbacks KaxTrackDefaultDuration::ClassInfos(KaxTrackDefaultDuration::Create, KaxTrackDefaultDuration_TheId, "TrackDefaultDuration", KaxTrackDefaultDuration_Context);
 const EbmlCallbacks KaxTrackTimecodeScale::ClassInfos(KaxTrackTimecodeScale::Create, KaxTrackTimecodeScale_TheId, "TrackTimecodeScale", KaxTrackTimecodeScale_Context);
+const EbmlCallbacks KaxMaxBlockAdditionID::ClassInfos(KaxMaxBlockAdditionID::Create, KaxMaxBlockAdditionID_TheId, "MaxBlockAdditionID", KaxMaxBlockAdditionID_Context);
 const EbmlCallbacks KaxTrackName::ClassInfos(KaxTrackName::Create, KaxTrackName_TheId, "TrackName", KaxTrackName_Context);
 const EbmlCallbacks KaxTrackLanguage::ClassInfos(KaxTrackLanguage::Create, KaxTrackLanguage_TheId, "TrackLanguage", KaxTrackLanguage_Context);
 const EbmlCallbacks KaxCodecID::ClassInfos(KaxCodecID::Create, KaxCodecID_TheId, "CodecID", KaxCodecID_Context);

Modified: trunk/libmatroska/src/KaxTracks.cpp
===================================================================
--- trunk/libmatroska/src/KaxTracks.cpp	2004-12-18 08:49:52 UTC (rev 982)
+++ trunk/libmatroska/src/KaxTracks.cpp	2004-12-18 17:52:09 UTC (rev 983)
@@ -49,9 +49,9 @@
 };
 
 #if MATROSKA_VERSION == 1
-const EbmlSemantic KaxTrackEntry_ContextList[20] =
+const EbmlSemantic KaxTrackEntry_ContextList[21] =
 #else // MATROSKA_VERSION
-const EbmlSemantic KaxTrackEntry_ContextList[25] =
+const EbmlSemantic KaxTrackEntry_ContextList[26] =
 #endif // MATROSKA_VERSION
 {
 	EbmlSemantic(true , true, KaxTrackNumber::ClassInfos),
@@ -67,6 +67,7 @@
 	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),
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.