| TagLib 1.13 |  |

asftag.h
Go to the documentation of this file.
1/**************************************************************************
2 copyright : (C) 2005-2007 by Lukáš Lalinský
3 email : lalinsky@gmail.com
4 **************************************************************************/
5
6/***************************************************************************
7 * This library is free software; you can redistribute it and/or modify *
8 * it under the terms of the GNU Lesser General Public License version *
9 * 2.1 as published by the Free Software Foundation. *
10 * *
11 * This library is distributed in the hope that it will be useful, but *
12 * WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
14 * Lesser General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU Lesser General Public *
17 * License along with this library; if not, write to the Free Software *
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA *
19 * 02110-1301 USA *
20 * *
21 * Alternatively, this file is available under the Mozilla Public *
22 * License Version 1.1. You may obtain a copy of the License at *
23 * http://www.mozilla.org/MPL/ *
24 ***************************************************************************/
25
26#ifndef TAGLIB_ASFTAG_H
27#define TAGLIB_ASFTAG_H
28
29#include "tag.h"
30#include "tlist.h"
31#include "tmap.h"
32#include "taglib_export.h"
33#include "asfattribute.h"
34
35 namespace TagLib {
36
37 namespace ASF {
38
39 typedef List<Attribute> AttributeList;
40 typedef Map<String, AttributeList> AttributeListMap;
41
42 class TAGLIB_EXPORT Tag : public TagLib::Tag {
43
44 friend class File;
45
46 public:
47
48 Tag();
49
50 virtual ~Tag();
51
55 virtual String title() const;
56
60 virtual String artist() const;
61
66 virtual String album() const;
67
71 virtual String comment() const;
72
77 virtual String genre() const;
78
82 virtual String rating() const;
83
88 virtual String copyright() const;
89
93 virtual unsigned int year() const;
94
99 virtual unsigned int track() const;
100
104 virtual void setTitle(const String &s);
105
109 virtual void setArtist(const String &s);
110
115 virtual void setAlbum(const String &s);
116
120 virtual void setComment(const String &s);
121
125 virtual void setRating(const String &s);
126
130 virtual void setCopyright(const String &s);
131
135 virtual void setGenre(const String &s);
136
140 virtual void setYear(unsigned int i);
141
145 virtual void setTrack(unsigned int i);
146
152 virtual bool isEmpty() const;
153
158 AttributeListMap &attributeListMap();
159
164 // BIC: return by value
165 const AttributeListMap &attributeListMap() const;
166
170 bool contains(const String &name) const;
171
175 void removeItem(const String &name);
176
181 AttributeList attribute(const String &name) const;
182
187 void setAttribute(const String &name, const Attribute &attribute);
188
192 void setAttribute(const String &name, const AttributeList &values);
193
198 void addAttribute(const String &name, const Attribute &attribute);
199
200 PropertyMap properties() const;
201 void removeUnsupportedProperties(const StringList& properties);
202 PropertyMap setProperties(const PropertyMap &properties);
203
204 private:
205
206 class TagPrivate;
207 TagPrivate *d;
208 };
209 }
210}
211#endif
asfattribute.h
TagLib::ASF::Attribute
Definition: asfattribute.h:44
TagLib::ASF::File
Definition: asffile.h:47
TagLib::ASF::Tag
Definition: asftag.h:42
TagLib::ASF::Tag::attribute
AttributeList attribute(const String &name) const
TagLib::ASF::Tag::album
virtual String album() const
TagLib::ASF::Tag::removeUnsupportedProperties
void removeUnsupportedProperties(const StringList &properties)
TagLib::ASF::Tag::rating
virtual String rating() const
TagLib::ASF::Tag::setTrack
virtual void setTrack(unsigned int i)
TagLib::ASF::Tag::setProperties
PropertyMap setProperties(const PropertyMap &properties)
TagLib::ASF::Tag::setYear
virtual void setYear(unsigned int i)
TagLib::ASF::Tag::properties
PropertyMap properties() const
TagLib::ASF::Tag::year
virtual unsigned int year() const
TagLib::ASF::Tag::addAttribute
void addAttribute(const String &name, const Attribute &attribute)
TagLib::ASF::Tag::setAttribute
void setAttribute(const String &name, const AttributeList &values)
TagLib::ASF::Tag::genre
virtual String genre() const
TagLib::ASF::Tag::removeItem
void removeItem(const String &name)
TagLib::ASF::Tag::track
virtual unsigned int track() const
TagLib::ASF::Tag::~Tag
virtual ~Tag()
TagLib::ASF::Tag::attributeListMap
const AttributeListMap & attributeListMap() const
TagLib::ASF::Tag::setAttribute
void setAttribute(const String &name, const Attribute &attribute)
TagLib::ASF::Tag::isEmpty
virtual bool isEmpty() const
TagLib::ASF::Tag::Tag
Tag()
TagLib::ASF::Tag::setRating
virtual void setRating(const String &s)
TagLib::ASF::Tag::artist
virtual String artist() const
TagLib::ASF::Tag::attributeListMap
AttributeListMap & attributeListMap()
TagLib::ASF::Tag::setGenre
virtual void setGenre(const String &s)
TagLib::ASF::Tag::setAlbum
virtual void setAlbum(const String &s)
TagLib::ASF::Tag::copyright
virtual String copyright() const
TagLib::ASF::Tag::setArtist
virtual void setArtist(const String &s)
TagLib::ASF::Tag::setComment
virtual void setComment(const String &s)
TagLib::ASF::Tag::setTitle
virtual void setTitle(const String &s)
TagLib::ASF::Tag::contains
bool contains(const String &name) const
TagLib::ASF::Tag::comment
virtual String comment() const
TagLib::ASF::Tag::setCopyright
virtual void setCopyright(const String &s)
TagLib::ASF::Tag::title
virtual String title() const
TagLib::List
A generic, implicitly shared list.
Definition: tlist.h:54
TagLib::Map
A generic, implicitly shared map.
Definition: tmap.h:44
TagLib::PropertyMap
A map for format-independent <key,valuelist> tag representations.
Definition: tpropertymap.h:119
TagLib::StringList
A list of strings.
Definition: tstringlist.h:46
TagLib::String
A wide string class suitable for unicode.
Definition: tstring.h:85
TagLib::Tag
Definition: tag.h:47
TagLib::ASF::AttributeList
List< Attribute > AttributeList
Definition: asftag.h:39
TagLib::ASF::AttributeListMap
Map< String, AttributeList > AttributeListMap
Definition: asftag.h:40
TagLib
A namespace for all TagLib related classes and functions.
Definition: apefile.h:41
tag.h
taglib_export.h
TAGLIB_EXPORT
#define TAGLIB_EXPORT
Definition: taglib_export.h:40
tlist.h
tmap.h