Public Member Functions | Protected Attributes | Private Types
Eigen::NoAlias< ExpressionType, StorageBase > Class Template Reference

Pseudo expression providing an operator = assuming no aliasing. More...

#include <NoAlias.h>

List of all members.

Public Member Functions

 NoAlias (ExpressionType &expression)
template<typename OtherDerived >
EIGEN_STRONG_INLINE
ExpressionType & 
operator+= (const StorageBase< OtherDerived > &other)
template<typename ProductDerived , typename Lhs , typename Rhs >
EIGEN_STRONG_INLINE
ExpressionType & 
operator+= (const ProductBase< ProductDerived, Lhs, Rhs > &other)
template<typename Lhs , typename Rhs , int NestingFlags>
EIGEN_STRONG_INLINE
ExpressionType & 
operator+= (const CoeffBasedProduct< Lhs, Rhs, NestingFlags > &other)
template<typename OtherDerived >
EIGEN_STRONG_INLINE
ExpressionType & 
operator-= (const StorageBase< OtherDerived > &other)
template<typename ProductDerived , typename Lhs , typename Rhs >
EIGEN_STRONG_INLINE
ExpressionType & 
operator-= (const ProductBase< ProductDerived, Lhs, Rhs > &other)
template<typename Lhs , typename Rhs , int NestingFlags>
EIGEN_STRONG_INLINE
ExpressionType & 
operator-= (const CoeffBasedProduct< Lhs, Rhs, NestingFlags > &other)
template<typename OtherDerived >
EIGEN_STRONG_INLINE
ExpressionType & 
operator= (const StorageBase< OtherDerived > &other)

Protected Attributes

ExpressionType & m_expression

Private Types

typedef ExpressionType::Scalar Scalar

Detailed Description

template<typename ExpressionType, template< typename > class StorageBase>
class Eigen::NoAlias< ExpressionType, StorageBase >

Pseudo expression providing an operator = assuming no aliasing.

Parameters:
ExpressionTypethe type of the object on which to do the lazy assignment

This class represents an expression with special assignment operators assuming no aliasing between the target expression and the source expression. More precisely it alloas to bypass the EvalBeforeAssignBit flag of the source expression. It is the return type of MatrixBase::noalias() and most of the time this is the only way it is used.

See also:
MatrixBase::noalias()

Definition at line 31 of file NoAlias.h.


Member Typedef Documentation

template<typename ExpressionType, template< typename > class StorageBase>
typedef ExpressionType::Scalar Eigen::NoAlias< ExpressionType, StorageBase >::Scalar [private]

Definition at line 33 of file NoAlias.h.


Constructor & Destructor Documentation

template<typename ExpressionType, template< typename > class StorageBase>
Eigen::NoAlias< ExpressionType, StorageBase >::NoAlias ( ExpressionType &  expression) [inline]

Definition at line 35 of file NoAlias.h.


Member Function Documentation

template<typename ExpressionType, template< typename > class StorageBase>
template<typename OtherDerived >
EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator+= ( const StorageBase< OtherDerived > &  other) [inline]
See also:
MatrixBase::operator+=

Definition at line 45 of file NoAlias.h.

template<typename ExpressionType, template< typename > class StorageBase>
template<typename ProductDerived , typename Lhs , typename Rhs >
EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator+= ( const ProductBase< ProductDerived, Lhs, Rhs > &  other) [inline]

Definition at line 69 of file NoAlias.h.

template<typename ExpressionType, template< typename > class StorageBase>
template<typename Lhs , typename Rhs , int NestingFlags>
EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator+= ( const CoeffBasedProduct< Lhs, Rhs, NestingFlags > &  other) [inline]

Definition at line 77 of file NoAlias.h.

template<typename ExpressionType, template< typename > class StorageBase>
template<typename OtherDerived >
EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator-= ( const StorageBase< OtherDerived > &  other) [inline]
See also:
MatrixBase::operator-=

Definition at line 57 of file NoAlias.h.

template<typename ExpressionType, template< typename > class StorageBase>
template<typename ProductDerived , typename Lhs , typename Rhs >
EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator-= ( const ProductBase< ProductDerived, Lhs, Rhs > &  other) [inline]

Definition at line 73 of file NoAlias.h.

template<typename ExpressionType, template< typename > class StorageBase>
template<typename Lhs , typename Rhs , int NestingFlags>
EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator-= ( const CoeffBasedProduct< Lhs, Rhs, NestingFlags > &  other) [inline]

Definition at line 81 of file NoAlias.h.

template<typename ExpressionType, template< typename > class StorageBase>
template<typename OtherDerived >
EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator= ( const StorageBase< OtherDerived > &  other) [inline]

Behaves like MatrixBase::lazyAssign(other)

See also:
MatrixBase::lazyAssign()

Definition at line 40 of file NoAlias.h.


Member Data Documentation

template<typename ExpressionType, template< typename > class StorageBase>
ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::m_expression [protected]

Definition at line 86 of file NoAlias.h.


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


win_eigen
Author(s): Daniel Stonier
autogenerated on Wed Sep 16 2015 07:12:56