<!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="headertitle">
<h1>XSLTInputSource Member List</h1>  </div>
</div>
<div class="contents">
This is the complete list of members for <a class="el" href="classXSLTInputSource.html">XSLTInputSource</a>, including all inherited members.<table>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a729dd6cbfefb35db0382b548a0975140">getNode</a>() const </td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td><code> [inline]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a05b96ed728af67ab8c86cf4630bf2c43">getStream</a>() const </td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td><code> [inline]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a75865540476c8c59ad789688639e407f">makeStream</a>() const </td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td><code> [virtual]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a7763b22ac362202fd13190a0f8d97c55">operator=</a>(const XSLTInputSource &amp;theRHS)</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a1a8fd1e83f74c2efe88f434f4e9fe0d4">setNode</a>(XalanNode *node)</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td><code> [inline]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#aceb48a8732b5729dbf5a9cb254b8e8f6">setStream</a>(StreamType *stream)</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td><code> [inline]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a8ff8e80a542152925189fd3411241f01">StreamType</a> typedef</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a13957af614e416178a6bfab9877ea1cd">XSLTInputSource</a>(MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td><code> [explicit]</code></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#aface918e32c23783ec0ee0efbf427d11">XSLTInputSource</a>(const XSLTInputSource &amp;theSource, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a67eeb5db8ea6225031909bec2d126c17">XSLTInputSource</a>(const XMLCh *systemId, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a4ea65525b3b07670243b5e0e2cbdbb4d">XSLTInputSource</a>(const XalanDOMString &amp;systemId, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a98aee344c1086b0de45d29e2d0ba6026">XSLTInputSource</a>(const char *systemId, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#af3ae87fc54dcbc6ad23646d0b42e9d65">XSLTInputSource</a>(const char *systemId, const char *publicId, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#af3f4915fd71e2a1e011724fe34106901">XSLTInputSource</a>(const XMLCh *systemId, const XMLCh *publicId, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#aafa0bd6297f59c3902a12d2cbefc8c77">XSLTInputSource</a>(const XalanDOMString &amp;systemId, const XalanDOMString &amp;publicId, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a6714fa32f556e4ee121d192e5b861fa6">XSLTInputSource</a>(XalanNode *node, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a85ccff18a6a8d9b4df30e464d2cf15dc">XSLTInputSource</a>(StreamType *stream, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
  <tr class="memlist"><td><a class="el" href="classXSLTInputSource.html#a771802a913e3aedf8300b5f95d8619c7">XSLTInputSource</a>(StreamType &amp;stream, MemoryManager &amp;theMemoryManager=XalanMemMgrs::getDefault())</td><td><a class="el" href="classXSLTInputSource.html">XSLTInputSource</a></td><td></td></tr>
</table></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>
