<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>XPathFactoryDefault Member List</h1>This is the complete list of members for <a class="el" href="classXPathFactoryDefault.html">XPathFactoryDefault</a>, including all inherited members.<ul>
<li><a class="el" href="classXPathFactoryDefault.html#s0">CollectionType</a> typedef
<li><a class="el" href="classXPathFactoryDefault.html#a3">create</a>()
<code> [virtual]</code><li><a class="el" href="classXPathFactoryDefault.html#d0">createXPathFactoryDefault</a>(MemoryManagerType &amp;theManager)
<code> [static]</code><li><a class="el" href="classXPathFactory.html#l0">DeleteXPathFunctor</a>
<code> [friend]</code><li><a class="el" href="classXPathFactoryDefault.html#b0">doReturnObject</a>(const XPath *theXPath, bool fInReset=false)
<code> [protected, virtual]</code><li><a class="el" href="classXPathFactoryDefault.html#a4">getInstanceCount</a>() const
<li><a class="el" href="classXPathFactoryDefault.html#a2">reset</a>()
<code> [virtual]</code><li><a class="el" href="classXPathFactory.html#a2">returnObject</a>(const XPath *theXPath)
<li><a class="el" href="classXPathFactory.html#a0">XPathFactory</a>()
<code> [explicit]</code><li><a class="el" href="classXPathFactoryDefault.html#a0">XPathFactoryDefault</a>(MemoryManagerType &amp;theManager XALAN_DEFAULT_MEMMGR)
<code> [explicit]</code><li><a class="el" href="classXPathFactory.html#a1">~XPathFactory</a>()
<code> [virtual]</code><li><a class="el" href="classXPathFactoryDefault.html#a1">~XPathFactoryDefault</a>()
<code> [virtual]</code></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>
