FEDRA emulsion software from the OPERA Collaboration
TiXmlText Class Reference

#include <tinyxml.h>

Inheritance diagram for TiXmlText:
Collaboration diagram for TiXmlText:

Public Member Functions

virtual bool Accept (TiXmlVisitor *content) const
 
bool CDATA () const
 Queries whether this represents text using a CDATA section. More...
 
TiXmlTextoperator= (const TiXmlText &base)
 
virtual const char * Parse (const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)
 
virtual void Print (FILE *cfile, int depth) const
 
void SetCDATA (bool _cdata)
 Turns on or off a CDATA representation of text. More...
 
 TiXmlText (const char *initValue)
 
 TiXmlText (const TiXmlText &copy)
 
virtual TiXmlTextToText ()
 Cast to a more defined type. Will return null not of the requested type. More...
 
virtual const TiXmlTextToText () const
 Cast to a more defined type. Will return null not of the requested type. More...
 
virtual ~TiXmlText ()
 
- Public Member Functions inherited from TiXmlNode
virtual bool Accept (TiXmlVisitor *visitor) const =0
 
void Clear ()
 Delete all the children of this node. Does not affect 'this'. More...
 
virtual TiXmlNodeClone () const =0
 
TiXmlNodeFirstChild ()
 
const TiXmlNodeFirstChild () const
 The first child of this node. Will be null if there are no children. More...
 
TiXmlNodeFirstChild (const char *_value)
 The first child of this node with the matching 'value'. Will be null if none found. More...
 
const TiXmlNodeFirstChild (const char *value) const
 
TiXmlElementFirstChildElement ()
 
const TiXmlElementFirstChildElement () const
 Convenience function to get through elements. More...
 
TiXmlElementFirstChildElement (const char *_value)
 
const TiXmlElementFirstChildElement (const char *_value) const
 Convenience function to get through elements. More...
 
TiXmlDocumentGetDocument ()
 
const TiXmlDocumentGetDocument () const
 
TiXmlNodeInsertAfterChild (TiXmlNode *afterThis, const TiXmlNode &addThis)
 
TiXmlNodeInsertBeforeChild (TiXmlNode *beforeThis, const TiXmlNode &addThis)
 
TiXmlNodeInsertEndChild (const TiXmlNode &addThis)
 
TiXmlNodeIterateChildren (const char *_value, const TiXmlNode *previous)
 
const TiXmlNodeIterateChildren (const char *value, const TiXmlNode *previous) const
 This flavor of IterateChildren searches for children with a particular 'value'. More...
 
TiXmlNodeIterateChildren (const TiXmlNode *previous)
 
const TiXmlNodeIterateChildren (const TiXmlNode *previous) const
 
TiXmlNodeLastChild ()
 The last child of this node. Will be null if there are no children. More...
 
const TiXmlNodeLastChild () const
 
TiXmlNodeLastChild (const char *_value)
 The last child of this node matching 'value'. Will be null if there are no children. More...
 
const TiXmlNodeLastChild (const char *value) const
 
TiXmlNodeLinkEndChild (TiXmlNode *addThis)
 
TiXmlNodeNextSibling ()
 
const TiXmlNodeNextSibling () const
 Navigate to a sibling node. More...
 
const TiXmlNodeNextSibling (const char *) const
 Navigate to a sibling node with the given 'value'. More...
 
TiXmlNodeNextSibling (const char *_next)
 
TiXmlElementNextSiblingElement ()
 
const TiXmlElementNextSiblingElement () const
 
const TiXmlElementNextSiblingElement (const char *) const
 
TiXmlElementNextSiblingElement (const char *_next)
 
bool NoChildren () const
 Returns true if this node has no children. More...
 
TiXmlNodeParent ()
 One step up the DOM. More...
 
const TiXmlNodeParent () const
 
TiXmlNodePreviousSibling ()
 
const TiXmlNodePreviousSibling () const
 Navigate to a sibling node. More...
 
const TiXmlNodePreviousSibling (const char *) const
 Navigate to a sibling node. More...
 
TiXmlNodePreviousSibling (const char *_prev)
 
bool RemoveChild (TiXmlNode *removeThis)
 Delete a child of this node. More...
 
TiXmlNodeReplaceChild (TiXmlNode *replaceThis, const TiXmlNode &withThis)
 
void SetValue (const char *_value)
 
virtual TiXmlCommentToComment ()
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual const TiXmlCommentToComment () const
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual TiXmlDeclarationToDeclaration ()
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual const TiXmlDeclarationToDeclaration () const
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual TiXmlDocumentToDocument ()
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual const TiXmlDocumentToDocument () const
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual TiXmlElementToElement ()
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual const TiXmlElementToElement () const
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual TiXmlTextToText ()
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual const TiXmlTextToText () const
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual TiXmlUnknownToUnknown ()
 Cast to a more defined type. Will return null if not of the requested type. More...
 
virtual const TiXmlUnknownToUnknown () const
 Cast to a more defined type. Will return null if not of the requested type. More...
 
int Type () const
 
const char * Value () const
 
const TIXML_STRINGValueTStr () const
 
virtual ~TiXmlNode ()
 
- Public Member Functions inherited from TiXmlBase
int Column () const
 See Row() More...
 
voidGetUserData ()
 Get a pointer to arbitrary user data. More...
 
const voidGetUserData () const
 Get a pointer to arbitrary user data. More...
 
virtual const char * Parse (const char *p, TiXmlParsingData *data, TiXmlEncoding encoding)=0
 
virtual void Print (FILE *cfile, int depth) const =0
 
int Row () const
 
void SetUserData (void *user)
 Set a pointer to arbitrary user data. More...
 
 TiXmlBase ()
 
virtual ~TiXmlBase ()
 

Protected Member Functions

bool Blank () const
 
virtual TiXmlNodeClone () const
 [internal use] Creates a new Element and returns it. More...
 
void CopyTo (TiXmlText *target) const
 
- Protected Member Functions inherited from TiXmlNode
void CopyTo (TiXmlNode *target) const
 
TiXmlNodeIdentify (const char *start, TiXmlEncoding encoding)
 
 TiXmlNode (NodeType _type)
 

Private Attributes

bool cdata
 

Friends

class TiXmlElement
 

Additional Inherited Members

- Public Types inherited from TiXmlNode
enum  NodeType {
  TINYXML_DOCUMENT , TINYXML_ELEMENT , TINYXML_COMMENT , TINYXML_UNKNOWN ,
  TINYXML_TEXT , TINYXML_DECLARATION , TINYXML_TYPECOUNT
}
 
- Public Types inherited from TiXmlBase
enum  {
  TIXML_NO_ERROR = 0 , TIXML_ERROR , TIXML_ERROR_OPENING_FILE , TIXML_ERROR_PARSING_ELEMENT ,
  TIXML_ERROR_FAILED_TO_READ_ELEMENT_NAME , TIXML_ERROR_READING_ELEMENT_VALUE , TIXML_ERROR_READING_ATTRIBUTES , TIXML_ERROR_PARSING_EMPTY ,
  TIXML_ERROR_READING_END_TAG , TIXML_ERROR_PARSING_UNKNOWN , TIXML_ERROR_PARSING_COMMENT , TIXML_ERROR_PARSING_DECLARATION ,
  TIXML_ERROR_DOCUMENT_EMPTY , TIXML_ERROR_EMBEDDED_NULL , TIXML_ERROR_PARSING_CDATA , TIXML_ERROR_DOCUMENT_TOP_ONLY ,
  TIXML_ERROR_STRING_COUNT
}
 
- Static Public Member Functions inherited from TiXmlBase
static void EncodeString (const TIXML_STRING &str, TIXML_STRING *out)
 
static bool IsWhiteSpaceCondensed ()
 Return the current white space setting. More...
 
static void SetCondenseWhiteSpace (bool condense)
 
- Static Public Attributes inherited from TiXmlBase
static const int utf8ByteTable [256]
 
- Static Protected Member Functions inherited from TiXmlBase
static void ConvertUTF32ToUTF8 (unsigned long input, char *output, int *length)
 
static const char * GetChar (const char *p, char *_value, int *length, TiXmlEncoding encoding)
 
static const char * GetEntity (const char *in, char *value, int *length, TiXmlEncoding encoding)
 
static int IsAlpha (unsigned char anyByte, TiXmlEncoding encoding)
 
static int IsAlphaNum (unsigned char anyByte, TiXmlEncoding encoding)
 
static bool IsWhiteSpace (char c)
 
static bool IsWhiteSpace (int c)
 
static const char * ReadName (const char *p, TIXML_STRING *name, TiXmlEncoding encoding)
 
static const char * ReadText (const char *in, TIXML_STRING *text, bool ignoreWhiteSpace, const char *endTag, bool ignoreCase, TiXmlEncoding encoding)
 
static const char * SkipWhiteSpace (const char *, TiXmlEncoding encoding)
 
static bool StringEqual (const char *p, const char *endTag, bool ignoreCase, TiXmlEncoding encoding)
 
static int ToLower (int v, TiXmlEncoding encoding)
 
- Protected Attributes inherited from TiXmlNode
TiXmlNodefirstChild
 
TiXmlNodelastChild
 
TiXmlNodenext
 
TiXmlNodeparent
 
TiXmlNodeprev
 
NodeType type
 
TIXML_STRING value
 
- Protected Attributes inherited from TiXmlBase
TiXmlCursor location
 
voiduserData
 Field containing a generic user pointer. More...
 
- Static Protected Attributes inherited from TiXmlBase
static const char * errorString [TIXML_ERROR_STRING_COUNT]
 

Detailed Description

XML text. A text node can have 2 ways to output the next. "normal" output and CDATA. It will default to the mode it was parsed from the XML file and you generally want to leave it alone, but you can change the output mode with SetCDATA() and query it with CDATA().

Constructor & Destructor Documentation

◆ TiXmlText() [1/2]

TiXmlText::TiXmlText ( const char *  initValue)
inline

Constructor for text element. By default, it is treated as normal, encoded text. If you want it be output as a CDATA text element, set the parameter _cdata to 'true'

1221 {
1222 SetValue( initValue );
1223 cdata = false;
1224 }
friend class TiXmlNode
Definition: tinyxml.h:196
void SetValue(const char *_value)
Definition: tinyxml.h:508
@ TINYXML_TEXT
Definition: tinyxml.h:468
bool cdata
Definition: tinyxml.h:1268

◆ ~TiXmlText()

virtual TiXmlText::~TiXmlText ( )
inlinevirtual
1225{}

◆ TiXmlText() [2/2]

TiXmlText::TiXmlText ( const TiXmlText copy)
inline
1236: TiXmlNode( TiXmlNode::TINYXML_TEXT ) { copy.CopyTo( this ); }
void CopyTo(TiXmlText *target) const
Definition: tinyxml.cpp:1353

Member Function Documentation

◆ Accept()

bool TiXmlText::Accept ( TiXmlVisitor content) const
virtual

Walk the XML tree visiting this node and all of its children.

Implements TiXmlNode.

1361{
1362 return visitor->Visit( *this );
1363}

◆ Blank()

bool TiXmlText::Blank ( ) const
protected
1632{
1633 for ( unsigned i=0; i<value.length(); i++ )
1634 if ( !IsWhiteSpace( value[i] ) )
1635 return false;
1636 return true;
1637}
static bool IsWhiteSpace(char c)
Definition: tinyxml.h:290
TIXML_STRING value
Definition: tinyxml.h:761

◆ CDATA()

bool TiXmlText::CDATA ( ) const
inline

Queries whether this represents text using a CDATA section.

1243{ return cdata; }

◆ Clone()

TiXmlNode * TiXmlText::Clone ( ) const
protectedvirtual

[internal use] Creates a new Element and returns it.

Implements TiXmlNode.

1367{
1368 TiXmlText* clone = 0;
1369 clone = new TiXmlText( "" );
1370
1371 if ( !clone )
1372 return 0;
1373
1374 CopyTo( clone );
1375 return clone;
1376}
Definition: tinyxml.h:1213
TiXmlText(const char *initValue)
Definition: tinyxml.h:1220

◆ CopyTo()

void TiXmlText::CopyTo ( TiXmlText target) const
protected
1354{
1355 TiXmlNode::CopyTo( target );
1356 target->cdata = cdata;
1357}
void CopyTo(TiXmlNode *target) const
Definition: tinyxml.cpp:161

◆ operator=()

TiXmlText & TiXmlText::operator= ( const TiXmlText base)
inline
1237{ base.CopyTo( this ); return *this; }

◆ Parse()

const char * TiXmlText::Parse ( const char *  p,
TiXmlParsingData data,
TiXmlEncoding  encoding 
)
virtual

Implements TiXmlBase.

1498{
1499 value = "";
1500 TiXmlDocument* document = GetDocument();
1501
1502 if ( data )
1503 {
1504 data->Stamp( p, encoding );
1505 location = data->Cursor();
1506 }
1507
1508 const char* const startTag = "<![CDATA[";
1509 const char* const endTag = "]]>";
1510
1511 if ( cdata || StringEqual( p, startTag, false, encoding ) )
1512 {
1513 cdata = true;
1514
1515 if ( !StringEqual( p, startTag, false, encoding ) )
1516 {
1517 if ( document )
1518 document->SetError( TIXML_ERROR_PARSING_CDATA, p, data, encoding );
1519 return 0;
1520 }
1521 p += strlen( startTag );
1522
1523 // Keep all the white space, ignore the encoding, etc.
1524 while ( p && *p
1525 && !StringEqual( p, endTag, false, encoding )
1526 )
1527 {
1528 value += *p;
1529 ++p;
1530 }
1531
1533 p = ReadText( p, &dummy, false, endTag, false, encoding );
1534 return p;
1535 }
1536 else
1537 {
1538 bool ignoreWhite = true;
1539
1540 const char* end = "<";
1541 p = ReadText( p, &value, ignoreWhite, end, false, encoding );
1542 if ( p && *p )
1543 return p-1; // don't truncate the '<'
1544 return 0;
1545 }
1546}
TiXmlCursor location
Definition: tinyxml.h:373
static bool StringEqual(const char *p, const char *endTag, bool ignoreCase, TiXmlEncoding encoding)
Definition: tinyxmlparser.cpp:534
@ TIXML_ERROR_PARSING_CDATA
Definition: tinyxml.h:280
static const char * ReadText(const char *in, TIXML_STRING *text, bool ignoreWhiteSpace, const char *endTag, bool ignoreCase, TiXmlEncoding encoding)
Definition: tinyxmlparser.cpp:574
Definition: tinyxml.h:1394
void SetError(int err, const char *errorLocation, TiXmlParsingData *prevData, TiXmlEncoding encoding)
Definition: tinyxmlparser.cpp:798
const TiXmlDocument * GetDocument() const
Definition: tinyxml.cpp:512
void Stamp(const char *now, TiXmlEncoding encoding)
Definition: tinyxmlparser.cpp:196
const TiXmlCursor & Cursor() const
Definition: tinyxmlparser.cpp:177
Int_t dummy
Definition: merge_Energy_SytematicSources_Electron.C:7
p
Definition: testBGReduction_AllMethods.C:8
#define TIXML_STRING
Definition: tinyxml.h:53

◆ Print()

void TiXmlText::Print ( FILE *  cfile,
int  depth 
) const
virtual

All TinyXml classes can print themselves to a filestream or the string class (TiXmlString in non-STL mode, std::string in STL mode.) Either or both cfile and str can be null.

This is a formatted print, and will insert tabs and newlines.

(For an unformatted stream, use the << operator.)

Implements TiXmlBase.

1333{
1334 assert( cfile );
1335 if ( cdata )
1336 {
1337 int i;
1338 fprintf( cfile, "\n" );
1339 for ( i=0; i<depth; i++ ) {
1340 fprintf( cfile, " " );
1341 }
1342 fprintf( cfile, "<![CDATA[%s]]>\n", value.c_str() ); // unformatted output
1343 }
1344 else
1345 {
1346 TIXML_STRING buffer;
1347 EncodeString( value, &buffer );
1348 fprintf( cfile, "%s", buffer.c_str() );
1349 }
1350}
static void EncodeString(const TIXML_STRING &str, TIXML_STRING *out)
Definition: tinyxml.cpp:52

◆ SetCDATA()

void TiXmlText::SetCDATA ( bool  _cdata)
inline

Turns on or off a CDATA representation of text.

1245{ cdata = _cdata; }

◆ ToText() [1/2]

virtual TiXmlText * TiXmlText::ToText ( )
inlinevirtual

Cast to a more defined type. Will return null not of the requested type.

Reimplemented from TiXmlNode.

◆ ToText() [2/2]

virtual const TiXmlText * TiXmlText::ToText ( ) const
inlinevirtual

Cast to a more defined type. Will return null not of the requested type.

Reimplemented from TiXmlNode.

Friends And Related Function Documentation

◆ TiXmlElement

friend class TiXmlElement
friend

Member Data Documentation

◆ cdata

bool TiXmlText::cdata
private

The documentation for this class was generated from the following files: