rospack_tinyxml::TiXmlPrinter Class Reference

#include <tinyxml.h>

Inheritance diagram for rospack_tinyxml::TiXmlPrinter:
Inheritance graph
[legend]

List of all members.

Public Member Functions

const char * CStr ()
 Return the result.
const char * Indent ()
 Query the indention string.
const char * LineBreak ()
 Query the current line breaking string.
void SetIndent (const char *_indent)
void SetLineBreak (const char *_lineBreak)
void SetStreamPrinting ()
size_t Size ()
 Return the length of the result string.
 TiXmlPrinter ()
virtual bool Visit (const TiXmlUnknown &unknown)
 Visit an unknow node.
virtual bool Visit (const TiXmlComment &comment)
 Visit a comment node.
virtual bool Visit (const TiXmlText &text)
 Visit a text node.
virtual bool Visit (const TiXmlDeclaration &declaration)
 Visit a declaration.
virtual bool VisitEnter (const TiXmlElement &element, const TiXmlAttribute *firstAttribute)
 Visit an element.
virtual bool VisitEnter (const TiXmlDocument &doc)
 Visit a document.
virtual bool VisitExit (const TiXmlElement &element)
 Visit an element.
virtual bool VisitExit (const TiXmlDocument &doc)
 Visit a document.

Private Member Functions

void DoIndent ()
void DoLineBreak ()

Private Attributes

TIXML_STRING buffer
int depth
TIXML_STRING indent
TIXML_STRING lineBreak
bool simpleTextPrint

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 1748 of file tinyxml.h.


Constructor & Destructor Documentation

rospack_tinyxml::TiXmlPrinter::TiXmlPrinter (  )  [inline]

Definition at line 1751 of file tinyxml.h.


Member Function Documentation

const char* rospack_tinyxml::TiXmlPrinter::CStr (  )  [inline]

Return the result.

Definition at line 1786 of file tinyxml.h.

void rospack_tinyxml::TiXmlPrinter::DoIndent (  )  [inline, private]

Definition at line 1796 of file tinyxml.h.

void rospack_tinyxml::TiXmlPrinter::DoLineBreak (  )  [inline, private]

Definition at line 1800 of file tinyxml.h.

const char* rospack_tinyxml::TiXmlPrinter::Indent (  )  [inline]

Query the indention string.

Definition at line 1770 of file tinyxml.h.

const char* rospack_tinyxml::TiXmlPrinter::LineBreak (  )  [inline]

Query the current line breaking string.

Definition at line 1777 of file tinyxml.h.

void rospack_tinyxml::TiXmlPrinter::SetIndent ( const char *  _indent  )  [inline]

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 1768 of file tinyxml.h.

void rospack_tinyxml::TiXmlPrinter::SetLineBreak ( const char *  _lineBreak  )  [inline]

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 1775 of file tinyxml.h.

void rospack_tinyxml::TiXmlPrinter::SetStreamPrinting (  )  [inline]

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 1782 of file tinyxml.h.

size_t rospack_tinyxml::TiXmlPrinter::Size (  )  [inline]

Return the length of the result string.

Definition at line 1788 of file tinyxml.h.

bool rospack_tinyxml::TiXmlPrinter::Visit ( const TiXmlUnknown  )  [virtual]

Visit an unknow node.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1880 of file tinyxml.cpp.

bool rospack_tinyxml::TiXmlPrinter::Visit ( const TiXmlComment  )  [virtual]

Visit a comment node.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1869 of file tinyxml.cpp.

bool rospack_tinyxml::TiXmlPrinter::Visit ( const TiXmlText  )  [virtual]

Visit a text node.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1832 of file tinyxml.cpp.

bool rospack_tinyxml::TiXmlPrinter::Visit ( const TiXmlDeclaration  )  [virtual]

Visit a declaration.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1860 of file tinyxml.cpp.

bool rospack_tinyxml::TiXmlPrinter::VisitEnter ( const TiXmlElement ,
const TiXmlAttribute  
) [virtual]

Visit an element.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1769 of file tinyxml.cpp.

bool rospack_tinyxml::TiXmlPrinter::VisitEnter ( const TiXmlDocument  )  [virtual]

Visit a document.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1759 of file tinyxml.cpp.

bool rospack_tinyxml::TiXmlPrinter::VisitExit ( const TiXmlElement  )  [virtual]

Visit an element.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1806 of file tinyxml.cpp.

bool rospack_tinyxml::TiXmlPrinter::VisitExit ( const TiXmlDocument  )  [virtual]

Visit a document.

Reimplemented from rospack_tinyxml::TiXmlVisitor.

Definition at line 1764 of file tinyxml.cpp.


Member Data Documentation

TIXML_STRING rospack_tinyxml::TiXmlPrinter::buffer [private]

Definition at line 1806 of file tinyxml.h.

Definition at line 1804 of file tinyxml.h.

TIXML_STRING rospack_tinyxml::TiXmlPrinter::indent [private]

Definition at line 1807 of file tinyxml.h.

Definition at line 1808 of file tinyxml.h.

Definition at line 1805 of file tinyxml.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rospack
Author(s): Morgan Quigley, Brian Gerkey
autogenerated on Fri Jan 11 11:39:45 2013