evio  5.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
evio::evioDOMNode Class Referenceabstract

Virtual class represents an evio node in memory, concrete sub-classes evioDOMContainerNode and evioDOMLeafNode are hidden from users. More...

#include <evioUtil.hxx>

Inheritance diagram for evio::evioDOMNode:
evio::evioDOMContainerNode evio::evioDOMLeafNode< T > evio::evioDOMLeafNode< uint32_t > evio::evioCompositeDOMLeafNode

Public Member Functions

virtual ~evioDOMNode (void)
 
virtual void addNode (evioDOMNodeP node) throw (evioException)
 Adds node to container node. More...
 
void append (const string &s) throw (evioException)
 Appends string to leaf node. More...
 
void append (const char *s) throw (evioException)
 Appends const char* to leaf node. More...
 
void append (char *s) throw (evioException)
 Appends char* to leaf node. More...
 
void append (const char **ca, int len) throw (evioException)
 Appends array of const char* to leaf node. More...
 
void append (char **ca, int len) throw (evioException)
 Appends array of const char* to leaf node. More...
 
template<typename T >
void append (T tVal) throw (evioException)
 
template<typename T >
void append (const vector< T > &tVec) throw (evioException)
 
template<typename T >
void append (const T *tBuf, int len) throw (evioException)
 
template<typename T >
void replace (const vector< T > &tVec) throw (evioException)
 
template<typename T >
void replace (const T *tBuf, int len) throw (evioException)
 
virtual evioDOMNodeP cut (void) throw (evioException)
 Cleanly removes node from tree or node hierarchy. More...
 
virtual void cutAndDelete (void) throw (evioException)
 Cleanly removes node from tree or node hierarchy and recursively deletes node and its contents. More...
 
virtual evioDOMNodeP move (evioDOMNodeP newParent) throw (evioException)
 Changes node parent. More...
 
virtual bool operator== (uint16_t tag) const
 True if node tag equals value. More...
 
virtual bool operator!= (uint16_t tag) const
 True if node tag does not equal value. More...
 
bool operator== (evioDictEntry tnPair) const
 True if node tag and num same as in evioDictEntry pair. More...
 
bool operator!= (evioDictEntry tnPair) const
 True if node tag and num NOT the same as in evioDictEntry pair. More...
 
evioDOMNodeoperator<< (evioDOMNodeP node) throw (evioException)
 Adds node to container node. More...
 
evioDOMNodeoperator<< (const string &s) throw (evioException)
 Appends single string to leaf node. More...
 
evioDOMNodeoperator<< (const char *s) throw (evioException)
 Appends single const char* to leaf node. More...
 
evioDOMNodeoperator<< (char *s) throw (evioException)
 Appends single char* to leaf node. More...
 
template<typename T >
evioDOMNodeoperator<< (T tVal) throw (evioException)
 
template<typename T >
evioDOMNodeoperator<< (const vector< T > &tVec) throw (evioException)
 
evioDOMNodeListgetChildList (void) throw (evioException)
 Returns pointer to child list of container node. More...
 
evioDOMNodeListP getChildren (void) throw (evioException)
 Returns copy of child list of container node. More...
 
template<class Predicate >
evioDOMNodeListP getChildren (Predicate pred) throw (evioException)
 
template<typename T >
vector< T > * getVector (void) throw (evioException)
 
virtual string toString (void) const
 Returns XML string listing container node contents. More...
 
virtual string getHeader (int depth, const evioToStringConfig *config=&defaultToStringConfig) const =0
 
virtual string getBody (int depth, const evioToStringConfig *config=&defaultToStringConfig) const =0
 
virtual string getFooter (int depth, const evioToStringConfig *config=&defaultToStringConfig) const =0
 
virtual int getSize (void) const =0
 
evioDOMNodeP getParent (void) const
 Returns parent evioDOMNode. More...
 
int getContentType (void) const
 Returns content type. More...
 
evioDOMTreegetParentTree (void) const
 Returns parent evioDOMTree. More...
 
bool isContainer (void) const
 True if node is a container node. More...
 
bool isLeaf (void) const
 True if node is a leaf node. More...
 

Static Public Member Functions

static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, ContainerType cType=BANK) throw (evioException)
 Static factory method to create container node. More...
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num) throw (evioException)
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, const vector< T > &tVec) throw (evioException)
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, const T *t, int len) throw (evioException)
 
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, const evioSerializable &o, ContainerType cType=BANK) throw (evioException)
 Static factory method to create container node holding evioSerializable object. More...
 
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, void(*f)(evioDOMNodeP c, void *userArg), void *userArg, ContainerType cType=BANK) throw (evioException)
 Static factory method to create container node using C function to fill container. More...
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, T *t, void *userArg, ContainerType cType=BANK) throw (evioException)
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, T *t, void *T::*mfp(evioDOMNodeP c, void *userArg), void *userArg, ContainerType cType=BANK) throw (evioException)
 
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, uint16_t formatTag, const string &formatString, uint16_t dataTag, uint8_t dataNum, const vector< uint32_t > &tVec) throw (evioException)
 Static factory method to create composite leaf node. More...
 
static evioDOMNodeP createEvioDOMNode (uint16_t tag, uint8_t num, uint16_t formatTag, const string &formatString, uint16_t dataTag, uint8_t dataNum, const uint32_t *t, int len) throw (evioException)
 Static factory method to create composite leaf node. More...
 
static evioDOMNodeP createUnknownEvioDOMNode (uint16_t tag, uint8_t num, const vector< uint32_t > &tVec) throw (evioException)
 Unknown type node constructor used internally. More...
 
static evioDOMNodeP createUnknownEvioDOMNode (uint16_t tag, uint8_t num, const uint32_t *t, int len) throw (evioException)
 Unknown type node constructor used internally. More...
 
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, ContainerType cType=BANK) throw (evioException)
 Static factory method to create container node. More...
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary) throw (evioException)
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, const vector< T > &tVec) throw (evioException)
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, const T *t, int len) throw (evioException)
 
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, const evioSerializable &o, ContainerType cType=BANK) throw (evioException)
 Static factory method to create container node holding evioSerializable object. More...
 
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, void(*f)(evioDOMNodeP c, void *userArg), void *userArg, ContainerType cType=BANK) throw (evioException)
 Static factory method to create container node using C function to fill container. More...
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, T *t, void *userArg, ContainerType cType=BANK) throw (evioException)
 
template<typename T >
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, T *t, void *T::*mfp(evioDOMNodeP c, void *userArg), void *userArg, ContainerType cType=BANK) throw (evioException)
 
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, uint16_t formatTag, const string &formatString, uint16_t dataTag, uint8_t dataNum, const vector< uint32_t > &tVec) throw (evioException)
 Static factory method to create composite leaf node. More...
 
static evioDOMNodeP createEvioDOMNode (const string &name, const evioDictionary *dictionary, uint16_t formatTag, const string &formatString, uint16_t dataTag, uint8_t dataNum, const uint32_t *t, int len) throw (evioException)
 Static factory method to create composite leaf node. More...
 
static evioDOMNodeP createUnknownEvioDOMNode (const string &name, const evioDictionary *dictionary, const vector< uint32_t > &tVec) throw (evioException)
 Unknown type node constructor used internally. More...
 
static evioDOMNodeP createUnknownEvioDOMNode (const string &name, const evioDictionary *dictionary, const uint32_t *t, int len) throw (evioException)
 Unknown type node constructor used internally. More...
 

Public Attributes

uint16_t tag
 The node tag, max 16-bits depending on container type. More...
 
uint8_t num
 The node num, max 8 bits, used by BANK and String container types (2-word header). More...
 

Protected Member Functions

 evioDOMNode (evioDOMNodeP parent, uint16_t tag, uint8_t num, int contentType) throw (evioException)
 Container node constructor used internally. More...
 
 evioDOMNode (evioDOMNodeP parent, const string &name, const evioDictionary *dictionary, int contentType) throw (evioException)
 Container node constructor used internally. More...
 

Static Protected Member Functions

static string getIndent (int depth, int size=3)
 Returns indent for pretty-printing, used internally. More...
 

Protected Attributes

evioDOMNodeP parent
 Pointer to node parent. More...
 
evioDOMTreeparentTree
 Pointer to parent tree if this node is the root. More...
 
int contentType
 Content type. More...
 

Friends

class evioDOMTree
 Allows evioDOMTree class to manipulate nodes. More...
 

Detailed Description

Virtual class represents an evio node in memory, concrete sub-classes evioDOMContainerNode and evioDOMLeafNode are hidden from users.

Users work with nodes via this class, and create nodes via factory method createEvioDOMNode. Factory model ensures nodes are created on heap.

Constructor & Destructor Documentation

evioDOMNode::evioDOMNode ( evioDOMNodeP  par,
uint16_t  tag,
uint8_t  num,
int  contentType 
)
throw (evioException
)
protected

Container node constructor used internally.

Parameters
parParent node
tagNode tag
numNode num
contentTypeContainer node content type
evioDOMNode::evioDOMNode ( evioDOMNodeP  par,
const string &  name,
const evioDictionary dictionary,
int  contentType 
)
throw (evioException
)
protected

Container node constructor used internally.

Parameters
parParent node
nameBank name dictionary Dictionary to use
contentTypeContainer node content type

References evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

evioDOMNode::~evioDOMNode ( void  )
virtual

Member Function Documentation

void evioDOMNode::addNode ( evioDOMNodeP  node)
throw (evioException
)
virtual

Adds node to container node.

Parameters
nodeNode to be added
void evioDOMNode::append ( const string &  s)
throw (evioException
)

Appends string to leaf node.

Parameters
sstring to append

References evio::evioDOMLeafNode< T >::data.

void evioDOMNode::append ( const char *  s)
throw (evioException
)

Appends const char* to leaf node.

Parameters
schar* to append

References evio::evioDOMLeafNode< T >::data.

void evioDOMNode::append ( char *  s)
throw (evioException
)

Appends char* to leaf node.

Parameters
schar* to append
void evioDOMNode::append ( const char **  ca,
int  len 
)
throw (evioException
)

Appends array of const char* to leaf node.

Parameters
saarray of char* to append

References evio::evioDOMLeafNode< T >::data.

void evioDOMNode::append ( char **  ca,
int  len 
)
throw (evioException
)

Appends array of const char* to leaf node.

Parameters
saarray of char* to append
template<typename T >
void evio::evioDOMNode::append ( tVal)
throw (evioException
)
template<typename T >
void evio::evioDOMNode::append ( const vector< T > &  tVec)
throw (evioException
)
template<typename T >
void evio::evioDOMNode::append ( const T *  tBuf,
int  len 
)
throw (evioException
)
evioDOMNodeP evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
ContainerType  cType = BANK 
)
throw (evioException
)
static

Static factory method to create container node.

Parameters
tagNode tag
numNode num
cTypeContainer node content type
Returns
Pointer to new node
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num 
)
throw (evioException
)
static
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
const vector< T > &  tVec 
)
throw (evioException
)
static
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
const T *  t,
int  len 
)
throw (evioException
)
static
evioDOMNodeP evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
const evioSerializable o,
ContainerType  cType = BANK 
)
throw (evioException
)
static

Static factory method to create container node holding evioSerializable object.

Parameters
tagNode tag
numNode num
oevioSerializable object
cTypeContainer node content type
Returns
Pointer to new node
evioDOMNodeP evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
void(*)(evioDOMNodeP c, void *userArg)  f,
void *  userArg,
ContainerType  cType = BANK 
)
throw (evioException
)
static

Static factory method to create container node using C function to fill container.

Parameters
tagNode tag
numNode num
fC function that fills container node
userArgUser arg passed to C function
cTypeContainer node content type
Returns
Pointer to new node
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
T *  t,
void *  userArg,
ContainerType  cType = BANK 
)
throw (evioException
)
static
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
T *  t,
void *T::*  mfpevioDOMNodeP c, void *userArg,
void *  userArg,
ContainerType  cType = BANK 
)
throw (evioException
)
static
evioDOMNodeP evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
uint16_t  formatTag,
const string &  formatString,
uint16_t  dataTag,
uint8_t  dataNum,
const vector< uint32_t > &  tVec 
)
throw (evioException
)
static

Static factory method to create composite leaf node.

Parameters
tagNode tag
numNode num
formatTagFormat tag
formatStringFormat string
dataTagData tag
dataNumData num
tVecvector<uint32_t> of data
Returns
Pointer to new node
evioDOMNodeP evioDOMNode::createEvioDOMNode ( uint16_t  tag,
uint8_t  num,
uint16_t  formatTag,
const string &  formatString,
uint16_t  dataTag,
uint8_t  dataNum,
const uint32_t *  t,
int  len 
)
throw (evioException
)
static

Static factory method to create composite leaf node.

Parameters
tagNode tag
numNode num
formatTagFormat tag
formatStringFormat string
dataTagData tag
dataNumData num
tPointer to uint32_t data
lenLength of data array
Returns
Pointer to new node
evioDOMNodeP evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
ContainerType  cType = BANK 
)
throw (evioException
)
static

Static factory method to create container node.

Parameters
nameNode name
dictionaryDictionary to use
cTypeContainer node content type
Returns
Pointer to new node

References evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary 
)
throw (evioException
)
static
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
const vector< T > &  tVec 
)
throw (evioException
)
static
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
const T *  t,
int  len 
)
throw (evioException
)
static
evioDOMNodeP evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
const evioSerializable o,
ContainerType  cType = BANK 
)
throw (evioException
)
static

Static factory method to create container node holding evioSerializable object.

Parameters
nameNode name
dictionaryDictionary to use
oevioSerializable object
cTypeContainer node content type
Returns
Pointer to new node

References evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

evioDOMNodeP evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
void(*)(evioDOMNodeP c, void *userArg)  f,
void *  userArg,
ContainerType  cType = BANK 
)
throw (evioException
)
static

Static factory method to create container node using C function to fill container.

Parameters
nameNode name
dictionaryDictionary to use
fC function that fills container node
userArgUser arg passed to C function
cTypeContainer node content type
Returns
Pointer to new node

References evio::evioDictionary::getEntry(), evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
T *  t,
void *  userArg,
ContainerType  cType = BANK 
)
throw (evioException
)
static
template<typename T >
static evioDOMNodeP evio::evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
T *  t,
void *T::*  mfpevioDOMNodeP c, void *userArg,
void *  userArg,
ContainerType  cType = BANK 
)
throw (evioException
)
static
evioDOMNodeP evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
uint16_t  formatTag,
const string &  formatString,
uint16_t  dataTag,
uint8_t  dataNum,
const vector< uint32_t > &  tVec 
)
throw (evioException
)
static

Static factory method to create composite leaf node.

Parameters
nameNode name
dictionaryDictionary to use
formatTagFormat tag
formatStringFormat string
dataTagData tag
dataNumData num
tVecvector<uint32_t> of data
Returns
Pointer to new node

References evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

evioDOMNodeP evioDOMNode::createEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
uint16_t  formatTag,
const string &  formatString,
uint16_t  dataTag,
uint8_t  dataNum,
const uint32_t *  t,
int  len 
)
throw (evioException
)
static

Static factory method to create composite leaf node.

Parameters
nameNode name
dictionaryDictionary to use
formatTagFormat tag
formatStringFormat string
dataTagData tag
dataNumData num
tPointer to array of uint32_t data
lenLength of array
Returns
Pointer to new node

References evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

evioDOMNodeP evioDOMNode::createUnknownEvioDOMNode ( uint16_t  tag,
uint8_t  num,
const vector< uint32_t > &  tVec 
)
throw (evioException
)
static

Unknown type node constructor used internally.

Parameters
tagTag
numNum
tVecVector of uint32_t
Returns
Pointer to new node

References contentType.

evioDOMNodeP evioDOMNode::createUnknownEvioDOMNode ( uint16_t  tag,
uint8_t  num,
const uint32_t *  t,
int  len 
)
throw (evioException
)
static

Unknown type node constructor used internally.

Parameters
tagTag
numNum
tPointer to uint32_t array
lenLength of array
Returns
Pointer to new node

References contentType.

evioDOMNodeP evioDOMNode::createUnknownEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
const vector< uint32_t > &  tVec 
)
throw (evioException
)
static

Unknown type node constructor used internally.

Parameters
nameName
dictionaryDictionary
tVecVector of uint32_t
Returns
Pointer to new node

References contentType, evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

evioDOMNodeP evioDOMNode::createUnknownEvioDOMNode ( const string &  name,
const evioDictionary dictionary,
const uint32_t *  t,
int  len 
)
throw (evioException
)
static

Unknown type node constructor used internally.

Parameters
nameName
dictionaryDictionary
tPointer to array of uint32_t
lenLength of array
Returns
Pointer to new node

References contentType, evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

evioDOMNodeP evioDOMNode::cut ( void  )
throw (evioException
)
virtual

Cleanly removes node from tree or node hierarchy.

Returns
Pointer to now liberated node

References evio::evioDOMContainerNode::childList.

void evioDOMNode::cutAndDelete ( void  )
throw (evioException
)
virtual

Cleanly removes node from tree or node hierarchy and recursively deletes node and its contents.

Referenced by evio::evioDOMTree::clear().

virtual string evio::evioDOMNode::getBody ( int  depth,
const evioToStringConfig config = &defaultToStringConfig 
) const
pure virtual
evioDOMNodeList * evioDOMNode::getChildList ( void  )
throw (evioException
)

Returns pointer to child list of container node.

Returns
Pointer to internal child list

References evio::evioDOMContainerNode::childList.

evioDOMNodeListP evioDOMNode::getChildren ( void  )
throw (evioException
)

Returns copy of child list of container node.

List must be deleted by user

Returns
Copy of child list
template<class Predicate >
evioDOMNodeListP evio::evioDOMNode::getChildren ( Predicate  pred)
throw (evioException
)
int evioDOMNode::getContentType ( void  ) const

Returns content type.

Returns
Content type
virtual string evio::evioDOMNode::getFooter ( int  depth,
const evioToStringConfig config = &defaultToStringConfig 
) const
pure virtual
virtual string evio::evioDOMNode::getHeader ( int  depth,
const evioToStringConfig config = &defaultToStringConfig 
) const
pure virtual
string evioDOMNode::getIndent ( int  depth,
int  size = 3 
)
staticprotected

Returns indent for pretty-printing, used internally.

Parameters
depthDepth level
sizeSize of indent per level
Returns
String containing proper number of indent spaces for this depth
evioDOMNodeP evioDOMNode::getParent ( void  ) const

Returns parent evioDOMNode.

Returns
Pointer to parent evioDOMNode
evioDOMTree * evioDOMNode::getParentTree ( void  ) const

Returns parent evioDOMTree.

Returns
Pointer to parent evioDOMTree
virtual int evio::evioDOMNode::getSize ( void  ) const
pure virtual
template<typename T >
vector<T>* evio::evioDOMNode::getVector ( void  )
throw (evioException
)
bool evioDOMNode::isContainer ( void  ) const

True if node is a container node.

Returns
true if node is a container
bool evioDOMNode::isLeaf ( void  ) const

True if node is a leaf node.

Returns
true if node is a leaf
evioDOMNodeP evioDOMNode::move ( evioDOMNodeP  newParent)
throw (evioException
)
virtual

Changes node parent.

Parameters
newParentNew parent
Returns
Pointer to now node just moved

References evio::evioDOMContainerNode::childList.

bool evioDOMNode::operator!= ( uint16_t  tg) const
virtual

True if node tag does not equal value.

Parameters
tgValue to compare to
Returns
true if tags disagree
bool evioDOMNode::operator!= ( evioDictEntry  tnPair) const

True if node tag and num NOT the same as in evioDictEntry pair.

Parameters
tnPairevioDictEntry pair to compare to
Returns
true if tag and num disagree

References evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

evioDOMNode & evioDOMNode::operator<< ( evioDOMNodeP  node)
throw (evioException
)

Adds node to container node.

Parameters
nodeNode to be added
Returns
Reference to node to be added
evioDOMNode & evioDOMNode::operator<< ( const string &  s)
throw (evioException
)

Appends single string to leaf node.

Parameters
sRefString to be added
Returns
Reference to this
evioDOMNode & evioDOMNode::operator<< ( const char *  s)
throw (evioException
)

Appends single const char* to leaf node.

Parameters
schar* to be added
Returns
Reference to this
evioDOMNode & evioDOMNode::operator<< ( char *  s)
throw (evioException
)

Appends single char* to leaf node.

Parameters
schar* to be added
Returns
Reference to this
template<typename T >
evioDOMNode& evio::evioDOMNode::operator<< ( tVal)
throw (evioException
)
template<typename T >
evioDOMNode& evio::evioDOMNode::operator<< ( const vector< T > &  tVec)
throw (evioException
)
bool evioDOMNode::operator== ( uint16_t  tg) const
virtual

True if node tag equals value.

Parameters
tgValue to compare to
Returns
true if tags agree
bool evioDOMNode::operator== ( evioDictEntry  tnPair) const

True if node tag and num same as in evioDictEntry pair.

Parameters
tnPairevioDictEntry pair to compare to
Returns
true if tag and num agree

References evio::evioDictEntry::getNum(), and evio::evioDictEntry::getTag().

template<typename T >
void evio::evioDOMNode::replace ( const vector< T > &  tVec)
throw (evioException
)
template<typename T >
void evio::evioDOMNode::replace ( const T *  tBuf,
int  len 
)
throw (evioException
)
string evioDOMNode::toString ( void  ) const
virtual

Returns XML string listing container node contents.

Returns
XML string listing contents

Friends And Related Function Documentation

friend class evioDOMTree
friend

Allows evioDOMTree class to manipulate nodes.

Member Data Documentation

int evio::evioDOMNode::contentType
protected

Content type.

Referenced by createUnknownEvioDOMNode().

uint8_t evio::evioDOMNode::num

The node num, max 8 bits, used by BANK and String container types (2-word header).

Referenced by evio::evioToStringConfig::skipNode().

evioDOMNodeP evio::evioDOMNode::parent
protected

Pointer to node parent.

Referenced by evio::evioDOMTree::addBank().

evioDOMTree* evio::evioDOMNode::parentTree
protected

Pointer to parent tree if this node is the root.

uint16_t evio::evioDOMNode::tag

The node tag, max 16-bits depending on container type.

Referenced by evio::evioToStringConfig::skipNode().


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