<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>XalanDocumentBuilder  Class Reference</h1>This is abstract base class designed to allow a XalanTranfomer object to use a document that is build dynamically by a user. 
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="XalanDocumentBuilder_8hpp-source.html">XalanDocumentBuilder.hpp</a>&gt;</code>
<p>
Inheritance diagram for XalanDocumentBuilder:<p><center><img src="classXalanDocumentBuilder__inherit__graph.gif" border="0" usemap="#XalanDocumentBuilder_inherit_map" alt="Inheritance graph"></center>
<map name="XalanDocumentBuilder_inherit_map">
<area href="classXalanDefaultDocumentBuilder.html" shape="rect" coords="7,192,198,168">
<area href="classXalanParsedSource.html" shape="rect" coords="36,42,169,18">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for XalanDocumentBuilder:<p><center><img src="classXalanDocumentBuilder__coll__graph.gif" border="0" usemap="#XalanDocumentBuilder_coll_map" alt="Collaboration graph"></center>
<map name="XalanDocumentBuilder_coll_map">
<area href="classXalanParsedSource.html" shape="rect" coords="16,42,149,18">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classXalanDocumentBuilder-members.html">List of all members.</a><h2>Public Methods</h2>
<ul>
<li>virtual <a class="el" href="classXalanDocumentBuilder.html#a0">~XalanDocumentBuilder</a> ()
<li>virtual <a class="el" href="classXalanDocument.html">XalanDocument</a>* <a class="el" href="classXalanDocumentBuilder.html#a1">getDocument</a> () const=0
<dl class="el"><dd><font size=-1><em>Get a pointer to the <a class="el" href="classXalanDocument.html">XalanDocument</a> instance for the source document.</em> <a href="#a1">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanParsedSourceHelper.html">XalanParsedSourceHelper</a>* <a class="el" href="classXalanDocumentBuilder.html#a2">createHelper</a> (<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp;theManager XALAN_DEFAULT_CONSTRACTOR_MEMORY_MGR) const=0
<dl class="el"><dd><font size=-1><em>Create the appropriate <a class="el" href="classXalanParsedSourceHelper.html">XalanParsedSourceHelper</a> instance to use for transforming with the instance.</em> <a href="#a2">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanDocumentBuilder.html#a3">getURI</a> () const=0
<dl class="el"><dd><font size=-1><em>Get the URI for the parsed source, if any.</em> <a href="#a3">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classContentHandlerType.html">ContentHandlerType</a>* <a class="el" href="classXalanDocumentBuilder.html#a4">getContentHandler</a> ()=0
<li>virtual <a class="el" href="classDTDHandlerType.html">DTDHandlerType</a>* <a class="el" href="classXalanDocumentBuilder.html#a5">getDTDHandler</a> ()=0
<li>virtual <a class="el" href="classLexicalHandlerType.html">LexicalHandlerType</a>* <a class="el" href="classXalanDocumentBuilder.html#a6">getLexicalHandler</a> ()=0
</ul>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This is abstract base class designed to allow a XalanTranfomer object to use a document that is build dynamically by a user.
<p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="XalanDocumentBuilder::~XalanDocumentBuilder"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
XalanDocumentBuilder::~XalanDocumentBuilder (
          </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="a2" doxytag="XalanDocumentBuilder::createHelper"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classXalanParsedSourceHelper.html">XalanParsedSourceHelper</a> * XalanDocumentBuilder::createHelper (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="XalanMemoryManagement_8hpp.html#a5">MemoryManagerType</a> &amp; <em>theManager</em>&nbsp;) const<code> [pure virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Create the appropriate <a class="el" href="classXalanParsedSourceHelper.html">XalanParsedSourceHelper</a> instance to use for transforming with the instance.
<p>
The caller is responsible for deleting the object when finished.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
A pointer to a <a class="el" href="classXalanParsedSourceHelper.html">XalanParsedSourceHelper</a> instance. </dl>
<p>
Reimplemented from <a class="el" href="classXalanParsedSource.html#a3">XalanParsedSource</a>.
<p>
Reimplemented in <a class="el" href="classXalanDefaultDocumentBuilder.html#a3">XalanDefaultDocumentBuilder</a>.    </td>
  </tr>
</table>
<a name="a4" doxytag="XalanDocumentBuilder::getContentHandler"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classContentHandlerType.html">ContentHandlerType</a> * XalanDocumentBuilder::getContentHandler (
          </b></td>
          <td valign="bottom"><b>
)<code> [pure 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="classXalanDefaultDocumentBuilder.html#a5">XalanDefaultDocumentBuilder</a>.    </td>
  </tr>
</table>
<a name="a5" doxytag="XalanDocumentBuilder::getDTDHandler"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classDTDHandlerType.html">DTDHandlerType</a> * XalanDocumentBuilder::getDTDHandler (
          </b></td>
          <td valign="bottom"><b>
)<code> [pure 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="classXalanDefaultDocumentBuilder.html#a6">XalanDefaultDocumentBuilder</a>.    </td>
  </tr>
</table>
<a name="a1" doxytag="XalanDocumentBuilder::getDocument"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classXalanDocument.html">XalanDocument</a> * XalanDocumentBuilder::getDocument (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get a pointer to the <a class="el" href="classXalanDocument.html">XalanDocument</a> instance for the source document.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
A pointer to a <a class="el" href="classXalanDocument.html">XalanDocument</a> instance. </dl>
<p>
Reimplemented from <a class="el" href="classXalanParsedSource.html#a2">XalanParsedSource</a>.
<p>
Reimplemented in <a class="el" href="classXalanDefaultDocumentBuilder.html#a2">XalanDefaultDocumentBuilder</a>.    </td>
  </tr>
</table>
<a name="a6" doxytag="XalanDocumentBuilder::getLexicalHandler"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classLexicalHandlerType.html">LexicalHandlerType</a> * XalanDocumentBuilder::getLexicalHandler (
          </b></td>
          <td valign="bottom"><b>
)<code> [pure 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="classXalanDefaultDocumentBuilder.html#a7">XalanDefaultDocumentBuilder</a>.    </td>
  </tr>
</table>
<a name="a3" doxytag="XalanDocumentBuilder::getURI"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; XalanDocumentBuilder::getURI (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the URI for the parsed source, if any.
<p>
use for transforming with the instance.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
A const reference to a string containing the URI </dl>
<p>
Reimplemented from <a class="el" href="classXalanParsedSource.html#a4">XalanParsedSource</a>.
<p>
Reimplemented in <a class="el" href="classXalanDefaultDocumentBuilder.html#a4">XalanDefaultDocumentBuilder</a>.    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XalanDocumentBuilder_8hpp-source.html">XalanDocumentBuilder.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>
