libmusicbrainz3  3.0.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
MusicBrainz::Metadata Class Reference

Represents a parsed Music Metadata XML document. More...

Public Member Functions

 Metadata ()
 
virtual ~Metadata ()
 
ArtistgetArtist (bool remove=false)
 Returns the artist. More...
 
void setArtist (Artist *artist)
 Sets the artist. More...
 
ReleasegetRelease (bool remove=false)
 Returns the release. More...
 
void setRelease (Release *release)
 Sets the release. More...
 
TrackgetTrack (bool remove=false)
 Returns a track. More...
 
void setTrack (Track *track)
 Sets the track. More...
 
LabelgetLabel (bool remove=false)
 Returns the label. More...
 
void setLabel (Label *label)
 Sets the label. More...
 
UserListgetUserList ()
 Returns a list of users. More...
 
UserList getUserList (bool remove)
 
ArtistResultListgetArtistResults ()
 Returns a artist result list. More...
 
ArtistResultList getArtistResults (bool remove)
 
TrackResultListgetTrackResults ()
 Returns a track result list. More...
 
TrackResultList getTrackResults (bool remove)
 
ReleaseResultListgetReleaseResults ()
 Returns a release result list. More...
 
ReleaseResultList getReleaseResults (bool remove)
 

Detailed Description

Represents a parsed Music Metadata XML document.

The Music Metadata XML format is very flexible and may contain a diverse set of data (e.g. an artist, a release and a list of tracks), but usually only a small subset is used (either an artist, a release or a track, or a lists of objects from one class).

See also
MbXmlParser for reading

Constructor & Destructor Documentation

MusicBrainz::Metadata::Metadata ( )
virtual MusicBrainz::Metadata::~Metadata ( )
virtual

Member Function Documentation

Artist* MusicBrainz::Metadata::getArtist ( bool  remove = false)

Returns the artist.

Parameters
removeif set to true, the object will be removed from this Metadata instance and the caller is responsible for deleting it when it is no longer needed
Returns
a pointer to Artist object, or NULL
ArtistResultList& MusicBrainz::Metadata::getArtistResults ( )

Returns a artist result list.

Returns
a vector of pointers to ArtistResult objects
ArtistResultList MusicBrainz::Metadata::getArtistResults ( bool  remove)
Label* MusicBrainz::Metadata::getLabel ( bool  remove = false)

Returns the label.

Parameters
removeif set to true, the object will be removed from this Metadata instance and the caller is responsible for deleting it when it is no longer needed
Returns
a pointer to Label object, or NULL
Release* MusicBrainz::Metadata::getRelease ( bool  remove = false)

Returns the release.

Parameters
removeif set to true, the object will be removed from this Metadata instance and the caller is responsible for deleting it when it is no longer needed
Returns
a pointer to Release object, or NULL
ReleaseResultList& MusicBrainz::Metadata::getReleaseResults ( )

Returns a release result list.

Returns
a vector of pointers to ReleaseResult objects
ReleaseResultList MusicBrainz::Metadata::getReleaseResults ( bool  remove)
Track* MusicBrainz::Metadata::getTrack ( bool  remove = false)

Returns a track.

Parameters
removeif set to true, the object will be removed from this Metadata instance and the caller is responsible for deleting it when it is no longer needed
Returns
a pointer to Track object, or NULL
TrackResultList& MusicBrainz::Metadata::getTrackResults ( )

Returns a track result list.

Returns
a vector of pointers to TrackResult objects
TrackResultList MusicBrainz::Metadata::getTrackResults ( bool  remove)
UserList& MusicBrainz::Metadata::getUserList ( )

Returns a list of users.

Returns
a vector of pointers to User objects
Note
This is a MusicBrainz extension.
UserList MusicBrainz::Metadata::getUserList ( bool  remove)
void MusicBrainz::Metadata::setArtist ( Artist artist)

Sets the artist.

Parameters
artista pointer to Artist object, or NULL
void MusicBrainz::Metadata::setLabel ( Label label)

Sets the label.

Parameters
labela pointer to Label object, or NULL
void MusicBrainz::Metadata::setRelease ( Release release)

Sets the release.

Parameters
releasea pointer to Release object, or NULL
void MusicBrainz::Metadata::setTrack ( Track track)

Sets the track.

Parameters
tracka pointer to Track object, or NULL