|
ROOT 6.18/05 Reference Guide |
Documentation for class Functor class.
It is used to wrap in a very simple and convenient way multi-dimensional 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. More... | |
| template<typename Func > | |
| Functor (const Func &f, unsigned int dim) | |
| construct from a callable object of multi-dimension with the right signature (implementing operator()(double *x) More... | |
| Functor (const Functor &rhs) | |
| Copy constructor for functor based on ROOT::Math::IMultiGenFunction. More... | |
| template<class PtrObj , typename MemFn > | |
| Functor (const PtrObj &p, MemFn memFn, unsigned int dim) | |
| construct from a pointer to member function (multi-dim type) More... | |
| virtual | ~Functor () |
| Destructor (no operations) More... | |
| ImplBase * | Clone () const |
| Clone a function. More... | |
| unsigned int | NDim () const |
| Retrieve the dimension of the function. More... | |
| Functor & | operator= (const Functor &rhs) |
| Assignment operator. More... | |
Public Member Functions inherited from ROOT::Math::IBaseFunctionMultiDimTempl< double > | |
| IBaseFunctionMultiDimTempl () | |
| virtual | ~IBaseFunctionMultiDimTempl () |
| virtual destructor More... | |
| virtual IBaseFunctionMultiDimTempl< double > * | Clone () const=0 |
| Clone a function. More... | |
| virtual unsigned int | NDim () const=0 |
| Retrieve the dimension of the function. More... | |
| double | operator() (const double *x) const |
| Evaluate the function at a point x[]. More... | |
Private Member Functions | |
| double | DoEval (const double *x) const |
| Implementation of the evaluation function. More... | |
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 >.
|
inlineprivatevirtual |
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 >.