16#ifndef ROO_PROD_GEN_CONTEXT
17#define ROO_PROD_GEN_CONTEXT
#define ClassDef(name, id)
static void indent(ostringstream &buf, int indent_level)
RooAbsGenContext is the abstract base class for generator contexts of RooAbsPdf objects.
Class RooAcceptReject is a generic toy monte carlo generator implement the accept/reject sampling tec...
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooDataSet is a container class to hold unbinned data.
RooProdGenContext is an efficient implementation of the generator context specific for RooProdPdf PDF...
RooArgSet _ownedMultiProds
RooSuperCategory * _ccdSuper
RooProdGenContext(const RooProdGenContext &other)
std::list< RooAbsGenContext * > _gcList
virtual void attach(const RooArgSet ¶ms)
Attach generator to given event buffer.
RooRealIntegral * _pdfCcdInt
RooProdGenContext(const RooProdPdf &model, const RooArgSet &vars, const RooDataSet *prototype=0, const RooArgSet *auxProto=0, Bool_t _verbose=kFALSE)
virtual void generateEvent(RooArgSet &theEvent, Int_t remaining)
Generate a single event of the product by generating the components of the products sequentially.
virtual void setProtoDataOrder(Int_t *lut)
Set the traversal order of the prototype dataset by the given lookup table.
virtual void initGenerator(const RooArgSet &theEvent)
One-time initialization of generator context, forward to component generators.
virtual void printMultiline(std::ostream &os, Int_t content, Bool_t verbose=kFALSE, TString indent="") const
Detailed printing interface.
virtual ~RooProdGenContext()
Destructor. Delete all owned subgenerator contexts.
RooProdPdf is an efficient implementation of a product of PDFs of the form.
RooRealIntegral performs hybrid numerical/analytical integrals of RooAbsReal objects.
RooSuperCategory can join several RooAbsCategoryLValue objects into a single category.
Iterator abstract base class.
This is the base class for the ROOT Random number generators.