| TagLib 1.13 |  |

Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
TagLib::Tag Class Referenceabstract

`#include <tag.h>`

Inheritance diagram for TagLib::Tag:
[legend]

## Public Member Functions
virtual | ~Tag ()
PropertyMap | properties () const
void | removeUnsupportedProperties (const StringList &properties)
PropertyMap | setProperties (const PropertyMap &properties)
virtual String | title () const =0
virtual String | artist () const =0
virtual String | album () const =0
virtual String | comment () const =0
virtual String | genre () const =0
virtual unsigned int | year () const =0
virtual unsigned int | track () const =0
virtual void | setTitle (const String &s)=0
virtual void | setArtist (const String &s)=0
virtual void | setAlbum (const String &s)=0
virtual void | setComment (const String &s)=0
virtual void | setGenre (const String &s)=0
virtual void | setYear (unsigned int i)=0
virtual void | setTrack (unsigned int i)=0
virtual bool | isEmpty () const

## Static Public Member Functions
static void | duplicate (const Tag *source, Tag *target, bool overwrite=true)

## Protected Member Functions
| Tag ()

## Constructor & Destructor Documentation

## ◆ ~Tag()

virtual TagLib::Tag::~Tag | ( |  | ) |
| virtual

Destroys this Tag instance.

Reimplemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, and TagLib::RIFF::Info::Tag.

## ◆ Tag()

TagLib::Tag::Tag | ( |  | ) |
| protected

Construct a Tag. This is protected since tags should only be instantiated through subclasses.

## Member Function Documentation

## ◆ album()

virtual String TagLib::Tag::album | ( |  | ) | const
| pure virtual

Returns the album name; if no album name is present in the tag String::null will be returned.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

## ◆ artist()

virtual String TagLib::Tag::artist | ( |  | ) | const
| pure virtual

Returns the artist name; if no artist name is present in the tag String::null will be returned.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

## ◆ comment()

virtual String TagLib::Tag::comment | ( |  | ) | const
| pure virtual

Returns the track comment; if no comment is present in the tag String::null will be returned.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

## ◆ duplicate()

static void TagLib::Tag::duplicate | ( | const Tag * | source,
|  | Tag * | target,
|  | bool | overwrite = `true`
| ) |  |
| static

Copies the generic data from one tag to another.

Note
  This will no affect any of the lower level details of the tag. For instance if any of the tag type specific data (maybe a URL for a band) is set, this will not modify or copy that. This just copies using the API in this class.

If overwrite is true then the values will be unconditionally copied. If false only empty values will be overwritten.

## ◆ genre()

virtual String TagLib::Tag::genre | ( |  | ) | const
| pure virtual

Returns the genre name; if no genre is present in the tag String::null will be returned.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

## ◆ isEmpty()

virtual bool TagLib::Tag::isEmpty | ( |  | ) | const
| virtual

Returns true if the tag does not contain any data. This should be reimplemented in subclasses that provide more than the basic tagging abilities in this class.

Reimplemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::MP4::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

## ◆ properties()

PropertyMap TagLib::Tag::properties | ( |  | ) | const

Exports the tags of the file as dictionary mapping (human readable) tag names (Strings) to StringLists of tag values. The default implementation in this class considers only the usual built-in tags (artist, album, ...) and only one value per key.

## ◆ removeUnsupportedProperties()

void TagLib::Tag::removeUnsupportedProperties | ( | const StringList & | properties | ) |

Removes unsupported properties, or a subset of them, from the tag. The parameter properties must contain only entries from properties().unsupportedData(). BIC: Will become virtual in future releases. Currently the non-virtual standard implementation of TagLib::Tag does nothing, since there are no unsupported elements.

## ◆ setAlbum()

virtual void TagLib::Tag::setAlbum | ( | const String & | s | ) |
| pure virtual

Sets the album to s. If s is String::null then this value will be cleared.

Implemented in TagLib::Mod::Tag, TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, TagLib::RIFF::Info::Tag, and TagLib::MP4::Tag.

## ◆ setArtist()

virtual void TagLib::Tag::setArtist | ( | const String & | s | ) |
| pure virtual

Sets the artist to s. If s is String::null then this value will be cleared.

Implemented in TagLib::Mod::Tag, TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, TagLib::RIFF::Info::Tag, and TagLib::MP4::Tag.

## ◆ setComment()

virtual void TagLib::Tag::setComment | ( | const String & | s | ) |
| pure virtual

Sets the comment to s. If s is String::null then this value will be cleared.

Implemented in TagLib::Mod::Tag, TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, TagLib::RIFF::Info::Tag, and TagLib::MP4::Tag.

## ◆ setGenre()

virtual void TagLib::Tag::setGenre | ( | const String & | s | ) |
| pure virtual

Sets the genre to s. If s is String::null then this value will be cleared. For tag formats that use a fixed set of genres, the appropriate value will be selected based on a string comparison. A list of available genres for those formats should be available in that type's implementation.

Implemented in TagLib::Mod::Tag, TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, TagLib::RIFF::Info::Tag, and TagLib::MP4::Tag.

## ◆ setProperties()

PropertyMap TagLib::Tag::setProperties | ( | const PropertyMap & | properties | ) |

Sets the tags of this File to those specified in properties. This default implementation sets only the tags for which setter methods exist in this class (artist, album, ...), and only one value per key; the rest will be contained in the returned PropertyMap.

## ◆ setTitle()

virtual void TagLib::Tag::setTitle | ( | const String & | s | ) |
| pure virtual

Sets the title to s. If s is String::null then this value will be cleared.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, TagLib::RIFF::Info::Tag, TagLib::Mod::Tag, and TagLib::MP4::Tag.

## ◆ setTrack()

virtual void TagLib::Tag::setTrack | ( | unsigned int | i | ) |
| pure virtual

Sets the track to i. If s is 0 then this value will be cleared.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, TagLib::RIFF::Info::Tag, TagLib::Mod::Tag, and TagLib::MP4::Tag.

## ◆ setYear()

virtual void TagLib::Tag::setYear | ( | unsigned int | i | ) |
| pure virtual

Sets the year to i. If s is 0 then this value will be cleared.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, TagLib::RIFF::Info::Tag, TagLib::MP4::Tag, and TagLib::Mod::Tag.

## ◆ title()

virtual String TagLib::Tag::title | ( |  | ) | const
| pure virtual

Returns the track name; if no track name is present in the tag String::null will be returned.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

## ◆ track()

virtual unsigned int TagLib::Tag::track | ( |  | ) | const
| pure virtual

Returns the track number; if there is no track number set, this will return 0.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

## ◆ year()

virtual unsigned int TagLib::Tag::year | ( |  | ) | const
| pure virtual

Returns the year; if there is no year set, this will return 0.

Implemented in TagLib::APE::Tag, TagLib::ASF::Tag, TagLib::Mod::Tag, TagLib::MP4::Tag, TagLib::ID3v1::Tag, TagLib::ID3v2::Tag, TagLib::Ogg::XiphComment, and TagLib::RIFF::Info::Tag.

The documentation for this class was generated from the following file:

- tag.h