Xerces-C++: DOMMemoryManager Class Reference (original) (raw)
The [DOMMemoryManager](classDOMMemoryManager.html "The DOMMemoryManager interface exposes the memory allocation-related functionalities of a DOMDocument") interface exposes the memory allocation-related functionalities of a [DOMDocument](classDOMDocument.html "The DOMDocument interface represents the entire XML document.") More...
#include <[xercesc/dom/DOMMemoryManager.hpp](DOMMemoryManager%5F8hpp%5Fsource.html)>
| Protected Member Functions |
|---|
| Hidden constructors |
| Destructor | |
|---|---|
| enum | NodeObjectType { ATTR_OBJECT = 0 , ATTR_NS_OBJECT = 1 , CDATA_SECTION_OBJECT = 2 , COMMENT_OBJECT = 3 , DOCUMENT_FRAGMENT_OBJECT = 4 , DOCUMENT_TYPE_OBJECT = 5 , ELEMENT_OBJECT = 6 , ELEMENT_NS_OBJECT = 7 , ENTITY_OBJECT = 8 , ENTITY_REFERENCE_OBJECT = 9 , NOTATION_OBJECT = 10 , PROCESSING_INSTRUCTION_OBJECT = 11 , TEXT_OBJECT = 12 } |
| virtual | ~DOMMemoryManager () |
| Destructor. | |
| virtual XMLSize_t | getMemoryAllocationBlockSize () const =0 |
| Returns the size of the chunks of memory allocated by the memory manager. | |
| virtual void | setMemoryAllocationBlockSize (XMLSize_t size)=0 |
| Set the size of the chunks of memory allocated by the memory manager. | |
| virtual void * | allocate (XMLSize_t amount)=0 |
| Allocate a memory block of the requested size from the managed pool. | |
| virtual void * | allocate (XMLSize_t amount, DOMMemoryManager::NodeObjectType type)=0 |
| Allocate a memory block of the requested size from the managed pool of DOM objects. | |
| virtual void | release (DOMNode *object, DOMMemoryManager::NodeObjectType type)=0 |
| Release a DOM object and place its memory back in the pool. | |
| virtual XMLCh * | cloneString (const XMLCh *src)=0 |
| Allocate a memory block from the mnaged pool and copy the provided string. | |
The [DOMMemoryManager](classDOMMemoryManager.html "The DOMMemoryManager interface exposes the memory allocation-related functionalities of a DOMDocument") interface exposes the memory allocation-related functionalities of a [DOMDocument](classDOMDocument.html "The DOMDocument interface represents the entire XML document.")
◆ NodeObjectType
| Enumerator |
|---|
| ATTR_OBJECT |
| ATTR_NS_OBJECT |
| CDATA_SECTION_OBJECT |
| COMMENT_OBJECT |
| DOCUMENT_FRAGMENT_OBJECT |
| DOCUMENT_TYPE_OBJECT |
| ELEMENT_OBJECT |
| ELEMENT_NS_OBJECT |
| ENTITY_OBJECT |
| ENTITY_REFERENCE_OBJECT |
| NOTATION_OBJECT |
| PROCESSING_INSTRUCTION_OBJECT |
| TEXT_OBJECT |
| DOMMemoryManager::DOMMemoryManager ( ) | protected |
|---|
◆ ~DOMMemoryManager()
| virtual DOMMemoryManager::~DOMMemoryManager ( ) | virtual |
|---|
Destructor.
◆ allocate() [1/2]
| virtual void * DOMMemoryManager::allocate ( XMLSize_t amount) | pure virtual |
|---|
Allocate a memory block of the requested size from the managed pool.
Parameters
| amount | the size of the new memory block |
|---|
Returns
the pointer to the newly allocated block
◆ allocate() [2/2]
| virtual void * DOMMemoryManager::allocate ( XMLSize_t amount, DOMMemoryManager::NodeObjectType type ) | pure virtual |
|---|
Allocate a memory block of the requested size from the managed pool of DOM objects.
Parameters
| amount | the size of the new memory block |
|---|---|
| type | the type of the DOM object that will be stored in the block |
Returns
the pointer to the newly allocated block
◆ cloneString()
| virtual XMLCh * DOMMemoryManager::cloneString ( const XMLCh * src) | pure virtual |
|---|
Allocate a memory block from the mnaged pool and copy the provided string.
Parameters
| src | the string to be copied |
|---|
Returns
the pointer to the newly allocated block
◆ getMemoryAllocationBlockSize()
| virtual XMLSize_t DOMMemoryManager::getMemoryAllocationBlockSize ( ) const | pure virtual |
|---|
Returns the size of the chunks of memory allocated by the memory manager.
Returns
the dimension of the chunks of memory allocated by the memory manager
◆ release()
| virtual void DOMMemoryManager::release ( DOMNode * object, DOMMemoryManager::NodeObjectType type ) | pure virtual |
|---|
Release a DOM object and place its memory back in the pool.
Parameters
| object | the pointer to the DOM node |
|---|---|
| type | the type of the DOM object |
◆ setMemoryAllocationBlockSize()
| virtual void DOMMemoryManager::setMemoryAllocationBlockSize ( XMLSize_t size) | pure virtual |
|---|
Set the size of the chunks of memory allocated by the memory manager.
Parameters
| size | the new size of the chunks; it must be greater than 4KB |
|---|
The documentation for this class was generated from the following file: