| TagLib 1.13 |  |

Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
TagLib::RIFF::Info::Tag Class Reference

The main class in the ID3v2 implementation. More...

`#include <infotag.h>`

Inheritance diagram for TagLib::RIFF::Info::Tag:
[legend]
Collaboration diagram for TagLib::RIFF::Info::Tag:
[legend]

## Public Member Functions
| Tag ()
| Tag (const ByteVector &data)
virtual | ~Tag ()
virtual String | title () const
virtual String | artist () const
virtual String | album () const
virtual String | comment () const
virtual String | genre () const
virtual unsigned int | year () const
virtual unsigned int | track () const
virtual void | setTitle (const String &s)
virtual void | setArtist (const String &s)
virtual void | setAlbum (const String &s)
virtual void | setComment (const String &s)
virtual void | setGenre (const String &s)
virtual void | setYear (unsigned int i)
virtual void | setTrack (unsigned int i)
virtual bool | isEmpty () const
FieldListMap | fieldListMap () const
String | fieldText (const ByteVector &id) const
void | setFieldText (const ByteVector &id, const String &s)
void | removeField (const ByteVector &id)
ByteVector | render () const
Public Member Functions inherited from TagLib::Tag
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 | setStringHandler (const StringHandler *handler)
Static Public Member Functions inherited from TagLib::Tag
static void | duplicate (const Tag *source, Tag *target, bool overwrite=true)

## Protected Member Functions
void | parse (const ByteVector &data)
Protected Member Functions inherited from TagLib::Tag
| Tag ()

## Detailed Description

The main class in the ID3v2 implementation.

This is the main class in the INFO tag implementation. RIFF INFO tag is a metadata format found in WAV audio and AVI video files. Though it is a part of Microsoft/IBM's RIFF specification, the author could not find the official documents about it. So, this implementation is referring to unofficial documents online and some applications' behaviors especially Windows Explorer.

## Constructor & Destructor Documentation

## ◆ Tag() [1/2]

TagLib::RIFF::Info::Tag::Tag | ( |  | ) |

Constructs an empty INFO tag.

## ◆ Tag() [2/2]

TagLib::RIFF::Info::Tag::Tag | ( | const ByteVector & | data | ) |

Constructs an INFO tag read from data which is contents of "LIST" chunk.

## ◆ ~Tag()

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

Destroys this Tag instance.

Reimplemented from TagLib::Tag.

## Member Function Documentation

## ◆ album()

virtual String TagLib::RIFF::Info::Tag::album | ( |  | ) | const
| virtual

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

Implements TagLib::Tag.

## ◆ artist()

virtual String TagLib::RIFF::Info::Tag::artist | ( |  | ) | const
| virtual

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

Implements TagLib::Tag.

## ◆ comment()

virtual String TagLib::RIFF::Info::Tag::comment | ( |  | ) | const
| virtual

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

Implements TagLib::Tag.

## ◆ fieldListMap()

FieldListMap TagLib::RIFF::Info::Tag::fieldListMap | ( |  | ) | const

Returns a copy of the internal fields of the tag. The returned map directly reflects the contents of the "INFO" chunk.

Note
  Modifying this map does not affect the tag's internal data. Use setFieldText() and removeField() instead.

See also
  setFieldText()
  removeField()

## ◆ fieldText()

String TagLib::RIFF::Info::Tag::fieldText | ( | const ByteVector & | id | ) | const

## ◆ genre()

virtual String TagLib::RIFF::Info::Tag::genre | ( |  | ) | const
| virtual

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

Implements TagLib::Tag.

## ◆ isEmpty()

virtual bool TagLib::RIFF::Info::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 from TagLib::Tag.

## ◆ parse()

void TagLib::RIFF::Info::Tag::parse | ( | const ByteVector & | data | ) |
| protected

Pareses the body of the tag in data.

## ◆ removeField()

void TagLib::RIFF::Info::Tag::removeField | ( | const ByteVector & | id | ) |

## ◆ render()

ByteVector TagLib::RIFF::Info::Tag::render | ( |  | ) | const

Render the tag back to binary data, suitable to be written to disk.

Note
  Returns empty ByteVector is the tag contains no fields.

## ◆ setAlbum()

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

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

Implements TagLib::Tag.

## ◆ setArtist()

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

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

Implements TagLib::Tag.

## ◆ setComment()

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

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

Implements TagLib::Tag.

## ◆ setFieldText()

void TagLib::RIFF::Info::Tag::setFieldText | ( | const ByteVector & | id,
|  | const String & | s
| ) |  |

## ◆ setGenre()

virtual void TagLib::RIFF::Info::Tag::setGenre | ( | const String & | s | ) |
| 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.

Implements TagLib::Tag.

## ◆ setStringHandler()

static void TagLib::RIFF::Info::Tag::setStringHandler | ( | const StringHandler * | handler | ) |
| static

Sets the string handler that decides how the text data will be converted to and from binary data. If the parameter handler is null, the previous handler is released and default UTF-8 handler is restored.

Note
  The caller is responsible for deleting the previous handler as needed after it is released.

See also
  StringHandler

## ◆ setTitle()

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

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

Implements TagLib::Tag.

## ◆ setTrack()

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

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

Implements TagLib::Tag.

## ◆ setYear()

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

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

Implements TagLib::Tag.

## ◆ title()

virtual String TagLib::RIFF::Info::Tag::title | ( |  | ) | const
| virtual

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

Implements TagLib::Tag.

## ◆ track()

virtual unsigned int TagLib::RIFF::Info::Tag::track | ( |  | ) | const
| virtual

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

Implements TagLib::Tag.

## ◆ year()

virtual unsigned int TagLib::RIFF::Info::Tag::year | ( |  | ) | const
| virtual

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

Implements TagLib::Tag.

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

- infotag.h