Tag Class Reference

#include <mp4tag.h>

List of all members.

Public Member Functions

virtual String album () const
virtual String artist () const
virtual uint bpm () const
virtual String comment () const
virtual int compilation () const
virtual String composer () const
virtual const ByteVector & cover () const
virtual uint disk () const
virtual String genre () const
virtual bool isEmpty () const
void readTags (MP4FileHandle mp4file)
virtual void setAlbum (const String &s)
virtual void setArtist (const String &s)
virtual void setBpm (uint i)
virtual void setComment (const String &s)
virtual void setCompilation (bool compilation)
virtual void setComposer (const String &s)
virtual void setCover (const ByteVector &i)
virtual void setDisk (uint i)
virtual void setGenre (const String &s)
virtual void setTitle (const String &s)
virtual void setTrack (uint i)
virtual void setYear (uint i)
 Tag ()
virtual String title () const
virtual uint track () const
virtual uint year () const
virtual ~Tag ()

Static Public Member Functions

static void duplicate (const Tag *source, Tag *target, bool overwrite=true)

Static Public Attributes

static const int Undefined = -1

Protected Attributes

String m_album
String m_artist
uint m_bpm
String m_comment
int m_compilation
String m_composer
uint m_disk
String m_genre
ByteVector m_image
String m_title
uint m_track
uint m_year


Detailed Description

This implements the generic TagLib::Tag API

Definition at line 34 of file mp4tag.h.


Constructor & Destructor Documentation

Tag (  ) 

Definition at line 30 of file mp4tag.cpp.

References Tag::m_album, Tag::m_artist, Tag::m_bpm, Tag::m_comment, Tag::m_compilation, Tag::m_composer, Tag::m_disk, Tag::m_genre, Tag::m_title, Tag::m_track, Tag::m_year, and Tag::Undefined.

~Tag (  )  [virtual]

Destroys this MP4Tag instance.

Definition at line 44 of file mp4tag.cpp.


Member Function Documentation

virtual String album (  )  const [inline, virtual]

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

Definition at line 67 of file mp4tag.h.

References Tag::m_album.

virtual String artist (  )  const [inline, virtual]

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

Definition at line 61 of file mp4tag.h.

References Tag::m_artist.

virtual uint bpm (  )  const [inline, virtual]

Returns the BPM (tempo); if there is no BPM, this will return 0.

Definition at line 107 of file mp4tag.h.

References Tag::m_bpm.

Referenced by File::save().

Here is the caller graph for this function:

virtual String comment (  )  const [inline, virtual]

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

Definition at line 73 of file mp4tag.h.

References Tag::m_comment.

virtual int compilation (  )  const [inline, virtual]

Returns whether this is part of a compilation; if this flag is not set, this will return the Undefined constant.

Definition at line 119 of file mp4tag.h.

References Tag::m_compilation.

Referenced by Tag::duplicate(), and File::save().

Here is the caller graph for this function:

virtual String composer (  )  const [inline, virtual]

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

Definition at line 85 of file mp4tag.h.

References Tag::m_composer.

virtual const ByteVector& cover (  )  const [inline, virtual]

Returns the embedded cover image; if there is no cover set, this will return an empty ByteVector.

Definition at line 113 of file mp4tag.h.

References Tag::m_image.

Referenced by Tag::duplicate(), and File::save().

Here is the caller graph for this function:

virtual uint disk (  )  const [inline, virtual]

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

Definition at line 102 of file mp4tag.h.

References Tag::m_disk.

void duplicate ( const Tag source,
Tag target,
bool  overwrite = true 
) [static]

Copies the generic data from one tag to another.

Note:
This will not 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.

Definition at line 62 of file mp4tag.cpp.

References Tag::compilation(), Tag::cover(), Tag::setCompilation(), Tag::setCover(), and Tag::Undefined.

Here is the call graph for this function:

virtual String genre (  )  const [inline, virtual]

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

Definition at line 79 of file mp4tag.h.

References Tag::m_genre.

bool 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.

Definition at line 47 of file mp4tag.cpp.

References Tag::m_album, Tag::m_artist, Tag::m_bpm, Tag::m_comment, Tag::m_compilation, Tag::m_composer, Tag::m_disk, Tag::m_genre, Tag::m_image, Tag::m_title, Tag::m_track, Tag::m_year, and Tag::Undefined.

void readTags ( MP4FileHandle  mp4file  ) 

read tags from the mp4 file.

Definition at line 73 of file mp4tag.cpp.

References Tag::m_album, Tag::m_artist, Tag::m_bpm, Tag::m_comment, Tag::m_compilation, Tag::m_composer, Tag::m_disk, Tag::m_genre, Tag::m_image, Tag::m_title, Tag::m_track, and Tag::m_year.

Referenced by File::read().

Here is the caller graph for this function:

virtual void setAlbum ( const String &  s  )  [inline, virtual]

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

Definition at line 137 of file mp4tag.h.

References Tag::m_album.

virtual void setArtist ( const String &  s  )  [inline, virtual]

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

Definition at line 131 of file mp4tag.h.

References Tag::m_artist.

virtual void setBpm ( uint  i  )  [inline, virtual]

Sets the BPM (tempo) to i. It i is 0 then this value will be cleared.

Definition at line 172 of file mp4tag.h.

References Tag::m_bpm.

virtual void setComment ( const String &  s  )  [inline, virtual]

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

Definition at line 143 of file mp4tag.h.

References Tag::m_comment.

virtual void setCompilation ( bool  compilation  )  [inline, virtual]

Sets whether this is part of a compilation.

Definition at line 177 of file mp4tag.h.

References Tag::m_compilation.

Referenced by Tag::duplicate().

Here is the caller graph for this function:

virtual void setComposer ( const String &  s  )  [inline, virtual]

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

Definition at line 183 of file mp4tag.h.

References Tag::m_composer.

virtual void setCover ( const ByteVector &  i  )  [inline, virtual]

Sets the embedded cover image to i. If i is empty then this value will be cleared.

Definition at line 189 of file mp4tag.h.

References Tag::m_image.

Referenced by Tag::duplicate().

Here is the caller graph for this function:

virtual void setDisk ( uint  i  )  [inline, virtual]

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

Definition at line 167 of file mp4tag.h.

References Tag::m_disk.

virtual void setGenre ( const String &  s  )  [inline, 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.

Definition at line 152 of file mp4tag.h.

References Tag::m_genre.

virtual void setTitle ( const String &  s  )  [inline, virtual]

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

Definition at line 125 of file mp4tag.h.

References Tag::m_title.

virtual void setTrack ( uint  i  )  [inline, virtual]

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

Definition at line 162 of file mp4tag.h.

References Tag::m_track.

virtual void setYear ( uint  i  )  [inline, virtual]

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

Definition at line 157 of file mp4tag.h.

References Tag::m_year.

virtual String title (  )  const [inline, virtual]

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

Definition at line 55 of file mp4tag.h.

References Tag::m_title.

virtual uint track (  )  const [inline, virtual]

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

Definition at line 96 of file mp4tag.h.

References Tag::m_track.

Referenced by File::save().

Here is the caller graph for this function:

virtual uint year (  )  const [inline, virtual]

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

Definition at line 90 of file mp4tag.h.

References Tag::m_year.

Referenced by File::save().

Here is the caller graph for this function:


Member Data Documentation

String m_album [protected]

Definition at line 214 of file mp4tag.h.

Referenced by Tag::album(), Tag::isEmpty(), Tag::readTags(), Tag::setAlbum(), and Tag::Tag().

String m_artist [protected]

Definition at line 213 of file mp4tag.h.

Referenced by Tag::artist(), Tag::isEmpty(), Tag::readTags(), Tag::setArtist(), and Tag::Tag().

uint m_bpm [protected]

Definition at line 221 of file mp4tag.h.

Referenced by Tag::bpm(), Tag::isEmpty(), Tag::readTags(), Tag::setBpm(), and Tag::Tag().

String m_comment [protected]

Definition at line 215 of file mp4tag.h.

Referenced by Tag::comment(), Tag::isEmpty(), Tag::readTags(), Tag::setComment(), and Tag::Tag().

int m_compilation [protected]

Definition at line 222 of file mp4tag.h.

Referenced by Tag::compilation(), Tag::isEmpty(), Tag::readTags(), Tag::setCompilation(), and Tag::Tag().

String m_composer [protected]

Definition at line 217 of file mp4tag.h.

Referenced by Tag::composer(), Tag::isEmpty(), Tag::readTags(), Tag::setComposer(), and Tag::Tag().

uint m_disk [protected]

Definition at line 220 of file mp4tag.h.

Referenced by Tag::disk(), Tag::isEmpty(), Tag::readTags(), Tag::setDisk(), and Tag::Tag().

String m_genre [protected]

Definition at line 216 of file mp4tag.h.

Referenced by Tag::genre(), Tag::isEmpty(), Tag::readTags(), Tag::setGenre(), and Tag::Tag().

ByteVector m_image [protected]

Definition at line 223 of file mp4tag.h.

Referenced by Tag::cover(), Tag::isEmpty(), Tag::readTags(), and Tag::setCover().

String m_title [protected]

Definition at line 212 of file mp4tag.h.

Referenced by Tag::isEmpty(), Tag::readTags(), Tag::setTitle(), Tag::Tag(), and Tag::title().

uint m_track [protected]

Definition at line 219 of file mp4tag.h.

Referenced by Tag::isEmpty(), Tag::readTags(), Tag::setTrack(), Tag::Tag(), and Tag::track().

uint m_year [protected]

Definition at line 218 of file mp4tag.h.

Referenced by Tag::isEmpty(), Tag::readTags(), Tag::setYear(), Tag::Tag(), and Tag::year().

const int Undefined = -1 [static]

Definition at line 37 of file mp4tag.h.

Referenced by Tag::duplicate(), Tag::isEmpty(), File::save(), and Tag::Tag().


The documentation for this class was generated from the following files:
Generated on Mon Aug 6 21:24:54 2007 for plai by  doxygen 1.5.1