]> granicus.if.org Git - libmatroska/commitdiff
libmatroska: remove all references to the old/outdated/previous tag system
authorSteve Lhomme <slhomme@matroska.org>
Sun, 4 Jul 2010 09:32:26 +0000 (09:32 +0000)
committerSteve Lhomme <slhomme@matroska.org>
Sun, 4 Jul 2010 09:32:26 +0000 (09:32 +0000)
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libmatroska@385 a6f86f6d-0131-4f8e-9e7b-e335508773d5

libmatroska.proj
matroska/KaxTag.h
matroska/KaxTagMulti.h [deleted file]
src/KaxTag.cpp
src/KaxTagMulti.cpp [deleted file]
test/mux/test6.cpp
test/mux/test8.cpp

index 22ea8d7f43f554049925873933af9f754d6327f9..09e0219572e2749a8a6542b0f224502a8b1d5a96 100644 (file)
@@ -36,7 +36,6 @@ LIB matroska
   SOURCE src/KaxSeekHead.cpp
   SOURCE src/KaxSegment.cpp
   SOURCE src/KaxTag.cpp
-  SOURCE src/KaxTagMulti.cpp
   SOURCE src/KaxTags.cpp
   SOURCE src/KaxTrackAudio.cpp
   SOURCE src/KaxTrackEntryData.cpp
@@ -63,7 +62,6 @@ LIB matroska
   HEADER matroska/KaxSeekHead.h
   HEADER matroska/KaxSegment.h
   HEADER matroska/KaxTag.h
-  HEADER matroska/KaxTagMulti.h
   HEADER matroska/KaxTags.h
   HEADER matroska/KaxTrackAudio.h
   HEADER matroska/KaxTrackEntryData.h
index 3b95cf74f0ca8dad814592909c61da9d10877c08..92668eda7c6be96efa85a4bb11aa340ebf0994bf 100644 (file)
@@ -56,18 +56,6 @@ DECLARE_MKX_MASTER(KaxTag)
 DECLARE_MKX_MASTER(KaxTagTargets)
 };
 
-DECLARE_MKX_MASTER(KaxTagGeneral)
-};
-
-DECLARE_MKX_MASTER(KaxTagGenres)
-};
-
-DECLARE_MKX_MASTER(KaxTagAudioSpecific)
-};
-
-DECLARE_MKX_MASTER(KaxTagImageSpecific)
-};
-
 DECLARE_MKX_UINTEGER(KaxTagTargetTypeValue)
 };
 
@@ -86,128 +74,9 @@ DECLARE_MKX_UINTEGER(KaxTagChapterUID)
 DECLARE_MKX_UINTEGER(KaxTagAttachmentUID)
 };
 
-DECLARE_MKX_UNISTRING(KaxTagArchivalLocation)
-};
-
-DECLARE_MKX_BINARY(KaxTagAudioEncryption)
-};
-
-DECLARE_MKX_FLOAT(KaxTagAudioGain)
-};
-
-DECLARE_MKX_STRING(KaxTagAudioGenre)
-};
-
-DECLARE_MKX_FLOAT(KaxTagAudioPeak)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagBibliography)
-};
-
-DECLARE_MKX_FLOAT(KaxTagBPM)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagCaptureDPI)
-};
-
-DECLARE_MKX_BINARY(KaxTagCaptureLightness)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagCapturePaletteSetting)
-};
-
-DECLARE_MKX_BINARY(KaxTagCaptureSharpness)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagCropped)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagDiscTrack)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagEncoder)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagEncodeSettings)
-};
-
-DECLARE_MKX_BINARY(KaxTagEqualisation)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagFile)
-};
-
-DECLARE_MKX_STRING(KaxTagInitialKey)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagKeywords)
-};
-
 DECLARE_MKX_STRING(KaxTagLanguage)
 };
 
-DECLARE_MKX_UINTEGER(KaxTagLength)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMood)
-};
-
-DECLARE_MKX_STRING(KaxTagOfficialAudioFileURL)
-};
-
-DECLARE_MKX_STRING(KaxTagOfficialAudioSourceURL)
-};
-
-DECLARE_MKX_STRING(KaxTagOriginalDimensions)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagOriginalMediaType)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagPlayCounter)
-};                      
-
-DECLARE_MKX_UINTEGER(KaxTagPlaylistDelay)
-};
-
-DECLARE_MKX_SINTEGER(KaxTagPopularimeter)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagProduct)
-};
-
-DECLARE_MKX_BINARY(KaxTagRating)
-};
-
-DECLARE_MKX_STRING(KaxTagRecordLocation)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagSetPart)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagSource)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagSourceForm)
-};
-
-DECLARE_MKX_STRING(KaxTagSubGenre)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagSubject)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagUnsynchronisedText)
-};
-
-DECLARE_MKX_STRING(KaxTagUserDefinedURL)
-};
-
-DECLARE_MKX_BINARY(KaxTagVideoGenre)
-       public:
-               virtual bool ValidateSize() const {return IsFiniteSize() && (GetSize() >= 2);}
-};
-
 DECLARE_MKX_MASTER(KaxTagSimple)
 };
 
diff --git a/matroska/KaxTagMulti.h b/matroska/KaxTagMulti.h
deleted file mode 100644 (file)
index facaf70..0000000
+++ /dev/null
@@ -1,304 +0,0 @@
-/****************************************************************************
-** libmatroska : parse Matroska files, see http://www.matroska.org/
-**
-** <file/class MATROSKA_DLL_API description>
-**
-** Copyright (C) 2002-2010 Steve Lhomme.  All rights reserved.
-**
-** This file is part of libmatroska.
-**
-** This library is free software; you can redistribute it and/or
-** modify it under the terms of the GNU Lesser General Public
-** License as published by the Free Software Foundation; either
-** version 2.1 of the License, or (at your option) any later version.
-** 
-** This library is distributed in the hope that it will be useful,
-** but WITHOUT ANY WARRANTY; without even the implied warranty of
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-** Lesser General Public License for more details.
-** 
-** You should have received a copy of the GNU Lesser General Public
-** License along with this library; if not, write to the Free Software
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-**
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.**
-** Contact license@matroska.org if any conditions of this licensing are
-** not clear to you.
-**
-**********************************************************************/
-
-/*!
-       \file
-       \version \$Id$
-       \author Jory Stone     <jcsston @ toughguy.net>
-       \author Steve Lhomme   <robux4 @ users.sf.net>
-*/
-#ifndef LIBMATROSKA_TAGMULTI_H
-#define LIBMATROSKA_TAGMULTI_H
-
-#include "matroska/KaxTypes.h"
-#include "ebml/EbmlMaster.h"
-#include "ebml/EbmlDate.h"
-#include "ebml/EbmlFloat.h"
-#include "ebml/EbmlSInteger.h"
-#include "ebml/EbmlUInteger.h"
-#include "ebml/EbmlString.h"
-#include "ebml/EbmlUnicodeString.h"
-#include "ebml/EbmlBinary.h"
-#include "matroska/KaxDefines.h"
-
-using namespace LIBEBML_NAMESPACE;
-
-START_LIBMATROSKA_NAMESPACE
-
-enum KaxTagMultiCommercialTypes {
-       KaxTagMultiCommercialType_FilePurchase = 1, //Information on where to purchase this file. This is akin to the WPAY tag in ID3.
-       KaxTagMultiCommercialType_ItemPurchase, //Information on where to purchase this album. This is akin to the WCOM tag in ID3.
-       KaxTagMultiCommercialType_Owner  //Information on the purchase that occurred for this file. This is akin to the OWNE tag in ID3.
-};
-enum KaxTagMultiDateTypes {
-       KaxTagMultiDateType_EncodingDate = 1, //The time that the encoding of this item was completed. This is akin to the TDEN tag in ID3.
-       KaxTagMultiDateType_RecordingDate, //The time that the recording began, and finished. This is akin to the TDRC tag in ID3.
-       KaxTagMultiDateType_ReleaseDate, //The time that the item was originaly released. This is akin to the TDRL tag in ID3.
-       KaxTagMultiDateType_OriginalReleaseDate, //The time that the item was originaly released if it is a remake. This is akin to the TDOR tag in ID3.
-       KaxTagMultiDateType_TaggingDate, //The time that the tags were done for this item. This is akin to the TDTG tag in ID3.
-       KaxTagMultiDateType_DigitizingDate  //The time that the item was tranfered to a digital medium. This is akin to the IDIT tag in RIFF
-};
-enum KaxTagMultiEntitiesTypes {
-       KaxTagMultiEntitiesType_LyricistTextWriter = 1, //The person that wrote the words/script for this item. This is akin to the TEXT tag in ID3.
-       KaxTagMultiEntitiesType_Composer, //The name of the composer of this item. This is akin to the TCOM tag in ID3.
-       KaxTagMultiEntitiesType_LeadPerformerSoloist, //This is akin to the TPE1 tag in ID3.
-       KaxTagMultiEntitiesType_BandOrchestraAccompaniment, //This is akin to the TPE2 tag in ID3.
-       KaxTagMultiEntitiesType_OriginalLyricistTextWriter, //This is akin to the TOLY tag in ID3.
-       KaxTagMultiEntitiesType_OriginalArtistPerformer, //This is akin to the TOPE tag in ID3.
-       KaxTagMultiEntitiesType_OriginalAlbumMovieShowTitle, //This is akin to the TOAL tag in ID3.
-       KaxTagMultiEntitiesType_ConductorPerformerRefinement, //This is akin to the TPE3 tag in ID3.
-       KaxTagMultiEntitiesType_InterpretedRemixedBy, //This is akin to the TPE4 tag in ID3.
-       KaxTagMultiEntitiesType_Director, //This is akin to the IART tag in RIFF
-       KaxTagMultiEntitiesType_ProducedBy, //This is akin to the IPRO tag in Extended RIFF
-       KaxTagMultiEntitiesType_Cinematographer, //This is akin to the ICNM tag in Extended RIFF
-       KaxTagMultiEntitiesType_ProductionDesigner, //This is akin to the IPDS tag in Extended RIFF
-       KaxTagMultiEntitiesType_CostumeDesigner, //This is akin to the ICDS tag in Extended RIFF
-       KaxTagMultiEntitiesType_ProductionStudio, //This is akin to the ISTD tag in Extended RIFF
-       KaxTagMultiEntitiesType_DistributedBy, //This is akin to the IDST tag in Extended RIFF
-       KaxTagMultiEntitiesType_CommissionedBy, //This is akin to the ICMS tag in RIFF
-       KaxTagMultiEntitiesType_Engineer, //This is akin to the IENG tag in RIFF
-       KaxTagMultiEntitiesType_EditedBy, //This is akin to the IEDT tag in Extended RIFF
-       KaxTagMultiEntitiesType_EncodedBy, //This is akin to the TENC tag in ID3.
-       KaxTagMultiEntitiesType_RippedBy, //This is akin to the IRIP tag in Extended RIFF
-       KaxTagMultiEntitiesType_InvolvedPeopleList, //A very general tag for everyone else that wants to be listed. This is akin to the TMCL tag in ID3.
-       KaxTagMultiEntitiesType_InternetRadioStationName, //This is akin to the TSRN tag in ID3.
-       KaxTagMultiEntitiesType_Publisher  //This is akin to the TPUB tag in ID3.
-};
-
-enum KaxTagMultiIdentifierTypes {
-       KaxTagMultiIdentifierType_ISRC = 1, //String, The International Standard Recording Code
-       KaxTagMultiIdentifierType_CDIdentifier, //Binary, This is a binary dump of the TOC of the CDROM that this item was taken from. This holds the same information as the MCDI in ID3.
-       KaxTagMultiIdentifierType_ISBN, //String, International Standard Book Number
-       KaxTagMultiIdentifierType_Catalog, //String, sometimes the EAN/UPC, often some letters followed by some numbers
-       KaxTagMultiIdentifierType_EAN, //String, EAN-13 bar code identifier
-       KaxTagMultiIdentifierType_UPC, //String, UPC-A bar code identifier
-       KaxTagMultiIdentifierType_LabelCode, //String, Typically printed as ________ (LC) xxxx) ~~~~~~~~ or _________ (LC) 0xxxx) ~~~~~~~~~ on CDs medias or covers, where xxxx is a 4-digit number.
-       KaxTagMultiIdentifierType_LCCN, //String, Library of Congress Control Number
-       KaxTagMultiIdentifierType_UniqueFileIdentifier, //Binary, This used for a dump of the UFID field in ID3. This field would only be used if the item was pulled from an MP3.
-       CDROM_CD_TEXT_PACK_TOC_INFO2  //Binary
-};
-
-enum KaxTagMultiLegalTypes {
-       KaxTagMultiLegalType_Copyright = 1, //The copyright information as per the copyright holder. This is akin to the TCOP tag in ID3.
-       KaxTagMultiLegalType_ProductionCopyright, //The copyright information as per the production copyright holder. This is akin to the TPRO tag in ID3.
-       KaxTagMultiLegalType_TermsOfUse  //The terms of use for this item. This is akin to the USER tag in ID3.
-};
-
-enum KaxTagMultiTitleTypes {
-       KaxTagMultiTitleType_TrackTitle = 1,
-               //The title of this item. In the case of a track, the Name element should be identical to the Name element.
-               //For example, for music you might label this "Canon in D", or for video's audio track you might use "English 5.1" This is akin to the TIT2 tag in ID3.
-       KaxTagMultiTitleType_AlbumMovieShowTitle,
-               //This is the name given to a grouping of tracks and/or chapters. 
-               //For example, all video, audio, and subtitle tracks for a movie would be grouped under this and be given the name of the movie. 
-               //All tracks for a particular CD would be grouped together under the title of the CD, or if all tracks for a CD were recorded as a single track, seperated by chapters, the same would apply.
-               //You could use this to label episode 3 of The Simpsons. This is akin to the TALB tag in ID3.
-       KaxTagMultiTitleType_SetTitle,  //This would be used to label a set of ID 2. For example, season 13 of The Simpsons.
-       KaxTagMultiTitleType_Series  //This would be used to label a set of ID 3. For example, The Simpsons.
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiComment)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiCommentName)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiCommentComments)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiCommentLanguage)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiCommercial)
-};
-
-DECLARE_MKX_MASTER(KaxTagCommercial)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagMultiCommercialType)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiCommercialAddress)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiCommercialURL)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiCommercialEmail)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiPrice)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiPriceCurrency)
-};
-
-DECLARE_MKX_FLOAT(KaxTagMultiPriceAmount)
-};
-
-DECLARE_MKX_DATE(KaxTagMultiPricePriceDate)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiDate)
-};
-
-DECLARE_MKX_MASTER(KaxTagDate)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagMultiDateType)
-};
-
-DECLARE_MKX_DATE(KaxTagMultiDateDateBegin)
-};
-
-DECLARE_MKX_DATE(KaxTagMultiDateDateEnd)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiEntity)
-};
-
-DECLARE_MKX_MASTER(KaxTagEntity)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagMultiEntityType)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiEntityName)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiEntityAddress)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiEntityURL)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiEntityEmail)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiIdentifier)
-};
-
-DECLARE_MKX_MASTER(KaxTagIdentifier)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagMultiIdentifierType)
-};
-
-DECLARE_MKX_BINARY(KaxTagMultiIdentifierBinary)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiIdentifierString)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiLegal)
-};
-
-DECLARE_MKX_MASTER(KaxTagLegal)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagMultiLegalType)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiLegalContent)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiLegalURL)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiLegalAddress)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiTitle)
-};
-
-DECLARE_MKX_MASTER(KaxTagTitle)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagMultiTitleType)
-};
-
-
-DECLARE_MKX_UNISTRING(KaxTagMultiTitleName)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiTitleSubTitle)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiTitleEdition)
-};
-
-DECLARE_MKX_UNISTRING(KaxTagMultiTitleAddress)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiTitleURL)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiTitleEmail)
-};
-
-DECLARE_MKX_STRING(KaxTagMultiTitleLanguage)
-};
-
-DECLARE_MKX_MASTER(KaxTagMultiAttachment)
-};
-
-DECLARE_MKX_MASTER(KaxTagAttachment)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagAttachmentID)
-};
-
-#if 0
-DECLARE_MKX_FLOAT(KaxTagBPM)
-};
-
-DECLARE_MKX_SINTEGER(KaxTagPopularimeter)
-};
-
-DECLARE_MKX_BINARY(KaxTagRating)
-};
-
-DECLARE_MKX_UINTEGER(KaxTagSetPart)
-};
-
-DECLARE_MKX_STRING(KaxTagUserDefinedURL)
-};
-
-DECLARE_MKX_BINARY(KaxTagVideoSecondaryGenre)
-       public:
-               virtual bool ValidateSize() const {return IsFiniteSize() && (Size >= 4);
-};
-
-DECLARE_MKX_UNISTRING(KaxWritingApp)
-};
-#endif
-
-END_LIBMATROSKA_NAMESPACE
-
-#endif // LIBMATROSKA_TAGMULTI_H
index adc532fce1b9eb4d39de212a03083635146bf331..59038627a937b5f7ee27fdc9fb8e4f17a7ed6fc8 100644 (file)
-/****************************************************************************\r
-** libmatroska : parse Matroska files, see http://www.matroska.org/\r
-**\r
-** <file/class description>\r
-**\r
-** Copyright (C) 2002-2010 Steve Lhomme.  All rights reserved.\r
-**\r
-** This file is part of libmatroska.\r
-**\r
-** This library is free software; you can redistribute it and/or\r
-** modify it under the terms of the GNU Lesser General Public\r
-** License as published by the Free Software Foundation; either\r
-** version 2.1 of the License, or (at your option) any later version.\r
-** \r
-** This library is distributed in the hope that it will be useful,\r
-** but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
-** Lesser General Public License for more details.\r
-** \r
-** You should have received a copy of the GNU Lesser General Public\r
-** License along with this library; if not, write to the Free Software\r
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
-**\r
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.**\r
-** Contact license@matroska.org if any conditions of this licensing are\r
-** not clear to you.\r
-**\r
-**********************************************************************/\r
-\r
-/*!\r
-       \file\r
-       \version \$Id: KaxTag.cpp 1325 2009-03-30 07:56:54Z robux4 $\r
-       \author Jory Stone       <jcsston @ toughguy.net>\r
-       \author Steve Lhomme     <robux4 @ users.sf.net>\r
-*/\r
-#include "matroska/KaxTag.h"\r
-#include "matroska/KaxTagMulti.h"\r
-#include "matroska/KaxContexts.h"\r
-#include "matroska/KaxDefines.h"\r
-\r
-using namespace LIBEBML_NAMESPACE;\r
-\r
-// sub elements\r
-START_LIBMATROSKA_NAMESPACE\r
-\r
-DEFINE_START_SEMANTIC(KaxTag)\r
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagTargets)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagGeneral)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagGenres)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagAudioSpecific)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagImageSpecific)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiCommercial)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiDate)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiEntity)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiIdentifier)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiLegal)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiTitle)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiAttachment)\r
-//DEFINE_SEMANTIC_ITEM(false, false, KaxTagLength)\r
-//DEFINE_SEMANTIC_ITEM(false, false, KaxTagPlaylistDelay)\r
-//DEFINE_SEMANTIC_ITEM(false, false, KaxTagUnsynchronisedText)\r
-//DEFINE_SEMANTIC_ITEM(false, false, KaxTagUserDefinedURL)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiComment)\r
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagSimple)\r
-DEFINE_END_SEMANTIC(KaxTag)\r
-\r
-DEFINE_START_SEMANTIC(KaxTagTargets)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagTargetTypeValue)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagTargetType)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagTrackUID)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagEditionUID)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagChapterUID)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagAttachmentUID)\r
-DEFINE_END_SEMANTIC(KaxTagTargets)\r
-\r
-DEFINE_START_SEMANTIC(KaxTagGeneral)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagArchivalLocation)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagFile)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagKeywords)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMood)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagRecordLocation)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagSource)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagSourceForm)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagProduct)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagOriginalMediaType)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagPlayCounter)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagPopularimeter)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagSubject)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagBibliography)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagLanguage)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagRating)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagEncoder)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagEncodeSettings)\r
-DEFINE_END_SEMANTIC(KaxTagGeneral)\r
-\r
-DEFINE_START_SEMANTIC(KaxTagGenres)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagAudioGenre)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagVideoGenre)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagSubGenre)\r
-DEFINE_END_SEMANTIC(KaxTagGenres)\r
-\r
-DEFINE_START_SEMANTIC(KaxTagAudioSpecific)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagAudioPeak)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagAudioEncryption)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagAudioGain)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagBPM)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagDiscTrack)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagSetPart)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagEqualisation)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagInitialKey)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagOfficialAudioFileURL)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagOfficialAudioSourceURL)\r
-DEFINE_END_SEMANTIC(KaxTagAudioSpecific)\r
-\r
-DEFINE_START_SEMANTIC(KaxTagImageSpecific)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagCaptureDPI)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagCaptureLightness)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagCapturePaletteSetting)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagCaptureSharpness)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagCropped)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagOriginalDimensions)\r
-DEFINE_END_SEMANTIC(KaxTagImageSpecific)\r
-\r
-DEFINE_START_SEMANTIC(KaxTagSimple)\r
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagName)\r
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagLangue)\r
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagDefault)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagString)\r
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagBinary)\r
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagSimple)\r
-DEFINE_END_SEMANTIC(KaxTagSimple)\r
-\r
-DEFINE_MKX_MASTER      (KaxTag,                       0x7373, 2, KaxTags, "Tag");\r
-DEFINE_MKX_MASTER      (KaxTagTargets,                0x63C0, 2, KaxTag, "TagTargets");\r
-DEFINE_MKX_MASTER      (KaxTagGeneral,                0x67C9, 2, KaxTag, "TagGeneral");\r
-DEFINE_MKX_MASTER      (KaxTagGenres,                 0x6583, 2, KaxTag, "TagGenres");\r
-DEFINE_MKX_MASTER      (KaxTagAudioSpecific,          0x41C5, 2, KaxTag, "TagAudioSpecific");\r
-DEFINE_MKX_MASTER      (KaxTagImageSpecific,          0x4990, 2, KaxTag, "TagImageSpecific");\r
-DEFINE_MKX_UNISTRING   (KaxTagBibliography,           0x4488, 2, KaxTag, "Bibliography");\r
-DEFINE_MKX_UNISTRING   (KaxTagEncoder,                0x4431, 2, KaxTag, "Encoder");\r
-DEFINE_MKX_UNISTRING   (KaxTagEncodeSettings,         0x6526, 2, KaxTag, "EncodeSettings");\r
-DEFINE_MKX_STRING      (KaxTagLanguage,             0x22B59F, 3, KaxTag, "Language");\r
-DEFINE_MKX_UINTEGER    (KaxTagLength,                 0x5243, 2, KaxTag, "Length");\r
-DEFINE_MKX_UINTEGER    (KaxTagPlaylistDelay,          0x72CC, 2, KaxTag, "PlaylistDelay");\r
-DEFINE_MKX_BINARY      (KaxTagRating,                 0x52BC, 2, KaxTag, "Rating");\r
-DEFINE_MKX_UNISTRING   (KaxTagSubject,                0x49C1, 2, KaxTag, "Subject");\r
-DEFINE_MKX_UNISTRING   (KaxTagUnsynchronisedText,     0x874B, 2, KaxTag, "UnsynchronisedText");\r
-DEFINE_MKX_STRING      (KaxTagUserDefinedURL,         0x434A, 2, KaxTag, "UserDefinedURL");\r
-DEFINE_MKX_UINTEGER_DEF(KaxTagTargetTypeValue,        0x68CA, 2, KaxTagTargets, "TagTargetTypeValue", 50);\r
-DEFINE_MKX_STRING      (KaxTagTargetType,             0x63CA, 2, KaxTagTargets, "TagTargetType");\r
-DEFINE_MKX_UINTEGER_DEF(KaxTagTrackUID,               0x63C5, 2, KaxTagTargets, "TagTrackUID", 0);\r
-DEFINE_MKX_UINTEGER_DEF(KaxTagEditionUID,             0x63C9, 2, KaxTagTargets, "TagEditionUID", 0);\r
-DEFINE_MKX_UINTEGER_DEF(KaxTagChapterUID,             0x63C4, 2, KaxTagTargets, "TagChapterUID", 0);\r
-DEFINE_MKX_UINTEGER_DEF(KaxTagAttachmentUID,          0x63C6, 2, KaxTagTargets, "TagAttachmentUID", 0);\r
-DEFINE_MKX_UNISTRING   (KaxTagArchivalLocation,       0x45A4, 2, KaxTagGeneral, "ArchivalLocation");\r
-DEFINE_MKX_UNISTRING   (KaxTagFile,                   0x454E, 2, KaxTagGeneral, "File");\r
-DEFINE_MKX_UNISTRING   (KaxTagKeywords,               0x458C, 2, KaxTagGeneral, "Keywords");\r
-DEFINE_MKX_UNISTRING   (KaxTagMood,                   0x45AE, 2, KaxTagGeneral, "Mood");\r
-DEFINE_MKX_STRING      (KaxTagRecordLocation,         0x457E, 2, KaxTagGeneral, "RecordLocation");\r
-DEFINE_MKX_UNISTRING   (KaxTagSource,                 0x458A, 2, KaxTagGeneral, "Source");\r
-DEFINE_MKX_UNISTRING   (KaxTagSourceForm,             0x45B5, 2, KaxTagGeneral, "SourceForm");\r
-DEFINE_MKX_UNISTRING   (KaxTagProduct,                0x45E3, 2, KaxTagGeneral, "Product");\r
-DEFINE_MKX_UNISTRING   (KaxTagOriginalMediaType,      0x45A7, 2, KaxTagGeneral, "OriginalMediaType");\r
-DEFINE_MKX_UINTEGER    (KaxTagPlayCounter,            0x4566, 2, KaxTagTargets, "PlayCounter");\r
-DEFINE_MKX_SINTEGER    (KaxTagPopularimeter,          0x4532, 2, KaxTagTargets, "Popularimeter");\r
-DEFINE_MKX_STRING      (KaxTagAudioGenre,             0x65C2, 2, KaxTagGenres, "AudioGenre");\r
-DEFINE_MKX_BINARY      (KaxTagVideoGenre,             0x65A1, 2, KaxTagGenres, "VideoGenre");\r
-DEFINE_MKX_STRING      (KaxTagSubGenre,               0x65AC, 2, KaxTagGenres, "SubGenre");\r
-DEFINE_MKX_BINARY      (KaxTagAudioEncryption,        0x41B4, 2, KaxTagAudioSpecific, "AudioEncryption");\r
-DEFINE_MKX_FLOAT       (KaxTagAudioGain,              0x4199, 2, KaxTagAudioSpecific, "AudioGain");\r
-DEFINE_MKX_FLOAT       (KaxTagAudioPeak,              0x4189, 2, KaxTagAudioSpecific, "AudioPeak");\r
-DEFINE_MKX_FLOAT       (KaxTagBPM,                    0x41A1, 2, KaxTagAudioSpecific, "BPM");\r
-DEFINE_MKX_UINTEGER    (KaxTagDiscTrack,              0x41B6, 2, KaxTagAudioSpecific, "DiscTrack");\r
-DEFINE_MKX_UINTEGER    (KaxTagSetPart,                0x416E, 2, KaxTagAudioSpecific, "SetPart");\r
-DEFINE_MKX_BINARY      (KaxTagEqualisation,           0x41B1, 2, KaxTagAudioSpecific, "Equalisation");\r
-DEFINE_MKX_STRING      (KaxTagInitialKey,             0x413A, 2, KaxTagAudioSpecific, "InitialKey");\r
-DEFINE_MKX_STRING      (KaxTagOfficialAudioFileURL,   0x4133, 2, KaxTagAudioSpecific, "OfficialAudioFileURL");\r
-DEFINE_MKX_STRING      (KaxTagOfficialAudioSourceURL, 0x413E, 2, KaxTagAudioSpecific, "AudioSourceURL");\r
-DEFINE_MKX_UINTEGER    (KaxTagCaptureDPI,             0x49C7, 2, KaxTagImageSpecific, "CaptureDPI");\r
-DEFINE_MKX_BINARY      (KaxTagCaptureLightness,       0x49E1, 2, KaxTagImageSpecific, "CaptureLightness");\r
-DEFINE_MKX_UINTEGER    (KaxTagCapturePaletteSetting,  0x4934, 2, KaxTagImageSpecific, "CapturePaletteSetting");\r
-DEFINE_MKX_BINARY      (KaxTagCaptureSharpness,       0x4922, 2, KaxTagImageSpecific, "CaptureSharpness");\r
-DEFINE_MKX_UNISTRING   (KaxTagCropped,                0x4987, 2, KaxTagImageSpecific, "Cropped");\r
-DEFINE_MKX_STRING      (KaxTagOriginalDimensions,     0x4933, 2, KaxTagImageSpecific, "OriginalDimensions");\r
-\r
-DEFINE_MKX_MASTER      (KaxTagSimple,                 0x67C8, 2, KaxTag, "TagSimple");\r
-DEFINE_MKX_UNISTRING   (KaxTagName,                   0x45A3, 2, KaxTagSimple, "TagName");\r
-DEFINE_MKX_STRING_DEF  (KaxTagLangue,                 0x447A, 2, KaxTagSimple, "TagLanguage", "und");\r
-DEFINE_MKX_UINTEGER_DEF(KaxTagDefault,                0x4484, 2, KaxTagSimple, "TagDefault", 1);\r
-DEFINE_MKX_UNISTRING   (KaxTagString,                 0x4487, 2, KaxTagSimple, "TagString");\r
-DEFINE_MKX_BINARY      (KaxTagBinary,                 0x4485, 2, KaxTagSimple, "TagBinary");\r
-\r
-END_LIBMATROSKA_NAMESPACE\r
+/****************************************************************************
+** libmatroska : parse Matroska files, see http://www.matroska.org/
+**
+** <file/class description>
+**
+** Copyright (C) 2002-2010 Steve Lhomme.  All rights reserved.
+**
+** This file is part of libmatroska.
+**
+** This library is free software; you can redistribute it and/or
+** modify it under the terms of the GNU Lesser General Public
+** License as published by the Free Software Foundation; either
+** version 2.1 of the License, or (at your option) any later version.
+** 
+** This library is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+** Lesser General Public License for more details.
+** 
+** You should have received a copy of the GNU Lesser General Public
+** License along with this library; if not, write to the Free Software
+** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+**
+** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.**
+** Contact license@matroska.org if any conditions of this licensing are
+** not clear to you.
+**
+**********************************************************************/
+
+/*!
+       \file
+       \version \$Id: KaxTag.cpp 1325 2009-03-30 07:56:54Z robux4 $
+       \author Jory Stone       <jcsston @ toughguy.net>
+       \author Steve Lhomme     <robux4 @ users.sf.net>
+*/
+#include "matroska/KaxTag.h"
+#include "matroska/KaxContexts.h"
+#include "matroska/KaxDefines.h"
+
+using namespace LIBEBML_NAMESPACE;
+
+// sub elements
+START_LIBMATROSKA_NAMESPACE
+
+DEFINE_START_SEMANTIC(KaxTag)
+DEFINE_SEMANTIC_ITEM(true, true, KaxTagTargets)
+DEFINE_SEMANTIC_ITEM(true, false, KaxTagSimple)
+DEFINE_END_SEMANTIC(KaxTag)
+
+DEFINE_START_SEMANTIC(KaxTagTargets)
+DEFINE_SEMANTIC_ITEM(false, true, KaxTagTargetTypeValue)
+DEFINE_SEMANTIC_ITEM(false, true, KaxTagTargetType)
+DEFINE_SEMANTIC_ITEM(false, false, KaxTagTrackUID)
+DEFINE_SEMANTIC_ITEM(false, false, KaxTagEditionUID)
+DEFINE_SEMANTIC_ITEM(false, false, KaxTagChapterUID)
+DEFINE_SEMANTIC_ITEM(false, false, KaxTagAttachmentUID)
+DEFINE_END_SEMANTIC(KaxTagTargets)
+
+DEFINE_START_SEMANTIC(KaxTagSimple)
+DEFINE_SEMANTIC_ITEM(true, true, KaxTagName)
+DEFINE_SEMANTIC_ITEM(true, true, KaxTagLangue)
+DEFINE_SEMANTIC_ITEM(true, true, KaxTagDefault)
+DEFINE_SEMANTIC_ITEM(false, true, KaxTagString)
+DEFINE_SEMANTIC_ITEM(false, true, KaxTagBinary)
+DEFINE_SEMANTIC_ITEM(false, false, KaxTagSimple)
+DEFINE_END_SEMANTIC(KaxTagSimple)
+
+DEFINE_MKX_MASTER      (KaxTag,                       0x7373, 2, KaxTags, "Tag");
+DEFINE_MKX_MASTER      (KaxTagTargets,                0x63C0, 2, KaxTag, "TagTargets");
+DEFINE_MKX_UINTEGER_DEF(KaxTagTargetTypeValue,        0x68CA, 2, KaxTagTargets, "TagTargetTypeValue", 50);
+DEFINE_MKX_STRING      (KaxTagTargetType,             0x63CA, 2, KaxTagTargets, "TagTargetType");
+DEFINE_MKX_UINTEGER_DEF(KaxTagTrackUID,               0x63C5, 2, KaxTagTargets, "TagTrackUID", 0);
+DEFINE_MKX_UINTEGER_DEF(KaxTagEditionUID,             0x63C9, 2, KaxTagTargets, "TagEditionUID", 0);
+DEFINE_MKX_UINTEGER_DEF(KaxTagChapterUID,             0x63C4, 2, KaxTagTargets, "TagChapterUID", 0);
+DEFINE_MKX_UINTEGER_DEF(KaxTagAttachmentUID,          0x63C6, 2, KaxTagTargets, "TagAttachmentUID", 0);
+
+DEFINE_MKX_MASTER      (KaxTagSimple,                 0x67C8, 2, KaxTag, "TagSimple");
+DEFINE_MKX_UNISTRING   (KaxTagName,                   0x45A3, 2, KaxTagSimple, "TagName");
+DEFINE_MKX_STRING_DEF  (KaxTagLangue,                 0x447A, 2, KaxTagSimple, "TagLanguage", "und");
+DEFINE_MKX_UINTEGER_DEF(KaxTagDefault,                0x4484, 2, KaxTagSimple, "TagDefault", 1);
+DEFINE_MKX_UNISTRING   (KaxTagString,                 0x4487, 2, KaxTagSimple, "TagString");
+DEFINE_MKX_BINARY      (KaxTagBinary,                 0x4485, 2, KaxTagSimple, "TagBinary");
+
+END_LIBMATROSKA_NAMESPACE
diff --git a/src/KaxTagMulti.cpp b/src/KaxTagMulti.cpp
deleted file mode 100644 (file)
index c4a140f..0000000
+++ /dev/null
@@ -1,212 +0,0 @@
-/****************************************************************************
-** libmatroska : parse Matroska files, see http://www.matroska.org/
-**
-** <file/class description>
-**
-** Copyright (C) 2002-2010 Steve Lhomme.  All rights reserved.
-**
-** This file is part of libmatroska.
-**
-** This library is free software; you can redistribute it and/or
-** modify it under the terms of the GNU Lesser General Public
-** License as published by the Free Software Foundation; either
-** version 2.1 of the License, or (at your option) any later version.
-** 
-** This library is distributed in the hope that it will be useful,
-** but WITHOUT ANY WARRANTY; without even the implied warranty of
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-** Lesser General Public License for more details.
-** 
-** You should have received a copy of the GNU Lesser General Public
-** License along with this library; if not, write to the Free Software
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-**
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.**
-** Contact license@matroska.org if any conditions of this licensing are
-** not clear to you.
-**
-**********************************************************************/
-
-/*!
-       \file
-       \version \$Id$
-       \author Jory Stone       <jcsston @ toughguy.net>
-       \author Steve Lhomme     <robux4 @ users.sf.net>
-*/
-#include "matroska/KaxTagMulti.h"
-#include "matroska/KaxContexts.h"
-#include "matroska/KaxDefines.h"
-
-using namespace LIBEBML_NAMESPACE;
-
-START_LIBMATROSKA_NAMESPACE
-
-DEFINE_START_SEMANTIC(KaxTagMultiGlobal)
-// TODO: have the default EBML global semantic as well
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiComment)
-DEFINE_END_SEMANTIC(KaxTagMultiGlobal)
-
-DEFINE_START_SEMANTIC(KaxTagMultiComment)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiCommentName)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiCommentComments)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiCommentLanguage)
-DEFINE_END_SEMANTIC(KaxTagMultiComment)
-
-DEFINE_START_SEMANTIC(KaxTagMultiCommercial)
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagCommercial)
-DEFINE_END_SEMANTIC(KaxTagMultiCommercial)
-
-DEFINE_START_SEMANTIC(KaxTagCommercial)
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagMultiCommercialType)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiCommercialAddress)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiCommercialURL)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiCommercialEmail)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiPrice)
-DEFINE_END_SEMANTIC(KaxTagCommercial)
-
-DEFINE_START_SEMANTIC(KaxTagMultiPrice)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiPriceCurrency)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiPriceAmount)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiPricePriceDate)
-DEFINE_END_SEMANTIC(KaxTagMultiPrice)
-
-DEFINE_START_SEMANTIC(KaxTagMultiDate)
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagDate)
-DEFINE_END_SEMANTIC(KaxTagMultiDate)
-
-DEFINE_START_SEMANTIC(KaxTagDate)
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagMultiDateType)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiDateDateBegin)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiDateDateEnd)
-DEFINE_END_SEMANTIC(KaxTagDate)
-
-DEFINE_START_SEMANTIC(KaxTagMultiEntity)
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagEntity)
-DEFINE_END_SEMANTIC(KaxTagMultiEntity)
-
-DEFINE_START_SEMANTIC(KaxTagEntity)
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagMultiEntityType)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiEntityName)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiEntityURL)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiEntityEmail)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiEntityAddress)
-DEFINE_END_SEMANTIC(KaxTagEntity)
-
-DEFINE_START_SEMANTIC(KaxTagMultiIdentifier)
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagIdentifier)
-DEFINE_END_SEMANTIC(KaxTagMultiIdentifier)
-
-DEFINE_START_SEMANTIC(KaxTagIdentifier)
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagMultiIdentifierType)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiIdentifierBinary)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiIdentifierString)
-DEFINE_END_SEMANTIC(KaxTagIdentifier)
-
-DEFINE_START_SEMANTIC(KaxTagMultiLegal)
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagLegal)
-DEFINE_END_SEMANTIC(KaxTagMultiLegal)
-
-DEFINE_START_SEMANTIC(KaxTagLegal)
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagMultiLegalType)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiLegalContent)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiLegalURL)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiLegalAddress)
-DEFINE_END_SEMANTIC(KaxTagLegal)
-
-DEFINE_START_SEMANTIC(KaxTagMultiTitle)
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagTitle)
-DEFINE_END_SEMANTIC(KaxTagMultiTitle)
-
-DEFINE_START_SEMANTIC(KaxTagTitle)
-DEFINE_SEMANTIC_ITEM(true, true, KaxTagMultiTitleType)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiTitleName)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiTitleSubTitle)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiTitleEdition)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiTitleAddress)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiTitleURL)
-DEFINE_SEMANTIC_ITEM(false, false, KaxTagMultiTitleEmail)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagMultiTitleLanguage)
-DEFINE_END_SEMANTIC(KaxTagTitle)
-
-DEFINE_START_SEMANTIC(KaxTagMultiAttachment)
-DEFINE_SEMANTIC_ITEM(true, false, KaxTagAttachment)
-DEFINE_END_SEMANTIC(KaxTagMultiAttachment)
-
-DEFINE_START_SEMANTIC(KaxTagAttachment)
-DEFINE_SEMANTIC_ITEM(false, true, KaxTagAttachmentID)
-DEFINE_END_SEMANTIC(KaxTagAttachment)
-
-
-DEFINE_MKX_CONTEXT(KaxTagMultiGlobal);
-
-const EbmlSemanticContext & GetKaxTagsGlobal_Context()
-{
-    return EBML_CLASS_SEMCONTEXT(KaxTagMultiGlobal);
-}
-
-#if defined(HAVE_EBML2) || defined(HAS_EBML2)
-#define DEFINE_TAG_MASTER(a,b,c,d,e)   DEFINE_xxx_MASTER(a,b,d,e,EBML_SemanticKaxTagMultiGlobal)
-#else
-#define DEFINE_TAG_MASTER(a,b,c,d,e)   DEFINE_xxx_MASTER(a,b,c,d,e,*GetKaxTagsGlobal_Context)
-#endif
-
-
-DEFINE_MKX_MASTER   (KaxTagMultiComment,           0x5B7B, 2, KaxTag, "MultiComment");
-DEFINE_MKX_STRING   (KaxTagMultiCommentName,       0x5F7D, 2, KaxTagMultiComment, "MultiCommentName");
-DEFINE_MKX_UNISTRING(KaxTagMultiCommentComments,   0x5F7C, 2, KaxTagMultiComment, "MultiCommentComments");
-DEFINE_MKX_STRING   (KaxTagMultiCommentLanguage, 0x22B59D, 3, KaxTagMultiComment, "MultiCommentLanguage");
-
-DEFINE_TAG_MASTER   (KaxTagMultiCommercial,        0x4DC7, 2, KaxTag, "MultiCommercial");
-DEFINE_TAG_MASTER   (KaxTagCommercial,             0x4EC7, 2, KaxTagMultiCommercial, "Commercial");
-DEFINE_MKX_UINTEGER (KaxTagMultiCommercialType,    0x5BD7, 2, KaxTagCommercial, "MultiCommercialType");
-DEFINE_MKX_UNISTRING(KaxTagMultiCommercialAddress, 0x5BBB, 2, KaxTagCommercial, "MultiCommercialAddress");
-DEFINE_MKX_STRING   (KaxTagMultiCommercialURL,     0x5BDA, 2, KaxTagCommercial, "MultiCommercialURL");
-DEFINE_MKX_STRING   (KaxTagMultiCommercialEmail,   0x5BC0, 2, KaxTagCommercial, "MultiCommercialEmail");
-DEFINE_TAG_MASTER   (KaxTagMultiPrice,             0x5BC3, 2, KaxTagCommercial, "MultiPrice");
-DEFINE_MKX_STRING   (KaxTagMultiPriceCurrency,     0x5B6C, 2, KaxTagMultiPrice, "MultiPriceCurrency");
-DEFINE_MKX_FLOAT    (KaxTagMultiPriceAmount,       0x5B6E, 2, KaxTagMultiPrice, "MultiPriceAmount");
-DEFINE_MKX_DATE     (KaxTagMultiPricePriceDate,    0x5B6F, 2, KaxTagMultiPrice, "MultiPricePriceDate");
-
-DEFINE_TAG_MASTER   (KaxTagMultiDate,              0x4DC8, 2, KaxTag, "MultiDate");
-DEFINE_TAG_MASTER   (KaxTagDate,                   0x4EC8, 2, KaxTagMultiDate, "Date");
-DEFINE_MKX_UINTEGER (KaxTagMultiDateType,          0x5BD8, 2, KaxTagDate, "MultiDateType");
-DEFINE_MKX_DATE     (KaxTagMultiDateDateBegin,     0x4460, 2, KaxTagDate, "MultiDateDateBegin");
-DEFINE_MKX_DATE     (KaxTagMultiDateDateEnd,       0x4462, 2, KaxTagDate, "MultiDateDateEnd");
-
-DEFINE_TAG_MASTER   (KaxTagMultiEntity,            0x4DC9, 2, KaxTag, "MultiEntity");
-DEFINE_TAG_MASTER   (KaxTagEntity,                 0x4EC9, 2, KaxTagMultiEntity, "Entity");
-DEFINE_MKX_UINTEGER (KaxTagMultiEntityType,        0x5BD9, 2, KaxTagEntity, "MultiEntityType");
-DEFINE_MKX_UNISTRING(KaxTagMultiEntityName,        0x5BED, 2, KaxTagEntity, "MultiEntityName");
-DEFINE_MKX_STRING   (KaxTagMultiEntityURL,         0x5BDB, 2, KaxTagEntity, "MultiEntityURL");
-DEFINE_MKX_STRING   (KaxTagMultiEntityEmail,       0x5BC1, 2, KaxTagEntity, "MultiEntityEmail");
-DEFINE_MKX_UNISTRING(KaxTagMultiEntityAddress,     0x5BDC, 2, KaxTagEntity, "MultiEntityAddress");
-
-DEFINE_TAG_MASTER   (KaxTagMultiIdentifier,        0x4DC6, 2, KaxTag, "MultiIdentifier");
-DEFINE_TAG_MASTER   (KaxTagIdentifier,             0x4EC6, 2, KaxTagMultiIdentifier, "Identifier");
-DEFINE_MKX_UINTEGER (KaxTagMultiIdentifierType,    0x5BAD, 2, KaxTagIdentifier, "MultiIdentifierType");
-DEFINE_MKX_BINARY   (KaxTagMultiIdentifierBinary,  0x6B67, 2, KaxTagIdentifier, "MultiIdentifierBinary");
-DEFINE_MKX_UNISTRING(KaxTagMultiIdentifierString,  0x6B68, 2, KaxTagIdentifier, "MultiIdentifierString");
-
-DEFINE_TAG_MASTER   (KaxTagMultiLegal,             0x4DC5, 2, KaxTag, "MultiLegal");
-DEFINE_TAG_MASTER   (KaxTagLegal,                  0x4EC5, 2, KaxTagMultiLegal, "Legal");
-DEFINE_MKX_UINTEGER (KaxTagMultiLegalType,         0x5BBD, 2, KaxTagLegal, "MultiLegalType");
-DEFINE_MKX_UNISTRING(KaxTagMultiLegalContent,      0x5BB2, 2, KaxTagLegal, "MultiLegalContent");
-DEFINE_MKX_STRING   (KaxTagMultiLegalURL,          0x5B34, 2, KaxTagLegal, "MultiLegalURL");
-DEFINE_MKX_UNISTRING(KaxTagMultiLegalAddress,      0x5B9B, 2, KaxTagLegal, "MultiLegalAddress");
-
-DEFINE_TAG_MASTER   (KaxTagMultiTitle,             0x4DC4, 2, KaxTag, "MultiTitle");
-DEFINE_TAG_MASTER   (KaxTagTitle,                  0x4EC4, 2, KaxTagMultiTitle, "Title");
-DEFINE_MKX_UINTEGER (KaxTagMultiTitleType,         0x5B7D, 2, KaxTagTitle, "MultiTitleType");
-DEFINE_MKX_UNISTRING(KaxTagMultiTitleName,         0x5BB9, 2, KaxTagTitle, "MultiTitleName");
-DEFINE_MKX_UNISTRING(KaxTagMultiTitleSubTitle,     0x5B5B, 2, KaxTagTitle, "MultiTitleSubTitle");
-DEFINE_MKX_UNISTRING(KaxTagMultiTitleEdition,      0x5BAE, 2, KaxTagTitle, "MultiTitleEdition");
-DEFINE_MKX_UNISTRING(KaxTagMultiTitleAddress,      0x5B33, 2, KaxTagTitle, "MultiTitleAddress");
-DEFINE_MKX_STRING   (KaxTagMultiTitleURL,          0x5BA9, 2, KaxTagTitle, "MultiTitleURL");
-DEFINE_MKX_STRING   (KaxTagMultiTitleEmail,        0x5BC9, 2, KaxTagTitle, "MultiTitleEmail");
-DEFINE_MKX_STRING   (KaxTagMultiTitleLanguage,   0x22B59E, 3, KaxTagTitle, "MultiTitleLanguage");
-
-DEFINE_TAG_MASTER   (KaxTagMultiAttachment,        0x4DC3, 2, KaxTag, "MultiAttachment");
-DEFINE_TAG_MASTER   (KaxTagAttachment,             0x4EC3, 2, KaxTagMultiAttachment, "Attachment");
-DEFINE_MKX_UINTEGER (KaxTagAttachmentID,           0x5BA0, 2, KaxTagAttachment, "AttachmentID");
-
-END_LIBMATROSKA_NAMESPACE
index e05c978f1b5b58bc7610c93eb854baba375cf98d..39477d3ed5a5578a226a2ffe8f31f9c07412e1a0 100644 (file)
@@ -29,7 +29,7 @@
 
 /*!
     \file
-    \version \$Id: test6.cpp 1078 2005-03-03 13:13:04Z robux4 $
+    \version \$Id$
     \brief Test muxing two tracks into valid clusters/blocks/frames
     \author Steve Lhomme     <robux4 @ users.sf.net>
 */
@@ -125,7 +125,7 @@ int main(int argc, char **argv)
                *((EbmlUnicodeString *)&GetChild<KaxWritingApp>(MyInfos)) = L"éàôï";
                GetChild<KaxWritingApp>(MyInfos).SetDefaultSize(25);
 
-               uint32 InfoSize = MyInfos.Render(out_file);
+               filepos_t InfoSize = MyInfos.Render(out_file);
                MetaSeek.IndexThis(MyInfos, FileSegment);
 
                // fill track 1 params
@@ -301,7 +301,7 @@ int main(int argc, char **argv)
                Clust2.ReleaseFrames();
 
 // older version, write at the end             AllCues.Render(out_file);
-               uint32 CueSize = AllCues.Render(out_file, bWriteDefaultValues);
+               filepos_t CueSize = AllCues.Render(out_file, bWriteDefaultValues);
                MetaSeek.IndexThis(AllCues, FileSegment);
 
                // Chapters
@@ -332,7 +332,7 @@ int main(int argc, char **argv)
                KaxChapterLanguage & aChapLang2 = GetChild<KaxChapterLanguage>(aDisplay2);
                *static_cast<EbmlString *>(&aChapLang2) = "eng";
 
-               uint32 ChapterSize = Chapters.Render(out_file, bWriteDefaultValues);
+               filepos_t ChapterSize = Chapters.Render(out_file, bWriteDefaultValues);
                MetaSeek.IndexThis(Chapters, FileSegment);
 
                // Write some tags
@@ -348,34 +348,20 @@ int main(int argc, char **argv)
                KaxTagChapterUID & ChapterUID = GetChild<KaxTagChapterUID>(Targets);
                *static_cast<EbmlUInteger *>(&ChapterUID) = 0x67890;
 
-#if 0
-               KaxTagSubject & Subject = GetChild<KaxTagSubject>(TagGeneral);
-               *static_cast<EbmlUnicodeString *>(&Subject) = L"Testé123";
-
-               KaxTagBibliography & Biblio = GetChild<KaxTagBibliography>(TagGeneral);
-               *static_cast<EbmlUnicodeString *>(&Biblio) = L"ça marche";
-
-               KaxTagFile & File = GetChild<KaxTagFile>(TagGeneral);
-               *static_cast<EbmlUnicodeString *>(&File) = L"Fichier";
-
-               KaxTagLanguage & Lang = GetChild<KaxTagLanguage>(TagGeneral);
-               *static_cast<EbmlString *>(&Lang) = "fra";
-#else
         KaxTagName & aTagName = GetChild<KaxTagName>(TagSimple);
         *static_cast<EbmlUnicodeString *>(&aTagName) = L"NAME";
 
         KaxTagString & aTagtring = GetChild<KaxTagString>(TagSimple);
         *static_cast<EbmlUnicodeString *>(&aTagtring) = L"Testé123";
-#endif
 
-               uint32 TagsSize = AllTags.Render(out_file, bWriteDefaultValues);
+               filepos_t TagsSize = AllTags.Render(out_file, bWriteDefaultValues);
                MetaSeek.IndexThis(AllTags, FileSegment);
 
                TrackSize += pMyTracks2->Render(out_file, bWriteDefaultValues);
                MetaSeek.IndexThis(*pMyTracks2, FileSegment);
 
                // \todo put it just before the Cue Entries
-               uint32 MetaSeekSize = Dummy.ReplaceWith(MetaSeek, out_file, bWriteDefaultValues);
+               filepos_t MetaSeekSize = Dummy.ReplaceWith(MetaSeek, out_file, bWriteDefaultValues);
 
 #ifdef VOID_TEST
                MyInfos.VoidMe(out_file);
index 51da46a734cc8de0996ce03ee3ba5b6cb0a272cb..b5cfb036005c1bc2781ec5ba9973e1861cb39cd2 100644 (file)
@@ -27,7 +27,7 @@
 
 /*!
     \file
-    \version \$Id: test8.cpp 675 2004-07-27 07:56:14Z mosu $
+    \version \$Id$
     \brief Test reading of the Header
     \author Steve Lhomme     <robux4 @ users.sf.net>
 */
@@ -59,7 +59,6 @@
 #include "matroska/KaxChapters.h"
 #include "matroska/KaxTags.h"
 #include "matroska/KaxTag.h"
-#include "matroska/KaxTagMulti.h"
 #include "ebml/StdIOCallback.h"
 
 using namespace LIBMATROSKA_NAMESPACE;
@@ -656,6 +655,7 @@ int main(int argc, char **argv)
 #endif // TEST_REMOVE
                                                                                } else if (Targets[Index2]->Generic().GlobalId == KaxTagChapterUID::ClassInfos.GlobalId) {
                                                                                        printf("     Chapter UID\n");
+#if 0
                                                                                } else if (Targets[Index2]->Generic().GlobalId == KaxTagMultiComment::ClassInfos.GlobalId) {
                                                                                        printf("     Comment\n");
                                                                                        KaxTagMultiComment & Comment = *static_cast<KaxTagMultiComment *>(Targets[Index2]);
@@ -667,6 +667,7 @@ int main(int argc, char **argv)
                                                                                                }       
                                                                                        }
 //                                                                             } else if (Targets[Index2]->Generic().GlobalId == DummyRawElement::ClassInfos.GlobalId) {
+#endif
                                                                                }
                                                                        }
 #ifdef TEST_REMOVE
@@ -677,6 +678,7 @@ int main(int argc, char **argv)
                                                                                printf("    -- Done --\n");
                                                                        }
 #endif // TEST_REMOVE
+#if 0
                                                                } else if (TagElt[Index1]->Generic().GlobalId == KaxTagGeneral::ClassInfos.GlobalId) {
                                                                        printf("    General\n");
                                                                        KaxTagGeneral & General = *static_cast<KaxTagGeneral *>(TagElt[Index1]);
@@ -729,6 +731,7 @@ int main(int argc, char **argv)
                                                                                        printf("     Comment Name \"%s\"\n", std::string(CommentName).c_str());
                                                                                }       
                                                                        }
+#endif
                                                                }
                                                        }
                                                }