libmusicbrainz5  5.1.0
MusicBrainz5::CEntity Class Referenceabstract
Inheritance diagram for MusicBrainz5::CEntity:
MusicBrainz5::CAlias MusicBrainz5::CAnnotation MusicBrainz5::CArtist MusicBrainz5::CArtistCredit MusicBrainz5::CAttribute MusicBrainz5::CCDStub MusicBrainz5::CCollection MusicBrainz5::CDisc MusicBrainz5::CFreeDBDisc MusicBrainz5::CIPI MusicBrainz5::CISRC MusicBrainz5::CISWC MusicBrainz5::CLabel MusicBrainz5::CLabelInfo MusicBrainz5::CLifespan MusicBrainz5::CList MusicBrainz5::CMedium MusicBrainz5::CMessage MusicBrainz5::CMetadata MusicBrainz5::CNameCredit MusicBrainz5::CNonMBTrack MusicBrainz5::CPUID MusicBrainz5::CRating MusicBrainz5::CRecording MusicBrainz5::CRelation MusicBrainz5::CRelease MusicBrainz5::CReleaseGroup MusicBrainz5::CSecondaryType MusicBrainz5::CTag MusicBrainz5::CTextRepresentation MusicBrainz5::CTrack MusicBrainz5::CUserRating MusicBrainz5::CUserTag MusicBrainz5::CWork

Public Member Functions

 CEntity ()
 
 CEntity (const CEntity &Other)
 
CEntityoperator= (const CEntity &Other)
 
virtual ~CEntity ()
 
virtual CEntityClone ()=0
 
void Parse (const XMLNode &Node)
 
std::map< std::string, std::string > ExtAttributes () const
 
std::map< std::string, std::string > ExtElements () const
 
virtual std::ostream & Serialise (std::ostream &os) const
 

Static Public Member Functions

static std::string GetElementName ()
 

Protected Member Functions

void ProcessRelationList (const XMLNode &Node, CRelationListList *&RetVal)
 
template<typename T >
void ProcessItem (const XMLNode &Node, T *&RetVal)
 
template<class T >
void ProcessItem (const XMLNode &Node, T &RetVal)
 
template<typename T >
void ProcessItem (const std::string &Text, T &RetVal)
 
void ProcessItem (const XMLNode &Node, std::string &RetVal)
 
virtual void ParseAttribute (const std::string &Name, const std::string &Value)=0
 
virtual void ParseElement (const XMLNode &Node)=0
 

Constructor & Destructor Documentation

◆ CEntity() [1/2]

MusicBrainz5::CEntity::CEntity ( )

◆ CEntity() [2/2]

MusicBrainz5::CEntity::CEntity ( const CEntity Other)

◆ ~CEntity()

virtual MusicBrainz5::CEntity::~CEntity ( )
virtual

Member Function Documentation

◆ Clone()

◆ ExtAttributes()

std::map<std::string,std::string> MusicBrainz5::CEntity::ExtAttributes ( ) const

◆ ExtElements()

std::map<std::string,std::string> MusicBrainz5::CEntity::ExtElements ( ) const

◆ GetElementName()

static std::string MusicBrainz5::CEntity::GetElementName ( )
static

◆ operator=()

CEntity& MusicBrainz5::CEntity::operator= ( const CEntity Other)

◆ Parse()

void MusicBrainz5::CEntity::Parse ( const XMLNode &  Node)

◆ ParseAttribute()

◆ ParseElement()

◆ ProcessItem() [1/4]

template<typename T >
void MusicBrainz5::CEntity::ProcessItem ( const std::string &  Text,
T &  RetVal 
)
inlineprotected

◆ ProcessItem() [2/4]

void MusicBrainz5::CEntity::ProcessItem ( const XMLNode &  Node,
std::string &  RetVal 
)
inlineprotected

◆ ProcessItem() [3/4]

template<class T >
void MusicBrainz5::CEntity::ProcessItem ( const XMLNode &  Node,
T &  RetVal 
)
inlineprotected

◆ ProcessItem() [4/4]

template<typename T >
void MusicBrainz5::CEntity::ProcessItem ( const XMLNode &  Node,
T *&  RetVal 
)
inlineprotected

◆ ProcessRelationList()

void MusicBrainz5::CEntity::ProcessRelationList ( const XMLNode &  Node,
CRelationListList *&  RetVal 
)
protected

◆ Serialise()