<!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-static-methods">Static Public Member Functions</a>  </div>
  <div class="headertitle">
<h1>ConstructWithMemoryManager&lt; C &gt; Struct Template Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="ConstructWithMemoryManager" -->
<p><code>#include &lt;<a class="el" href="XalanMemoryManagement_8hpp_source.html">XalanMemoryManagement.hpp</a>&gt;</code></p>

<p><a href="structConstructWithMemoryManager-members.html">List of all members.</a></p>
<h2><a name="pub-types"></a>
Public Types</h2>
<ul>
<li>typedef <br class="typebreak"/>
<a class="el" href="structConstructValueWithMemoryManager.html">ConstructValueWithMemoryManager</a><br class="typebreak"/>
&lt; C &gt; <a class="el" href="structConstructWithMemoryManager.html#a1d61f6f153b16c3f8648e133b72df7b1">ConstructableType</a>
</ul>
<h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2>
<ul>
<li>static C * <a class="el" href="structConstructWithMemoryManager.html#a1dacb07a46d87f52377c3b4e311c132b">construct</a> (C *address, MemoryManager &amp;mgr)
<li>static C * <a class="el" href="structConstructWithMemoryManager.html#a77208a67c8638e26e0e3cf1c312090bc">construct</a> (C *address, const C &amp;theRhs, MemoryManager &amp;mgr)
</ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class C&gt;<br/>
 struct ConstructWithMemoryManager&lt; C &gt;</h3>


<p>Definition at line <a class="el" href="XalanMemoryManagement_8hpp_source.html#l00568">568</a> of file <a class="el" href="XalanMemoryManagement_8hpp_source.html">XalanMemoryManagement.hpp</a>.</p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a1d61f6f153b16c3f8648e133b72df7b1"></a><!-- doxytag: member="ConstructWithMemoryManager::ConstructableType" ref="a1d61f6f153b16c3f8648e133b72df7b1" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class C &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structConstructValueWithMemoryManager.html">ConstructValueWithMemoryManager</a>&lt;C&gt; <a class="el" href="structConstructWithMemoryManager.html">ConstructWithMemoryManager</a>&lt; C &gt;::<a class="el" href="structConstructValueWithMemoryManager.html">ConstructableType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XalanMemoryManagement_8hpp_source.html#l00570">570</a> of file <a class="el" href="XalanMemoryManagement_8hpp_source.html">XalanMemoryManagement.hpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a1dacb07a46d87f52377c3b4e311c132b"></a><!-- doxytag: member="ConstructWithMemoryManager::construct" ref="a1dacb07a46d87f52377c3b4e311c132b" args="(C *address, MemoryManager &amp;mgr)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class C &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static C* <a class="el" href="structConstructWithMemoryManager.html">ConstructWithMemoryManager</a>&lt; C &gt;::construct </td>
          <td>(</td>
          <td class="paramtype">C *&nbsp;</td>
          <td class="paramname"> <em>address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MemoryManager &amp;&nbsp;</td>
          <td class="paramname"> <em>mgr</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XalanMemoryManagement_8hpp_source.html#l00572">572</a> of file <a class="el" href="XalanMemoryManagement_8hpp_source.html">XalanMemoryManagement.hpp</a>.</p>

</div>
</div>
<a class="anchor" id="a77208a67c8638e26e0e3cf1c312090bc"></a><!-- doxytag: member="ConstructWithMemoryManager::construct" ref="a77208a67c8638e26e0e3cf1c312090bc" args="(C *address, const C &amp;theRhs, MemoryManager &amp;mgr)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class C &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static C* <a class="el" href="structConstructWithMemoryManager.html">ConstructWithMemoryManager</a>&lt; C &gt;::construct </td>
          <td>(</td>
          <td class="paramtype">C *&nbsp;</td>
          <td class="paramname"> <em>address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const C &amp;&nbsp;</td>
          <td class="paramname"> <em>theRhs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MemoryManager &amp;&nbsp;</td>
          <td class="paramname"> <em>mgr</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XalanMemoryManagement_8hpp_source.html#l00577">577</a> of file <a class="el" href="XalanMemoryManagement_8hpp_source.html">XalanMemoryManagement.hpp</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="XalanMemoryManagement_8hpp_source.html">XalanMemoryManagement.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>
