asftag.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_ASFTAG_H
00027 #define TAGLIB_ASFTAG_H
00028
00029 #include "tag.h"
00030 #include "tlist.h"
00031 #include "tmap.h"
00032 #include "taglib_export.h"
00033 #include "asfattribute.h"
00034
00035 namespace TagLib {
00036
00037 namespace ASF {
00038
00039 typedef List<Attribute> AttributeList;
00040 typedef Map<String, AttributeList> AttributeListMap;
00041
00042 class TAGLIB_EXPORT Tag : public TagLib::Tag {
00043
00044 friend class File;
00045
00046 public:
00047
00048 Tag();
00049
00050 virtual ~Tag();
00051
00055 virtual String title() const;
00056
00060 virtual String artist() const;
00061
00066 virtual String album() const;
00067
00071 virtual String comment() const;
00072
00077 virtual String genre() const;
00078
00082 virtual String rating() const;
00083
00088 virtual String copyright() const;
00089
00093 virtual uint year() const;
00094
00099 virtual uint track() const;
00100
00104 virtual void setTitle(const String &s);
00105
00109 virtual void setArtist(const String &s);
00110
00115 virtual void setAlbum(const String &s);
00116
00120 virtual void setComment(const String &s);
00121
00125 virtual void setRating(const String &s);
00126
00130 virtual void setCopyright(const String &s);
00131
00135 virtual void setGenre(const String &s);
00136
00140 virtual void setYear(uint i);
00141
00145 virtual void setTrack(uint i);
00146
00152 virtual bool isEmpty() const;
00153
00160 AttributeListMap &attributeListMap();
00161
00165 void removeItem(const String &name);
00166
00171 void setAttribute(const String &name, const Attribute &attribute);
00172
00177 void addAttribute(const String &name, const Attribute &attribute);
00178
00179 private:
00180
00181 class TagPrivate;
00182 TagPrivate *d;
00183 };
00184 }
00185 }
00186 #endif