Documentation for class Functor class.
It is used to wrap in a very simple and convenient way multidimensional function objects. It can wrap all the following types:
The function dimension is required when constructing the functor.
Public Types  
typedef FunctorImpl< IBaseFunctionMultiDim >  Impl 
typedef IBaseFunctionMultiDim::BaseFunc  ImplBase 
Public Types inherited from ROOT::Math::IBaseFunctionMultiDimTempl< double >  
typedef double  BackendType 
typedef IBaseFunctionMultiDimTempl< double >  BaseFunc 
Public Member Functions  
Functor ()  
Default constructor.  
template<typename Func >  
Functor (const Func &f, unsigned int dim)  
construct from a callable object of multidimension with the right signature (implementing operator()(const double *x)  
Functor (const Functor &rhs)  
Copy constructor for functor based on ROOT::Math::IMultiGenFunction.  
template<class PtrObj , typename MemFn >  
Functor (const PtrObj &p, MemFn memFn, unsigned int dim)  
construct from a pointer to member function (multidim type)  
Functor (const std::function< double(double const *)> &f, unsigned int dim)  
specialized constructor from a std::function of multidimension with the right signature (double operator()(double const *x) This specialized constructor is introduced in order to use the Functor class in Python passing Python user defined functions  
virtual  ~Functor () 
Destructor (no operations)  
ImplBase *  Clone () const 
Clone a function.  
unsigned int  NDim () const 
Retrieve the dimension of the function.  
Functor &  operator= (const Functor &rhs) 
Assignment operator.  
Public Member Functions inherited from ROOT::Math::IBaseFunctionMultiDimTempl< double >  
IBaseFunctionMultiDimTempl ()  
virtual  ~IBaseFunctionMultiDimTempl () 
virtual destructor  
double  operator() (const double *x) const 
Evaluate the function at a point x[].  
Private Member Functions  
double  DoEval (const double *x) const 
Implementation of the evaluation function.  
Private Attributes  
std::unique_ptr< Impl >  fImpl 
#include <Math/Functor.h>

inline 

inline 

inline 

inlinevirtual 

inline 
Copy constructor for functor based on ROOT::Math::IMultiGenFunction.

inlinevirtual 
Clone a function.
Each derived class must implement their version of the Clone method
Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.
Implementation of the evaluation function.
Must be implemented by derived classes
Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.

inlinevirtual 
Retrieve the dimension of the function.
Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.