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

Sub-class of evioDOMNode represents an evio container node. More...

#include <evioUtil.hxx>

Inheritance diagram for evio::evioDOMContainerNode:
evio::evioDOMNode

Public Member Functions

virtual string getHeader (int depth, const evioToStringConfig *config=&defaultToStringConfig) const
 Returns XML string containing header needed for toString() and related methods. More...
 
virtual string getBody (int depth, const evioToStringConfig *config=&defaultToStringConfig) const
 Returns empty body for container node. More...
 
virtual string getFooter (int depth, const evioToStringConfig *config=&defaultToStringConfig) const
 Returns XML string containing footer needed by toString. More...
 
virtual int getSize (void) const
 Returns number of children of this container node. More...
 
- Public Member Functions inherited from evio::evioDOMNode
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...
 
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...
 

Public Attributes

evioDOMNodeList childList
 STL List of pointers to children. More...
 
- Public Attributes inherited from evio::evioDOMNode
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

 evioDOMContainerNode (evioDOMNodeP parent, uint16_t tag, uint8_t num, ContainerType cType) throw (evioException)
 Container node constructor used internally. More...
 
virtual ~evioDOMContainerNode (void)
 Destructor recursively deletes children. More...
 
 evioDOMContainerNode (const evioDOMContainerNode &cNode) throw (evioException)
 
bool operator= (const evioDOMContainerNode &node)
 
- Protected Member Functions inherited from evio::evioDOMNode
 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...
 

Friends

class evioDOMNode
 Allows evioDOMNode to use private subclass methods. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from evio::evioDOMNode
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...
 
- Static Protected Member Functions inherited from evio::evioDOMNode
static string getIndent (int depth, int size=3)
 Returns indent for pretty-printing, used internally. More...
 
- Protected Attributes inherited from evio::evioDOMNode
evioDOMNodeP parent
 Pointer to node parent. More...
 
evioDOMTreeparentTree
 Pointer to parent tree if this node is the root. More...
 
int contentType
 Content type. More...
 

Detailed Description

Sub-class of evioDOMNode represents an evio container node.

Only accessible to users via pointer to evioDOMNode object.

Constructor & Destructor Documentation

evioDOMContainerNode::evioDOMContainerNode ( evioDOMNodeP  par,
uint16_t  tg,
uint8_t  num,
ContainerType  cType 
)
throw (evioException
)
protected

Container node constructor used internally.

Parameters
parParent node
tgNode tag
numNode num
cTypeContainer node content type
evioDOMContainerNode::~evioDOMContainerNode ( void  )
protectedvirtual

Destructor recursively deletes children.

evio::evioDOMContainerNode::evioDOMContainerNode ( const evioDOMContainerNode cNode)
throw (evioException
)
protected

Member Function Documentation

string evioDOMContainerNode::getBody ( int  depth,
const evioToStringConfig config = &defaultToStringConfig 
) const
virtual

Returns empty body for container node.

Parameters
depthCurrent depth
Returns
Empty string

Implements evio::evioDOMNode.

string evioDOMContainerNode::getFooter ( int  depth,
const evioToStringConfig config = &defaultToStringConfig 
) const
virtual

Returns XML string containing footer needed by toString.

Parameters
depthCurrent depth
Returns
XML string

Implements evio::evioDOMNode.

References evio::BANK, evio::evioDictionary::getNameMap, and evio::evioToStringConfig::toStringDictionary.

string evioDOMContainerNode::getHeader ( int  depth,
const evioToStringConfig config = &defaultToStringConfig 
) const
virtual

Returns XML string containing header needed for toString() and related methods.

Parameters
depthCurrent depth
Returns
XML string

Implements evio::evioDOMNode.

References evio::BANK, evio::evioDictionary::getNameMap, and evio::evioToStringConfig::toStringDictionary.

int evioDOMContainerNode::getSize ( void  ) const
virtual

Returns number of children of this container node.

Returns
Number of children of this container node

Implements evio::evioDOMNode.

bool evio::evioDOMContainerNode::operator= ( const evioDOMContainerNode node)
protected

Friends And Related Function Documentation

friend class evioDOMNode
friend

Allows evioDOMNode to use private subclass methods.

Member Data Documentation

evioDOMNodeList evio::evioDOMContainerNode::childList

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