attachedpictureframe.h
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 #ifndef TAGLIB_ATTACHEDPICTUREFRAME_H
00023 #define TAGLIB_ATTACHEDPICTUREFRAME_H
00024
00025 #include <id3v2frame.h>
00026 #include <id3v2header.h>
00027
00028 namespace TagLib {
00029
00030 namespace ID3v2 {
00031
00033
00041 class AttachedPictureFrame : public Frame
00042 {
00043 friend class FrameFactory;
00044
00045 public:
00046
00050 enum Type {
00052 Other = 0x00,
00054 FileIcon = 0x01,
00056 OtherFileIcon = 0x02,
00058 FrontCover = 0x03,
00060 BackCover = 0x04,
00062 LeafletPage = 0x05,
00064 Media = 0x06,
00066 LeadArtist = 0x07,
00068 Artist = 0x08,
00070 Conductor = 0x09,
00072 Band = 0x0A,
00074 Composer = 0x0B,
00076 Lyricist = 0x0C,
00078 RecordingLocation = 0x0D,
00080 DuringRecording = 0x0E,
00082 DuringPerformance = 0x0F,
00084 MovieScreenCapture = 0x10,
00086 ColouredFish = 0x11,
00088 Illustration = 0x12,
00090 BandLogo = 0x13,
00092 PublisherLogo = 0x14
00093 };
00094
00099 AttachedPictureFrame();
00100
00104 explicit AttachedPictureFrame(const ByteVector &data);
00105
00109 virtual ~AttachedPictureFrame();
00110
00114 virtual String toString() const;
00115
00122 String::Type textEncoding() const;
00123
00129 void setTextEncoding(String::Type t);
00130
00135 String mimeType() const;
00136
00141 void setMimeType(const String &m);
00142
00149 Type type() const;
00150
00157 void setType(Type t);
00158
00168 ByteVector picture() const;
00169
00178 void setPicture(const ByteVector &p);
00179
00180 protected:
00181 virtual void parseFields(const ByteVector &data);
00182 virtual ByteVector renderFields() const;
00183
00184 private:
00185 AttachedPictureFrame(const ByteVector &data, Header *h);
00186 AttachedPictureFrame(const AttachedPictureFrame &);
00187 AttachedPictureFrame &operator=(const AttachedPictureFrame &);
00188
00189 class AttachedPictureFramePrivate;
00190 AttachedPictureFramePrivate *d;
00191 };
00192 }
00193 }
00194
00195 #endif