Logo ROOT  
Reference Guide
RooFunctor1DBinding.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Project: RooFit *
3  * Package: RooFitCore *
4  * File: $Id$
5  * Authors: *
6  * WV, Wouter Verkerke, NIKHEF, verkerke@nikhef.nl *
7  * *
8  * Copyright (c) 2000-2008, NIKHEF, Regents of the University of California *
9  * and Stanford University. All rights reserved. *
10  * *
11  *****************************************************************************/
12 
13 #ifndef ROOFUNCTOR1DBINDING
14 #define ROOFUNCTOR1DBINDING
15 
16 #include "RooAbsReal.h"
17 #include "RooArgList.h"
18 #include "RooListProxy.h"
19 #include "RooAbsPdf.h"
20 #include "RooRealProxy.h"
21 #include "RooMsgService.h"
22 #include "Math/IFunction.h"
23 
24 
25 namespace RooFit {
26 
27 RooAbsReal* bindFunction(const char* name, const ROOT::Math::IBaseFunctionOneDim& ftor, RooAbsReal& vars) ;
28 RooAbsPdf* bindPdf(const char* name, const ROOT::Math::IBaseFunctionOneDim& ftor, RooAbsReal& vars) ;
29 
30 }
31 
32 
34 public:
36  // Default constructor
37  } ;
38  RooFunctor1DBinding(const char *name, const char *title, const ROOT::Math::IBaseFunctionOneDim& ftor, RooAbsReal& var);
39  RooFunctor1DBinding(const RooFunctor1DBinding& other, const char* name=0) ;
40  virtual TObject* clone(const char* newname) const { return new RooFunctor1DBinding(*this,newname); }
41  inline virtual ~RooFunctor1DBinding() {}
42  void printArgs(std::ostream& os) const ;
43 
44 protected:
45 
46  Double_t evaluate() const ;
47 
49  RooRealProxy var ; // Argument reference
50 
51 
52 private:
53 
54  ClassDef(RooFunctor1DBinding,1) // RooAbsReal binding to a ROOT::Math::IBaseFunctionOneDim
55 };
56 
57 
58 
60 public:
62  // Default constructor
63  } ;
64  RooFunctor1DPdfBinding(const char *name, const char *title, const ROOT::Math::IBaseFunctionOneDim& ftor, RooAbsReal& vars);
65  RooFunctor1DPdfBinding(const RooFunctor1DPdfBinding& other, const char* name=0) ;
66  virtual TObject* clone(const char* newname) const { return new RooFunctor1DPdfBinding(*this,newname); }
67  inline virtual ~RooFunctor1DPdfBinding() {}
68  void printArgs(std::ostream& os) const ;
69 
70 protected:
71 
72  Double_t evaluate() const ;
73 
75  RooRealProxy var ; // Argument reference
76 
77 
78 private:
79 
80  ClassDef(RooFunctor1DPdfBinding,1) // RooAbsPdf binding to a ROOT::Math::IBaseFunctionOneDim
81 };
82 
83 
84 #endif
RooFunctor1DPdfBinding::RooFunctor1DPdfBinding
RooFunctor1DPdfBinding()
Definition: RooFunctor1DBinding.h:61
RooAbsReal.h
RooFunctor1DPdfBinding::clone
virtual TObject * clone(const char *newname) const
Definition: RooFunctor1DBinding.h:66
RooMsgService.h
IFunction.h
RooFunctor1DPdfBinding::evaluate
Double_t evaluate() const
Evaluate this PDF / function / constant. Needs to be overridden by all derived classes.
Definition: RooFunctor1DBinding.cxx:114
RooFunctor1DBinding::var
RooRealProxy var
Definition: RooFunctor1DBinding.h:49
RooFunctor1DPdfBinding::func
const ROOT::Math::IBaseFunctionOneDim * func
Definition: RooFunctor1DBinding.h:74
RooAbsReal
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Definition: RooAbsReal.h:61
RooFunctor1DPdfBinding::~RooFunctor1DPdfBinding
virtual ~RooFunctor1DPdfBinding()
Definition: RooFunctor1DBinding.h:67
RooFunctor1DBinding
RooCFunction1Binding is a templated implementation of class RooAbsReal that binds generic C(++) funct...
Definition: RooFunctor1DBinding.h:33
RooFunctor1DBinding::clone
virtual TObject * clone(const char *newname) const
Definition: RooFunctor1DBinding.h:40
RooFunctor1DBinding::evaluate
Double_t evaluate() const
Evaluate this PDF / function / constant. Needs to be overridden by all derived classes.
Definition: RooFunctor1DBinding.cxx:73
RooFit::bindFunction
RooAbsReal * bindFunction(const char *name, CFUNCD1D func, RooAbsReal &x)
Definition: RooCFunction1Binding.cxx:59
RooFunctor1DPdfBinding
Definition: RooFunctor1DBinding.h:59
RooFit
The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs (or othe...
Definition: RooCFunction1Binding.h:29
RooAbsPdf.h
RooRealProxy.h
RooFunctor1DPdfBinding::var
RooRealProxy var
Definition: RooFunctor1DBinding.h:75
RooFunctor1DBinding::printArgs
void printArgs(std::ostream &os) const
Print object arguments, ie its proxies.
Definition: RooFunctor1DBinding.cxx:58
RooListProxy.h
ROOT::Math::IBaseFunctionOneDim
Interface (abstract class) for generic functions objects of one-dimension Provides a method to evalua...
Definition: IFunction.h:135
RooTemplateProxy< RooAbsReal >
Double_t
double Double_t
Definition: RtypesCore.h:59
TObject
Mother of all ROOT objects.
Definition: TObject.h:37
RooFunctor1DBinding::~RooFunctor1DBinding
virtual ~RooFunctor1DBinding()
Definition: RooFunctor1DBinding.h:41
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
RooFunctor1DBinding::func
const ROOT::Math::IBaseFunctionOneDim * func
Definition: RooFunctor1DBinding.h:48
name
char name[80]
Definition: TGX11.cxx:110
RooAbsPdf
Definition: RooAbsPdf.h:43
RooFit::bindPdf
RooAbsPdf * bindPdf(const char *name, CFUNCD1D func, RooAbsReal &x)
Definition: RooCFunction1Binding.cxx:67
RooArgList.h
RooFunctor1DBinding::RooFunctor1DBinding
RooFunctor1DBinding()
Definition: RooFunctor1DBinding.h:35
RooFunctor1DPdfBinding::printArgs
void printArgs(std::ostream &os) const
Print object arguments, ie its proxies.
Definition: RooFunctor1DBinding.cxx:99