blob: 7c0d5c27a4768a509f5ab83e1d39febd7e9fc365 [file] [log] [blame]
<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>ArenaAllocator Class Template Reference</h1><code>#include &lt;<a class="el" href="ArenaAllocator_8hpp-source.html">ArenaAllocator.hpp</a>&gt;</code>
<p>
Inheritance diagram for ArenaAllocator:<p><center><img src="classArenaAllocator__inherit__graph.gif" border="0" usemap="#ArenaAllocator_inherit_map" alt="Inheritance graph"></center>
<map name="ArenaAllocator_inherit_map">
<area href="classReusableArenaAllocator.html" shape="rect" coords="6,117,164,93">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ArenaAllocator:<p><center><img src="classArenaAllocator__coll__graph.gif" border="0" usemap="#ArenaAllocator_coll_map" alt="Collaboration graph"></center>
<map name="ArenaAllocator_coll_map">
<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="classArenaAllocator-members.html">List of all members.</a><h2>Public Types</h2>
<ul>
<li>typedef ArenaAllocator&lt;ObjectType,<br>
ArenaBlockType&gt; <a class="el" href="classArenaAllocator.html#s0">ThisType</a>
<li>typedef <a class="el" href="classXalanList.html">XalanList</a>&lt;ArenaBlockType*&gt; <a class="el" href="classArenaAllocator.html#s1">ArenaBlockListType</a>
<li>typedef ArenaBlockType::size_type <a class="el" href="classArenaAllocator.html#s2">size_type</a>
</ul>
<h2>Public Methods</h2>
<ul>
<li><a class="el" href="classArenaAllocator.html#a0">ArenaAllocator</a> (<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp;theManager, <a class="el" href="classArenaAllocator.html#s2">size_type</a> theBlockSize)
<li>virtual <a class="el" href="classArenaAllocator.html#a1">~ArenaAllocator</a> ()
<li><a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a>&amp; <a class="el" href="classArenaAllocator.html#a2">getMemoryManager</a> ()
<li>const <a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a>&amp; <a class="el" href="classArenaAllocator.html#a3">getMemoryManager</a> () const
<li><a class="el" href="classArenaAllocator.html#s2">size_type</a> <a class="el" href="classArenaAllocator.html#a4">getBlockSize</a> () const
<li>void <a class="el" href="classArenaAllocator.html#a5">setBlockSize</a> (<a class="el" href="classArenaAllocator.html#s2">size_type</a> theSize)
<li><a class="el" href="classArenaAllocator.html#s2">size_type</a> <a class="el" href="classArenaAllocator.html#a6">getBlockCount</a> () const
<li>virtual ObjectType* <a class="el" href="classArenaAllocator.html#a7">allocateBlock</a> ()
<li>virtual void <a class="el" href="classArenaAllocator.html#a8">commitAllocation</a> (ObjectType *theObject)
<li>virtual bool <a class="el" href="classArenaAllocator.html#a9">ownsObject</a> (const ObjectType *theObject) const
<li>virtual void <a class="el" href="classArenaAllocator.html#a10">reset</a> ()
</ul>
<h2>Protected Attributes</h2>
<ul>
<li><a class="el" href="classArenaAllocator.html#s2">size_type</a> <a class="el" href="classArenaAllocator.html#n0">m_blockSize</a>
<li><a class="el" href="classArenaAllocator.html#s1">ArenaBlockListType</a> <a class="el" href="classArenaAllocator.html#n1">m_blocks</a>
</ul>
<h3>template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; class ArenaAllocator</h3>
<hr><h2>Member Typedef Documentation</h2>
<a name="s1" doxytag="ArenaAllocator::ArenaBlockListType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
typedef <a class="el" href="classXalanList.html">XalanList</a>&lt; ArenaBlockType *&gt; ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::ArenaBlockListType&lt;ArenaBlockType*&gt;
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<p>
Reimplemented in <a class="el" href="classReusableArenaAllocator.html#s4">ReusableArenaAllocator</a>. </td>
</tr>
</table>
<a name="s0" doxytag="ArenaAllocator::ThisType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
typedef ArenaAllocator&lt; ObjectType, ArenaBlockType &gt; ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::ThisType&lt;ObjectType, ArenaBlockType&gt;
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<p>
Reimplemented in <a class="el" href="classReusableArenaAllocator.html#s3">ReusableArenaAllocator</a>. </td>
</tr>
</table>
<a name="s2" doxytag="ArenaAllocator::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 colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
typedef ArenaBlockType::size_type ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::size_type
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<p>
Reimplemented in <a class="el" href="classReusableArenaAllocator.html#s1">ReusableArenaAllocator</a>. </td>
</tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="ArenaAllocator::ArenaAllocator"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::ArenaAllocator&lt;ObjectType, ArenaBlockType&gt; (
</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="classArenaAllocator.html#s2">size_type</a> <em>theBlockSize</em>&nbsp;)
</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="a1" doxytag="ArenaAllocator::~ArenaAllocator"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::~ArenaAllocator&lt;ObjectType, ArenaBlockType&gt; (
</b></td>
<td valign="bottom"><b>
)<code> [virtual]</code>
</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="a7" doxytag="ArenaAllocator::allocateBlock"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
ObjectType * ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::allocateBlock (
</b></td>
<td valign="bottom"><b>
)<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<p>
Reimplemented in <a class="el" href="classReusableArenaAllocator.html#a3">ReusableArenaAllocator</a>. </td>
</tr>
</table>
<a name="a8" doxytag="ArenaAllocator::commitAllocation"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
void ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::commitAllocation (
</b></td>
<td valign="bottom"><b>
ObjectType * <em>theObject</em>&nbsp;)<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<p>
Reimplemented in <a class="el" href="classReusableArenaAllocator.html#a4">ReusableArenaAllocator</a>. </td>
</tr>
</table>
<a name="a6" doxytag="ArenaAllocator::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 colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classArenaAllocator.html#s2">size_type</a> ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::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>
</td>
</tr>
</table>
<a name="a4" doxytag="ArenaAllocator::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 colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classArenaAllocator.html#s2">size_type</a> ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::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>
</td>
</tr>
</table>
<a name="a3" doxytag="ArenaAllocator::getMemoryManager"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
const <a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp; ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::getMemoryManager (
</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>
</td>
</tr>
</table>
<a name="a2" doxytag="ArenaAllocator::getMemoryManager"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp; ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::getMemoryManager (
</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>
<a name="a9" doxytag="ArenaAllocator::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 colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
bool ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::ownsObject (
</b></td>
<td valign="bottom"><b>
const ObjectType * <em>theObject</em>&nbsp;) const<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
<p>
Reimplemented in <a class="el" href="classReusableArenaAllocator.html#a5">ReusableArenaAllocator</a>. </td>
</tr>
</table>
<a name="a10" doxytag="ArenaAllocator::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 colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
void ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::reset (
</b></td>
<td valign="bottom"><b>
)<code> [virtual]</code>
</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="a5" doxytag="ArenaAllocator::setBlockSize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
void ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::setBlockSize (
</b></td>
<td valign="bottom"><b>
<a class="el" href="classArenaAllocator.html#s2">size_type</a> <em>theSize</em>&nbsp;)
</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 Data Documentation</h2>
<a name="n0" doxytag="ArenaAllocator::m_blockSize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classArenaAllocator.html#s2">size_type</a> ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::m_blockSize<code> [protected]</code>
</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="n1" doxytag="ArenaAllocator::m_blocks"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template&lt;class ObjectType, class ArenaBlockType = ArenaBlock&lt;ObjectType&gt;&gt; </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
<a class="el" href="classArenaAllocator.html#s1">ArenaBlockListType</a> ArenaAllocator&lt;ObjectType, ArenaBlockType&gt;::m_blocks<code> [protected]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="ArenaAllocator_8hpp-source.html">ArenaAllocator.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>