Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator Class Reference

#include <BlockSparseMatrix.h>

Public Member Functions

 InnerIterator (const BlockSparseMatrix &mat, Index outer)
 
InnerIteratoroperator++ ()
 
const Scalarvalue () const
 
ScalarvalueRef ()
 
Index index () const
 
Index outer () const
 
Index col () const
 
Index row () const
 
 operator bool () const
 

Protected Attributes

const BlockSparseMatrixm_mat
 
const Index m_outer
 
const Index m_outerB
 
BlockInnerIterator itb
 
const Index m_offset
 
Index m_start
 
Index m_id
 
Index m_end
 

Constructor & Destructor Documentation

◆ InnerIterator()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::InnerIterator ( const BlockSparseMatrix mat,
Index  outer 
)
inline
931  : m_mat(mat),
932  m_outerB(mat.outerToBlock(outer)),
933  m_outer(outer),
934  itb(mat, mat.outerToBlock(outer)),
935  m_offset(outer - mat.blockOuterIndex(m_outerB)) {
936  if (itb) {
938  m_start = m_id;
940  }
941  }
Index index() const
Definition: BlockSparseMatrix.h:902
const Index m_offset
Definition: BlockSparseMatrix.h:967
Index m_id
Definition: BlockSparseMatrix.h:969
Index outer() const
Definition: BlockSparseMatrix.h:957
Index m_end
Definition: BlockSparseMatrix.h:970
BlockInnerIterator itb
Definition: BlockSparseMatrix.h:966
const Index m_outer
Definition: BlockSparseMatrix.h:964
Index m_start
Definition: BlockSparseMatrix.h:968
const Index m_outerB
Definition: BlockSparseMatrix.h:965
const BlockSparseMatrix & m_mat
Definition: BlockSparseMatrix.h:963
Index blockInnerIndex(Index bi) const
Definition: BlockSparseMatrix.h:809

Member Function Documentation

◆ col()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::col ( ) const
inline
958 { return outer(); }

◆ index()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::index ( ) const
inline
956 { return m_id; }

◆ operator bool()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::operator bool ( ) const
inline
960 { return itb; }

◆ operator++()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
InnerIterator& Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::operator++ ( )
inline
942  {
943  m_id++;
944  if (m_id >= m_end) {
945  ++itb;
946  if (itb) {
948  m_start = m_id;
950  }
951  }
952  return *this;
953  }

◆ outer()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::outer ( ) const
inline
957 { return m_outer; }

◆ row()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::row ( ) const
inline
959 { return index(); }
Index index() const
Definition: BlockSparseMatrix.h:956

◆ value()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
const Scalar& Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::value ( ) const
inline
954 { return itb.value().coeff(m_id - m_start, m_offset); }
const Map< const BlockScalar > value() const
Definition: BlockSparseMatrix.h:895

◆ valueRef()

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Scalar& Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::valueRef ( )
inline
955 { return itb.valueRef().coeff(m_id - m_start, m_offset); }
Map< BlockScalar > valueRef()
Definition: BlockSparseMatrix.h:898

Member Data Documentation

◆ itb

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
BlockInnerIterator Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::itb
protected

◆ m_end

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::m_end
protected

◆ m_id

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::m_id
protected

◆ m_mat

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
const BlockSparseMatrix& Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::m_mat
protected

◆ m_offset

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
const Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::m_offset
protected

◆ m_outer

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
const Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::m_outer
protected

◆ m_outerB

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
const Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::m_outerB
protected

◆ m_start

template<typename Scalar_ , int _BlockAtCompileTime, int Options_, typename StorageIndex_ >
Index Eigen::BlockSparseMatrix< Scalar_, _BlockAtCompileTime, Options_, StorageIndex_ >::InnerIterator::m_start
protected

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