00001
00002
00003
00004
00005
00006
00007 #ifndef AIDA_IDATAPOINTSET_H
00008 #define AIDA_IDATAPOINTSET_H 1
00009
00010
00011
00012
00013
00014
00015 #include <string>
00016
00017 namespace AIDA {
00018
00019 class IAnnotation;
00020 class IDataPoint;
00021
00030 class IDataPointSet {
00031
00032 public:
00034 virtual ~IDataPointSet() { ; }
00035
00041 virtual IAnnotation & annotation() = 0;
00042
00043 virtual const IAnnotation & annotation() const = 0;
00044
00050 virtual const std::string & title() const = 0;
00051
00058 virtual bool setTitle(const std::string & title) = 0;
00059
00065 virtual int dimension() const = 0;
00066
00072 virtual void clear() = 0;
00073
00080 virtual int size() const = 0;
00081
00088 virtual IDataPoint * point(int index) = 0;
00089
00090 virtual const IDataPoint * point(int index) const = 0;
00091
00097 virtual bool addPoint() = 0;
00098
00106 virtual bool addPoint(const IDataPoint & point) = 0;
00107
00114 virtual bool removePoint(int index) = 0;
00115
00133 virtual double lowerExtent(int coord) const = 0;
00134
00152 virtual double upperExtent(int coord) const = 0;
00153
00161 virtual bool scale(double scaleFactor) = 0;
00162
00170 virtual bool scaleValues(double scaleFactor) = 0;
00171
00179 virtual bool scaleErrors(double scaleFactor) = 0;
00180 };
00181 };
00182 #endif