Logo ROOT   6.18/05
Reference Guide
RooGenFunction.cxx
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
17
18/**
19\file RooGenFunction.cxx
20\class RooGenFunction
21\ingroup Roofitcore
22
23Lightweight interface adaptor that exports a RooAbsReal as a ROOT::Math::IGenFunction
24**/
25
26
27#include "RooFit.h"
28#include "Riostream.h"
29
30#include "RooGenFunction.h"
31#include "RooRealBinding.h"
32#include "RooAbsReal.h"
33#include "RooAbsPdf.h"
34#include "RooArgSet.h"
35
36#include <assert.h>
37
38
39
40using namespace std;
41
43;
44
45////////////////////////////////////////////////////////////////////////////////
46
47RooGenFunction::RooGenFunction(const RooAbsReal& func, const RooArgList& observables, const RooArgList& parameters) :
48 _ftor(func,observables,parameters,observables)
49{
50}
51
52
53////////////////////////////////////////////////////////////////////////////////
54
55RooGenFunction::RooGenFunction(const RooAbsReal& func, const RooArgList& observables, const RooArgList& parameters, const RooArgSet& nset) :
56 _ftor(func,observables,parameters,nset)
57{
58}
59
60
61////////////////////////////////////////////////////////////////////////////////
62
64 ROOT::Math::IGenFunction(other), _ftor(other._ftor)
65{
66}
67
68
69////////////////////////////////////////////////////////////////////////////////
70
72{
73}
74
75
76////////////////////////////////////////////////////////////////////////////////
77
78double RooGenFunction::DoEval(double x) const
79{
80 return _ftor(x) ;
81}
82
83
#define ClassImp(name)
Definition: Rtypes.h:365
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Definition: RooAbsReal.h:53
RooArgList is a container object that can hold multiple RooAbsArg objects.
Definition: RooArgList.h:21
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Definition: RooArgSet.h:28
Lightweight interface adaptor that exports a RooAbsReal as a ROOT::Math::IGenFunction.
RooGenFunction(const RooAbsReal &func, const RooArgList &observables, const RooArgList &parameters)
virtual ~RooGenFunction()
double DoEval(double) const
implementation of the evaluation function. Must be implemented by derived classes
RooFunctor _ftor
Double_t x[n]
Definition: legend1.C:17
Namespace for new Math classes and functions.
IBaseFunctionOneDim IGenFunction
Definition: IFunctionfwd.h:37
Namespace for new ROOT classes and functions.
Definition: StringConv.hxx:21