Xalan-C++ API Documentation
Go to the documentation of this file.
19 #if !defined(ARENABLOCKBASE_INCLUDE_GUARD_1357924680)
20 #define ARENABLOCKBASE_INCLUDE_GUARD_1357924680
30 #if !defined(XALAN_NO_SELECTIVE_TEMPLATE_INSTANTIATION)
35 XALAN_CPP_NAMESPACE_BEGIN
38 #if defined(XALAN_NO_SELECTIVE_TEMPLATE_INSTANTIATION)
41 class ArenaBlockAllocator
46 typedef ptrdiff_t difference_type;
47 typedef Type* pointer;
48 typedef const Type* const_pointer;
49 typedef Type& reference;
50 typedef const Type& const_reference;
51 typedef Type value_type;
53 ArenaBlockAllocator(MemoryManager& theManager) :
54 m_memoryManager(theManager)
58 ~ArenaBlockAllocator()
65 return m_memoryManager;
73 return (pointer)m_memoryManager.allocate(size *
sizeof(Type));
83 m_memoryManager.deallocate(p);
90 ArenaBlockAllocator(
const ArenaBlockAllocator<Type>&);
92 ArenaBlockAllocator<Type>&
93 operator=(
const ArenaBlockAllocator<Type>&);
95 MemoryManager& m_memoryManager;
101 template<
class ObjectType,
102 #if defined(XALAN_NO_DEFAULT_TEMPLATE_ARGUMENTS)
105 class SizeType =
size_t>
113 #if defined(XALAN_NO_SELECTIVE_TEMPLATE_INSTANTIATION)
190 MemoryManager& theManager,
201 assert(theBlockSize > 0);
222 const ObjectType* theObject,
232 XALAN_STD_QUALIFIER less<const ObjectType*> functor;
299 XALAN_CPP_NAMESPACE_END
303 #endif // !defined(ARENABLOCKBASE_INCLUDE_GUARD_1357924680)
ObjectType * m_objectBlock
ArenaBlockBase< ObjectType, SizeType > ThisType
void deallocate(pointer p, size_type)
size_type getBlockOffset(const ObjectType *theObject) const
size_type getBlockSize() const
bool ownsBlock(const ObjectType *theObject) const
bool blockAvailable() const
MemoryManager & getMemoryManager()
bool isInBorders(const ObjectType *theObject, size_type rightBoundary) const
ArenaBlockBase(MemoryManager &theManager, size_type theBlockSize)
size_type getCountAllocated() const
XALAN_CPP_NAMESPACE_BEGIN typedef size_t size_type
const size_type m_blockSize
AllocatorType m_allocator
MemoryManager & getMemoryManager()
#define XALAN_NEW_STD_ALLOCATOR
ObjectType * getBlockAddress(size_type theOffset) const
XalanAllocator< ObjectType > AllocatorType
Interpreting class diagrams
Doxygen and
GraphViz are
used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.11
Copyright © 1999-2012 The Apache Software Foundation.
All Rights Reserved.
|
|