1 #ifndef TAG_PARSER_MATROSKATAGFIELD_H 2 #define TAG_PARSER_MATROSKATAGFIELD_H 4 #include "../generictagfield.h" 9 class MatroskaTagField;
19 static bool supportsNestedFields();
34 void make(std::ostream &stream)
const;
36 uint64 requiredSize()
const;
43 std::string m_stringValue;
44 uint64 m_simpleTagSize;
46 std::vector<MatroskaTagFieldMaker> m_nestedMaker;
75 bool isAdditionalTypeInfoUsed()
const;
76 bool supportsNestedFields()
const;
78 static typename std::string fieldIdFromString(
const char *idString, std::size_t idStringSize = std::string::npos);
79 static std::string fieldIdToString(
const std::string &
id);
107 return idStringSize != std::string::npos ? std::string(idString, idStringSize) : std::string(idString);
122 inline void MatroskaTagField::reset()
128 #endif // TAG_PARSER_MATROSKATAGFIELD_H uint64 requiredSize() const
Returns number of bytes which will be written when making the field.
bool isAdditionalTypeInfoUsed() const
Returns whether the additional type info is used.
bool supportsNestedFields() const
Returns whether nested fields are supported.
std::string IdentifierType
const MatroskaTagField & field() const
Returns the associated field.
static std::string fieldIdFromString(const char *idString, std::size_t idStringSize=std::string::npos)
Converts the specified ID string representation to an actual ID.
The TagField class is used by FieldMapBasedTag to store the fields.
const IdentifierType & id() const
Returns the id of the current TagField.
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
static std::string fieldIdToString(const std::string &id)
Returns the string representation for the specified id.