## Xalan-C++ API Documentation

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

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# XalanSourceTreeDocumentAllocator Class Reference

`#include <XalanSourceTreeDocumentAllocator.hpp>`

Collaboration diagram for XalanSourceTreeDocumentAllocator:

[legend]
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 Methods

- XalanSourceTreeDocumentAllocator (size_type theBlockCount)
    Construct an instance that will allocate blocks of the specified size. More...
- ~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. More...
- 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. More...
- bool destroy (data_type *theObject)
    Delete a XalanSourceTreeDocument object from allocator. More...
- bool ownsObject (const data_type *theObject)
    Determine if an object is owned by the allocator... More...
- void reset ()
    Delete all XalanSourceTreeDocument objects from allocator. More...
- size_type getBlockCount () const
    Get the number of ArenaBlocks currently allocated. More...
- size_type getBlockSize () const
    Get size of an ArenaBlock, that is, the number of objects in each block. More...

## Member Typedef Documentation

typedef ReusableArenaAllocator< data_type > XalanSourceTreeDocumentAllocator::ArenaAllocatorType<data_type>

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 ( | 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.5 Copyright © 2000, 2001, 2002, 2003 The Apache Software Foundation. All Rights Reserved.