commentsframe.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 #ifndef TAGLIB_COMMENTSFRAME_H
00027 #define TAGLIB_COMMENTSFRAME_H
00028
00029 #include "id3v2frame.h"
00030 #include "taglib_export.h"
00031
00032 namespace TagLib {
00033
00034 namespace ID3v2 {
00035
00037
00043 class TAGLIB_EXPORT CommentsFrame : public Frame
00044 {
00045 friend class FrameFactory;
00046
00047 public:
00052 explicit CommentsFrame(String::Type encoding = String::Latin1);
00053
00057 explicit CommentsFrame(const ByteVector &data);
00058
00062 virtual ~CommentsFrame();
00063
00069 virtual String toString() const;
00070
00079 ByteVector language() const;
00080
00088 String description() const;
00089
00095 String text() const;
00096
00104 void setLanguage(const ByteVector &languageCode);
00105
00111 void setDescription(const String &s);
00112
00118 virtual void setText(const String &s);
00119
00128 String::Type textEncoding() const;
00129
00137 void setTextEncoding(String::Type encoding);
00138
00146 static CommentsFrame *findByDescription(const Tag *tag, const String &d);
00147
00148 protected:
00149
00150
00151 virtual void parseFields(const ByteVector &data);
00152 virtual ByteVector renderFields() const;
00153
00154 private:
00158 CommentsFrame(const ByteVector &data, Header *h);
00159 CommentsFrame(const CommentsFrame &);
00160 CommentsFrame &operator=(const CommentsFrame &);
00161
00162 class CommentsFramePrivate;
00163 CommentsFramePrivate *d;
00164 };
00165
00166 }
00167 }
00168 #endif