Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
cheprep::IndentPrintWriter Class Reference

#include <IndentPrintWriter.h>

Public Member Functions

 IndentPrintWriter (std::ostream *out, int level=0)
 
virtual ~IndentPrintWriter ()
 
void close ()
 
IndentPrintWriteroperator<< (const std::string &s)
 
IndentPrintWriteroperator<< (std::ostream &(*pf)(std::ostream &))
 
void println (const std::string &s)
 
void print (const std::string &s)
 
void println ()
 
void indent ()
 
void outdent ()
 
int getIndent () const
 
void setIndent (const int level)
 
std::string getIndentString () const
 
void setIndentString (const std::string &indentString)
 

Detailed Description

Definition at line 22 of file IndentPrintWriter.h.

Constructor & Destructor Documentation

cheprep::IndentPrintWriter::IndentPrintWriter ( std::ostream *  out,
int  level = 0 
)

Definition at line 15 of file IndentPrintWriter.cc.

16  : out(outstream),
17  closed(false),
18  indentLevel(level),
19  indented(false),
20  indentString(" ") {
21 }
cheprep::IndentPrintWriter::~IndentPrintWriter ( )
virtual

Definition at line 23 of file IndentPrintWriter.cc.

23  {
24 }

Member Function Documentation

void cheprep::IndentPrintWriter::close ( )

Definition at line 26 of file IndentPrintWriter.cc.

Referenced by cheprep::XMLWriter::close(), cheprep::XMLWriter::closeTag(), and cheprep::XMLWriter::~XMLWriter().

26  {
27  if (!closed) {
28  out->flush();
29  closed = true;
30  }
31 }
int cheprep::IndentPrintWriter::getIndent ( ) const

Definition at line 73 of file IndentPrintWriter.cc.

Referenced by cheprep::XMLWriter::printAttributes().

73  {
74  return indentLevel;
75 }
string cheprep::IndentPrintWriter::getIndentString ( ) const

Definition at line 81 of file IndentPrintWriter.cc.

Referenced by cheprep::XMLWriter::openDoc().

81  {
82  return indentString;
83 }
void cheprep::IndentPrintWriter::indent ( )

Definition at line 65 of file IndentPrintWriter.cc.

Referenced by cheprep::XMLWriter::openTag(), and cheprep::XMLWriter::printAttributes().

65  {
66  indentLevel++;
67 }
IndentPrintWriter & cheprep::IndentPrintWriter::operator<< ( const std::string &  s)

Definition at line 33 of file IndentPrintWriter.cc.

33  {
34  if (!indented) doIndent();
35  *out << s;
36  return *this;
37 }
const XML_Char * s
IndentPrintWriter& cheprep::IndentPrintWriter::operator<< ( std::ostream &(*)(std::ostream &)  pf)
void cheprep::IndentPrintWriter::outdent ( )

Definition at line 69 of file IndentPrintWriter.cc.

Referenced by cheprep::XMLWriter::closeTag(), and cheprep::XMLWriter::printAttributes().

69  {
70  indentLevel--;
71 }
void cheprep::IndentPrintWriter::print ( const std::string &  s)

Definition at line 49 of file IndentPrintWriter.cc.

49  {
50  *this << s;
51 }
const XML_Char * s
void cheprep::IndentPrintWriter::println ( const std::string &  s)

Definition at line 45 of file IndentPrintWriter.cc.

45  {
46  *this << s << endl;
47 }
const XML_Char * s
void cheprep::IndentPrintWriter::println ( )

Definition at line 53 of file IndentPrintWriter.cc.

53  {
54  *out << endl;
55  indented = false;
56 }
void cheprep::IndentPrintWriter::setIndent ( const int  level)

Definition at line 77 of file IndentPrintWriter.cc.

77  {
78  indentLevel = level;
79 }
void cheprep::IndentPrintWriter::setIndentString ( const std::string &  indentString)

Definition at line 85 of file IndentPrintWriter.cc.

Referenced by cheprep::XMLWriter::openDoc(), and cheprep::XMLWriter::XMLWriter().

85  {
86  indentString = anIndent;
87 }

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