Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Friends | List of all members
gtsam::VerticalBlockMatrix Class Reference

#include <VerticalBlockMatrix.h>

Public Types

typedef Eigen::Block< MatrixBlock
 
typedef Eigen::Block< const MatrixconstBlock
 
typedef VerticalBlockMatrix This
 

Public Member Functions

DenseIndex cols () const
 Column size. More...
 
const DenseIndexfirstBlock () const
 
DenseIndexfirstBlock ()
 
Block full ()
 
const constBlock full () const
 
const Matrixmatrix () const
 
Matrixmatrix ()
 
DenseIndex nBlocks () const
 Block count. More...
 
DenseIndex offset (DenseIndex block) const
 
Block operator() (DenseIndex block)
 
const constBlock operator() (DenseIndex block) const
 
Block range (DenseIndex startBlock, DenseIndex endBlock)
 
const constBlock range (DenseIndex startBlock, DenseIndex endBlock) const
 
const DenseIndexrowEnd () const
 
DenseIndexrowEnd ()
 
DenseIndex rows () const
 Row size. More...
 
const DenseIndexrowStart () const
 
DenseIndexrowStart ()
 
 VerticalBlockMatrix ()
 
template<typename CONTAINER >
 VerticalBlockMatrix (const CONTAINER &dimensions, DenseIndex height, bool appendOneDimension=false)
 
template<typename CONTAINER , typename DERIVED >
 VerticalBlockMatrix (const CONTAINER &dimensions, const Eigen::MatrixBase< DERIVED > &matrix, bool appendOneDimension=false)
 
template<typename ITERATOR >
 VerticalBlockMatrix (ITERATOR firstBlockDim, ITERATOR lastBlockDim, DenseIndex height, bool appendOneDimension=false)
 

Static Public Member Functions

static VerticalBlockMatrix LikeActiveViewOf (const VerticalBlockMatrix &rhs)
 
static VerticalBlockMatrix LikeActiveViewOf (const SymmetricBlockMatrix &rhs, DenseIndex height)
 

Protected Member Functions

void assertInvariants () const
 
void checkBlock (DenseIndex block) const
 
template<typename ITERATOR >
void fillOffsets (ITERATOR firstBlockDim, ITERATOR lastBlockDim, bool appendOneDimension)
 

Protected Attributes

DenseIndex blockStart_
 Changes apparent matrix view, see main class comment. More...
 
Matrix matrix_
 The full matrix. More...
 
DenseIndex rowEnd_
 Changes apparent matrix view, see main class comment. More...
 
DenseIndex rowStart_
 Changes apparent matrix view, see main class comment. More...
 
FastVector< DenseIndexvariableColOffsets_
 the starting columns of each block (0-based) More...
 

Private Member Functions

template<class ARCHIVE >
void serialize (ARCHIVE &ar, const unsigned int)
 

Friends

class boost::serialization::access
 
class SymmetricBlockMatrix
 

Detailed Description

Definition at line 41 of file VerticalBlockMatrix.h.

Member Typedef Documentation

Definition at line 45 of file VerticalBlockMatrix.h.

Definition at line 46 of file VerticalBlockMatrix.h.

Definition at line 44 of file VerticalBlockMatrix.h.

Constructor & Destructor Documentation

gtsam::VerticalBlockMatrix::VerticalBlockMatrix ( )
inline

Construct an empty VerticalBlockMatrix

Definition at line 59 of file VerticalBlockMatrix.h.

template<typename CONTAINER >
gtsam::VerticalBlockMatrix::VerticalBlockMatrix ( const CONTAINER &  dimensions,
DenseIndex  height,
bool  appendOneDimension = false 
)
inline

Construct from a container of the sizes of each vertical block.

Definition at line 68 of file VerticalBlockMatrix.h.

template<typename CONTAINER , typename DERIVED >
gtsam::VerticalBlockMatrix::VerticalBlockMatrix ( const CONTAINER &  dimensions,
const Eigen::MatrixBase< DERIVED > &  matrix,
bool  appendOneDimension = false 
)
inline

Construct from a container of the sizes of each vertical block and a pre-prepared matrix.

Definition at line 79 of file VerticalBlockMatrix.h.

template<typename ITERATOR >
gtsam::VerticalBlockMatrix::VerticalBlockMatrix ( ITERATOR  firstBlockDim,
ITERATOR  lastBlockDim,
DenseIndex  height,
bool  appendOneDimension = false 
)
inline

Construct from iterator over the sizes of each vertical block.

Definition at line 92 of file VerticalBlockMatrix.h.

Member Function Documentation

void gtsam::VerticalBlockMatrix::assertInvariants ( ) const
inlineprotected

Definition at line 193 of file VerticalBlockMatrix.h.

void gtsam::VerticalBlockMatrix::checkBlock ( DenseIndex  block) const
inlineprotected

Definition at line 201 of file VerticalBlockMatrix.h.

DenseIndex gtsam::VerticalBlockMatrix::cols ( void  ) const
inline

Column size.

Definition at line 117 of file VerticalBlockMatrix.h.

template<typename ITERATOR >
void gtsam::VerticalBlockMatrix::fillOffsets ( ITERATOR  firstBlockDim,
ITERATOR  lastBlockDim,
bool  appendOneDimension 
)
inlineprotected

Definition at line 209 of file VerticalBlockMatrix.h.

const DenseIndex& gtsam::VerticalBlockMatrix::firstBlock ( ) const
inline

Get the apparent first block for all operations

Definition at line 181 of file VerticalBlockMatrix.h.

DenseIndex& gtsam::VerticalBlockMatrix::firstBlock ( )
inline

Get or set the apparent first block for all operations

Definition at line 184 of file VerticalBlockMatrix.h.

Block gtsam::VerticalBlockMatrix::full ( )
inline

Return the full matrix, not including any portions excluded by rowStart(), rowEnd(), and firstBlock()

Definition at line 156 of file VerticalBlockMatrix.h.

const constBlock gtsam::VerticalBlockMatrix::full ( ) const
inline

Return the full matrix, not including any portions excluded by rowStart(), rowEnd(), and firstBlock()

Definition at line 159 of file VerticalBlockMatrix.h.

VerticalBlockMatrix gtsam::VerticalBlockMatrix::LikeActiveViewOf ( const VerticalBlockMatrix rhs)
static

Copy the block structure and resize the underlying matrix, but do not copy the matrix data. If blockStart(), rowStart(), and/or rowEnd() have been modified, this copies the structure of the corresponding matrix view. In the destination VerticalBlockView, blockStart() and rowStart() will thus be 0, rowEnd() will be cols() of the source VerticalBlockView, and the underlying matrix will be the size of the view of the source matrix.

Definition at line 25 of file VerticalBlockMatrix.cpp.

VerticalBlockMatrix gtsam::VerticalBlockMatrix::LikeActiveViewOf ( const SymmetricBlockMatrix rhs,
DenseIndex  height 
)
static

Copy the block structure, but do not copy the matrix data. If blockStart() has been modified, this copies the structure of the corresponding matrix view. In the destination VerticalBlockMatrix, blockStart() will be 0.

Definition at line 39 of file VerticalBlockMatrix.cpp.

const Matrix& gtsam::VerticalBlockMatrix::matrix ( ) const
inline

Access to full matrix (including any portions excluded by rowStart(), rowEnd(), and firstBlock())

Definition at line 187 of file VerticalBlockMatrix.h.

Matrix& gtsam::VerticalBlockMatrix::matrix ( )
inline

Non-const access to full matrix (including any portions excluded by rowStart(), rowEnd(), and firstBlock())

Definition at line 190 of file VerticalBlockMatrix.h.

DenseIndex gtsam::VerticalBlockMatrix::nBlocks ( ) const
inline

Block count.

Definition at line 120 of file VerticalBlockMatrix.h.

DenseIndex gtsam::VerticalBlockMatrix::offset ( DenseIndex  block) const
inline

Definition at line 161 of file VerticalBlockMatrix.h.

Block gtsam::VerticalBlockMatrix::operator() ( DenseIndex  block)
inline

Access a single block in the underlying matrix with read/write access

Definition at line 123 of file VerticalBlockMatrix.h.

const constBlock gtsam::VerticalBlockMatrix::operator() ( DenseIndex  block) const
inline

Access a const block view

Definition at line 126 of file VerticalBlockMatrix.h.

Block gtsam::VerticalBlockMatrix::range ( DenseIndex  startBlock,
DenseIndex  endBlock 
)
inline

access ranges of blocks at a time

Definition at line 129 of file VerticalBlockMatrix.h.

const constBlock gtsam::VerticalBlockMatrix::range ( DenseIndex  startBlock,
DenseIndex  endBlock 
) const
inline

Definition at line 142 of file VerticalBlockMatrix.h.

const DenseIndex& gtsam::VerticalBlockMatrix::rowEnd ( ) const
inline

Get the apparent last row (exclusive, i.e. rows() == rowEnd() - rowStart()) of the underlying matrix for all operations

Definition at line 175 of file VerticalBlockMatrix.h.

DenseIndex& gtsam::VerticalBlockMatrix::rowEnd ( )
inline

Get or set the apparent last row (exclusive, i.e. rows() == rowEnd() - rowStart()) of the underlying matrix for all operations

Definition at line 178 of file VerticalBlockMatrix.h.

DenseIndex gtsam::VerticalBlockMatrix::rows ( void  ) const
inline

Row size.

Definition at line 114 of file VerticalBlockMatrix.h.

const DenseIndex& gtsam::VerticalBlockMatrix::rowStart ( ) const
inline

Get the apparent first row of the underlying matrix for all operations

Definition at line 169 of file VerticalBlockMatrix.h.

DenseIndex& gtsam::VerticalBlockMatrix::rowStart ( )
inline

Get or set the apparent first row of the underlying matrix for all operations

Definition at line 172 of file VerticalBlockMatrix.h.

template<class ARCHIVE >
void gtsam::VerticalBlockMatrix::serialize ( ARCHIVE &  ar,
const unsigned  int 
)
inlineprivate

Definition at line 224 of file VerticalBlockMatrix.h.

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Serialization function

Definition at line 222 of file VerticalBlockMatrix.h.

friend class SymmetricBlockMatrix
friend

Definition at line 218 of file VerticalBlockMatrix.h.

Member Data Documentation

DenseIndex gtsam::VerticalBlockMatrix::blockStart_
protected

Changes apparent matrix view, see main class comment.

Definition at line 54 of file VerticalBlockMatrix.h.

Matrix gtsam::VerticalBlockMatrix::matrix_
protected

The full matrix.

Definition at line 49 of file VerticalBlockMatrix.h.

DenseIndex gtsam::VerticalBlockMatrix::rowEnd_
protected

Changes apparent matrix view, see main class comment.

Definition at line 53 of file VerticalBlockMatrix.h.

DenseIndex gtsam::VerticalBlockMatrix::rowStart_
protected

Changes apparent matrix view, see main class comment.

Definition at line 52 of file VerticalBlockMatrix.h.

FastVector<DenseIndex> gtsam::VerticalBlockMatrix::variableColOffsets_
protected

the starting columns of each block (0-based)

Definition at line 50 of file VerticalBlockMatrix.h.


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


gtsam
Author(s):
autogenerated on Sat May 8 2021 02:58:37