95 x(
"x",
"Dependent or convolution variable",this,_x),
96 _basisCode(0), _basis(0),
112 _basisCode(other._basisCode), _basis(0),
175 <<
") convolution parameter of basis function and PDF don't match" << endl
176 <<
"basis->findServer(0) = " << inBasis->
findServer(0) << endl
177 <<
"x.absArg() = " <<
x.
absArg() << endl ;
183 <<
") basis function '" << inBasis->
GetTitle() <<
"' is not supported." << endl ;
188 newName.Append(
"_conv_") ;
189 newName.Append(inBasis->
GetName()) ;
190 newName.Append(
"_[") ;
191 newName.Append(owner->
GetName()) ;
192 newName.Append(
"]") ;
196 TString newTitle(conv->
GetTitle()) ;
197 newTitle.Append(
" convoluted with basis function ") ;
198 newTitle.Append(inBasis->
GetName()) ;
320 return (mustReplaceAll && !newBasis) ;
377 os << indent <<
"--- RooResolutionModel ---" << endl;
378 os << indent <<
"basis function = " ;
382 os <<
"<none>" << endl ;
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
Bool_t redirectServers(const RooAbsCollection &newServerList, Bool_t mustReplaceAll=kFALSE, Bool_t nameChange=kFALSE, Bool_t isRecursionStep=kFALSE)
Iterator over _clientListValue.
void addServer(RooAbsArg &server, Bool_t valueProp=kTRUE, Bool_t shapeProp=kFALSE)
Register another RooAbsArg as a server to us, ie, declare that we depend on it.
void leafNodeServerList(RooAbsCollection *list, const RooAbsArg *arg=0, Bool_t recurseNonDerived=kFALSE) const
Fill supplied list with all leaf nodes of the arg tree, starting with ourself as top node.
virtual TObject * Clone(const char *newname=0) const
Make a clone of an object using the Streamer facility.
Bool_t isValueDirty() const
void clearValueDirty() const
static Bool_t _verboseDirty
void removeServer(RooAbsArg &server, Bool_t force=kFALSE)
Unregister another RooAbsArg as a server to us, ie, declare that we no longer depend on its value and...
void clearShapeDirty() const
TIterator * serverIterator() const
RooAbsArg * findServer(const char *name) const
RooAbsCollection is an abstract container object that can hold multiple RooAbsArg objects.
RooAbsArg * find(const char *name) const
Find object with given name in list.
RooAbsPdf is the abstract interface for all probability density functions The class provides hybrid a...
virtual void printMultiline(std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
Print multi line detailed information of this RooAbsPdf.
virtual Bool_t syncNormalization(const RooArgSet *dset, Bool_t adjustProxies=kTRUE) const
Verify that the normalization integral cached with this PDF is valid for given set of normalization o...
virtual Double_t getValV(const RooArgSet *set=0) const
Return current value, normalized by integrating over the observables in 'nset'.
static Int_t _verboseEval
virtual Double_t evaluate() const =0
Evaluate this PDF / function / constant. Needs to be overridden by all derived classes.
Double_t getVal(const RooArgSet *set=0) const
Evaluate object. Returns either cached value or triggers a recalculation.
RooAbsArg * absArg() const
RooArgSet is a container object that can hold multiple RooAbsArg objects.
virtual void printStream(std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
Print description of object on ostream, printing contents set by contents integer,...
const RooAbsReal & arg() const
RooRealVar represents a fundamental (non-derived) real valued object.
static RooFormulaVar * _identity
virtual TObject * clone(const char *newname) const =0
virtual void changeBasis(RooFormulaVar *basis)
Change the basis function we convolute with.
Double_t getValV(const RooArgSet *nset=0) const
Modified version of RooAbsPdf::getValF().
virtual Int_t basisCode(const char *name) const =0
virtual RooResolutionModel * convolution(RooFormulaVar *basis, RooAbsArg *owner) const
Instantiate a clone of this resolution model representing a convolution with given basis function.
Bool_t traceEvalHook(Double_t value) const
Floating point error checking and tracing for given float value.
virtual void printMultiline(std::ostream &os, Int_t content, Bool_t verbose=kFALSE, TString indent="") const
Print info about this object to the specified stream.
static RooFormulaVar * identity()
Return identity formula pointer.
const RooRealVar & basisConvVar() const
Return the convolution variable of the selection basis function.
virtual Bool_t redirectServersHook(const RooAbsCollection &newServerList, Bool_t mustReplaceAll, Bool_t nameChange, Bool_t isRecursive)
Forward redirectServers call to our basis function, which is not connected to either resolution model...
virtual ~RooResolutionModel()
Destructor.
RooRealVar & convVar() const
Return the convolution variable of the resolution model.
virtual void normLeafServerList(RooArgSet &list) const
Return the list of servers used by our normalization integral.
Double_t getNorm(const RooArgSet *nset=0) const
Return the integral of this PDF over all elements of 'nset'.
static void cleanup()
Cleanup hook for RooSentinel atexit handler.
const RooFormulaVar & basis() const
static void activate()
Install atexit handler that calls CleanupRooFitAtExit() on program termination.
Iterator abstract base class.
virtual TObject * Next()=0
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
virtual const char * GetTitle() const
Returns title of object.
virtual const char * GetName() const
Returns name of object.