00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef XMLCHILD_H
00017 #define XMLCHILD_H
00018
00019 #include <Object.h>
00020 #include <Writeable.h>
00021
00023
00025 class XMLChild : virtual public Object,
00026 virtual public Writeable
00027 {
00028 public:
00030 typedef enum {ELEMENT, TAG, CDATA} ChildType, XMLChildType;
00031
00033 XMLChild(const ChildType& type = CDATA);
00034
00036 virtual ChildType GetType() const;
00037
00039 virtual void SetType(const ChildType& newType);
00040
00042
00044 virtual string ToString() const { return NULL_STRING; };
00045
00046 protected:
00048 XMLChild& Copy(const XMLChild& rhs);
00049
00051 void Init(const ChildType& newType);
00052
00054 bool Equals(const XMLChild& rhs) const;
00055
00056 private:
00057 ChildType type;
00058 };
00059
00060 typedef XMLChild Child;
00061 #endif