59 oocoutE(
nullptr, Generation) <<
"RooAbsNumGenerator::RooAbsNumGenerator(" << func.
GetName() <<
") Couldn't deep-clone function, abort," << endl ;
73 if(!arg->isFundamental()) {
74 oocoutE(
nullptr, Generation) << func.
GetName() <<
"::RooAbsNumGenerator: cannot generate values for derived \""
75 << arg->GetName() <<
"\"" << endl;
87 assert(
nullptr != arg);
91 if(
nullptr != catVar) {
94 else if(
nullptr != realVar) {
99 oocoutE(
nullptr, Generation) << func.
GetName() <<
"::RooAbsNumGenerator: cannot generate values for \""
100 << realVar->
GetName() <<
"\" with unbound range" << endl;
105 oocoutE(
nullptr, Generation) << func.
GetName() <<
"::RooAbsNumGenerator" <<
": cannot generate values for \""
106 << arg->GetName() <<
"\" with unexpected type" << endl;
111 oocoutE(
nullptr, Generation) << func.
GetName() <<
"::RooAbsNumGenerator" <<
": constructor failed with errors" << endl;
122 _cache= std::make_unique<RooDataSet>(
"cache",
"Accept-Reject Event Cache",cacheArgs);
126 assert(
nullptr != cacheVars);
127 _funcClone->recursiveRedirectServers(*cacheVars,
false);
150 _funcClone->recursiveRedirectServers(newParams) ;
Common abstract base class for objects that represent a value and a "shape" in RooFit.
virtual bool remove(const RooAbsArg &var, bool silent=false, bool matchByNameOnly=false)
Remove the specified argument from our list.
virtual bool add(const RooAbsArg &var, bool silent=false)
Add the specified argument to list.
RooAbsArg * find(const char *name) const
Find object with given name in list.
RooArgSet _catVars
Set of discrete observabeles.
RooArgSet _realVars
Set of real valued observabeles.
std::unique_ptr< RooAbsArg > _funcValStore
RRV storing function value in context.
const RooAbsReal * _funcMaxVal
Container for maximum function value.
RooArgSet _cloneSet
Set owning clone of input function.
RooAbsReal * _funcClone
Pointer to top level node of cloned function.
bool _verbose
Verbose flag.
virtual ~RooAbsNumGenerator()
RooRealVar * _funcValPtr
RRV storing function value in output dataset.
void attachParameters(const RooArgSet &vars)
Reattach original parameters to function clone.
std::unique_ptr< RooDataSet > _cache
Dataset holding generared values of observables.
bool hasMax(const char *name=nullptr) const
Check if variable has an upper bound.
bool hasMin(const char *name=nullptr) const
Check if variable has a lower bound.
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.
RooArgSet * snapshot(bool deepCopy=true) const
Use RooAbsCollection::snapshot(), but return as RooArgSet.
Object to represent discrete states.
static void softAbort()
Soft abort function that interrupts macro execution but doesn't kill ROOT.
Variable that can be changed from the outside.
const char * GetName() const override
Returns name of object.