16#ifndef ROO_FOAM_GENERATOR
17#define ROO_FOAM_GENERATOR
Class RooAbsNumGenerator is the abstract base class for MC event generator implementations like RooAc...
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooDataSet is a container class to hold unbinned data.
Class RooFoamGenerator is a generic toy monte carlo generator that implement the TFOAM sampling techn...
bool canSampleConditional() const override
const RooArgSet * generateEvent(UInt_t remaining, double &resampleRatio) override
are we actually generating anything? (the cache always contains at least our function value)
RooAbsNumGenerator * clone(const RooAbsReal &func, const RooArgSet &genVars, const RooArgSet &, const RooNumGenConfig &config, bool verbose=false, const RooAbsReal *maxFuncVal=nullptr) const override
double * _range
Range of observables to be generated ;.
~RooFoamGenerator() override
Destructor.
bool canSampleCategories() const override
RooTFoamBinding * _binding
Binding of RooAbsReal to TFoam function interface.
double * _xmin
Lower bound of observables to be generated ;.
std::string const & generatorName() const override
Return unique name of generator implementation.
TFoam * _tfoam
Instance of TFOAM generator.
static void registerSampler(RooNumGenFactory &fact)
Register RooIntegrator1D, is parameters and capabilities with RooNumIntFactory.
double * _vec
Transfer array for FOAM output.
RooNumGenConfig holds the configuration parameters of the various numeric integrators used by RooReal...
RooNumGenFactory is a factory to instantiate numeric integrators from a given function binding and a ...
RooRealVar represents a variable that can be changed from the outside.
Lightweight interface adaptor that binds a RooAbsPdf to TFOAM.
TFoam is the main class of the multi-dimensional general purpose Monte Carlo event generator (integra...