6 #ifndef _INC_cXmlWriter_H
7 #define _INC_cXmlWriter_H
35 for (
int i = 0; i < m_iDepth; ++i)
51 m_sIndent = pszIndent ? pszIndent :
"";
56 return m_sIndent.
c_str();
64 m_sLineBreak = pszLineBreak ? pszLineBreak :
"";
69 return m_sLineBreak.
c_str();
86 void WriteLine(
const char* pszData);
87 void WriteComment(
const char* pszComment);
88 void WriteElementBegin(
const char* pszName,
const cXmlAttributeSet* pAttr =
nullptr,
bool bClose =
false,
bool bLineBreak =
true);
89 void WriteElementData(
const char* pszData,
bool bCData =
false);
90 void WriteElementEnd(
const char* pszName);
91 void WriteElement1(
const char* pszName,
const char* pszData);
130 virtual bool VisitEnter(
const cXmlDocument& doc)
override;
131 virtual bool VisitExit(
const cXmlDocument& doc)
override;
133 virtual bool VisitEnter(
const cXmlElement& element)
override;
134 virtual bool VisitExit(
const cXmlElement& element)
override;
137 virtual bool Visit(
const cXmlText& text)
override;
138 virtual bool Visit(
const cXmlComment& comment)
override;
139 virtual bool Visit(
const cXmlUnknown& unknown)
override;
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
Definition: cXmlDocument.h:353
Definition: cXmlDocument.h:635
Definition: cXmlDocument.h:549
Definition: cXmlDocument.h:279
Definition: cXmlDocument.h:441
Definition: cXmlWriter.h:95
cStreamQueue m_Q
Definition: cXmlWriter.h:113
const char * get_CPtr() const
Definition: cXmlWriter.h:119
size_t get_Size() const
Definition: cXmlWriter.h:124
Definition: cXmlWriter.h:18
const char * get_LineBreak() const
Definition: cXmlWriter.h:66
int m_iDepth
Indent depth of writer.
Definition: cXmlWriter.h:26
void WriteIndent()
Definition: cXmlWriter.h:33
const char * get_Indent() const
Definition: cXmlWriter.h:53
cStreamOutput * m_pOutput
Hold output we are building.
Definition: cXmlWriter.h:30
void SetStreamPrinting()
Definition: cXmlWriter.h:72
void WriteNull()
Definition: cXmlWriter.h:80
cXmlString m_sLineBreak
STR_NL.
Definition: cXmlWriter.h:23
void put_Indent(const char *pszIndent)
Definition: cXmlWriter.h:47
void WriteLineBreak()
Definition: cXmlWriter.h:38
void put_LineBreak(const char *pszLineBreak)
Definition: cXmlWriter.h:59
bool m_bElementOnOneLine
All on the same line. "<X>sdfsdf</X>".
Definition: cXmlWriter.h:27
cXmlString m_sIndent
Tab = 4 spaces.
Definition: cXmlWriter.h:22
const TYPE * get_ReadPtr() const
Definition: cQueue.h:312
Definition: cStream.h:126
virtual HRESULT WriteString(const char *pszStr)
Definition: cStream.h:212
virtual HRESULT WriteX(const void *pData, size_t nDataSize)
Definition: cStream.h:141
Definition: cStreamQueue.h:19
virtual STREAM_POS_t GetLength() const override
Definition: cStreamQueue.h:69
const _TYPE_CH * c_str() const
Definition: cString.h:563
Definition: cXmlVisitor.h:22