6 #include <c++utilities/conversion/binaryconversion.h> 7 #include <c++utilities/chrono/timespan.h> 8 #include <c++utilities/chrono/datetime.h> 88 void clearDataAndMetadata();
94 int32 toInteger()
const;
95 int toStandardGenreIndex()
const;
99 size_t dataSize()
const;
100 char *dataPointer()
const;
103 const std::string &mimeType()
const;
104 void setMimeType(
const std::string &value);
105 const std::string &
language()
const;
106 void setLanguage(
const std::string &value);
107 bool isLabeledAsReadonly()
const;
108 void setReadonly(
bool value);
111 void convertDataEncodingForTag(
const Tag *tag);
117 void assignInteger(
int value);
118 void assignStandardGenreIndex(
int index);
127 std::unique_ptr<char[]> m_ptr;
128 std::string::size_type m_size;
131 std::string m_mimeType;
133 bool m_labeledAsReadonly;
144 m_labeledAsReadonly(false),
159 m_labeledAsReadonly(false),
162 assignText(text, textSize, textEncoding, convertTo);
174 m_labeledAsReadonly(false),
199 m_labeledAsReadonly(false),
200 m_encoding(encoding),
204 m_ptr = std::make_unique<char []>(m_size);
205 std::copy(data, data + length, m_ptr.get());
223 m_labeledAsReadonly(false),
224 m_encoding(encoding),
246 return !(*
this == other);
259 assignText(text.data(), text.size(), textEncoding, convertTo);
332 return m_ptr ==
nullptr || m_size == 0;
389 m_descEncoding = encoding;
444 return m_labeledAsReadonly;
457 m_labeledAsReadonly = value;
477 return m_descEncoding;
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.