16#ifndef ROO_ABS_BINNING
17#define ROO_ABS_BINNING
50 virtual void setRange(
double xlo,
double xhi) = 0 ;
65 virtual double*
array()
const = 0 ;
72 void printName(std::ostream& os)
const override ;
73 void printTitle(std::ostream& os)
const override ;
75 void printArgs(std::ostream& os)
const override ;
76 void printValue(std::ostream& os)
const override ;
#define ClassDefOverride(name, id)
RooAbsBinning is the abstract base class for RooRealVar binning definitions.
void printTitle(std::ostream &os) const override
Print binning title.
virtual void removeHook(RooAbsRealLValue &) const
Hook interface function to execute code upon removal from a RooAbsRealLValue.
virtual RooAbsBinning * clone(const char *name=0) const =0
virtual double binCenter(Int_t bin) const =0
~RooAbsBinning() override
Destructor.
Int_t numBins() const
Return number of bins.
void Print(Option_t *options=0) const override
Print TNamed name and title.
virtual bool isShareable() const
If true (default), the range definition can be shared across clones of a RooRealVar.
RooAbsBinning(const RooAbsBinning &other, const char *name=0)
virtual double averageBinWidth() const =0
virtual void insertHook(RooAbsRealLValue &) const
Hook interface function to execute code upon insertion into a RooAbsRealLValue.
virtual bool isParameterized() const
Interface function.
virtual double binLow(Int_t bin) const =0
virtual bool isUniform() const
virtual Int_t rawBinNumber(double x) const
virtual double highBound() const =0
virtual void setRange(double xlo, double xhi)=0
virtual void setMin(double xlo)
Change lower bound to xlo.
virtual double lowBound() const =0
virtual RooAbsReal * highBoundFunc() const
Return pointer to RooAbsReal parameterized upper bound, if any.
virtual double binHigh(Int_t bin) const =0
virtual Int_t numBoundaries() const =0
void printArgs(std::ostream &os) const override
Print binning arguments (the RooAbsReal objects represening the variable bin boundaries for parameter...
TObject * Clone(const char *newname=0) const override
Make a clone of an object using the Streamer facility.
virtual double * array() const =0
RooAbsBinning(const char *name=0)
Constructor.
virtual Int_t binNumber(double x) const =0
virtual RooAbsReal * lowBoundFunc() const
Return pointer to RooAbsReal parameterized lower bound, if any.
void printClassName(std::ostream &os) const override
Print binning class name.
void printName(std::ostream &os) const override
Print binning name.
virtual double binWidth(Int_t bin) const =0
void printValue(std::ostream &os) const override
Print binning value, i.e the bin boundary positions.
virtual void setMax(double xhi)
Change upper bound to xhi.
RooAbsRealLValue is the common abstract base class for objects that represent a real value that may a...
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
RooPlotable is a 'mix-in' base class that define the standard RooFit plotting and printing methods.
virtual StyleOption defaultPrintStyle(Option_t *opt) const
virtual Int_t defaultPrintContents(Option_t *opt) const
Default choice of contents to be printed (name and value)
static std::ostream & defaultPrintStream(std::ostream *os=0)
Return a reference to the current default stream to use in Print().
virtual void printStream(std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
Print description of object on ostream, printing contents set by contents integer,...
Iterator abstract base class.
The TNamed class is the base class for all named ROOT classes.
Mother of all ROOT objects.