The DOMMemoryManager interface exposes the memory allocation-related functionalities of a DOMDocument  
 More...
#include <xercesc/dom/DOMMemoryManager.hpp>
|  | 
| 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 interface exposes the memory allocation-related functionalities of a DOMDocument 
◆ 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::DOMMemoryManager | ( |  | ) |  |  | protected | 
 
 
◆ ~DOMMemoryManager()
  
  | 
        
          | virtual DOMMemoryManager::~DOMMemoryManager | ( |  | ) |  |  | virtual | 
 
 
◆ 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]
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()
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: