NDDEM
Public Types | Public Member Functions | Protected Attributes | List of all members
Eigen::IndexedView< XprType, RowIndices, ColIndices > Class Template Reference

Expression of a non-sequential sub-matrix defined by arbitrary sequences of row and column indices. More...

#include <IndexedView.h>

+ Inheritance diagram for Eigen::IndexedView< XprType, RowIndices, ColIndices >:

Public Types

typedef IndexedViewImpl< XprType, RowIndices, ColIndices, typename internal::traits< XprType >::StorageKind >::Base Base
 
typedef internal::ref_selector< XprType >::non_const_type MatrixTypeNested
 
typedef internal::remove_all< XprType >::type NestedExpression
 
- Public Types inherited from Eigen::IndexedViewImpl< XprType, RowIndices, ColIndices, internal::traits< XprType >::StorageKind >
typedef internal::generic_xpr_base< IndexedView< XprType, RowIndices, ColIndices > >::type Base
 

Public Member Functions

template<typename T0 , typename T1 >
 IndexedView (XprType &xpr, const T0 &rowIndices, const T1 &colIndices)
 
Index rows () const
 
Index cols () const
 
const internal::remove_all< XprType >::type & nestedExpression () const
 
internal::remove_reference< XprType >::type & nestedExpression ()
 
const RowIndices & rowIndices () const
 
const ColIndices & colIndices () const
 

Protected Attributes

MatrixTypeNested m_xpr
 
RowIndices m_rowIndices
 
ColIndices m_colIndices
 

Detailed Description

template<typename XprType, typename RowIndices, typename ColIndices>
class Eigen::IndexedView< XprType, RowIndices, ColIndices >

Expression of a non-sequential sub-matrix defined by arbitrary sequences of row and column indices.

Template Parameters
XprTypethe type of the expression in which we are taking the intersections of sub-rows and sub-columns
RowIndicesthe type of the object defining the sequence of row indices
ColIndicesthe type of the object defining the sequence of column indices

This class represents an expression of a sub-matrix (or sub-vector) defined as the intersection of sub-sets of rows and columns, that are themself defined by generic sequences of row indices $ \{r_0,r_1,..r_{m-1}\} $ and column indices $ \{c_0,c_1,..c_{n-1} \}$. Let $ A $ be the nested matrix, then the resulting matrix $ B $ has m rows and n columns, and its entries are given by: $ B(i,j) = A(r_i,c_j) $.

The RowIndices and ColIndices types must be compatible with the following API:

<integral type> operator[](Index) const;
Index size() const;
EIGEN_CONSTEXPR Index size(const T &x)
Definition: Meta.h:479
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:74
type
The type the bitset is encoded with.
Definition: bitset.hpp:44

Typical supported types thus include:

In typical usages of Eigen, this class should never be used directly. It is the return type of DenseBase::operator()(const RowIndices&, const ColIndices&).

See also
class Block

Member Typedef Documentation

◆ Base

template<typename XprType , typename RowIndices , typename ColIndices >
typedef IndexedViewImpl<XprType, RowIndices, ColIndices, typename internal::traits<XprType>::StorageKind>::Base Eigen::IndexedView< XprType, RowIndices, ColIndices >::Base

◆ MatrixTypeNested

template<typename XprType , typename RowIndices , typename ColIndices >
typedef internal::ref_selector<XprType>::non_const_type Eigen::IndexedView< XprType, RowIndices, ColIndices >::MatrixTypeNested

◆ NestedExpression

template<typename XprType , typename RowIndices , typename ColIndices >
typedef internal::remove_all<XprType>::type Eigen::IndexedView< XprType, RowIndices, ColIndices >::NestedExpression

Constructor & Destructor Documentation

◆ IndexedView()

template<typename XprType , typename RowIndices , typename ColIndices >
template<typename T0 , typename T1 >
Eigen::IndexedView< XprType, RowIndices, ColIndices >::IndexedView ( XprType &  xpr,
const T0 &  rowIndices,
const T1 &  colIndices 
)
inline

Member Function Documentation

◆ colIndices()

template<typename XprType , typename RowIndices , typename ColIndices >
const ColIndices& Eigen::IndexedView< XprType, RowIndices, ColIndices >::colIndices ( ) const
inline
Returns
a const reference to the object storing/generating the column indices

◆ cols()

template<typename XprType , typename RowIndices , typename ColIndices >
Index Eigen::IndexedView< XprType, RowIndices, ColIndices >::cols ( void  ) const
inline
Returns
number of columns

◆ nestedExpression() [1/2]

template<typename XprType , typename RowIndices , typename ColIndices >
internal::remove_reference<XprType>::type& Eigen::IndexedView< XprType, RowIndices, ColIndices >::nestedExpression ( )
inline
Returns
the nested expression

◆ nestedExpression() [2/2]

template<typename XprType , typename RowIndices , typename ColIndices >
const internal::remove_all<XprType>::type& Eigen::IndexedView< XprType, RowIndices, ColIndices >::nestedExpression ( ) const
inline
Returns
the nested expression

◆ rowIndices()

template<typename XprType , typename RowIndices , typename ColIndices >
const RowIndices& Eigen::IndexedView< XprType, RowIndices, ColIndices >::rowIndices ( ) const
inline
Returns
a const reference to the object storing/generating the row indices

◆ rows()

template<typename XprType , typename RowIndices , typename ColIndices >
Index Eigen::IndexedView< XprType, RowIndices, ColIndices >::rows ( void  ) const
inline
Returns
number of rows

Member Data Documentation

◆ m_colIndices

template<typename XprType , typename RowIndices , typename ColIndices >
ColIndices Eigen::IndexedView< XprType, RowIndices, ColIndices >::m_colIndices
protected

◆ m_rowIndices

template<typename XprType , typename RowIndices , typename ColIndices >
RowIndices Eigen::IndexedView< XprType, RowIndices, ColIndices >::m_rowIndices
protected

◆ m_xpr

template<typename XprType , typename RowIndices , typename ColIndices >
MatrixTypeNested Eigen::IndexedView< XprType, RowIndices, ColIndices >::m_xpr
protected

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