blob: 8eca172135d09325fdd06b1ac1cf6c6654a2b591 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Xalan-C++ API : Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<!-- The head section is copied from Doxygen 1.7.1 generated default output -->
<body>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center"><a href="../index.html">The Xalan C++ XSLT Processor Version 1.11</a></h3>
<hr/>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
<div class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
<div class="headertitle">
<h1>XalanDOMStringPool Class Reference</h1> </div>
</div>
<div class="contents">
<!-- doxytag: class="XalanDOMStringPool" -->
<p><code>#include &lt;<a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>&gt;</code></p>
<p>Inherited by <a class="el" href="classXercesLiaisonXalanDOMStringPool.html">XercesLiaisonXalanDOMStringPool</a>.</p>
<div class="dynheader">
Collaboration diagram for XalanDOMStringPool:</div>
<div class="dyncontent">
<div class="center"><img src="classXalanDOMStringPool__coll__graph.png" border="0" usemap="#XalanDOMStringPool_coll__map" alt="Collaboration graph"/></div>
<map name="XalanDOMStringPool_coll__map" id="XalanDOMStringPool_coll__map">
<area shape="rect" id="node2" href="classXalanDOMStringAllocator.html" title="XalanDOMStringAllocator" alt="" coords="4635,291,4819,320"/><area shape="rect" id="node4" href="classArenaAllocator.html" title="ArenaAllocator\&lt; data_type \&gt;" alt="" coords="4235,291,4445,320"/><area shape="rect" id="node6" href="classArenaBlock.html" title="ArenaBlock\&lt; data_type \&gt;" alt="" coords="3857,1412,4044,1441"/><area shape="rect" id="node8" href="classArenaBlockBase.html" title="ArenaBlockBase\&lt; data_type, size_t \&gt;" alt="" coords="3399,1667,3663,1696"/><area shape="rect" id="node10" href="classElemValueOf.html" title="ElemValueOf" alt="" coords="2987,1667,3088,1696"/><area shape="rect" id="node12" href="classElemTemplateElement.html" title="ElemTemplateElement" alt="" coords="2399,1136,2564,1165"/><area shape="rect" id="node35" href="classElemTextLiteral.html" title="ElemTextLiteral" alt="" coords="2979,1037,3096,1067"/><area shape="rect" id="node53" href="classElemTemplate.html" title="ElemTemplate" alt="" coords="2981,1301,3093,1331"/><area shape="rect" id="node105" href="classStylesheetRoot.html" title="This acts as the stylesheet root of the stylesheet tree, and holds values that are shared by all styl..." alt="" coords="3892,1160,4009,1189"/><area shape="rect" id="node14" href="classPrefixResolver.html" title="This class defines an interface for classes that resolve namespace prefixes to their URIs..." alt="" coords="2037,988,2147,1017"/><area shape="rect" id="node76" href="classStylesheet.html" title="This class represents the base stylesheet or an &quot;import&quot; stylesheet." alt="" coords="3485,1160,3576,1189"/><area shape="rect" id="node16" href="classNamespacesHandler.html" title="NamespacesHandler" alt="" coords="2015,1225,2169,1255"/><area shape="rect" id="node18" href="classXalanVector.html" title="XalanVector\&lt; Namespace \&gt;" alt="" coords="1431,1297,1636,1327"/><area shape="rect" id="node20" href="classXalanMap.html" title="XalanMap\&lt; const XalanDOMString *, const XalanDOMString * \&gt;" alt="" coords="1316,828,1751,857"/><area shape="rect" id="node22" href="classXalanVector.html" title="XalanVector\&lt; BucketType, ConstructWithMemoryManagerTraits\&lt; BucketType \&gt; \&gt;" alt="" coords="433,597,977,627"/><area shape="rect" id="node79" href="classXalanMap.html" title="XalanMap\&lt; XalanDOMString, ExtensionNSHandler * \&gt;" alt="" coords="1348,555,1719,584"/><area shape="rect" id="node93" href="classXalanMap.html" title="XalanMap\&lt; XalanDOMString, PatternTableVectorType \&gt;" alt="" coords="1344,415,1723,444"/><area shape="rect" id="node108" href="classXalanMap.html" title="XalanMap\&lt; const XalanQName *, AttributeSetVectorType \&gt;" alt="" coords="1329,291,1737,320"/><area shape="rect" id="node119" href="classXalanMap.html" title="XalanMap\&lt; XalanQNameByReference, const ElemTemplate * \&gt;" alt="" coords="1319,681,1748,711"/><area shape="rect" id="node24" href="structXalanMapKeyTraits_3_01const_01XalanDOMString_01_5_01_4.html" title="XalanMapKeyTraits\&lt; const XalanDOMString * \&gt;" alt="" coords="541,889,869,919"/><area shape="rect" id="node26" href="classXalanList.html" title="XalanList\&lt; Entry \&gt;" alt="" coords="633,403,777,432"/><area shape="rect" id="node28" href="structXalanList_1_1Node.html" title="XalanList\&lt; Type \&gt;::Node" alt="" coords="44,107,225,136"/><area shape="rect" id="node139" href="classXalanList.html" title="XalanList\&lt; ArenaBlock\&lt; data_type \&gt; * \&gt;" alt="" coords="1003,5,1291,35"/><area shape="rect" id="node31" href="classXalanVector.html" title="XalanVector\&lt; const XalanDOMString * \&gt;" alt="" coords="1391,1191,1676,1220"/><area shape="rect" id="node33" href="classXalanVector.html" title="XalanVector\&lt; NamespaceExtended \&gt;" alt="" coords="1400,1244,1667,1273"/><area shape="rect" id="node38" href="classXalanQNameByReference.html" title="XalanQNameByReference" alt="" coords="1999,1376,2185,1405"/><area shape="rect" id="node40" href="classXalanQName.html" title="Class to represent a qualified name." alt="" coords="1480,1433,1587,1463"/><area shape="rect" id="node42" href="classXalanDOMString.html" title="XalanDOMString" alt="" coords="641,1259,769,1288"/><area shape="rect" id="node47" href="classElemTemplateElement_1_1LocatorProxy.html" title="ElemTemplateElement::LocatorProxy" alt="" coords="1405,1033,1661,1063"/><area shape="rect" id="node56" href="classXPath.html" title="XPath" alt="" coords="2061,1667,2123,1696"/><area shape="rect" id="node64" href="classXPathExpression.html" title="XPathExpression" alt="" coords="1468,1837,1599,1867"/><area shape="rect" id="node131" href="classXalanNamespace.html" title="XalanNamespace" alt="" coords="1465,1087,1601,1116"/><area shape="rect" id="node44" href="classXalanVector.html" title="XalanVector\&lt; XalanDOMChar \&gt;" alt="" coords="21,1259,248,1288"/><area shape="rect" id="node49" href="classXalanLocator.html" title="This class defines a base class for Locator derivations in Xalan." alt="" coords="652,967,759,996"/><area shape="rect" id="node58" href="classXPathFunctionTable.html" title="Class defines a table of functions that can be called in XPath expresions." alt="" coords="1460,1681,1607,1711"/><area shape="rect" id="node60" href="classFunction.html" title="Function" alt="" coords="668,1784,743,1813"/><area shape="rect" id="node62" href="structXPathFunctionTable_1_1FunctionNameTableEntry.html" title="XPathFunctionTable::FunctionNameTableEntry" alt="" coords="548,1673,863,1703"/><area shape="rect" id="node66" href="classXalanVector.html" title="XalanVector\&lt; XToken \&gt;" alt="" coords="617,1944,793,1973"/><area shape="rect" id="node68" href="classXalanVector.html" title="XalanVector\&lt; int \&gt;" alt="" coords="632,1837,779,1867"/><area shape="rect" id="node70" href="classXalanVector.html" title="XalanVector\&lt; double \&gt;" alt="" coords="619,1891,792,1920"/><area shape="rect" id="node83" href="structXalanMapKeyTraits_3_01XalanDOMString_01_4.html" title="XalanMapKeyTraits\&lt; XalanDOMString \&gt;" alt="" coords="567,273,844,303"/><area shape="rect" id="node86" href="classXalanVector.html" title="XalanVector\&lt; Stylesheet * \&gt;" alt="" coords="2933,1509,3141,1539"/><area shape="rect" id="node88" href="classXalanVector.html" title="XalanVector\&lt; ElemVariable * \&gt;" alt="" coords="2925,1563,3149,1592"/><area shape="rect" id="node91" href="classXalanVector.html" title="XalanVector\&lt; XalanSpaceNodeTester \&gt;" alt="" coords="2897,735,3177,764"/><area shape="rect" id="node98" href="classXalanVector.html" title="XalanVector\&lt; Type, ConstructionTraits \&gt;" alt="" coords="2896,1091,3179,1120"/><area shape="rect" id="node100" href="classXalanVector.html" title="XalanVector\&lt; XalanDOMString \&gt;" alt="" coords="2920,1144,3155,1173"/><area shape="rect" id="node103" href="classXalanVector.html" title="XalanVector\&lt; ElemDecimalFormat * \&gt;" alt="" coords="2903,1197,3172,1227"/><area shape="rect" id="node110" href="structXalanMapKeyTraits_3_01const_01XalanQName_01_5_01_4.html" title="XalanMapKeyTraits\&lt; const XalanQName * \&gt;" alt="" coords="551,61,860,91"/><area shape="rect" id="node116" href="classXalanVector.html" title="XalanVector\&lt; const XalanQName * \&gt;" alt="" coords="3397,1567,3664,1596"/><area shape="rect" id="node122" href="structXalanMapKeyTraits_3_01XalanQNameByReference_01_4.html" title="XalanMapKeyTraits\&lt; XalanQNameByReference \&gt;" alt="" coords="536,711,875,740"/><area shape="rect" id="node124" href="structXalanMapKeyTraits_3_01XalanQName_01_4.html" title="XalanMapKeyTraits\&lt; XalanQName \&gt;" alt="" coords="5,711,264,740"/><area shape="rect" id="node127" href="classXalanDeque.html" title="Xalan implementation of deque." alt="" coords="2589,864,2872,893"/><area shape="rect" id="node129" href="classXalanVector.html" title="XalanVector\&lt; BlockType * \&gt;" alt="" coords="1991,935,2193,964"/><area shape="rect" id="node134" href="classXalanVector.html" title="XalanVector\&lt; KeyDeclaration \&gt;" alt="" coords="2924,1405,3151,1435"/><area shape="rect" id="node137" href="classXalanAllocator.html" title="XalanAllocator\&lt; data_type \&gt;" alt="" coords="2933,1720,3141,1749"/><area shape="rect" id="node142" href="classXalanDOMStringHashTable.html" title="XalanDOMStringHashTable" alt="" coords="4629,344,4824,373"/><area shape="rect" id="node144" href="classXalanVector.html" title="XalanVector\&lt; BucketType, ConstructionTraits \&gt;" alt="" coords="4177,344,4503,373"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<p><a href="classXalanDOMStringPool-members.html">List of all members.</a></p>
<h2><a name="pub-types"></a>
Public Types</h2>
<ul>
<li>enum { <a class="el" href="classXalanDOMStringPool.html#ac00e36b789d42b23542924a315d2c77ba4af8a3cd3aa7783b4100781258e72635">eDefaultBlockSize</a> = 32,
<a class="el" href="classXalanDOMStringPool.html#ac00e36b789d42b23542924a315d2c77ba68f5d87ee9da075157abb247966c075a">eDefaultBucketCount</a> = XalanDOMStringHashTable::eDefaultBucketCount,
<a class="el" href="classXalanDOMStringPool.html#ac00e36b789d42b23542924a315d2c77ba9e5234b089fc6035d984fe054fb9fa9d">eDefaultBucketSize</a> = XalanDOMStringHashTable::eDefaultBucketSize
}
<li>typedef <a class="el" href="classXalanDOMStringAllocator.html">XalanDOMStringAllocator</a> <a class="el" href="classXalanDOMStringPool.html#ab5808f88a3070491e5e686d79bfb6654">AllocatorType</a>
<li>typedef <a class="el" href="classXalanDOMStringAllocator.html#a9e22d92647c1b90f1ee86626617f77f8">AllocatorType::size_type</a> <a class="el" href="classXalanDOMStringPool.html#a47543bcbd1729605b90bec5a9bb75af7">block_size_type</a>
<li>typedef size_t <a class="el" href="classXalanDOMStringPool.html#ada0cdbb3f14287c9026992d46d805b44">bucket_count_type</a>
<li>typedef <br class="typebreak"/>
<a class="el" href="classXalanDOMStringHashTable.html#a88fa0c7cb3137de720a23fa55ff671f4">XalanDOMStringHashTable::bucket_size_type</a> <a class="el" href="classXalanDOMStringPool.html#a0de44c028785e0f78f07417d74445e9b">bucket_size_type</a>
</ul>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li><a class="el" href="classXalanDOMStringPool.html#af7be69d5f996b8285512788ac1d85fec">XalanDOMStringPool</a> (MemoryManager &amp;theManager, <a class="el" href="classXalanDOMStringPool.html#a47543bcbd1729605b90bec5a9bb75af7">block_size_type</a> theBlockSize=eDefaultBlockSize, <a class="el" href="classXalanDOMStringPool.html#ada0cdbb3f14287c9026992d46d805b44">bucket_count_type</a> theBucketCount=eDefaultBucketCount, <a class="el" href="classXalanDOMStringPool.html#a0de44c028785e0f78f07417d74445e9b">bucket_size_type</a> theBucketSize=eDefaultBucketSize)
<dl class="el"><dd class="mdescRight">Create a string pool. <a href="#af7be69d5f996b8285512788ac1d85fec"></a><br/></dl><li>virtual <a class="el" href="classXalanDOMStringPool.html#ad1ccfe91b779f4b6a1dc72b8369e5f1c">~XalanDOMStringPool</a> ()
<li>virtual void <a class="el" href="classXalanDOMStringPool.html#afe9b12016d8e4ba0cb189128d20f2540">clear</a> ()
<dl class="el"><dd class="mdescRight">Clear the pool. <a href="#afe9b12016d8e4ba0cb189128d20f2540"></a><br/></dl><li>virtual size_t <a class="el" href="classXalanDOMStringPool.html#a2f78c897b0d682c16fcb8cf59ab24a9b">size</a> () const
<dl class="el"><dd class="mdescRight">Get the number of strings in the pool. <a href="#a2f78c897b0d682c16fcb8cf59ab24a9b"></a><br/></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <a class="el" href="classXalanDOMStringPool.html#aef0ca1bd05f347fccec8199940177e8f">get</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theString)
<dl class="el"><dd class="mdescRight">Get a pooled string. <a href="#aef0ca1bd05f347fccec8199940177e8f"></a><br/></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <a class="el" href="classXalanDOMStringPool.html#aaa3b24f724e4f5d4ffdeb73af941f229">get</a> (const XalanDOMChar *theString, <a class="el" href="classXalanDOMString.html#ab8b91a47f3335d6c54c49029dd1074f2">XalanDOMString::size_type</a> theLength=XalanDOMString::npos)
<dl class="el"><dd class="mdescRight">Get a pooled string. <a href="#aaa3b24f724e4f5d4ffdeb73af941f229"></a><br/></dl><li>const <a class="el" href="classXalanDOMStringHashTable.html">XalanDOMStringHashTable</a> &amp; <a class="el" href="classXalanDOMStringPool.html#a9554cb55b428c678bf55b841f23f3abe">getHashTable</a> () const
<dl class="el"><dd class="mdescRight">Get a reference to the pool's hash table. <a href="#a9554cb55b428c678bf55b841f23f3abe"></a><br/></dl><li>MemoryManager &amp; <a class="el" href="classXalanDOMStringPool.html#a8aaddd2926f72019ce4f596488f1cbb3">getMemoryManager</a> ()
<li>const MemoryManager &amp; <a class="el" href="classXalanDOMStringPool.html#ad145a4a863402e6d15fb5e60f7f7c53f">getMemoryManager</a> () const
</ul>
<h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2>
<ul>
<li>static <a class="el" href="classXalanDOMStringPool.html">XalanDOMStringPool</a> * <a class="el" href="classXalanDOMStringPool.html#ab232c880e26fd24d1a7d557d361abedf">create</a> (MemoryManager &amp;theManager, <a class="el" href="classXalanDOMStringPool.html#a47543bcbd1729605b90bec5a9bb75af7">block_size_type</a> theBlockSize=eDefaultBlockSize, <a class="el" href="classXalanDOMStringPool.html#ada0cdbb3f14287c9026992d46d805b44">bucket_count_type</a> theBucketCount=eDefaultBucketCount, <a class="el" href="classXalanDOMStringPool.html#a0de44c028785e0f78f07417d74445e9b">bucket_size_type</a> theBucketSize=eDefaultBucketSize)
</ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00039">39</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="ab5808f88a3070491e5e686d79bfb6654"></a><!-- doxytag: member="XalanDOMStringPool::AllocatorType" ref="ab5808f88a3070491e5e686d79bfb6654" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classXalanDOMStringAllocator.html">XalanDOMStringAllocator</a> <a class="el" href="classXalanDOMStringAllocator.html">XalanDOMStringPool::AllocatorType</a></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00047">47</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a47543bcbd1729605b90bec5a9bb75af7"></a><!-- doxytag: member="XalanDOMStringPool::block_size_type" ref="a47543bcbd1729605b90bec5a9bb75af7" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classXalanDOMStringAllocator.html#a9e22d92647c1b90f1ee86626617f77f8">AllocatorType::size_type</a> <a class="el" href="classXalanDOMStringPool.html#a47543bcbd1729605b90bec5a9bb75af7">XalanDOMStringPool::block_size_type</a></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00049">49</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ada0cdbb3f14287c9026992d46d805b44"></a><!-- doxytag: member="XalanDOMStringPool::bucket_count_type" ref="ada0cdbb3f14287c9026992d46d805b44" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef size_t <a class="el" href="classXalanDOMStringPool.html#ada0cdbb3f14287c9026992d46d805b44">XalanDOMStringPool::bucket_count_type</a></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00050">50</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a0de44c028785e0f78f07417d74445e9b"></a><!-- doxytag: member="XalanDOMStringPool::bucket_size_type" ref="a0de44c028785e0f78f07417d74445e9b" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classXalanDOMStringHashTable.html#a88fa0c7cb3137de720a23fa55ff671f4">XalanDOMStringHashTable::bucket_size_type</a> <a class="el" href="classXalanDOMStringPool.html#a0de44c028785e0f78f07417d74445e9b">XalanDOMStringPool::bucket_size_type</a></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00051">51</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="ac00e36b789d42b23542924a315d2c77b"></a><!-- doxytag: member="XalanDOMStringPool::@27" ref="ac00e36b789d42b23542924a315d2c77b" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">anonymous enum</td>
</tr>
</table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="ac00e36b789d42b23542924a315d2c77ba4af8a3cd3aa7783b4100781258e72635"></a><!-- doxytag: member="eDefaultBlockSize" ref="ac00e36b789d42b23542924a315d2c77ba4af8a3cd3aa7783b4100781258e72635" args="" -->eDefaultBlockSize</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ac00e36b789d42b23542924a315d2c77ba68f5d87ee9da075157abb247966c075a"></a><!-- doxytag: member="eDefaultBucketCount" ref="ac00e36b789d42b23542924a315d2c77ba68f5d87ee9da075157abb247966c075a" args="" -->eDefaultBucketCount</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ac00e36b789d42b23542924a315d2c77ba9e5234b089fc6035d984fe054fb9fa9d"></a><!-- doxytag: member="eDefaultBucketSize" ref="ac00e36b789d42b23542924a315d2c77ba9e5234b089fc6035d984fe054fb9fa9d" args="" -->eDefaultBucketSize</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00043">43</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="af7be69d5f996b8285512788ac1d85fec"></a><!-- doxytag: member="XalanDOMStringPool::XalanDOMStringPool" ref="af7be69d5f996b8285512788ac1d85fec" args="(MemoryManager &amp;theManager, block_size_type theBlockSize=eDefaultBlockSize, bucket_count_type theBucketCount=eDefaultBucketCount, bucket_size_type theBucketSize=eDefaultBucketSize)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">XalanDOMStringPool::XalanDOMStringPool </td>
<td>(</td>
<td class="paramtype">MemoryManager &amp;&nbsp;</td>
<td class="paramname"> <em>theManager</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classXalanDOMStringPool.html#a47543bcbd1729605b90bec5a9bb75af7">block_size_type</a>&nbsp;</td>
<td class="paramname"> <em>theBlockSize</em> = <code>eDefaultBlockSize</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classXalanDOMStringPool.html#ada0cdbb3f14287c9026992d46d805b44">bucket_count_type</a>&nbsp;</td>
<td class="paramname"> <em>theBucketCount</em> = <code>eDefaultBucketCount</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classXalanDOMStringPool.html#a0de44c028785e0f78f07417d74445e9b">bucket_size_type</a>&nbsp;</td>
<td class="paramname"> <em>theBucketSize</em> = <code>eDefaultBucketSize</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td><code> [explicit]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Create a string pool. </p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>theBlockSize</em>&nbsp;</td><td>The block size for the allocator. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>theBucketCount</em>&nbsp;</td><td>The number of buckets to use for the hash table. This should be a prime number for best results. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>theBucketSize</em>&nbsp;</td><td>The initial size of each bucket in the hash table. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ad1ccfe91b779f4b6a1dc72b8369e5f1c"></a><!-- doxytag: member="XalanDOMStringPool::~XalanDOMStringPool" ref="ad1ccfe91b779f4b6a1dc72b8369e5f1c" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual XalanDOMStringPool::~XalanDOMStringPool </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td><code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="afe9b12016d8e4ba0cb189128d20f2540"></a><!-- doxytag: member="XalanDOMStringPool::clear" ref="afe9b12016d8e4ba0cb189128d20f2540" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void XalanDOMStringPool::clear </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td><code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Clear the pool. </p>
<p>Reimplemented in <a class="el" href="classXercesLiaisonXalanDOMStringPool.html#aa331b30c2685c97ddd2745c5ecda43dd">XercesLiaisonXalanDOMStringPool</a>.</p>
</div>
</div>
<a class="anchor" id="ab232c880e26fd24d1a7d557d361abedf"></a><!-- doxytag: member="XalanDOMStringPool::create" ref="ab232c880e26fd24d1a7d557d361abedf" args="(MemoryManager &amp;theManager, block_size_type theBlockSize=eDefaultBlockSize, bucket_count_type theBucketCount=eDefaultBucketCount, bucket_size_type theBucketSize=eDefaultBucketSize)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="classXalanDOMStringPool.html">XalanDOMStringPool</a>* XalanDOMStringPool::create </td>
<td>(</td>
<td class="paramtype">MemoryManager &amp;&nbsp;</td>
<td class="paramname"> <em>theManager</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classXalanDOMStringPool.html#a47543bcbd1729605b90bec5a9bb75af7">block_size_type</a>&nbsp;</td>
<td class="paramname"> <em>theBlockSize</em> = <code>eDefaultBlockSize</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classXalanDOMStringPool.html#ada0cdbb3f14287c9026992d46d805b44">bucket_count_type</a>&nbsp;</td>
<td class="paramname"> <em>theBucketCount</em> = <code>eDefaultBucketCount</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classXalanDOMStringPool.html#a0de44c028785e0f78f07417d74445e9b">bucket_size_type</a>&nbsp;</td>
<td class="paramname"> <em>theBucketSize</em> = <code>eDefaultBucketSize</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td><code> [static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="aef0ca1bd05f347fccec8199940177e8f"></a><!-- doxytag: member="XalanDOMStringPool::get" ref="aef0ca1bd05f347fccec8199940177e8f" args="(const XalanDOMString &amp;theString)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; XalanDOMStringPool::get </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
<td class="paramname"> <em>theString</em></td>
<td>&nbsp;)&nbsp;</td>
<td><code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get a pooled string. </p>
<p>If the string is not pooled, it is added.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>theString</em>&nbsp;</td><td>The string to pool. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a const reference to the pooled string. </dd></dl>
<p>Reimplemented in <a class="el" href="classXercesLiaisonXalanDOMStringPool.html#a2823b79b5bb7ede31008e90bf4cda3ff">XercesLiaisonXalanDOMStringPool</a>.</p>
</div>
</div>
<a class="anchor" id="aaa3b24f724e4f5d4ffdeb73af941f229"></a><!-- doxytag: member="XalanDOMStringPool::get" ref="aaa3b24f724e4f5d4ffdeb73af941f229" args="(const XalanDOMChar *theString, XalanDOMString::size_type theLength=XalanDOMString::npos)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; XalanDOMStringPool::get </td>
<td>(</td>
<td class="paramtype">const XalanDOMChar *&nbsp;</td>
<td class="paramname"> <em>theString</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classXalanDOMString.html#ab8b91a47f3335d6c54c49029dd1074f2">XalanDOMString::size_type</a>&nbsp;</td>
<td class="paramname"> <em>theLength</em> = <code>XalanDOMString::npos</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td><code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get a pooled string. </p>
<p>If the string is not pooled, it is added.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>theString</em>&nbsp;</td><td>The string to pool. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>theLength</em>&nbsp;</td><td>The length of the string. If <a class="el" href="classXalanDOMString.html#a738c3684088f21a02e16a8a44e525063a79a8556da86ea1ccd6630e6221c1b424">XalanDOMString::npos</a>, the string is assumed to be null-terminated. </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a const reference to the pooled string. </dd></dl>
<p>Reimplemented in <a class="el" href="classXercesLiaisonXalanDOMStringPool.html#ace22d6c9fb0a18db71c829b51f9fb846">XercesLiaisonXalanDOMStringPool</a>.</p>
</div>
</div>
<a class="anchor" id="a9554cb55b428c678bf55b841f23f3abe"></a><!-- doxytag: member="XalanDOMStringPool::getHashTable" ref="a9554cb55b428c678bf55b841f23f3abe" args="() const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classXalanDOMStringHashTable.html">XalanDOMStringHashTable</a>&amp; XalanDOMStringPool::getHashTable </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td> const<code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get a reference to the pool's hash table. </p>
<p>Useful for diagnostic purposes.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a const reference to the hash table. </dd></dl>
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00121">121</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ad145a4a863402e6d15fb5e60f7f7c53f"></a><!-- doxytag: member="XalanDOMStringPool::getMemoryManager" ref="ad145a4a863402e6d15fb5e60f7f7c53f" args="() const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const MemoryManager&amp; XalanDOMStringPool::getMemoryManager </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td> const<code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00133">133</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a8aaddd2926f72019ce4f596488f1cbb3"></a><!-- doxytag: member="XalanDOMStringPool::getMemoryManager" ref="a8aaddd2926f72019ce4f596488f1cbb3" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">MemoryManager&amp; XalanDOMStringPool::getMemoryManager </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Definition at line <a class="el" href="XalanDOMStringPool_8hpp_source.html#l00127">127</a> of file <a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a2f78c897b0d682c16fcb8cf59ab24a9b"></a><!-- doxytag: member="XalanDOMStringPool::size" ref="a2f78c897b0d682c16fcb8cf59ab24a9b" args="() const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual size_t XalanDOMStringPool::size </td>
<td>(</td>
<td class="paramname"></td>
<td>&nbsp;)&nbsp;</td>
<td> const<code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get the number of strings in the pool. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the size of the pool. </dd></dl>
<p>Reimplemented in <a class="el" href="classXercesLiaisonXalanDOMStringPool.html#ab9c9ce5851f325f5466c419e6be55080">XercesLiaisonXalanDOMStringPool</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XalanDOMStringPool_8hpp_source.html">XalanDOMStringPool.hpp</a></li>
</ul>
</div>
<p align="center"><a href="graph_legend.html">Interpreting class diagrams</a></p>
<p><font color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><a href="http://www.doxygen.org/">Doxygen</a> and
<a href="http://www.graphviz.org/">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="80%">
<tr>
<td width="80%" valign="top">
<p align="center"><b>Xalan-C++ XSLT Processor Version 1.11</b><br/>
Copyright &copy; 1999-2012 The Apache Software Foundation.<br/>
All Rights Reserved.</p>
</td>
</tr>
<tr>
<td width="100%">
<p align="center"><img src="asf_logo_wide.gif" width="268" height="25" align="bottom" border="0" alt="Apache Logo">
</td>
</tr>
</table>
</body>
</html>