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(
189 static MP4::AtomDataList parseData2(
190 const MP4::Atom *atom,
const ByteVector &data,
int expectedFlags = -1,
191 bool freeForm =
false);
193 const MP4::Atom *atom,
const ByteVector &bytes,
int expectedFlags = -1,
194 bool freeForm =
false);
195 static std::pair<String, Item> parseText(
196 const MP4::Atom *atom,
const ByteVector &bytes,
int expectedFlags = 1);
197 static std::pair<String, Item> parseFreeForm(
198 const MP4::Atom *atom,
const ByteVector &bytes);
199 static std::pair<String, Item> parseInt(
200 const MP4::Atom *atom,
const ByteVector &bytes);
201 static std::pair<String, Item> parseByte(
202 const MP4::Atom *atom,
const ByteVector &bytes);
203 static std::pair<String, Item> parseTextOrInt(
204 const MP4::Atom *atom,
const ByteVector &bytes);
205 static std::pair<String, Item> parseUInt(
206 const MP4::Atom *atom,
const ByteVector &bytes);
207 static std::pair<String, Item> parseLongLong(
208 const MP4::Atom *atom,
const ByteVector &bytes);
209 static std::pair<String, Item> parseGnre(
210 const MP4::Atom *atom,
const ByteVector &bytes);
211 static std::pair<String, Item> parseIntPair(
212 const MP4::Atom *atom,
const ByteVector &bytes);
213 static std::pair<String, Item> parseBool(
214 const MP4::Atom *atom,
const ByteVector &bytes);
215 static std::pair<String, Item> parseCovr(
216 const MP4::Atom *atom,
const ByteVector &data);
249 class ItemFactoryPrivate;
251 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:36
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