Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __MUSICBRAINZ3_LABEL_H__
00024 #define __MUSICBRAINZ3_LABEL_H__
00025
00026 #include <string>
00027 #include <vector>
00028 #include <musicbrainz3/musicbrainz.h>
00029 #include <musicbrainz3/entity.h>
00030 #include <musicbrainz3/lists.h>
00031
00032 namespace MusicBrainz
00033 {
00034
00038 class MB_API Label : public Entity
00039 {
00040 public:
00041
00042 static const std::string TYPE_PERSON;
00043 static const std::string TYPE_GROUP;
00044
00053 Label(const std::string &id = "", const std::string &type = "",
00054 const std::string &name = "", const std::string &sortName = "");
00055
00059 virtual ~Label();
00060
00066 std::string getType() const;
00067
00073 void setType(const std::string &type);
00074
00080 int getCode() const;
00081
00087 void setCode(int code);
00088
00094 std::string getName() const;
00095
00101 void setName(const std::string &name);
00102
00112 std::string getSortName() const;
00113
00121 void setSortName(const std::string &sortName);
00122
00138 std::string getDisambiguation() const;
00139
00147 void setDisambiguation(const std::string &disambiguation);
00148
00160 std::string getUniqueName() const;
00161
00176 std::string getBeginDate() const;
00177
00185 void setBeginDate(const std::string &dateStr);
00186
00198 std::string getEndDate() const;
00199
00207 void setEndDate(const std::string &dateStr);
00208
00218 ReleaseList &getReleases();
00219
00229 int getNumReleases() const;
00230
00240 Release *getRelease(int index);
00241
00247 void addRelease(Release *release);
00248
00261 int getReleasesOffset() const;
00262
00270 void setReleasesOffset(const int offset);
00271
00283 int getReleasesCount() const;
00284
00292 void setReleasesCount(const int count);
00293
00299 LabelAliasList &getAliases();
00300
00310 int getNumAliases() const;
00311
00321 LabelAlias *getAlias(int index);
00322
00328 void addAlias(LabelAlias *alias);
00329
00330 private:
00331
00332 class LabelPrivate;
00333 LabelPrivate *d;
00334 };
00335
00336 }
00337
00338 #endif