PlotterBaseXML.h
Go to the documentation of this file.
1 /* -*- mode: c++ -*- */
2 
14 #ifndef _PlotterBaseXML_H_
15 #define _PlotterBaseXML_H_
16 
17 #include "BaseXML.h"
18 
19 #include "axes/AxesType.h"
20 
21 namespace hippodraw {
22 
23 class DataRep;
24 class AxisModelXML;
25 class CutPlotter;
26 class DataRepXML;
27 class FontXML;
28 class PlotterBase;
29 class PointRepXML;
30 class TextPlotter;
31 class TransformXML;
32 class TupleCutXML;
33 class XyPlotter;
34 
42 {
43 
44 private:
45 
48 
51 
54 
57 
60 
63 
66 
70  std::string m_axis;
71 
74  std::string m_title;
75 
78  std::string m_x_label;
79 
82  std::string m_y_label;
83 
86  std::string m_z_label;
87 
91  std::string m_pindex;
92 
94  PlotterBaseXML ( const PlotterBaseXML & );
95 
97  void createAxisModel ( XmlElement &, const PlotterBase &,
98  hippodraw::Axes::Type axis );
99 
101  void createAxisModels ( const XmlElement * element, PlotterBase * plotter );
102 
105  void createFontElements ( XmlElement & tag, const XyPlotter & plotter );
106 
109  void createFontElement ( XmlElement & tag,
110  const XyPlotter & plotter,
111  hippodraw::Axes::Type axis );
112 
114  void createChildren ( XmlElement &, const PlotterBase & );
115 
119  void createCutChildren ( XmlElement &, const CutPlotter & plotter );
120 
124  void createTextChildren ( XmlElement &, const TextPlotter & plotter );
125 
127  PlotterBase * createPlotter ( const XmlElement * element );
128 
131  void handleCutPlotter ( const XmlElement * element,
132  CutPlotter * plotter );
133 
135  void handleFunction ( const XmlElement * element,
137 
140  int handleTextPlotter ( const XmlElement * element, TextPlotter * plotter );
141 
144  void getCutTargets ( const XmlElement * element, CutPlotter * plotter );
145 
146 protected:
147 
149  PlotterBaseXML ( const std::string &, XmlController * controller );
150 
153  void createFontObjects ( const XmlElement *, PlotterBase * plotter );
154 
155 public:
156 
159  PlotterBaseXML ( XmlController * controller );
160 
163  ~PlotterBaseXML ();
164 
167  bool areDataSourcesSaved ( const PlotterBase & plotter );
168 
171  XmlElement * createElement ( const PlotterBase & plotter );
172 
174  virtual PlotterBase * getObject ( const XmlElement * element );
175 
176 };
177 
178 } // namespace hippodraw
179 
180 #endif // _PlotterBaseXML_H_
#define MDL_HIPPOPLOT_API
Definition: libhippo.h:36
A Plotter class that plots points in 2 dimensions and option a third dimension in color...
Definition: XyPlotter.h:44
TupleCutXML * m_tuple_cut_xml
The TupleCutXML instance used by this object.
AxisModelXML * m_axismodel
The AxisModelXML instance used by this object.
A class that is does XML serialization and deserialization of derived classes of FontBase.
Definition: FontXML.h:30
A class that is does XML serialization and de-serialization of derived classes of DataRep...
Definition: DataRepXML.h:46
A class that is does XML serialization and de-serialization of derived classes of AxisModelBase with ...
Definition: AxisModelXML.h:31
BaseXML class interface.
A pure virtual base class of XML element wrapper.
Definition: XmlElement.h:30
TransformXML * m_transform_xml
The TransfromXML instance used by this object.
static PlotterBaseXML * s_instance
The pointer to the singleton object.
return rep
Definition: Inspector.cxx:3843
std::string m_y_label
The attribute name for Y axis label.
A singleton class that is does XML serialization and de-serialization of derived classes of RepBase...
Definition: PointRepXML.h:30
The base class for the PlotterBase hierarchy.
Definition: PlotterBase.h:55
DataRepXML * m_datarep
The DataRepXML instance used by this object.
std::string m_pindex
The attribute name used to save and restore index of parent DataRep.
The base class for data representations.
Definition: DataRep.h:68
A PlotterBase derived class that serves a base class for cut plotters.
Definition: CutPlotter.h:43
A class XML creation and parsing of XmlElement for Transform class.
Definition: TransformXML.h:28
std::string m_z_label
The attribute name for Z axis label.
The namespace for axes.
A Plotter class that draws text.
Definition: TextPlotter.h:38
A base class of XML element controllers.
Definition: BaseXML.h:35
PointRepXML * m_pointrep
The PointRepXML instance used by this object.
std::string m_axis
The attribute name of labeling an axis for the AxisModelBase elements.
A class that is does XML serialization and de-serialization of derived classes of PlotterBase...
A base class that is the interface between GUI and the XML serialization and deserialization.
Definition: XmlController.h:53
std::string m_x_label
The attribute name for X axis label.
std::string m_title
The attribute name for the plot title.
FontXML * m_font
The FontXML instance used by this object.
Type
Axes constants.
Definition: AxesType.h:31
A class that is does XML serialization and de-serialization of derived classes of TupleCut...
Definition: TupleCutXML.h:32

Generated for HippoDraw Class Library by doxygen