CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 > Struct Template Reference

#include <SimpleFunctors.h>

Inheritance diagram for npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >:
npstat::Functor3< Result, Arg1, Arg2, Arg3 >

Public Member Functions

 FcnFunctor3 (Result(*fcn)(Arg1, Arg2, Arg3))
 
Result operator() (const Arg1 &x, const Arg2 &y, const Arg3 &z) const
 
- Public Member Functions inherited from npstat::Functor3< Result, Arg1, Arg2, Arg3 >
virtual ~Functor3 ()
 

Private Member Functions

 FcnFunctor3 ()=delete
 

Private Attributes

Result(* fcn_ )(Arg1, Arg2, Arg3)
 

Additional Inherited Members

- Public Types inherited from npstat::Functor3< Result, Arg1, Arg2, Arg3 >
typedef Arg1 first_argument_type
 
typedef Result result_type
 
typedef Arg2 second_argument_type
 
typedef Arg3 third_argument_type
 

Detailed Description

template<typename Result, typename Arg1, typename Arg2, typename Arg3>
struct npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >

Adaptation for using three-argument functors with simple cmath-style functions. Do not use this struct as a base class.

Definition at line 183 of file SimpleFunctors.h.

Constructor & Destructor Documentation

template<typename Result , typename Arg1 , typename Arg2 , typename Arg3 >
npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >::FcnFunctor3 ( Result(*)(Arg1, Arg2, Arg3)  fcn)
inlineexplicit

Definition at line 185 of file SimpleFunctors.h.

185 :fcn_(fcn) {}
Result(* fcn_)(Arg1, Arg2, Arg3)
void fcn(int &, double *, double &, double *, int)
template<typename Result , typename Arg1 , typename Arg2 , typename Arg3 >
npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >::FcnFunctor3 ( )
privatedelete

Member Function Documentation

template<typename Result , typename Arg1 , typename Arg2 , typename Arg3 >
Result npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >::operator() ( const Arg1 &  x,
const Arg2 &  y,
const Arg3 &  z 
) const
inlinevirtual

Implements npstat::Functor3< Result, Arg1, Arg2, Arg3 >.

Definition at line 187 of file SimpleFunctors.h.

188  {return fcn_(x, y, z);}
Result(* fcn_)(Arg1, Arg2, Arg3)

Member Data Documentation

template<typename Result , typename Arg1 , typename Arg2 , typename Arg3 >
Result(* npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >::fcn_) (Arg1, Arg2, Arg3)
private

Definition at line 192 of file SimpleFunctors.h.