ROOT
6.30.04
Reference Guide
All
Namespaces
Files
Pages
RooFunctor.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* Project: RooFit *
3
* Package: RooFitCore *
4
* @(#)root/roofitcore:$Id$
5
* Authors: *
6
* WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7
* DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8
* *
9
* Copyright (c) 2000-2005, Regents of the University of California *
10
* and Stanford University. All rights reserved. *
11
* *
12
* Redistribution and use in source and binary forms, *
13
* with or without modification, are permitted according to the terms *
14
* listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15
*****************************************************************************/
16
#ifndef ROO_FUNCTOR
17
#define ROO_FUNCTOR
18
19
#include "
RooArgSet.h
"
20
#include "
RooAbsReal.h
"
21
22
class
RooAbsFunc ;
23
class
RooAbsPdf ;
24
25
class
RooFunctor {
26
27
public
:
28
RooFunctor(
const
RooAbsFunc& func) ;
29
RooFunctor(
const
RooAbsReal& func,
const
RooArgList& observables,
const
RooArgList& parameters) ;
30
RooFunctor(
const
RooAbsReal& func,
const
RooArgList& observables,
const
RooArgList& parameters,
const
RooArgSet& nset) ;
31
RooFunctor(
const
RooFunctor&) ;
32
virtual
~RooFunctor() ;
33
34
Int_t nObs()
const
{
35
// Number of observables
36
return
_nobs ;
37
}
38
Int_t nPar()
const
{
39
// Number of parameters;
40
return
_npar ;
41
}
42
43
//Int_t numCall() const { return _binding->numCall() ; }
44
//void resetNumCall() const { _binding->resetNumCall() ; }
45
46
47
Double_t operator()(Double_t x)
const
{
return
eval(x) ; }
48
Double_t operator()(
const
Double_t* x,
const
Double_t* p)
const
{
return
eval(x,p) ; }
49
Double_t operator()(
const
Double_t* x)
const
{
return
eval(x) ; }
50
51
Double_t eval(
const
Double_t*
/*x*/
,
const
Double_t*
/*p*/
)
const
;
52
Double_t eval(
const
Double_t*
/*x*/
)
const
;
53
Double_t eval(Double_t
/*x*/
)
const
;
54
55
RooAbsFunc& binding() {
return
*_binding ; }
56
57
protected
:
58
59
Bool_t _ownBinding ;
// Do we own the binding function
60
RooArgSet _nset ;
// Normalization observables
61
RooAbsFunc* _binding ;
// Function binding
62
Double_t* _x ;
//! Transfer array ;
63
Int_t _npar ;
//! Number of parameters ;
64
Int_t _nobs ;
//! Number of observables ;
65
66
ClassDef(RooFunctor,0)
// Export RooAbsReal as functor
67
};
68
69
#endif
70
RooArgSet.h
RooAbsReal.h
roofit
roofitcore
inc
RooFunctor.h
Generated on Tue May 5 2020 14:03:21 for ROOT by
1.8.5