The main class in the ID3v1 implementation. More...
#include <id3v1tag.h>
Public Member Functions | |
Tag () | |
Tag (File *file, offset_t tagOffset) | |
~Tag () override | |
Tag (const Tag &)=delete | |
Tag & | operator= (const Tag &)=delete |
ByteVector | render () const |
String | title () const override |
String | artist () const override |
String | album () const override |
String | comment () const override |
String | genre () const override |
unsigned int | year () const override |
unsigned int | track () const override |
void | setTitle (const String &s) override |
void | setArtist (const String &s) override |
void | setAlbum (const String &s) override |
void | setComment (const String &s) override |
void | setGenre (const String &s) override |
void | setYear (unsigned int i) override |
void | setTrack (unsigned int i) override |
unsigned int | genreNumber () const |
void | setGenreNumber (unsigned int i) |
Public Member Functions inherited from TagLib::Tag | |
virtual | ~Tag () |
Tag (const Tag &)=delete | |
Tag & | operator= (const Tag &)=delete |
virtual PropertyMap | properties () const |
virtual void | removeUnsupportedProperties (const StringList &properties) |
virtual PropertyMap | setProperties (const PropertyMap &origProps) |
virtual StringList | complexPropertyKeys () const |
virtual List< VariantMap > | complexProperties (const String &key) const |
virtual bool | setComplexProperties (const String &key, const List< VariantMap > &value) |
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 ByteVector | fileIdentifier () |
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) |
static String | joinTagValues (const StringList &values) |
Protected Member Functions | |
void | read () |
void | parse (const ByteVector &data) |
Protected Member Functions inherited from TagLib::Tag | |
Tag () | |
The main class in the ID3v1 implementation.
This is an implementation of the ID3v1 format. ID3v1 is both the simplest and most common of tag formats but is rather limited. Because of its pervasiveness and the way that applications have been written around the fields that it provides, the generic TagLib::Tag API is a mirror of what is provided by ID3v1.
ID3v1 tags should generally only contain Latin1 information. However because many applications do not follow this rule there is now support for overriding the ID3v1 string handling using the ID3v1::StringHandler class. Please see the documentation for that class for more information.
TagLib::ID3v1::Tag::Tag | ( | ) |
Create an ID3v1 tag with default values.
Create an ID3v1 tag and parse the data in file starting at tagOffset.
|
overridevirtual |
Destroys this Tag instance.
Reimplemented from TagLib::Tag.
|
delete |
|
overridevirtual |
Returns the album name; if no album name is present in the tag an empty string will be returned.
Implements TagLib::Tag.
|
overridevirtual |
Returns the artist name; if no artist name is present in the tag an empty string will be returned.
Implements TagLib::Tag.
|
overridevirtual |
Returns the track comment; if no comment is present in the tag an empty string will be returned.
Implements TagLib::Tag.
|
static |
Returns the string "TAG" suitable for usage in locating the tag in a file.
|
overridevirtual |
Returns the genre name; if no genre is present in the tag an empty string will be returned.
Implements TagLib::Tag.
unsigned int TagLib::ID3v1::Tag::genreNumber | ( | ) | const |
Returns the genre in number.
|
protected |
Parses the body of the tag in data.
|
protected |
Reads from the file specified in the constructor.
ByteVector TagLib::ID3v1::Tag::render | ( | ) | const |
Renders the in memory values to a ByteVector suitable for writing to the file.
|
overridevirtual |
Sets the album to s. If s is an empty string then this value will be cleared.
Implements TagLib::Tag.
|
overridevirtual |
Sets the artist to s. If s is an empty string then this value will be cleared.
Implements TagLib::Tag.
|
overridevirtual |
Sets the comment to s. If s is an empty string then this value will be cleared.
Implements TagLib::Tag.
|
overridevirtual |
Sets the genre to s. If s is an empty string 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.
void TagLib::ID3v1::Tag::setGenreNumber | ( | unsigned int | i | ) |
Sets the genre in number to i.
|
static |
Sets the string handler that decides how the ID3v1 data will be converted to and from binary data. If the parameter handler is null, the previous handler is released and default ISO-8859-1 handler is restored.
|
overridevirtual |
Sets the title to s. If s is an empty string then this value will be cleared.
Implements TagLib::Tag.
|
overridevirtual |
Sets the track to i. If s is 0 then this value will be cleared.
Implements TagLib::Tag.
|
overridevirtual |
Sets the year to i. If s is 0 then this value will be cleared.
Implements TagLib::Tag.
|
overridevirtual |
Returns the track name; if no track name is present in the tag an empty string will be returned.
Implements TagLib::Tag.
|
overridevirtual |
Returns the track number; if there is no track number set, this will return 0.
Implements TagLib::Tag.
|
overridevirtual |
Returns the year; if there is no year set, this will return 0.
Implements TagLib::Tag.