AxisModelXML.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*- */
00002 
00014 #ifndef _AxisModelXML_H_
00015 #define _AxisModelXML_H_
00016 
00017 #include "BaseXML.h"
00018 
00019 #include "axes/AxesType.h"
00020 
00021 namespace hippodraw {
00022 
00023 class AxisModelBase;
00024 class AxisTickXML;
00025 
00031 class MDL_HIPPOPLOT_API AxisModelXML : virtual public BaseXML
00032 {
00033 
00034 private:
00035 
00037   static AxisModelXML * s_instance;
00038 
00041   AxisTickXML * m_axistick_xml;
00042 
00044   std::string m_autorange;
00045 
00047   std::string m_low;
00048 
00050   std::string m_high;
00051 
00053   std::string m_scale_factor;
00054 
00056   std::string m_log;
00057 
00061   std::string m_auto_tick;
00062 
00064   AxisModelXML ( const AxisModelXML & );
00065 
00068   void createChildren ( XmlElement &, const AxisModelBase & );
00069 
00072   void createChildren ( const XmlElement * element, AxisModelBase * model );
00073 
00074 public:
00075 
00078   AxisModelXML ( XmlController * controller );
00079 
00082   ~AxisModelXML ();
00083 
00086   void setAttributes ( XmlElement & tag, const AxisModelBase & plotter );
00087 
00090   void setAttributes ( AxisModelBase * model, const XmlElement * element );
00091 
00093   hippodraw::Axes::Type getAxis ( const XmlElement * element, 
00094                                   const std::string & tagname );
00095 
00098   bool isLog ( const XmlElement * element );
00099 
00100 };
00101 
00102 } // namespace hippodraw
00103 
00104 #endif // _AxisModelXML_H_

Generated for HippoDraw Class Library by doxygen