<HTML><HEAD><TITLE>Xalan-C++ API Documentation</TITLE></HEAD>
<BODY>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center">The Xalan C++ XSLT Processor Version 1.10</h3>
</BODY>
<!-- Generated by Doxygen 1.2.8.1 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
<hr><h1>XalanAVTPartSimpleAllocator  Class Reference</h1><code>#include &lt;<a class="el" href="XalanAVTPartSimpleAllocator_8hpp-source.html">XalanAVTPartSimpleAllocator.hpp</a>&gt;</code>
<p>
Collaboration diagram for XalanAVTPartSimpleAllocator:<p><center><img src="classXalanAVTPartSimpleAllocator__coll__graph.gif" border="0" usemap="#XalanAVTPartSimpleAllocator_coll_map" alt="Collaboration graph"></center>
<map name="XalanAVTPartSimpleAllocator_coll_map">
<area href="classArenaAllocator.html" shape="rect" coords="12,237,196,213">
<area href="classXalanList.html" shape="rect" coords="6,146,201,122">
<area href="structXalanList_1_1Node.html" shape="rect" coords="52,42,156,18">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classXalanAVTPartSimpleAllocator-members.html">List of all members.</a><h2>Public Types</h2>
<ul>
<li>typedef <a class="el" href="classAVTPartSimple.html">AVTPartSimple</a> <a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a>
<li>typedef <a class="el" href="classArenaAllocator.html">ArenaAllocator</a>&lt;<a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a>&gt; <a class="el" href="classXalanAVTPartSimpleAllocator.html#s1">ArenaAllocatorType</a>
<li>typedef ArenaAllocatorType::size_type <a class="el" href="classXalanAVTPartSimpleAllocator.html#s2">size_type</a>
</ul>
<h2>Public Methods</h2>
<ul>
<li><a class="el" href="classXalanAVTPartSimpleAllocator.html#a0">XalanAVTPartSimpleAllocator</a> (<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp;theManager, <a class="el" href="classXalanAVTPartSimpleAllocator.html#s2">size_type</a> theBlockCount)
<dl class="el"><dd><font size=-1><em>Construct an instance that will allocate blocks of the specified size.</em> <a href="#a0">More...</a><em><br><br></em></font></dl><li><a class="el" href="classXalanAVTPartSimpleAllocator.html#a1">~XalanAVTPartSimpleAllocator</a> ()
<li><a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a>* <a class="el" href="classXalanAVTPartSimpleAllocator.html#a2">create</a> (<a class="el" href="classStylesheetConstructionContext.html">StylesheetConstructionContext</a> &amp;constructionContext, const XalanDOMChar *val, <a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> len)
<dl class="el"><dd><font size=-1><em>Create an instance.</em> <a href="#a2">More...</a><em><br><br></em></font></dl><li>bool <a class="el" href="classXalanAVTPartSimpleAllocator.html#a3">ownsObject</a> (const <a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a> *theObject)
<dl class="el"><dd><font size=-1><em>Determine if an object is owned by the allocator...</em> <a href="#a3">More...</a><em><br><br></em></font></dl><li>void <a class="el" href="classXalanAVTPartSimpleAllocator.html#a4">reset</a> ()
<dl class="el"><dd><font size=-1><em>Delete all objects from the allocator.</em> <a href="#a4">More...</a><em><br><br></em></font></dl><li><a class="el" href="classXalanAVTPartSimpleAllocator.html#s2">size_type</a> <a class="el" href="classXalanAVTPartSimpleAllocator.html#a5">getBlockCount</a> () const
<dl class="el"><dd><font size=-1><em>Get the number of ArenaBlocks currently allocated.</em> <a href="#a5">More...</a><em><br><br></em></font></dl><li><a class="el" href="classXalanAVTPartSimpleAllocator.html#s2">size_type</a> <a class="el" href="classXalanAVTPartSimpleAllocator.html#a6">getBlockSize</a> () const
<dl class="el"><dd><font size=-1><em>Get size of an <a class="el" href="classArenaBlock.html">ArenaBlock</a>, that is, the number of objects in each block.</em> <a href="#a6">More...</a><em><br><br></em></font></dl></ul>
<hr><h2>Member Typedef Documentation</h2>
<a name="s1" doxytag="XalanAVTPartSimpleAllocator::ArenaAllocatorType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef <a class="el" href="classArenaAllocator.html">ArenaAllocator</a>&lt; <a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a> &gt; XalanAVTPartSimpleAllocator::ArenaAllocatorType&lt;<a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a>&gt;
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="s0" doxytag="XalanAVTPartSimpleAllocator::data_type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef <a class="el" href="classAVTPartSimple.html">AVTPartSimple</a> XalanAVTPartSimpleAllocator::data_type
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="s2" doxytag="XalanAVTPartSimpleAllocator::size_type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef ArenaAllocatorType::size_type XalanAVTPartSimpleAllocator::size_type
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="XalanAVTPartSimpleAllocator::XalanAVTPartSimpleAllocator"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
XalanAVTPartSimpleAllocator::XalanAVTPartSimpleAllocator (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp; <em>theManager</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanAVTPartSimpleAllocator.html#s2">size_type</a> <em>theBlockCount</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Construct an instance that will allocate blocks of the specified size.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>theBlockSize</em>
&nbsp;</td><td>
The block size. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a1" doxytag="XalanAVTPartSimpleAllocator::~XalanAVTPartSimpleAllocator"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
XalanAVTPartSimpleAllocator::~XalanAVTPartSimpleAllocator (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a2" doxytag="XalanAVTPartSimpleAllocator::create"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a> * XalanAVTPartSimpleAllocator::create (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classStylesheetConstructionContext.html">StylesheetConstructionContext</a> &amp; <em>constructionContext</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const XalanDOMChar * <em>val</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> <em>len</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Create an instance.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>constructionContext</em>
&nbsp;</td><td>
context when object constructed </td></tr>
<tr><td valign=top><em>val</em>
&nbsp;</td><td>
A pure string section of an <a class="el" href="classAVT.html">AVT</a> </td></tr>
<tr><td valign=top><em>len</em>
&nbsp;</td><td>
The length of val
<p>
</td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
A pointer to the new instance. </dl>    </td>
  </tr>
</table>
<a name="a5" doxytag="XalanAVTPartSimpleAllocator::getBlockCount"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classXalanAVTPartSimpleAllocator.html#s2">size_type</a> XalanAVTPartSimpleAllocator::getBlockCount (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the number of ArenaBlocks currently allocated.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
The number of blocks. </dl>    </td>
  </tr>
</table>
<a name="a6" doxytag="XalanAVTPartSimpleAllocator::getBlockSize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classXalanAVTPartSimpleAllocator.html#s2">size_type</a> XalanAVTPartSimpleAllocator::getBlockSize (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get size of an <a class="el" href="classArenaBlock.html">ArenaBlock</a>, that is, the number of objects in each block.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
The size of the block </dl>    </td>
  </tr>
</table>
<a name="a3" doxytag="XalanAVTPartSimpleAllocator::ownsObject"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
bool XalanAVTPartSimpleAllocator::ownsObject (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanAVTPartSimpleAllocator.html#s0">data_type</a> * <em>theObject</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Determine if an object is owned by the allocator...
<p>
    </td>
  </tr>
</table>
<a name="a4" doxytag="XalanAVTPartSimpleAllocator::reset"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void XalanAVTPartSimpleAllocator::reset (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Delete all objects from the allocator.
<p>
    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XalanAVTPartSimpleAllocator_8hpp-source.html">XalanAVTPartSimpleAllocator.hpp</a></ul>
<p align="center"><a href="diagramnotes.html">Interpreting class diagrams</a></p>
<p><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><A href="http://www.stack.nl/~dimitri/doxygen/">Doxygen</A> and 
<A href="http://www.research.att.com/sw/tools/graphviz/">GraphViz</A> are used to generate this API documentation from the Xalan-C header files.</I></FONT></p>

<TABLE border="0" cellpadding="0" cellspacing="0" width="820"><TR><TD bgcolor="#0086b2"><IMG height="1" src="../resources/dot.gif" width="1" alt="dot"></TD></TR></TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="80%">
	<TR>
		<TD WIDTH="80%" VALIGN="TOP">
			<P ALIGN="CENTER"><B>Xalan-C++ XSLT Processor Version 1.10</B><BR>
			Copyright &copy; 1999-2004 The Apache Software Foundation. All Rights Reserved.</i></p>
		</TD>
	</TR>
	<TR>
		<TD WIDTH="100%">
			<P ALIGN="CENTER"><IMG SRC="ApacheLogo.jpg" WIDTH="387" HEIGHT="100" ALIGN="BOTTOM" BORDER="0" ALT="Apache Logo">
		</TD>
	</TR>
</TABLE>
