Configurable memory manager. More...
#include <MemoryManager.hpp>
Public Member Functions | |
virtual MemoryManager * | getExceptionMemoryManager ()=0 |
This method is called to obtain the memory manager that should be used to allocate memory used in exceptions. | |
Destructor | |
virtual | ~MemoryManager () |
Default destructor. | |
The pure virtual methods in this interface. | |
virtual void * | allocate (XMLSize_t size)=0 |
This method allocates requested memory. | |
virtual void | deallocate (void *p)=0 |
This method deallocates memory. | |
Protected Member Functions | |
Constructor | |
MemoryManager () | |
Protected default constructor. |
Configurable memory manager.
This interface allows outside applications to plug in their own memory manager to be used by Xerces for memory allocation/deallocation.
virtual xercesc::MemoryManager::~MemoryManager | ( | ) | [inline, virtual] |
Default destructor.
xercesc::MemoryManager::MemoryManager | ( | ) | [inline, protected] |
Protected default constructor.
virtual void* xercesc::MemoryManager::allocate | ( | XMLSize_t | size | ) | [pure virtual] |
This method allocates requested memory.
size | The requested memory size |
Referenced by XQillaAllocator< _Tp >::allocate(), and AutoDeallocate< TYPE >::AutoDeallocate().
virtual void xercesc::MemoryManager::deallocate | ( | void * | p | ) | [pure virtual] |
This method deallocates memory.
p | The pointer to the allocated memory to be deleted |
Implemented in XPath2MemoryManager.
Referenced by XQillaAllocator< _Tp >::deallocate(), AutoDeallocate< TYPE >::set(), and AutoDeallocate< TYPE >::~AutoDeallocate().
virtual MemoryManager* xercesc::MemoryManager::getExceptionMemoryManager | ( | ) | [pure virtual] |
This method is called to obtain the memory manager that should be used to allocate memory used in exceptions.
If the same memory manager can be used, simply return 'this' from this function. Note, however, that if there is a possibility that an exception thrown can outlive the memory manager (for example, because the memory manager object is allocated on the stack or is managed by a stack-bound object), it is recommended that you return XMLPlatformUtils::fgMemoryManager.