Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef TAGLIB_MP4ITEM_H
00027 #define TAGLIB_MP4ITEM_H
00028
00029 #include "tstringlist.h"
00030 #include "mp4coverart.h"
00031 #include "taglib_export.h"
00032
00033 namespace TagLib {
00034
00035 namespace MP4 {
00036
00037 class TAGLIB_EXPORT Item
00038 {
00039 public:
00040 struct IntPair {
00041 int first, second;
00042 };
00043
00044 Item();
00045 Item(const Item &item);
00046 Item &operator=(const Item &item);
00047 ~Item();
00048
00049 Item(int value);
00050 Item(uchar value);
00051 Item(uint value);
00052 Item(long long value);
00053 Item(bool value);
00054 Item(int first, int second);
00055 Item(const StringList &value);
00056 Item(const ByteVectorList &value);
00057 Item(const CoverArtList &value);
00058
00059 void setAtomDataType(AtomDataType type);
00060 AtomDataType atomDataType() const;
00061
00062 int toInt() const;
00063 uchar toByte() const;
00064 uint toUInt() const;
00065 long long toLongLong() const;
00066 bool toBool() const;
00067 IntPair toIntPair() const;
00068 StringList toStringList() const;
00069 ByteVectorList toByteVectorList() const;
00070 CoverArtList toCoverArtList() const;
00071
00072 bool isValid() const;
00073
00074 private:
00075 class ItemPrivate;
00076 ItemPrivate *d;
00077 };
00078
00079 }
00080
00081 }
00082
00083 #endif