56 _prototype(prototype),
64 if (
model.recursiveCheckObservables(&vars)) {
65 coutE(
Generation) <<
"RooAbsGenContext::ctor: Error in PDF dependents" << endl ;
96 if (
model.canBeExtended()) {
103 if (
model.normRange()) {
167 <<
":generate: PDF not extendable: cannot calculate expected number of events" << endl;
174 <<
":generate: cannot calculate expected number of events" << endl;
178 << nEvents <<
" events" << endl;
183 double nExpEvents = nEvents;
185 cxcoutI(
Generation) <<
" Extended mode active, number of events generated (" << nEvents <<
") is Poisson fluctuation on "
186 <<
GetName() <<
"::expectedEvents() = " << nExpEvents << endl ;
199 << arg->
GetName() <<
"\"" << endl;
214 title.Prepend(
"Generated From ");
242 << actualProtoIdx <<
" from prototype dataset" << endl;
304 os << IsA()->GetName() ;
361 for (i=0 ; i<
n ; i++) {
380 cxcoutD(
Generation) <<
"RooGenContext::resampleData*( existing production trimmed from " << nOrig <<
" to " << trimmedData->
numEntries() <<
" events" << endl ;
414 if (opt && TString(opt).Contains(
"v")) {
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
Bool_t contains(const RooAbsArg &var) const
RooAbsCollection * snapshot(Bool_t deepCopy=kTRUE) const
Take a snap shot of current collection contents: An owning collection is returned containing clones o...
TIterator * createIterator(Bool_t dir=kIterForward) const
RooAbsData * reduce(const RooCmdArg &arg1, const RooCmdArg &arg2=RooCmdArg(), const RooCmdArg &arg3=RooCmdArg(), const RooCmdArg &arg4=RooCmdArg(), const RooCmdArg &arg5=RooCmdArg(), const RooCmdArg &arg6=RooCmdArg(), const RooCmdArg &arg7=RooCmdArg(), const RooCmdArg &arg8=RooCmdArg())
Create a reduced copy of this dataset.
virtual Int_t numEntries() const
void setDirtyProp(Bool_t flag)
Control propagation of dirty flags from observables in dataset.
RooAbsGenContext is the abstract base class for generator contexts of RooAbsPdf objects.
virtual RooDataSet * createDataSet(const char *name, const char *title, const RooArgSet &obs)
Create an empty dataset to hold the events that will be generated.
RooAbsPdf::ExtendMode _extendMode
virtual StyleOption defaultPrintStyle(Option_t *opt) const
Define default print style.
virtual Int_t defaultPrintContents(Option_t *opt) const
Define default contents when printing.
virtual void printTitle(std::ostream &os) const
Print title of context.
virtual void attach(const RooArgSet ¶ms)
Interface to attach given parameters to object in this context.
virtual void printMultiline(std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
Interface for multi-line printing.
virtual void printName(std::ostream &os) const
Print name of context.
virtual void initGenerator(const RooArgSet &theEvent)
Interface function to initialize context for generation for given set of observables.
const RooDataSet * _prototype
virtual void Print(Option_t *options=0) const
Print TNamed name and title.
virtual RooDataSet * generate(Double_t nEvents=0, Bool_t skipInit=kFALSE, Bool_t extendedMode=kFALSE)
Generate the specified number of events with nEvents>0 and and return a dataset containing the genera...
RooAbsGenContext(const RooAbsPdf &model, const RooArgSet &vars, const RooDataSet *prototype=0, const RooArgSet *auxProto=0, Bool_t _verbose=kFALSE)
Constructor.
void resampleData(Double_t &ratio)
Rescale existing output buffer with given ratio.
virtual void generateEvent(RooArgSet &theEvent, Int_t remaining)=0
virtual void printArgs(std::ostream &os) const
Print arguments of context, i.e. the observables being generated in this context.
virtual void printClassName(std::ostream &os) const
Print class name of context.
virtual void setProtoDataOrder(Int_t *lut)
Set the traversal order of prototype data to that in the lookup tables passed as argument.
virtual ~RooAbsGenContext()
Destructor.
RooAbsPdf is the abstract interface for all probability density functions The class provides hybrid a...
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Bool_t isInRange(const char *rangeSpec)
virtual Bool_t add(const RooAbsCollection &col, Bool_t silent=kFALSE)
Add a collection of arguments to this collection by calling add() for each element in the source coll...
virtual void addClone(const RooAbsCollection &col, Bool_t silent=kFALSE)
Add a collection of arguments to this collection by calling addOwned() for each element in the source...
RooDataSet is a container class to hold unbinned data.
virtual const RooArgSet * get(Int_t index) const
Return RooArgSet with coordinates of event 'index'.
virtual void addFast(const RooArgSet &row, Double_t weight=1.0, Double_t weightError=0)
Add a data point, with its coordinates specified in the 'data' argset, to the data set.
static TRandom * randomGenerator()
Return a pointer to a singleton random-number generator implementation.
Iterator abstract base class.
virtual TObject * Next()=0
The TNamed class is the base class for all named ROOT classes.
virtual const char * GetTitle() const
Returns title of object.
virtual const char * GetName() const
Returns name of object.
virtual const char * ClassName() const
Returns name of class to which the object belongs.
virtual Int_t Poisson(Double_t mean)
Generates a random integer N according to a Poisson law.
RooCmdArg EventRange(Int_t nStart, Int_t nStop)