File indexing completed on 2026-08-06 09:38:17
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LWH_AIHistorgram1D_H
0010 #define LWH_AIHistorgram1D_H
0011
0012
0013
0014
0015
0016 namespace AIDA {
0017
0018 class IAnnotation;
0019
0020 class IBaseHistogram {
0021
0022 public:
0023
0024 virtual ~IBaseHistogram() {}
0025
0026 virtual std::string title() const = 0;
0027 virtual bool setTitle(const std::string & title) = 0;
0028 virtual int dimension() const = 0;
0029 virtual bool reset() = 0;
0030 virtual int entries() const = 0;
0031
0032 };
0033
0034 class IHistogram : virtual public IBaseHistogram {
0035
0036 public:
0037
0038 virtual ~IHistogram() {}
0039
0040 virtual int allEntries() const = 0;
0041 virtual int extraEntries() const = 0;
0042 virtual double equivalentBinEntries() const = 0;
0043 virtual double sumBinHeights() const = 0;
0044 virtual double sumAllBinHeights() const = 0;
0045 virtual double sumExtraBinHeights() const = 0;
0046 virtual double minBinHeight() const = 0;
0047 virtual double maxBinHeight() const = 0;
0048
0049 };
0050
0051 class IAxis;
0052
0053 class IHistogram1D: virtual public IHistogram {
0054
0055 public:
0056
0057 virtual ~IHistogram1D() {}
0058
0059 virtual bool fill(double x, double weight = 1.) = 0;
0060 virtual double binMean(int index) const = 0;
0061 virtual int binEntries(int index) const = 0;
0062 virtual double binHeight(int index) const = 0;
0063 virtual double binError(int index) const = 0;
0064 virtual double mean() const = 0;
0065 virtual double rms() const = 0;
0066 virtual const IAxis & axis() const = 0;
0067 virtual int coordToIndex(double coord) const = 0;
0068 virtual bool add(const IHistogram1D & hist) = 0;
0069 virtual bool scale(double scaleFactor) = 0;
0070
0071 };
0072
0073 }
0074
0075
0076
0077
0078
0079
0080
0081 #endif