Shapeworks Studio  2.1
Shape analysis software suite
List of all members | Public Types | Public Member Functions | Protected Attributes
Eigen::Diagonal< MatrixType, _DiagIndex > Class Template Reference

Expression of a diagonal/subdiagonal/superdiagonal in a matrix. More...

#include <Diagonal.h>

+ Inheritance diagram for Eigen::Diagonal< MatrixType, _DiagIndex >:
+ Collaboration diagram for Eigen::Diagonal< MatrixType, _DiagIndex >:

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

 Diagonal (MatrixType &matrix, Index a_index=DiagIndex)
 
Index rows () const
 
Index cols () const
 
Index innerStride () const
 
Index outerStride () const
 
ScalarWithConstIfNotLvaluedata ()
 
const Scalar * data () const
 
Scalar & coeffRef (Index row, Index)
 
const Scalar & coeffRef (Index row, Index) const
 
CoeffReturnType coeff (Index row, Index) const
 
Scalar & coeffRef (Index idx)
 
const Scalar & coeffRef (Index idx) const
 
CoeffReturnType coeff (Index idx) const
 
const internal::remove_all< typename MatrixType::Nested >::type & nestedExpression () const
 
int index () const
 

Protected Attributes

MatrixType::Nested m_matrix
 
const internal::variable_if_dynamicindex< Index, DiagIndex > m_index
 

Detailed Description

template<typename MatrixType, int _DiagIndex>
class Eigen::Diagonal< MatrixType, _DiagIndex >

Expression of a diagonal/subdiagonal/superdiagonal in a matrix.

Parameters
MatrixTypethe type of the object in which we are taking a sub/main/super diagonal
DiagIndexthe 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.

See also
MatrixBase::diagonal(), MatrixBase::diagonal(Index)

Definition at line 64 of file Diagonal.h.


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