18#ifndef ROOFIT_ROOFITCORE_INC_BINWIDTHFUNCTION_H_
19#define ROOFIT_ROOFITCORE_INC_BINWIDTHFUNCTION_H_
35 _histFunc(
"HistFuncForBinWidth",
"Handle to a RooHistFunc, whose bin volumes should be returned.", this,
#define ClassDefOverride(name, id)
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...
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Returns the bin width (or volume) given a RooHistFunc.
void doEval(RooFit::EvalContext &) const override
Compute bin index for all values of the observable(s) in evalData, and return their volumes or invers...
std::unique_ptr< RooAbsArg > compileForNormSet(RooArgSet const &normSet, RooFit::Detail::CompileContext &ctx) const override
TObject * clone(const char *newname=nullptr) const override
Copy the object and return as TObject*.
bool divideByBinWidth() const
std::list< double > * binBoundaries(RooAbsRealLValue &obs, double xlo, double xhi) const override
Return bin boundaries of internal RooHistFunc.
const RooHistFunc & histFunc() const
RooBinWidthFunction(const RooBinWidthFunction &other, const char *newname=nullptr)
Copy an existing object.
std::list< double > * plotSamplingHint(RooAbsRealLValue &obs, double xlo, double xhi) const override
Return plotSamplingHint of internal RooHistFunc.
RooBinWidthFunction()
Create an empty instance.
bool isBinnedDistribution(const RooArgSet &obs) const override
Test if internal RooHistFunc is binned.
static void disableClass()
Globally disable bin-width corrections by this class.
double evaluate() const override
Compute current bin of observable, and return its volume or inverse volume, depending on configuratio...
RooTemplateProxy< const RooHistFunc > _histFunc
static bool isClassEnabled()
Returns true if bin-width corrections by this class are globally enabled, false otherwise.
static void enableClass()
Globally enable bin-width corrections by this class.
A real-valued function sampled from a multidimensional histogram.
std::list< double > * binBoundaries(RooAbsRealLValue &, double, double) const override
Return sampling hint for making curves of (projections) of this function as the recursive division st...
std::list< double > * plotSamplingHint(RooAbsRealLValue &obs, double xlo, double xhi) const override
Return sampling hint for making curves of (projections) of this function as the recursive division st...
bool isBinnedDistribution(const RooArgSet &) const override
Tests if the distribution is binned. Unless overridden by derived classes, this always returns false.
Mother of all ROOT objects.