36using std::endl, std::ostream;
83 _xlo = static_cast<RooAbsReal*>(other._lp->at(0)) ;
84 _xhi = static_cast<RooAbsReal*>(other._lp->at(1)) ;
160 coutE(InputArguments) <<
"RooParamBinning::setRange: ERROR low bound > high bound" << std::endl ;
168 coutW(InputArguments) <<
"RooParamBinning::setRange: WARNING lower bound not represented by lvalue, cannot set lower bound value through setRange()" << std::endl ;
175 coutW(InputArguments) <<
"RooParamBinning::setRange: WARNING upper bound not represented by lvalue, cannot set upper bound value through setRange()" << std::endl ;
191 for(std::size_t i = 0; i <
n; ++i) {
192 bins[i] += coef * (
x[i] >= xhiVal ?
_nbins - 1 : std::max(0,
int((
x[i] - xloVal)*oneOverW)));
204 coutE(InputArguments) <<
"RooParamBinning::binCenter ERROR: bin index " << i
205 <<
" is out of range (0," <<
_nbins-1 <<
")" << std::endl ;
231 coutE(InputArguments) <<
"RooParamBinning::binLow ERROR: bin index " << i
232 <<
" is out of range (0," <<
_nbins-1 <<
")" << std::endl ;
247 coutE(InputArguments) <<
"RooParamBinning::fitBinHigh ERROR: bin index " << i
248 <<
" is out of range (0," <<
_nbins-1 <<
")" << std::endl ;
266 for (i=0 ; i<=
_nbins ; i++) {
279 os <<
indent <<
"_xlo = " <<
_xlo << std::endl ;
280 os <<
indent <<
"_xhi = " <<
_xhi << std::endl ;
282 os <<
indent <<
"xlo() = " <<
xlo() << std::endl ;
283 os <<
indent <<
"xhi() = " <<
xhi() << std::endl ;
RooCollectionProxy< RooArgList > RooListProxy
int Int_t
Signed integer 4 bytes (int).
static void indent(ostringstream &buf, int indent_level)
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
void Print(Option_t *options=nullptr) const override
Print the object to the defaultPrintStream().
RooAbsBinning(const char *name=nullptr)
Abstract base class for objects that represent a real value that may appear on the left hand side of ...
virtual void setVal(double value)=0
Set the current value of the object. Needs to be overridden by implementations.
Abstract base class for objects that represent a real value and implements functionality common to al...
double getVal(const RooArgSet *normalisationSet=nullptr) const
Evaluate object.
RooParamBinning(const char *name=nullptr)
Default constructor.
~RooParamBinning() override
Destructor.
double * _array
! do not persist
void insertHook(RooAbsRealLValue &) const override
Hook function called by RooAbsRealLValue when this binning is inserted as binning for into given owne...
double * array() const override
Return array of bin boundaries.
double binCenter(Int_t bin) const override
Return the central value of the 'i'-th fit bin.
double binHigh(Int_t bin) const override
Return the high edge of the 'i'-th fit bin.
double binLow(Int_t bin) const override
Return the low edge of the 'i'-th fit bin.
void binNumbers(double const *x, int *bins, std::size_t n, int coef) const override
Return the fit bin index for the current value.
double binWidth(Int_t bin) const override
Return average bin width.
double averageBinWidth() const override
void printMultiline(std::ostream &os, Int_t content, bool verbose=false, TString indent="") const override
Print details of binning.
void removeHook(RooAbsRealLValue &) const override
Hook function called by RooAbsRealLValue when this binning is removed as binning for into given owner...
void setRange(double xlo, double xhi) override
Adjust range by adjusting values of external RooAbsReal values Only functional when external represen...
const char * GetName() const override
Returns name of object.