16 #ifndef ROO_UNIFORM_BINNING
17 #define ROO_UNIFORM_BINNING
23 class RooUniformBinning :
public RooAbsBinning {
26 RooUniformBinning(
const char* name=0) ;
27 RooUniformBinning(Double_t xlo, Double_t xhi, Int_t nBins,
const char* name=0) ;
28 RooUniformBinning(
const RooUniformBinning& other,
const char* name=0) ;
29 RooAbsBinning* clone(
const char* name=0)
const {
return new RooUniformBinning(*
this,name?name:GetName()) ; }
30 virtual ~RooUniformBinning() ;
32 virtual void setRange(Double_t xlo, Double_t xhi) ;
34 virtual Int_t numBoundaries()
const {
return _nbins + 1 ; }
35 virtual Int_t binNumber(Double_t x)
const ;
36 virtual Bool_t isUniform()
const {
return kTRUE ; }
38 virtual Double_t lowBound()
const {
return _xlo ; }
39 virtual Double_t highBound()
const {
return _xhi ; }
41 virtual Double_t binCenter(Int_t bin)
const ;
42 virtual Double_t binWidth(Int_t bin)
const ;
43 virtual Double_t binLow(Int_t bin)
const ;
44 virtual Double_t binHigh(Int_t bin)
const ;
46 virtual Double_t averageBinWidth()
const {
return _binw ; }
47 virtual Double_t* array()
const ;
51 mutable Double_t* _array ;
58 ClassDef(RooUniformBinning,1)