00001
00002 #ifndef INTERFACES_IHISTOGRAM1D_H
00003 #define INTERFACES_IHISTOGRAM1D_H 1
00004
00005
00006
00007 #include "Interfaces/IHistogram.h"
00008
00009 #ifndef ANAPHE_NO_NAMESPACE
00010 namespace Anaphe {
00011 #endif
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 class IHistogram1D : virtual public IHistogram {
00036
00037 public:
00038 virtual ~IHistogram1D() { }
00039
00040 public:
00042 virtual void fill( double x, double weight = 1 ) = 0;
00044 virtual int binEntries( int index ) const = 0;
00046 virtual double binHeight( int index ) const = 0;
00048 virtual double binError( int index ) const = 0;
00050 virtual double mean() const = 0;
00052 virtual double rms() const = 0;
00054 virtual double minBinHeight() const = 0;
00056 virtual int minBin() const = 0;
00058 virtual double maxBinHeight() const = 0;
00060 virtual int maxBin() const = 0;
00062 virtual IAxis* xAxis() const = 0;
00064 virtual int coordToIndex( double coord ) const = 0;
00065
00066 };
00067
00068
00069 #ifndef ANAPHE_NO_NAMESPACE
00070 };
00071 #endif
00072
00073 #endif // INTERFACES_IHISTOGRAM1D_H