Revision 716fb731a3c8c9b583235feddac21006994d9626 authored by Kyle Cranmer on 03 August 2011, 22:09:36 UTC, committed by Kyle Cranmer on 03 August 2011, 22:09:36 UTC
git-svn-id: http://root.cern.ch/svn/root/branches/v5-30-00-patches@40446 27541ba8-7e3a-0410-8455-c3a389f83636
1 parent 0db9ccb
RooFunctor.h
/*****************************************************************************
* Project: RooFit *
* Package: RooFitCore *
* @(#)root/roofitcore:$Id$
* Authors: *
* WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
* DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
* *
* Copyright (c) 2000-2005, Regents of the University of California *
* and Stanford University. All rights reserved. *
* *
* Redistribution and use in source and binary forms, *
* with or without modification, are permitted according to the terms *
* listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
*****************************************************************************/
#ifndef ROO_FUNCTOR
#define ROO_FUNCTOR
#include "RooArgSet.h"
#include "RooAbsReal.h"
class RooAbsFunc ;
class RooAbsPdf ;
class RooFunctor {
public:
RooFunctor(const RooAbsFunc& func) ;
RooFunctor(const RooAbsReal& func, const RooArgList& observables, const RooArgList& parameters) ;
RooFunctor(const RooAbsReal& func, const RooArgList& observables, const RooArgList& parameters, const RooArgSet& nset) ;
RooFunctor(const RooFunctor&) ;
virtual ~RooFunctor() ;
Int_t nObs() const {
// Number of observables
return _nobs ;
}
Int_t nPar() const {
// Number of parameters;
return _npar ;
}
//Int_t numCall() const { return _binding->numCall() ; }
//void resetNumCall() const { _binding->resetNumCall() ; }
Double_t operator()(Double_t x) const { return eval(x) ; }
Double_t operator()(const Double_t* x, const Double_t* p) const { return eval(x,p) ; }
Double_t operator()(const Double_t* x) const { return eval(x) ; }
Double_t eval(const Double_t* /*x*/, const Double_t* /*p*/) const ;
Double_t eval(const Double_t* /*x*/) const ;
Double_t eval(Double_t /*x*/) const ;
RooAbsFunc& binding() { return *_binding ; }
protected:
Bool_t _ownBinding ; // Do we own the binding function
RooArgSet _nset ; // Normalization observables
RooAbsFunc* _binding ; // Function binding
Double_t* _x ; //! Transfer array ;
Int_t _npar ; //! Number of parameters ;
Int_t _nobs ; //! Number of observables ;
ClassDef(RooFunctor,0) // Export RooAbsReal as functor
};
#endif
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...