<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>TinyXml: TiXmlNode Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a></div>
<h1>TiXmlNode Class Reference</h1><!-- doxytag: class="TiXmlNode" --><!-- doxytag: inherits="TiXmlBase" -->The parent class for everything in the Document Object Model.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="tinyxml_8h-source.html">tinyxml.h</a>&gt;</code>
<p>
<p>Inheritance diagram for TiXmlNode:
<p><center><img src="classTiXmlNode.png" usemap="#TiXmlNode_map" border="0" alt=""></center>
<map name="TiXmlNode_map">
<area href="classTiXmlBase.html" alt="TiXmlBase" shape="rect" coords="295,0,403,24">
<area href="classTiXmlComment.html" alt="TiXmlComment" shape="rect" coords="0,112,108,136">
<area href="classTiXmlDeclaration.html" alt="TiXmlDeclaration" shape="rect" coords="118,112,226,136">
<area href="classTiXmlDocument.html" alt="TiXmlDocument" shape="rect" coords="236,112,344,136">
<area href="classTiXmlElement.html" alt="TiXmlElement" shape="rect" coords="354,112,462,136">
<area href="classTiXmlText.html" alt="TiXmlText" shape="rect" coords="472,112,580,136">
<area href="classTiXmlUnknown.html" alt="TiXmlUnknown" shape="rect" coords="590,112,698,136">
</map>
<a href="classTiXmlNode-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#w7">NodeType</a> </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The types of XML nodes supported by TinyXml.  <a href="classTiXmlNode.html#w7">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a1">Value</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The meaning of 'value' changes for the specific type of TiXmlNode.  <a href="#a1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const std::string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a2">ValueStr</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return <a class="el" href="classTiXmlNode.html#a1">Value()</a> as a std::string.  <a href="#a2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a3">SetValue</a> (const char *_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Changes the value of the node.  <a href="#a3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4"></a><!-- doxytag: member="TiXmlNode::SetValue" ref="a4" args="(const std::string &amp;_value)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a4">SetValue</a> (const std::string &amp;_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5"></a><!-- doxytag: member="TiXmlNode::Clear" ref="a5" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a5">Clear</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete all the children of this node. Does not affect 'this'. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a6"></a><!-- doxytag: member="TiXmlNode::Parent" ref="a6" args="()" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a6">Parent</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">One step up the DOM. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8"></a><!-- doxytag: member="TiXmlNode::FirstChild" ref="a8" args="() const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a8">FirstChild</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The first child of this node. Will be null if there are no children. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a10"></a><!-- doxytag: member="TiXmlNode::FirstChild" ref="a10" args="(const char *value) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a10">FirstChild</a> (const char *value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The first child of this node with the matching 'value'. Will be null if none found. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a11"></a><!-- doxytag: member="TiXmlNode::FirstChild" ref="a11" args="(const char *value)" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a11">FirstChild</a> (const char *value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The first child of this node with the matching 'value'. Will be null if none found. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a13"></a><!-- doxytag: member="TiXmlNode::LastChild" ref="a13" args="()" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a13">LastChild</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The last child of this node. Will be null if there are no children. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a15"></a><!-- doxytag: member="TiXmlNode::LastChild" ref="a15" args="(const char *value)" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a15">LastChild</a> (const char *value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The last child of this node matching 'value'. Will be null if there are no children. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a16"></a><!-- doxytag: member="TiXmlNode::FirstChild" ref="a16" args="(const std::string &amp;_value) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a16">FirstChild</a> (const std::string &amp;_value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a17"></a><!-- doxytag: member="TiXmlNode::FirstChild" ref="a17" args="(const std::string &amp;_value)" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a17">FirstChild</a> (const std::string &amp;_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a18"></a><!-- doxytag: member="TiXmlNode::LastChild" ref="a18" args="(const std::string &amp;_value) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a18">LastChild</a> (const std::string &amp;_value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a19"></a><!-- doxytag: member="TiXmlNode::LastChild" ref="a19" args="(const std::string &amp;_value)" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a19">LastChild</a> (const std::string &amp;_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a20">IterateChildren</a> (const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *previous) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An alternate way to walk the children of a node.  <a href="#a20"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a22"></a><!-- doxytag: member="TiXmlNode::IterateChildren" ref="a22" args="(const char *value, const TiXmlNode *previous) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a22">IterateChildren</a> (const char *value, const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *previous) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This flavor of IterateChildren searches for children with a particular 'value'. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a24"></a><!-- doxytag: member="TiXmlNode::IterateChildren" ref="a24" args="(const std::string &amp;_value, const TiXmlNode *previous) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a24">IterateChildren</a> (const std::string &amp;_value, const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *previous) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a25"></a><!-- doxytag: member="TiXmlNode::IterateChildren" ref="a25" args="(const std::string &amp;_value, TiXmlNode *previous)" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a25">IterateChildren</a> (const std::string &amp;_value, <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *previous)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a26">InsertEndChild</a> (const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;addThis)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new node related to this.  <a href="#a26"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a27">LinkEndChild</a> (<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *addThis)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new node related to this.  <a href="#a27"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a28">InsertBeforeChild</a> (<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *beforeThis, const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;addThis)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new node related to this.  <a href="#a28"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a29">InsertAfterChild</a> (<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *afterThis, const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;addThis)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a new node related to this.  <a href="#a29"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a30">ReplaceChild</a> (<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *replaceThis, const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;withThis)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Replace a child of this node.  <a href="#a30"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a31"></a><!-- doxytag: member="TiXmlNode::RemoveChild" ref="a31" args="(TiXmlNode *removeThis)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a31">RemoveChild</a> (<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *removeThis)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete a child of this node. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a32"></a><!-- doxytag: member="TiXmlNode::PreviousSibling" ref="a32" args="() const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a32">PreviousSibling</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Navigate to a sibling node. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a34"></a><!-- doxytag: member="TiXmlNode::PreviousSibling" ref="a34" args="(const char *) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a34">PreviousSibling</a> (const char *) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Navigate to a sibling node. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a36"></a><!-- doxytag: member="TiXmlNode::PreviousSibling" ref="a36" args="(const std::string &amp;_value) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a36">PreviousSibling</a> (const std::string &amp;_value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a37"></a><!-- doxytag: member="TiXmlNode::PreviousSibling" ref="a37" args="(const std::string &amp;_value)" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a37">PreviousSibling</a> (const std::string &amp;_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a38"></a><!-- doxytag: member="TiXmlNode::NextSibling" ref="a38" args="(const std::string &amp;_value) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a38">NextSibling</a> (const std::string &amp;_value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a39"></a><!-- doxytag: member="TiXmlNode::NextSibling" ref="a39" args="(const std::string &amp;_value)" -->
<a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a39">NextSibling</a> (const std::string &amp;_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a40"></a><!-- doxytag: member="TiXmlNode::NextSibling" ref="a40" args="() const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a40">NextSibling</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Navigate to a sibling node. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a42"></a><!-- doxytag: member="TiXmlNode::NextSibling" ref="a42" args="(const char *) const " -->
const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a42">NextSibling</a> (const char *) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Navigate to a sibling node with the given 'value'. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a44">NextSiblingElement</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convenience function to get through elements.  <a href="#a44"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a46">NextSiblingElement</a> (const char *) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convenience function to get through elements.  <a href="#a46"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a48"></a><!-- doxytag: member="TiXmlNode::NextSiblingElement" ref="a48" args="(const std::string &amp;_value) const " -->
const <a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a48">NextSiblingElement</a> (const std::string &amp;_value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a49"></a><!-- doxytag: member="TiXmlNode::NextSiblingElement" ref="a49" args="(const std::string &amp;_value)" -->
<a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a49">NextSiblingElement</a> (const std::string &amp;_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a50"></a><!-- doxytag: member="TiXmlNode::FirstChildElement" ref="a50" args="() const " -->
const <a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a50">FirstChildElement</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convenience function to get through elements. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a52"></a><!-- doxytag: member="TiXmlNode::FirstChildElement" ref="a52" args="(const char *value) const " -->
const <a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a52">FirstChildElement</a> (const char *value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convenience function to get through elements. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a54"></a><!-- doxytag: member="TiXmlNode::FirstChildElement" ref="a54" args="(const std::string &amp;_value) const " -->
const <a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a54">FirstChildElement</a> (const std::string &amp;_value) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a55"></a><!-- doxytag: member="TiXmlNode::FirstChildElement" ref="a55" args="(const std::string &amp;_value)" -->
<a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a55">FirstChildElement</a> (const std::string &amp;_value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL std::string form. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a56">Type</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Query the type (as an enumerated value, above) of this node.  <a href="#a56"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classTiXmlDocument.html">TiXmlDocument</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a57">GetDocument</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return a pointer to the Document this node lives in.  <a href="#a57"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a59"></a><!-- doxytag: member="TiXmlNode::NoChildren" ref="a59" args="() const " -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a59">NoChildren</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if this node has no children. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a60"></a><!-- doxytag: member="TiXmlNode::ToDocument" ref="a60" args="() const " -->
const <a class="el" href="classTiXmlDocument.html">TiXmlDocument</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a60">ToDocument</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a61"></a><!-- doxytag: member="TiXmlNode::ToElement" ref="a61" args="() const " -->
const <a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a61">ToElement</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a62"></a><!-- doxytag: member="TiXmlNode::ToComment" ref="a62" args="() const " -->
const <a class="el" href="classTiXmlComment.html">TiXmlComment</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a62">ToComment</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a63"></a><!-- doxytag: member="TiXmlNode::ToUnknown" ref="a63" args="() const " -->
const <a class="el" href="classTiXmlUnknown.html">TiXmlUnknown</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a63">ToUnknown</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a64"></a><!-- doxytag: member="TiXmlNode::ToText" ref="a64" args="() const " -->
const <a class="el" href="classTiXmlText.html">TiXmlText</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a64">ToText</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a65"></a><!-- doxytag: member="TiXmlNode::ToDeclaration" ref="a65" args="() const " -->
const <a class="el" href="classTiXmlDeclaration.html">TiXmlDeclaration</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a65">ToDeclaration</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a66"></a><!-- doxytag: member="TiXmlNode::ToDocument" ref="a66" args="()" -->
<a class="el" href="classTiXmlDocument.html">TiXmlDocument</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a66">ToDocument</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a67"></a><!-- doxytag: member="TiXmlNode::ToElement" ref="a67" args="()" -->
<a class="el" href="classTiXmlElement.html">TiXmlElement</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a67">ToElement</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a68"></a><!-- doxytag: member="TiXmlNode::ToComment" ref="a68" args="()" -->
<a class="el" href="classTiXmlComment.html">TiXmlComment</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a68">ToComment</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a69"></a><!-- doxytag: member="TiXmlNode::ToUnknown" ref="a69" args="()" -->
<a class="el" href="classTiXmlUnknown.html">TiXmlUnknown</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a69">ToUnknown</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a70"></a><!-- doxytag: member="TiXmlNode::ToText" ref="a70" args="()" -->
<a class="el" href="classTiXmlText.html">TiXmlText</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a70">ToText</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a71"></a><!-- doxytag: member="TiXmlNode::ToDeclaration" ref="a71" args="()" -->
<a class="el" href="classTiXmlDeclaration.html">TiXmlDeclaration</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a71">ToDeclaration</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cast to a more defined type. Will return null not of the requested type. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#a72">Clone</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create an exact duplicate of this node and return it.  <a href="#a72"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="n0"></a><!-- doxytag: member="TiXmlNode::TiXmlDocument" ref="n0" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#n0">TiXmlDocument</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="n1"></a><!-- doxytag: member="TiXmlNode::TiXmlElement" ref="n1" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#n1">TiXmlElement</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">std::istream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#n2">operator&gt;&gt;</a> (std::istream &amp;in, <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;base)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An input stream operator, for every class.  <a href="#n2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#n3">operator&lt;&lt;</a> (std::ostream &amp;out, const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;base)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An output stream operator, for every class.  <a href="#n3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="n4"></a><!-- doxytag: member="TiXmlNode::operator&lt;&lt;" ref="n4" args="(std::string &amp;out, const TiXmlNode &amp;base)" -->
std::string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTiXmlNode.html#n4">operator&lt;&lt;</a> (std::string &amp;out, const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;base)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Appends the XML node or attribute to a std::string. <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The parent class for everything in the Document Object Model. 
<p>
(Except for attributes). Nodes have siblings, a parent, and children. A node can be in a document, or stand on its own. The type of a TiXmlNode can be queried, and it can be cast to its more defined type.
<p>
<hr><h2>Member Enumeration Documentation</h2>
<a class="anchor" name="w7"></a><!-- doxytag: member="TiXmlNode::NodeType" ref="w7" args="" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">enum <a class="el" href="classTiXmlNode.html#w7">TiXmlNode::NodeType</a>          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
The types of XML nodes supported by TinyXml. 
<p>
(All the unsupported types are picked up by UNKNOWN.)    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="a72"></a><!-- doxytag: member="TiXmlNode::Clone" ref="a72" args="() const =0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual <a class="el" href="classTiXmlNode.html">TiXmlNode</a>* TiXmlNode::Clone           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Create an exact duplicate of this node and return it. 
<p>
The memory must be deleted by the caller.
<p>
Implemented in <a class="el" href="classTiXmlElement.html#a28">TiXmlElement</a>, <a class="el" href="classTiXmlComment.html#a4">TiXmlComment</a>, <a class="el" href="classTiXmlText.html#b0">TiXmlText</a>, <a class="el" href="classTiXmlDeclaration.html#a9">TiXmlDeclaration</a>, <a class="el" href="classTiXmlUnknown.html#a4">TiXmlUnknown</a>, and <a class="el" href="classTiXmlDocument.html#b1">TiXmlDocument</a>.    </td>
  </tr>
</table>
<a class="anchor" name="a57"></a><!-- doxytag: member="TiXmlNode::GetDocument" ref="a57" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">const <a class="el" href="classTiXmlDocument.html">TiXmlDocument</a>* TiXmlNode::GetDocument           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Return a pointer to the Document this node lives in. 
<p>
Returns null if not in a document.    </td>
  </tr>
</table>
<a class="anchor" name="a29"></a><!-- doxytag: member="TiXmlNode::InsertAfterChild" ref="a29" args="(TiXmlNode *afterThis, const TiXmlNode &amp;addThis)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a>* TiXmlNode::InsertAfterChild           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td>
          <td class="mdname" nowrap> <em>afterThis</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>addThis</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Add a new node related to this. 
<p>
Adds a child after the specified child. Returns a pointer to the new object or NULL if an error occured.    </td>
  </tr>
</table>
<a class="anchor" name="a28"></a><!-- doxytag: member="TiXmlNode::InsertBeforeChild" ref="a28" args="(TiXmlNode *beforeThis, const TiXmlNode &amp;addThis)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a>* TiXmlNode::InsertBeforeChild           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td>
          <td class="mdname" nowrap> <em>beforeThis</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>addThis</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Add a new node related to this. 
<p>
Adds a child before the specified child. Returns a pointer to the new object or NULL if an error occured.    </td>
  </tr>
</table>
<a class="anchor" name="a26"></a><!-- doxytag: member="TiXmlNode::InsertEndChild" ref="a26" args="(const TiXmlNode &amp;addThis)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a>* TiXmlNode::InsertEndChild           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>addThis</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Add a new node related to this. 
<p>
Adds a child past the LastChild. Returns a pointer to the new object or NULL if an error occured.    </td>
  </tr>
</table>
<a class="anchor" name="a20"></a><!-- doxytag: member="TiXmlNode::IterateChildren" ref="a20" args="(const TiXmlNode *previous) const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">const <a class="el" href="classTiXmlNode.html">TiXmlNode</a>* TiXmlNode::IterateChildren           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>previous</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
An alternate way to walk the children of a node. 
<p>
One way to iterate over nodes is: <div class="fragment"><pre class="fragment">			for( child = parent-&gt;FirstChild(); child; child = child-&gt;NextSibling() )
		</pre></div><p>
IterateChildren does the same thing with the syntax: <div class="fragment"><pre class="fragment">			child = 0;
			while( child = parent-&gt;IterateChildren( child ) )
		</pre></div><p>
IterateChildren takes the previous child as input and finds the next one. If the previous child is null, it returns the first. IterateChildren will return null when done.    </td>
  </tr>
</table>
<a class="anchor" name="a27"></a><!-- doxytag: member="TiXmlNode::LinkEndChild" ref="a27" args="(TiXmlNode *addThis)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a>* TiXmlNode::LinkEndChild           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>addThis</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Add a new node related to this. 
<p>
Adds a child past the LastChild.<p>
NOTE: the node to be added is passed by pointer, and will be henceforth owned (and deleted) by tinyXml. This method is efficient and avoids an extra copy, but should be used with care as it uses a different memory model than the other insert functions.<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classTiXmlNode.html#a26">InsertEndChild</a></dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="a46"></a><!-- doxytag: member="TiXmlNode::NextSiblingElement" ref="a46" args="(const char *) const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">const <a class="el" href="classTiXmlElement.html">TiXmlElement</a>* TiXmlNode::NextSiblingElement           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Convenience function to get through elements. 
<p>
Calls NextSibling and ToElement. Will skip all non-Element nodes. Returns 0 if there is not another element.    </td>
  </tr>
</table>
<a class="anchor" name="a44"></a><!-- doxytag: member="TiXmlNode::NextSiblingElement" ref="a44" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">const <a class="el" href="classTiXmlElement.html">TiXmlElement</a>* TiXmlNode::NextSiblingElement           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Convenience function to get through elements. 
<p>
Calls NextSibling and ToElement. Will skip all non-Element nodes. Returns 0 if there is not another element.    </td>
  </tr>
</table>
<a class="anchor" name="a30"></a><!-- doxytag: member="TiXmlNode::ReplaceChild" ref="a30" args="(TiXmlNode *replaceThis, const TiXmlNode &amp;withThis)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a>* TiXmlNode::ReplaceChild           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="classTiXmlNode.html">TiXmlNode</a> *&nbsp;</td>
          <td class="mdname" nowrap> <em>replaceThis</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>withThis</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Replace a child of this node. 
<p>
Returns a pointer to the new object or NULL if an error occured.    </td>
  </tr>
</table>
<a class="anchor" name="a3"></a><!-- doxytag: member="TiXmlNode::SetValue" ref="a3" args="(const char *_value)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">void TiXmlNode::SetValue           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>_value</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Changes the value of the node. 
<p>
Defined as: <div class="fragment"><pre class="fragment">		Document:	filename of the xml file
		Element:	name of the element
		Comment:	the comment text
		Unknown:	the tag contents
		Text:		the text string
		</pre></div>    </td>
  </tr>
</table>
<a class="anchor" name="a56"></a><!-- doxytag: member="TiXmlNode::Type" ref="a56" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual int TiXmlNode::Type           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Query the type (as an enumerated value, above) of this node. 
<p>
The possible types are: DOCUMENT, ELEMENT, COMMENT, UNKNOWN, TEXT, and DECLARATION.    </td>
  </tr>
</table>
<a class="anchor" name="a1"></a><!-- doxytag: member="TiXmlNode::Value" ref="a1" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">const char* TiXmlNode::Value           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
The meaning of 'value' changes for the specific type of TiXmlNode. 
<p>
<div class="fragment"><pre class="fragment">		Document:	filename of the xml file
		Element:	name of the element
		Comment:	the comment text
		Unknown:	the tag contents
		Text:		the text string
		</pre></div><p>
The subclasses will wrap this function.    </td>
  </tr>
</table>
<a class="anchor" name="a2"></a><!-- doxytag: member="TiXmlNode::ValueStr" ref="a2" args="() const " --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">const std::string&amp; TiXmlNode::ValueStr           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Return <a class="el" href="classTiXmlNode.html#a1">Value()</a> as a std::string. 
<p>
If you only use STL, this is more efficient than calling <a class="el" href="classTiXmlNode.html#a1">Value()</a>. Only available in STL mode.    </td>
  </tr>
</table>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="n3"></a><!-- doxytag: member="TiXmlNode::operator&lt;&lt;" ref="n3" args="(std::ostream &amp;out, const TiXmlNode &amp;base)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">std::ostream&amp; operator&lt;&lt;           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">std::ostream &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>out</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const <a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>base</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [friend]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
An output stream operator, for every class. 
<p>
Note that this outputs without any newlines or formatting, as opposed to <a class="el" href="classTiXmlBase.html#a2">Print()</a>, which includes tabs and new lines.<p>
The operator&lt;&lt; and operator&gt;&gt; are not completely symmetric. Writing a node to a stream is very well defined. You'll get a nice stream of output, without any extra whitespace or newlines.<p>
But reading is not as well defined. (As it always is.) If you create a <a class="el" href="classTiXmlElement.html">TiXmlElement</a> (for example) and read that from an input stream, the text needs to define an element or junk will result. This is true of all input streams, but it's worth keeping in mind.<p>
A <a class="el" href="classTiXmlDocument.html">TiXmlDocument</a> will read nodes until it reads a root element, and all the children of that root element.    </td>
  </tr>
</table>
<a class="anchor" name="n2"></a><!-- doxytag: member="TiXmlNode::operator&gt;&gt;" ref="n2" args="(std::istream &amp;in, TiXmlNode &amp;base)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">std::istream&amp; operator&gt;&gt;           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">std::istream &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>in</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap><a class="el" href="classTiXmlNode.html">TiXmlNode</a> &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>base</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [friend]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
An input stream operator, for every class. 
<p>
Tolerant of newlines and formatting, but doesn't expect them.    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="tinyxml_8h-source.html">tinyxml.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Sat Oct 8 14:15:30 2005 for TinyXml by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>