7 #include "../statusprovider.h" 8 #include "../genericfileelement.h" 10 #include <c++utilities/conversion/types.h> 20 class MatroskaContainer;
57 std::string idToString()
const;
58 bool isParent()
const;
59 bool isPadding()
const;
60 uint64 firstChildOffset()
const;
61 std::string readString();
62 uint64 readUInteger();
65 static byte calculateIdLength(identifierType
id);
66 static byte calculateSizeDenotationLength(uint64 size);
67 static byte makeId(identifierType
id,
char *buff);
68 static byte makeSizeDenotation(uint64 size,
char *buff);
69 static byte makeSizeDenotation(uint64 size,
char *buff, byte minBytes);
70 static byte calculateUIntegerLength(uint64 integer);
71 static byte makeUInteger(uint64 value,
char *buff);
72 static byte makeUInteger(uint64 value,
char *buff, byte minBytes);
73 static void makeSimpleElement(std::ostream &stream, identifierType
id, uint64 content);
74 static void makeSimpleElement(std::ostream &stream, identifierType
id,
const std::string &content);
84 std::string parsingContext()
const;
93 ss <<
"0x" << std::hex << id();
95 if(std::char_traits<char>::length(name)) {
96 ss <<
" \"" << name <<
"\"";
109 using namespace EbmlIds;
110 using namespace MatroskaIds;
143 return isParent() ? (idLength() + sizeLength()) : 0;
149 #endif // EBMLELEMENT_H
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.