template<typename ExpressionType>
Eigen::MatrixWrapper class

Expression of an array as a mathematical vector or matrix.

This class is the return type of ArrayBase::matrix(), and most of the time this is the only way it is use.

Base classes

template<typename Derived>
class MatrixBase
Base class for all dense matrices, vectors, and expressions.

Public types

using Base = MatrixBase<MatrixWrapper<ExpressionType>>
using NestedExpression = internal::remove_all<ExpressionType>::type
using NestedExpressionType = internal::ref_selector<ExpressionType>::non_const_type
using ScalarWithConstIfNotLvalue = internal::conditional<internal::is_lvalue<ExpressionType>::value, Scalar, const Scalar>::type

Constructors, destructors, conversion operators

MatrixWrapper(ExpressionType& matrix) explicit

Public functions

auto coeffRef(Index rowId, Index colId) const -> const Scalar&
auto coeffRef(Index index) const -> const Scalar&
auto cols() const -> Index
auto data() -> ScalarWithConstIfNotLvalue*
auto data() const -> const Scalar*
auto innerStride() const -> Index
auto nestedExpression() const -> const internal::remove_all<NestedExpressionType>::type&
auto outerStride() const -> Index
void resize(Index newSize)
void resize(Index rows, Index cols)
auto rows() const -> Index

Protected variables

NestedExpressionType m_expression

Typedef documentation

template<typename ExpressionType>
typedef MatrixBase<MatrixWrapper<ExpressionType>> Eigen::MatrixWrapper<ExpressionType>::Base

template<typename ExpressionType>
typedef internal::remove_all<ExpressionType>::type Eigen::MatrixWrapper<ExpressionType>::NestedExpression

template<typename ExpressionType>
typedef internal::ref_selector<ExpressionType>::non_const_type Eigen::MatrixWrapper<ExpressionType>::NestedExpressionType

template<typename ExpressionType>
typedef internal::conditional<internal::is_lvalue<ExpressionType>::value, Scalar, const Scalar>::type Eigen::MatrixWrapper<ExpressionType>::ScalarWithConstIfNotLvalue

Function documentation

template<typename ExpressionType>
Eigen::MatrixWrapper<ExpressionType>::MatrixWrapper(ExpressionType& matrix) explicit

template<typename ExpressionType>
const Scalar& Eigen::MatrixWrapper<ExpressionType>::coeffRef(Index rowId, Index colId) const

template<typename ExpressionType>
const Scalar& Eigen::MatrixWrapper<ExpressionType>::coeffRef(Index index) const

template<typename ExpressionType>
Index Eigen::MatrixWrapper<ExpressionType>::cols() const

template<typename ExpressionType>
ScalarWithConstIfNotLvalue* Eigen::MatrixWrapper<ExpressionType>::data()

template<typename ExpressionType>
const Scalar* Eigen::MatrixWrapper<ExpressionType>::data() const

template<typename ExpressionType>
Index Eigen::MatrixWrapper<ExpressionType>::innerStride() const

template<typename ExpressionType>
const internal::remove_all<NestedExpressionType>::type& Eigen::MatrixWrapper<ExpressionType>::nestedExpression() const

template<typename ExpressionType>
Index Eigen::MatrixWrapper<ExpressionType>::outerStride() const

template<typename ExpressionType>
void Eigen::MatrixWrapper<ExpressionType>::resize(Index newSize)

Forwards the resizing request to the nested expression

template<typename ExpressionType>
void Eigen::MatrixWrapper<ExpressionType>::resize(Index rows, Index cols)

Forwards the resizing request to the nested expression

template<typename ExpressionType>
Index Eigen::MatrixWrapper<ExpressionType>::rows() const

Variable documentation

template<typename ExpressionType>
NestedExpressionType Eigen::MatrixWrapper<ExpressionType>::m_expression protected