Marlin
01.17.01
|
Print to memory functionality. More...
#include <tinyxml.h>
Public Member Functions | |
TiXmlPrinter () | |
virtual bool | VisitEnter (const TiXmlDocument &doc) |
Visit a document. More... | |
virtual bool | VisitExit (const TiXmlDocument &doc) |
Visit a document. More... | |
virtual bool | VisitEnter (const TiXmlElement &element, const TiXmlAttribute *firstAttribute) |
Visit an element. More... | |
virtual bool | VisitExit (const TiXmlElement &element) |
Visit an element. More... | |
virtual bool | Visit (const TiXmlDeclaration &declaration) |
Visit a declaration. More... | |
virtual bool | Visit (const TiXmlText &text) |
Visit a text node. More... | |
virtual bool | Visit (const TiXmlComment &comment) |
Visit a comment node. More... | |
virtual bool | Visit (const TiXmlUnknown &unknown) |
Visit an unknow node. More... | |
void | SetIndent (const char *_indent) |
Set the indent characters for printing. More... | |
const char * | Indent () |
Query the indention string. More... | |
void | SetLineBreak (const char *_lineBreak) |
Set the line breaking string. More... | |
const char * | LineBreak () |
Query the current line breaking string. More... | |
void | SetStreamPrinting () |
Switch over to "stream printing" which is the most dense formatting without linebreaks. More... | |
const char * | CStr () |
Return the result. More... | |
size_t | Size () |
Return the length of the result string. More... | |
const std::string & | Str () |
Return the result. More... | |
![]() | |
virtual | ~TiXmlVisitor () |
Private Member Functions | |
void | DoIndent () |
void | DoLineBreak () |
Private Attributes | |
int | depth |
bool | simpleTextPrint |
TIXML_STRING | buffer |
TIXML_STRING | indent |
TIXML_STRING | lineBreak |
Print to memory functionality.
The TiXmlPrinter is useful when you need to:
When constructed, the TiXmlPrinter is in its default "pretty printing" mode. Before calling Accept() you can call methods to control the printing of the XML document. After TiXmlNode::Accept() is called, the printed document can be accessed via the CStr(), Str(), and Size() methods.
TiXmlPrinter uses the Visitor API.
TiXmlPrinter printer; printer.SetIndent( "\t" ); doc.Accept( &printer ); fprintf( stdout, "%s", printer.CStr() );
|
inline |
|
inlineprivate |
Definition at line 1762 of file tinyxml.h.
References buffer, depth, and indent.
Referenced by Visit(), VisitEnter(), and VisitExit().
|
inlineprivate |
Definition at line 1766 of file tinyxml.h.
References buffer, and lineBreak.
Referenced by Visit(), VisitEnter(), and VisitExit().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
Visit a declaration.
Reimplemented from TiXmlVisitor.
Definition at line 1849 of file tinyxml.cc.
References buffer, DoIndent(), DoLineBreak(), and TiXmlDeclaration::Print().
Visit a text node.
Reimplemented from TiXmlVisitor.
Definition at line 1825 of file tinyxml.cc.
References buffer, TiXmlText::CDATA(), DoIndent(), DoLineBreak(), simpleTextPrint, and TiXmlNode::Value().
|
virtual |
Visit a comment node.
Reimplemented from TiXmlVisitor.
Definition at line 1858 of file tinyxml.cc.
References buffer, DoIndent(), DoLineBreak(), and TiXmlNode::Value().
|
virtual |
Visit an unknow node.
Reimplemented from TiXmlVisitor.
Definition at line 1869 of file tinyxml.cc.
References buffer, DoIndent(), DoLineBreak(), and TiXmlNode::Value().
|
virtual |
|
virtual |
Visit an element.
Reimplemented from TiXmlVisitor.
Definition at line 1762 of file tinyxml.cc.
References buffer, TiXmlText::CDATA(), depth, DoIndent(), DoLineBreak(), TiXmlNode::FirstChild(), TiXmlNode::LastChild(), TiXmlAttribute::Next(), TiXmlAttribute::Print(), simpleTextPrint, TiXmlNode::ToText(), and TiXmlNode::Value().
|
virtual |
|
virtual |
Visit an element.
Reimplemented from TiXmlVisitor.
Definition at line 1799 of file tinyxml.cc.
References buffer, depth, DoIndent(), DoLineBreak(), TiXmlNode::FirstChild(), simpleTextPrint, and TiXmlNode::Value().
|
private |
Definition at line 1772 of file tinyxml.h.
Referenced by CStr(), DoIndent(), DoLineBreak(), Size(), Visit(), VisitEnter(), and VisitExit().
|
private |
Definition at line 1770 of file tinyxml.h.
Referenced by DoIndent(), VisitEnter(), and VisitExit().
|
private |
Definition at line 1773 of file tinyxml.h.
Referenced by DoIndent(), Indent(), SetIndent(), and SetStreamPrinting().
|
private |
Definition at line 1774 of file tinyxml.h.
Referenced by DoLineBreak(), LineBreak(), SetLineBreak(), and SetStreamPrinting().
|
private |
Definition at line 1771 of file tinyxml.h.
Referenced by Visit(), VisitEnter(), and VisitExit().