26 #ifndef MADNESS_TINYXML_TINYXML_H__INCLUDED
27 #define MADNESS_TINYXML_TINYXML_H__INCLUDED
30 #pragma warning( push )
31 #pragma warning( disable : 4530 )
32 #pragma warning( disable : 4786 )
42 #if defined( _DEBUG ) && !defined( DEBUG )
51 #define TIXML_STRING std::string
54 #define TIXML_STRING TiXmlString
64 #if defined(_MSC_VER) && (_MSC_VER >= 1400 )
66 #define TIXML_SNPRINTF _snprintf_s
67 #define TIXML_SNSCANF _snscanf_s
68 #define TIXML_SSCANF sscanf_s
69 #elif defined(_MSC_VER) && (_MSC_VER >= 1200 )
72 #define TIXML_SNPRINTF _snprintf
73 #define TIXML_SNSCANF _snscanf
74 #define TIXML_SSCANF sscanf
75 #elif defined(__GNUC__) && (__GNUC__ >= 3 )
78 #define TIXML_SNPRINTF snprintf
79 #define TIXML_SNSCANF snscanf
80 #define TIXML_SSCANF sscanf
82 #define TIXML_SSCANF sscanf
93 class TiXmlParsingData;
215 virtual void Print( FILE* cfile,
int depth )
const = 0;
257 virtual const char*
Parse(
const char* p,
258 TiXmlParsingData* data,
294 return ( isspace( (
unsigned char) c ) || c ==
'\n' || c ==
'\r' );
317 static const char*
ReadText(
const char* in,
319 bool ignoreWhiteSpace,
334 *length = utf8ByteTable[ *((
const unsigned char*)p) ];
335 assert( *length >= 0 && *length < 5 );
345 return GetEntity( p, _value, length, encoding );
353 for(
int i=0; p[i] && i<*length; ++i ) {
356 return p + (*length);
388 if ( v < 128 )
return tolower( v );
405 unsigned int strLength;
411 MAX_ENTITY_LENGTH = 6
414 static Entity entity[ NUM_ENTITY ];
415 static bool condenseWhiteSpace;
531 return const_cast< TiXmlNode*
> ((
const_cast< const TiXmlNode*
>(
this))->FirstChild( _value ));
538 return const_cast< TiXmlNode*
> ((
const_cast< const TiXmlNode*
>(
this))->LastChild( _value ));
566 return const_cast< TiXmlNode*
>( (
const_cast< const TiXmlNode*
>(
this))->IterateChildren( previous ) );
572 return const_cast< TiXmlNode*
>( (
const_cast< const TiXmlNode*
>(
this))->IterateChildren( _value, previous ) );
622 return const_cast< TiXmlNode*
>( (
const_cast< const TiXmlNode*
>(
this))->PreviousSibling( _prev ) );
639 return const_cast< TiXmlNode*
>( (
const_cast< const TiXmlNode*
>(
this))->NextSibling( _next ) );
657 return const_cast< TiXmlElement*
>( (
const_cast< const TiXmlNode*
>(
this))->NextSiblingElement( _next ) );
674 return const_cast< TiXmlElement*
>( (
const_cast< const TiXmlNode*
>(
this))->FirstChildElement( _value ) );
813 const char*
Name()
const {
return name.c_str(); }
814 const char*
Value()
const {
return value.c_str(); }
837 void SetName(
const char* _name ) { name = _name; }
838 void SetValue(
const char* _value ) { value = _value; }
869 virtual const char*
Parse(
const char* p, TiXmlParsingData* data,
TiXmlEncoding encoding );
872 virtual void Print( FILE* cfile,
int depth )
const {
873 Print( cfile, depth, 0 );
965 const char*
Attribute(
const char* name )
const;
973 const char*
Attribute(
const char* name,
int* i )
const;
981 const char*
Attribute(
const char* name,
double* d )
const;
1003 #ifdef TIXML_USE_STL
1018 std::stringstream sstream( node->
ValueStr() );
1019 sstream >> *outValue;
1020 if ( !sstream.fail() )
1044 void SetAttribute(
const char* name,
const char * _value );
1046 #ifdef TIXML_USE_STL
1072 #ifdef TIXML_USE_STL
1118 virtual void Print( FILE* cfile,
int depth )
const;
1123 virtual const char*
Parse(
const char* p, TiXmlParsingData* data,
TiXmlEncoding encoding );
1138 #ifdef TIXML_USE_STL
1172 virtual void Print( FILE* cfile,
int depth )
const;
1177 virtual const char*
Parse(
const char* p, TiXmlParsingData* data,
TiXmlEncoding encoding );
1190 #ifdef TIXML_USE_STL
1220 #ifdef TIXML_USE_STL
1233 virtual void Print( FILE* cfile,
int depth )
const;
1240 virtual const char*
Parse(
const char* p, TiXmlParsingData* data,
TiXmlEncoding encoding );
1256 #ifdef TIXML_USE_STL
1284 #ifdef TIXML_USE_STL
1293 const char* _encoding,
1294 const char* _standalone );
1302 const char *
Version()
const {
return version.c_str (); }
1304 const char *
Encoding()
const {
return encoding.c_str (); }
1312 virtual void Print( FILE* cfile,
int depth )
const {
1313 Print( cfile, depth, 0 );
1316 virtual const char*
Parse(
const char* p, TiXmlParsingData* data,
TiXmlEncoding encoding );
1328 #ifdef TIXML_USE_STL
1359 virtual void Print( FILE* cfile,
int depth )
const;
1361 virtual const char*
Parse(
const char* p, TiXmlParsingData* data,
TiXmlEncoding encoding );
1373 #ifdef TIXML_USE_STL
1394 #ifdef TIXML_USE_STL
1414 bool SaveFile(
const char * filename )
const;
1424 #ifdef TIXML_USE_STL
1429 return LoadFile( filename.c_str(), encoding );
1435 return SaveFile( filename.c_str() );
1460 const char *
ErrorDesc()
const {
return errorDesc.c_str (); }
1511 errorLocation.
row = errorLocation.
col = 0;
1525 virtual void Print( FILE* cfile,
int depth = 0 )
const;
1527 void SetError(
int err,
const char* errorLocation, TiXmlParsingData* prevData,
TiXmlEncoding encoding );
1539 #ifdef TIXML_USE_STL
1551 bool useMicrosoftBOM;
1672 #ifdef TIXML_USE_STL
1738 buffer(), indent(
" " ), lineBreak(
"\n" ) {}
1754 void SetIndent(
const char* _indent ) { indent = _indent ? _indent :
"" ; }
1756 const char*
Indent() {
return indent.c_str(); }
1761 void SetLineBreak(
const char* _lineBreak ) { lineBreak = _lineBreak ? _lineBreak :
""; }
1772 const char*
CStr() {
return buffer.c_str(); }
1774 size_t Size() {
return buffer.size(); }
1776 #ifdef TIXML_USE_STL
1783 for(
int i=0; i<depth; ++i )
1786 void DoLineBreak() {
1787 buffer += lineBreak;
1791 bool simpleTextPrint;
1799 #pragma warning( pop )
1802 #endif // MADNESS_TINYXML_TINYXML_H__INCLUDED
virtual ~TiXmlVisitor()
Definition: tinyxml.h:133
static const int utf8ByteTable[256]
Definition: tinyxml.h:255
virtual void StreamIn(std::istream *in, TIXML_STRING *tag)
Definition: tinyxmlparser.cc:641
TiXmlHandle Child(const std::string &_value, int index) const
Definition: tinyxml.h:1676
TiXmlAttributeSet()
Definition: tinyxml.cc:1502
const TiXmlAttribute * First() const
Definition: tinyxml.h:914
virtual const char * Parse(const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:1049
TiXmlNode * LastChild(const char *_value)
The last child of this node matching 'value'. Will be null if there are no children.
Definition: tinyxml.h:537
Definition: tinyxml.h:781
TiXmlHandle(TiXmlNode *_node)
Create a handle from any node (at any depth of the tree.) This can be a null pointer.
Definition: tinyxml.h:1639
virtual TiXmlNode * Clone() const
Creates a copy of this Declaration and returns it.
Definition: tinyxml.cc:1458
TiXmlUnknown * Unknown() const
Definition: tinyxml.h:1708
TiXmlNode * FirstChild(const std::string &_value)
STL std::string form.
Definition: tinyxml.h:543
Definition: tinyxml.h:158
int col
Definition: tinyxml.h:108
virtual bool Accept(TiXmlVisitor *visitor) const
Definition: tinyxml.cc:846
virtual ~TiXmlElement()
Definition: tinyxml.cc:537
friend std::ostream & operator<<(std::ostream &out, const TiXmlNode &base)
Definition: tinyxml.cc:1611
void SetUserData(void *user)
Set a pointer to arbitrary user data.
Definition: tinyxml.h:249
Definition: tinyxml.h:130
Definition: tinyxml.h:905
virtual const TiXmlDocument * ToDocument() const
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1529
TiXmlUnknown(const TiXmlUnknown ©)
Definition: tinyxml.h:1353
const TiXmlNode * Parent() const
Definition: tinyxml.h:522
const std::string & ValueStr() const
Definition: tinyxml.h:496
const TiXmlElement * RootElement() const
Definition: tinyxml.h:1449
void SetLineBreak(const char *_lineBreak)
Definition: tinyxml.h:1761
const TIXML_STRING & ValueTStr() const
Definition: tinyxml.h:499
TiXmlElement * NextSiblingElement()
Definition: tinyxml.h:647
virtual const TiXmlElement * ToElement() const
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1125
TiXmlHandle(const TiXmlHandle &ref)
Copy constructor.
Definition: tinyxml.h:1641
TiXmlNode * PreviousSibling(const char *_prev)
Definition: tinyxml.h:621
TiXmlNode * LastChild()
The last child of this node. Will be null if there are no children.
Definition: tinyxml.h:534
const char * LineBreak()
Query the current line breaking string.
Definition: tinyxml.h:1763
virtual TiXmlNode * Clone() const
Creates a new Element and returns it - the returned element is a copy.
Definition: tinyxml.cc:860
bool Error() const
Definition: tinyxml.h:1457
virtual TiXmlElement * ToElement()
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:707
double DoubleValue() const
Return the value of this attribute, converted to a double.
Definition: tinyxml.cc:1281
virtual bool Visit(const TiXmlUnknown &)
Visit an unknow node.
Definition: tinyxml.h:152
TiXmlAttribute(const char *_name, const char *_value)
Construct an attribute with a name and value.
Definition: tinyxml.h:805
virtual void StreamIn(std::istream *in, TIXML_STRING *tag)=0
int IntValue() const
Return the value of this attribute, converted to an integer.
Definition: tinyxml.cc:1276
TiXmlNode * prev
Definition: tinyxml.h:765
virtual void StreamIn(std::istream *in, TIXML_STRING *tag)
Definition: tinyxmlparser.cc:1250
virtual const TiXmlText * ToText() const
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1242
virtual const char * Parse(const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:1389
TiXmlHandle FirstChild() const
Return a handle to the first child node.
Definition: tinyxml.cc:1634
void CopyTo(TiXmlUnknown *target) const
Definition: tinyxml.cc:1478
Definition: tinyxml.h:286
const void * GetUserData() const
Get a pointer to arbitrary user data.
Definition: tinyxml.h:251
int Type() const
Definition: tinyxml.h:686
static int ToLower(int v, TiXmlEncoding encoding)
Definition: tinyxml.h:384
TiXmlNode * IterateChildren(const std::string &_value, const TiXmlNode *previous)
STL std::string form.
Definition: tinyxml.h:577
const TiXmlElement * FirstChildElement(const std::string &_value) const
STL std::string form.
Definition: tinyxml.h:678
TiXmlNode * IterateChildren(const char *_value, const TiXmlNode *previous)
Definition: tinyxml.h:571
TiXmlNode * firstChild
Definition: tinyxml.h:760
static int IsAlphaNum(unsigned char anyByte, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:150
Definition: tinyxml.h:469
Definition: tinyxml.h:268
void SetDoubleAttribute(const char *name, double value)
Definition: tinyxml.cc:705
Definition: tinyxml.h:102
void operator=(const TiXmlUnknown ©)
Definition: tinyxml.h:1354
Definition: tinyxml.h:471
int TabSize() const
Definition: tinyxml.h:1503
virtual void Print(FILE *cfile, int depth) const
Definition: tinyxml.cc:1470
detail::ReferenceWrapper< T > const ref(T &t)
Reference wrapper factory function.
Definition: ref.h:132
Definition: tinyxml.h:283
::std::string string
Definition: gtest-port.h:872
int ErrorId() const
Definition: tinyxml.h:1465
virtual void Print(FILE *cfile, int depth) const
Definition: tinyxml.h:1312
TiXmlElement * NextSiblingElement(const std::string &_value)
STL std::string form.
Definition: tinyxml.h:662
const TIXML_STRING & NameTStr() const
Definition: tinyxml.h:822
TiXmlAttribute * FirstAttribute()
Definition: tinyxml.h:1077
FLOAT target(const FLOAT &x)
Definition: y.cc:295
void operator=(const TiXmlDeclaration ©)
Definition: tinyxml.cc:1413
TiXmlElement * FirstChildElement(const char *_value)
Definition: tinyxml.h:673
virtual TiXmlNode * Clone() const
[internal use] Creates a new Element and returns it.
Definition: tinyxml.cc:1369
void operator=(const TiXmlDocument ©)
Definition: tinyxml.cc:917
void SetValue(const std::string &_value)
STL std::string form.
Definition: tinyxml.h:847
virtual void Print(FILE *cfile, int depth, TIXML_STRING *str) const
Definition: tinyxml.cc:1420
TiXmlAttribute * Next()
Definition: tinyxml.h:852
void ClearThis()
Definition: tinyxml.cc:543
static const char * ReadName(const char *p, TIXML_STRING *name, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:401
virtual void StreamIn(std::istream *in, TIXML_STRING *tag)
Definition: tinyxmlparser.cc:909
TiXmlNode * ReplaceChild(TiXmlNode *replaceThis, const TiXmlNode &withThis)
Definition: tinyxml.cc:290
bool SaveFile(const std::string &filename) const
< STL std::string version.
Definition: tinyxml.h:1431
const TiXmlAttribute * LastAttribute() const
Access the last attribute in this element.
Definition: tinyxml.h:1078
virtual bool VisitExit(const TiXmlElement &)
Visit an element.
Definition: tinyxml.h:143
void SetName(const char *_name)
Set the name of this attribute.
Definition: tinyxml.h:837
TiXmlNode * NextSibling()
Definition: tinyxml.h:634
void SetTabSize(int _tabsize)
Definition: tinyxml.h:1501
TiXmlDocument()
Create an empty document, that has no name.
Definition: tinyxml.cc:884
TiXmlAttribute()
Construct an empty attribute.
Definition: tinyxml.h:787
Definition: tinyxml.h:280
const int TIXML_PATCH_VERSION
Definition: tinyxml.h:97
const char * Standalone() const
Is this a standalone document?
Definition: tinyxml.h:1306
TiXmlElement * ToElement() const
Definition: tinyxml.h:1685
TiXmlElement * NextSiblingElement(const char *_next)
Definition: tinyxml.h:656
virtual ~TiXmlText()
Definition: tinyxml.h:1218
TiXmlElement * FirstChildElement()
Definition: tinyxml.h:667
virtual TiXmlDocument * ToDocument()
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:706
void ClearError()
Definition: tinyxml.h:1508
const char * Value() const
Return the value of this attribute.
Definition: tinyxml.h:814
virtual const TiXmlComment * ToComment() const
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:701
int QueryIntValue(int *_value) const
Definition: tinyxml.cc:1240
void Clear()
Definition: tinyxml.h:105
virtual void Print(FILE *cfile, int depth) const
Definition: tinyxml.cc:771
friend std::istream & operator>>(std::istream &in, TiXmlNode &base)
Definition: tinyxml.cc:1598
bool LoadFile(TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING)
Definition: tinyxml.cc:924
static const char * errorString[TIXML_ERROR_STRING_COUNT]
Definition: tinyxml.h:373
void SetValue(const char *_value)
Definition: tinyxml.h:510
int ErrorCol() const
The column where the error occured. See ErrorRow()
Definition: tinyxml.h:1475
TiXmlNode * InsertEndChild(const TiXmlNode &addThis)
Definition: tinyxml.cc:211
virtual bool VisitExit(const TiXmlDocument &doc)
Visit a document.
Definition: tinyxml.cc:1763
static void ConvertUTF32ToUTF8(unsigned long input, char *output, int *length)
Definition: tinyxmlparser.cc:88
virtual TiXmlElement * ToElement()
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1126
TiXmlNode * InsertBeforeChild(TiXmlNode *beforeThis, const TiXmlNode &addThis)
Definition: tinyxml.cc:226
Definition: tinyxml.h:167
virtual ~TiXmlDocument()
Definition: tinyxml.h:1402
TiXmlNode * PreviousSibling()
Definition: tinyxml.h:617
NodeType
Definition: tinyxml.h:464
virtual const TiXmlDeclaration * ToDeclaration() const
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:704
TiXmlAttribute * Find(const char *_name)
Definition: tinyxml.h:920
virtual bool VisitEnter(const TiXmlDocument &)
Visit a document.
Definition: tinyxml.h:136
TiXmlHandle FirstChildElement() const
Return a handle to the first child element.
Definition: tinyxml.cc:1658
TiXmlHandle ChildElement(const std::string &_value, int index) const
Definition: tinyxml.h:1677
const char * Encoding() const
Encoding. Will return an empty string if none was found.
Definition: tinyxml.h:1304
TiXmlNode * LinkEndChild(TiXmlNode *addThis)
Definition: tinyxml.cc:184
bool Blank() const
Definition: tinyxmlparser.cc:1631
const TiXmlNode * LastChild() const
Definition: tinyxml.h:533
const char * Name() const
Return the name of this attribute.
Definition: tinyxml.h:813
void SetDoubleValue(double _value)
Set the value from a double.
Definition: tinyxml.cc:1265
void * userData
Field containing a generic user pointer.
Definition: tinyxml.h:378
virtual bool Accept(TiXmlVisitor *visitor) const =0
Definition: tinyxml.h:273
TiXmlDocument * GetDocument()
Definition: tinyxml.h:692
Definition: tinyxml.h:274
void Print() const
Definition: tinyxml.h:1516
Definition: tinyxml.h:1278
const TiXmlAttribute * Last() const
Definition: tinyxml.h:916
Definition: tinyxml.h:168
static bool IsWhiteSpace(char c)
Definition: tinyxml.h:292
TiXmlCursor()
Definition: tinyxml.h:104
Definition: tinyxml.h:1347
virtual bool Visit(const TiXmlText &)
Visit a text node.
Definition: tinyxml.h:148
const TiXmlEncoding TIXML_DEFAULT_ENCODING
Definition: tinyxml.h:172
int ErrorRow() const
Definition: tinyxml.h:1474
const char * Version() const
Version. Will return an empty string if none was found.
Definition: tinyxml.h:1302
TiXmlNode * NextSibling(const char *_next)
Definition: tinyxml.h:638
TiXmlNode * FirstChild()
Definition: tinyxml.h:525
TiXmlUnknown()
Definition: tinyxml.h:1350
TiXmlHandle ChildElement(const char *value, int index) const
Definition: tinyxml.cc:1739
virtual bool Accept(TiXmlVisitor *content) const
Definition: tinyxml.cc:1484
int Column() const
See Row()
Definition: tinyxml.h:247
static bool IsWhiteSpaceCondensed()
Return the current white space setting.
Definition: tinyxml.h:226
TiXmlText(const TiXmlText ©)
Definition: tinyxml.h:1229
static const char * ReadText(const char *in, TIXML_STRING *text, bool ignoreWhiteSpace, const char *endTag, bool ignoreCase, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:574
TiXmlCursor location
Definition: tinyxml.h:375
const int TIXML_MAJOR_VERSION
Definition: tinyxml.h:95
Definition: tinyxml.h:269
void SetIndent(const char *_indent)
Definition: tinyxml.h:1754
virtual ~TiXmlUnknown()
Definition: tinyxml.h:1351
const T1 &f1 return GTEST_2_TUPLE_() T(f0, f1)
const TiXmlNode * FirstChild() const
The first child of this node. Will be null if there are no children.
Definition: tinyxml.h:524
const char * ErrorDesc() const
Contains a textual (english) description of the error if one occurs.
Definition: tinyxml.h:1460
bool LoadFile(const std::string &filename, TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING)
Definition: tinyxml.h:1425
virtual const TiXmlUnknown * ToUnknown() const
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1363
virtual TiXmlDocument * ToDocument()
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1530
const TiXmlAttribute * Next() const
Get the next sibling attribute in the DOM. Returns null at end.
Definition: tinyxml.cc:1174
Definition: tinyxml.h:276
void RemoveAttribute(const char *name)
Definition: tinyxml.cc:416
virtual TiXmlNode * Clone() const
Definition: tinyxml.cc:1138
void SetAttribute(const char *name, const char *_value)
Definition: tinyxml.cc:717
virtual const char * Parse(const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:1572
TiXmlAttribute * Last()
Definition: tinyxml.h:917
virtual void Print(FILE *cfile, int depth) const
Definition: tinyxml.cc:1335
virtual void Print(FILE *cfile, int depth) const
Definition: tinyxml.h:872
void SetCDATA(bool _cdata)
Turns on or off a CDATA representation of text.
Definition: tinyxml.h:1238
const char * Indent()
Query the indention string.
Definition: tinyxml.h:1756
Function< T, NDIM > copy(const Function< T, NDIM > &f, const std::shared_ptr< WorldDCPmapInterface< Key< NDIM > > > &pmap, bool fence=true)
Create a new copy of the function with different distribution and optional fence. ...
Definition: mra.h:1835
TiXmlElement * FirstChildElement(const std::string &_value)
STL std::string form.
Definition: tinyxml.h:679
bool SaveFile() const
Save a file using the current document value. Returns true if successful.
Definition: tinyxml.cc:933
virtual TiXmlDeclaration * ToDeclaration()
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1319
Definition: tinyxml.h:1386
const TiXmlElement * FirstChildElement() const
Convenience function to get through elements.
Definition: tinyxml.cc:431
TiXmlEncoding
Definition: tinyxml.h:165
virtual const char * Parse(const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)=0
virtual const char * Parse(const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:1274
virtual const TiXmlDeclaration * ToDeclaration() const
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1318
int row
Definition: tinyxml.h:107
int QueryDoubleValue(double *_value) const
QueryDoubleValue examines the value string. See QueryIntValue().
Definition: tinyxml.cc:1247
Definition: tinyxml.h:271
TiXmlElement(const char *in_value)
Construct an element.
Definition: tinyxml.cc:504
const TiXmlNode * LastChild(const std::string &_value) const
STL std::string form.
Definition: tinyxml.h:544
int QueryFloatAttribute(const char *name, float *_value) const
QueryFloatAttribute examines the attribute - see QueryIntAttribute().
Definition: tinyxml.h:994
Definition: tinyxml.h:275
Definition: tinyxml.h:278
const TiXmlNode * PreviousSibling() const
Navigate to a sibling node.
Definition: tinyxml.h:616
const TiXmlNode * NextSibling(const std::string &_value) const
STL std::string form.
Definition: tinyxml.h:628
const TiXmlAttribute * Find(const char *_name) const
Definition: tinyxml.cc:1575
static const char * SkipWhiteSpace(const char *, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:314
TiXmlNode * Identify(const char *start, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:818
Definition: tinyxml.h:279
TiXmlNode * InsertAfterChild(TiXmlNode *afterThis, const TiXmlNode &addThis)
Definition: tinyxml.cc:258
virtual void StreamIn(std::istream *in, TIXML_STRING *tag)
Definition: tinyxmlparser.cc:1549
static bool StreamTo(std::istream *in, int character, TIXML_STRING *tag)
Definition: tinyxmlparser.cc:380
virtual TiXmlDeclaration * ToDeclaration()
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:711
virtual const TiXmlElement * ToElement() const
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:700
Definition: tinyxml.h:284
const char * ReadValue(const char *in, TiXmlParsingData *prevData, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:1177
TiXmlHandle Child(const char *value, int index) const
Definition: tinyxml.cc:1701
void Add(TiXmlAttribute *attribute)
Definition: tinyxml.cc:1516
const std::string & ValueStr() const
Return the value of this attribute.
Definition: tinyxml.h:816
const TiXmlDocument * GetDocument() const
Definition: tinyxml.cc:491
Definition: tinyxml.h:470
bool CDATA() const
Queries whether this represents text using a CDATA section.
Definition: tinyxml.h:1236
Definition: tinyxml.h:1635
static bool IsWhiteSpace(int c)
Definition: tinyxml.h:296
virtual TiXmlComment * ToComment()
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:708
bool operator>(const TiXmlAttribute &rhs) const
Definition: tinyxml.h:864
const TiXmlNode * IterateChildren(const std::string &_value, const TiXmlNode *previous) const
STL std::string form.
Definition: tinyxml.h:576
~TiXmlAttributeSet()
Definition: tinyxml.cc:1509
static const char * GetEntity(const char *in, char *value, int *length, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:438
TiXmlText * Text() const
Definition: tinyxml.h:1704
TiXmlNode * Node() const
Definition: tinyxml.h:1696
TiXmlNode * ToNode() const
Definition: tinyxml.h:1682
const TiXmlAttribute * Previous() const
Get the previous sibling attribute in the DOM. Returns null at beginning.
Definition: tinyxml.cc:1194
static void SetCondenseWhiteSpace(bool condense)
Definition: tinyxml.h:223
bool operator<(const TiXmlAttribute &rhs) const
Definition: tinyxml.h:863
Definition: tinyxml.h:196
const TiXmlElement * NextSiblingElement() const
Definition: tinyxml.cc:461
TiXmlNode * Parent()
One step up the DOM.
Definition: tinyxml.h:521
virtual TiXmlUnknown * ToUnknown()
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:709
bool operator==(const TiXmlAttribute &rhs) const
Definition: tinyxml.h:862
virtual const char * Parse(const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:1498
virtual const TiXmlUnknown * ToUnknown() const
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:702
virtual ~TiXmlBase()
Definition: tinyxml.h:204
static bool StringEqual(const char *p, const char *endTag, bool ignoreCase, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:534
virtual bool VisitEnter(const TiXmlDocument &doc)
Visit a document.
Definition: tinyxml.cc:1758
virtual const char * Parse(const char *p, TiXmlParsingData *data=0, TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING)
Definition: tinyxmlparser.cc:704
void operator=(const TiXmlElement &base)
Definition: tinyxml.cc:530
Definition: tinyxml.h:472
TiXmlHandle operator=(const TiXmlHandle &ref)
Definition: tinyxml.h:1642
TiXmlNode * parent
Definition: tinyxml.h:757
TiXmlNode * IterateChildren(const TiXmlNode *previous)
Definition: tinyxml.h:565
int QueryIntAttribute(const char *name, int *_value) const
Definition: tinyxml.cc:643
int Row() const
Definition: tinyxml.h:246
TiXmlHandle FirstChild(const std::string &_value) const
Definition: tinyxml.h:1673
void SetError(int err, const char *errorLocation, TiXmlParsingData *prevData, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:798
TiXmlAttribute * Previous()
Definition: tinyxml.h:858
TiXmlElement * Element() const
Definition: tinyxml.h:1700
virtual bool Accept(TiXmlVisitor *content) const
Definition: tinyxml.cc:1160
TiXmlNode(NodeType _type)
Definition: tinyxml.cc:135
TiXmlElement * RootElement()
Definition: tinyxml.h:1450
static void EncodeString(const TIXML_STRING &str, TIXML_STRING *out)
Definition: tinyxml.cc:51
int QueryValueAttribute(const std::string &name, T *outValue) const
Definition: tinyxml.h:1012
void * GetUserData()
Get a pointer to arbitrary user data.
Definition: tinyxml.h:250
Definition: tinyxml.h:425
Definition: tinyxml.h:467
virtual const TiXmlText * ToText() const
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:703
void CopyTo(TiXmlNode *target) const
Definition: tinyxml.cc:160
TiXmlNode * LastChild(const std::string &_value)
STL std::string form.
Definition: tinyxml.h:545
size_t Size()
Return the length of the result string.
Definition: tinyxml.h:1774
void SetIntValue(int _value)
Set the value from an integer.
Definition: tinyxml.cc:1254
Definition: tinyxml.h:1734
TiXmlNode * PreviousSibling(const std::string &_value)
STL std::string form.
Definition: tinyxml.h:627
virtual TiXmlNode * Clone() const
Creates a copy of this Unknown and returns it.
Definition: tinyxml.cc:1490
Definition: tinyxml.h:1205
const TiXmlNode * FirstChild(const std::string &_value) const
STL std::string form.
Definition: tinyxml.h:542
TiXmlNode * next
Definition: tinyxml.h:766
virtual void StreamIn(std::istream *in, TIXML_STRING *tag)
Definition: tinyxmlparser.cc:1467
virtual bool VisitExit(const TiXmlDocument &)
Visit a document.
Definition: tinyxml.h:138
virtual bool Visit(const TiXmlComment &)
Visit a comment node.
Definition: tinyxml.h:150
Definition: tinyxml.h:281
static const char * GetChar(const char *p, char *_value, int *length, TiXmlEncoding encoding)
Definition: tinyxml.h:329
int QueryDoubleAttribute(const char *name, double *_value) const
QueryDoubleAttribute examines the attribute - see QueryIntAttribute().
Definition: tinyxml.cc:663
void operator=(const TiXmlText &base)
Definition: tinyxml.h:1230
TiXmlText(const char *initValue)
Definition: tinyxml.h:1213
const TiXmlNode * IterateChildren(const TiXmlNode *previous) const
Definition: tinyxml.cc:364
Definition: tinyxml.h:159
const char * Value() const
Definition: tinyxml.h:489
TiXmlNode * NextSibling(const std::string &_value)
STL std::string form.
Definition: tinyxml.h:629
Definition: tinyxml.h:468
void CopyTo(TiXmlText *target) const
Definition: tinyxml.cc:1356
bool NoChildren() const
Returns true if this node has no children.
Definition: tinyxml.h:697
void CopyTo(TiXmlElement *target) const
Definition: tinyxml.cc:824
Definition: tinyxml.h:270
Definition: tinyxml.h:160
virtual bool Accept(TiXmlVisitor *visitor) const
Definition: tinyxml.cc:1452
const TiXmlAttribute * FirstAttribute() const
Access the first attribute in this element.
Definition: tinyxml.h:1076
NodeType type
Definition: tinyxml.h:758
bool RemoveChild(TiXmlNode *removeThis)
Delete a child of this node.
Definition: tinyxml.cc:318
TiXmlPrinter()
Definition: tinyxml.h:1737
TIXML_STRING value
Definition: tinyxml.h:763
void RemoveAttribute(const std::string &name)
STL std::string form.
Definition: tinyxml.h:1073
void SetDocument(TiXmlDocument *doc)
Definition: tinyxml.h:879
const char * GetText() const
Definition: tinyxml.cc:871
virtual TiXmlUnknown * ToUnknown()
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1364
virtual const TiXmlDocument * ToDocument() const
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:699
void Remove(TiXmlAttribute *attribute)
Definition: tinyxml.cc:1531
void Clear()
Delete all the children of this node. Does not affect 'this'.
Definition: tinyxml.cc:167
TiXmlHandle FirstChildElement(const std::string &_value) const
Definition: tinyxml.h:1674
void SetValue(const char *_value)
Set the value.
Definition: tinyxml.h:838
const std::string & Str()
Return the result.
Definition: tinyxml.h:1778
virtual ~TiXmlDeclaration()
Definition: tinyxml.h:1299
Definition: tinyxml.h:466
const TiXmlNode * NextSibling() const
Navigate to a sibling node.
Definition: tinyxml.h:633
virtual TiXmlText * ToText()
Cast to a more defined type. Will return null not of the requested type.
Definition: tinyxml.h:1243
TiXmlAttribute * LastAttribute()
Definition: tinyxml.h:1079
TiXmlNode * lastChild
Definition: tinyxml.h:761
TiXmlText * ToText() const
Definition: tinyxml.h:1688
TiXmlDeclaration()
Construct an empty declaration.
Definition: tinyxml.h:1282
void SetStreamPrinting()
Definition: tinyxml.h:1768
static int IsAlpha(unsigned char anyByte, TiXmlEncoding encoding)
Definition: tinyxmlparser.cc:129
const double c
Definition: gfit.cc:200
const char * Attribute(const char *name) const
Definition: tinyxml.cc:555
TiXmlAttribute * First()
Definition: tinyxml.h:915
virtual void Print(FILE *cfile, int depth) const =0
virtual ~TiXmlNode()
Definition: tinyxml.cc:146
virtual bool Accept(TiXmlVisitor *content) const
Definition: tinyxml.cc:1363
virtual TiXmlNode * Clone() const =0
Definition: tinyxml.h:272
static bool StreamWhiteSpace(std::istream *in, TIXML_STRING *tag)
Definition: tinyxmlparser.cc:365
const TiXmlElement * NextSiblingElement(const std::string &_value) const
STL std::string form.
Definition: tinyxml.h:661
virtual bool Visit(const TiXmlDeclaration &declaration)
Visit a declaration.
Definition: tinyxml.cc:1859
void CopyTo(TiXmlDeclaration *target) const
Definition: tinyxml.cc:1442
TiXmlUnknown * ToUnknown() const
Definition: tinyxml.h:1691
const TiXmlNode * PreviousSibling(const std::string &_value) const
STL std::string form.
Definition: tinyxml.h:626
const char * CStr()
Return the result.
Definition: tinyxml.h:1772
virtual TiXmlText * ToText()
Cast to a more defined type. Will return null if not of the requested type.
Definition: tinyxml.h:710
Definition: tinyxml.h:282
#define TIXML_STRING
Definition: tinyxml.h:51
const int TIXML_MINOR_VERSION
Definition: tinyxml.h:96
Definition: tinyxml.h:945
Definition: tinyxml.h:277
virtual bool VisitEnter(const TiXmlElement &, const TiXmlAttribute *)
Visit an element.
Definition: tinyxml.h:141
TiXmlBase()
Definition: tinyxml.h:203
Definition: tinyxml.h:169
virtual bool Visit(const TiXmlDeclaration &)
Visit a declaration.
Definition: tinyxml.h:146
TiXmlAttribute * Find(const std::string &_name)
Definition: tinyxml.h:925