<!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-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<h1>TreeWalker Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="TreeWalker" -->
<p><code>#include &lt;<a class="el" href="TreeWalker_8hpp_source.html">TreeWalker.hpp</a>&gt;</code></p>

<p>Inherited by <a class="el" href="classFormatterTreeWalker.html">FormatterTreeWalker</a>, <a class="el" href="classNodeNameTreeWalker.html">NodeNameTreeWalker</a>, and <a class="el" href="classXalanDocumentPrefixResolver_1_1NamespaceNodesTreeWalker.html">XalanDocumentPrefixResolver::NamespaceNodesTreeWalker</a>.</p>

<p><a href="classTreeWalker-members.html">List of all members.</a></p>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li><a class="el" href="classTreeWalker.html#ae0ee9fa909d78735790a9cd721e1cb90">TreeWalker</a> ()
<dl class="el"><dd class="mdescRight">Constructor.  <a href="#ae0ee9fa909d78735790a9cd721e1cb90"></a><br/></dl><li>virtual <a class="el" href="classTreeWalker.html#a149fbfeb561855e4ea2fb1ed29750baf">~TreeWalker</a> ()
<li>const <a class="el" href="classXalanNode.html">XalanNode</a> * <a class="el" href="classTreeWalker.html#a5fcdad33cbaba7f07095f5db836dd2f0">traverse</a> (const <a class="el" href="classXalanNode.html">XalanNode</a> *pos)
<dl class="el"><dd class="mdescRight">Perform a document-order traversal.  <a href="#a5fcdad33cbaba7f07095f5db836dd2f0"></a><br/></dl><li><a class="el" href="classXalanNode.html">XalanNode</a> * <a class="el" href="classTreeWalker.html#aa86e79713ec11e56024c2adf418394d2">traverse</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *pos)
<dl class="el"><dd class="mdescRight">Perform a document-order traversal.  <a href="#aa86e79713ec11e56024c2adf418394d2"></a><br/></dl><li>const <a class="el" href="classXalanNode.html">XalanNode</a> * <a class="el" href="classTreeWalker.html#ab83a8c9614475de763eb8d143a19bb6e">traverse</a> (const <a class="el" href="classXalanNode.html">XalanNode</a> *pos, const <a class="el" href="classXalanNode.html">XalanNode</a> *parent)
<dl class="el"><dd class="mdescRight">Perform a document-order traversal stopping at the provided parent node.  <a href="#ab83a8c9614475de763eb8d143a19bb6e"></a><br/></dl><li><a class="el" href="classXalanNode.html">XalanNode</a> * <a class="el" href="classTreeWalker.html#a03382f1d278898fb3ed871a41bb38fbe">traverse</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *pos, <a class="el" href="classXalanNode.html">XalanNode</a> *parent)
<dl class="el"><dd class="mdescRight">Perform a document-order traversal stopping at the provided parent node.  <a href="#a03382f1d278898fb3ed871a41bb38fbe"></a><br/></dl><li>virtual void <a class="el" href="classTreeWalker.html#ade54c5f2708bef03cb4f28c51046f6e6">traverseSubtree</a> (const <a class="el" href="classXalanNode.html">XalanNode</a> *pos)
<dl class="el"><dd class="mdescRight">Perform a pre-order traversal.  <a href="#ade54c5f2708bef03cb4f28c51046f6e6"></a><br/></dl><li>virtual void <a class="el" href="classTreeWalker.html#a6e20bdda8a430086711351ff68e4a35f">traverseSubtree</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *pos)
<dl class="el"><dd class="mdescRight">Perform a pre-order traversal.  <a href="#a6e20bdda8a430086711351ff68e4a35f"></a><br/></dl></ul>
<h2><a name="pro-methods"></a>
Protected Member Functions</h2>
<ul>
<li>virtual bool <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b">startNode</a> (const <a class="el" href="classXalanNode.html">XalanNode</a> *node)=0
<dl class="el"><dd class="mdescRight">Called when first walking a node.  <a href="#a0830d7c43de92c10554775dbcd59526b"></a><br/></dl><li>virtual bool <a class="el" href="classTreeWalker.html#a8b397b497b075c49a1adb4ecf6670f50">startNode</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *node)=0
<dl class="el"><dd class="mdescRight">Called when first walking a node.  <a href="#a8b397b497b075c49a1adb4ecf6670f50"></a><br/></dl><li>virtual bool <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4">endNode</a> (const <a class="el" href="classXalanNode.html">XalanNode</a> *node)=0
<dl class="el"><dd class="mdescRight">Called when leaving a node.  <a href="#a1c7ccec81444662d68ba4ce315fffdc4"></a><br/></dl><li>virtual bool <a class="el" href="classTreeWalker.html#ab5c73e0bdffba1abae8b9572d203c6e4">endNode</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *node)=0
<dl class="el"><dd class="mdescRight">Called when leaving a node.  <a href="#ab5c73e0bdffba1abae8b9572d203c6e4"></a><br/></dl></ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>

<p>Definition at line <a class="el" href="TreeWalker_8hpp_source.html#l00036">36</a> of file <a class="el" href="TreeWalker_8hpp_source.html">TreeWalker.hpp</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ae0ee9fa909d78735790a9cd721e1cb90"></a><!-- doxytag: member="TreeWalker::TreeWalker" ref="ae0ee9fa909d78735790a9cd721e1cb90" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TreeWalker::TreeWalker </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor. </p>

</div>
</div>
<a class="anchor" id="a149fbfeb561855e4ea2fb1ed29750baf"></a><!-- doxytag: member="TreeWalker::~TreeWalker" ref="a149fbfeb561855e4ea2fb1ed29750baf" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual TreeWalker::~TreeWalker </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a1c7ccec81444662d68ba4ce315fffdc4"></a><!-- doxytag: member="TreeWalker::endNode" ref="a1c7ccec81444662d68ba4ce315fffdc4" args="(const XalanNode *node)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool TreeWalker::endNode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>node</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Called when leaving a node. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>node</em>&nbsp;</td><td>The node</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>return false if the walk should continue, or true if it should not. </dd></dl>

<p>Implemented in <a class="el" href="classXalanDocumentPrefixResolver_1_1NamespaceNodesTreeWalker.html#aa04093ddfb4627e837d24cb5937a722c">XalanDocumentPrefixResolver::NamespaceNodesTreeWalker</a>, <a class="el" href="classNodeNameTreeWalker.html#a95f6e440673b78124919d29c39af732c">NodeNameTreeWalker</a>, and <a class="el" href="classFormatterTreeWalker.html#a2532a0b1473a86b83a7033022e344d98">FormatterTreeWalker</a>.</p>

</div>
</div>
<a class="anchor" id="ab5c73e0bdffba1abae8b9572d203c6e4"></a><!-- doxytag: member="TreeWalker::endNode" ref="ab5c73e0bdffba1abae8b9572d203c6e4" args="(XalanNode *node)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool TreeWalker::endNode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>node</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Called when leaving a node. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>node</em>&nbsp;</td><td>The node</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>return false if the walk should continue, or true if it should not. </dd></dl>

<p>Implemented in <a class="el" href="classXalanDocumentPrefixResolver_1_1NamespaceNodesTreeWalker.html#a9a8e87502fd793a66c3000fc15620584">XalanDocumentPrefixResolver::NamespaceNodesTreeWalker</a>, <a class="el" href="classNodeNameTreeWalker.html#a44e0dac363b60071cb44433fd8efeff9">NodeNameTreeWalker</a>, and <a class="el" href="classFormatterTreeWalker.html#a307db73321ba1d5ad0e730b4b172c1e5">FormatterTreeWalker</a>.</p>

</div>
</div>
<a class="anchor" id="a8b397b497b075c49a1adb4ecf6670f50"></a><!-- doxytag: member="TreeWalker::startNode" ref="a8b397b497b075c49a1adb4ecf6670f50" args="(XalanNode *node)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool TreeWalker::startNode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>node</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Called when first walking a node. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>node</em>&nbsp;</td><td>The node</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>return false if the walk should continue, or true if it should not. </dd></dl>

<p>Implemented in <a class="el" href="classXalanDocumentPrefixResolver_1_1NamespaceNodesTreeWalker.html#a1d5bf8d64e62f5075c731e9d0a30af99">XalanDocumentPrefixResolver::NamespaceNodesTreeWalker</a>, <a class="el" href="classNodeNameTreeWalker.html#a9286b3b37cf08ac2f9c2fd0820f36e1d">NodeNameTreeWalker</a>, and <a class="el" href="classFormatterTreeWalker.html#a1e3ce8e7428627975175fc5ef9c87e71">FormatterTreeWalker</a>.</p>

</div>
</div>
<a class="anchor" id="a0830d7c43de92c10554775dbcd59526b"></a><!-- doxytag: member="TreeWalker::startNode" ref="a0830d7c43de92c10554775dbcd59526b" args="(const XalanNode *node)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool TreeWalker::startNode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>node</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Called when first walking a node. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>node</em>&nbsp;</td><td>The node</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>return false if the walk should continue, or true if it should not. </dd></dl>

<p>Implemented in <a class="el" href="classXalanDocumentPrefixResolver_1_1NamespaceNodesTreeWalker.html#a97f0c2e24eb1d4bd3a777cde63cc1c6b">XalanDocumentPrefixResolver::NamespaceNodesTreeWalker</a>, <a class="el" href="classNodeNameTreeWalker.html#abb912f29dfec1a3912d7196bc96ef7cf">NodeNameTreeWalker</a>, and <a class="el" href="classFormatterTreeWalker.html#afc74061c3fd85d1c49a52e3efa1a7c04">FormatterTreeWalker</a>.</p>

</div>
</div>
<a class="anchor" id="ab83a8c9614475de763eb8d143a19bb6e"></a><!-- doxytag: member="TreeWalker::traverse" ref="ab83a8c9614475de763eb8d143a19bb6e" args="(const XalanNode *pos, const XalanNode *parent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classXalanNode.html">XalanNode</a>* TreeWalker::traverse </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>parent</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform a document-order traversal stopping at the provided parent node. </p>
<p>Derived classes and stop the traversal by returning true from <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> or <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a>. If that happens, the function will return the next node in document order. If desired, the caller can start traversing the tree again from that point. Note that terminal nodes will always have <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> and <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a> called before the traversal terminates.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>The node in the tree with which to start the walk </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>The parent of pos. Note that for multiple calls that continue the traversal, this node must remain the same.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>parent if the traversal completes, or the next node if the traversal doesn't complete. </dd></dl>

</div>
</div>
<a class="anchor" id="a03382f1d278898fb3ed871a41bb38fbe"></a><!-- doxytag: member="TreeWalker::traverse" ref="a03382f1d278898fb3ed871a41bb38fbe" args="(XalanNode *pos, XalanNode *parent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXalanNode.html">XalanNode</a>* TreeWalker::traverse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>parent</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform a document-order traversal stopping at the provided parent node. </p>
<p>Derived classes and stop the traversal by returning true from <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> or <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a>. If that happens, the function will return the next node in document order. If desired, the caller can start traversing the tree again from that point. Note that terminal nodes will always have <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> and <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a> called before the traversal terminates.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>The node in the tree with which to start the walk </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>The parent of pos. Note that for multiple calls that continue the traversal, this node must remain the same.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>parent if the traversal completes, or the next node if the traversal doesn't complete. </dd></dl>

</div>
</div>
<a class="anchor" id="aa86e79713ec11e56024c2adf418394d2"></a><!-- doxytag: member="TreeWalker::traverse" ref="aa86e79713ec11e56024c2adf418394d2" args="(XalanNode *pos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXalanNode.html">XalanNode</a>* TreeWalker::traverse </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>pos</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform a document-order traversal. </p>
<p>Derived classes and stop the traversal by returning true from <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> or <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a>. If that happens, the function will return the next node in document order. If desired, the caller can start traversing the tree again from that point. Note that terminal nodes will always have <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> and <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a> called before the traversal terminates.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>The node in the tree with which to start the walk</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 if the traversal completes, or the next node if the traversal doesn't complete. </dd></dl>

</div>
</div>
<a class="anchor" id="a5fcdad33cbaba7f07095f5db836dd2f0"></a><!-- doxytag: member="TreeWalker::traverse" ref="a5fcdad33cbaba7f07095f5db836dd2f0" args="(const XalanNode *pos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classXalanNode.html">XalanNode</a>* TreeWalker::traverse </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>pos</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform a document-order traversal. </p>
<p>Derived classes and stop the traversal by returning true from <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> or <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a>. If that happens, the function will return the next node in document order. If desired, the caller can start traversing the tree again from that point. Note that terminal nodes will always have <a class="el" href="classTreeWalker.html#a0830d7c43de92c10554775dbcd59526b" title="Called when first walking a node.">startNode()</a> and <a class="el" href="classTreeWalker.html#a1c7ccec81444662d68ba4ce315fffdc4" title="Called when leaving a node.">endNode()</a> called before the traversal terminates.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>The node in the tree with which to start the walk</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 if the traversal completes, or the next node if the traversal doesn't complete. </dd></dl>

</div>
</div>
<a class="anchor" id="ade54c5f2708bef03cb4f28c51046f6e6"></a><!-- doxytag: member="TreeWalker::traverseSubtree" ref="ade54c5f2708bef03cb4f28c51046f6e6" args="(const XalanNode *pos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void TreeWalker::traverseSubtree </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>pos</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform a pre-order traversal. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>starting node </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a6e20bdda8a430086711351ff68e4a35f"></a><!-- doxytag: member="TreeWalker::traverseSubtree" ref="a6e20bdda8a430086711351ff68e4a35f" args="(XalanNode *pos)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void TreeWalker::traverseSubtree </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>pos</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Perform a pre-order traversal. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>starting node </td></tr>
  </table>
  </dd>
</dl>

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