XmlElement.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*- */
00002 
00014 #ifndef _XmlElement_H_
00015 #define _XmlElement_H_
00016 
00017 #include "XmlNode.h"
00018 
00019 #include <list>
00020 #include <string>
00021 
00022 namespace hippodraw {
00023 
00030 class MDL_HIPPOPLOT_API XmlElement : public virtual XmlNode
00031 {
00032 
00033 private:
00034 
00036   XmlElement ( const XmlElement & );
00037 
00038 protected:
00039 
00041   XmlElement ();
00042 
00043 public:
00044 
00047   typedef std::list < XmlElement * > NodeList_t;
00048 
00050   virtual ~XmlElement();
00051 
00054   virtual std::string tagName () const = 0;
00055 
00060   virtual XmlElement * getNode ( const std::string & tagName ) const = 0;
00061 
00063   virtual void 
00064   fillNodeList ( const std::string & tagName,
00065                  std::list < XmlElement * > & nodeList ) const = 0;
00066 
00068   virtual int getID () const = 0;
00069 
00072   virtual void setAttribute ( const std::string & name, bool value ) = 0;
00073 
00075   virtual void setAttribute ( const std::string & name, int value ) = 0;
00076 
00079   virtual void setAttribute ( const std::string & name, 
00080                               unsigned int value ) = 0;
00081 
00083   virtual void setAttribute ( const std::string & name, 
00084                               float value ) = 0;
00085 
00087   virtual void setAttribute ( const std::string & name, 
00088                               double value ) = 0;
00089 
00091   virtual void setAttribute ( const std::string & name,
00092                               const std::string & value ) = 0;
00093 
00098   virtual bool attribute ( const std::string & name, 
00099                            bool & value ) const = 0;
00100 
00104   virtual bool attribute ( const std::string & name, 
00105                            int & value ) const = 0;
00106 
00110   virtual bool attribute ( const std::string & name, 
00111                            unsigned int & value ) const = 0;
00112 
00116   virtual bool attribute ( const std::string & name, float & value ) const = 0;
00117 
00121   virtual bool attribute ( const std::string & name, 
00122                            double & value ) const = 0;
00123 
00127   virtual bool attribute ( const std::string & name, 
00128                            std::string & value ) const = 0;
00129 
00132   virtual const std::string & getText () const = 0;
00133 
00134 };
00135 
00136 } // namespace hippodraw
00137 
00138 #endif // _XmlElement_H_

Generated for HippoDraw Class Library by doxygen