KSquare Utilities
KKB::XmlElementTemplate< T > Class Template Reference

#include <XmlStream.h>

+ Inheritance diagram for KKB::XmlElementTemplate< T >:

Public Member Functions

 XmlElementTemplate (XmlTagPtr tag, XmlStream &s, VolConstBool &cancelFlag, RunLog &log)
 
 ~XmlElementTemplate ()
 
T * TakeOwnership ()
 
T *const Value () const
 
- Public Member Functions inherited from KKB::XmlElement
 XmlElement (const KKStr &sectionName, XmlTag::TagTypes tagType)
 
 XmlElement (XmlTagPtr _nameTag, XmlStream &s, RunLog &log)
 
virtual ~XmlElement ()
 
KKStrConstPtr AttributeValue (const char *attributeName)
 
KKStrConstPtr AttributeValue (const KKStr &attributeName)
 
XmlTagConstPtr NameTag () const
 
KKStr NameTagStr () const
 
virtual const KKStrSectionName () const
 
virtual bool ToBool () const
 
virtual double ToDouble () const
 
virtual float ToFloat () const
 
virtual kkint32 ToInt32 () const
 
virtual TokenTypes TokenType ()
 
virtual KKStr ToKKStr () const
 
virtual const KKStrVarName () const
 
- Public Member Functions inherited from KKB::XmlToken
 XmlToken ()
 
virtual ~XmlToken ()
 

Static Public Member Functions

static void WriteXML (const T &t, const KKStr &varName, std::ostream &o)
 

Additional Inherited Members

- Public Types inherited from KKB::XmlElement
typedef XmlElementXmlElementPtr
 
- Public Types inherited from KKB::XmlToken
enum  TokenTypes { TokenTypes::tokNULL, TokenTypes::tokElement, TokenTypes::tokContent }
 
typedef XmlTokenXmlTokenPtr
 

Detailed Description

template<class T>
class KKB::XmlElementTemplate< T >

Definition at line 419 of file XmlStream.h.

Constructor & Destructor Documentation

template<class T>
KKB::XmlElementTemplate< T >::XmlElementTemplate ( XmlTagPtr  tag,
XmlStream s,
VolConstBool cancelFlag,
RunLog log 
)
inline

Definition at line 422 of file XmlStream.h.

426  :
427  XmlElement (tag, s, log),
428  value (NULL)
429  {
430  value = new T();
431  value->ReadXML (s, tag, cancelFlag, log);
432  }
XmlElement(const KKStr &sectionName, XmlTag::TagTypes tagType)
Definition: XmlStream.cpp:750
template<class T>
KKB::XmlElementTemplate< T >::~XmlElementTemplate ( )
inline

Definition at line 435 of file XmlStream.h.

436  {
437  delete value;
438  value = NULL;
439  }

Member Function Documentation

template<class T>
T* KKB::XmlElementTemplate< T >::TakeOwnership ( )
inline

Definition at line 443 of file XmlStream.h.

444  {
445  T* v = value;
446  value = NULL;
447  return v;
448  }
template<class T>
T* const KKB::XmlElementTemplate< T >::Value ( ) const
inline

Definition at line 441 of file XmlStream.h.

441 {return value;}
template<class T>
static void KKB::XmlElementTemplate< T >::WriteXML ( const T &  t,
const KKStr varName,
std::ostream &  o 
)
inlinestatic

Definition at line 451 of file XmlStream.h.

455  {
456  t.WriteXML (varName, o);
457  }

The documentation for this class was generated from the following file: