wxFreeChart
xysimpledataset.h
1 // Name: xysimpledataset.h
3 // Purpose: xy simple dataset class declaration
4 // Author: Moskvichev Andrey V.
5 // Created: 2009/11/25
6 // Copyright: (c) 2009 Moskvichev Andrey V.
7 // Licence: wxWidgets licence
9 
10 #ifndef XYSIMPLEDATASET_H_
11 #define XYSIMPLEDATASET_H_
12 
13 #include <wx/xy/xydataset.h>
14 
15 #include <wx/dynarray.h>
16 
20 class WXDLLIMPEXP_FREECHART XYSerie
21 {
22 public:
28  wxDEPRECATED_MSG("Use XYSerie(const wxVector&<wxRealPoint>) instead.")
29  XYSerie(double *data, size_t count);
30 
35  XYSerie(const wxVector<wxRealPoint>& seriesData);
36 
37  virtual ~XYSerie();
38 
39  void Append(const wxRealPoint& values);
40 
41  void Insert(size_t index, const wxRealPoint& values);
42 
43  void Remove(size_t index);
44 
50  double GetX(size_t index);
51 
57  double GetY(size_t index);
58 
64  void UpdateX(size_t index, double x);
65 
71  void UpdateY(size_t index, double y);
72 
78  void UpdatePoint(size_t index, const wxRealPoint& values);
79 
80 
81  size_t GetCount();
82 
83  const wxString &GetName();
84 
85  void SetName(const wxString &name);
86 
87 private:
88  wxVector<wxRealPoint> m_newdata;
89  wxString m_name;
90 };
91 
92 WX_DECLARE_USER_EXPORTED_OBJARRAY(XYSerie *, XYSerieArray, WXDLLIMPEXP_FREECHART);
93 
97 class WXDLLIMPEXP_FREECHART XYSimpleDataset : public XYDataset
98 {
99  DECLARE_CLASS(XYSimpleDataset)
100 public:
101  XYSimpleDataset();
102  virtual ~XYSimpleDataset();
103 
109  wxDEPRECATED_MSG("Use AddSerie(new XYSerie(const wxVector&<wxRealPoint>)) instead.")
110  void AddSerie(double *data, size_t count);
111 
116  void AddSerie(XYSerie *serie);
117 
118  XYSerie* GetSerie(size_t series);
119 
120  virtual double GetX(size_t index, size_t serie) wxOVERRIDE;
121 
122  virtual double GetY(size_t index, size_t serie) wxOVERRIDE;
123 
124  virtual size_t GetSerieCount();
125 
126  virtual size_t GetCount(size_t serie);
127 
128  wxDEPRECATED_MSG("Use GetSeries()->GetName() instead.")
129  virtual wxString GetSerieName(size_t serie);
130 
131  wxDEPRECATED_MSG("Use GetSeries()->SetName() instead.")
132  void SetSerieName(size_t serie, const wxString &name);
133 
134 private:
135  XYSerieArray m_series;
136  wxVector<wxSharedPtr<XYSerie> > m_series2;
137 
138  friend XYSerie;
139 };
140 
141 #endif /*XYSIMPLEDATASET_H_*/
virtual size_t GetSerieCount()=0
Returns serie count in this dataset.
Simple xy dataset.
virtual double GetX(size_t index, size_t serie)=0
Returns x value at index.
virtual double GetY(size_t index, size_t serie)=0
Returns y value at index.
virtual size_t GetCount(size_t serie)=0
Returns value count in serie specified by index.
Base class for XY datasets.
Definition: xydataset.h:21
Holds data for one XY serie.
virtual wxString GetSerieName(size_t serie)=0
Returns serie name.