13 #include <wx/wxfreechartdefs.h>
17 #include <wx/refobject.h>
19 #include <wx/observable.h>
20 #include <wx/chartrenderer.h>
21 #include <wx/marker.h>
23 #include <wx/dynarray.h>
28 #define FOREACH_SERIE(index, dataset) \
29 for (size_t index = 0; index < dataset->GetSerieCount(); index++)
31 #define FOREACH_DATAITEM(index, serie, dataset) \
32 for (size_t index = 0; index < dataset->GetCount(serie); index++)
43 virtual void DatasetChanged(
Dataset *dataset) = 0;
50 class WXDLLIMPEXP_FREECHART
Dataset :
public wxObject,
62 void SetRenderer(
Renderer *renderer);
84 virtual size_t GetSerieCount() = 0;
91 virtual size_t GetCount(
size_t serie) = 0;
98 virtual wxString GetSerieName(
size_t serie) = 0;
105 virtual double GetMinValue(
bool vertical) = 0;
112 virtual double GetMaxValue(
bool vertical) = 0;
120 void AddMarker(
Marker *marker);
126 size_t GetMarkersCount();
133 Marker *GetMarker(
size_t index);
146 virtual bool AcceptRenderer(
Renderer *r) = 0;
152 void DatasetChanged();
159 MarkerArray m_markers;
161 FIRE_WITH_THIS(DatasetChanged);
178 virtual time_t GetDate(
size_t index) = 0;
184 virtual size_t GetCount() = 0;
187 WX_DECLARE_USER_EXPORTED_OBJARRAY(
Dataset *, DatasetArrayBase, WXDLLIMPEXP_FREECHART);
199 void RemoveAt(
size_t index,
size_t count = 1);
Definition: chartrenderer.h:21
Definition: dataset.h:189
Definition: observable.h:14
Definition: drawobject.h:23
Definition: refobject.h:8
Definition: drawobject.h:45
Definition: dataset.h:167
virtual void NeedRedraw(DrawObject *obj)=0