16#ifndef ROO_ABS_BINNING
17#define ROO_ABS_BINNING
52 virtual void binNumbers(
double const *
x,
int * bins, std::size_t
n,
int coef=1)
const = 0 ;
72 virtual void setRange(
double xlo,
double xhi) = 0 ;
87 virtual double*
array()
const = 0 ;
94 void printName(std::ostream& os)
const override ;
95 void printTitle(std::ostream& os)
const override ;
97 void printArgs(std::ostream& os)
const override ;
98 void printValue(std::ostream& os)
const override ;
#define ClassDefOverride(name, id)
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.
int binNumber(double x) const
Returns the bin number corresponding to the value x.
TObject * Clone(const char *newname=nullptr) const override
Make a clone of an object using the Streamer facility.
virtual void binNumbers(double const *x, int *bins, std::size_t n, int coef=1) const =0
Compute the bin indices for multiple values of x.
virtual double binCenter(Int_t bin) const =0
RooAbsBinning(const RooAbsBinning &other, const char *name=nullptr)
Int_t numBins() const
Return number of bins.
virtual bool isShareable() const
If true (default), the range definition can be shared across clones of a RooRealVar.
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
void Print(Option_t *options=nullptr) const override
This method must be overridden when a class wants to print itself.
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...
virtual double * array() 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
RooAbsBinning(const char *name=nullptr)
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.
virtual RooAbsBinning * clone(const char *name=nullptr) const =0
Abstract base class for objects that represent a real value that may appear on the left hand side of ...
Abstract base class for objects that represent a real value and implements functionality common to al...
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=nullptr)
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,...
The TNamed class is the base class for all named ROOT classes.
Mother of all ROOT objects.