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

Represents a record label. More...

Inheritance diagram for MusicBrainz::Label:
MusicBrainz::Entity

List of all members.

Public Member Functions

 Label (const std::string &id="", const std::string &type="", const std::string &name="", const std::string &sortName="")
 Constructor.
virtual ~Label ()
 Destructor.
std::string getType () const
 Returns the label's type.
void setType (const std::string &type)
 Sets the label's type.
int getCode () const
 Returns the label code.
void setCode (int code)
 Sets the label code.
std::string getName () const
 Returns the label's name.
void setName (const std::string &name)
 Sets the label's name.
std::string getSortName () const
 Returns the label's sort name.
void setSortName (const std::string &sortName)
 Sets the label'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 label 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 label.
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 label'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.
LabelAliasListgetAliases ()
 Returns the list of aliases for this label.
int getNumAliases () const
 Returns number of aliases.
LabelAliasgetAlias (int index)
 Returns alias specified by index.
void addAlias (LabelAlias *alias)
 Adds an alias for this label.
- Public Member Functions inherited from MusicBrainz::Entity
virtual ~Entity ()
 Destructor.
virtual std::string getId () const
 Returns a MusicBrainz ID.
virtual void setId (const std::string &value)
 Sets a MusicBrainz ID.
RelationList getRelations (const std::string &targetType=std::string(), const std::string &relationType=std::string()) const
 Returns a list of relations.
void addRelation (Relation *relation)
 Adds a relation.
int getNumRelations () const
 Returns number of relations.
RelationgetRelation (int index)
 Returns an relation specified by index.
TagListgetTags ()
int getNumTags () const
TaggetTag (int index)
float getRating () const
void setRating (float rating)
int getRatingVoteCount () const
void setRatingVoteCount (int count)

Static Public Attributes

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

Additional Inherited Members

- Protected Member Functions inherited from MusicBrainz::Entity
 Entity (const std::string &id)
 Constructor.

Detailed Description

Represents a record label.


Constructor & Destructor Documentation

MusicBrainz::Label::Label ( 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 label's name
sortNamea string containing the label's sort name
virtual MusicBrainz::Label::~Label ( )
virtual

Destructor.


Member Function Documentation

void MusicBrainz::Label::addAlias ( LabelAlias alias)

Adds an alias for this label.

Parameters:
aliasa pointer to LabelAlias object
void MusicBrainz::Label::addRelease ( Release release)

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

Parameters:
releasea pointer to Release object
LabelAlias* MusicBrainz::Label::getAlias ( int  index)

Returns alias specified by index.

This is equivalent to getAliases()[index]

Returns:
a pointer to LabelAlias instance
See also:
getAliases
LabelAliasList& MusicBrainz::Label::getAliases ( )

Returns the list of aliases for this label.

Returns:
a list of pointers to LabelAlias objects
std::string MusicBrainz::Label::getBeginDate ( ) const

Returns the birth/foundation date.

The definition of the begin date depends on the label'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
int MusicBrainz::Label::getCode ( ) const

Returns the label code.

Returns:
an int representing the label code
std::string MusicBrainz::Label::getDisambiguation ( ) const

Returns the disambiguation attribute.

This attribute may be used if there is more than one label with the same name. In this case, disambiguation attributes are added to the labels' 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::Label::getEndDate ( ) const

Get the death/dissolving date.

The definition of the end date depends on the label'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::Label::getName ( ) const

Returns the label's name.

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

Returns number of aliases.

This is equivalent to getAliases().size()

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

Returns number of releases.

This is equivalent to getReleases().size()

Returns:
an int containing number of releases
See also:
getReleases
Release* MusicBrainz::Label::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::Label::getReleases ( )

Returns a list of releases from this label.

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

Returns:
: a list of pointers to Release objects
int MusicBrainz::Label::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::Label::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::Label::getSortName ( ) const

Returns the label's sort name.

The sort name is the label'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::Label::getType ( ) const

Returns the label's type.

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

Returns a unique label name (using disambiguation).

This method returns the label 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::Label::setBeginDate ( const std::string &  dateStr)

Sets the begin/foundation date.

Parameters:
dateStra date string
See also:
getBeginDate
void MusicBrainz::Label::setCode ( int  code)

Sets the label code.

Parameters:
codean int representing the label code
void MusicBrainz::Label::setDisambiguation ( const std::string &  disambiguation)

Sets the disambiguation attribute.

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

Sets the death/dissolving date.

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

Sets the label's name.

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

Sets the count of the release list.

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

Sets the offset of the release list.

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

Sets the label's sort name.

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

Sets the label's type.

Parameters:
typea string containing an absolute URI

Member Data Documentation

const std::string MusicBrainz::Label::TYPE_GROUP
static
const std::string MusicBrainz::Label::TYPE_PERSON
static