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 void stripBom(
const char *&text,
size_t &length,
TagTextEncoding encoding);
129 std::unique_ptr<char[]> m_ptr;
130 std::string::size_type m_size;
133 std::string m_mimeType;
135 bool m_labeledAsReadonly;
146 m_labeledAsReadonly(false),
162 m_labeledAsReadonly(false),
165 assignText(text, textSize, textEncoding, convertTo);
178 m_labeledAsReadonly(false),
204 m_labeledAsReadonly(false),
205 m_encoding(encoding),
210 stripBom(data, m_size, encoding);
212 m_ptr = std::make_unique<char []>(m_size);
213 std::copy(data, data + m_size, m_ptr.get());
232 m_labeledAsReadonly(false),
233 m_encoding(encoding),
255 return !(*
this == other);
269 assignText(text.data(), text.size(), textEncoding, convertTo);
342 return m_ptr ==
nullptr || m_size == 0;
399 m_descEncoding = encoding;
454 return m_labeledAsReadonly;
467 m_labeledAsReadonly = value;
487 return m_descEncoding;
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.