<!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><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
    </ul>
  </div>
<div class="header">
  <div class="headertitle">
<h1>XalanSourceTreeCommentAllocator.hpp</h1>  </div>
</div>
<div class="contents">
<a href="XalanSourceTreeCommentAllocator_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span>
<a name="l00003"></a>00003 <span class="comment"> * or more contributor license agreements. See the NOTICE file</span>
<a name="l00004"></a>00004 <span class="comment"> * distributed with this work for additional information</span>
<a name="l00005"></a>00005 <span class="comment"> * regarding copyright ownership. The ASF licenses this file</span>
<a name="l00006"></a>00006 <span class="comment"> * to you under the Apache License, Version 2.0 (the  &quot;License&quot;);</span>
<a name="l00007"></a>00007 <span class="comment"> * you may not use this file except in compliance with the License.</span>
<a name="l00008"></a>00008 <span class="comment"> * You may obtain a copy of the License at</span>
<a name="l00009"></a>00009 <span class="comment"> *</span>
<a name="l00010"></a>00010 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
<a name="l00011"></a>00011 <span class="comment"> *</span>
<a name="l00012"></a>00012 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
<a name="l00013"></a>00013 <span class="comment"> * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span>
<a name="l00014"></a>00014 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<a name="l00015"></a>00015 <span class="comment"> * See the License for the specific language governing permissions and</span>
<a name="l00016"></a>00016 <span class="comment"> * limitations under the License.</span>
<a name="l00017"></a>00017 <span class="comment"> */</span>
<a name="l00018"></a>00018 
<a name="l00019"></a>00019 <span class="preprocessor">#if !defined(XALANSOURCETREECOMMENTALLOCATOR_INCLUDE_GUARD_12455133)</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#define XALANSOURCETREECOMMENTALLOCATOR_INCLUDE_GUARD_12455133</span>
<a name="l00021"></a>00021 <span class="preprocessor"></span>
<a name="l00022"></a>00022 
<a name="l00023"></a>00023 
<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;<a class="code" href="XalanSourceTreeDefinitions_8hpp.html">xalanc/XalanSourceTree/XalanSourceTreeDefinitions.hpp</a>&gt;</span>
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;<a class="code" href="ArenaAllocator_8hpp.html">xalanc/PlatformSupport/ArenaAllocator.hpp</a>&gt;</span>
<a name="l00029"></a>00029 
<a name="l00030"></a>00030 
<a name="l00031"></a>00031 
<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;<a class="code" href="XalanSourceTreeComment_8hpp.html">xalanc/XalanSourceTree/XalanSourceTreeComment.hpp</a>&gt;</span>
<a name="l00033"></a>00033 
<a name="l00034"></a>00034 
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 XALAN_CPP_NAMESPACE_BEGIN
<a name="l00037"></a>00037 
<a name="l00038"></a>00038 
<a name="l00039"></a>00039 
<a name="l00040"></a><a class="code" href="classXalanSourceTreeCommentAllocator.html">00040</a> <span class="keyword">class </span><a class="code" href="XalanSourceTreeDefinitions_8hpp.html#ab668c8aeadc52576c1aab5a1888f349c">XALAN_XALANSOURCETREE_EXPORT</a> <a class="code" href="classXalanSourceTreeCommentAllocator.html">XalanSourceTreeCommentAllocator</a>
<a name="l00041"></a>00041 {
<a name="l00042"></a>00042 <span class="keyword">public</span>:
<a name="l00043"></a>00043 
<a name="l00044"></a><a class="code" href="classXalanSourceTreeCommentAllocator.html#a878f87f9e54e543ad4b47f96f235b577">00044</a>     <span class="keyword">typedef</span> <a class="code" href="classXalanSourceTreeComment.html">XalanSourceTreeComment</a>                  <a class="code" href="classXalanSourceTreeComment.html">ObjectType</a>;
<a name="l00045"></a>00045 
<a name="l00046"></a><a class="code" href="classXalanSourceTreeCommentAllocator.html#aa4321543b223e5c77c9489a720842c2c">00046</a>     <span class="keyword">typedef</span> <a class="code" href="classXalanNode.html#a737e6c797973546c10650cd72cc5f8ab">ObjectType::IndexType</a>                   IndexType;
<a name="l00047"></a>00047 
<a name="l00048"></a>00048 <span class="preprocessor">#if defined(XALAN_NO_DEFAULT_TEMPLATE_ARGUMENTS)</span>
<a name="l00049"></a>00049 <span class="preprocessor"></span>    <span class="keyword">typedef</span> <a class="code" href="classArenaBlock.html">ArenaBlock&lt;ObjectType&gt;</a>                  ArenaBlockType;
<a name="l00050"></a>00050 
<a name="l00051"></a>00051     <span class="keyword">typedef</span> <a class="code" href="classArenaAllocator.html">ArenaAllocator</a>&lt;<a class="code" href="classXalanSourceTreeComment.html">ObjectType</a>,
<a name="l00052"></a>00052                            ArenaBlockType&gt;          <a class="code" href="classArenaAllocator.html">ArenaAllocatorType</a>;
<a name="l00053"></a>00053 <span class="preprocessor">#else</span>
<a name="l00054"></a><a class="code" href="classXalanSourceTreeCommentAllocator.html#aa08363172a8e5c6c347a9d21925b2d27">00054</a> <span class="preprocessor"></span>    <span class="keyword">typedef</span> <a class="code" href="classArenaAllocator.html">ArenaAllocator&lt;ObjectType&gt;</a>              <a class="code" href="classArenaAllocator.html">ArenaAllocatorType</a>;
<a name="l00055"></a>00055 <span class="preprocessor">#endif</span>
<a name="l00056"></a>00056 <span class="preprocessor"></span>
<a name="l00057"></a><a class="code" href="classXalanSourceTreeCommentAllocator.html#a5bdd910edb1a675af3e29448ba21b289">00057</a>     <span class="keyword">typedef</span> <a class="code" href="classArenaAllocator.html#a68eaf7d03e3a4a9f35c035481f0acd67">ArenaAllocatorType::size_type</a>           size_type;
<a name="l00058"></a>00058 <span class="comment"></span>
<a name="l00059"></a>00059 <span class="comment">    /**</span>
<a name="l00060"></a>00060 <span class="comment">     * Construct an instance that will allocate blocks of the specified size.</span>
<a name="l00061"></a>00061 <span class="comment">     *</span>
<a name="l00062"></a>00062 <span class="comment">     * @param theBlockSize The block size.</span>
<a name="l00063"></a>00063 <span class="comment">     */</span>
<a name="l00064"></a>00064     <a class="code" href="classXalanSourceTreeCommentAllocator.html">XalanSourceTreeCommentAllocator</a>(MemoryManager&amp;  theManager, <a class="code" href="classXalanSourceTreeCommentAllocator.html#a5bdd910edb1a675af3e29448ba21b289">size_type</a>   theBlockCount);
<a name="l00065"></a>00065 
<a name="l00066"></a>00066     ~<a class="code" href="classXalanSourceTreeCommentAllocator.html">XalanSourceTreeCommentAllocator</a>();
<a name="l00067"></a>00067 <span class="comment"></span>
<a name="l00068"></a>00068 <span class="comment">    /**</span>
<a name="l00069"></a>00069 <span class="comment">     * Create an instance.</span>
<a name="l00070"></a>00070 <span class="comment">     * </span>
<a name="l00071"></a>00071 <span class="comment">     * @param theData The data for the comment</span>
<a name="l00072"></a>00072 <span class="comment">     * @param theOwnerDocument The owner document of the comment node.</span>
<a name="l00073"></a>00073 <span class="comment">     * @param theParentNode The parent node, if any.</span>
<a name="l00074"></a>00074 <span class="comment">     * @param thePreviousSibling The next sibling, if any.</span>
<a name="l00075"></a>00075 <span class="comment">     * @param theNextSibling The next sibling, if any.</span>
<a name="l00076"></a>00076 <span class="comment">     * @param theIndex The document-order index of the node.</span>
<a name="l00077"></a>00077 <span class="comment">     *</span>
<a name="l00078"></a>00078 <span class="comment">     * @return pointer to the instance</span>
<a name="l00079"></a>00079 <span class="comment">     */</span>
<a name="l00080"></a>00080     <a class="code" href="classXalanSourceTreeComment.html">ObjectType</a>*
<a name="l00081"></a>00081     create(
<a name="l00082"></a>00082             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;       theData,
<a name="l00083"></a>00083             <a class="code" href="classXalanSourceTreeDocument.html">XalanSourceTreeDocument</a>*    theOwnerDocument,
<a name="l00084"></a>00084             <a class="code" href="classXalanNode.html">XalanNode</a>*                  theParentNode = 0,
<a name="l00085"></a>00085             <a class="code" href="classXalanNode.html">XalanNode</a>*                  thePreviousSibling = 0,
<a name="l00086"></a>00086             <a class="code" href="classXalanNode.html">XalanNode</a>*                  theNextSibling = 0,
<a name="l00087"></a>00087             <a class="code" href="classXalanSourceTreeCommentAllocator.html#aa4321543b223e5c77c9489a720842c2c">IndexType</a>                   theIndex = 0);
<a name="l00088"></a>00088 <span class="comment"></span>
<a name="l00089"></a>00089 <span class="comment">    /**</span>
<a name="l00090"></a>00090 <span class="comment">     * Delete all objects from allocator.    </span>
<a name="l00091"></a>00091 <span class="comment">     */</span> 
<a name="l00092"></a>00092     <span class="keywordtype">void</span>
<a name="l00093"></a>00093     reset();
<a name="l00094"></a>00094 <span class="comment"></span>
<a name="l00095"></a>00095 <span class="comment">    /**</span>
<a name="l00096"></a>00096 <span class="comment">     * Get size of an ArenaBlock, that is, the number</span>
<a name="l00097"></a>00097 <span class="comment">     * of objects in each block.</span>
<a name="l00098"></a>00098 <span class="comment">     *</span>
<a name="l00099"></a>00099 <span class="comment">     * @return The size of the block</span>
<a name="l00100"></a>00100 <span class="comment">     */</span>
<a name="l00101"></a>00101     <a class="code" href="classXalanSourceTreeCommentAllocator.html#a5bdd910edb1a675af3e29448ba21b289">size_type</a>
<a name="l00102"></a><a class="code" href="classXalanSourceTreeCommentAllocator.html#a263b34822a1a2cc891fd20f6ce3c6579">00102</a>     getBlockCount()<span class="keyword"> const</span>
<a name="l00103"></a>00103 <span class="keyword">    </span>{
<a name="l00104"></a>00104         <span class="keywordflow">return</span> m_allocator.getBlockCount();
<a name="l00105"></a>00105     }
<a name="l00106"></a>00106 <span class="comment"></span>
<a name="l00107"></a>00107 <span class="comment">    /**</span>
<a name="l00108"></a>00108 <span class="comment">     * Get the number of ArenaBlocks currently allocated.</span>
<a name="l00109"></a>00109 <span class="comment">     *</span>
<a name="l00110"></a>00110 <span class="comment">     * @return The number of blocks.</span>
<a name="l00111"></a>00111 <span class="comment">     */</span>
<a name="l00112"></a>00112     <a class="code" href="XalanMap_8hpp.html#a39efc23c4f36ef6389e4a1fbe96c5f2e">size_type</a>
<a name="l00113"></a><a class="code" href="classXalanSourceTreeCommentAllocator.html#acf3600276505056d109e9a5d14478be3">00113</a>     getBlockSize()<span class="keyword"> const</span>
<a name="l00114"></a>00114 <span class="keyword">    </span>{
<a name="l00115"></a>00115         <span class="keywordflow">return</span> m_allocator.getBlockSize();
<a name="l00116"></a>00116     }
<a name="l00117"></a>00117 
<a name="l00118"></a>00118 <span class="keyword">private</span>:
<a name="l00119"></a>00119 
<a name="l00120"></a>00120     <span class="comment">// Not implemented...</span>
<a name="l00121"></a>00121     <a class="code" href="classXalanSourceTreeCommentAllocator.html">XalanSourceTreeCommentAllocator</a>(<span class="keyword">const</span> <a class="code" href="classXalanSourceTreeCommentAllocator.html">XalanSourceTreeCommentAllocator</a>&amp;);
<a name="l00122"></a>00122 
<a name="l00123"></a>00123     <a class="code" href="classXalanSourceTreeCommentAllocator.html">XalanSourceTreeCommentAllocator</a>&amp;
<a name="l00124"></a>00124     operator=(<span class="keyword">const</span> <a class="code" href="classXalanSourceTreeCommentAllocator.html">XalanSourceTreeCommentAllocator</a>&amp;);
<a name="l00125"></a>00125 
<a name="l00126"></a>00126     <span class="comment">// Data members...</span>
<a name="l00127"></a>00127     ArenaAllocatorType  m_allocator;
<a name="l00128"></a>00128 };
<a name="l00129"></a>00129 
<a name="l00130"></a>00130 
<a name="l00131"></a>00131 
<a name="l00132"></a>00132 XALAN_CPP_NAMESPACE_END
<a name="l00133"></a>00133 
<a name="l00134"></a>00134 
<a name="l00135"></a>00135 
<a name="l00136"></a>00136 <span class="preprocessor">#endif  // XALANSOURCETREECOMMENTALLOCATOR_INCLUDE_GUARD_12455133</span>
</pre></div></div>
</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>
