10#ifndef EIGEN_COREITERATORS_H
11#define EIGEN_COREITERATORS_H
20template<
typename XprType,
typename EvaluatorKind>
32template<
typename XprType>
78template<
typename XprType>
88 : m_eval(
eval), m_inner(0), m_outer(outerId), m_end(innerSize)
93 return (IsRowMajor) ? m_eval.coeff(m_outer, m_inner)
94 : m_eval.coeff(m_inner, m_outer);
114template<
typename XprType>
116 :
public evaluator<XprType>::InnerIterator
#define EIGEN_STRONG_INLINE
Definition: Macros.h:927
An InnerIterator allows to loop over the element of any matrix expression.
Definition: CoreIterators.h:34
EIGEN_STRONG_INLINE Index col() const
Definition: CoreIterators.h:61
internal::evaluator< XprType > EvaluatorType
Definition: CoreIterators.h:37
EIGEN_STRONG_INLINE Index row() const
Definition: CoreIterators.h:59
EvaluatorType m_eval
Definition: CoreIterators.h:66
IteratorType m_iter
Definition: CoreIterators.h:67
EIGEN_STRONG_INLINE Scalar value() const
Definition: CoreIterators.h:46
internal::inner_iterator_selector< XprType, typename internal::evaluator_traits< XprType >::Kind > IteratorType
Definition: CoreIterators.h:36
InnerIterator(const XprType &xpr, const Index &outerId)
Construct an iterator over the outerId -th row or column of xpr.
Definition: CoreIterators.h:41
EIGEN_STRONG_INLINE Index index() const
Definition: CoreIterators.h:57
EIGEN_STRONG_INLINE InnerIterator & operator++()
Increment the iterator *this to the next non-zero coefficient.
Definition: CoreIterators.h:50
internal::traits< XprType >::Scalar Scalar
Definition: CoreIterators.h:38
EIGEN_STRONG_INLINE InnerIterator operator+(Index i)
Definition: CoreIterators.h:52
EIGEN_STRONG_INLINE InnerIterator & operator+=(Index i)
Definition: CoreIterators.h:51
EIGEN_STRONG_INLINE inner_iterator_selector & operator++()
Definition: CoreIterators.h:97
EIGEN_STRONG_INLINE Scalar value() const
Definition: CoreIterators.h:91
EIGEN_STRONG_INLINE Index index() const
Definition: CoreIterators.h:99
traits< XprType >::Scalar Scalar
Definition: CoreIterators.h:83
Index row() const
Definition: CoreIterators.h:100
Index col() const
Definition: CoreIterators.h:101
Index m_inner
Definition: CoreIterators.h:107
const Index m_outer
Definition: CoreIterators.h:108
evaluator< XprType > EvaluatorType
Definition: CoreIterators.h:82
const Index m_end
Definition: CoreIterators.h:109
const EvaluatorType & m_eval
Definition: CoreIterators.h:106
EIGEN_STRONG_INLINE inner_iterator_selector(const EvaluatorType &eval, const Index &outerId, const Index &innerSize)
Definition: CoreIterators.h:87
EIGEN_STRONG_INLINE inner_iterator_selector(const EvaluatorType &eval, const Index &outerId, const Index &)
Definition: CoreIterators.h:123
evaluator< XprType > EvaluatorType
Definition: CoreIterators.h:120
evaluator< XprType >::InnerIterator Base
Definition: CoreIterators.h:119
Definition: CoreIterators.h:21
const unsigned int RowMajorBit
for a matrix, this means that the storage order is row-major.
Definition: Constants.h:66
Namespace containing all symbols from the Eigen library.
Definition: Core:141
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:74
result
Definition: format.h:2564
Definition: Eigen_Colamd.h:50
Common base class for all classes T such that MatrixBase has an operator=(T) and a constructor Matrix...
Definition: EigenBase.h:30
Definition: Constants.h:542
Definition: Constants.h:545
Definition: XprHelper.h:332
Definition: ForwardDeclarations.h:17