10#ifndef EIGEN_COREITERATORS_H
11#define EIGEN_COREITERATORS_H
29 typedef typename Derived::Scalar Scalar;
30 typedef typename Derived::Index
Index;
34 EIGEN_STRONG_INLINE InnerIterator(
const Derived& expr,
Index outer)
35 : m_expression(expr), m_inner(0), m_outer(outer), m_end(expr.
innerSize())
38 EIGEN_STRONG_INLINE Scalar
value()
const
40 return (
IsRowMajor) ? m_expression.coeff(m_outer, m_inner)
41 : m_expression.coeff(m_inner, m_outer);
44 EIGEN_STRONG_INLINE InnerIterator& operator++() { m_inner++;
return *
this; }
46 EIGEN_STRONG_INLINE
Index index()
const {
return m_inner; }
50 EIGEN_STRONG_INLINE
operator bool()
const {
return m_inner < m_end && m_inner>=0; }
53 const Derived& m_expression;
Base class for all dense matrices, vectors, and arrays.
Definition DenseBase.h:38
Index innerSize() const
Definition DenseBase.h:197
internal::traits< Derived >::Index Index
The type of indices.
Definition DenseBase.h:51
ColXpr col(Index i)
Definition DenseBase.h:553
CoeffReturnType value() const
Definition DenseBase.h:434
RowXpr row(Index i)
Definition DenseBase.h:570
@ IsRowMajor
Definition DenseBase.h:157
const unsigned int RowMajorBit
Definition Constants.h:48