00001
00002
00003
00004
00005
00006
00007 #ifndef AIDA_IAXIS_H
00008 #define AIDA_IAXIS_H 1
00009
00010
00011
00012
00013
00014
00015 namespace AIDA {
00016
00026 class IAxis {
00027
00028 public:
00030 virtual ~IAxis() { ; }
00031
00037 virtual bool isFixedBinning() const = 0;
00038
00044 virtual double lowerEdge() const = 0;
00045
00051 virtual double upperEdge() const = 0;
00052
00058 virtual int bins() const = 0;
00059
00066 virtual double binLowerEdge(int index) const = 0;
00067
00074 virtual double binUpperEdge(int index) const = 0;
00075
00082 virtual double binWidth(int index) const = 0;
00083
00092 virtual int coordToIndex(double coord) const = 0;
00093
00099 enum { UNDERFLOW_BIN = -2, OVERFLOW_BIN = -1 };
00100 };
00101 };
00102 #endif