Go to the documentation of this file.
11 #ifndef EIGEN_SPARSEVIEW_H
12 #define EIGEN_SPARSEVIEW_H
18 template<
typename MatrixType>
44 template<
typename MatrixType>
45 class SparseView :
public SparseMatrixBase<SparseView<MatrixType> >
83 template<
typename ArgType>
104 EvalIterator::operator++();
105 incrementToNonZero();
109 using EvalIterator::value;
119 EvalIterator::operator++();
126 Flags = XprType::Flags
136 template<
typename ArgType>
153 : m_sve(sve), m_inner(0), m_outer(outer), m_end(sve.m_view.innerSize())
155 incrementToNonZero();
161 incrementToNonZero();
167 return (IsRowMajor) ? m_sve.m_argImpl.coeff(m_outer, m_inner)
168 : m_sve.m_argImpl.coeff(m_inner, m_outer);
172 inline Index row()
const {
return IsRowMajor ? m_outer : index(); }
173 inline Index col()
const {
return IsRowMajor ? index() : m_outer; }
195 Flags = XprType::Flags
224 template<
typename Derived>
243 template<
typename Derived>
internal::remove_all< MatrixTypeNested >::type _MatrixTypeNested
EIGEN_STRONG_INLINE InnerIterator(const unary_evaluator &sve, Index outer)
evaluator< ArgType > m_argImpl
EIGEN_STRONG_INLINE Scalar value() const
internal::traits< Solve< Decomposition, RhsType > >::Scalar Scalar
NumTraits< Scalar >::Real RealScalar
void incrementToNonZero()
const unsigned int RowMajorBit
evaluator< ArgType > m_argImpl
unary_evaluator(const XprType &xpr)
const internal::remove_all< MatrixTypeNested >::type & nestedExpression() const
const SparseView< Derived > sparseView(const Scalar &m_reference=Scalar(0), const typename NumTraits< Scalar >::Real &m_epsilon=NumTraits< Scalar >::dummy_precision()) const
EIGEN_DEVICE_FUNC bool isMuchSmallerThan(const Scalar &x, const OtherScalar &y, const typename NumTraits< Scalar >::Real &precision=NumTraits< Scalar >::dummy_precision())
XprType::StorageIndex StorageIndex
EIGEN_STRONG_INLINE InnerIterator & operator++()
#define EIGEN_SPARSE_PUBLIC_INTERFACE(Derived)
MatrixType::StorageIndex StorageIndex
internal::traits< Derived >::Scalar Scalar
unary_evaluator(const XprType &xpr)
#define EIGEN_STRONG_INLINE
SparseMatrixBase< SparseView > Base
MatrixType::Nested MatrixTypeNested
EIGEN_STRONG_INLINE InnerIterator & operator++()
SparseView< ArgType > XprType
An InnerIterator allows to loop over the element of any matrix expression.
EIGEN_STRONG_INLINE InnerIterator(const unary_evaluator &sve, Index outer)
MatrixTypeNested m_matrix
evaluator< ArgType >::InnerIterator EvalIterator
Expression of a dense or sparse matrix with zero or too small values removed.
EIGEN_STRONG_INLINE StorageIndex index() const
Base class of any sparse matrices or sparse expressions.
SparseView< ArgType > XprType
NumTraits< Scalar >::Real RealScalar
internal::remove_all< MatrixType >::type NestedExpression
Holds information about the various numeric (i.e. scalar) types allowed by Eigen.
RealScalar epsilon() const
void incrementToNonZero()
const SparseView< Derived > pruned(const Scalar &reference=Scalar(0), const RealScalar &epsilon=NumTraits< Scalar >::dummy_precision()) const
const unary_evaluator & m_sve
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
control_box_rst
Author(s): Christoph Rösmann
autogenerated on Wed Mar 2 2022 00:06:27