CMS 3D CMS Logo

Public Member Functions | Public Attributes

funct::ProductStruct< A, B > Struct Template Reference

#include <Product.h>

List of all members.

Public Member Functions

 operator double () const
double operator() (double x, double y) const
double operator() (double x) const
double operator() () const
 ProductStruct (const A &a, const B &b)

Public Attributes

A _1
B _2

Detailed Description

template<typename A, typename B>
struct funct::ProductStruct< A, B >

Definition at line 7 of file Product.h.


Constructor & Destructor Documentation

template<typename A, typename B>
funct::ProductStruct< A, B >::ProductStruct ( const A a,
const B b 
) [inline]

Definition at line 8 of file Product.h.

: _1(a), _2(b) { }

Member Function Documentation

template<typename A, typename B>
funct::ProductStruct< A, B >::operator double ( ) const [inline]

Definition at line 12 of file Product.h.

References funct::ProductStruct< A, B >::_1, and funct::ProductStruct< A, B >::_2.

                            {
      return _1() * _2();
    }
template<typename A, typename B>
double funct::ProductStruct< A, B >::operator() ( double  x,
double  y 
) const [inline]

Definition at line 18 of file Product.h.

References funct::ProductStruct< A, B >::_1, and funct::ProductStruct< A, B >::_2.

                                                {
      return _1(x, y) * _2(x, y);
    }
template<typename A, typename B>
double funct::ProductStruct< A, B >::operator() ( double  x) const [inline]

Definition at line 15 of file Product.h.

References funct::ProductStruct< A, B >::_1, and funct::ProductStruct< A, B >::_2.

                                      {
      return _1(x) * _2(x);
    }
template<typename A, typename B>
double funct::ProductStruct< A, B >::operator() ( ) const [inline]

Definition at line 9 of file Product.h.

References funct::ProductStruct< A, B >::_1, and funct::ProductStruct< A, B >::_2.

                              {
      return _1() * _2();
    }

Member Data Documentation

template<typename A, typename B>
A funct::ProductStruct< A, B >::_1
template<typename A, typename B>
B funct::ProductStruct< A, B >::_2