57 if (!
dynamic_cast<RooCategory*
>(arg)) allCat = false ;
62 _superCat = std::make_unique<RooSuperCategory>(
"superCat",
"superCat",*data.get()) ;
90 double wgt =
_catTable->get(nameIdx.first.c_str());
105 oocoutW(
_real,Eval) <<
"RooDataProjBinding::operator() projecting over " << nEvt <<
" events" << std::endl ;
118 for (i=0 ; i<nEvt ; i++) {
121 double wgt =
_data->weight() ;
125 result += wgt *
ret ;
136 if (wgtSum==0)
return 0 ;
137 return result / wgtSum ;
int Int_t
Signed integer 4 bytes (int).
Common abstract base class for objects that represent a value and a "shape" in RooFit.
Abstract base class for binned and unbinned datasets.
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.
Object to represent discrete states.
std::unique_ptr< Roo1DTable > _catTable
Supercategory table generated from _data.
const RooArgSet * _nset
Normalization set for real function.
bool _first
Bit indicating if operator() has been called yet.
const RooAbsReal * _real
Real function to be projected.
RooDataProjBinding(const RooAbsReal &real, const RooAbsData &data, const RooArgSet &vars, const RooArgSet *normSet=nullptr)
Constructor of a data weighted average function binding with variables 'vars' for function 'real' and...
~RooDataProjBinding() override
std::unique_ptr< RooSuperCategory > _superCat
Supercategory constructed from _data's category variables.
const RooAbsData * _data
Dataset used for projection.
double operator()(const double xvector[]) const override
Evaluate data-projected values of the bound real function.
RooRealBinding(const RooAbsReal &func, const RooArgSet &vars, const RooArgSet *nset=nullptr, bool clipInvalid=false, const TNamed *rangeName=nullptr)
Construct a lightweight function binding of RooAbsReal func to variables 'vars'.
void loadValues(const double xvector[]) const
Load the vector of variable values into the RooRealVars associated as variables with the bound RooAbs...