WPILibC++ 2023.4.3
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 </home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/eigen/include/Eigen/src/Core/IndexedView.h>

Inheritance diagram for Eigen::IndexedView< XprType, RowIndices, ColIndices >:
Eigen::IndexedViewImpl< XprType, RowIndices, ColIndices, internal::traits< XprType >::StorageKind >

Public Types

typedef IndexedViewImpl< XprType, RowIndices, ColIndices, typenameinternal::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 >::typenestedExpression () const
 
internal::remove_reference< XprType >::typenestedExpression ()
 
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;
type
Definition: core.h:575
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

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,typenameinternal::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 ( ) 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 ( ) 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: