modtag.h
Go to the documentation of this file.
00001 /***************************************************************************
00002     copyright           : (C) 2011 by Mathias Panzenböck
00003     email               : grosser.meister.morti@gmx.net
00004  ***************************************************************************/
00005 
00006 /***************************************************************************
00007  *   This library is free software; you can redistribute it and/or modify  *
00008  *   it  under the terms of the GNU Lesser General Public License version  *
00009  *   2.1 as published by the Free Software Foundation.                     *
00010  *                                                                         *
00011  *   This library is distributed in the hope that it will be useful, but   *
00012  *   WITHOUT ANY WARRANTY; without even the implied warranty of            *
00013  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
00014  *   Lesser General Public License for more details.                       *
00015  *                                                                         *
00016  *   You should have received a copy of the GNU Lesser General Public      *
00017  *   License along with this library; if not, write to the Free Software   *
00018  *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,            *
00019  *   MA  02110-1301  USA                                                   *
00020  ***************************************************************************/
00021 
00022 #ifndef TAGLIB_MODTAG_H
00023 #define TAGLIB_MODTAG_H
00024 
00025 #include "tag.h"
00026 
00027 namespace TagLib {
00028 
00029   namespace Mod {
00030 
00043     class TAGLIB_EXPORT Tag : public TagLib::Tag
00044     {
00045     public:
00046       Tag();
00047       virtual ~Tag();
00048 
00053       String title() const;
00054 
00058       String artist() const;
00059 
00063       String album() const;
00064 
00070       String comment() const;
00071 
00075       String genre() const;
00076 
00080       uint year() const;
00081 
00085       uint track() const;
00086 
00094       String trackerName() const;
00095 
00104       void setTitle(const String &title);
00105 
00109       void setArtist(const String &artist);
00110 
00114       void setAlbum(const String &album);
00115 
00133       void setComment(const String &comment);
00134 
00138       void setGenre(const String &genre);
00139 
00143       void setYear(uint year);
00144 
00148       void setTrack(uint track);
00149 
00160       void setTrackerName(const String &trackerName);
00161 
00166       PropertyMap properties() const;
00167 
00176       PropertyMap setProperties(const PropertyMap &);
00177 
00178     private:
00179       Tag(const Tag &);
00180       Tag &operator=(const Tag &);
00181 
00182       class TagPrivate;
00183       TagPrivate *d;
00184     };
00185 
00186   }
00187 
00188 }
00189 
00190 #endif