CMS 3D CMS Logo

List of all members | Public 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 ()=delete
 
 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 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 168 of file SimpleFunctors.h.

Constructor & Destructor Documentation

◆ FcnFunctor3() [1/2]

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 169 of file SimpleFunctors.h.

169 : fcn_(fcn) {}

◆ FcnFunctor3() [2/2]

template<typename Result , typename Arg1 , typename Arg2 , typename Arg3 >
npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >::FcnFunctor3 ( )
delete

Member Function Documentation

◆ operator()()

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

Member Data Documentation

◆ fcn_

template<typename Result , typename Arg1 , typename Arg2 , typename Arg3 >
Result(* npstat::FcnFunctor3< Result, Arg1, Arg2, Arg3 >::fcn_) (Arg1, Arg2, Arg3)
private
DDAxes::y
DDAxes::x
fcn
void fcn(int &, double *, double &, double *, int)
Definition: LASBarrelAlgorithm.cc:388
DDAxes::z
npstat::FcnFunctor3::fcn_
Result(* fcn_)(Arg1, Arg2, Arg3)
Definition: SimpleFunctors.h:176