Go to the documentation of this file.00001
00002
00003
00004
00005 #ifndef __I_XML_WRITER_H_INCLUDED__
00006 #define __I_XML_WRITER_H_INCLUDED__
00007
00008 #include "IReferenceCounted.h"
00009 #include "irrArray.h"
00010 #include "irrString.h"
00011
00012 namespace irr
00013 {
00014 namespace io
00015 {
00016
00018
00020 class IXMLWriter : public virtual IReferenceCounted
00021 {
00022 public:
00024
00027 virtual void writeXMLHeader() = 0;
00028
00031
00046 virtual void writeElement(const wchar_t* name, bool empty=false,
00047 const wchar_t* attr1Name = 0, const wchar_t* attr1Value = 0,
00048 const wchar_t* attr2Name = 0, const wchar_t* attr2Value = 0,
00049 const wchar_t* attr3Name = 0, const wchar_t* attr3Value = 0,
00050 const wchar_t* attr4Name = 0, const wchar_t* attr4Value = 0,
00051 const wchar_t* attr5Name = 0, const wchar_t* attr5Value = 0) = 0;
00052
00054 virtual void writeElement(const wchar_t* name, bool empty,
00055 core::array<core::stringw> &names, core::array<core::stringw> &values) = 0;
00056
00058 virtual void writeComment(const wchar_t* comment) = 0;
00059
00061 virtual void writeClosingTag(const wchar_t* name) = 0;
00062
00064
00067 virtual void writeText(const wchar_t* text) = 0;
00068
00070 virtual void writeLineBreak() = 0;
00071 };
00072
00073 }
00074 }
00075
00076 #endif
00077