![]() |
|
Base class for dense Map and Block expression with direct access. More...
#include <MapBase.h>
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 std::conditional_t< bool(internal::is_lvalue< Derived >::value), Scalar *, const Scalar * > | 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 |
constexpr EIGEN_DEVICE_FUNC const Scalar * | data () const |
EIGEN_DEVICE_FUNC const Scalar & | coeff (Index rowId, Index colId) const |
EIGEN_DEVICE_FUNC const Scalar & | coeff (Index index) const |
EIGEN_DEVICE_FUNC const Scalar & | coeffRef (Index rowId, Index colId) const |
EIGEN_DEVICE_FUNC const Scalar & | coeffRef (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 (std::enable_if_t<(internal::traits< T >::Alignment > 0), void * >=0) const |
template<typename T > | |
EIGEN_DEVICE_FUNC void | checkSanity (std::enable_if_t< internal::traits< T >::Alignment==0, void * >=0) const |
Protected Attributes | |
PointerType | m_data |
const internal::variable_if_dynamic< Index, RowsAtCompileTime > | m_rows |
const internal::variable_if_dynamic< Index, ColsAtCompileTime > | m_cols |
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:
typedef internal::dense_xpr_base<Derived>::type Eigen::MapBase< Derived, ReadOnlyAccessors >::Base |
typedef Base::CoeffReturnType Eigen::MapBase< Derived, ReadOnlyAccessors >::CoeffReturnType |
typedef internal::packet_traits<Scalar>::type Eigen::MapBase< Derived, ReadOnlyAccessors >::PacketScalar |
typedef std::conditional_t<bool(internal::is_lvalue<Derived>::value), Scalar*, const Scalar*> Eigen::MapBase< Derived, ReadOnlyAccessors >::PointerType |
typedef NumTraits<Scalar>::Real Eigen::MapBase< Derived, ReadOnlyAccessors >::RealScalar |
typedef internal::traits<Derived>::Scalar Eigen::MapBase< Derived, ReadOnlyAccessors >::Scalar |
typedef internal::traits<Derived>::StorageKind Eigen::MapBase< Derived, ReadOnlyAccessors >::StorageKind |
anonymous enum |
|
inlineexplicit |
Constructor for fixed size matrices or vectors
References EIGEN_STATIC_ASSERT_FIXED_SIZE.
|
inline |
Constructor for dynamically sized vectors
References Eigen::Dynamic, eigen_assert, and EIGEN_STATIC_ASSERT_VECTOR_ONLY.
|
inline |
Constructor for dynamically sized matrices
References cols, Eigen::Dynamic, eigen_assert, and rows.
|
inlineprotected |
References eigen_assert.
|
inlineprotected |
References cols, Eigen::Dynamic, eigen_assert, EIGEN_ONLY_USED_FOR_DEBUG, and rows.
|
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.
References EIGEN_STATIC_ASSERT_INDEX_BASED_ACCESS.
|
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.
|
inline |
This is the const version of coeffRef(Index) which is thus synonym of coeff(Index). It is provided for convenience.
References EIGEN_STATIC_ASSERT_INDEX_BASED_ACCESS.
|
inline |
This is the const version of coeffRef(Index,Index) which is thus synonym of coeff(Index,Index). It is provided for convenience.
|
inline |
Referenced by gdb.printers._MatrixEntryIterator::__next__(), gdb.printers.EigenMatrixPrinter::children(), gdb.printers.EigenSparseMatrixPrinter::children(), gdb.printers.EigenMatrixPrinter::to_string(), and gdb.printers.EigenSparseMatrixPrinter::to_string().
|
inlineconstexpr |
Returns a pointer to the first coefficient of the matrix or vector.
Referenced by gdb.printers.EigenMatrixPrinter::children(), gdb.printers.EigenSparseMatrixPrinter::children(), gdb.printers.EigenQuaternionPrinter::children(), gdb.printers.EigenMatrixPrinter::to_string(), gdb.printers.EigenSparseMatrixPrinter::to_string(), and gdb.printers.EigenQuaternionPrinter::to_string().
|
inline |
References EIGEN_STATIC_ASSERT_INDEX_BASED_ACCESS.
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |