26 #ifndef TAGLIB_MP4ITEMFACTORY_H 27 #define TAGLIB_MP4ITEMFACTORY_H 83 virtual std::pair<String, Item> parseItem(
84 const Atom *atom,
const ByteVector &data)
const;
92 const String &itemName,
const Item &item)
const;
99 virtual std::pair<ByteVector, Item> itemFromProperty(
108 virtual std::pair<String, StringList> itemToProperty(
190 static MP4::AtomDataList parseData2(
191 const MP4::Atom *atom,
const ByteVector &data,
int expectedFlags = -1,
192 bool freeForm =
false);
194 const MP4::Atom *atom,
const ByteVector &bytes,
int expectedFlags = -1,
195 bool freeForm =
false);
196 static std::pair<String, Item> parseText(
197 const MP4::Atom *atom,
const ByteVector &bytes,
int expectedFlags = 1);
198 static std::pair<String, Item> parseFreeForm(
199 const MP4::Atom *atom,
const ByteVector &bytes);
200 static std::pair<String, Item> parseInt(
201 const MP4::Atom *atom,
const ByteVector &bytes);
202 static std::pair<String, Item> parseByte(
203 const MP4::Atom *atom,
const ByteVector &bytes);
204 static std::pair<String, Item> parseTextOrInt(
205 const MP4::Atom *atom,
const ByteVector &bytes);
206 static std::pair<String, Item> parseUInt(
207 const MP4::Atom *atom,
const ByteVector &bytes);
208 static std::pair<String, Item> parseLongLong(
209 const MP4::Atom *atom,
const ByteVector &bytes);
210 static std::pair<String, Item> parseGnre(
211 const MP4::Atom *atom,
const ByteVector &bytes);
212 static std::pair<String, Item> parseIntPair(
213 const MP4::Atom *atom,
const ByteVector &bytes);
214 static std::pair<String, Item> parseBool(
215 const MP4::Atom *atom,
const ByteVector &bytes);
216 static std::pair<String, Item> parseCovr(
217 const MP4::Atom *atom,
const ByteVector &data);
218 static std::pair<String, Item> parseStem(
219 const MP4::Atom *atom,
const ByteVector &data);
254 class ItemFactoryPrivate;
256 std::unique_ptr<ItemFactoryPrivate> d;
A list of ByteVectors.
Definition: tbytevectorlist.h:41
A wide string class suitable for unicode.
Definition: tstring.h:82
A byte vector.
Definition: tbytevector.h:45
#define TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
Definition: taglib_export.h:55
A generic, implicitly shared map.
Definition: tmap.h:44
MP4 item.
Definition: mp4item.h:37
A list of strings.
Definition: tstringlist.h:43
ItemHandlerType
Definition: mp4itemfactory.h:132
#define TAGLIB_EXPORT
Definition: taglib_export.h:40
A factory for creating MP4 items during parsing.
Definition: mp4itemfactory.h:69
A namespace for all TagLib related classes and functions.
Definition: apefile.h:41