Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Public Types | Public Member Functions | Protected Attributes | List of all members
ArenaAllocator< ObjectType, ArenaBlockType > Class Template Reference

Public Types

typedef ArenaAllocator
< ObjectType, ArenaBlockType > 
ThisType
typedef XalanList
< ArenaBlockType * > 
ArenaBlockListType
typedef ArenaBlockType::size_type size_type

Public Member Functions

 ArenaAllocator (MemoryManagerType &theManager, size_type theBlockSize)
virtual ~ArenaAllocator ()
MemoryManagerTypegetMemoryManager ()
const MemoryManagerTypegetMemoryManager () const
size_type getBlockSize () const
void setBlockSize (size_type theSize)
size_type getBlockCount () const
virtual ObjectType * allocateBlock ()
virtual void commitAllocation (ObjectType *theObject)
virtual bool ownsObject (const ObjectType *theObject) const
virtual void reset ()

Protected Attributes

size_type m_blockSize
ArenaBlockListType m_blocks

Member Typedef Documentation

template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
typedef XalanList<ArenaBlockType*> ArenaAllocator< ObjectType, ArenaBlockType >::ArenaBlockListType
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
typedef ArenaBlockType::size_type ArenaAllocator< ObjectType, ArenaBlockType >::size_type
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
typedef ArenaAllocator<ObjectType, ArenaBlockType> ArenaAllocator< ObjectType, ArenaBlockType >::ThisType

Constructor & Destructor Documentation

template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
ArenaAllocator< ObjectType, ArenaBlockType >::ArenaAllocator ( MemoryManagerType theManager,
size_type  theBlockSize 
)
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
virtual ArenaAllocator< ObjectType, ArenaBlockType >::~ArenaAllocator ( )
virtual

Member Function Documentation

template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
virtual ObjectType* ArenaAllocator< ObjectType, ArenaBlockType >::allocateBlock ( )
virtual
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
virtual void ArenaAllocator< ObjectType, ArenaBlockType >::commitAllocation ( ObjectType *  theObject)
virtual
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
size_type ArenaAllocator< ObjectType, ArenaBlockType >::getBlockCount ( ) const
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
size_type ArenaAllocator< ObjectType, ArenaBlockType >::getBlockSize ( ) const
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
MemoryManagerType& ArenaAllocator< ObjectType, ArenaBlockType >::getMemoryManager ( )
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
const MemoryManagerType& ArenaAllocator< ObjectType, ArenaBlockType >::getMemoryManager ( ) const
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
virtual bool ArenaAllocator< ObjectType, ArenaBlockType >::ownsObject ( const ObjectType *  theObject) const
virtual
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
virtual void ArenaAllocator< ObjectType, ArenaBlockType >::reset ( )
virtual
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
void ArenaAllocator< ObjectType, ArenaBlockType >::setBlockSize ( size_type  theSize)

Member Data Documentation

template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
ArenaBlockListType ArenaAllocator< ObjectType, ArenaBlockType >::m_blocks
protected
template<class ObjectType, class ArenaBlockType = ArenaBlock<ObjectType>>
size_type ArenaAllocator< ObjectType, ArenaBlockType >::m_blockSize
protected

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

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo