Sophie

Sophie

distrib > Mandriva > 2011.0 > x86_64 > by-pkgid > e4e5aca55b6d7244e6bae95bf4fde3ca > files > 154

lib64edelib-devel-2.0-1.x86_64.rpm

<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>edelib: edelib/TiXml.h Source File</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">edelib
   &#160;<span id="projectnumber">2.0.0</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">edelib/TiXml.h</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment">www.sourceforge.net/projects/tinyxml</span>
<a name="l00003"></a>00003 <span class="comment">Original code (2.0 and earlier )copyright (c) 2000-2006 Lee Thomason (www.grinninglizard.com)</span>
<a name="l00004"></a>00004 <span class="comment"></span>
<a name="l00005"></a>00005 <span class="comment">This software is provided &#39;as-is&#39;, without any express or implied</span>
<a name="l00006"></a>00006 <span class="comment">warranty. In no event will the authors be held liable for any</span>
<a name="l00007"></a>00007 <span class="comment">damages arising from the use of this software.</span>
<a name="l00008"></a>00008 <span class="comment"></span>
<a name="l00009"></a>00009 <span class="comment">Permission is granted to anyone to use this software for any</span>
<a name="l00010"></a>00010 <span class="comment">purpose, including commercial applications, and to alter it and</span>
<a name="l00011"></a>00011 <span class="comment">redistribute it freely, subject to the following restrictions:</span>
<a name="l00012"></a>00012 <span class="comment"></span>
<a name="l00013"></a>00013 <span class="comment">1. The origin of this software must not be misrepresented; you must</span>
<a name="l00014"></a>00014 <span class="comment">not claim that you wrote the original software. If you use this</span>
<a name="l00015"></a>00015 <span class="comment">software in a product, an acknowledgment in the product documentation</span>
<a name="l00016"></a>00016 <span class="comment">would be appreciated but is not required.</span>
<a name="l00017"></a>00017 <span class="comment"></span>
<a name="l00018"></a>00018 <span class="comment">2. Altered source versions must be plainly marked as such, and</span>
<a name="l00019"></a>00019 <span class="comment">must not be misrepresented as being the original software.</span>
<a name="l00020"></a>00020 <span class="comment"></span>
<a name="l00021"></a>00021 <span class="comment">3. This notice may not be removed or altered from any source</span>
<a name="l00022"></a>00022 <span class="comment">distribution.</span>
<a name="l00023"></a>00023 <span class="comment">*/</span>
<a name="l00024"></a>00024 
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 <span class="preprocessor">#ifndef __EDELIB_TIXML_H__</span>
<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="preprocessor">#define __EDELIB_TIXML_H__</span>
<a name="l00028"></a>00028 <span class="preprocessor"></span>
<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;ctype.h&gt;</span>
<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;string.h&gt;</span>
<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;assert.h&gt;</span>
<a name="l00034"></a>00034 
<a name="l00035"></a>00035 <span class="comment">// Help out windows:</span>
<a name="l00036"></a>00036 <span class="preprocessor">#if defined( _DEBUG ) &amp;&amp; !defined( DEBUG )</span>
<a name="l00037"></a>00037 <span class="preprocessor"></span><span class="preprocessor">#define DEBUG</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00039"></a>00039 <span class="preprocessor"></span>
<a name="l00040"></a>00040 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">        #include &lt;string&gt;</span>
<a name="l00042"></a>00042 <span class="preprocessor">        #include &lt;iostream&gt;</span>
<a name="l00043"></a>00043 <span class="preprocessor">        #include &lt;sstream&gt;</span>
<a name="l00044"></a>00044 <span class="preprocessor">        #define TIXML_STRING            std::string</span>
<a name="l00045"></a>00045 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">        #include &quot;String.h&quot;</span>
<a name="l00047"></a>00047 <span class="preprocessor">        #define TIXML_STRING            EDELIB_NS_PREPEND(String)</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00049"></a>00049 <span class="preprocessor"></span>
<a name="l00050"></a>00050 <span class="comment">// Deprecated library function hell. Compilers want to use the</span>
<a name="l00051"></a>00051 <span class="comment">// new safe versions. This probably doesn&#39;t fully address the problem,</span>
<a name="l00052"></a>00052 <span class="comment">// but it gets closer. There are too many compilers for me to fully</span>
<a name="l00053"></a>00053 <span class="comment">// test. If you get compilation troubles, undefine TIXML_SAFE</span>
<a name="l00054"></a>00054 <span class="preprocessor">#define TIXML_SAFE</span>
<a name="l00055"></a>00055 <span class="preprocessor"></span>
<a name="l00056"></a>00056 <span class="preprocessor">#ifdef TIXML_SAFE</span>
<a name="l00057"></a>00057 <span class="preprocessor"></span><span class="preprocessor">        #if defined(_MSC_VER) &amp;&amp; (_MSC_VER &gt;= 1400 )</span>
<a name="l00058"></a>00058 <span class="preprocessor"></span>                <span class="comment">// Microsoft visual studio, version 2005 and higher.</span>
<a name="l00059"></a>00059 <span class="preprocessor">                #define TIXML_SNPRINTF _snprintf_s</span>
<a name="l00060"></a>00060 <span class="preprocessor"></span><span class="preprocessor">                #define TIXML_SNSCANF  _snscanf_s</span>
<a name="l00061"></a>00061 <span class="preprocessor"></span><span class="preprocessor">        #elif defined(_MSC_VER) &amp;&amp; (_MSC_VER &gt;= 1200 )</span>
<a name="l00062"></a>00062 <span class="preprocessor"></span>                <span class="comment">// Microsoft visual studio, version 6 and higher.</span>
<a name="l00063"></a>00063                 <span class="comment">//#pragma message( &quot;Using _sn* functions.&quot; )</span>
<a name="l00064"></a>00064 <span class="preprocessor">                #define TIXML_SNPRINTF _snprintf</span>
<a name="l00065"></a>00065 <span class="preprocessor"></span><span class="preprocessor">                #define TIXML_SNSCANF  _snscanf</span>
<a name="l00066"></a>00066 <span class="preprocessor"></span><span class="preprocessor">        #elif defined(__GNUC__) &amp;&amp; (__GNUC__ &gt;= 3 )</span>
<a name="l00067"></a>00067 <span class="preprocessor"></span>                <span class="comment">// GCC version 3 and higher.s</span>
<a name="l00068"></a>00068                 <span class="comment">//#warning( &quot;Using sn* functions.&quot; )</span>
<a name="l00069"></a>00069 <span class="preprocessor">                #define TIXML_SNPRINTF snprintf</span>
<a name="l00070"></a>00070 <span class="preprocessor"></span><span class="preprocessor">                #define TIXML_SNSCANF  snscanf</span>
<a name="l00071"></a>00071 <span class="preprocessor"></span><span class="preprocessor">        #endif</span>
<a name="l00072"></a>00072 <span class="preprocessor"></span><span class="preprocessor">#endif  </span>
<a name="l00073"></a>00073 <span class="preprocessor"></span>
<a name="l00074"></a>00074 <span class="keyword">class </span><a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>;
<a name="l00075"></a>00075 <span class="keyword">class </span><a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>;
<a name="l00076"></a>00076 <span class="keyword">class </span><a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>;
<a name="l00077"></a>00077 <span class="keyword">class </span><a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>;
<a name="l00078"></a>00078 <span class="keyword">class </span><a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>;
<a name="l00079"></a>00079 <span class="keyword">class </span><a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>;
<a name="l00080"></a>00080 <span class="keyword">class </span><a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>;
<a name="l00081"></a>00081 <span class="keyword">class </span>TiXmlParsingData;
<a name="l00082"></a>00082 
<a name="l00083"></a>00083 <span class="keyword">const</span> <span class="keywordtype">int</span> TIXML_MAJOR_VERSION = 2;
<a name="l00084"></a>00084 <span class="keyword">const</span> <span class="keywordtype">int</span> TIXML_MINOR_VERSION = 5;
<a name="l00085"></a>00085 <span class="keyword">const</span> <span class="keywordtype">int</span> TIXML_PATCH_VERSION = 2;
<a name="l00086"></a>00086 
<a name="l00087"></a>00087 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l00088"></a>00088 <span class="preprocessor"></span><span class="comment">/*      </span>
<a name="l00089"></a>00089 <span class="comment"> * Internal structure for tracking location of items </span>
<a name="l00090"></a>00090 <span class="comment"> * in the XML file.</span>
<a name="l00091"></a>00091 <span class="comment"> */</span>
<a name="l00092"></a>00092 <span class="keyword">struct </span>TiXmlCursor
<a name="l00093"></a>00093 {
<a name="l00094"></a>00094         TiXmlCursor()           { Clear(); }
<a name="l00095"></a>00095         <span class="keywordtype">void</span> Clear()            { row = col = -1; }
<a name="l00096"></a>00096 
<a name="l00097"></a>00097         <span class="keywordtype">int</span> row;        <span class="comment">// 0 based.</span>
<a name="l00098"></a>00098         <span class="keywordtype">int</span> col;        <span class="comment">// 0 based.</span>
<a name="l00099"></a>00099 };
<a name="l00100"></a>00100 <span class="preprocessor">#endif</span>
<a name="l00101"></a>00101 <span class="preprocessor"></span>
<a name="l00123"></a><a class="code" href="classTiXmlVisitor.html">00123</a> <span class="keyword">class </span><a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>
<a name="l00124"></a>00124 {
<a name="l00125"></a>00125 <span class="keyword">public</span>:
<a name="l00127"></a><a class="code" href="classTiXmlVisitor.html#a2384e828c0a485a9b9b1e7181e595d72">00127</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlVisitor.html#a2384e828c0a485a9b9b1e7181e595d72">~TiXmlVisitor</a>() {}
<a name="l00128"></a>00128 
<a name="l00130"></a><a class="code" href="classTiXmlVisitor.html#a74dd129fa380913a26d59b6c00c39fb1">00130</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a74dd129fa380913a26d59b6c00c39fb1">VisitEnter</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>&amp; doc )     { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00132"></a><a class="code" href="classTiXmlVisitor.html#af6fa317428b54b46c977098007a09dd6">00132</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#af6fa317428b54b46c977098007a09dd6">VisitExit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>&amp; doc )      { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00134"></a><a class="code" href="classTiXmlVisitor.html#aa3a06468299b1ce3d80ec3e94c84897b">00134</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#aa3a06468299b1ce3d80ec3e94c84897b">VisitEnter</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>&amp; element, <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* firstAttribute )    { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00136"></a><a class="code" href="classTiXmlVisitor.html#a484ed1f99ec7ea1cfcac063fe9225f6d">00136</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a484ed1f99ec7ea1cfcac063fe9225f6d">VisitExit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>&amp; element )                                                                                   { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00138"></a><a class="code" href="classTiXmlVisitor.html#a1d2df83a060124fdd8359a6f5873e192">00138</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a1d2df83a060124fdd8359a6f5873e192">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>&amp; declaration )               { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00140"></a><a class="code" href="classTiXmlVisitor.html#afb37f7ed8ce977a3cb4e4edbf3decc2c">00140</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#afb37f7ed8ce977a3cb4e4edbf3decc2c">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>&amp; text )                                             { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00142"></a><a class="code" href="classTiXmlVisitor.html#afc75e63e558d04c8503814f759d032f1">00142</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#afc75e63e558d04c8503814f759d032f1">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>&amp; comment )                               { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00144"></a><a class="code" href="classTiXmlVisitor.html#a1cbe1bf98d24f291cf5b3d1cbf129fe0">00144</a>         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a1cbe1bf98d24f291cf5b3d1cbf129fe0">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>&amp; unknown )                               { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
<a name="l00145"></a>00145 };
<a name="l00146"></a>00146 
<a name="l00147"></a>00147 <span class="comment">// Only used by Attribute::Query functions</span>
<a name="l00148"></a>00148 <span class="keyword">enum</span> 
<a name="l00149"></a>00149 { 
<a name="l00150"></a>00150         TIXML_SUCCESS,
<a name="l00151"></a>00151         TIXML_NO_ATTRIBUTE,
<a name="l00152"></a>00152         TIXML_WRONG_TYPE
<a name="l00153"></a>00153 };
<a name="l00154"></a>00154 
<a name="l00155"></a>00155 <span class="comment">// Used by the parsing routines.</span>
<a name="l00156"></a>00156 <span class="keyword">enum</span> TiXmlEncoding
<a name="l00157"></a>00157 {
<a name="l00158"></a>00158         TIXML_ENCODING_UNKNOWN,
<a name="l00159"></a>00159         TIXML_ENCODING_UTF8,
<a name="l00160"></a>00160         TIXML_ENCODING_LEGACY
<a name="l00161"></a>00161 };
<a name="l00162"></a>00162 
<a name="l00163"></a>00163 <span class="keyword">const</span> TiXmlEncoding TIXML_DEFAULT_ENCODING = TIXML_ENCODING_UNKNOWN;
<a name="l00164"></a>00164 
<a name="l00194"></a><a class="code" href="classTiXmlBase.html">00194</a> <span class="keyword">class </span><a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>
<a name="l00195"></a>00195 {
<a name="l00196"></a>00196         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>;
<a name="l00197"></a>00197         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>;
<a name="l00198"></a>00198         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>;
<a name="l00199"></a>00199 
<a name="l00200"></a>00200 <span class="keyword">public</span>:
<a name="l00201"></a>00201         <a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>()     :       <a class="code" href="classTiXmlBase.html#a2e294dd14122c554baa0665072b4ca7a">userData</a>(0)             {}
<a name="l00202"></a>00202         <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>()                    {}
<a name="l00203"></a>00203 
<a name="l00214"></a>00214         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth ) <span class="keyword">const</span> = 0;
<a name="l00215"></a>00215 
<a name="l00223"></a><a class="code" href="classTiXmlBase.html#af8f2207f82d9add8ab6f375f5a5b9667">00223</a>         <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#af8f2207f82d9add8ab6f375f5a5b9667">SetCondenseWhiteSpace</a>( <span class="keywordtype">bool</span> condense )              { condenseWhiteSpace = condense; }
<a name="l00224"></a>00224 
<a name="l00226"></a><a class="code" href="classTiXmlBase.html#a3b5c220f2933287671e650679746c08f">00226</a>         <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlBase.html#a3b5c220f2933287671e650679746c08f">IsWhiteSpaceCondensed</a>()                                             { <span class="keywordflow">return</span> condenseWhiteSpace; }
<a name="l00227"></a>00227 
<a name="l00246"></a><a class="code" href="classTiXmlBase.html#a8b8f21430c62433a48c592277a3bd7a2">00246</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlBase.html#a8b8f21430c62433a48c592277a3bd7a2">Row</a>()<span class="keyword"> const                 </span>{ <span class="keywordflow">return</span> <a class="code" href="classTiXmlBase.html#a4dc7805c3510e31912915af681ec22f4">location</a>.row + 1; }
<a name="l00248"></a><a class="code" href="classTiXmlBase.html#ab01a75ed9853cd6e22f06a61d173f229">00248</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlBase.html#ab01a75ed9853cd6e22f06a61d173f229">Column</a>()<span class="keyword"> const              </span>{ <span class="keywordflow">return</span> <a class="code" href="classTiXmlBase.html#a4dc7805c3510e31912915af681ec22f4">location</a>.col + 1; }
<a name="l00250"></a><a class="code" href="classTiXmlBase.html#a52da991c3b0e2f0de483df38db787e4b">00250</a>         <span class="keywordtype">void</span>  <a class="code" href="classTiXmlBase.html#a52da991c3b0e2f0de483df38db787e4b">SetUserData</a>( <span class="keywordtype">void</span>* user )                 { <a class="code" href="classTiXmlBase.html#a2e294dd14122c554baa0665072b4ca7a">userData</a> = user; }
<a name="l00252"></a><a class="code" href="classTiXmlBase.html#ab331e64cfdbe463ed51c2591d26f7564">00252</a>         <span class="keywordtype">void</span>* <a class="code" href="classTiXmlBase.html#ab331e64cfdbe463ed51c2591d26f7564">GetUserData</a>()                                             { <span class="keywordflow">return</span> <a class="code" href="classTiXmlBase.html#a2e294dd14122c554baa0665072b4ca7a">userData</a>; }
<a name="l00254"></a><a class="code" href="classTiXmlBase.html#a5a80e350527f576950f2bc9c2596d14e">00254</a>         <span class="keyword">const</span> <span class="keywordtype">void</span>* <a class="code" href="classTiXmlBase.html#a5a80e350527f576950f2bc9c2596d14e">GetUserData</a>()<span class="keyword"> const                 </span>{ <span class="keywordflow">return</span> <a class="code" href="classTiXmlBase.html#a2e294dd14122c554baa0665072b4ca7a">userData</a>; }
<a name="l00255"></a>00255 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l00256"></a>00256 <span class="preprocessor"></span>        <span class="comment">// Table that returs, for a given lead byte, the total number of bytes</span>
<a name="l00257"></a>00257         <span class="comment">// in the UTF-8 sequence.</span>
<a name="l00258"></a>00258         <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> utf8ByteTable[256];
<a name="l00259"></a>00259 
<a name="l00260"></a>00260         <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlDocument.html#a7f2b27105537a0ec4bfb961c40bb0d64">Parse</a>(      <span class="keyword">const</span> <span class="keywordtype">char</span>* p, 
<a name="l00261"></a>00261                                                                 TiXmlParsingData* data, 
<a name="l00262"></a>00262                                                                 TiXmlEncoding encoding <span class="comment">/*= TIXML_ENCODING_UNKNOWN */</span> ) = 0;
<a name="l00263"></a>00263 <span class="preprocessor">#endif</span>
<a name="l00264"></a>00264 <span class="preprocessor"></span>
<a name="l00265"></a>00265         <span class="keyword">enum</span>
<a name="l00266"></a>00266         {
<a name="l00267"></a>00267                 TIXML_NO_ERROR = 0,
<a name="l00268"></a>00268                 TIXML_ERROR,
<a name="l00269"></a>00269                 TIXML_ERROR_OPENING_FILE,
<a name="l00270"></a>00270                 TIXML_ERROR_OUT_OF_MEMORY,
<a name="l00271"></a>00271                 TIXML_ERROR_PARSING_ELEMENT,
<a name="l00272"></a>00272                 TIXML_ERROR_FAILED_TO_READ_ELEMENT_NAME,
<a name="l00273"></a>00273                 TIXML_ERROR_READING_ELEMENT_VALUE,
<a name="l00274"></a>00274                 TIXML_ERROR_READING_ATTRIBUTES,
<a name="l00275"></a>00275                 TIXML_ERROR_PARSING_EMPTY,
<a name="l00276"></a>00276                 TIXML_ERROR_READING_END_TAG,
<a name="l00277"></a>00277                 TIXML_ERROR_PARSING_UNKNOWN,
<a name="l00278"></a>00278                 TIXML_ERROR_PARSING_COMMENT,
<a name="l00279"></a>00279                 TIXML_ERROR_PARSING_DECLARATION,
<a name="l00280"></a>00280                 TIXML_ERROR_DOCUMENT_EMPTY,
<a name="l00281"></a>00281                 TIXML_ERROR_EMBEDDED_NULL,
<a name="l00282"></a>00282                 TIXML_ERROR_PARSING_CDATA,
<a name="l00283"></a>00283                 TIXML_ERROR_DOCUMENT_TOP_ONLY,
<a name="l00284"></a>00284 
<a name="l00285"></a>00285                 TIXML_ERROR_STRING_COUNT
<a name="l00286"></a>00286         };
<a name="l00287"></a>00287 
<a name="l00288"></a>00288 <span class="keyword">protected</span>:
<a name="l00289"></a>00289 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l00290"></a>00290 <span class="preprocessor"></span>        <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* SkipWhiteSpace( <span class="keyword">const</span> <span class="keywordtype">char</span>*, TiXmlEncoding encoding );
<a name="l00291"></a>00291         <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> IsWhiteSpace( <span class="keywordtype">char</span> c )               
<a name="l00292"></a>00292         { 
<a name="l00293"></a>00293                 <span class="keywordflow">return</span> ( isspace( (<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>) c ) || c == <span class="charliteral">&#39;\n&#39;</span> || c == <span class="charliteral">&#39;\r&#39;</span> ); 
<a name="l00294"></a>00294         }
<a name="l00295"></a>00295         <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> IsWhiteSpace( <span class="keywordtype">int</span> c )
<a name="l00296"></a>00296         {
<a name="l00297"></a>00297                 <span class="keywordflow">if</span> ( c &lt; 256 )
<a name="l00298"></a>00298                         <span class="keywordflow">return</span> IsWhiteSpace( (<span class="keywordtype">char</span>) c );
<a name="l00299"></a>00299                 <span class="keywordflow">return</span> <span class="keyword">false</span>;   <span class="comment">// Again, only truly correct for English/Latin...but usually works.</span>
<a name="l00300"></a>00300         }
<a name="l00301"></a>00301 
<a name="l00302"></a>00302 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00303"></a>00303 <span class="preprocessor"></span>        <span class="keyword">static</span> <span class="keywordtype">bool</span>     StreamWhiteSpace( std::istream * in, TIXML_STRING * tag );
<a name="l00304"></a>00304         <span class="keyword">static</span> <span class="keywordtype">bool</span> StreamTo( std::istream * in, <span class="keywordtype">int</span> character, TIXML_STRING * tag );
<a name="l00305"></a>00305 <span class="preprocessor">#endif</span>
<a name="l00306"></a>00306 <span class="preprocessor"></span>
<a name="l00307"></a>00307 <span class="preprocessor">#endif</span>
<a name="l00308"></a>00308 <span class="preprocessor"></span>
<a name="l00314"></a>00314         <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlBase.html#ab6c78439ac122bf1f9f0475f8dc65eb3">ReadName</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TIXML_STRING* name, TiXmlEncoding encoding );
<a name="l00315"></a>00315 
<a name="l00320"></a>00320         <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlBase.html#ad0f4852fe129aa679f9e6e7a03aee88c">ReadText</a>(    <span class="keyword">const</span> <span class="keywordtype">char</span>* in,                         <span class="comment">// where to start</span>
<a name="l00321"></a>00321                                                                         TIXML_STRING* text,                     <span class="comment">// the string read</span>
<a name="l00322"></a>00322                                                                         <span class="keywordtype">bool</span> ignoreWhiteSpace,          <span class="comment">// whether to keep the white space</span>
<a name="l00323"></a>00323                                                                         <span class="keyword">const</span> <span class="keywordtype">char</span>* endTag,                     <span class="comment">// what ends this text</span>
<a name="l00324"></a>00324                                                                         <span class="keywordtype">bool</span> ignoreCase,                        <span class="comment">// whether to ignore case in the end tag</span>
<a name="l00325"></a>00325                                                                         TiXmlEncoding encoding );       <span class="comment">// the current encoding</span>
<a name="l00326"></a>00326 
<a name="l00328"></a>00328         <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlBase.html#a96887fa866b967049b20080b771de0dd">GetEntity</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* in, <span class="keywordtype">char</span>* value, <span class="keywordtype">int</span>* length, TiXmlEncoding encoding );
<a name="l00329"></a>00329 
<a name="l00334"></a><a class="code" href="classTiXmlBase.html#aa638ff772292abda05c03c0ae481bdcd">00334</a>         <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlBase.html#aa638ff772292abda05c03c0ae481bdcd">GetChar</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, <span class="keywordtype">char</span>* _value, <span class="keywordtype">int</span>* length, TiXmlEncoding encoding )
<a name="l00335"></a>00335         {
<a name="l00336"></a>00336                 assert( p );
<a name="l00337"></a>00337                 <span class="keywordflow">if</span> ( encoding == TIXML_ENCODING_UTF8 )
<a name="l00338"></a>00338                 {
<a name="l00339"></a>00339                         *length = utf8ByteTable[ *((<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)p) ];
<a name="l00340"></a>00340                         assert( *length &gt;= 0 &amp;&amp; *length &lt; 5 );
<a name="l00341"></a>00341                 }
<a name="l00342"></a>00342                 <span class="keywordflow">else</span>
<a name="l00343"></a>00343                 {
<a name="l00344"></a>00344                         *length = 1;
<a name="l00345"></a>00345                 }
<a name="l00346"></a>00346 
<a name="l00347"></a>00347                 <span class="keywordflow">if</span> ( *length == 1 )
<a name="l00348"></a>00348                 {
<a name="l00349"></a>00349                         <span class="keywordflow">if</span> ( *p == <span class="charliteral">&#39;&amp;&#39;</span> )
<a name="l00350"></a>00350                                 <span class="keywordflow">return</span> <a class="code" href="classTiXmlBase.html#a96887fa866b967049b20080b771de0dd">GetEntity</a>( p, _value, length, encoding );
<a name="l00351"></a>00351                         *_value = *p;
<a name="l00352"></a>00352                         <span class="keywordflow">return</span> p+1;
<a name="l00353"></a>00353                 }
<a name="l00354"></a>00354                 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( *length )
<a name="l00355"></a>00355                 {
<a name="l00356"></a>00356                         <span class="comment">//strncpy( _value, p, *length );        // lots of compilers don&#39;t like this function (unsafe),</span>
<a name="l00357"></a>00357                                                                                                 <span class="comment">// and the null terminator isn&#39;t needed</span>
<a name="l00358"></a>00358                         <span class="keywordflow">for</span>( <span class="keywordtype">int</span> i=0; p[i] &amp;&amp; i&lt;*length; ++i ) {
<a name="l00359"></a>00359                                 _value[i] = p[i];
<a name="l00360"></a>00360                         }
<a name="l00361"></a>00361                         <span class="keywordflow">return</span> p + (*length);
<a name="l00362"></a>00362                 }
<a name="l00363"></a>00363                 <span class="keywordflow">else</span>
<a name="l00364"></a>00364                 {
<a name="l00365"></a>00365                         <span class="comment">// Not valid text.</span>
<a name="l00366"></a>00366                         <span class="keywordflow">return</span> 0;
<a name="l00367"></a>00367                 }
<a name="l00368"></a>00368         }
<a name="l00369"></a>00369 
<a name="l00374"></a>00374         <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a79d009a172b3446fc53d2ec824e052e2">PutString</a>( <span class="keyword">const</span> TIXML_STRING&amp; str, TIXML_STRING* out );
<a name="l00375"></a>00375 
<a name="l00381"></a>00381         <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlBase.html#a69ce22b05a76723414b88817a54058f4">StringEqual</a>(        <span class="keyword">const</span> <span class="keywordtype">char</span>* p,
<a name="l00382"></a>00382                                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* endTag,
<a name="l00383"></a>00383                                                                 <span class="keywordtype">bool</span> ignoreCase,
<a name="l00384"></a>00384                                                                 TiXmlEncoding encoding );
<a name="l00385"></a>00385 
<a name="l00387"></a><a class="code" href="classTiXmlBase.html#acb68accfbcead3c93fcf29cdf8bdb4c4">00387</a>         <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlBase.html#acb68accfbcead3c93fcf29cdf8bdb4c4">errorString</a>[ TIXML_ERROR_STRING_COUNT ];
<a name="l00388"></a>00388 
<a name="l00390"></a><a class="code" href="classTiXmlBase.html#a4dc7805c3510e31912915af681ec22f4">00390</a>         TiXmlCursor <a class="code" href="classTiXmlBase.html#a4dc7805c3510e31912915af681ec22f4">location</a>;
<a name="l00391"></a>00391 
<a name="l00393"></a><a class="code" href="classTiXmlBase.html#a2e294dd14122c554baa0665072b4ca7a">00393</a>         <span class="keywordtype">void</span>*                   <a class="code" href="classTiXmlBase.html#a2e294dd14122c554baa0665072b4ca7a">userData</a>;
<a name="l00394"></a>00394         
<a name="l00399"></a>00399         <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="classTiXmlBase.html#a7e5a7fa026ecb0f2d52bc7e08460aeab">IsAlpha</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> anyByte, TiXmlEncoding encoding );
<a name="l00401"></a>00401         <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="classTiXmlBase.html#ab561fe2a6402715973d8d282f8cc6348">IsAlphaNum</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> anyByte, TiXmlEncoding encoding );
<a name="l00403"></a><a class="code" href="classTiXmlBase.html#ad98aa67c2bd17629da1681c714f91548">00403</a>         <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="classTiXmlBase.html#ad98aa67c2bd17629da1681c714f91548">ToLower</a>( <span class="keywordtype">int</span> v, TiXmlEncoding encoding )
<a name="l00404"></a>00404         {
<a name="l00405"></a>00405                 <span class="keywordflow">if</span> ( encoding == TIXML_ENCODING_UTF8 )
<a name="l00406"></a>00406                 {
<a name="l00407"></a>00407                         <span class="keywordflow">if</span> ( v &lt; 128 ) <span class="keywordflow">return</span> tolower( v );
<a name="l00408"></a>00408                         <span class="keywordflow">return</span> v;
<a name="l00409"></a>00409                 }
<a name="l00410"></a>00410                 <span class="keywordflow">else</span>
<a name="l00411"></a>00411                 {
<a name="l00412"></a>00412                         <span class="keywordflow">return</span> tolower( v );
<a name="l00413"></a>00413                 }
<a name="l00414"></a>00414         }
<a name="l00416"></a>00416         <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a72afad56eb82af0449a54b9545ad0e2f">ConvertUTF32ToUTF8</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> input, <span class="keywordtype">char</span>* output, <span class="keywordtype">int</span>* length );
<a name="l00417"></a>00417 
<a name="l00418"></a>00418 <span class="keyword">private</span>:
<a name="l00419"></a>00419         <a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>&amp; );                          <span class="comment">// not implemented.</span>
<a name="l00420"></a>00420         <span class="keywordtype">void</span> <a class="code" href="classTiXmlDocument.html#a9795f287dd952bba899652b019ff85ff">operator=</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>&amp; base );        <span class="comment">// not allowed.</span>
<a name="l00421"></a>00421 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l00422"></a>00422 <span class="preprocessor"></span>        <span class="keyword">struct </span>Entity
<a name="l00423"></a>00423         {
<a name="l00424"></a>00424                 <span class="keyword">const</span> <span class="keywordtype">char</span>*     str;
<a name="l00425"></a>00425                 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>    strLength;
<a name="l00426"></a>00426                 <span class="keywordtype">char</span>                chr;
<a name="l00427"></a>00427         };
<a name="l00428"></a>00428 <span class="preprocessor">#endif</span>
<a name="l00429"></a>00429 <span class="preprocessor"></span>        <span class="keyword">enum</span>
<a name="l00430"></a>00430         {
<a name="l00431"></a>00431                 NUM_ENTITY = 5,
<a name="l00432"></a>00432                 MAX_ENTITY_LENGTH = 6
<a name="l00433"></a>00433 
<a name="l00434"></a>00434         };
<a name="l00435"></a>00435         <span class="keyword">static</span> Entity entity[ NUM_ENTITY ];
<a name="l00436"></a>00436         <span class="keyword">static</span> <span class="keywordtype">bool</span> condenseWhiteSpace;
<a name="l00437"></a>00437 };
<a name="l00438"></a>00438 
<a name="l00439"></a>00439 
<a name="l00450"></a><a class="code" href="classTiXmlNode.html">00450</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>
<a name="l00451"></a>00451 {
<a name="l00452"></a>00452         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>;
<a name="l00453"></a>00453         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>;
<a name="l00454"></a>00454 
<a name="l00455"></a>00455 <span class="keyword">public</span>:
<a name="l00456"></a>00456 <span class="preprocessor">        #ifdef TIXML_USE_STL    </span>
<a name="l00457"></a>00457 <span class="preprocessor"></span>
<a name="l00462"></a>00462             <span class="keyword">friend</span> std::istream&amp; operator &gt;&gt; (std::istream&amp; in, <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; base);
<a name="l00463"></a>00463 
<a name="l00481"></a>00481             <span class="keyword">friend</span> std::ostream&amp; <a class="code" href="group__dbus.html#gaba4ab1236c759d6344fa81a2926cbf0f">operator&lt;&lt; </a>(std::ostream&amp; out, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; base);
<a name="l00482"></a>00482 
<a name="l00484"></a>00484                 <span class="keyword">friend</span> std::string&amp; <a class="code" href="group__dbus.html#gaba4ab1236c759d6344fa81a2926cbf0f">operator&lt;&lt; </a>(std::string&amp; out, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; base );
<a name="l00485"></a>00485 
<a name="l00486"></a>00486 <span class="preprocessor">        #endif</span>
<a name="l00487"></a>00487 <span class="preprocessor"></span>
<a name="l00492"></a><a class="code" href="classTiXmlNode.html#acac9cbaeea226ed297804c012dc12b16">00492</a>         <span class="keyword">enum</span> <a class="code" href="classTiXmlNode.html#acac9cbaeea226ed297804c012dc12b16">NodeType</a>
<a name="l00493"></a>00493         {
<a name="l00494"></a>00494                 DOCUMENT,
<a name="l00495"></a>00495                 ELEMENT,
<a name="l00496"></a>00496                 COMMENT,
<a name="l00497"></a>00497                 UNKNOWN,
<a name="l00498"></a>00498                 TEXT,
<a name="l00499"></a>00499                 DECLARATION,
<a name="l00500"></a>00500                 TYPECOUNT
<a name="l00501"></a>00501         };
<a name="l00502"></a>00502 
<a name="l00503"></a>00503         <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>();
<a name="l00504"></a>00504 
<a name="l00517"></a><a class="code" href="classTiXmlNode.html#a67ec54cde5ef8dac7901ad63544c6d44">00517</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classTiXmlNode.html#a67ec54cde5ef8dac7901ad63544c6d44">Value</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value.c_str (); }
<a name="l00518"></a>00518 
<a name="l00519"></a>00519 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00520"></a>00520 <span class="preprocessor"></span>
<a name="l00525"></a>00525         <span class="keyword">const</span> std::string&amp; ValueStr()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value; }
<a name="l00526"></a>00526 <span class="preprocessor">#endif</span>
<a name="l00527"></a>00527 <span class="preprocessor"></span>
<a name="l00538"></a><a class="code" href="classTiXmlNode.html#aea82a06505184ef86f477ad405fbbef9">00538</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#aea82a06505184ef86f477ad405fbbef9">SetValue</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * _value) { value = _value;}
<a name="l00539"></a>00539 
<a name="l00540"></a>00540 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00541"></a>00541 <span class="preprocessor"></span>
<a name="l00542"></a>00542         <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#aea82a06505184ef86f477ad405fbbef9">SetValue</a>( <span class="keyword">const</span> std::string&amp; _value )      { value = _value; }
<a name="l00543"></a>00543 <span class="preprocessor">#endif</span>
<a name="l00544"></a>00544 <span class="preprocessor"></span>
<a name="l00546"></a>00546         <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#aa71d36872f416feaa853788a7a7a7ef8">Clear</a>();
<a name="l00547"></a>00547 
<a name="l00549"></a><a class="code" href="classTiXmlNode.html#a4e3428786b78432ca5e026b468dc3133">00549</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a4e3428786b78432ca5e026b468dc3133">Parent</a>()                                                     { <span class="keywordflow">return</span> parent; }
<a name="l00551"></a><a class="code" href="classTiXmlNode.html#aaab5bb97c038398d8b12856e203341c5">00551</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#aaab5bb97c038398d8b12856e203341c5">Parent</a>()<span class="keyword"> const                         </span>{ <span class="keywordflow">return</span> parent; }
<a name="l00552"></a>00552 
<a name="l00554"></a><a class="code" href="classTiXmlNode.html#a7ac8d1fed702dafc908e01d1dd842751">00554</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7ac8d1fed702dafc908e01d1dd842751">FirstChild</a>()<span class="keyword">   const   </span>{ <span class="keywordflow">return</span> firstChild; }
<a name="l00556"></a><a class="code" href="classTiXmlNode.html#a6b9f16ec1f562c30fcd1c7ff533ef1ff">00556</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a6b9f16ec1f562c30fcd1c7ff533ef1ff">FirstChild</a>()                                 { <span class="keywordflow">return</span> firstChild; }
<a name="l00557"></a>00557 
<a name="l00559"></a>00559         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7ac8d1fed702dafc908e01d1dd842751">FirstChild</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * value ) <span class="keyword">const</span>;                        
<a name="l00561"></a><a class="code" href="classTiXmlNode.html#a151042fa661ce7c57f68c48dcce7e6b1">00561</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a151042fa661ce7c57f68c48dcce7e6b1">FirstChild</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * _value ) {
<a name="l00562"></a>00562                 <span class="comment">// Call through to the const version - safe since nothing is changed. </span>
<a name="l00563"></a>00563                 <span class="comment">// Exiting syntax: cast this to a const (always safe)</span>
<a name="l00564"></a>00564                 <span class="comment">// call the method, cast the return back to non-const.</span>
<a name="l00565"></a>00565                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span> ((<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;FirstChild( _value ));
<a name="l00566"></a>00566         }
<a name="l00567"></a>00567 
<a name="l00569"></a><a class="code" href="classTiXmlNode.html#a7e62a752a8ebad8ed8d18205833b1ce3">00569</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7e62a752a8ebad8ed8d18205833b1ce3">LastChild</a>()<span class="keyword"> const      </span>{ <span class="keywordflow">return</span> lastChild; }
<a name="l00570"></a>00570 
<a name="l00572"></a><a class="code" href="classTiXmlNode.html#a59977be0e97e6625029e42725158aa23">00572</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a59977be0e97e6625029e42725158aa23">LastChild</a>()  { <span class="keywordflow">return</span> lastChild; }
<a name="l00573"></a>00573 
<a name="l00575"></a>00575         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7e62a752a8ebad8ed8d18205833b1ce3">LastChild</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * value ) <span class="keyword">const</span>;
<a name="l00576"></a>00576 
<a name="l00578"></a><a class="code" href="classTiXmlNode.html#a947739e780823a471751b5da68dc77f6">00578</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a947739e780823a471751b5da68dc77f6">LastChild</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * _value ) {
<a name="l00579"></a>00579                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span> ((<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;LastChild( _value ));
<a name="l00580"></a>00580         }
<a name="l00581"></a>00581 
<a name="l00582"></a>00582 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00583"></a>00583 <span class="preprocessor"></span>
<a name="l00584"></a>00584         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7ac8d1fed702dafc908e01d1dd842751">FirstChild</a>( <span class="keyword">const</span> std::string&amp; _value )<span class="keyword"> const  </span>{       <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a7ac8d1fed702dafc908e01d1dd842751">FirstChild</a> (_value.c_str ());    }       
<a name="l00586"></a>00586         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7ac8d1fed702dafc908e01d1dd842751">FirstChild</a>( <span class="keyword">const</span> std::string&amp; _value )                              {       <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a7ac8d1fed702dafc908e01d1dd842751">FirstChild</a> (_value.c_str ());    }
<a name="l00588"></a>00588         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7e62a752a8ebad8ed8d18205833b1ce3">LastChild</a>( <span class="keyword">const</span> std::string&amp; _value )<span class="keyword"> const   </span>{       <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a7e62a752a8ebad8ed8d18205833b1ce3">LastChild</a> (_value.c_str ());     }
<a name="l00590"></a>00590         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a7e62a752a8ebad8ed8d18205833b1ce3">LastChild</a>( <span class="keyword">const</span> std::string&amp; _value )                               {       <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a7e62a752a8ebad8ed8d18205833b1ce3">LastChild</a> (_value.c_str ());     }
<a name="l00591"></a>00591 <span class="preprocessor">#endif</span>
<a name="l00592"></a>00592 <span class="preprocessor"></span>
<a name="l00610"></a>00610         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a2211f784d6c09118d4f8c8980d958228">IterateChildren</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* previous ) <span class="keyword">const</span>;
<a name="l00611"></a>00611 
<a name="l00613"></a><a class="code" href="classTiXmlNode.html#a74ce1e856260b5d0bd4bbc5081bfbe24">00613</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a74ce1e856260b5d0bd4bbc5081bfbe24">IterateChildren</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* previous ) {
<a name="l00614"></a>00614                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;IterateChildren( previous ) );
<a name="l00615"></a>00615         }
<a name="l00616"></a>00616 
<a name="l00618"></a>00618         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a2211f784d6c09118d4f8c8980d958228">IterateChildren</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * value, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* previous ) <span class="keyword">const</span>;
<a name="l00620"></a><a class="code" href="classTiXmlNode.html#af7ec88d14ce955d38e3cfc60f90ed043">00620</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#af7ec88d14ce955d38e3cfc60f90ed043">IterateChildren</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * _value, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* previous ) {
<a name="l00621"></a>00621                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;IterateChildren( _value, previous ) );
<a name="l00622"></a>00622         }
<a name="l00623"></a>00623 
<a name="l00624"></a>00624 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00625"></a>00625 <span class="preprocessor"></span>
<a name="l00626"></a>00626         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a2211f784d6c09118d4f8c8980d958228">IterateChildren</a>( <span class="keyword">const</span> std::string&amp; _value, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* previous )<span class="keyword"> const  </span>{       
<a name="l00627"></a>00627                 <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a2211f784d6c09118d4f8c8980d958228">IterateChildren</a> (_value.c_str (), previous);     
<a name="l00628"></a>00628         }
<a name="l00629"></a>00629 
<a name="l00631"></a>00631         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a2211f784d6c09118d4f8c8980d958228">IterateChildren</a>( <span class="keyword">const</span> std::string&amp; _value, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* previous ) {
<a name="l00632"></a>00632                 <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a2211f784d6c09118d4f8c8980d958228">IterateChildren</a> (_value.c_str (), previous);     
<a name="l00633"></a>00633         }
<a name="l00634"></a>00634 <span class="preprocessor">#endif</span>
<a name="l00635"></a>00635 <span class="preprocessor"></span>
<a name="l00640"></a>00640         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a25d5052a6aac36422b5547d5c60a2e14">InsertEndChild</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; addThis );
<a name="l00641"></a>00641 
<a name="l00652"></a>00652         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a5ac7df1a3eee9aac58889b50fe8949bd">LinkEndChild</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* addThis );
<a name="l00653"></a>00653 
<a name="l00658"></a>00658         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a0faa25e936112d65e2814a1442d4cdb2">InsertBeforeChild</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* beforeThis, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; addThis );
<a name="l00659"></a>00659 
<a name="l00664"></a>00664         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#aecf719bc1ac383076c09c7d7ca784a0c">InsertAfterChild</a>(  <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* afterThis, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; addThis );
<a name="l00665"></a>00665 
<a name="l00670"></a>00670         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a8f48eb718085e19cd97c96a86e49f402">ReplaceChild</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* replaceThis, <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; withThis );
<a name="l00671"></a>00671 
<a name="l00675"></a>00675         <span class="keywordtype">bool</span> <a class="code" href="classTiXmlNode.html#ab38d7e3ea88170aaaf445496eda97401">RemoveChild</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* removeThis );
<a name="l00676"></a>00676 
<a name="l00680"></a><a class="code" href="classTiXmlNode.html#a03242d71797b79eba11e9c94fe0bd142">00680</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a03242d71797b79eba11e9c94fe0bd142">PreviousSibling</a>()<span class="keyword"> const                        </span>{ <span class="keywordflow">return</span> prev; }
<a name="l00681"></a>00681 
<a name="l00685"></a><a class="code" href="classTiXmlNode.html#a3ea283e5e423c0d2dbef9ecb4411c986">00685</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a3ea283e5e423c0d2dbef9ecb4411c986">PreviousSibling</a>()                                            { <span class="keywordflow">return</span> prev; }
<a name="l00686"></a>00686 
<a name="l00688"></a>00688         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a03242d71797b79eba11e9c94fe0bd142">PreviousSibling</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * ) <span class="keyword">const</span>;
<a name="l00690"></a><a class="code" href="classTiXmlNode.html#acbb1cbb9a413d5a614c63ef1e488fe87">00690</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#acbb1cbb9a413d5a614c63ef1e488fe87">PreviousSibling</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> *_prev ) {
<a name="l00691"></a>00691                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;PreviousSibling( _prev ) );
<a name="l00692"></a>00692         }
<a name="l00693"></a>00693 
<a name="l00694"></a>00694 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00695"></a>00695 <span class="preprocessor"></span>
<a name="l00696"></a>00696         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a03242d71797b79eba11e9c94fe0bd142">PreviousSibling</a>( <span class="keyword">const</span> std::string&amp; _value )<span class="keyword"> const     </span>{ <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a03242d71797b79eba11e9c94fe0bd142">PreviousSibling</a> (_value.c_str ()); }
<a name="l00698"></a>00698         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a03242d71797b79eba11e9c94fe0bd142">PreviousSibling</a>( <span class="keyword">const</span> std::string&amp; _value )                         { <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a03242d71797b79eba11e9c94fe0bd142">PreviousSibling</a> (_value.c_str ()); }
<a name="l00700"></a>00700         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a4880cf2f976049d73487cae726edc644">NextSibling</a>( <span class="keyword">const</span> std::string&amp; _value)<span class="keyword"> const          </span>{ <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a4880cf2f976049d73487cae726edc644">NextSibling</a> (_value.c_str ()); }
<a name="l00702"></a>00702         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a4880cf2f976049d73487cae726edc644">NextSibling</a>( <span class="keyword">const</span> std::string&amp; _value)                                      { <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a4880cf2f976049d73487cae726edc644">NextSibling</a> (_value.c_str ()); }
<a name="l00703"></a>00703 <span class="preprocessor">#endif</span>
<a name="l00704"></a>00704 <span class="preprocessor"></span>
<a name="l00706"></a><a class="code" href="classTiXmlNode.html#a4880cf2f976049d73487cae726edc644">00706</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a4880cf2f976049d73487cae726edc644">NextSibling</a>()<span class="keyword"> const                            </span>{ <span class="keywordflow">return</span> next; }
<a name="l00708"></a><a class="code" href="classTiXmlNode.html#aca76234b0be32864c7a623e17200fccb">00708</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#aca76234b0be32864c7a623e17200fccb">NextSibling</a>()                                                        { <span class="keywordflow">return</span> next; }
<a name="l00709"></a>00709 
<a name="l00711"></a>00711         <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a4880cf2f976049d73487cae726edc644">NextSibling</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * ) <span class="keyword">const</span>;
<a name="l00713"></a><a class="code" href="classTiXmlNode.html#a266645746d4d334fb1d6efe2171f58ac">00713</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a266645746d4d334fb1d6efe2171f58ac">NextSibling</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* _next ) {
<a name="l00714"></a>00714                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;NextSibling( _next ) );
<a name="l00715"></a>00715         }
<a name="l00716"></a>00716 
<a name="l00723"></a>00723         <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a954da5954374fb80ab9f9a39a8dd5330">NextSiblingElement</a>() <span class="keyword">const</span>;
<a name="l00724"></a>00724 
<a name="l00726"></a><a class="code" href="classTiXmlNode.html#a7cbdceb24373d16cf838a295e63245dd">00726</a>         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a7cbdceb24373d16cf838a295e63245dd">NextSiblingElement</a>() {
<a name="l00727"></a>00727                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;NextSiblingElement() );
<a name="l00728"></a>00728         }
<a name="l00729"></a>00729 
<a name="l00736"></a>00736         <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a954da5954374fb80ab9f9a39a8dd5330">NextSiblingElement</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * ) <span class="keyword">const</span>;
<a name="l00737"></a>00737 
<a name="l00739"></a><a class="code" href="classTiXmlNode.html#a4b98f17e7c81592e2c35d18d7a6d5e93">00739</a>         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a4b98f17e7c81592e2c35d18d7a6d5e93">NextSiblingElement</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> *_next ) {
<a name="l00740"></a>00740                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;NextSiblingElement( _next ) );
<a name="l00741"></a>00741         }
<a name="l00742"></a>00742 
<a name="l00743"></a>00743 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00744"></a>00744 <span class="preprocessor"></span>
<a name="l00745"></a>00745         <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a954da5954374fb80ab9f9a39a8dd5330">NextSiblingElement</a>( <span class="keyword">const</span> std::string&amp; _value)<span class="keyword"> const </span>{
<a name="l00746"></a>00746                 <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a954da5954374fb80ab9f9a39a8dd5330">NextSiblingElement</a> (_value.c_str ());
<a name="l00747"></a>00747         }
<a name="l00749"></a>00749         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a954da5954374fb80ab9f9a39a8dd5330">NextSiblingElement</a>( <span class="keyword">const</span> std::string&amp; _value) {
<a name="l00750"></a>00750                 <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a954da5954374fb80ab9f9a39a8dd5330">NextSiblingElement</a> (_value.c_str ());
<a name="l00751"></a>00751         }
<a name="l00752"></a>00752 <span class="preprocessor">#endif</span>
<a name="l00753"></a>00753 <span class="preprocessor"></span>
<a name="l00755"></a>00755         <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a>() <span class="keyword">const</span>;
<a name="l00757"></a><a class="code" href="classTiXmlNode.html#a0f7468b234815ad2ed918111678a83b2">00757</a>         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a0f7468b234815ad2ed918111678a83b2">FirstChildElement</a>() {
<a name="l00758"></a>00758                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;FirstChildElement() );
<a name="l00759"></a>00759         }
<a name="l00761"></a>00761         <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * _value ) <span class="keyword">const</span>;
<a name="l00763"></a><a class="code" href="classTiXmlNode.html#a6c14d9d4e3a9070215c9d3517232460e">00763</a>         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a6c14d9d4e3a9070215c9d3517232460e">FirstChildElement</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * _value ) {
<a name="l00764"></a>00764                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;FirstChildElement( _value ) );
<a name="l00765"></a>00765         }
<a name="l00766"></a>00766 
<a name="l00767"></a>00767 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00768"></a>00768 <span class="preprocessor"></span>
<a name="l00769"></a>00769         <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a>( <span class="keyword">const</span> std::string&amp; _value )<span class="keyword"> const </span>{
<a name="l00770"></a>00770                 <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a> (_value.c_str ());     
<a name="l00771"></a>00771         }
<a name="l00772"></a>00772 
<a name="l00774"></a>00774         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a>( <span class="keyword">const</span> std::string&amp; _value ) {
<a name="l00775"></a>00775                 <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a> (_value.c_str ());     
<a name="l00776"></a>00776         }
<a name="l00777"></a>00777 <span class="preprocessor">#endif</span>
<a name="l00778"></a>00778 <span class="preprocessor"></span>
<a name="l00784"></a><a class="code" href="classTiXmlNode.html#a14a55b75c648de4d36edd615c84eabfc">00784</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlNode.html#a14a55b75c648de4d36edd615c84eabfc">Type</a>()<span class="keyword"> const        </span>{ <span class="keywordflow">return</span> type; }
<a name="l00785"></a>00785 
<a name="l00790"></a>00790         <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>* <a class="code" href="classTiXmlNode.html#ae8cc38439d78f46d59c8cfe3e3fad9b4">GetDocument</a>() <span class="keyword">const</span>;
<a name="l00791"></a>00791 
<a name="l00793"></a><a class="code" href="classTiXmlNode.html#a08b1c0e515fb34241d33af953399a21c">00793</a>         <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>* <a class="code" href="classTiXmlNode.html#a08b1c0e515fb34241d33af953399a21c">GetDocument</a>() {
<a name="l00794"></a>00794                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;GetDocument() );
<a name="l00795"></a>00795         }
<a name="l00796"></a>00796 
<a name="l00798"></a><a class="code" href="classTiXmlNode.html#a0b5f0d92629f576c8e5f5f48b2edee19">00798</a>         <span class="keywordtype">bool</span> <a class="code" href="classTiXmlNode.html#a0b5f0d92629f576c8e5f5f48b2edee19">NoChildren</a>()<span class="keyword"> const                                         </span>{ <span class="keywordflow">return</span> !firstChild; }
<a name="l00800"></a><a class="code" href="classTiXmlNode.html#a0ac5163cd2f090c512d09453d445988a">00800</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>*    <a class="code" href="classTiXmlNode.html#a0ac5163cd2f090c512d09453d445988a">ToDocument</a>()<span class="keyword">    const </span>{ <span class="keywordflow">return</span> 0; }
<a name="l00802"></a><a class="code" href="classTiXmlNode.html#a7a2cc466ad0e9996d71ee5da2db2511f">00802</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>*     <a class="code" href="classTiXmlNode.html#a7a2cc466ad0e9996d71ee5da2db2511f">ToElement</a>()<span class="keyword">     const </span>{ <span class="keywordflow">return</span> 0; }
<a name="l00804"></a><a class="code" href="classTiXmlNode.html#a1535d8f760996ff1a651cae2fcb62be3">00804</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>*     <a class="code" href="classTiXmlNode.html#a1535d8f760996ff1a651cae2fcb62be3">ToComment</a>()<span class="keyword">     const </span>{ <span class="keywordflow">return</span> 0; }
<a name="l00806"></a><a class="code" href="classTiXmlNode.html#a461ef07268953b2b3fad50f64aa20321">00806</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>*     <a class="code" href="classTiXmlNode.html#a461ef07268953b2b3fad50f64aa20321">ToUnknown</a>()<span class="keyword">     const </span>{ <span class="keywordflow">return</span> 0; }
<a name="l00808"></a><a class="code" href="classTiXmlNode.html#adfcbab915eb7dac33a6b914b507fd79b">00808</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>*        <a class="code" href="classTiXmlNode.html#adfcbab915eb7dac33a6b914b507fd79b">ToText</a>()<span class="keyword">        const </span>{ <span class="keywordflow">return</span> 0; }
<a name="l00810"></a><a class="code" href="classTiXmlNode.html#aee135ea9d6486ec118898e3ac8a293cf">00810</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>* <a class="code" href="classTiXmlNode.html#aee135ea9d6486ec118898e3ac8a293cf">ToDeclaration</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0; }
<a name="l00811"></a>00811 
<a name="l00813"></a><a class="code" href="classTiXmlNode.html#a46a5535cabc469a65f47acc317fea778">00813</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>*          <a class="code" href="classTiXmlNode.html#a46a5535cabc469a65f47acc317fea778">ToDocument</a>()    { <span class="keywordflow">return</span> 0; }
<a name="l00815"></a><a class="code" href="classTiXmlNode.html#a6225c641ac28d55726b392a3a33774e8">00815</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>*           <a class="code" href="classTiXmlNode.html#a6225c641ac28d55726b392a3a33774e8">ToElement</a>()         { <span class="keywordflow">return</span> 0; }
<a name="l00817"></a><a class="code" href="classTiXmlNode.html#a8dfc05132e237c72560d51ee2c725a5c">00817</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>*           <a class="code" href="classTiXmlNode.html#a8dfc05132e237c72560d51ee2c725a5c">ToComment</a>()     { <span class="keywordflow">return</span> 0; }
<a name="l00819"></a><a class="code" href="classTiXmlNode.html#a27d3f8d54b19f00da670016ae6c5774a">00819</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>*           <a class="code" href="classTiXmlNode.html#a27d3f8d54b19f00da670016ae6c5774a">ToUnknown</a>()         { <span class="keywordflow">return</span> 0; }
<a name="l00821"></a><a class="code" href="classTiXmlNode.html#a0229d3dce587577a7a295d07524ccf6b">00821</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>*                  <a class="code" href="classTiXmlNode.html#a0229d3dce587577a7a295d07524ccf6b">ToText</a>()        { <span class="keywordflow">return</span> 0; }
<a name="l00823"></a><a class="code" href="classTiXmlNode.html#ab07aa982d62f5beba098e5a285c75e67">00823</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>*       <a class="code" href="classTiXmlNode.html#ab07aa982d62f5beba098e5a285c75e67">ToDeclaration</a>() { <span class="keywordflow">return</span> 0; }
<a name="l00824"></a>00824 
<a name="l00829"></a>00829         <span class="keyword">virtual</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlElement.html#a842a98f3a31af4a808cee9d8842e5072">Clone</a>() <span class="keyword">const</span> = 0;
<a name="l00830"></a>00830 
<a name="l00854"></a>00854         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlElement.html#ae145535b4ff6c0118a3ff443eda1f672">Accept</a>( <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>* visitor ) <span class="keyword">const</span> = 0;
<a name="l00855"></a>00855 
<a name="l00856"></a>00856 <span class="keyword">protected</span>:
<a name="l00858"></a>00858         <a class="code" href="classTiXmlNode.html#af0458eef6cac307caab4d78e80e1d0cc">TiXmlNode</a>( <a class="code" href="classTiXmlNode.html#acac9cbaeea226ed297804c012dc12b16">NodeType</a> _type );
<a name="l00859"></a>00859 
<a name="l00864"></a>00864         <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* target ) <span class="keyword">const</span>;
<a name="l00865"></a>00865 
<a name="l00866"></a>00866 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00867"></a>00867 <span class="preprocessor"></span>
<a name="l00868"></a>00868         <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamIn( std::istream* in, TIXML_STRING* tag ) = 0;
<a name="l00869"></a>00869 <span class="preprocessor">#endif</span>
<a name="l00870"></a>00870 <span class="preprocessor"></span>
<a name="l00872"></a>00872         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#acc7f69a9fecaa74ecb48f65db3bed883">Identify</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* start, TiXmlEncoding encoding );
<a name="l00873"></a>00873 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l00874"></a>00874 <span class="preprocessor"></span>        <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>*              parent;
<a name="l00875"></a>00875         <a class="code" href="classTiXmlNode.html#acac9cbaeea226ed297804c012dc12b16">NodeType</a>                type;
<a name="l00876"></a>00876 
<a name="l00877"></a>00877         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>*              firstChild;
<a name="l00878"></a>00878         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>*              lastChild;
<a name="l00879"></a>00879 
<a name="l00880"></a>00880         TIXML_STRING    value;
<a name="l00881"></a>00881 
<a name="l00882"></a>00882         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>*              prev;
<a name="l00883"></a>00883         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>*              next;
<a name="l00884"></a>00884 <span class="preprocessor">#endif</span>
<a name="l00885"></a>00885 <span class="preprocessor"></span>
<a name="l00886"></a>00886 <span class="keyword">private</span>:
<a name="l00887"></a>00887         <a class="code" href="classTiXmlNode.html#af0458eef6cac307caab4d78e80e1d0cc">TiXmlNode</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; );                          <span class="comment">// not implemented.</span>
<a name="l00888"></a>00888         <span class="keywordtype">void</span> <a class="code" href="classTiXmlElement.html#a81bb2b47b59d81fba2f436c5ec25e0ed">operator=</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>&amp; base );        <span class="comment">// not allowed.</span>
<a name="l00889"></a>00889 };
<a name="l00890"></a>00890 
<a name="l00891"></a>00891 
<a name="l00903"></a><a class="code" href="classTiXmlAttribute.html">00903</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>
<a name="l00904"></a>00904 {
<a name="l00905"></a>00905         <span class="keyword">friend</span> <span class="keyword">class </span>TiXmlAttributeSet;
<a name="l00906"></a>00906 
<a name="l00907"></a>00907 <span class="keyword">public</span>:
<a name="l00909"></a><a class="code" href="classTiXmlAttribute.html#ab154afd3a4642739b3411c80af3a0394">00909</a>         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>() : <a class="code" href="classTiXmlBase.html" title="Xml base class.">TiXmlBase</a>()
<a name="l00910"></a>00910         {
<a name="l00911"></a>00911                 document = 0;
<a name="l00912"></a>00912                 prev = next = 0;
<a name="l00913"></a>00913         }
<a name="l00914"></a>00914 
<a name="l00915"></a>00915 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00916"></a>00916 <span class="preprocessor"></span>
<a name="l00917"></a>00917         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>( <span class="keyword">const</span> std::string&amp; _name, <span class="keyword">const</span> std::string&amp; _value )
<a name="l00918"></a>00918         {
<a name="l00919"></a>00919                 name = _name;
<a name="l00920"></a>00920                 value = _value;
<a name="l00921"></a>00921                 document = 0;
<a name="l00922"></a>00922                 prev = next = 0;
<a name="l00923"></a>00923         }
<a name="l00924"></a>00924 <span class="preprocessor">#endif</span>
<a name="l00925"></a>00925 <span class="preprocessor"></span>
<a name="l00927"></a><a class="code" href="classTiXmlAttribute.html#ad8cd69ced5416999a1e6c6487cb4309e">00927</a>         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * _name, <span class="keyword">const</span> <span class="keywordtype">char</span> * _value )
<a name="l00928"></a>00928         {
<a name="l00929"></a>00929                 name = _name;
<a name="l00930"></a>00930                 value = _value;
<a name="l00931"></a>00931                 document = 0;
<a name="l00932"></a>00932                 prev = next = 0;
<a name="l00933"></a>00933         }
<a name="l00934"></a>00934 
<a name="l00936"></a><a class="code" href="classTiXmlAttribute.html#a6f8ea4f3037e8339cbd3e55d97ed08a9">00936</a>         <span class="keyword">const</span> <span class="keywordtype">char</span>*             <a class="code" href="classTiXmlAttribute.html#a6f8ea4f3037e8339cbd3e55d97ed08a9">Name</a>()<span class="keyword">  const           </span>{ <span class="keywordflow">return</span> name.c_str(); }
<a name="l00938"></a><a class="code" href="classTiXmlAttribute.html#a67ec54cde5ef8dac7901ad63544c6d44">00938</a>         <span class="keyword">const</span> <span class="keywordtype">char</span>*             <a class="code" href="classTiXmlAttribute.html#a67ec54cde5ef8dac7901ad63544c6d44">Value</a>()<span class="keyword"> const           </span>{ <span class="keywordflow">return</span> value.c_str(); }
<a name="l00939"></a>00939 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00940"></a>00940 <span class="preprocessor"></span>
<a name="l00941"></a>00941         <span class="keyword">const</span> std::string&amp; ValueStr()<span class="keyword"> const     </span>{ <span class="keywordflow">return</span> value; }
<a name="l00942"></a>00942 <span class="preprocessor">#endif  </span>
<a name="l00943"></a>00943 <span class="preprocessor"></span>
<a name="l00944"></a>00944         <span class="keywordtype">int</span>                             IntValue() <span class="keyword">const</span>;                                                               
<a name="l00946"></a>00946         <span class="keywordtype">double</span>                  DoubleValue() <span class="keyword">const</span>;
<a name="l00947"></a>00947 
<a name="l00949"></a><a class="code" href="classTiXmlAttribute.html#aece6d747da336c611c9334f79d5fc319">00949</a>         <span class="keyword">const</span> TIXML_STRING&amp; <a class="code" href="classTiXmlAttribute.html#aece6d747da336c611c9334f79d5fc319">NameTStr</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> name; }
<a name="l00950"></a>00950 
<a name="l00961"></a>00961         <span class="keywordtype">int</span> QueryIntValue( <span class="keywordtype">int</span>* _value ) <span class="keyword">const</span>;
<a name="l00963"></a>00963         <span class="keywordtype">int</span> QueryDoubleValue( <span class="keywordtype">double</span>* _value ) <span class="keyword">const</span>;
<a name="l00964"></a>00964 
<a name="l00966"></a><a class="code" href="classTiXmlAttribute.html#a8f004727063df873bb46ced79e54f888">00966</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlAttribute.html#a8f004727063df873bb46ced79e54f888">SetName</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* _name )       { name = _name; }
<a name="l00968"></a><a class="code" href="classTiXmlAttribute.html#aea82a06505184ef86f477ad405fbbef9">00968</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlAttribute.html#aea82a06505184ef86f477ad405fbbef9">SetValue</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* _value )     { value = _value; }
<a name="l00969"></a>00969 
<a name="l00971"></a>00971         <span class="keywordtype">void</span> SetIntValue( <span class="keywordtype">int</span> _value );
<a name="l00973"></a>00973         <span class="keywordtype">void</span> SetDoubleValue( <span class="keywordtype">double</span> _value );
<a name="l00974"></a>00974 
<a name="l00975"></a>00975 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l00976"></a>00976 <span class="preprocessor"></span>
<a name="l00977"></a>00977         <span class="keywordtype">void</span> SetName( <span class="keyword">const</span> std::string&amp; _name )        { name = _name; }       
<a name="l00979"></a>00979         <span class="keywordtype">void</span> SetValue( <span class="keyword">const</span> std::string&amp; _value )      { value = _value; }
<a name="l00980"></a>00980 <span class="preprocessor">#endif</span>
<a name="l00981"></a>00981 <span class="preprocessor"></span>
<a name="l00983"></a>00983         <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* Next() <span class="keyword">const</span>;
<a name="l00985"></a><a class="code" href="classTiXmlAttribute.html#ad5f855e76d7b771ad92e3d37e1f2f9fe">00985</a>         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <a class="code" href="classTiXmlAttribute.html#ad5f855e76d7b771ad92e3d37e1f2f9fe">Next</a>() {
<a name="l00986"></a>00986                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;Next() ); 
<a name="l00987"></a>00987         }
<a name="l00988"></a>00988 
<a name="l00990"></a>00990         <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* Previous() <span class="keyword">const</span>;
<a name="l00992"></a><a class="code" href="classTiXmlAttribute.html#a86812214d424db622419f2fc4776c9c5">00992</a>         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <a class="code" href="classTiXmlAttribute.html#a86812214d424db622419f2fc4776c9c5">Previous</a>() {
<a name="l00993"></a>00993                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span><a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;Previous() ); 
<a name="l00994"></a>00994         }
<a name="l00995"></a>00995 
<a name="l00997"></a><a class="code" href="classTiXmlAttribute.html#a7f5dfcd0e37d2bc15d5801f28dc10ca9">00997</a>         <span class="keywordtype">bool</span> <a class="code" href="classTiXmlAttribute.html#a7f5dfcd0e37d2bc15d5801f28dc10ca9">operator==</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>&amp; rhs )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rhs.name == name; }
<a name="l00999"></a><a class="code" href="classTiXmlAttribute.html#a1d600fbec27faed995726a3b22a4dacc">00999</a>         <span class="keywordtype">bool</span> <a class="code" href="classTiXmlAttribute.html#a1d600fbec27faed995726a3b22a4dacc">operator&lt;</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>&amp; rhs )<span class="keyword">      const </span>{ <span class="keywordflow">return</span> name &lt; rhs.name; }
<a name="l01001"></a><a class="code" href="classTiXmlAttribute.html#a5627960bf6f5f7da2e6a3d068e3b726e">01001</a>         <span class="keywordtype">bool</span> <a class="code" href="classTiXmlAttribute.html#a5627960bf6f5f7da2e6a3d068e3b726e">operator&gt;</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>&amp; rhs )<span class="keyword">  const </span>{ <span class="keywordflow">return</span> name &gt; rhs.name; }
<a name="l01002"></a>01002 
<a name="l01007"></a>01007         <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* Parse( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TiXmlParsingData* data, TiXmlEncoding encoding );
<a name="l01008"></a>01008 
<a name="l01010"></a><a class="code" href="classTiXmlAttribute.html#aa0c7ee41a4ae95253c321399cd995b9f">01010</a>         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlAttribute.html#aa0c7ee41a4ae95253c321399cd995b9f">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth )<span class="keyword"> const </span>{
<a name="l01011"></a>01011                 <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( cfile, depth, 0 );
<a name="l01012"></a>01012         }
<a name="l01014"></a>01014         <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth, TIXML_STRING* str ) <span class="keyword">const</span>;
<a name="l01015"></a>01015 
<a name="l01016"></a>01016 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01017"></a>01017 <span class="preprocessor"></span>        <span class="comment">// [internal use]</span>
<a name="l01018"></a>01018         <span class="comment">// Set the document pointer so the attribute can report errors.</span>
<a name="l01019"></a>01019         <span class="keywordtype">void</span> SetDocument( <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>* doc )  { document = doc; }
<a name="l01020"></a>01020 <span class="preprocessor">#endif</span>
<a name="l01021"></a>01021 <span class="preprocessor"></span>
<a name="l01022"></a>01022 <span class="keyword">private</span>:
<a name="l01023"></a>01023         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>&amp; );                                <span class="comment">// not implemented.</span>
<a name="l01024"></a>01024         <span class="keywordtype">void</span> operator=( <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>&amp; base );   <span class="comment">// not allowed.</span>
<a name="l01025"></a>01025 
<a name="l01026"></a>01026         <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>*  document;       <span class="comment">// A pointer back to a document, for error reporting.</span>
<a name="l01027"></a>01027         TIXML_STRING name;
<a name="l01028"></a>01028         TIXML_STRING value;
<a name="l01029"></a>01029         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* prev;
<a name="l01030"></a>01030         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* next;
<a name="l01031"></a>01031 };
<a name="l01032"></a>01032 
<a name="l01033"></a>01033 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01034"></a>01034 <span class="preprocessor"></span>
<a name="l01047"></a>01047 <span class="keyword">class </span>TiXmlAttributeSet
<a name="l01048"></a>01048 {
<a name="l01049"></a>01049 <span class="keyword">public</span>:
<a name="l01050"></a>01050         TiXmlAttributeSet();
<a name="l01051"></a>01051         ~TiXmlAttributeSet();
<a name="l01052"></a>01052 
<a name="l01053"></a>01053         <span class="keywordtype">void</span> Add( <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* attribute );
<a name="l01054"></a>01054         <span class="keywordtype">void</span> Remove( <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* attribute );
<a name="l01055"></a>01055 
<a name="l01056"></a>01056         <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* First()<span class="keyword">   const   </span>{ <span class="keywordflow">return</span> ( sentinel.next == &amp;sentinel ) ? 0 : sentinel.next; }
<a name="l01057"></a>01057         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* First()                                 { <span class="keywordflow">return</span> ( sentinel.next == &amp;sentinel ) ? 0 : sentinel.next; }
<a name="l01058"></a>01058         <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* Last()<span class="keyword"> const              </span>{ <span class="keywordflow">return</span> ( sentinel.prev == &amp;sentinel ) ? 0 : sentinel.prev; }
<a name="l01059"></a>01059         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* Last()                                  { <span class="keywordflow">return</span> ( sentinel.prev == &amp;sentinel ) ? 0 : sentinel.prev; }
<a name="l01060"></a>01060 
<a name="l01061"></a>01061         <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>*   Find( <span class="keyword">const</span> <span class="keywordtype">char</span>* _name ) <span class="keyword">const</span>;
<a name="l01062"></a>01062         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* Find( <span class="keyword">const</span> <span class="keywordtype">char</span>* _name ) {
<a name="l01063"></a>01063                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span>TiXmlAttributeSet* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;Find( _name ) );
<a name="l01064"></a>01064         }
<a name="l01065"></a>01065 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01066"></a>01066 <span class="preprocessor"></span>        <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>*   Find( <span class="keyword">const</span> std::string&amp; _name ) <span class="keyword">const</span>;
<a name="l01067"></a>01067         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* Find( <span class="keyword">const</span> std::string&amp; _name ) {
<a name="l01068"></a>01068                 <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <span class="keyword">&gt;</span>( (<span class="keyword">const_cast&lt;</span> <span class="keyword">const </span>TiXmlAttributeSet* <span class="keyword">&gt;</span>(<span class="keyword">this</span>))-&gt;Find( _name ) );
<a name="l01069"></a>01069         }
<a name="l01070"></a>01070 <span class="preprocessor">#endif</span>
<a name="l01071"></a>01071 <span class="preprocessor"></span>
<a name="l01072"></a>01072 <span class="keyword">private</span>:
<a name="l01073"></a>01073         <span class="comment">//*ME:  Because of hidden/disabled copy-construktor in TiXmlAttribute (sentinel-element),</span>
<a name="l01074"></a>01074         <span class="comment">//*ME:  this class must be also use a hidden/disabled copy-constructor !!!</span>
<a name="l01075"></a>01075         TiXmlAttributeSet( <span class="keyword">const</span> TiXmlAttributeSet&amp; );  <span class="comment">// not allowed</span>
<a name="l01076"></a>01076         <span class="keywordtype">void</span> operator=( <span class="keyword">const</span> TiXmlAttributeSet&amp; );     <span class="comment">// not allowed (as TiXmlAttribute)</span>
<a name="l01077"></a>01077 
<a name="l01078"></a>01078         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a> sentinel;
<a name="l01079"></a>01079 };
<a name="l01080"></a>01080 
<a name="l01081"></a>01081 <span class="preprocessor">#endif // SKIP_DOCS</span>
<a name="l01082"></a>01082 <span class="preprocessor"></span>
<a name="l01083"></a>01083 
<a name="l01092"></a><a class="code" href="classTiXmlElement.html">01092</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>
<a name="l01093"></a>01093 {
<a name="l01094"></a>01094 <span class="keyword">public</span>:
<a name="l01096"></a>01096         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> * in_value);
<a name="l01097"></a>01097 
<a name="l01098"></a>01098 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01099"></a>01099 <span class="preprocessor"></span>
<a name="l01100"></a>01100         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>( <span class="keyword">const</span> std::string&amp; _value );
<a name="l01101"></a>01101 <span class="preprocessor">#endif</span>
<a name="l01102"></a>01102 <span class="preprocessor"></span>
<a name="l01104"></a>01104         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>&amp; );
<a name="l01105"></a>01105 
<a name="l01107"></a>01107         <span class="keywordtype">void</span> operator=( <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>&amp; base );
<a name="l01108"></a>01108 
<a name="l01110"></a>01110         <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>();
<a name="l01111"></a>01111 
<a name="l01116"></a>01116         <span class="keyword">const</span> <span class="keywordtype">char</span>* Attribute( <span class="keyword">const</span> <span class="keywordtype">char</span>* name ) <span class="keyword">const</span>;
<a name="l01117"></a>01117 
<a name="l01125"></a>01125         <span class="keyword">const</span> <span class="keywordtype">char</span>* Attribute( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">int</span>* i ) <span class="keyword">const</span>;
<a name="l01126"></a>01126 
<a name="l01134"></a>01134         <span class="keyword">const</span> <span class="keywordtype">char</span>* Attribute( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">double</span>* d ) <span class="keyword">const</span>;
<a name="l01135"></a>01135 
<a name="l01144"></a>01144         <span class="keywordtype">int</span> QueryIntAttribute( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">int</span>* _value ) <span class="keyword">const</span>;
<a name="l01146"></a>01146         <span class="keywordtype">int</span> QueryDoubleAttribute( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">double</span>* _value ) <span class="keyword">const</span>;
<a name="l01148"></a><a class="code" href="classTiXmlElement.html#a0525da5f0899e687d9a4d0a5442c2d14">01148</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlElement.html#a0525da5f0899e687d9a4d0a5442c2d14">QueryFloatAttribute</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">float</span>* _value )<span class="keyword"> const </span>{
<a name="l01149"></a>01149                 <span class="keywordtype">double</span> d;
<a name="l01150"></a>01150                 <span class="keywordtype">int</span> result = QueryDoubleAttribute( name, &amp;d );
<a name="l01151"></a>01151                 <span class="keywordflow">if</span> ( result == TIXML_SUCCESS ) {
<a name="l01152"></a>01152                         *_value = (float)d;
<a name="l01153"></a>01153                 }
<a name="l01154"></a>01154                 <span class="keywordflow">return</span> result;
<a name="l01155"></a>01155         }
<a name="l01156"></a>01156 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01157"></a>01157 <span class="preprocessor"></span>
<a name="l01164"></a>01164         <span class="keyword">template</span>&lt; <span class="keyword">typename</span> T &gt; <span class="keywordtype">int</span> QueryValueAttribute( <span class="keyword">const</span> std::string&amp; name, T* outValue )<span class="keyword"> const </span>
<a name="l01165"></a>01165 <span class="keyword">        </span>{
<a name="l01166"></a>01166                 <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* node = attributeSet.Find( name );
<a name="l01167"></a>01167                 <span class="keywordflow">if</span> ( !node )
<a name="l01168"></a>01168                         <span class="keywordflow">return</span> TIXML_NO_ATTRIBUTE;
<a name="l01169"></a>01169 
<a name="l01170"></a>01170                 std::stringstream sstream( node-&gt;ValueStr() );
<a name="l01171"></a>01171                 sstream &gt;&gt; *outValue;
<a name="l01172"></a>01172                 <span class="keywordflow">if</span> ( !sstream.fail() )
<a name="l01173"></a>01173                         <span class="keywordflow">return</span> TIXML_SUCCESS;
<a name="l01174"></a>01174                 <span class="keywordflow">return</span> TIXML_WRONG_TYPE;
<a name="l01175"></a>01175         }
<a name="l01176"></a>01176 <span class="preprocessor">#endif</span>
<a name="l01177"></a>01177 <span class="preprocessor"></span>
<a name="l01182"></a>01182         <span class="keywordtype">void</span> SetAttribute( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keyword">const</span> <span class="keywordtype">char</span> * _value );
<a name="l01183"></a>01183 
<a name="l01184"></a>01184 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01185"></a>01185 <span class="preprocessor"></span>
<a name="l01186"></a>01186         <span class="keyword">const</span> std::string* Attribute( <span class="keyword">const</span> std::string&amp; name ) <span class="keyword">const</span>;
<a name="l01188"></a>01188         <span class="keyword">const</span> std::string* Attribute( <span class="keyword">const</span> std::string&amp; name, <span class="keywordtype">int</span>* i ) <span class="keyword">const</span>;
<a name="l01190"></a>01190         <span class="keyword">const</span> std::string* Attribute( <span class="keyword">const</span> std::string&amp; name, <span class="keywordtype">double</span>* d ) <span class="keyword">const</span>;
<a name="l01192"></a>01192         <span class="keywordtype">int</span> QueryIntAttribute( <span class="keyword">const</span> std::string&amp; name, <span class="keywordtype">int</span>* _value ) <span class="keyword">const</span>;
<a name="l01194"></a>01194         <span class="keywordtype">int</span> QueryDoubleAttribute( <span class="keyword">const</span> std::string&amp; name, <span class="keywordtype">double</span>* _value ) <span class="keyword">const</span>;
<a name="l01195"></a>01195 
<a name="l01197"></a>01197         <span class="keywordtype">void</span> SetAttribute( <span class="keyword">const</span> std::string&amp; name, <span class="keyword">const</span> std::string&amp; _value );
<a name="l01199"></a>01199         <span class="keywordtype">void</span> SetAttribute( <span class="keyword">const</span> std::string&amp; name, <span class="keywordtype">int</span> _value );
<a name="l01200"></a>01200 <span class="preprocessor">#endif</span>
<a name="l01201"></a>01201 <span class="preprocessor"></span>
<a name="l01206"></a>01206         <span class="keywordtype">void</span> SetAttribute( <span class="keyword">const</span> <span class="keywordtype">char</span> * name, <span class="keywordtype">int</span> value );
<a name="l01207"></a>01207 
<a name="l01212"></a>01212         <span class="keywordtype">void</span> SetDoubleAttribute( <span class="keyword">const</span> <span class="keywordtype">char</span> * name, <span class="keywordtype">double</span> value );
<a name="l01213"></a>01213 
<a name="l01215"></a>01215         <span class="keywordtype">void</span> RemoveAttribute( <span class="keyword">const</span> <span class="keywordtype">char</span> * name );
<a name="l01216"></a>01216 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01217"></a>01217 <span class="preprocessor"></span>
<a name="l01218"></a>01218         <span class="keywordtype">void</span> RemoveAttribute( <span class="keyword">const</span> std::string&amp; name ) { RemoveAttribute (name.c_str ()); }
<a name="l01219"></a>01219 <span class="preprocessor">#endif</span>
<a name="l01220"></a>01220 <span class="preprocessor"></span>
<a name="l01222"></a><a class="code" href="classTiXmlElement.html#a7b357194869f6d65539da85dc6544d24">01222</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <a class="code" href="classTiXmlElement.html#a7b357194869f6d65539da85dc6544d24">FirstAttribute</a>()<span class="keyword"> const    </span>{ <span class="keywordflow">return</span> attributeSet.First(); }
<a name="l01224"></a><a class="code" href="classTiXmlElement.html#a3b630879ac25fe5bfc4f4f779c200406">01224</a>         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <a class="code" href="classTiXmlElement.html#a3b630879ac25fe5bfc4f4f779c200406">FirstAttribute</a>()                                { <span class="keywordflow">return</span> attributeSet.First(); }
<a name="l01225"></a>01225 
<a name="l01227"></a><a class="code" href="classTiXmlElement.html#a2bacb6685a44d7a89cdece343b447dac">01227</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <a class="code" href="classTiXmlElement.html#a2bacb6685a44d7a89cdece343b447dac">LastAttribute</a>()<span class="keyword">   const   </span>{ <span class="keywordflow">return</span> attributeSet.Last(); }         
<a name="l01229"></a><a class="code" href="classTiXmlElement.html#a65888f62847066c810b809ffea9ac62d">01229</a>         <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* <a class="code" href="classTiXmlElement.html#a65888f62847066c810b809ffea9ac62d">LastAttribute</a>()                                 { <span class="keywordflow">return</span> attributeSet.Last(); }
<a name="l01230"></a>01230 
<a name="l01264"></a>01264         <span class="keyword">const</span> <span class="keywordtype">char</span>* GetText() <span class="keyword">const</span>;
<a name="l01265"></a>01265 
<a name="l01267"></a>01267         <span class="keyword">virtual</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a5455583176e9a0389caa2f94ffb809fc">Clone</a>() <span class="keyword">const</span>;
<a name="l01269"></a>01269         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth ) <span class="keyword">const</span>;
<a name="l01270"></a>01270 
<a name="l01275"></a>01275         <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* Parse( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TiXmlParsingData* data, TiXmlEncoding encoding );
<a name="l01276"></a>01276 
<a name="l01278"></a><a class="code" href="classTiXmlElement.html#a7a2cc466ad0e9996d71ee5da2db2511f">01278</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>*     <a class="code" href="classTiXmlElement.html#a7a2cc466ad0e9996d71ee5da2db2511f">ToElement</a>()<span class="keyword">     const </span>{ <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01280"></a><a class="code" href="classTiXmlElement.html#a6225c641ac28d55726b392a3a33774e8">01280</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>*           <a class="code" href="classTiXmlElement.html#a6225c641ac28d55726b392a3a33774e8">ToElement</a>()               { <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01281"></a>01281 
<a name="l01283"></a>01283         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlNode.html#a3da2314556d60c86be93bcef3bcf8893">Accept</a>( <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>* visitor ) <span class="keyword">const</span>;
<a name="l01284"></a>01284 
<a name="l01285"></a>01285 <span class="keyword">protected</span>:
<a name="l01286"></a>01286 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01287"></a>01287 <span class="preprocessor"></span>        <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* target ) <span class="keyword">const</span>;
<a name="l01288"></a>01288         <span class="keywordtype">void</span> ClearThis();       <span class="comment">// like clear, but initializes &#39;this&#39; object as well</span>
<a name="l01289"></a>01289 
<a name="l01290"></a>01290         <span class="comment">// Used to be public [internal use]</span>
<a name="l01291"></a>01291 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01292"></a>01292 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamIn( std::istream * in, TIXML_STRING * tag );
<a name="l01293"></a>01293 <span class="preprocessor">#endif</span>
<a name="l01294"></a>01294 <span class="preprocessor"></span>
<a name="l01299"></a>01299         <span class="keyword">const</span> <span class="keywordtype">char</span>* ReadValue( <span class="keyword">const</span> <span class="keywordtype">char</span>* in, TiXmlParsingData* prevData, TiXmlEncoding encoding );
<a name="l01300"></a>01300 <span class="preprocessor">#endif</span>
<a name="l01301"></a>01301 <span class="preprocessor"></span>
<a name="l01302"></a>01302 <span class="keyword">private</span>:
<a name="l01303"></a>01303 
<a name="l01304"></a>01304         TiXmlAttributeSet attributeSet;
<a name="l01305"></a>01305 };
<a name="l01306"></a>01306 
<a name="l01307"></a>01307 
<a name="l01312"></a><a class="code" href="classTiXmlComment.html">01312</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>
<a name="l01313"></a>01313 {
<a name="l01314"></a>01314 <span class="keyword">public</span>:
<a name="l01316"></a><a class="code" href="classTiXmlComment.html#ae41c277a90573c1dfa0f6dc84bd268a8">01316</a>         <a class="code" href="classTiXmlComment.html#ae41c277a90573c1dfa0f6dc84bd268a8">TiXmlComment</a>() : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::COMMENT ) {}
<a name="l01318"></a><a class="code" href="classTiXmlComment.html#a88aab2397b774cdf5857f7d05373e7bd">01318</a>         <a class="code" href="classTiXmlComment.html#a88aab2397b774cdf5857f7d05373e7bd">TiXmlComment</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* _value ) : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::COMMENT ) {
<a name="l01319"></a>01319                 <a class="code" href="classTiXmlNode.html#aea82a06505184ef86f477ad405fbbef9">SetValue</a>( _value );
<a name="l01320"></a>01320         }
<a name="l01322"></a>01322         <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>&amp; );
<a name="l01324"></a>01324         <span class="keywordtype">void</span> operator=( <span class="keyword">const</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>&amp; base );
<a name="l01325"></a>01325 
<a name="l01327"></a><a class="code" href="classTiXmlComment.html#a34a38fb9155072778824915ff34d779b">01327</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlComment.html#a34a38fb9155072778824915ff34d779b">~TiXmlComment</a>() {}
<a name="l01328"></a>01328 
<a name="l01330"></a>01330         <span class="keyword">virtual</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a5455583176e9a0389caa2f94ffb809fc">Clone</a>() <span class="keyword">const</span>;
<a name="l01332"></a>01332         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth ) <span class="keyword">const</span>;
<a name="l01333"></a>01333 
<a name="l01338"></a>01338         <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* Parse( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TiXmlParsingData* data, TiXmlEncoding encoding );
<a name="l01339"></a>01339 
<a name="l01341"></a><a class="code" href="classTiXmlComment.html#a1535d8f760996ff1a651cae2fcb62be3">01341</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>*  <a class="code" href="classTiXmlComment.html#a1535d8f760996ff1a651cae2fcb62be3">ToComment</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01343"></a><a class="code" href="classTiXmlComment.html#a8dfc05132e237c72560d51ee2c725a5c">01343</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>*  <a class="code" href="classTiXmlComment.html#a8dfc05132e237c72560d51ee2c725a5c">ToComment</a>() { <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01344"></a>01344 
<a name="l01346"></a>01346         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlNode.html#a3da2314556d60c86be93bcef3bcf8893">Accept</a>( <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>* visitor ) <span class="keyword">const</span>;
<a name="l01347"></a>01347 
<a name="l01348"></a>01348 <span class="keyword">protected</span>:
<a name="l01349"></a>01349 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01350"></a>01350 <span class="preprocessor"></span>        <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>* target ) <span class="keyword">const</span>;
<a name="l01351"></a>01351 
<a name="l01352"></a>01352         <span class="comment">// used to be public</span>
<a name="l01353"></a>01353 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01354"></a>01354 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamIn( std::istream * in, TIXML_STRING * tag );
<a name="l01355"></a>01355 <span class="preprocessor">#endif</span>
<a name="l01356"></a>01356 <span class="preprocessor"></span><span class="comment">//      virtual void StreamOut( TIXML_OSTREAM * out ) const;</span>
<a name="l01357"></a>01357 <span class="preprocessor">#endif</span>
<a name="l01358"></a>01358 <span class="preprocessor"></span>
<a name="l01359"></a>01359 };
<a name="l01360"></a>01360 
<a name="l01361"></a>01361 
<a name="l01371"></a><a class="code" href="classTiXmlText.html">01371</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>
<a name="l01372"></a>01372 {
<a name="l01373"></a>01373         <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>;
<a name="l01374"></a>01374 <span class="keyword">public</span>:
<a name="l01380"></a><a class="code" href="classTiXmlText.html#a1ce4da1d724e3580ad24bac910c7bdcf">01380</a>         <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> * initValue ) : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a> (<a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::TEXT)
<a name="l01381"></a>01381         {
<a name="l01382"></a>01382                 <a class="code" href="classTiXmlNode.html#aea82a06505184ef86f477ad405fbbef9">SetValue</a>( initValue );
<a name="l01383"></a>01383                 cdata = <span class="keyword">false</span>;
<a name="l01384"></a>01384         }
<a name="l01385"></a>01385         <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>() {}
<a name="l01386"></a>01386 
<a name="l01387"></a>01387 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01388"></a>01388 <span class="preprocessor"></span>
<a name="l01389"></a>01389         <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>( <span class="keyword">const</span> std::string&amp; initValue ) : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a> (<a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::TEXT)
<a name="l01390"></a>01390         {
<a name="l01391"></a>01391                 <a class="code" href="classTiXmlNode.html#aea82a06505184ef86f477ad405fbbef9">SetValue</a>( initValue );
<a name="l01392"></a>01392                 cdata = <span class="keyword">false</span>;
<a name="l01393"></a>01393         }
<a name="l01394"></a>01394 <span class="preprocessor">#endif</span>
<a name="l01395"></a>01395 <span class="preprocessor"></span>
<a name="l01396"></a><a class="code" href="classTiXmlText.html#af2484755cf178688ecac5ad87d6288e5">01396</a>         <a class="code" href="classTiXmlText.html#af2484755cf178688ecac5ad87d6288e5">TiXmlText</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>&amp; copy ) : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::TEXT )       { copy.<a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <span class="keyword">this</span> ); }
<a name="l01398"></a><a class="code" href="classTiXmlText.html#acb117519bb75d94c4ea3b8f4862b6546">01398</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlText.html#acb117519bb75d94c4ea3b8f4862b6546">operator=</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>&amp; base )                                                         { base.<a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <span class="keyword">this</span> ); }
<a name="l01399"></a>01399 
<a name="l01401"></a>01401         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth ) <span class="keyword">const</span>;
<a name="l01402"></a>01402 
<a name="l01404"></a><a class="code" href="classTiXmlText.html#a2c6a8295d902883b204faa9dab0f8c41">01404</a>         <span class="keywordtype">bool</span> <a class="code" href="classTiXmlText.html#a2c6a8295d902883b204faa9dab0f8c41">CDATA</a>()<span class="keyword"> const                              </span>{ <span class="keywordflow">return</span> cdata; }
<a name="l01406"></a><a class="code" href="classTiXmlText.html#a07fb5fe2ac8f2b633fbcd3c68ffb9a73">01406</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlText.html#a07fb5fe2ac8f2b633fbcd3c68ffb9a73">SetCDATA</a>( <span class="keywordtype">bool</span> _cdata )    { cdata = _cdata; }
<a name="l01407"></a>01407 
<a name="l01408"></a>01408 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01409"></a>01409 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlElement.html#a6c006d93730ee147d7bbc35c29033ad6">Parse</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TiXmlParsingData* data, TiXmlEncoding encoding );
<a name="l01410"></a>01410 <span class="preprocessor">#endif</span>
<a name="l01411"></a>01411 <span class="preprocessor"></span>
<a name="l01412"></a><a class="code" href="classTiXmlText.html#adfcbab915eb7dac33a6b914b507fd79b">01412</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>* <a class="code" href="classTiXmlText.html#adfcbab915eb7dac33a6b914b507fd79b">ToText</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01414"></a><a class="code" href="classTiXmlText.html#a0229d3dce587577a7a295d07524ccf6b">01414</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>*       <a class="code" href="classTiXmlText.html#a0229d3dce587577a7a295d07524ccf6b">ToText</a>()       { <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01415"></a>01415 
<a name="l01417"></a>01417         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlNode.html#a3da2314556d60c86be93bcef3bcf8893">Accept</a>( <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>* content ) <span class="keyword">const</span>;
<a name="l01418"></a>01418 
<a name="l01419"></a>01419 <span class="keyword">protected</span> :
<a name="l01420"></a>01420 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01421"></a>01421 <span class="preprocessor"></span>
<a name="l01422"></a>01422         <span class="keyword">virtual</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a5455583176e9a0389caa2f94ffb809fc">Clone</a>() <span class="keyword">const</span>;
<a name="l01423"></a>01423         <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>* target ) <span class="keyword">const</span>;
<a name="l01424"></a>01424 
<a name="l01425"></a>01425         <span class="keywordtype">bool</span> Blank() <span class="keyword">const</span>;     <span class="comment">// returns true if all white space and new lines</span>
<a name="l01426"></a>01426         <span class="comment">// [internal use]</span>
<a name="l01427"></a>01427 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01428"></a>01428 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamIn( std::istream * in, TIXML_STRING * tag );
<a name="l01429"></a>01429 <span class="preprocessor">#endif</span>
<a name="l01430"></a>01430 <span class="preprocessor"></span>
<a name="l01431"></a>01431 <span class="preprocessor">#endif</span>
<a name="l01432"></a>01432 <span class="preprocessor"></span>
<a name="l01433"></a>01433 <span class="keyword">private</span>:
<a name="l01434"></a>01434         <span class="keywordtype">bool</span> cdata;                     <span class="comment">// true if this should be input and output as a CDATA style text element</span>
<a name="l01435"></a>01435 };
<a name="l01436"></a>01436 
<a name="l01437"></a>01437 
<a name="l01455"></a><a class="code" href="classTiXmlDeclaration.html">01455</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>
<a name="l01456"></a>01456 {
<a name="l01457"></a>01457 <span class="keyword">public</span>:
<a name="l01459"></a><a class="code" href="classTiXmlDeclaration.html#adde340cc8cfbc11ea427a162d65c1d3d">01459</a>         <a class="code" href="classTiXmlDeclaration.html#adde340cc8cfbc11ea427a162d65c1d3d">TiXmlDeclaration</a>()   : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::DECLARATION ) {}
<a name="l01460"></a>01460 
<a name="l01461"></a>01461 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01462"></a>01462 <span class="preprocessor"></span>
<a name="l01463"></a>01463         <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>(       <span class="keyword">const</span> std::string&amp; _version,
<a name="l01464"></a>01464                                                 <span class="keyword">const</span> std::string&amp; _encoding,
<a name="l01465"></a>01465                                                 <span class="keyword">const</span> std::string&amp; _standalone );
<a name="l01466"></a>01466 <span class="preprocessor">#endif</span>
<a name="l01467"></a>01467 <span class="preprocessor"></span>
<a name="l01469"></a>01469         <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>(       <span class="keyword">const</span> <span class="keywordtype">char</span>* _version,
<a name="l01470"></a>01470                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* _encoding,
<a name="l01471"></a>01471                                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* _standalone );
<a name="l01472"></a>01472 
<a name="l01474"></a>01474         <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>&amp; copy );
<a name="l01476"></a>01476         <span class="keywordtype">void</span> operator=( <span class="keyword">const</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>&amp; copy );
<a name="l01477"></a>01477 
<a name="l01478"></a>01478 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01479"></a>01479 <span class="preprocessor"></span>        <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>()     {}
<a name="l01480"></a>01480 <span class="preprocessor">#endif</span>
<a name="l01481"></a>01481 <span class="preprocessor"></span>
<a name="l01483"></a><a class="code" href="classTiXmlDeclaration.html#a1abac6487c56161794e2cba656e51e82">01483</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classTiXmlDeclaration.html#a1abac6487c56161794e2cba656e51e82">Version</a>()<span class="keyword"> const                     </span>{ <span class="keywordflow">return</span> version.c_str (); }
<a name="l01485"></a><a class="code" href="classTiXmlDeclaration.html#a21cf43021714cb3938bfd5dee8586e0f">01485</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classTiXmlDeclaration.html#a21cf43021714cb3938bfd5dee8586e0f">Encoding</a>()<span class="keyword"> const            </span>{ <span class="keywordflow">return</span> encoding.c_str (); }
<a name="l01487"></a><a class="code" href="classTiXmlDeclaration.html#a8d9819c5680aeba23cfd31c2365054ec">01487</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classTiXmlDeclaration.html#a8d9819c5680aeba23cfd31c2365054ec">Standalone</a>()<span class="keyword"> const          </span>{ <span class="keywordflow">return</span> standalone.c_str (); }
<a name="l01488"></a>01488 
<a name="l01490"></a>01490         <span class="keyword">virtual</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a5455583176e9a0389caa2f94ffb809fc">Clone</a>() <span class="keyword">const</span>;
<a name="l01491"></a>01491 
<a name="l01493"></a>01493         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth, TIXML_STRING* str ) <span class="keyword">const</span>;
<a name="l01495"></a><a class="code" href="classTiXmlDeclaration.html#aa0c7ee41a4ae95253c321399cd995b9f">01495</a>         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlDeclaration.html#aa0c7ee41a4ae95253c321399cd995b9f">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth )<span class="keyword"> const </span>{
<a name="l01496"></a>01496                 <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( cfile, depth, 0 );
<a name="l01497"></a>01497         }
<a name="l01498"></a>01498 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01499"></a>01499 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* Parse( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TiXmlParsingData* data, TiXmlEncoding encoding );
<a name="l01500"></a>01500 <span class="preprocessor">#endif</span>
<a name="l01501"></a>01501 <span class="preprocessor"></span>
<a name="l01502"></a><a class="code" href="classTiXmlDeclaration.html#aee135ea9d6486ec118898e3ac8a293cf">01502</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>* <a class="code" href="classTiXmlDeclaration.html#aee135ea9d6486ec118898e3ac8a293cf">ToDeclaration</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01504"></a><a class="code" href="classTiXmlDeclaration.html#ab07aa982d62f5beba098e5a285c75e67">01504</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>*       <a class="code" href="classTiXmlDeclaration.html#ab07aa982d62f5beba098e5a285c75e67">ToDeclaration</a>()       { <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01505"></a>01505 
<a name="l01507"></a>01507         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlNode.html#a3da2314556d60c86be93bcef3bcf8893">Accept</a>( <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>* visitor ) <span class="keyword">const</span>;
<a name="l01508"></a>01508 
<a name="l01509"></a>01509 <span class="keyword">protected</span>:
<a name="l01510"></a>01510 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01511"></a>01511 <span class="preprocessor"></span>        <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>* target ) <span class="keyword">const</span>;
<a name="l01512"></a>01512         <span class="comment">// used to be public</span>
<a name="l01513"></a>01513 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01514"></a>01514 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamIn( std::istream * in, TIXML_STRING * tag );
<a name="l01515"></a>01515 <span class="preprocessor">#endif</span>
<a name="l01516"></a>01516 <span class="preprocessor"></span>
<a name="l01517"></a>01517 <span class="preprocessor">#endif</span>
<a name="l01518"></a>01518 <span class="preprocessor"></span>
<a name="l01519"></a>01519 <span class="keyword">private</span>:
<a name="l01520"></a>01520 
<a name="l01521"></a>01521         TIXML_STRING version;
<a name="l01522"></a>01522         TIXML_STRING encoding;
<a name="l01523"></a>01523         TIXML_STRING standalone;
<a name="l01524"></a>01524 };
<a name="l01525"></a>01525 
<a name="l01526"></a>01526 
<a name="l01538"></a><a class="code" href="classTiXmlUnknown.html">01538</a> <span class="keyword">class </span><a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>
<a name="l01539"></a>01539 {
<a name="l01540"></a>01540 <span class="keyword">public</span>:
<a name="l01542"></a><a class="code" href="classTiXmlUnknown.html#af92ec4869f9d105bc1217a0252bf4995">01542</a>         <a class="code" href="classTiXmlUnknown.html#af92ec4869f9d105bc1217a0252bf4995">TiXmlUnknown</a>() : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::UNKNOWN )        {}
<a name="l01543"></a>01543 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01544"></a>01544 <span class="preprocessor"></span>        <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>() {}
<a name="l01545"></a>01545 <span class="preprocessor">#endif</span>
<a name="l01546"></a>01546 <span class="preprocessor"></span>
<a name="l01548"></a><a class="code" href="classTiXmlUnknown.html#a99b2257221fe0fac02b50dc9e774114c">01548</a>         <a class="code" href="classTiXmlUnknown.html#a99b2257221fe0fac02b50dc9e774114c">TiXmlUnknown</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>&amp; copy ) : <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>::UNKNOWN )              { copy.<a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <span class="keyword">this</span> ); }
<a name="l01550"></a><a class="code" href="classTiXmlUnknown.html#a717e4043bfc60953eaec0fbf615187e1">01550</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlUnknown.html#a717e4043bfc60953eaec0fbf615187e1">operator=</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>&amp; copy )                                                                              { copy.<a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <span class="keyword">this</span> ); }
<a name="l01551"></a>01551 
<a name="l01553"></a>01553         <span class="keyword">virtual</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlUnknown.html#a842a98f3a31af4a808cee9d8842e5072">Clone</a>() <span class="keyword">const</span>;
<a name="l01555"></a>01555         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlUnknown.html#aa0c7ee41a4ae95253c321399cd995b9f">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth ) <span class="keyword">const</span>;
<a name="l01556"></a>01556 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01557"></a>01557 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* Parse( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TiXmlParsingData* data, TiXmlEncoding encoding );
<a name="l01558"></a>01558 <span class="preprocessor">#endif</span>
<a name="l01559"></a>01559 <span class="preprocessor"></span>
<a name="l01560"></a><a class="code" href="classTiXmlUnknown.html#a461ef07268953b2b3fad50f64aa20321">01560</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>*     <a class="code" href="classTiXmlUnknown.html#a461ef07268953b2b3fad50f64aa20321">ToUnknown</a>()<span class="keyword">     const </span>{ <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01562"></a><a class="code" href="classTiXmlUnknown.html#a27d3f8d54b19f00da670016ae6c5774a">01562</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>*           <a class="code" href="classTiXmlUnknown.html#a27d3f8d54b19f00da670016ae6c5774a">ToUnknown</a>()         { <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01563"></a>01563 
<a name="l01565"></a>01565         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlUnknown.html#a06eee4a6233e605a618005c853c3aa81">Accept</a>( <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>* content ) <span class="keyword">const</span>;
<a name="l01566"></a>01566 
<a name="l01567"></a>01567 <span class="keyword">protected</span>:
<a name="l01568"></a>01568 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01569"></a>01569 <span class="preprocessor"></span>        <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>* target ) <span class="keyword">const</span>;
<a name="l01570"></a>01570 
<a name="l01571"></a>01571 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01572"></a>01572 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamIn( std::istream * in, TIXML_STRING * tag );
<a name="l01573"></a>01573 <span class="preprocessor">#endif</span>
<a name="l01574"></a>01574 <span class="preprocessor"></span>
<a name="l01575"></a>01575 <span class="preprocessor">#endif</span>
<a name="l01576"></a>01576 <span class="preprocessor"></span>
<a name="l01577"></a>01577 <span class="keyword">private</span>:
<a name="l01578"></a>01578 
<a name="l01579"></a>01579 };
<a name="l01580"></a>01580 
<a name="l01581"></a>01581 
<a name="l01590"></a><a class="code" href="classTiXmlDocument.html">01590</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>
<a name="l01591"></a>01591 {
<a name="l01592"></a>01592 <span class="keyword">public</span>:
<a name="l01594"></a>01594         <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>();
<a name="l01596"></a>01596         <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * documentName );
<a name="l01597"></a>01597 
<a name="l01598"></a>01598 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01599"></a>01599 <span class="preprocessor"></span>
<a name="l01600"></a>01600         <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>( <span class="keyword">const</span> std::string&amp; documentName );
<a name="l01601"></a>01601 <span class="preprocessor">#endif</span>
<a name="l01602"></a>01602 <span class="preprocessor"></span>
<a name="l01604"></a>01604         <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>&amp; copy );
<a name="l01606"></a>01606         <span class="keywordtype">void</span> operator=( <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>&amp; copy );
<a name="l01607"></a>01607 
<a name="l01608"></a>01608 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01609"></a>01609 <span class="preprocessor"></span>        <span class="keyword">virtual</span> ~<a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>() {}
<a name="l01610"></a>01610 <span class="preprocessor">#endif</span>
<a name="l01611"></a>01611 <span class="preprocessor"></span>
<a name="l01617"></a>01617         <span class="keywordtype">bool</span> LoadFile( TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
<a name="l01619"></a>01619         <span class="keywordtype">bool</span> SaveFile() <span class="keyword">const</span>;
<a name="l01621"></a>01621         <span class="keywordtype">bool</span> LoadFile( <span class="keyword">const</span> <span class="keywordtype">char</span> * filename, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
<a name="l01623"></a>01623         <span class="keywordtype">bool</span> SaveFile( <span class="keyword">const</span> <span class="keywordtype">char</span> * filename ) <span class="keyword">const</span>;
<a name="l01630"></a>01630         <span class="keywordtype">bool</span> LoadFile( FILE*, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
<a name="l01632"></a>01632         <span class="keywordtype">bool</span> SaveFile( FILE* ) <span class="keyword">const</span>;
<a name="l01633"></a>01633 
<a name="l01634"></a>01634 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01635"></a>01635 <span class="preprocessor"></span>
<a name="l01636"></a>01636         <span class="keywordtype">bool</span> LoadFile( <span class="keyword">const</span> std::string&amp; filename, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING )
<a name="l01637"></a>01637         {
<a name="l01638"></a>01638                 <span class="keywordflow">return</span> LoadFile( filename.c_str(), encoding );
<a name="l01639"></a>01639         }
<a name="l01640"></a>01640 
<a name="l01642"></a>01642         <span class="keywordtype">bool</span> SaveFile( <span class="keyword">const</span> std::string&amp; filename )<span class="keyword"> const</span>
<a name="l01643"></a>01643 <span class="keyword">        </span>{
<a name="l01644"></a>01644                 <span class="keywordflow">return</span> SaveFile( filename.c_str() );
<a name="l01645"></a>01645         }
<a name="l01646"></a>01646 <span class="preprocessor">#endif</span>
<a name="l01647"></a>01647 <span class="preprocessor"></span>
<a name="l01653"></a>01653         <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* Parse( <span class="keyword">const</span> <span class="keywordtype">char</span>* p, TiXmlParsingData* data = 0, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
<a name="l01654"></a>01654 
<a name="l01660"></a><a class="code" href="classTiXmlDocument.html#acdbf63eb9f24db17a52066d28cc52409">01660</a>         <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlDocument.html#acdbf63eb9f24db17a52066d28cc52409">RootElement</a>()<span class="keyword"> const         </span>{ <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a>(); }
<a name="l01662"></a><a class="code" href="classTiXmlDocument.html#a516d5e53686d62142d716757bfbf80e7">01662</a>         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlDocument.html#a516d5e53686d62142d716757bfbf80e7">RootElement</a>()                                     { <span class="keywordflow">return</span> <a class="code" href="classTiXmlNode.html#a93ce116d33aa8a9b9824f667b716b1bb">FirstChildElement</a>(); }
<a name="l01663"></a>01663 
<a name="l01670"></a><a class="code" href="classTiXmlDocument.html#a7f351111b1715879a6029d189f7457e1">01670</a>         <span class="keywordtype">bool</span> <a class="code" href="classTiXmlDocument.html#a7f351111b1715879a6029d189f7457e1">Error</a>()<span class="keyword"> const                                              </span>{ <span class="keywordflow">return</span> error; }
<a name="l01671"></a>01671 
<a name="l01673"></a><a class="code" href="classTiXmlDocument.html#a7d1e7abe3926fb683abae7b170d73cc4">01673</a>         <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="classTiXmlDocument.html#a7d1e7abe3926fb683abae7b170d73cc4">ErrorDesc</a>()<span class="keyword"> const  </span>{ <span class="keywordflow">return</span> errorDesc.c_str (); }
<a name="l01674"></a>01674 
<a name="l01679"></a><a class="code" href="classTiXmlDocument.html#a85f5573d8b045fd19ebf476dffb309be">01679</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlDocument.html#a85f5573d8b045fd19ebf476dffb309be">ErrorId</a>()<span class="keyword">   const                           </span>{ <span class="keywordflow">return</span> errorId; }
<a name="l01680"></a>01680 
<a name="l01689"></a><a class="code" href="classTiXmlDocument.html#a23aace7f40d65cd161a42d2c5310fb08">01689</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlDocument.html#a23aace7f40d65cd161a42d2c5310fb08">ErrorRow</a>()<span class="keyword"> const    </span>{ <span class="keywordflow">return</span> errorLocation.row+1; }
<a name="l01690"></a>01690 
<a name="l01692"></a><a class="code" href="classTiXmlDocument.html#a0e8e6cedd80103ed1ebe40e12e769720">01692</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlDocument.html#a0e8e6cedd80103ed1ebe40e12e769720">ErrorCol</a>()<span class="keyword"> const    </span>{ <span class="keywordflow">return</span> errorLocation.col+1; }
<a name="l01693"></a>01693 
<a name="l01719"></a><a class="code" href="classTiXmlDocument.html#ae52c1e6d112677e7fce608a2de6201bd">01719</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlDocument.html#ae52c1e6d112677e7fce608a2de6201bd">SetTabSize</a>( <span class="keywordtype">int</span> _tabsize )         { tabsize = _tabsize; }
<a name="l01720"></a>01720 
<a name="l01722"></a><a class="code" href="classTiXmlDocument.html#ab8fd333902306c5124ecf2e138d9b03b">01722</a>         <span class="keywordtype">int</span> <a class="code" href="classTiXmlDocument.html#ab8fd333902306c5124ecf2e138d9b03b">TabSize</a>()<span class="keyword"> const     </span>{ <span class="keywordflow">return</span> tabsize; }
<a name="l01723"></a>01723 
<a name="l01728"></a><a class="code" href="classTiXmlDocument.html#a93f7a306ed9bf1f41de89f2afea7f55d">01728</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlDocument.html#a93f7a306ed9bf1f41de89f2afea7f55d">ClearError</a>()                                               {       error = <span class="keyword">false</span>; 
<a name="l01729"></a>01729                                                                                                 errorId = 0; 
<a name="l01730"></a>01730                                                                                                 errorDesc = <span class="stringliteral">&quot;&quot;</span>; 
<a name="l01731"></a>01731                                                                                                 errorLocation.row = errorLocation.col = 0; 
<a name="l01732"></a>01732                                                                                                 <span class="comment">//errorLocation.last = 0; </span>
<a name="l01733"></a>01733                                                                                         }
<a name="l01734"></a>01734 
<a name="l01736"></a><a class="code" href="classTiXmlDocument.html#a11421e368566880f5aaa4f39ce8885c4">01736</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlDocument.html#a11421e368566880f5aaa4f39ce8885c4">Print</a>()<span class="keyword"> const                                              </span>{ <a class="code" href="classTiXmlDocument.html#a11421e368566880f5aaa4f39ce8885c4">Print</a>( stdout, 0 ); }
<a name="l01737"></a>01737 
<a name="l01743"></a>01743         <span class="comment">//char* PrintToMemory() const; </span>
<a name="l01744"></a>01744 
<a name="l01746"></a>01746         <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classTiXmlBase.html#a953033a3c8ccb7404e67b0be72562391">Print</a>( FILE* cfile, <span class="keywordtype">int</span> depth = 0 ) <span class="keyword">const</span>;
<a name="l01747"></a>01747 <span class="preprocessor">#ifndef SKIP_DOCS </span>
<a name="l01748"></a>01748 <span class="preprocessor"></span>        <span class="comment">// [internal use]</span>
<a name="l01749"></a>01749         <span class="keywordtype">void</span> SetError( <span class="keywordtype">int</span> err, <span class="keyword">const</span> <span class="keywordtype">char</span>* errorLocation, TiXmlParsingData* prevData, TiXmlEncoding encoding );
<a name="l01750"></a>01750 <span class="preprocessor">#endif</span>
<a name="l01751"></a>01751 <span class="preprocessor"></span>
<a name="l01752"></a><a class="code" href="classTiXmlDocument.html#a0ac5163cd2f090c512d09453d445988a">01752</a>         <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>*    <a class="code" href="classTiXmlDocument.html#a0ac5163cd2f090c512d09453d445988a">ToDocument</a>()<span class="keyword">    const </span>{ <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01754"></a><a class="code" href="classTiXmlDocument.html#a46a5535cabc469a65f47acc317fea778">01754</a>         <span class="keyword">virtual</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>*          <a class="code" href="classTiXmlDocument.html#a46a5535cabc469a65f47acc317fea778">ToDocument</a>()          { <span class="keywordflow">return</span> <span class="keyword">this</span>; }
<a name="l01755"></a>01755 
<a name="l01757"></a>01757         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlNode.html#a3da2314556d60c86be93bcef3bcf8893">Accept</a>( <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>* content ) <span class="keyword">const</span>;
<a name="l01758"></a>01758 
<a name="l01759"></a>01759 <span class="keyword">protected</span> :
<a name="l01760"></a>01760 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01761"></a>01761 <span class="preprocessor"></span>        <span class="comment">// [internal use]</span>
<a name="l01762"></a>01762         <span class="keyword">virtual</span> <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlNode.html#a5455583176e9a0389caa2f94ffb809fc">Clone</a>() <span class="keyword">const</span>;
<a name="l01763"></a>01763 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01764"></a>01764 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> StreamIn( std::istream * in, TIXML_STRING * tag );
<a name="l01765"></a>01765 <span class="preprocessor">#endif</span>
<a name="l01766"></a>01766 <span class="preprocessor"></span>
<a name="l01767"></a>01767 <span class="preprocessor">#endif</span>
<a name="l01768"></a>01768 <span class="preprocessor"></span>
<a name="l01769"></a>01769 <span class="keyword">private</span>:
<a name="l01770"></a>01770         <span class="keywordtype">void</span> <a class="code" href="classTiXmlNode.html#a91e117d33ac96bb4fbc834c2c688125f">CopyTo</a>( <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>* target ) <span class="keyword">const</span>;
<a name="l01771"></a>01771 
<a name="l01772"></a>01772         <span class="keywordtype">bool</span> error;
<a name="l01773"></a>01773         <span class="keywordtype">int</span>  errorId;
<a name="l01774"></a>01774         TIXML_STRING errorDesc;
<a name="l01775"></a>01775         <span class="keywordtype">int</span> tabsize;
<a name="l01776"></a>01776         TiXmlCursor errorLocation;
<a name="l01777"></a>01777         <span class="keywordtype">bool</span> useMicrosoftBOM;           <span class="comment">// the UTF-8 BOM were found when read. Note this, and try to write.</span>
<a name="l01778"></a>01778 };
<a name="l01779"></a>01779 
<a name="l01780"></a>01780 
<a name="l01866"></a><a class="code" href="classTiXmlHandle.html">01866</a> <span class="keyword">class </span>EDELIB_API <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a>
<a name="l01867"></a>01867 {
<a name="l01868"></a>01868 <span class="keyword">public</span>:
<a name="l01870"></a><a class="code" href="classTiXmlHandle.html#a7a91f73db1ec65f60edf6c3351e9085a">01870</a>         <a class="code" href="classTiXmlHandle.html#a7a91f73db1ec65f60edf6c3351e9085a">TiXmlHandle</a>( <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* _node )                                 { this-&gt;node = _node; }
<a name="l01872"></a><a class="code" href="classTiXmlHandle.html#ac9e2921a67990ee459e075bb6f79ab6c">01872</a>         <a class="code" href="classTiXmlHandle.html#ac9e2921a67990ee459e075bb6f79ab6c">TiXmlHandle</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a>&amp; ref )                   { this-&gt;node = ref.node; }
<a name="l01874"></a><a class="code" href="classTiXmlHandle.html#ae3825271aa876075ea2a1c560afbf312">01874</a>         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> <a class="code" href="classTiXmlHandle.html#ae3825271aa876075ea2a1c560afbf312">operator=</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a>&amp; ref ) { this-&gt;node = ref.node; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }
<a name="l01875"></a>01875 
<a name="l01877"></a>01877         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> FirstChild() <span class="keyword">const</span>;
<a name="l01879"></a>01879         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> FirstChild( <span class="keyword">const</span> <span class="keywordtype">char</span> * value ) <span class="keyword">const</span>;
<a name="l01881"></a>01881         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> FirstChildElement() <span class="keyword">const</span>;
<a name="l01883"></a>01883         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> FirstChildElement( <span class="keyword">const</span> <span class="keywordtype">char</span> * value ) <span class="keyword">const</span>;
<a name="l01884"></a>01884 
<a name="l01889"></a>01889         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> Child( <span class="keyword">const</span> <span class="keywordtype">char</span>* value, <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l01894"></a>01894         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> Child( <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l01900"></a>01900         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> ChildElement( <span class="keyword">const</span> <span class="keywordtype">char</span>* value, <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l01906"></a>01906         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> ChildElement( <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l01907"></a>01907 
<a name="l01908"></a>01908 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l01909"></a>01909 <span class="preprocessor"></span>
<a name="l01910"></a>01910         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> FirstChild( <span class="keyword">const</span> std::string&amp; _value )<span class="keyword"> const                               </span>{ <span class="keywordflow">return</span> FirstChild( _value.c_str() ); }
<a name="l01912"></a>01912         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> FirstChildElement( <span class="keyword">const</span> std::string&amp; _value )<span class="keyword"> const                </span>{ <span class="keywordflow">return</span> FirstChildElement( _value.c_str() ); }
<a name="l01913"></a>01913 
<a name="l01915"></a>01915         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> Child( <span class="keyword">const</span> std::string&amp; _value, <span class="keywordtype">int</span> index )<span class="keyword"> const                 </span>{ <span class="keywordflow">return</span> Child( _value.c_str(), index ); }
<a name="l01917"></a>01917         <a class="code" href="classTiXmlHandle.html" title="Wraps a node pointer.">TiXmlHandle</a> ChildElement( <span class="keyword">const</span> std::string&amp; _value, <span class="keywordtype">int</span> index )<span class="keyword"> const  </span>{ <span class="keywordflow">return</span> ChildElement( _value.c_str(), index ); }
<a name="l01918"></a>01918 <span class="preprocessor">#endif</span>
<a name="l01919"></a>01919 <span class="preprocessor"></span>
<a name="l01921"></a><a class="code" href="classTiXmlHandle.html#a9f8b06cd5182e1e981edf742b8e051e7">01921</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlHandle.html#a9f8b06cd5182e1e981edf742b8e051e7">ToNode</a>()<span class="keyword"> const                       </span>{ <span class="keywordflow">return</span> node; } 
<a name="l01923"></a><a class="code" href="classTiXmlHandle.html#ade5d98bd6bda8686b8db804bc22bf505">01923</a>         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlHandle.html#ade5d98bd6bda8686b8db804bc22bf505">ToElement</a>()<span class="keyword"> const         </span>{ <span class="keywordflow">return</span> ( ( node &amp;&amp; node-&gt;ToElement() ) ? node-&gt;ToElement() : 0 ); }
<a name="l01925"></a><a class="code" href="classTiXmlHandle.html#ae869af07f33fc6cc8688ad7e5f878d60">01925</a>         <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>* <a class="code" href="classTiXmlHandle.html#ae869af07f33fc6cc8688ad7e5f878d60">ToText</a>()<span class="keyword"> const                       </span>{ <span class="keywordflow">return</span> ( ( node &amp;&amp; node-&gt;ToText() ) ? node-&gt;ToText() : 0 ); }
<a name="l01927"></a><a class="code" href="classTiXmlHandle.html#abccfbf7a34314c8200f00930aba52b26">01927</a>         <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>* <a class="code" href="classTiXmlHandle.html#abccfbf7a34314c8200f00930aba52b26">ToUnknown</a>()<span class="keyword"> const         </span>{ <span class="keywordflow">return</span> ( ( node &amp;&amp; node-&gt;ToUnknown() ) ? node-&gt;ToUnknown() : 0 ); }
<a name="l01928"></a>01928 
<a name="l01933"></a><a class="code" href="classTiXmlHandle.html#a8ee8431ed0e64eff7e87071c3e104328">01933</a>         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* <a class="code" href="classTiXmlHandle.html#a8ee8431ed0e64eff7e87071c3e104328">Node</a>()<span class="keyword"> const                 </span>{ <span class="keywordflow">return</span> ToNode(); } 
<a name="l01938"></a><a class="code" href="classTiXmlHandle.html#a7861a8552c191f4ddd9a22487126bb18">01938</a>         <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>* <a class="code" href="classTiXmlHandle.html#a7861a8552c191f4ddd9a22487126bb18">Element</a>()<span class="keyword"> const   </span>{ <span class="keywordflow">return</span> ToElement(); }
<a name="l01943"></a><a class="code" href="classTiXmlHandle.html#a3020aa52e43b2640bc34b4d4550a4586">01943</a>         <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>* <a class="code" href="classTiXmlHandle.html#a3020aa52e43b2640bc34b4d4550a4586">Text</a>()<span class="keyword"> const                 </span>{ <span class="keywordflow">return</span> ToText(); }
<a name="l01948"></a><a class="code" href="classTiXmlHandle.html#a8ebe774896d89376917b91a9adec1719">01948</a>         <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>* <a class="code" href="classTiXmlHandle.html#a8ebe774896d89376917b91a9adec1719">Unknown</a>()<span class="keyword"> const   </span>{ <span class="keywordflow">return</span> ToUnknown(); }
<a name="l01949"></a>01949 
<a name="l01950"></a>01950 <span class="keyword">private</span>:
<a name="l01951"></a>01951         <a class="code" href="classTiXmlNode.html" title="Parent class for everything in DOM.">TiXmlNode</a>* node;
<a name="l01952"></a>01952 };
<a name="l01953"></a>01953 
<a name="l01954"></a>01954 
<a name="l01978"></a><a class="code" href="classTiXmlPrinter.html">01978</a> <span class="keyword">class </span><a class="code" href="classTiXmlPrinter.html" title="Print to memory.">TiXmlPrinter</a> : <span class="keyword">public</span> <a class="code" href="classTiXmlVisitor.html" title="SAX emulation.">TiXmlVisitor</a>
<a name="l01979"></a>01979 {
<a name="l01980"></a>01980 <span class="keyword">public</span>:
<a name="l01982"></a><a class="code" href="classTiXmlPrinter.html#a4f8a69ed237be9a69dcaf7e10988c7e2">01982</a>         <a class="code" href="classTiXmlPrinter.html#a4f8a69ed237be9a69dcaf7e10988c7e2">TiXmlPrinter</a>() : depth( 0 ), simpleTextPrint( false ),
<a name="l01983"></a>01983                                          buffer(), indent( <span class="stringliteral">&quot;    &quot;</span> ), lineBreak( <span class="stringliteral">&quot;\n&quot;</span> ) {}
<a name="l01984"></a>01984 <span class="preprocessor">#ifndef SKIP_DOCS</span>
<a name="l01985"></a>01985 <span class="preprocessor"></span>        <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a74dd129fa380913a26d59b6c00c39fb1">VisitEnter</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>&amp; doc );
<a name="l01986"></a>01986         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#af6fa317428b54b46c977098007a09dd6">VisitExit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDocument.html" title="Top level node.">TiXmlDocument</a>&amp; doc );
<a name="l01987"></a>01987 
<a name="l01988"></a>01988         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a74dd129fa380913a26d59b6c00c39fb1">VisitEnter</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>&amp; element, <span class="keyword">const</span> <a class="code" href="classTiXmlAttribute.html" title="Name-value pair.">TiXmlAttribute</a>* firstAttribute );
<a name="l01989"></a>01989         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#af6fa317428b54b46c977098007a09dd6">VisitExit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlElement.html" title="Container xml class.">TiXmlElement</a>&amp; element );
<a name="l01990"></a>01990 
<a name="l01991"></a>01991         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a1d2df83a060124fdd8359a6f5873e192">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlDeclaration.html" title="XML declaration.">TiXmlDeclaration</a>&amp; declaration );
<a name="l01992"></a>01992         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a1d2df83a060124fdd8359a6f5873e192">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlText.html" title="XML text.">TiXmlText</a>&amp; text );
<a name="l01993"></a>01993         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a1d2df83a060124fdd8359a6f5873e192">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlComment.html" title="A XML Comment.">TiXmlComment</a>&amp; comment );
<a name="l01994"></a>01994         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classTiXmlVisitor.html#a1d2df83a060124fdd8359a6f5873e192">Visit</a>( <span class="keyword">const</span> <a class="code" href="classTiXmlUnknown.html" title="Unknown XML element.">TiXmlUnknown</a>&amp; unknown );
<a name="l01995"></a>01995 <span class="preprocessor">#endif</span>
<a name="l01996"></a>01996 <span class="preprocessor"></span>
<a name="l02001"></a><a class="code" href="classTiXmlPrinter.html#a5c35b47d196df5059f7ca7a90d31d5b2">02001</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlPrinter.html#a5c35b47d196df5059f7ca7a90d31d5b2">SetIndent</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* _indent )                   { indent = _indent ? _indent : <span class="stringliteral">&quot;&quot;</span> ; }
<a name="l02003"></a><a class="code" href="classTiXmlPrinter.html#a35793ea09a1f98e6005741507f7e3980">02003</a>         <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlPrinter.html#a35793ea09a1f98e6005741507f7e3980">Indent</a>()                                                    { <span class="keywordflow">return</span> indent.<a class="code" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">c_str</a>(); }
<a name="l02004"></a>02004 
<a name="l02010"></a><a class="code" href="classTiXmlPrinter.html#a6e83bf85282be30473185d1f4b00bbdf">02010</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlPrinter.html#a6e83bf85282be30473185d1f4b00bbdf">SetLineBreak</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* _lineBreak )             { lineBreak = _lineBreak ? _lineBreak : <span class="stringliteral">&quot;&quot;</span>; }
<a name="l02011"></a>02011 
<a name="l02013"></a><a class="code" href="classTiXmlPrinter.html#ab48af389e9a758e844f628c5497f33ab">02013</a>         <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlPrinter.html#ab48af389e9a758e844f628c5497f33ab">LineBreak</a>()                                                 { <span class="keywordflow">return</span> lineBreak.<a class="code" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">c_str</a>(); }
<a name="l02014"></a>02014 
<a name="l02019"></a><a class="code" href="classTiXmlPrinter.html#a6cf4cf5bc8e01dff0cb75d1bdfbf7e6d">02019</a>         <span class="keywordtype">void</span> <a class="code" href="classTiXmlPrinter.html#a6cf4cf5bc8e01dff0cb75d1bdfbf7e6d">SetStreamPrinting</a>()                                                { indent = <span class="stringliteral">&quot;&quot;</span>; lineBreak = <span class="stringliteral">&quot;&quot;</span>; }        
<a name="l02021"></a><a class="code" href="classTiXmlPrinter.html#a91b713da0032c680dfa529354ecf1d0d">02021</a>         <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classTiXmlPrinter.html#a91b713da0032c680dfa529354ecf1d0d">CStr</a>()                                                              { <span class="keywordflow">return</span> buffer.<a class="code" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">c_str</a>(); }
<a name="l02023"></a><a class="code" href="classTiXmlPrinter.html#a7b470b21b5807f0a9162bef72aebfef9">02023</a>         <span class="keywordtype">size_t</span> <a class="code" href="classTiXmlPrinter.html#a7b470b21b5807f0a9162bef72aebfef9">Size</a>()                                                                   { <span class="keywordflow">return</span> buffer.<a class="code" href="classedelib_1_1String.html#af82978762f57d4553b0f2c1331c60e65">length</a>(); }
<a name="l02024"></a>02024 
<a name="l02025"></a>02025 <span class="preprocessor">#ifdef TIXML_USE_STL</span>
<a name="l02026"></a>02026 <span class="preprocessor"></span>
<a name="l02027"></a>02027         <span class="keyword">const</span> std::string&amp; Str()                                                { <span class="keywordflow">return</span> buffer; }
<a name="l02028"></a>02028 <span class="preprocessor">#endif</span>
<a name="l02029"></a>02029 <span class="preprocessor"></span>
<a name="l02030"></a>02030 <span class="keyword">private</span>:
<a name="l02031"></a>02031         <span class="keywordtype">void</span> DoIndent() {
<a name="l02032"></a>02032                 <span class="keywordflow">for</span>( <span class="keywordtype">int</span> i=0; i&lt;depth; ++i )
<a name="l02033"></a>02033                         buffer += indent;
<a name="l02034"></a>02034         }
<a name="l02035"></a>02035         <span class="keywordtype">void</span> DoLineBreak() {
<a name="l02036"></a>02036                 buffer += lineBreak;
<a name="l02037"></a>02037         }
<a name="l02038"></a>02038 
<a name="l02039"></a>02039         <span class="keywordtype">int</span> depth;
<a name="l02040"></a>02040         <span class="keywordtype">bool</span> simpleTextPrint;
<a name="l02041"></a>02041         TIXML_STRING buffer;
<a name="l02042"></a>02042         TIXML_STRING indent;
<a name="l02043"></a>02043         TIXML_STRING lineBreak;
<a name="l02044"></a>02044 };
<a name="l02045"></a>02045 
<a name="l02046"></a>02046 
<a name="l02047"></a>02047 <span class="preprocessor">#ifdef _MSC_VER</span>
<a name="l02048"></a>02048 <span class="preprocessor"></span><span class="preprocessor">#pragma warning( pop )</span>
<a name="l02049"></a>02049 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l02050"></a>02050 <span class="preprocessor"></span>
<a name="l02051"></a>02051 <span class="preprocessor">#endif</span>
</pre></div></div><!-- contents -->


<hr class="footer"/><address class="footer"><small>
Generated on Tue Jun 5 2012 17:49:02 for edelib by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>