libmusicbrainz3 3.0.3
MusicBrainz::Artist Class Reference

Represents an artist. More...

Inheritance diagram for MusicBrainz::Artist:
MusicBrainz::Entity

List of all members.

Public Member Functions

 Artist (const std::string &id="", const std::string &type="", const std::string &name="", const std::string &sortName="")
 Constructor.
virtual ~Artist ()
 Destructor.
std::string getType () const
 Returns the artist's type.
void setType (const std::string &type)
 Sets the artist's type.
std::string getName () const
 Returns the artist's name.
void setName (const std::string &name)
 Sets the artist's name.
std::string getSortName () const
 Returns the artist's sort name.
void setSortName (const std::string &sortName)
 Sets the artist's sort name.
std::string getDisambiguation () const
 Returns the disambiguation attribute.
void setDisambiguation (const std::string &disambiguation)
 Sets the disambiguation attribute.
std::string getUniqueName () const
 Returns a unique artist name (using disambiguation).
std::string getBeginDate () const
 Returns the birth/foundation date.
void setBeginDate (const std::string &dateStr)
 Sets the begin/foundation date.
std::string getEndDate () const
 Get the death/dissolving date.
void setEndDate (const std::string &dateStr)
 Sets the death/dissolving date.
ReleaseListgetReleases ()
 Returns a list of releases from this artist.
int getNumReleases () const
 Returns number of releases.
ReleasegetRelease (int index)
 Returns an release specified by index.
void addRelease (Release *release)
 Adds a release to this artist's list of releases.
int getReleasesOffset () const
 Returns the offset of the release list.
void setReleasesOffset (const int offset)
 Sets the offset of the release list.
int getReleasesCount () const
 Returns the number of existing releases.
void setReleasesCount (const int count)
 Sets the count of the release list.
ArtistAliasListgetAliases ()
 Returns the list of aliases for this artist.
int getNumAliases () const
 Returns number of aliases.
ArtistAliasgetAlias (int index)
 Returns alias specified by index.
void addAlias (ArtistAlias *alias)
 Adds an alias for this artist.

Static Public Attributes

static const std::string TYPE_PERSON
static const std::string TYPE_GROUP

Detailed Description

Represents an artist.

Artists in MusicBrainz can have a type. Currently, this type can be either Person or Group for which the following URIs are assigned:

  • "http://musicbrainz.org/ns/mmd-1.0#Person"
  • "http://musicbrainz.org/ns/mmd-1.0#Group"

Use the Artist::TYPE_PERSON and Artist::TYPE_GROUP constants for comparison.


Constructor & Destructor Documentation

MusicBrainz::Artist::Artist ( const std::string &  id = "",
const std::string &  type = "",
const std::string &  name = "",
const std::string &  sortName = "" 
)

Constructor.

Parameters:
ida string containing an absolute URI
typea string containing an absolute URI
namea string containing the artist's name
sortNamea string containing the artist's sort name
virtual MusicBrainz::Artist::~Artist ( ) [virtual]

Destructor.


Member Function Documentation

void MusicBrainz::Artist::addAlias ( ArtistAlias alias)

Adds an alias for this artist.

Parameters:
aliasa pointer to ArtistAlias object
void MusicBrainz::Artist::addRelease ( Release release)

Adds a release to this artist's list of releases.

Parameters:
releasea pointer to Release object
ArtistAlias* MusicBrainz::Artist::getAlias ( int  index)

Returns alias specified by index.

This is equivalent to getAliases()[index]

Returns:
a pointer to ArtistAlias instance
See also:
getAliases
ArtistAliasList& MusicBrainz::Artist::getAliases ( )

Returns the list of aliases for this artist.

Returns:
a list of pointers to ArtistAlias objects
std::string MusicBrainz::Artist::getBeginDate ( ) const

Returns the birth/foundation date.

The definition of the begin date depends on the artist's type. For persons, this is the day of birth, for groups it is the day the group was founded.

The returned date has the format "YYYY", "YYYY-MM", or "YYYY-MM-DD", depending on how much detail is known.

Returns:
a string containing the date
See also:
getType
std::string MusicBrainz::Artist::getDisambiguation ( ) const

Returns the disambiguation attribute.

This attribute may be used if there is more than one artist with the same name. In this case, disambiguation attributes are added to the artists' names to keep them apart.

For example, there are at least three bands named 'Vixen'. Each band has a different disambiguation in the MusicBrainz database, like 'Hip-hop' or 'all-female rock/glam band'.

Returns:
a disambiguation string
See also:
getUniqueName
std::string MusicBrainz::Artist::getEndDate ( ) const

Get the death/dissolving date.

The definition of the end date depends on the artist's type. For persons, this is the day of death, for groups it is the day the group was dissolved.

Returns:
a string containing a date
See also:
getBeginDate
std::string MusicBrainz::Artist::getName ( ) const

Returns the artist's name.

Returns:
a string containing the artist's name, or empty string
int MusicBrainz::Artist::getNumAliases ( ) const

Returns number of aliases.

This is equivalent to getAliases().size()

Returns:
an int containing number of aliases
See also:
getAliases
int MusicBrainz::Artist::getNumReleases ( ) const

Returns number of releases.

This is equivalent to getReleases().size()

Returns:
an int containing number of releases
See also:
getReleases
Release* MusicBrainz::Artist::getRelease ( int  index)

Returns an release specified by index.

This is equivalent to getReleases()[index]

Returns:
a pointer to Release instance
See also:
getReleases
ReleaseList& MusicBrainz::Artist::getReleases ( )

Returns a list of releases from this artist.

This may also include releases where this artist isn't the main artist but has just contributed one or more tracks (aka VA-Releases).

Returns:
: a list of pointers to Release objects
int MusicBrainz::Artist::getReleasesCount ( ) const

Returns the number of existing releases.

This may or may not match with the number of elements that getReleases and getNumReleases returns. If the count is higher than the list, it indicates that the list is incomplete.

Returns:
an integer containing the count
See also:
getReleases
int MusicBrainz::Artist::getReleasesOffset ( ) const

Returns the offset of the release list.

This is used if the track list is incomplete (ie. the web service only returned part of the tracks on this release). Note that the offset value is zero-based, which means track 0 is the first track.

Returns:
an integer containing the offset
See also:
getReleases
std::string MusicBrainz::Artist::getSortName ( ) const

Returns the artist's sort name.

The sort name is the artist's name in a special format which is better suited for lexicographic sorting. The MusicBrainz style guide specifies this format.

See also:
The MusicBrainz Style Guidelines
std::string MusicBrainz::Artist::getType ( ) const

Returns the artist's type.

Returns:
a string containing an absolute URI
std::string MusicBrainz::Artist::getUniqueName ( ) const

Returns a unique artist name (using disambiguation).

This method returns the artist name together with the disambiguation attribute in parenthesis if it exists. Example: 'Vixen (Hip-hop)'.

Returns:
a string containing the unique name
See also:
getDisambiguation
void MusicBrainz::Artist::setBeginDate ( const std::string &  dateStr)

Sets the begin/foundation date.

Parameters:
dateStra date string
See also:
getBeginDate
void MusicBrainz::Artist::setDisambiguation ( const std::string &  disambiguation)

Sets the disambiguation attribute.

Parameters:
disambiguationa disambiguation string
See also:
getDisambiguation, getUniqueName
void MusicBrainz::Artist::setEndDate ( const std::string &  dateStr)

Sets the death/dissolving date.

Parameters:
dateStra string containing a date
See also:
: setEndDate, getBeginDate
void MusicBrainz::Artist::setName ( const std::string &  name)

Sets the artist's name.

Parameters:
namea string containing the artist's name
void MusicBrainz::Artist::setReleasesCount ( const int  count)

Sets the count of the release list.

Parameters:
countan integer containing the count
See also:
getReleasesCount
void MusicBrainz::Artist::setReleasesOffset ( const int  offset)

Sets the offset of the release list.

Parameters:
offsetan integer containing the offset
See also:
getReleasesOffset
void MusicBrainz::Artist::setSortName ( const std::string &  sortName)

Sets the artist's sort name.

Parameters:
sortName,:a string containing the artist's sort name
See also:
getSortName
void MusicBrainz::Artist::setType ( const std::string &  type)

Sets the artist's type.

Parameters:
typea string containing an absolute URI

Member Data Documentation

const std::string MusicBrainz::Artist::TYPE_GROUP [static]
const std::string MusicBrainz::Artist::TYPE_PERSON [static]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines