#ifndef XMLDOCUMENT_H #define XMLDOCUMENT_H #include #include "Util.h" namespace xml { class Element; class Document { protected: Element* root; public: Document(); ~Document(); std::istream& load(std::istream& in); std::ostream& print(std::ostream& out) const; private: DECLARE_COPY_METHODS(Document) }; inline std::istream& operator>>(std::istream& in, Document& doc) { return doc.load(in); } inline std::ostream& operator<<(std::ostream& out, const Document& doc) { return doc.print(out); } } // namespace xml #endif // XMLDOCUMENT_H