MOAB  4.9.3pre
Eigen::internal::scalar_product_op< LhsScalar, RhsScalar > Struct Template Reference

Template functor to compute the product of two scalars. More...

#include <BinaryFunctors.h>

List of all members.

Public Types

enum  { Vectorizable = is_same<LhsScalar,RhsScalar>::value && packet_traits<LhsScalar>::HasMul && packet_traits<RhsScalar>::HasMul }
typedef scalar_product_traits
< LhsScalar, RhsScalar >
::ReturnType 
result_type

Public Member Functions

EIGEN_DEVICE_FUNC
EIGEN_STRONG_INLINE const
result_type 
operator() (const LhsScalar &a, const RhsScalar &b) const
template<typename Packet >
EIGEN_DEVICE_FUNC
EIGEN_STRONG_INLINE const
Packet 
packetOp (const Packet &a, const Packet &b) const
template<typename Packet >
EIGEN_DEVICE_FUNC
EIGEN_STRONG_INLINE const
result_type 
predux (const Packet &a) const

Detailed Description

template<typename LhsScalar, typename RhsScalar>
struct Eigen::internal::scalar_product_op< LhsScalar, RhsScalar >

Template functor to compute the product of two scalars.

See also:
class CwiseBinaryOp, Cwise::operator*(), class VectorwiseOp, MatrixBase::redux()

Definition at line 59 of file BinaryFunctors.h.


Member Typedef Documentation

template<typename LhsScalar , typename RhsScalar >
typedef scalar_product_traits<LhsScalar,RhsScalar>::ReturnType Eigen::internal::scalar_product_op< LhsScalar, RhsScalar >::result_type

Definition at line 64 of file BinaryFunctors.h.


Member Enumeration Documentation

template<typename LhsScalar , typename RhsScalar >
anonymous enum
Enumerator:
Vectorizable 

Definition at line 60 of file BinaryFunctors.h.

       {
    // TODO vectorize mixed product
    Vectorizable = is_same<LhsScalar,RhsScalar>::value && packet_traits<LhsScalar>::HasMul && packet_traits<RhsScalar>::HasMul
  };

Member Function Documentation

template<typename LhsScalar , typename RhsScalar >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const result_type Eigen::internal::scalar_product_op< LhsScalar, RhsScalar >::operator() ( const LhsScalar &  a,
const RhsScalar &  b 
) const [inline]

Definition at line 66 of file BinaryFunctors.h.

{ return a * b; }
template<typename LhsScalar , typename RhsScalar >
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Packet Eigen::internal::scalar_product_op< LhsScalar, RhsScalar >::packetOp ( const Packet &  a,
const Packet &  b 
) const [inline]

Definition at line 68 of file BinaryFunctors.h.

  { return internal::pmul(a,b); }
template<typename LhsScalar , typename RhsScalar >
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const result_type Eigen::internal::scalar_product_op< LhsScalar, RhsScalar >::predux ( const Packet &  a) const [inline]

Definition at line 71 of file BinaryFunctors.h.

  { return internal::predux_mul(a); }

The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines