Eigen::internal::mapbase_evaluator< Derived, PlainObjectType > Struct Template Reference

#include <CoreEvaluators.h>

+ Inheritance diagram for Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >:

Public Types

enum  { IsRowMajor = XprType::RowsAtCompileTime , ColsAtCompileTime = XprType::ColsAtCompileTime , CoeffReadCost = NumTraits<Scalar>::ReadCost }
 
typedef Derived XprType
 
typedef XprType::PointerType PointerType
 
typedef XprType::Scalar Scalar
 
typedef XprType::CoeffReturnType CoeffReturnType
 
- Public Types inherited from Eigen::internal::evaluator_base< Derived >
enum  
 
typedef traits< Derived > ExpressionTraits
 

Public Member Functions

EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE mapbase_evaluator (const XprType &map)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType coeff (Index row, Index col) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType coeff (Index index) const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ScalarcoeffRef (Index row, Index col)
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ScalarcoeffRef (Index index)
 
template<int LoadMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketType packet (Index row, Index col) const
 
template<int LoadMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketType packet (Index index) const
 
template<int StoreMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void writePacket (Index row, Index col, const PacketType &x)
 
template<int StoreMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void writePacket (Index index, const PacketType &x)
 
- Public Member Functions inherited from Eigen::internal::evaluator_base< Derived >
EIGEN_DEVICE_FUNC constexpr EIGEN_STRONG_INLINE evaluator_base ()=default
 

Protected Member Functions

EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EIGEN_CONSTEXPR Index rowStride () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EIGEN_CONSTEXPR Index colStride () const EIGEN_NOEXCEPT
 

Protected Attributes

PointerType m_data
 
const internal::variable_if_dynamic< Index, XprType::InnerStrideAtCompileTime > m_innerStride
 
const internal::variable_if_dynamic< Index, XprType::OuterStrideAtCompileTime > m_outerStride
 

Member Typedef Documentation

◆ CoeffReturnType

template<typename Derived , typename PlainObjectType >
typedef XprType::CoeffReturnType Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::CoeffReturnType

◆ PointerType

template<typename Derived , typename PlainObjectType >
typedef XprType::PointerType Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::PointerType

◆ Scalar

template<typename Derived , typename PlainObjectType >
typedef XprType::Scalar Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::Scalar

◆ XprType

template<typename Derived , typename PlainObjectType >
typedef Derived Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::XprType

Member Enumeration Documentation

◆ anonymous enum

template<typename Derived , typename PlainObjectType >
anonymous enum
Enumerator
IsRowMajor 
ColsAtCompileTime 
CoeffReadCost 
1005  {
1006  IsRowMajor = XprType::RowsAtCompileTime,
1007  ColsAtCompileTime = XprType::ColsAtCompileTime,
1009  };
@ ReadCost
Definition: NumTraits.h:178
@ IsRowMajor
Definition: CoreEvaluators.h:1006
@ CoeffReadCost
Definition: CoreEvaluators.h:1008
@ ColsAtCompileTime
Definition: CoreEvaluators.h:1007

Constructor & Destructor Documentation

◆ mapbase_evaluator()

template<typename Derived , typename PlainObjectType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::mapbase_evaluator ( const XprType map)
inlineexplicit
1012  : m_data(const_cast<PointerType>(map.data())),
1013  m_innerStride(map.innerStride()),
1014  m_outerStride(map.outerStride()) {
1015  EIGEN_STATIC_ASSERT(check_implication((evaluator<Derived>::Flags & PacketAccessBit) != 0,
1017  PACKET_ACCESS_REQUIRES_TO_HAVE_INNER_STRIDE_FIXED_TO_1);
1019  }
#define EIGEN_STATIC_ASSERT(X, MSG)
Definition: StaticAssert.h:26
#define EIGEN_INTERNAL_CHECK_COST_VALUE(C)
Definition: StaticAssert.h:101
const unsigned int PacketAccessBit
Definition: Constants.h:97
constexpr bool check_implication(bool a, bool b)
Definition: Meta.h:740
@ ret
Definition: DenseCoeffsBase.h:547
PointerType m_data
Definition: CoreEvaluators.h:1065
XprType::PointerType PointerType
Definition: CoreEvaluators.h:1001
const internal::variable_if_dynamic< Index, XprType::InnerStrideAtCompileTime > m_innerStride
Definition: CoreEvaluators.h:1066
const internal::variable_if_dynamic< Index, XprType::OuterStrideAtCompileTime > m_outerStride
Definition: CoreEvaluators.h:1067

References Eigen::internal::check_implication(), Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::CoeffReadCost, EIGEN_INTERNAL_CHECK_COST_VALUE, EIGEN_STATIC_ASSERT, and Eigen::PacketAccessBit.

Member Function Documentation

◆ coeff() [1/2]

template<typename Derived , typename PlainObjectType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::coeff ( Index  index) const
inline

◆ coeff() [2/2]

template<typename Derived , typename PlainObjectType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::coeff ( Index  row,
Index  col 
) const
inline
1021  {
1022  return m_data[col * colStride() + row * rowStride()];
1023  }
m col(1)
m row(1)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EIGEN_CONSTEXPR Index rowStride() const EIGEN_NOEXCEPT
Definition: CoreEvaluators.h:1058
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EIGEN_CONSTEXPR Index colStride() const EIGEN_NOEXCEPT
Definition: CoreEvaluators.h:1061

References col(), Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::colStride(), Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::m_data, row(), and Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::rowStride().

◆ coeffRef() [1/2]

◆ coeffRef() [2/2]

◆ colStride()

◆ packet() [1/2]

template<typename Derived , typename PlainObjectType >
template<int LoadMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketType Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::packet ( Index  index) const
inline

◆ packet() [2/2]

template<typename Derived , typename PlainObjectType >
template<int LoadMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketType Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::packet ( Index  row,
Index  col 
) const
inline

◆ rowStride()

◆ writePacket() [1/2]

template<typename Derived , typename PlainObjectType >
template<int StoreMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::writePacket ( Index  index,
const PacketType x 
)
inline

◆ writePacket() [2/2]

template<typename Derived , typename PlainObjectType >
template<int StoreMode, typename PacketType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::writePacket ( Index  row,
Index  col,
const PacketType x 
)
inline

Member Data Documentation

◆ m_data

◆ m_innerStride

◆ m_outerStride

template<typename Derived , typename PlainObjectType >
const internal::variable_if_dynamic<Index, XprType::OuterStrideAtCompileTime> Eigen::internal::mapbase_evaluator< Derived, PlainObjectType >::m_outerStride
protected

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