Public Member Functions | Protected Types | Protected Attributes | Private Member Functions | List of all members
Eigen::InnerIterator< XprType > Class Template Reference

An InnerIterator allows to loop over the element of any matrix expression. More...

#include <CoreIterators.h>

Public Member Functions

EIGEN_STRONG_INLINE Index col () const
 
EIGEN_STRONG_INLINE Index index () const
 
 InnerIterator (const XprType &xpr, const Index &outerId)
 
EIGEN_STRONG_INLINE operator bool () const
 
EIGEN_STRONG_INLINE InnerIterator operator+ (Index i)
 
EIGEN_STRONG_INLINE InnerIteratoroperator++ ()
 
EIGEN_STRONG_INLINE InnerIteratoroperator+= (Index i)
 
EIGEN_STRONG_INLINE Index row () const
 
EIGEN_STRONG_INLINE Scalar value () const
 

Protected Types

typedef internal::evaluator< XprTypeEvaluatorType
 
typedef internal::inner_iterator_selector< XprType, typename internal::evaluator_traits< XprType >::Kind > IteratorType
 
typedef internal::traits< XprType >::Scalar Scalar
 

Protected Attributes

EvaluatorType m_eval
 
IteratorType m_iter
 

Private Member Functions

template<typename T >
 InnerIterator (const EigenBase< T > &, Index outer)
 

Detailed Description

template<typename XprType>
class Eigen::InnerIterator< XprType >

An InnerIterator allows to loop over the element of any matrix expression.

Warning
To be used with care because an evaluator is constructed every time an InnerIterator iterator is constructed.

TODO: add a usage example

Definition at line 33 of file CoreIterators.h.

Member Typedef Documentation

◆ EvaluatorType

template<typename XprType >
typedef internal::evaluator<XprType> Eigen::InnerIterator< XprType >::EvaluatorType
protected

Definition at line 37 of file CoreIterators.h.

◆ IteratorType

template<typename XprType >
typedef internal::inner_iterator_selector<XprType, typename internal::evaluator_traits<XprType>::Kind> Eigen::InnerIterator< XprType >::IteratorType
protected

Definition at line 36 of file CoreIterators.h.

◆ Scalar

template<typename XprType >
typedef internal::traits<XprType>::Scalar Eigen::InnerIterator< XprType >::Scalar
protected

Definition at line 38 of file CoreIterators.h.

Constructor & Destructor Documentation

◆ InnerIterator() [1/2]

template<typename XprType >
Eigen::InnerIterator< XprType >::InnerIterator ( const XprType xpr,
const Index outerId 
)
inline

Construct an iterator over the outerId -th row or column of xpr

Definition at line 41 of file CoreIterators.h.

◆ InnerIterator() [2/2]

template<typename XprType >
template<typename T >
Eigen::InnerIterator< XprType >::InnerIterator ( const EigenBase< T > &  ,
Index  outer 
)
private

Member Function Documentation

◆ col()

template<typename XprType >
EIGEN_STRONG_INLINE Index Eigen::InnerIterator< XprType >::col ( ) const
inline
Returns
the column index of the current coefficient.

Definition at line 61 of file CoreIterators.h.

◆ index()

template<typename XprType >
EIGEN_STRONG_INLINE Index Eigen::InnerIterator< XprType >::index ( ) const
inline
Returns
the column or row index of the current coefficient.

Definition at line 57 of file CoreIterators.h.

◆ operator bool()

template<typename XprType >
EIGEN_STRONG_INLINE Eigen::InnerIterator< XprType >::operator bool ( ) const
inline
Returns
true if the iterator *this still references a valid coefficient.

Definition at line 63 of file CoreIterators.h.

◆ operator+()

template<typename XprType >
EIGEN_STRONG_INLINE InnerIterator Eigen::InnerIterator< XprType >::operator+ ( Index  i)
inline

Definition at line 52 of file CoreIterators.h.

◆ operator++()

template<typename XprType >
EIGEN_STRONG_INLINE InnerIterator& Eigen::InnerIterator< XprType >::operator++ ( )
inline

Increment the iterator *this to the next non-zero coefficient. Explicit zeros are not skipped over. To skip explicit zeros, see class SparseView

Definition at line 50 of file CoreIterators.h.

◆ operator+=()

template<typename XprType >
EIGEN_STRONG_INLINE InnerIterator& Eigen::InnerIterator< XprType >::operator+= ( Index  i)
inline

Definition at line 51 of file CoreIterators.h.

◆ row()

template<typename XprType >
EIGEN_STRONG_INLINE Index Eigen::InnerIterator< XprType >::row ( ) const
inline
Returns
the row index of the current coefficient.

Definition at line 59 of file CoreIterators.h.

◆ value()

template<typename XprType >
EIGEN_STRONG_INLINE Scalar Eigen::InnerIterator< XprType >::value ( ) const
inline
Returns
the value of the current coefficient.

Definition at line 46 of file CoreIterators.h.

Member Data Documentation

◆ m_eval

template<typename XprType >
EvaluatorType Eigen::InnerIterator< XprType >::m_eval
protected

Definition at line 66 of file CoreIterators.h.

◆ m_iter

template<typename XprType >
IteratorType Eigen::InnerIterator< XprType >::m_iter
protected

Definition at line 67 of file CoreIterators.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:41:47