libmusicbrainz5
5.1.0
Toggle main menu visibility
Loading...
Searching...
No Matches
Release.h
Go to the documentation of this file.
1
/* --------------------------------------------------------------------------
2
3
libmusicbrainz5 - Client library to access MusicBrainz
4
5
Copyright (C) 2012 Andrew Hawkins
6
7
This file is part of libmusicbrainz5.
8
9
This library is free software; you can redistribute it and/or
10
modify it under the terms of the GNU Lesser General Public
11
License as published by the Free Software Foundation; either
12
version 2.1 of the License, or (at your option) any later version.
13
14
libmusicbrainz5 is distributed in the hope that it will be useful,
15
but WITHOUT ANY WARRANTY; without even the implied warranty of
16
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
Lesser General Public License for more details.
18
19
You should have received a copy of the GNU General Public License
20
along with this library. If not, see <http://www.gnu.org/licenses/>.
21
22
$Id$
23
24
----------------------------------------------------------------------------*/
25
26
#ifndef _MUSICBRAINZ5_RELEASE_H
27
#define _MUSICBRAINZ5_RELEASE_H
28
29
#include "
musicbrainz5/Entity.h
"
30
#include "
musicbrainz5/LabelInfoList.h
"
31
#include "
musicbrainz5/RelationList.h
"
32
#include "
musicbrainz5/MediumList.h
"
33
#include "
musicbrainz5/CollectionList.h
"
34
35
#include "musicbrainz5/xmlParser.h"
36
37
#include <string>
38
#include <iostream>
39
40
namespace
MusicBrainz5
41
{
42
class
CReleasePrivate;
43
44
class
CTextRepresentation
;
45
class
CArtistCredit
;
46
class
CReleaseGroup
;
47
class
CMedium
;
48
49
class
CRelease
:
public
CEntity
50
{
51
public
:
52
CRelease
(
const
XMLNode& Node=XMLNode::emptyNode());
53
CRelease
(
const
CRelease
& Other);
54
CRelease
&
operator =
(
const
CRelease
& Other);
55
virtual
~CRelease
();
56
57
virtual
CRelease
*
Clone
();
58
59
std::string
ID
()
const
;
60
std::string
Title
()
const
;
61
std::string
Status
()
const
;
62
std::string
Quality
()
const
;
63
std::string
Disambiguation
()
const
;
64
std::string
Packaging
()
const
;
65
CTextRepresentation
*
TextRepresentation
()
const
;
66
CArtistCredit
*
ArtistCredit
()
const
;
67
CReleaseGroup
*
ReleaseGroup
()
const
;
68
std::string
Date
()
const
;
69
std::string
Country
()
const
;
70
std::string
Barcode
()
const
;
71
std::string
ASIN
()
const
;
72
CLabelInfoList
*
LabelInfoList
()
const
;
73
CMediumList
*
MediumList
()
const
;
74
CRelationListList
*
RelationListList
()
const
;
75
CCollectionList
*
CollectionList
()
const
;
76
77
CMediumList
MediaMatchingDiscID
(
const
std::string& DiscID)
const
;
78
79
virtual
std::ostream&
Serialise
(std::ostream& os)
const
;
80
static
std::string
GetElementName
();
81
82
protected
:
83
virtual
void
ParseAttribute
(
const
std::string& Name,
const
std::string& Value);
84
virtual
void
ParseElement
(
const
XMLNode& Node);
85
86
private
:
87
void
Cleanup();
88
89
CReleasePrivate *
const
m_d;
90
};
91
}
92
93
#endif
CollectionList.h
Entity.h
LabelInfoList.h
MediumList.h
RelationList.h
MusicBrainz5::CArtistCredit
Definition
ArtistCredit.h:41
MusicBrainz5::CEntity::CEntity
CEntity()
MusicBrainz5::CMedium
Definition
Medium.h:43
MusicBrainz5::CMediumList
Definition
MediumList.h:42
MusicBrainz5::CRelationListList
Definition
RelationListList.h:40
MusicBrainz5::CReleaseGroup
Definition
ReleaseGroup.h:51
MusicBrainz5::CRelease::~CRelease
virtual ~CRelease()
MusicBrainz5::CRelease::Date
std::string Date() const
MusicBrainz5::CRelease::ASIN
std::string ASIN() const
MusicBrainz5::CRelease::Title
std::string Title() const
MusicBrainz5::CRelease::LabelInfoList
CLabelInfoList * LabelInfoList() const
MusicBrainz5::CRelease::GetElementName
static std::string GetElementName()
MusicBrainz5::CRelease::CRelease
CRelease(const XMLNode &Node=XMLNode::emptyNode())
MusicBrainz5::CRelease::Disambiguation
std::string Disambiguation() const
MusicBrainz5::CRelease::Quality
std::string Quality() const
MusicBrainz5::CRelease::ArtistCredit
CArtistCredit * ArtistCredit() const
MusicBrainz5::CRelease::TextRepresentation
CTextRepresentation * TextRepresentation() const
MusicBrainz5::CRelease::ReleaseGroup
CReleaseGroup * ReleaseGroup() const
MusicBrainz5::CRelease::Serialise
virtual std::ostream & Serialise(std::ostream &os) const
MusicBrainz5::CRelease::operator=
CRelease & operator=(const CRelease &Other)
MusicBrainz5::CRelease::Packaging
std::string Packaging() const
MusicBrainz5::CRelease::RelationListList
CRelationListList * RelationListList() const
MusicBrainz5::CRelease::Status
std::string Status() const
MusicBrainz5::CRelease::Country
std::string Country() const
MusicBrainz5::CRelease::Clone
virtual CRelease * Clone()
MusicBrainz5::CRelease::MediumList
CMediumList * MediumList() const
MusicBrainz5::CRelease::CollectionList
CCollectionList * CollectionList() const
MusicBrainz5::CRelease::CRelease
CRelease(const CRelease &Other)
MusicBrainz5::CRelease::ParseElement
virtual void ParseElement(const XMLNode &Node)
MusicBrainz5::CRelease::ParseAttribute
virtual void ParseAttribute(const std::string &Name, const std::string &Value)
MusicBrainz5::CRelease::Barcode
std::string Barcode() const
MusicBrainz5::CRelease::ID
std::string ID() const
MusicBrainz5::CRelease::MediaMatchingDiscID
CMediumList MediaMatchingDiscID(const std::string &DiscID) const
MusicBrainz5::CTextRepresentation
Definition
TextRepresentation.h:41
MusicBrainz5
Definition
Alias.h:37
MusicBrainz5::CCollectionList
CListImpl< CCollection > CCollectionList
Definition
CollectionList.h:35
MusicBrainz5::CLabelInfoList
CListImpl< CLabelInfo > CLabelInfoList
Definition
LabelInfoList.h:35
include
musicbrainz5
Release.h
Generated by
1.17.0