libmusicbrainz3  3.0.2
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

◆ Metadata()

MusicBrainz::Metadata::Metadata ( )

◆ ~Metadata()

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

Member Function Documentation

◆ getArtist()

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

◆ getArtistResults() [1/2]

ArtistResultList& MusicBrainz::Metadata::getArtistResults ( )

Returns a artist result list.

Returns
a vector of pointers to ArtistResult objects

◆ getArtistResults() [2/2]

ArtistResultList MusicBrainz::Metadata::getArtistResults ( bool  remove)

◆ getLabel()

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

◆ getRelease()

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

◆ getReleaseResults() [1/2]

ReleaseResultList& MusicBrainz::Metadata::getReleaseResults ( )

Returns a release result list.

Returns
a vector of pointers to ReleaseResult objects

◆ getReleaseResults() [2/2]

ReleaseResultList MusicBrainz::Metadata::getReleaseResults ( bool  remove)

◆ getTrack()

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

◆ getTrackResults() [1/2]

TrackResultList& MusicBrainz::Metadata::getTrackResults ( )

Returns a track result list.

Returns
a vector of pointers to TrackResult objects

◆ getTrackResults() [2/2]

TrackResultList MusicBrainz::Metadata::getTrackResults ( bool  remove)

◆ getUserList() [1/2]

UserList& MusicBrainz::Metadata::getUserList ( )

Returns a list of users.

Returns
a vector of pointers to User objects
Note
This is a MusicBrainz extension.

◆ getUserList() [2/2]

UserList MusicBrainz::Metadata::getUserList ( bool  remove)

◆ setArtist()

void MusicBrainz::Metadata::setArtist ( Artist artist)

Sets the artist.

Parameters
artista pointer to Artist object, or NULL

◆ setLabel()

void MusicBrainz::Metadata::setLabel ( Label label)

Sets the label.

Parameters
labela pointer to Label object, or NULL

◆ setRelease()

void MusicBrainz::Metadata::setRelease ( Release release)

Sets the release.

Parameters
releasea pointer to Release object, or NULL

◆ setTrack()

void MusicBrainz::Metadata::setTrack ( Track track)

Sets the track.

Parameters
tracka pointer to Track object, or NULL