## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.9

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

# XalanSourceTreeDocumentAllocator Class Reference

List of all members.

## Public Types

- typedef XalanSourceTreeDocument data_type
- typedef ReusableArenaAllocator<
  data_type > ArenaAllocatorType
- typedef ArenaAllocatorType::size_type size_type
- typedef XalanSourceTreeDocument::block_size_type block_size_type
- typedef XalanSourceTreeDocument::bucket_count_type bucket_count_type
- typedef XalanSourceTreeDocument::bucket_size_type bucket_size_type
- enum {
  eDefaultAttributeAllocatorBlockSize = XalanSourceTreeDocument::eDefaultAttributeAllocatorBlockSize, eDefaultAttributeNSAllocatorBlockSize = XalanSourceTreeDocument::eDefaultAttributeNSAllocatorBlockSize, eDefaultCommentAllocatorBlockSize = XalanSourceTreeDocument::eDefaultCommentAllocatorBlockSize, eDefaultElementAllocatorBlockSize = XalanSourceTreeDocument::eDefaultElementAllocatorBlockSize,
  eDefaultElementNSAllocatorBlockSize = XalanSourceTreeDocument::eDefaultElementNSAllocatorBlockSize, eDefaultPIAllocatorBlockSize = XalanSourceTreeDocument::eDefaultPIAllocatorBlockSize, eDefaultTextAllocatorBlockSize = XalanSourceTreeDocument::eDefaultTextAllocatorBlockSize, eDefaultTextIWSAllocatorBlockSize = XalanSourceTreeDocument::eDefaultTextIWSAllocatorBlockSize,
  eDefaultNamesStringPoolBlockSize = XalanSourceTreeDocument::eDefaultNamesStringPoolBlockSize, eDefaultNamesStringPoolBucketCount = XalanSourceTreeDocument::eDefaultNamesStringPoolBucketCount, eDefaultNamesStringPoolBucketSize = XalanSourceTreeDocument::eDefaultNamesStringPoolBucketSize, eDefaultValuesStringPoolBlockSize = XalanSourceTreeDocument::eDefaultValuesStringPoolBlockSize,
  eDefaultValuesStringPoolBucketCount = XalanSourceTreeDocument::eDefaultValuesStringPoolBucketCount, eDefaultValuesStringPoolBucketSize = XalanSourceTreeDocument::eDefaultValuesStringPoolBucketSize
  }

## Public Member Functions

- XalanSourceTreeDocumentAllocator (MemoryManagerType &theManager, size_type theBlockCount)
    Construct an instance that will allocate blocks of the specified size.
- ~XalanSourceTreeDocumentAllocator ()
- data_type * create (bool fPoolAllText=true, block_size_type theNamesStringPoolBlockSize=eDefaultNamesStringPoolBlockSize, bucket_count_type theNamesStringPoolBucketCount=eDefaultNamesStringPoolBucketCount, bucket_size_type theNamesStringPoolBucketSize=eDefaultNamesStringPoolBucketSize, block_size_type theValuesStringPoolBlockSize=eDefaultValuesStringPoolBlockSize, bucket_count_type theValuesStringPoolBucketCount=eDefaultValuesStringPoolBucketCount, bucket_size_type theValuesStringPoolBucketSize=eDefaultValuesStringPoolBucketSize)
    Create a XalanSourceTreeDocument object.
- data_type * create (size_type theAttributeBlockSize, size_type theAttributeNSBlockSize, size_type theCommentBlockSize, size_type theElementBlockSize, size_type theElementNSBlockSize, size_type thePIBlockSize, size_type theTextBlockSize, size_type theTextIWSBlockSize, bool fPoolAllText=true)
    Create a XalanSourceTreeDocument object.
- bool destroy (data_type *theObject)
    Delete a XalanSourceTreeDocument object from allocator.
- bool ownsObject (const data_type *theObject)
    Determine if an object is owned by the allocator...
- void reset ()
    Delete all XalanSourceTreeDocument objects from allocator.
- size_type getBlockCount () const
    Get the number of ArenaBlocks currently allocated.
- size_type getBlockSize () const
    Get size of an ArenaBlock, that is, the number of objects in each block.

## Member Typedef Documentation

typedef ReusableArenaAllocator<data_type> XalanSourceTreeDocumentAllocator::ArenaAllocatorType

typedef XalanSourceTreeDocument::block_size_type XalanSourceTreeDocumentAllocator::block_size_type

typedef XalanSourceTreeDocument::bucket_count_type XalanSourceTreeDocumentAllocator::bucket_count_type

typedef XalanSourceTreeDocument::bucket_size_type XalanSourceTreeDocumentAllocator::bucket_size_type

typedef XalanSourceTreeDocument XalanSourceTreeDocumentAllocator::data_type

typedef ArenaAllocatorType::size_type XalanSourceTreeDocumentAllocator::size_type

## Member Enumeration Documentation

anonymous enum

Enumeration values:

  eDefaultAttributeAllocatorBlockSize |
  eDefaultAttributeNSAllocatorBlockSize |
  eDefaultCommentAllocatorBlockSize |
  eDefaultElementAllocatorBlockSize |
  eDefaultElementNSAllocatorBlockSize |
  eDefaultPIAllocatorBlockSize |
  eDefaultTextAllocatorBlockSize |
  eDefaultTextIWSAllocatorBlockSize |
  eDefaultNamesStringPoolBlockSize |
  eDefaultNamesStringPoolBucketCount |
  eDefaultNamesStringPoolBucketSize |
  eDefaultValuesStringPoolBlockSize |
  eDefaultValuesStringPoolBucketCount |
  eDefaultValuesStringPoolBucketSize |

## Constructor & Destructor Documentation

XalanSourceTreeDocumentAllocator::XalanSourceTreeDocumentAllocator | ( | MemoryManagerType & | theManager,
|  | size_type | theBlockCount
| ) |

Construct an instance that will allocate blocks of the specified size.

Parameters:

  theBlockSize | The block size.

XalanSourceTreeDocumentAllocator::~XalanSourceTreeDocumentAllocator | ( |  | ) |

## Member Function Documentation

data_type* XalanSourceTreeDocumentAllocator::create | ( | size_type | theAttributeBlockSize,
|  | size_type | theAttributeNSBlockSize,
|  | size_type | theCommentBlockSize,
|  | size_type | theElementBlockSize,
|  | size_type | theElementNSBlockSize,
|  | size_type | thePIBlockSize,
|  | size_type | theTextBlockSize,
|  | size_type | theTextIWSBlockSize,
|  | bool | fPoolAllText = true
| ) |

Create a XalanSourceTreeDocument object.

Parameters:

  fPoolAllText | If false, text node data that is not whitespace will not be pooled.
  theAttributeBlockSize | The block size for allocating attribute nodes
  theAttributeNSBlockSize | The block size for allocating attribute NS nodes
  theCommentBlockSize | The block size for allocating comment nodes
  theElementBlockSize | The block size for allocating element nodes
  theElementNSBlockSize | The block size for allocating element nodes
  theTextBlockSize | The block size for allocating text nodes,
  theTextIWSBlockSize | The block size for allocating text IWS nodes,

Returns:
  pointer to a node

data_type* XalanSourceTreeDocumentAllocator::create | ( | bool | fPoolAllText = true,
|  | block_size_type | theNamesStringPoolBlockSize = eDefaultNamesStringPoolBlockSize,
|  | bucket_count_type | theNamesStringPoolBucketCount = eDefaultNamesStringPoolBucketCount,
|  | bucket_size_type | theNamesStringPoolBucketSize = eDefaultNamesStringPoolBucketSize,
|  | block_size_type | theValuesStringPoolBlockSize = eDefaultValuesStringPoolBlockSize,
|  | bucket_count_type | theValuesStringPoolBucketCount = eDefaultValuesStringPoolBucketCount,
|  | bucket_size_type | theValuesStringPoolBucketSize = eDefaultValuesStringPoolBucketSize
| ) |

Create a XalanSourceTreeDocument object.

Parameters:

  fPoolAllText | If false, text node data that is not whitespace will not be pooled.
  theNamesStringPoolBlockSize | The block size for allocating strings in the name pool
  theNamesStringPoolBucketCount | The number of buckets for allocating strings in the name pool
  theNamesStringPoolBucketSize | The bucket size for allocating strings in the name pool
  theValuesStringPoolBlockSize | The block size for allocating strings in the values pool
  theValuesStringPoolBucketCount | The number of buckets for allocating strings in the values pool
  theValuesStringPoolBucketSize | The bucket size for allocating strings in the values pool

Returns:
  pointer to a node

bool XalanSourceTreeDocumentAllocator::destroy | ( | data_type * | theObject | ) |

| Delete a XalanSourceTreeDocument object from allocator.

size_type XalanSourceTreeDocumentAllocator::getBlockCount | ( |  | ) | const

Get the number of ArenaBlocks currently allocated.

Returns:
  The number of blocks.

size_type XalanSourceTreeDocumentAllocator::getBlockSize | ( |  | ) | const

Get size of an ArenaBlock, that is, the number of objects in each block.

Returns:
  The size of the block

bool XalanSourceTreeDocumentAllocator::ownsObject | ( | const data_type * | theObject | ) |

| Determine if an object is owned by the allocator...

void XalanSourceTreeDocumentAllocator::reset | ( |  | ) |

| Delete all XalanSourceTreeDocument objects from allocator.

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

- XalanSourceTreeDocumentAllocator.hpp

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.9 Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.