Public Types | Public Member Functions | Protected Attributes

ScaledProduct< NestedProduct > Class Template Reference

#include <ProductBase.h>

Inheritance diagram for ScaledProduct< NestedProduct >:
ProductBase< ScaledProduct< NestedProduct >, NestedProduct::_LhsNested, NestedProduct::_RhsNested > MatrixBase< ScaledProduct< NestedProduct > > DenseBase< ScaledProduct< NestedProduct > > internal::special_scalar_op_base< Derived, Scalar, OtherScalar, EnableIt > DenseCoeffsBase

List of all members.

Public Types

typedef ProductBase
< ScaledProduct< NestedProduct >
, typename
NestedProduct::_LhsNested,
typename
NestedProduct::_RhsNested > 
Base
typedef Base::Scalar Scalar
typedef Base::PlainObject PlainObject
 The plain matrix type corresponding to this expression.

Public Member Functions

 ScaledProduct (const NestedProduct &prod, Scalar x)
template<typename Dest >
void evalTo (Dest &dst) const
template<typename Dest >
void addTo (Dest &dst) const
template<typename Dest >
void subTo (Dest &dst) const
template<typename Dest >
void scaleAndAddTo (Dest &dst, Scalar alpha) const
const Scalaralpha () const

Protected Attributes

const NestedProduct & m_prod
Scalar m_alpha

template<typename NestedProduct>
class ScaledProduct< NestedProduct >


Member Typedef Documentation

template<typename NestedProduct>
typedef ProductBase<ScaledProduct<NestedProduct>, typename NestedProduct::_LhsNested, typename NestedProduct::_RhsNested> ScaledProduct< NestedProduct >::Base
template<typename NestedProduct>
typedef Base::PlainObject ScaledProduct< NestedProduct >::PlainObject

The plain matrix type corresponding to this expression.

This is not necessarily exactly the return type of eval(). In the case of plain matrices, the return type of eval() is a const reference to a matrix, not a matrix! It is however guaranteed that the return type of eval() is either PlainObject or const PlainObject&.

Reimplemented from ProductBase< ScaledProduct< NestedProduct >, NestedProduct::_LhsNested, NestedProduct::_RhsNested >.

template<typename NestedProduct>
typedef Base::Scalar ScaledProduct< NestedProduct >::Scalar

Constructor & Destructor Documentation

template<typename NestedProduct>
ScaledProduct< NestedProduct >::ScaledProduct ( const NestedProduct &  prod,
Scalar  x 
) [inline]

Member Function Documentation

template<typename NestedProduct>
template<typename Dest >
void ScaledProduct< NestedProduct >::addTo ( Dest &  dst  )  const [inline]
template<typename NestedProduct>
const Scalar& ScaledProduct< NestedProduct >::alpha (  )  const [inline]
template<typename NestedProduct>
template<typename Dest >
void ScaledProduct< NestedProduct >::evalTo ( Dest &  dst  )  const [inline]
template<typename NestedProduct>
template<typename Dest >
void ScaledProduct< NestedProduct >::scaleAndAddTo ( Dest &  dst,
Scalar  alpha 
) const [inline]
template<typename NestedProduct>
template<typename Dest >
void ScaledProduct< NestedProduct >::subTo ( Dest &  dst  )  const [inline]

Member Data Documentation

template<typename NestedProduct>
Scalar ScaledProduct< NestedProduct >::m_alpha [protected]
template<typename NestedProduct>
const NestedProduct& ScaledProduct< NestedProduct >::m_prod [protected]

The documentation for this class was generated from the following file: