urllinkframe.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
00023
00024
00025
00026
00027
00028 #ifndef TAGLIB_URLLINKFRAME_H
00029 #define TAGLIB_URLLINKFRAME_H
00030
00031 #include "id3v2frame.h"
00032
00033 namespace TagLib {
00034
00035 namespace ID3v2 {
00036
00038
00041 class TAGLIB_EXPORT UrlLinkFrame : public Frame
00042 {
00043 friend class FrameFactory;
00044
00045 public:
00050 explicit UrlLinkFrame(const ByteVector &data);
00051
00055 virtual ~UrlLinkFrame();
00056
00060 virtual String url() const;
00061
00065 virtual void setUrl(const String &s);
00066
00067
00068
00069 virtual void setText(const String &s);
00070 virtual String toString() const;
00071
00072 protected:
00073 virtual void parseFields(const ByteVector &data);
00074 virtual ByteVector renderFields() const;
00075
00079 UrlLinkFrame(const ByteVector &data, Header *h);
00080
00081 private:
00082 UrlLinkFrame(const UrlLinkFrame &);
00083 UrlLinkFrame &operator=(const UrlLinkFrame &);
00084
00085 class UrlLinkFramePrivate;
00086 UrlLinkFramePrivate *d;
00087 };
00088
00090
00098 class TAGLIB_EXPORT UserUrlLinkFrame : public UrlLinkFrame
00099 {
00100 friend class FrameFactory;
00101
00102 public:
00107 explicit UserUrlLinkFrame(String::Type encoding = String::Latin1);
00108
00113 explicit UserUrlLinkFrame(const ByteVector &data);
00114
00118 virtual ~UserUrlLinkFrame();
00119
00120
00121
00122 virtual String toString() const;
00123
00132 String::Type textEncoding() const;
00133
00141 void setTextEncoding(String::Type encoding);
00142
00146 String description() const;
00147
00151 void setDescription(const String &s);
00152
00153 protected:
00154 virtual void parseFields(const ByteVector &data);
00155 virtual ByteVector renderFields() const;
00156
00160 UserUrlLinkFrame(const ByteVector &data, Header *h);
00161
00162 private:
00163 UserUrlLinkFrame(const UserUrlLinkFrame &);
00164 UserUrlLinkFrame &operator=(const UserUrlLinkFrame &);
00165
00166 class UserUrlLinkFramePrivate;
00167 UserUrlLinkFramePrivate *d;
00168 };
00169
00170 }
00171 }
00172 #endif