Public Types | Public Member Functions | Protected Attributes | List of all members
g2o::SparseBlockMatrixHashMap< MatrixType > Class Template Reference

Sparse matrix which uses blocks based on hash structures. More...

#include <sparse_block_matrix_ccs.h>

Public Types

typedef std::tr1::unordered_map< int, MatrixType * > SparseColumn
 
typedef MatrixType SparseMatrixBlock
 this is the type of the elementary block, it is an Eigen::Matrix. More...
 

Public Member Functions

MatrixType * addBlock (int r, int c, bool zeroBlock=false)
 
const std::vector< SparseColumn > & blockCols () const
 the block matrices per block-column More...
 
std::vector< SparseColumn > & blockCols ()
 
int colBaseOfBlock (int c) const
 where does the col at block-col r start? More...
 
const std::vector< int > & colBlockIndices () const
 indices of the column blocks More...
 
int cols () const
 columns of the matrix More...
 
int colsOfBlock (int c) const
 how many cols does the block at block-col c has? More...
 
int rowBaseOfBlock (int r) const
 where does the row at block-row r start? More...
 
const std::vector< int > & rowBlockIndices () const
 indices of the row blocks More...
 
int rows () const
 rows of the matrix More...
 
int rowsOfBlock (int r) const
 how many rows does the block at block-row r has? More...
 
 SparseBlockMatrixHashMap (const std::vector< int > &rowIndices, const std::vector< int > &colIndices)
 

Protected Attributes

std::vector< SparseColumn_blockCols
 the matrices stored in CCS order More...
 
const std::vector< int > & _colBlockIndices
 vector of the indices of the blocks along the cols More...
 
const std::vector< int > & _rowBlockIndices
 vector of the indices of the blocks along the rows. More...
 

Detailed Description

template<class MatrixType>
class g2o::SparseBlockMatrixHashMap< MatrixType >

Sparse matrix which uses blocks based on hash structures.

This class is used to construct the pattern of a sparse block matrix

Definition at line 215 of file sparse_block_matrix_ccs.h.

Member Typedef Documentation

template<class MatrixType>
typedef std::tr1::unordered_map<int, MatrixType*> g2o::SparseBlockMatrixHashMap< MatrixType >::SparseColumn

Definition at line 226 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
typedef MatrixType g2o::SparseBlockMatrixHashMap< MatrixType >::SparseMatrixBlock

this is the type of the elementary block, it is an Eigen::Matrix.

Definition at line 219 of file sparse_block_matrix_ccs.h.

Constructor & Destructor Documentation

template<class MatrixType>
g2o::SparseBlockMatrixHashMap< MatrixType >::SparseBlockMatrixHashMap ( const std::vector< int > &  rowIndices,
const std::vector< int > &  colIndices 
)
inline

Definition at line 228 of file sparse_block_matrix_ccs.h.

Member Function Documentation

template<class MatrixType>
MatrixType* g2o::SparseBlockMatrixHashMap< MatrixType >::addBlock ( int  r,
int  c,
bool  zeroBlock = false 
)
inline

add a block to the pattern, return a pointer to the added block

Definition at line 257 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
const std::vector<SparseColumn>& g2o::SparseBlockMatrixHashMap< MatrixType >::blockCols ( ) const
inline

the block matrices per block-column

Definition at line 245 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
std::vector<SparseColumn>& g2o::SparseBlockMatrixHashMap< MatrixType >::blockCols ( )
inline

Definition at line 246 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
int g2o::SparseBlockMatrixHashMap< MatrixType >::colBaseOfBlock ( int  c) const
inline

where does the col at block-col r start?

Definition at line 242 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
const std::vector<int>& g2o::SparseBlockMatrixHashMap< MatrixType >::colBlockIndices ( ) const
inline

indices of the column blocks

Definition at line 252 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
int g2o::SparseBlockMatrixHashMap< MatrixType >::cols ( ) const
inline

columns of the matrix

Definition at line 222 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
int g2o::SparseBlockMatrixHashMap< MatrixType >::colsOfBlock ( int  c) const
inline

how many cols does the block at block-col c has?

Definition at line 236 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
int g2o::SparseBlockMatrixHashMap< MatrixType >::rowBaseOfBlock ( int  r) const
inline

where does the row at block-row r start?

Definition at line 239 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
const std::vector<int>& g2o::SparseBlockMatrixHashMap< MatrixType >::rowBlockIndices ( ) const
inline

indices of the row blocks

Definition at line 249 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
int g2o::SparseBlockMatrixHashMap< MatrixType >::rows ( ) const
inline

rows of the matrix

Definition at line 224 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
int g2o::SparseBlockMatrixHashMap< MatrixType >::rowsOfBlock ( int  r) const
inline

how many rows does the block at block-row r has?

Definition at line 233 of file sparse_block_matrix_ccs.h.

Member Data Documentation

template<class MatrixType>
std::vector<SparseColumn> g2o::SparseBlockMatrixHashMap< MatrixType >::_blockCols
protected

the matrices stored in CCS order

Definition at line 277 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
const std::vector<int>& g2o::SparseBlockMatrixHashMap< MatrixType >::_colBlockIndices
protected

vector of the indices of the blocks along the cols

Definition at line 276 of file sparse_block_matrix_ccs.h.

template<class MatrixType>
const std::vector<int>& g2o::SparseBlockMatrixHashMap< MatrixType >::_rowBlockIndices
protected

vector of the indices of the blocks along the rows.

Definition at line 275 of file sparse_block_matrix_ccs.h.


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


orb_slam2_ros
Author(s):
autogenerated on Wed Apr 21 2021 02:53:06