|
MOAB
4.9.3pre
|
Common base class for sparse [compressed]-{row|column}-storage format. More...
#include <SparseCompressedBase.h>


Classes | |
| class | InnerIterator |
| class | ReverseInnerIterator |
Public Types | |
| typedef SparseMatrixBase< Derived > | Base |
Public Member Functions | |
| Index | nonZeros () const |
| const Scalar * | valuePtr () const |
| Scalar * | valuePtr () |
| const StorageIndex * | innerIndexPtr () const |
| StorageIndex * | innerIndexPtr () |
| const StorageIndex * | outerIndexPtr () const |
| StorageIndex * | outerIndexPtr () |
| const StorageIndex * | innerNonZeroPtr () const |
| StorageIndex * | innerNonZeroPtr () |
| bool | isCompressed () const |
Protected Types | |
| typedef Base::IndexVector | IndexVector |
Protected Member Functions | |
| Eigen::Map< IndexVector > | innerNonZeros () |
| const Eigen::Map< const IndexVector > | innerNonZeros () const |
| SparseCompressedBase () | |
Private Member Functions | |
| template<typename OtherDerived > | |
| SparseCompressedBase (const SparseCompressedBase< OtherDerived > &) | |
Common base class for sparse [compressed]-{row|column}-storage format.
This class defines the common interface for all derived classes implementing the compressed sparse storage format, such as:
Definition at line 36 of file SparseCompressedBase.h.
| typedef SparseMatrixBase<Derived> Eigen::SparseCompressedBase< Derived >::Base |
Reimplemented from Eigen::SparseMatrixBase< Derived >.
Reimplemented in Eigen::BlockImpl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols, true, Sparse >, Eigen::BlockImpl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols, true, Sparse >, Eigen::SparseMapBase< Derived, WriteAccessors >, Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 40 of file SparseCompressedBase.h.
typedef Base::IndexVector Eigen::SparseCompressedBase< Derived >::IndexVector [protected] |
Reimplemented from Eigen::SparseMatrixBase< Derived >.
Reimplemented in Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, and Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >.
Definition at line 46 of file SparseCompressedBase.h.
| Eigen::SparseCompressedBase< Derived >::SparseCompressedBase | ( | ) | [inline, protected] |
| Eigen::SparseCompressedBase< Derived >::SparseCompressedBase | ( | const SparseCompressedBase< OtherDerived > & | ) | [explicit, private] |
| const StorageIndex* Eigen::SparseCompressedBase< Derived >::innerIndexPtr | ( | ) | const [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 80 of file SparseCompressedBase.h.
{ return derived().innerIndexPtr(); }
| StorageIndex* Eigen::SparseCompressedBase< Derived >::innerIndexPtr | ( | ) | [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMapBase< Derived, WriteAccessors >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 84 of file SparseCompressedBase.h.
{ return derived().innerIndexPtr(); }
| const StorageIndex* Eigen::SparseCompressedBase< Derived >::innerNonZeroPtr | ( | ) | const [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 100 of file SparseCompressedBase.h.
{ return derived().innerNonZeroPtr(); }
| StorageIndex* Eigen::SparseCompressedBase< Derived >::innerNonZeroPtr | ( | ) | [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseMapBase< Derived, WriteAccessors >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 104 of file SparseCompressedBase.h.
{ return derived().innerNonZeroPtr(); }
| Eigen::Map<IndexVector> Eigen::SparseCompressedBase< Derived >::innerNonZeros | ( | ) | [inline, protected] |
Definition at line 50 of file SparseCompressedBase.h.
{ return Eigen::Map<IndexVector>(innerNonZeroPtr(), isCompressed()?0:derived().outerSize()); }
| const Eigen::Map<const IndexVector> Eigen::SparseCompressedBase< Derived >::innerNonZeros | ( | ) | const [inline, protected] |
Definition at line 51 of file SparseCompressedBase.h.
{ return Eigen::Map<const IndexVector>(innerNonZeroPtr(), isCompressed()?0:derived().outerSize()); }
| bool Eigen::SparseCompressedBase< Derived >::isCompressed | ( | ) | const [inline] |
*this is in compressed form. Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, and Eigen::SparseMapBase< Derived, ReadOnlyAccessors >.
Definition at line 107 of file SparseCompressedBase.h.
{ return innerNonZeroPtr()==0; }
| Index Eigen::SparseCompressedBase< Derived >::nonZeros | ( | ) | const [inline] |
Reimplemented in Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 56 of file SparseCompressedBase.h.
{
if(Derived::IsVectorAtCompileTime && outerIndexPtr()==0)
return derived().nonZeros();
else if(isCompressed())
return outerIndexPtr()[derived().outerSize()]-outerIndexPtr()[0];
else if(derived().outerSize()==0)
return 0;
else
return innerNonZeros().sum();
}
| const StorageIndex* Eigen::SparseCompressedBase< Derived >::outerIndexPtr | ( | ) | const [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 90 of file SparseCompressedBase.h.
{ return derived().outerIndexPtr(); }
| StorageIndex* Eigen::SparseCompressedBase< Derived >::outerIndexPtr | ( | ) | [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMapBase< Derived, WriteAccessors >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 95 of file SparseCompressedBase.h.
{ return derived().outerIndexPtr(); }
| const Scalar* Eigen::SparseCompressedBase< Derived >::valuePtr | ( | ) | const [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseMapBase< Derived, ReadOnlyAccessors >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 71 of file SparseCompressedBase.h.
{ return derived().valuePtr(); }
| Scalar* Eigen::SparseCompressedBase< Derived >::valuePtr | ( | ) | [inline] |
Reimplemented in Eigen::internal::sparse_matrix_block_impl< SparseMatrixType, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::internal::sparse_matrix_block_impl< const SparseMatrix< _Scalar, _Options, _StorageIndex >, BlockRows, BlockCols >, Eigen::SparseMapBase< Derived, WriteAccessors >, Eigen::SparseMatrix< _Scalar, _Options, _Index >, Eigen::SparseMatrix< Scalar >, Eigen::SparseMatrix< Scalar, ColMajor, StorageIndex >, Eigen::SparseMatrix< Scalar, ColMajor, int >, Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >, Eigen::SparseVector< _Scalar, _Options, _StorageIndex >, and Eigen::internal::SparseTransposeImpl< MatrixType, CompressedAccessBit >.
Definition at line 75 of file SparseCompressedBase.h.
{ return derived().valuePtr(); }