57 const double volume = idx >= 0 ? volumes[idx] : 1.;
72 for (std::size_t i=0; i < bins.size(); ++i) {
77 for (std::size_t i=0; i < bins.size(); ++i) {
78 output[i] = bins[i] >= 0 ? 1./volumes[bins[i]] : 1.;
81 for (std::size_t i=0; i < bins.size(); ++i) {
82 output[i] = bins[i] >= 0 ? volumes[bins[i]] : 1.;
void computeBatch(cudaStream_t *, double *output, size_t size, RooFit::Detail::DataMap const &) const override
Compute bin index for all values of the observable(s) in evalData, and return their volumes or invers...
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.
The RooDataHist is a container class to hold N-dimensional binned data.
RooSpan< const double > binVolumes(std::size_t first, std::size_t len) const
Retrieve all bin volumes. Bins are indexed according to getIndex().
Int_t numEntries() const override
Return the number of bins.
std::vector< Int_t > getBins(RooFit::Detail::DataMap const &dataMap) const
Compute bin numbers corresponding to all coordinates in evalData.
Int_t getBin() const
Compute bin number corresponding to current coordinates.
RooDataHist & dataHist()
Return RooDataHist that is represented.
static void output(int code)