BaseRefVectorOf< TElem > Class Template Reference

#include <BaseRefVectorOf.hpp>

Inheritance diagram for BaseRefVectorOf< TElem >:

XMemory RefArrayVectorOf< TElem > RefVectorOf< TElem > List of all members.

Public Member Functions

 BaseRefVectorOf (const unsigned int maxElems, const bool adoptElems=true, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
virtual ~BaseRefVectorOf ()=0
void addElement (TElem *const toAdd)
void setElementAt (TElem *const toSet, const unsigned int setAt)
void insertElementAt (TElem *const toInsert, const unsigned int insertAt)
TElem * orphanElementAt (const unsigned int orphanAt)
void removeAllElements ()
void removeElementAt (const unsigned int removeAt)
void removeLastElement ()
bool containsElement (const TElem *const toCheck)
void cleanup ()
void reinitialize ()
unsigned int curCapacity () const
const TElem * elementAt (const unsigned int getAt) const
TElem * elementAt (const unsigned int getAt)
unsigned int size () const
MemoryManagergetMemoryManager () const
void ensureExtraCapacity (const unsigned int length)

Protected Attributes

bool fAdoptedElems
unsigned int fCurCount
unsigned int fMaxCount
TElem ** fElemList
MemoryManagerfMemoryManager

Detailed Description

template<class TElem>
class BaseRefVectorOf< TElem >

Abstract base class for the xerces internal representation of Vector.

The destructor is abstract, forcing each of RefVectorOf and RefArrayVectorOf to implement their own appropriate one.

Definition at line 73 of file BaseRefVectorOf.hpp.


Constructor & Destructor Documentation

template<class TElem>
XERCES_CPP_NAMESPACE_BEGIN BaseRefVectorOf< TElem >::BaseRefVectorOf ( const unsigned int  maxElems,
const bool  adoptElems = true,
MemoryManager *const   manager = XMLPlatformUtils::fgMemoryManager 
)

Definition at line 69 of file BaseRefVectorOf.c.

References MemoryManager::allocate(), BaseRefVectorOf< TElem >::fElemList, and BaseRefVectorOf< TElem >::fMemoryManager.

template<class TElem>
BaseRefVectorOf< TElem >::~BaseRefVectorOf (  )  [pure virtual]

Definition at line 87 of file BaseRefVectorOf.c.


Member Function Documentation

template<class TElem>
void BaseRefVectorOf< TElem >::addElement ( TElem *const   toAdd  ) 

Definition at line 95 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::ensureExtraCapacity(), BaseRefVectorOf< TElem >::fCurCount, and BaseRefVectorOf< TElem >::fElemList.

Referenced by BaseRefVectorOf< TElem >::insertElementAt().

template<class TElem>
void BaseRefVectorOf< TElem >::cleanup (  ) 

Definition at line 235 of file BaseRefVectorOf.c.

References MemoryManager::deallocate(), BaseRefVectorOf< TElem >::fAdoptedElems, BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, and BaseRefVectorOf< TElem >::fMemoryManager.

Referenced by BaseRefVectorOf< TElem >::reinitialize().

template<class TElem>
bool BaseRefVectorOf< TElem >::containsElement ( const TElem *const   toCheck  ) 

Definition at line 219 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fCurCount, and BaseRefVectorOf< TElem >::fElemList.

template<class TElem>
unsigned int BaseRefVectorOf< TElem >::curCapacity (  )  const

Definition at line 272 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fMaxCount.

template<class TElem>
TElem * BaseRefVectorOf< TElem >::elementAt ( const unsigned int  getAt  ) 

Definition at line 286 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, ThrowXML, and XMLExcepts::Vector_BadIndex.

template<class TElem>
const TElem * BaseRefVectorOf< TElem >::elementAt ( const unsigned int  getAt  )  const

Definition at line 278 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, ThrowXML, and XMLExcepts::Vector_BadIndex.

template<class TElem>
void BaseRefVectorOf< TElem >::ensureExtraCapacity ( const unsigned int  length  ) 

Definition at line 303 of file BaseRefVectorOf.c.

References MemoryManager::allocate(), MemoryManager::deallocate(), BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, BaseRefVectorOf< TElem >::fMaxCount, and BaseRefVectorOf< TElem >::fMemoryManager.

Referenced by BaseRefVectorOf< TElem >::addElement(), and BaseRefVectorOf< TElem >::insertElementAt().

template<class TElem>
MemoryManager * BaseRefVectorOf< TElem >::getMemoryManager (  )  const

Definition at line 263 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fMemoryManager.

template<class TElem>
void BaseRefVectorOf< TElem >::insertElementAt ( TElem *const   toInsert,
const unsigned int  insertAt 
)

Definition at line 115 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::addElement(), BaseRefVectorOf< TElem >::ensureExtraCapacity(), BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, ThrowXML, and XMLExcepts::Vector_BadIndex.

template<class TElem>
TElem * BaseRefVectorOf< TElem >::orphanElementAt ( const unsigned int  orphanAt  ) 

Definition at line 138 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, ThrowXML, and XMLExcepts::Vector_BadIndex.

template<class TElem>
void BaseRefVectorOf< TElem >::reinitialize (  ) 

Definition at line 250 of file BaseRefVectorOf.c.

References MemoryManager::allocate(), BaseRefVectorOf< TElem >::cleanup(), BaseRefVectorOf< TElem >::fElemList, BaseRefVectorOf< TElem >::fMaxCount, and BaseRefVectorOf< TElem >::fMemoryManager.

template<class TElem>
void BaseRefVectorOf< TElem >::removeAllElements (  ) 

Definition at line 167 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fAdoptedElems, BaseRefVectorOf< TElem >::fCurCount, and BaseRefVectorOf< TElem >::fElemList.

template<class TElem>
void BaseRefVectorOf< TElem >::removeElementAt ( const unsigned int  removeAt  ) 

Definition at line 181 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fAdoptedElems, BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, ThrowXML, and XMLExcepts::Vector_BadIndex.

template<class TElem>
void BaseRefVectorOf< TElem >::removeLastElement (  ) 

Definition at line 208 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fAdoptedElems, BaseRefVectorOf< TElem >::fCurCount, and BaseRefVectorOf< TElem >::fElemList.

template<class TElem>
void BaseRefVectorOf< TElem >::setElementAt ( TElem *const   toSet,
const unsigned int  setAt 
)

Definition at line 104 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fAdoptedElems, BaseRefVectorOf< TElem >::fCurCount, BaseRefVectorOf< TElem >::fElemList, ThrowXML, and XMLExcepts::Vector_BadIndex.

template<class TElem>
unsigned int BaseRefVectorOf< TElem >::size (  )  const

Definition at line 293 of file BaseRefVectorOf.c.

References BaseRefVectorOf< TElem >::fCurCount.


Member Data Documentation

template<class TElem>
bool BaseRefVectorOf< TElem >::fAdoptedElems [protected]

Definition at line 123 of file BaseRefVectorOf.hpp.

Referenced by BaseRefVectorOf< TElem >::cleanup(), BaseRefVectorOf< TElem >::removeAllElements(), BaseRefVectorOf< TElem >::removeElementAt(), BaseRefVectorOf< TElem >::removeLastElement(), BaseRefVectorOf< TElem >::setElementAt(), and RefArrayVectorOf< TElem >::~RefArrayVectorOf().

template<class TElem>
unsigned int BaseRefVectorOf< TElem >::fCurCount [protected]

Definition at line 124 of file BaseRefVectorOf.hpp.

Referenced by BaseRefVectorOf< TElem >::addElement(), BaseRefVectorOf< TElem >::cleanup(), BaseRefVectorOf< TElem >::containsElement(), BaseRefVectorOf< TElem >::elementAt(), BaseRefVectorOf< TElem >::ensureExtraCapacity(), BaseRefVectorOf< TElem >::insertElementAt(), BaseRefVectorOf< TElem >::orphanElementAt(), BaseRefVectorOf< TElem >::removeAllElements(), BaseRefVectorOf< TElem >::removeElementAt(), BaseRefVectorOf< TElem >::removeLastElement(), BaseRefVectorOf< TElem >::setElementAt(), BaseRefVectorOf< TElem >::size(), RefArrayVectorOf< TElem >::~RefArrayVectorOf(), and RefVectorOf< TElem >::~RefVectorOf().

template<class TElem>
TElem** BaseRefVectorOf< TElem >::fElemList [protected]

Definition at line 126 of file BaseRefVectorOf.hpp.

Referenced by BaseRefVectorOf< TElem >::addElement(), BaseRefVectorOf< TElem >::BaseRefVectorOf(), BaseRefVectorOf< TElem >::cleanup(), BaseRefVectorOf< TElem >::containsElement(), BaseRefVectorOf< TElem >::elementAt(), BaseRefVectorOf< TElem >::ensureExtraCapacity(), BaseRefVectorOf< TElem >::insertElementAt(), BaseRefVectorOf< TElem >::orphanElementAt(), BaseRefVectorOf< TElem >::reinitialize(), BaseRefVectorOf< TElem >::removeAllElements(), BaseRefVectorOf< TElem >::removeElementAt(), BaseRefVectorOf< TElem >::removeLastElement(), BaseRefVectorOf< TElem >::setElementAt(), and RefArrayVectorOf< TElem >::~RefArrayVectorOf().

template<class TElem>
unsigned int BaseRefVectorOf< TElem >::fMaxCount [protected]

Definition at line 125 of file BaseRefVectorOf.hpp.

Referenced by BaseRefVectorOf< TElem >::curCapacity(), BaseRefVectorOf< TElem >::ensureExtraCapacity(), and BaseRefVectorOf< TElem >::reinitialize().

template<class TElem>
MemoryManager* BaseRefVectorOf< TElem >::fMemoryManager [protected]

Definition at line 127 of file BaseRefVectorOf.hpp.

Referenced by BaseRefVectorOf< TElem >::BaseRefVectorOf(), BaseRefVectorOf< TElem >::cleanup(), BaseRefVectorOf< TElem >::ensureExtraCapacity(), BaseRefVectorOf< TElem >::getMemoryManager(), BaseRefVectorOf< TElem >::reinitialize(), RefArrayVectorOf< TElem >::~RefArrayVectorOf(), and RefVectorOf< TElem >::~RefVectorOf().


The documentation for this class was generated from the following files:
Generated on Thu Dec 7 01:19:04 2006 for DT2005.panorama by  doxygen 1.4.7