Expression of a diagonal/subdiagonal/superdiagonal in a matrix. More...
#include <Diagonal.h>

Public Types | |
| enum | { DiagIndex = _DiagIndex } |
| typedef internal::dense_xpr_base < Diagonal >::type | Base |
| typedef internal::conditional < internal::is_lvalue < MatrixType >::value, Scalar, const Scalar >::type | ScalarWithConstIfNotLvalue |
Public Member Functions | |
| CoeffReturnType | coeff (Index row, Index) const |
| CoeffReturnType | coeff (Index idx) const |
| Scalar & | coeffRef (Index row, Index) |
| const Scalar & | coeffRef (Index row, Index) const |
| Scalar & | coeffRef (Index idx) |
| const Scalar & | coeffRef (Index idx) const |
| Index | cols () const |
| ScalarWithConstIfNotLvalue * | data () |
| const Scalar * | data () const |
| Diagonal (MatrixType &matrix, Index a_index=DiagIndex) | |
| int | index () const |
| Index | innerStride () const |
| const internal::remove_all < typename MatrixType::Nested > ::type & | nestedExpression () const |
| Index | outerStride () const |
| Index | rows () const |
Protected Attributes | |
| const internal::variable_if_dynamicindex < Index, DiagIndex > | m_index |
| MatrixType::Nested | m_matrix |
Private Member Functions | |
| EIGEN_STRONG_INLINE Index | absDiagIndex () const |
| EIGEN_STRONG_INLINE Index | colOffset () const |
| template<int LoadMode> | |
| MatrixType::PacketReturnType | packet (Index) const |
| template<int LoadMode> | |
| MatrixType::PacketReturnType | packet (Index, Index) const |
| EIGEN_STRONG_INLINE Index | rowOffset () const |
Expression of a diagonal/subdiagonal/superdiagonal in a matrix.
| MatrixType | the type of the object in which we are taking a sub/main/super diagonal |
| DiagIndex | the index of the sub/super diagonal. The default is 0 and it means the main diagonal. A positive value means a superdiagonal, a negative value means a subdiagonal. You can also use Dynamic so the index can be set at runtime. |
The matrix is not required to be square.
This class represents an expression of the main diagonal, or any sub/super diagonal of a square matrix. It is the return type of MatrixBase::diagonal() and MatrixBase::diagonal(Index) and most of the time this is the only way it is used.
Definition at line 64 of file Diagonal.h.
| typedef internal::dense_xpr_base<Diagonal>::type Eigen::Diagonal< MatrixType, _DiagIndex >::Base |
Definition at line 70 of file Diagonal.h.
| typedef internal::conditional< internal::is_lvalue<MatrixType>::value, Scalar, const Scalar >::type Eigen::Diagonal< MatrixType, _DiagIndex >::ScalarWithConstIfNotLvalue |
Definition at line 96 of file Diagonal.h.
| anonymous enum |
Definition at line 69 of file Diagonal.h.
| Eigen::Diagonal< MatrixType, _DiagIndex >::Diagonal | ( | MatrixType & | matrix, |
| Index | a_index = DiagIndex |
||
| ) | [inline] |
Definition at line 73 of file Diagonal.h.
| EIGEN_STRONG_INLINE Index Eigen::Diagonal< MatrixType, _DiagIndex >::absDiagIndex | ( | ) | const [inline, private] |
Definition at line 150 of file Diagonal.h.
| CoeffReturnType Eigen::Diagonal< MatrixType, _DiagIndex >::coeff | ( | Index | row, |
| Index | |||
| ) | const [inline] |
Definition at line 112 of file Diagonal.h.
| CoeffReturnType Eigen::Diagonal< MatrixType, _DiagIndex >::coeff | ( | Index | idx | ) | const [inline] |
Definition at line 128 of file Diagonal.h.
| Scalar& Eigen::Diagonal< MatrixType, _DiagIndex >::coeffRef | ( | Index | row, |
| Index | |||
| ) | [inline] |
Definition at line 101 of file Diagonal.h.
| const Scalar& Eigen::Diagonal< MatrixType, _DiagIndex >::coeffRef | ( | Index | row, |
| Index | |||
| ) | const [inline] |
Definition at line 107 of file Diagonal.h.
| Scalar& Eigen::Diagonal< MatrixType, _DiagIndex >::coeffRef | ( | Index | idx | ) | [inline] |
Definition at line 117 of file Diagonal.h.
| const Scalar& Eigen::Diagonal< MatrixType, _DiagIndex >::coeffRef | ( | Index | idx | ) | const [inline] |
Definition at line 123 of file Diagonal.h.
| EIGEN_STRONG_INLINE Index Eigen::Diagonal< MatrixType, _DiagIndex >::colOffset | ( | ) | const [inline, private] |
Definition at line 152 of file Diagonal.h.
| Index Eigen::Diagonal< MatrixType, _DiagIndex >::cols | ( | void | ) | const [inline] |
Definition at line 80 of file Diagonal.h.
| ScalarWithConstIfNotLvalue* Eigen::Diagonal< MatrixType, _DiagIndex >::data | ( | ) | [inline] |
Definition at line 98 of file Diagonal.h.
| const Scalar* Eigen::Diagonal< MatrixType, _DiagIndex >::data | ( | ) | const [inline] |
Definition at line 99 of file Diagonal.h.
| int Eigen::Diagonal< MatrixType, _DiagIndex >::index | ( | ) | const [inline] |
Definition at line 139 of file Diagonal.h.
| Index Eigen::Diagonal< MatrixType, _DiagIndex >::innerStride | ( | ) | const [inline] |
Definition at line 82 of file Diagonal.h.
| const internal::remove_all<typename MatrixType::Nested>::type& Eigen::Diagonal< MatrixType, _DiagIndex >::nestedExpression | ( | ) | const [inline] |
Definition at line 134 of file Diagonal.h.
| Index Eigen::Diagonal< MatrixType, _DiagIndex >::outerStride | ( | ) | const [inline] |
Definition at line 87 of file Diagonal.h.
| MatrixType::PacketReturnType Eigen::Diagonal< MatrixType, _DiagIndex >::packet | ( | Index | ) | const [private] |
| MatrixType::PacketReturnType Eigen::Diagonal< MatrixType, _DiagIndex >::packet | ( | Index | , |
| Index | |||
| ) | const [private] |
| EIGEN_STRONG_INLINE Index Eigen::Diagonal< MatrixType, _DiagIndex >::rowOffset | ( | ) | const [inline, private] |
Definition at line 151 of file Diagonal.h.
| Index Eigen::Diagonal< MatrixType, _DiagIndex >::rows | ( | void | ) | const [inline] |
Definition at line 77 of file Diagonal.h.
const internal::variable_if_dynamicindex<Index, DiagIndex> Eigen::Diagonal< MatrixType, _DiagIndex >::m_index [protected] |
Definition at line 146 of file Diagonal.h.
MatrixType::Nested Eigen::Diagonal< MatrixType, _DiagIndex >::m_matrix [protected] |
Definition at line 145 of file Diagonal.h.