Wim van der Vegt / TINYXML

Dependents:   tinyxml_test

Embed: (wiki syntax)

« Back to documentation index

TiXmlPrinter Class Reference

TiXmlPrinter Class Reference

Print to memory functionality. More...

#include <tinyxml.h>

Inherits TiXmlVisitor.

Public Member Functions

virtual bool VisitEnter (const TiXmlDocument &doc)
 Visit a document.
virtual bool VisitExit (const TiXmlDocument &doc)
 Visit a document.
virtual bool VisitEnter (const TiXmlElement &element, const TiXmlAttribute *firstAttribute)
 Visit an element.
virtual bool VisitExit (const TiXmlElement &element)
 Visit an element.
virtual bool Visit (const TiXmlDeclaration &declaration)
 Visit a declaration.
virtual bool Visit (const TiXmlText &text)
 Visit a text node.
virtual bool Visit (const TiXmlComment &comment)
 Visit a comment node.
virtual bool Visit (const TiXmlUnknown &unknown)
 Visit an unknow node.
void SetIndent (const char *_indent)
 Set the indent characters for printing.
const char * Indent ()
 Query the indention string.
void SetLineBreak (const char *_lineBreak)
 Set the line breaking string.
const char * LineBreak ()
 Query the current line breaking string.
void SetStreamPrinting ()
 Switch over to "stream printing" which is the most dense formatting without linebreaks.
const char * CStr ()
 Return the result.
size_t Size ()
 Return the length of the result string.
const std::string & Str ()
 Return the result.

Detailed Description

Print to memory functionality.

The TiXmlPrinter is useful when you need to:

  1. Print to memory (especially in non-STL mode)
  2. Control formatting (line endings, etc.)

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() );
    

Definition at line 1732 of file tinyxml.h.


Member Function Documentation

const char* CStr (  )

Return the result.

Definition at line 1770 of file tinyxml.h.

const char* Indent (  )

Query the indention string.

Definition at line 1754 of file tinyxml.h.

const char* LineBreak (  )

Query the current line breaking string.

Definition at line 1761 of file tinyxml.h.

void SetIndent ( const char *  _indent )

Set the indent characters for printing.

By default 4 spaces but tab () is also useful, or null/empty string for no indentation.

Definition at line 1752 of file tinyxml.h.

void SetLineBreak ( const char *  _lineBreak )

Set the line breaking string.

By default set to newline (
). Some operating systems prefer other characters, or can be set to the null/empty string for no indenation.

Definition at line 1759 of file tinyxml.h.

void SetStreamPrinting (  )

Switch over to "stream printing" which is the most dense formatting without linebreaks.

Common when the XML is needed for network transmission.

Definition at line 1766 of file tinyxml.h.

size_t Size (  )

Return the length of the result string.

Definition at line 1772 of file tinyxml.h.

const std::string& Str (  )

Return the result.

Definition at line 1776 of file tinyxml.h.

bool Visit ( const TiXmlUnknown  ) [virtual]

Visit an unknow node.

Reimplemented from TiXmlVisitor.

Definition at line 1829 of file tinyxml.cpp.

bool Visit ( const TiXmlComment  ) [virtual]

Visit a comment node.

Reimplemented from TiXmlVisitor.

Definition at line 1818 of file tinyxml.cpp.

bool Visit ( const TiXmlDeclaration  ) [virtual]

Visit a declaration.

Reimplemented from TiXmlVisitor.

Definition at line 1809 of file tinyxml.cpp.

bool Visit ( const TiXmlText  ) [virtual]

Visit a text node.

Reimplemented from TiXmlVisitor.

Definition at line 1781 of file tinyxml.cpp.

bool VisitEnter ( const TiXmlDocument  ) [virtual]

Visit a document.

Reimplemented from TiXmlVisitor.

Definition at line 1708 of file tinyxml.cpp.

bool VisitEnter ( const TiXmlElement ,
const TiXmlAttribute  
) [virtual]

Visit an element.

Reimplemented from TiXmlVisitor.

Definition at line 1718 of file tinyxml.cpp.

bool VisitExit ( const TiXmlElement  ) [virtual]

Visit an element.

Reimplemented from TiXmlVisitor.

Definition at line 1755 of file tinyxml.cpp.

bool VisitExit ( const TiXmlDocument  ) [virtual]

Visit a document.

Reimplemented from TiXmlVisitor.

Definition at line 1713 of file tinyxml.cpp.