NDDEM
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Eigen::MapBase< Derived, ReadOnlyAccessors > Class Template Reference

Base class for dense Map and Block expression with direct access. More...

#include <MapBase.h>

+ Inheritance diagram for Eigen::MapBase< Derived, ReadOnlyAccessors >:

Public Types

enum  { RowsAtCompileTime = internal::traits<Derived>::RowsAtCompileTime , ColsAtCompileTime = internal::traits<Derived>::ColsAtCompileTime , InnerStrideAtCompileTime = internal::traits<Derived>::InnerStrideAtCompileTime , SizeAtCompileTime = Base::SizeAtCompileTime }
 
typedef internal::dense_xpr_base< Derived >::type Base
 
typedef internal::traits< Derived >::StorageKind StorageKind
 
typedef internal::traits< Derived >::Scalar Scalar
 
typedef internal::packet_traits< Scalar >::type PacketScalar
 
typedef NumTraits< Scalar >::Real RealScalar
 
typedef internal::conditional< bool(internal::is_lvalue< Derived >::value), Scalar *, const Scalar * >::type PointerType
 
typedef Base::CoeffReturnType CoeffReturnType
 

Public Member Functions

EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
 
EIGEN_DEVICE_FUNC const Scalardata () const
 
EIGEN_DEVICE_FUNC const Scalarcoeff (Index rowId, Index colId) const
 
EIGEN_DEVICE_FUNC const Scalarcoeff (Index index) const
 
EIGEN_DEVICE_FUNC const ScalarcoeffRef (Index rowId, Index colId) const
 
EIGEN_DEVICE_FUNC const ScalarcoeffRef (Index index) const
 
template<int LoadMode>
PacketScalar packet (Index rowId, Index colId) const
 
template<int LoadMode>
PacketScalar packet (Index index) const
 
EIGEN_DEVICE_FUNC MapBase (PointerType dataPtr)
 
EIGEN_DEVICE_FUNC MapBase (PointerType dataPtr, Index vecSize)
 
EIGEN_DEVICE_FUNC MapBase (PointerType dataPtr, Index rows, Index cols)
 

Protected Member Functions

template<typename T >
EIGEN_DEVICE_FUNC void checkSanity (typename internal::enable_if<(internal::traits< T >::Alignment >0), void * >::type=0) const
 
template<typename T >
EIGEN_DEVICE_FUNC void checkSanity (typename internal::enable_if< internal::traits< T >::Alignment==0, void * >::type=0) const
 

Protected Attributes

PointerType m_data
 
const internal::variable_if_dynamic< Index, RowsAtCompileTimem_rows
 
const internal::variable_if_dynamic< Index, ColsAtCompileTimem_cols
 

Detailed Description

template<typename Derived>
class Eigen::MapBase< Derived, ReadOnlyAccessors >

Base class for dense Map and Block expression with direct access.

This base class provides the const low-level accessors (e.g. coeff, coeffRef) of dense Map and Block objects with direct access. Typical users do not have to directly deal with this class.

This class can be extended by through the macro plugin EIGEN_MAPBASE_PLUGIN. See customizing Eigen for details.

The Derived class has to provide the following two methods describing the memory layout:

Index innerStride() const;
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:74
Index outerStride() const;
See also
class Map, class Block

Member Typedef Documentation

◆ Base

template<typename Derived >
typedef internal::dense_xpr_base<Derived>::type Eigen::MapBase< Derived, ReadOnlyAccessors >::Base

◆ CoeffReturnType

template<typename Derived >
typedef Base::CoeffReturnType Eigen::MapBase< Derived, ReadOnlyAccessors >::CoeffReturnType

◆ PacketScalar

template<typename Derived >
typedef internal::packet_traits<Scalar>::type Eigen::MapBase< Derived, ReadOnlyAccessors >::PacketScalar

◆ PointerType

template<typename Derived >
typedef internal::conditional< bool(internal::is_lvalue<Derived>::value), Scalar *, const Scalar *>::type Eigen::MapBase< Derived, ReadOnlyAccessors >::PointerType

◆ RealScalar

template<typename Derived >
typedef NumTraits<Scalar>::Real Eigen::MapBase< Derived, ReadOnlyAccessors >::RealScalar

◆ Scalar

template<typename Derived >
typedef internal::traits<Derived>::Scalar Eigen::MapBase< Derived, ReadOnlyAccessors >::Scalar

◆ StorageKind

template<typename Derived >
typedef internal::traits<Derived>::StorageKind Eigen::MapBase< Derived, ReadOnlyAccessors >::StorageKind

Member Enumeration Documentation

◆ anonymous enum

template<typename Derived >
anonymous enum
Enumerator
RowsAtCompileTime 
ColsAtCompileTime 
InnerStrideAtCompileTime 
SizeAtCompileTime 

Constructor & Destructor Documentation

◆ MapBase() [1/3]

template<typename Derived >
EIGEN_DEVICE_FUNC Eigen::MapBase< Derived, ReadOnlyAccessors >::MapBase ( PointerType  dataPtr)
inlineexplicit

◆ MapBase() [2/3]

template<typename Derived >
EIGEN_DEVICE_FUNC Eigen::MapBase< Derived, ReadOnlyAccessors >::MapBase ( PointerType  dataPtr,
Index  vecSize 
)
inline

◆ MapBase() [3/3]

template<typename Derived >
EIGEN_DEVICE_FUNC Eigen::MapBase< Derived, ReadOnlyAccessors >::MapBase ( PointerType  dataPtr,
Index  rows,
Index  cols 
)
inline

Member Function Documentation

◆ checkSanity() [1/2]

template<typename Derived >
template<typename T >
EIGEN_DEVICE_FUNC void Eigen::MapBase< Derived, ReadOnlyAccessors >::checkSanity ( typename internal::enable_if< internal::traits< T >::Alignment==0, void * >::type  = 0) const
inlineprotected

◆ checkSanity() [2/2]

template<typename Derived >
template<typename T >
EIGEN_DEVICE_FUNC void Eigen::MapBase< Derived, ReadOnlyAccessors >::checkSanity ( typename internal::enable_if<(internal::traits< T >::Alignment >0), void * >::type  = 0) const
inlineprotected

◆ coeff() [1/2]

template<typename Derived >
EIGEN_DEVICE_FUNC const Scalar& Eigen::MapBase< Derived, ReadOnlyAccessors >::coeff ( Index  index) const
inline

This is an overloaded version of DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index) const provided to by-pass the creation of an evaluator of the expression, thus saving compilation efforts.

See DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index) const for details.

◆ coeff() [2/2]

template<typename Derived >
EIGEN_DEVICE_FUNC const Scalar& Eigen::MapBase< Derived, ReadOnlyAccessors >::coeff ( Index  rowId,
Index  colId 
) const
inline

This is an overloaded version of DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index,Index) const provided to by-pass the creation of an evaluator of the expression, thus saving compilation efforts.

See DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index) const for details.

◆ coeffRef() [1/2]

template<typename Derived >
EIGEN_DEVICE_FUNC const Scalar& Eigen::MapBase< Derived, ReadOnlyAccessors >::coeffRef ( Index  index) const
inline

This is the const version of coeffRef(Index) which is thus synonym of coeff(Index). It is provided for convenience.

◆ coeffRef() [2/2]

template<typename Derived >
EIGEN_DEVICE_FUNC const Scalar& Eigen::MapBase< Derived, ReadOnlyAccessors >::coeffRef ( Index  rowId,
Index  colId 
) const
inline

This is the const version of coeffRef(Index,Index) which is thus synonym of coeff(Index,Index). It is provided for convenience.

◆ cols()

template<typename Derived >
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::MapBase< Derived, ReadOnlyAccessors >::cols ( void  ) const
inline

◆ data()

template<typename Derived >
EIGEN_DEVICE_FUNC const Scalar* Eigen::MapBase< Derived, ReadOnlyAccessors >::data ( ) const
inline

Returns a pointer to the first coefficient of the matrix or vector.

Note
When addressing this data, make sure to honor the strides returned by innerStride() and outerStride().
See also
innerStride(), outerStride()

◆ packet() [1/2]

template<typename Derived >
template<int LoadMode>
PacketScalar Eigen::MapBase< Derived, ReadOnlyAccessors >::packet ( Index  index) const
inline

◆ packet() [2/2]

template<typename Derived >
template<int LoadMode>
PacketScalar Eigen::MapBase< Derived, ReadOnlyAccessors >::packet ( Index  rowId,
Index  colId 
) const
inline

◆ rows()

template<typename Derived >
EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR Index Eigen::MapBase< Derived, ReadOnlyAccessors >::rows ( void  ) const
inline

Member Data Documentation

◆ m_cols

template<typename Derived >
const internal::variable_if_dynamic<Index, ColsAtCompileTime> Eigen::MapBase< Derived, ReadOnlyAccessors >::m_cols
protected

◆ m_data

template<typename Derived >
PointerType Eigen::MapBase< Derived, ReadOnlyAccessors >::m_data
protected

◆ m_rows

template<typename Derived >
const internal::variable_if_dynamic<Index, RowsAtCompileTime> Eigen::MapBase< Derived, ReadOnlyAccessors >::m_rows
protected

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