Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
Eigen::BlockVectorView< BlockSparseMatrixT, VectorType > Class Template Reference

#include <src/eigen/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h>

Public Types

enum  { BlockSize = BlockSparseMatrixT::BlockSize , ColsAtCompileTime = VectorType::ColsAtCompileTime , RowsAtCompileTime = VectorType::RowsAtCompileTime , Flags = VectorType::Flags }
 
typedef Ref< const Matrix< typename BlockSparseMatrixT::Scalar,(RowsAtCompileTime==1)? 1 :BlockSize,(ColsAtCompileTime==1)? 1 :BlockSize > > Scalar
 
typedef BlockSparseMatrixT::Index Index
 

Public Member Functions

 BlockVectorView (const BlockSparseMatrixT &spblockmat, const VectorType &vec)
 
Index cols () const
 
Index size () const
 
Scalar coeff (Index bi) const
 
Scalar coeff (Index bi, Index j) const
 

Protected Attributes

const BlockSparseMatrixT & m_spblockmat
 
const VectorType & m_vec
 

Detailed Description

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

Member Typedef Documentation

◆ Index

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

◆ Scalar

template<typename BlockSparseMatrixT , typename VectorType >
typedef Ref<const Matrix<typename BlockSparseMatrixT::Scalar, (RowsAtCompileTime==1)? 1 : BlockSize, (ColsAtCompileTime==1)? 1 : BlockSize> > Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::Scalar

Member Enumeration Documentation

◆ anonymous enum

template<typename BlockSparseMatrixT , typename VectorType >
anonymous enum
Enumerator
BlockSize 
ColsAtCompileTime 
RowsAtCompileTime 
Flags 
161 {
162 BlockSize = BlockSparseMatrixT::BlockSize,
163 ColsAtCompileTime = VectorType::ColsAtCompileTime,
164 RowsAtCompileTime = VectorType::RowsAtCompileTime,
165 Flags = VectorType::Flags
166 };
@ Flags
Definition BlockSparseMatrix.h:165
@ ColsAtCompileTime
Definition BlockSparseMatrix.h:163
@ BlockSize
Definition BlockSparseMatrix.h:162
@ RowsAtCompileTime
Definition BlockSparseMatrix.h:164

Constructor & Destructor Documentation

◆ BlockVectorView()

template<typename BlockSparseMatrixT , typename VectorType >
Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::BlockVectorView ( const BlockSparseMatrixT &  spblockmat,
const VectorType &  vec 
)
inline
171 : m_spblockmat(spblockmat),m_vec(vec)
172 { }
const BlockSparseMatrixT & m_spblockmat
Definition BlockSparseMatrix.h:194
const VectorType & m_vec
Definition BlockSparseMatrix.h:195

Member Function Documentation

◆ coeff() [1/2]

template<typename BlockSparseMatrixT , typename VectorType >
Scalar Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::coeff ( Index  bi) const
inline
182 {
183 Index startRow = m_spblockmat.blockRowsIndex(bi);
184 Index rowSize = m_spblockmat.blockRowsIndex(bi+1) - startRow;
185 return m_vec.middleRows(startRow, rowSize);
186 }
BlockSparseMatrixT::Index Index
Definition BlockSparseMatrix.h:168

References Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::m_spblockmat, and Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::m_vec.

◆ coeff() [2/2]

template<typename BlockSparseMatrixT , typename VectorType >
Scalar Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::coeff ( Index  bi,
Index  j 
) const
inline
188 {
189 Index startRow = m_spblockmat.blockRowsIndex(bi);
190 Index rowSize = m_spblockmat.blockRowsIndex(bi+1) - startRow;
191 return m_vec.block(startRow, j, rowSize, 1);
192 }

References Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::m_spblockmat, and Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::m_vec.

◆ cols()

template<typename BlockSparseMatrixT , typename VectorType >
Index Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::cols ( ) const
inline
174 {
175 return m_vec.cols();
176 }

References Eigen::BlockVectorView< BlockSparseMatrixT, VectorType >::m_vec.

◆ size()

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

Member Data Documentation

◆ m_spblockmat

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

◆ m_vec

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

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