libmusicbrainz5 5.1.0
MusicBrainz5::CListImpl< T > Class Template Reference

#include <ListImpl.h>

Inheritance diagram for MusicBrainz5::CListImpl< T >:
MusicBrainz5::CList MusicBrainz5::CEntity

Public Member Functions

 CListImpl (const XMLNode &Node=XMLNode::emptyNode())
 
 CListImpl (const CListImpl< T > &Other)
 
MusicBrainz5::CListImpl< T > & operator= (const CListImpl< T > &Other)
 
virtual ~CListImpl ()
 
CListImpl< T > * Clone ()
 
virtual std::ostream & Serialise (std::ostream &os) const
 
T * Item (int Item) const
 
void AddItem (T *Item)
 
- Public Member Functions inherited from MusicBrainz5::CList
 CList ()
 
 CList (const CList &Other)
 
CListoperator= (const CList &Other)
 
virtual ~CList ()
 
virtual CListClone ()
 
int NumItems () const
 
int Offset () const
 
int Count () const
 
virtual std::ostream & Serialise (std::ostream &os) const
 
- Public Member Functions inherited from MusicBrainz5::CEntity
 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 ()
 
- Static Public Member Functions inherited from MusicBrainz5::CList
static std::string GetElementName ()
 
- Static Public Member Functions inherited from MusicBrainz5::CEntity
static std::string GetElementName ()
 

Protected Member Functions

void ParseElement (const XMLNode &Node)
 
- Protected Member Functions inherited from MusicBrainz5::CList
virtual void ParseAttribute (const std::string &Name, const std::string &Value)
 
virtual void ParseElement (const XMLNode &Node)
 
void AddItem (CEntity *Item)
 
CEntityItem (int Item) const
 
- Protected Member Functions inherited from MusicBrainz5::CEntity
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

◆ CListImpl() [1/2]

template<class T >
MusicBrainz5::CListImpl< T >::CListImpl ( const XMLNode &  Node = XMLNode::emptyNode())
inline

◆ CListImpl() [2/2]

template<class T >
MusicBrainz5::CListImpl< T >::CListImpl ( const CListImpl< T > &  Other)
inline

◆ ~CListImpl()

template<class T >
virtual MusicBrainz5::CListImpl< T >::~CListImpl ( )
inlinevirtual

Member Function Documentation

◆ AddItem()

template<class T >
void MusicBrainz5::CListImpl< T >::AddItem ( T *  Item)
inline

◆ Clone()

template<class T >
CListImpl< T > * MusicBrainz5::CListImpl< T >::Clone ( )
inlinevirtual

Reimplemented from MusicBrainz5::CList.

◆ GetElementName()

template<class T >
static std::string MusicBrainz5::CListImpl< T >::GetElementName ( )
inlinestatic

◆ Item()

template<class T >
T * MusicBrainz5::CListImpl< T >::Item ( int  Item) const
inline

◆ operator=()

template<class T >
MusicBrainz5::CListImpl< T > & MusicBrainz5::CListImpl< T >::operator= ( const CListImpl< T > &  Other)
inline

◆ ParseElement()

template<class T >
void MusicBrainz5::CListImpl< T >::ParseElement ( const XMLNode &  Node)
inlineprotectedvirtual

Reimplemented from MusicBrainz5::CList.

◆ Serialise()

template<class T >
virtual std::ostream & MusicBrainz5::CListImpl< T >::Serialise ( std::ostream &  os) const
inlinevirtual