Back to Jetson Inference

Jetson Inference: tinyxml2::XMLDocument Class Reference

docs/html/classtinyxml2_1_1XMLDocument.html

latest36.1 KB
Original Source

| | Jetson Inference

DNN Vision Library |

Classes | Public Member Functions | Static Public Member Functions | Friends | List of all members

tinyxml2::XMLDocument Class Reference

A Document binds together all the functionality. More...

#include <xml.h>

Inheritance diagram for tinyxml2::XMLDocument:

|

Public Member Functions

| | | XMLDocument (bool processEntities=true, Whitespace whitespaceMode=PRESERVE_WHITESPACE) | | | constructor More...
| | | | | ~XMLDocument () | | | | virtual XMLDocument * | ToDocument () | | | Safely cast to a Document, or null. More...
| | | | virtual const XMLDocument * | ToDocument () const | | | | XMLError | Parse (const char *xml, size_t nBytes=(size_t)(-1)) | | | Parse an XML file from a character string. More...
| | | | XMLError | LoadFile (const char *filename) | | | Load an XML file from disk. More...
| | | | XMLError | LoadFile (FILE *) | | | Load an XML file from disk. More...
| | | | XMLError | SaveFile (const char *filename, bool compact=false) | | | Save the XML file to disk. More...
| | | | XMLError | SaveFile (FILE *fp, bool compact=false) | | | Save the XML file to disk. More...
| | | | bool | ProcessEntities () const | | | | Whitespace | WhitespaceMode () const | | | | bool | HasBOM () const | | | Returns true if this document has a leading Byte Order Mark of UTF8. More...
| | | | void | SetBOM (bool useBOM) | | | Sets whether to write the BOM when writing the file. More...
| | | | XMLElement * | RootElement () | | | Return the root element of DOM. More...
| | | | const XMLElement * | RootElement () const | | | | void | Print (XMLPrinter *streamer=0) const | | | Print the Document. More...
| | | | virtual bool | Accept (XMLVisitor *visitor) const | | | Accept a hierarchical visit of the nodes in the TinyXML-2 DOM. More...
| | | | XMLElement * | NewElement (const char *name) | | | Create a new Element associated with this Document. More...
| | | | XMLComment * | NewComment (const char *comment) | | | Create a new Comment associated with this Document. More...
| | | | XMLText * | NewText (const char *text) | | | Create a new Text associated with this Document. More...
| | | | XMLDeclaration * | NewDeclaration (const char *text=0) | | | Create a new Declaration associated with this Document. More...
| | | | XMLUnknown * | NewUnknown (const char *text) | | | Create a new Unknown associated with this Document. More...
| | | | void | DeleteNode (XMLNode *node) | | | Delete a node associated with this document. More...
| | | | void | ClearError () | | | | bool | Error () const | | | Return true if there was an error parsing the document. More...
| | | | XMLError | ErrorID () const | | | Return the errorID. More...
| | | | const char * | ErrorName () const | | | | const char * | ErrorStr () const | | | Returns a "long form" error description. More...
| | | | void | PrintError () const | | | A (trivial) utility function that prints the [ErrorStr()](classtinyxml2_1_1XMLDocument.html#ad75aa9d32c4e8b300655186808aa9abf "Returns a "long form" error description.") to stdout. More...
| | | | int | ErrorLineNum () const | | | Return the line where the error occured, or zero if unknown. More...
| | | | void | Clear () | | | Clear the document, resetting it to the initial state. More...
| | | | void | DeepCopy (XMLDocument *target) const | | | Copies this document to a target document. More...
| | | | char * | Identify (char *p, XMLNode **node) | | | | void | MarkInUse (XMLNode *) | | | | virtual XMLNode * | ShallowClone (XMLDocument *) const | | | Make a copy of this node, but not its children. More...
| | | | virtual bool | ShallowEqual (const XMLNode *) const | | | Test if 2 nodes are the same, but don't test children. More...
| | | | Public Member Functions inherited from tinyxml2::XMLNode | | const XMLDocument * | GetDocument () const | | | Get the XMLDocument that owns this XMLNode. More...
| | | | XMLDocument * | GetDocument () | | | Get the XMLDocument that owns this XMLNode. More...
| | | | virtual XMLElement * | ToElement () | | | Safely cast to an Element, or null. More...
| | | | virtual XMLText * | ToText () | | | Safely cast to Text, or null. More...
| | | | virtual XMLComment * | ToComment () | | | Safely cast to a Comment, or null. More...
| | | | virtual XMLDeclaration * | ToDeclaration () | | | Safely cast to a Declaration, or null. More...
| | | | virtual XMLUnknown * | ToUnknown () | | | Safely cast to an Unknown, or null. More...
| | | | virtual const XMLElement * | ToElement () const | | | | virtual const XMLText * | ToText () const | | | | virtual const XMLComment * | ToComment () const | | | | virtual const XMLDeclaration * | ToDeclaration () const | | | | virtual const XMLUnknown * | ToUnknown () const | | | | const char * | Value () const | | | The meaning of 'value' changes for the specific type. More...
| | | | void | SetValue (const char *val, bool staticMem=false) | | | Set the Value of an XML node. More...
| | | | int | GetLineNum () const | | | Gets the line number the node is in, if the document was parsed from a file. More...
| | | | const XMLNode * | Parent () const | | | Get the parent of this node on the DOM. More...
| | | | XMLNode * | Parent () | | | | bool | NoChildren () const | | | Returns true if this node has no children. More...
| | | | const XMLNode * | FirstChild () const | | | Get the first child node, or null if none exists. More...
| | | | XMLNode * | FirstChild () | | | | const XMLElement * | FirstChildElement (const char *name=0) const | | | Get the first child element, or optionally the first child element with the specified name. More...
| | | | XMLElement * | FirstChildElement (const char *name=0) | | | | const XMLNode * | LastChild () const | | | Get the last child node, or null if none exists. More...
| | | | XMLNode * | LastChild () | | | | const XMLElement * | LastChildElement (const char *name=0) const | | | Get the last child element or optionally the last child element with the specified name. More...
| | | | XMLElement * | LastChildElement (const char *name=0) | | | | const XMLNode * | PreviousSibling () const | | | Get the previous (left) sibling node of this node. More...
| | | | XMLNode * | PreviousSibling () | | | | const XMLElement * | PreviousSiblingElement (const char *name=0) const | | | Get the previous (left) sibling element of this node, with an optionally supplied name. More...
| | | | XMLElement * | PreviousSiblingElement (const char *name=0) | | | | const XMLNode * | NextSibling () const | | | Get the next (right) sibling node of this node. More...
| | | | XMLNode * | NextSibling () | | | | const XMLElement * | NextSiblingElement (const char *name=0) const | | | Get the next (right) sibling element of this node, with an optionally supplied name. More...
| | | | XMLElement * | NextSiblingElement (const char *name=0) | | | | XMLNode * | InsertEndChild (XMLNode *addThis) | | | Add a child node as the last (right) child. More...
| | | | XMLNode * | LinkEndChild (XMLNode *addThis) | | | | XMLNode * | InsertFirstChild (XMLNode *addThis) | | | Add a child node as the first (left) child. More...
| | | | XMLNode * | InsertAfterChild (XMLNode *afterThis, XMLNode *addThis) | | | Add a node after the specified child node. More...
| | | | void | DeleteChildren () | | | Delete all the children of this node. More...
| | | | void | DeleteChild (XMLNode *node) | | | Delete a child of this node. More...
| | | | XMLNode * | DeepClone (XMLDocument *target) const | | | | void | SetUserData (void *userData) | | | Set user data into the XMLNode. More...
| | | | void * | GetUserData () const | | | Get user data set into the XMLNode. More...
| | |

|

Static Public Member Functions

| | static const char * | ErrorIDToName (XMLError errorID) | | |

|

Friends

| | class | XMLElement | | | | class | XMLNode | | | | class | XMLText | | | | class | XMLComment | | | | class | XMLDeclaration | | | | class | XMLUnknown | | |

|

Additional Inherited Members

| | Protected Member Functions inherited from tinyxml2::XMLNode | | | XMLNode (XMLDocument *) | | | | virtual | ~XMLNode () | | | | virtual char * | ParseDeep (char *p, StrPair *parentEndTag, int *curLineNumPtr) | | | | Protected Attributes inherited from tinyxml2::XMLNode | | XMLDocument * | _document | | | | XMLNode * | _parent | | | | StrPair | _value | | | | int | _parseLineNum | | | | XMLNode * | _firstChild | | | | XMLNode * | _lastChild | | | | XMLNode * | _prev | | | | XMLNode * | _next | | | | void * | _userData | | |

Detailed Description

A Document binds together all the functionality.

It can be saved, loaded, and printed to the screen. All Nodes are connected and allocated to a Document. If the Document is deleted, all its Nodes are also deleted.

Constructor & Destructor Documentation

XMLDocument()

| tinyxml2::XMLDocument::XMLDocument | ( | bool | processEntities = true, | | | | Whitespace | whitespaceMode = PRESERVE_WHITESPACE | | | ) | | |

constructor

~XMLDocument()

| tinyxml2::XMLDocument::~XMLDocument | ( | | ) | |

Member Function Documentation

Accept()

|

| virtual bool tinyxml2::XMLDocument::Accept | ( | XMLVisitor * | visitor | ) | const |

| virtual |

Accept a hierarchical visit of the nodes in the TinyXML-2 DOM.

Every node in the XML tree will be conditionally visited and the host will be called back via the [XMLVisitor](classtinyxml2_1_1XMLVisitor.html "Implements the interface to the "Visitor pattern" (see the Accept() method.) If you call the Accept()...") interface.

This is essentially a SAX interface for TinyXML-2. (Note however it doesn't re-parse the XML for the callbacks, so the performance of TinyXML-2 is unchanged by using this interface versus any other.)

The interface has been based on ideas from:

Which are both good references for "visiting".

An example of using Accept():

XMLPrinter printer;
tinyxmlDoc.Accept( &printer );
const char* xmlcstr = printer.CStr();

Implements tinyxml2::XMLNode.

Clear()

| void tinyxml2::XMLDocument::Clear | ( | | ) | |

Clear the document, resetting it to the initial state.

ClearError()

|

| void tinyxml2::XMLDocument::ClearError | ( | | ) | |

| inline |

DeepCopy()

| void tinyxml2::XMLDocument::DeepCopy | ( | XMLDocument * | target | ) | const |

Copies this document to a target document.

The target will be completely cleared before the copy. If you want to copy a sub-tree, see XMLNode::DeepClone().

NOTE: that the 'target' must be non-null.

DeleteNode()

| void tinyxml2::XMLDocument::DeleteNode | ( | XMLNode * | node | ) | |

Delete a node associated with this document.

It will be unlinked from the DOM.

Error()

|

| bool tinyxml2::XMLDocument::Error | ( | | ) | const |

| inline |

Return true if there was an error parsing the document.

ErrorID()

|

| XMLError tinyxml2::XMLDocument::ErrorID | ( | | ) | const |

| inline |

Return the errorID.

ErrorIDToName()

|

| static const char* tinyxml2::XMLDocument::ErrorIDToName | ( | XMLError | errorID | ) | |

| static |

ErrorLineNum()

|

| int tinyxml2::XMLDocument::ErrorLineNum | ( | | ) | const |

| inline |

Return the line where the error occured, or zero if unknown.

ErrorName()

| const char* tinyxml2::XMLDocument::ErrorName | ( | | ) | const |

ErrorStr()

| const char* tinyxml2::XMLDocument::ErrorStr | ( | | ) | const |

Returns a "long form" error description.

A hopefully helpful diagnostic with location, line number, and/or additional info.

HasBOM()

|

| bool tinyxml2::XMLDocument::HasBOM | ( | | ) | const |

| inline |

Returns true if this document has a leading Byte Order Mark of UTF8.

Identify()

| char* tinyxml2::XMLDocument::Identify | ( | char * | p, | | | | XMLNode ** | node | | | ) | | |

LoadFile() [1/2]

| XMLError tinyxml2::XMLDocument::LoadFile | ( | const char * | filename | ) | |

Load an XML file from disk.

Returns XML_SUCCESS (0) on success, or an errorID.

LoadFile() [2/2]

| XMLError tinyxml2::XMLDocument::LoadFile | ( | FILE * | | ) | |

Load an XML file from disk.

You are responsible for providing and closing the FILE*.

NOTE: The file should be opened as binary ("rb") not text in order for TinyXML-2 to correctly do newline normalization.

Returns XML_SUCCESS (0) on success, or an errorID.

MarkInUse()

| void tinyxml2::XMLDocument::MarkInUse | ( | XMLNode * | | ) | |

NewComment()

| XMLComment* tinyxml2::XMLDocument::NewComment | ( | const char * | comment | ) | |

Create a new Comment associated with this Document.

The memory for the Comment is managed by the Document.

NewDeclaration()

| XMLDeclaration* tinyxml2::XMLDocument::NewDeclaration | ( | const char * | text = 0 | ) | |

Create a new Declaration associated with this Document.

The memory for the object is managed by the Document.

If the 'text' param is null, the standard declaration is used.:

<?xml version="1.0" encoding="UTF-8"?>

NewElement()

| XMLElement* tinyxml2::XMLDocument::NewElement | ( | const char * | name | ) | |

Create a new Element associated with this Document.

The memory for the Element is managed by the Document.

NewText()

| XMLText* tinyxml2::XMLDocument::NewText | ( | const char * | text | ) | |

Create a new Text associated with this Document.

The memory for the Text is managed by the Document.

NewUnknown()

| XMLUnknown* tinyxml2::XMLDocument::NewUnknown | ( | const char * | text | ) | |

Create a new Unknown associated with this Document.

The memory for the object is managed by the Document.

Parse()

| XMLError tinyxml2::XMLDocument::Parse | ( | const char * | xml, | | | | size_t | nBytes = (size_t)(-1) | | | ) | | |

Parse an XML file from a character string.

Returns XML_SUCCESS (0) on success, or an errorID.

You may optionally pass in the 'nBytes', which is the number of bytes which will be parsed. If not specified, TinyXML-2 will assume 'xml' points to a null terminated string.

Print()

| void tinyxml2::XMLDocument::Print | ( | XMLPrinter * | streamer = 0 | ) | const |

Print the Document.

If the Printer is not provided, it will print to stdout. If you provide Printer, this can print to a file:

XMLPrinter printer( fp );
doc.Print( &printer );

Or you can use a printer to print to memory:

XMLPrinter printer;
doc.Print( &printer );
// printer.CStr() has a const char* to the XML

PrintError()

| void tinyxml2::XMLDocument::PrintError | ( | | ) | const |

A (trivial) utility function that prints the [ErrorStr()](classtinyxml2_1_1XMLDocument.html#ad75aa9d32c4e8b300655186808aa9abf "Returns a "long form" error description.") to stdout.

ProcessEntities()

|

| bool tinyxml2::XMLDocument::ProcessEntities | ( | | ) | const |

| inline |

RootElement() [1/2]

|

| XMLElement* tinyxml2::XMLDocument::RootElement | ( | | ) | |

| inline |

Return the root element of DOM.

Equivalent to FirstChildElement(). To get the first node, use FirstChild().

RootElement() [2/2]

|

| const XMLElement* tinyxml2::XMLDocument::RootElement | ( | | ) | const |

| inline |

SaveFile() [1/2]

| XMLError tinyxml2::XMLDocument::SaveFile | ( | const char * | filename, | | | | bool | compact = false | | | ) | | |

Save the XML file to disk.

Returns XML_SUCCESS (0) on success, or an errorID.

SaveFile() [2/2]

| XMLError tinyxml2::XMLDocument::SaveFile | ( | FILE * | fp, | | | | bool | compact = false | | | ) | | |

Save the XML file to disk.

You are responsible for providing and closing the FILE*.

Returns XML_SUCCESS (0) on success, or an errorID.

SetBOM()

|

| void tinyxml2::XMLDocument::SetBOM | ( | bool | useBOM | ) | |

| inline |

Sets whether to write the BOM when writing the file.

ShallowClone()

|

| virtual XMLNode* tinyxml2::XMLDocument::ShallowClone | ( | XMLDocument * | document | ) | const |

| inlinevirtual |

Make a copy of this node, but not its children.

You may pass in a Document pointer that will be the owner of the new Node. If the 'document' is null, then the node returned will be allocated from the current Document. (this->GetDocument())

Note: if called on a XMLDocument, this will return null.

Implements tinyxml2::XMLNode.

ShallowEqual()

|

| virtual bool tinyxml2::XMLDocument::ShallowEqual | ( | const XMLNode * | compare | ) | const |

| inlinevirtual |

Test if 2 nodes are the same, but don't test children.

The 2 nodes do not need to be in the same Document.

Note: if called on a XMLDocument, this will return false.

Implements tinyxml2::XMLNode.

ToDocument() [1/2]

|

| virtual XMLDocument* tinyxml2::XMLDocument::ToDocument | ( | | ) | |

| inlinevirtual |

Safely cast to a Document, or null.

Reimplemented from tinyxml2::XMLNode.

ToDocument() [2/2]

|

| virtual const XMLDocument* tinyxml2::XMLDocument::ToDocument | ( | | ) | const |

| inlinevirtual |

Reimplemented from tinyxml2::XMLNode.

WhitespaceMode()

|

| Whitespace tinyxml2::XMLDocument::WhitespaceMode | ( | | ) | const |

| inline |

XMLComment

|

| friend class XMLComment |

| friend |

XMLDeclaration

|

| friend class XMLDeclaration |

| friend |

XMLElement

|

| friend class XMLElement |

| friend |

XMLNode

|

| friend class XMLNode |

| friend |

XMLText

|

| friend class XMLText |

| friend |

XMLUnknown

|

| friend class XMLUnknown |

| friend |


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