Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType > Class Template Reference

Public Types

enum  {
  ColsAtCompileTime ,
  RowsAtCompileTime ,
  Flags
}
 
typedef BlockSparseMatrixT::Index Index
 
typedef Ref< Matrix< typename VectorType::Scalar, RowsAtCompileTime, ColsAtCompileTime > > Scalar
 

Public Member Functions

 BlockVectorReturn (const BlockSparseMatrixT &spblockmat, VectorType &vec)
 
Scalar coeffRef (Index bi)
 
Scalar coeffRef (Index bi, Index j)
 
Index size () const
 

Protected Attributes

const BlockSparseMatrixT & m_spblockmat
 
VectorType & m_vec
 

Detailed Description

template<typename BlockSparseMatrixT, typename VectorType>
class Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >

Definition at line 205 of file BlockSparseMatrix.h.

Member Typedef Documentation

◆ Index

template<typename BlockSparseMatrixT , typename VectorType >
typedef BlockSparseMatrixT::Index Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::Index

Definition at line 214 of file BlockSparseMatrix.h.

◆ Scalar

template<typename BlockSparseMatrixT , typename VectorType >
typedef Ref<Matrix<typename VectorType::Scalar, RowsAtCompileTime, ColsAtCompileTime> > Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::Scalar

Definition at line 213 of file BlockSparseMatrix.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename BlockSparseMatrixT , typename VectorType >
anonymous enum
Enumerator
ColsAtCompileTime 
RowsAtCompileTime 
Flags 

Definition at line 208 of file BlockSparseMatrix.h.

208  {
209  ColsAtCompileTime = VectorType::ColsAtCompileTime,
210  RowsAtCompileTime = VectorType::RowsAtCompileTime,
211  Flags = VectorType::Flags
212  };

Constructor & Destructor Documentation

◆ BlockVectorReturn()

template<typename BlockSparseMatrixT , typename VectorType >
Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::BlockVectorReturn ( const BlockSparseMatrixT &  spblockmat,
VectorType &  vec 
)
inline

Definition at line 216 of file BlockSparseMatrix.h.

217  : m_spblockmat(spblockmat),m_vec(vec)
218  { }
const BlockSparseMatrixT & m_spblockmat

Member Function Documentation

◆ coeffRef() [1/2]

template<typename BlockSparseMatrixT , typename VectorType >
Scalar Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::coeffRef ( Index  bi)
inline

Definition at line 223 of file BlockSparseMatrix.h.

224  {
225  Index startRow = m_spblockmat.blockRowsIndex(bi);
226  Index rowSize = m_spblockmat.blockRowsIndex(bi+1) - startRow;
227  return m_vec.middleRows(startRow, rowSize);
228  }
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index

◆ coeffRef() [2/2]

template<typename BlockSparseMatrixT , typename VectorType >
Scalar Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::coeffRef ( Index  bi,
Index  j 
)
inline

Definition at line 229 of file BlockSparseMatrix.h.

230  {
231  Index startRow = m_spblockmat.blockRowsIndex(bi);
232  Index rowSize = m_spblockmat.blockRowsIndex(bi+1) - startRow;
233  return m_vec.block(startRow, j, rowSize, 1);
234  }

◆ size()

template<typename BlockSparseMatrixT , typename VectorType >
Index Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::size ( ) const
inline

Definition at line 219 of file BlockSparseMatrix.h.

220  {
221  return m_spblockmat.blockRows();
222  }

Member Data Documentation

◆ m_spblockmat

template<typename BlockSparseMatrixT , typename VectorType >
const BlockSparseMatrixT& Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::m_spblockmat
protected

Definition at line 237 of file BlockSparseMatrix.h.

◆ m_vec

template<typename BlockSparseMatrixT , typename VectorType >
VectorType& Eigen::BlockVectorReturn< BlockSparseMatrixT, VectorType >::m_vec
protected

Definition at line 238 of file BlockSparseMatrix.h.


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