hpp-constraints  4.13.0
Definition of basic geometric constraints for motion planning
Eigen::MatrixBlocks< _allRows, _allCols > Class Template Reference

#include <hpp/constraints/matrix-view.hh>

Public Member Functions

 MatrixBlocks ()
 Empty constructor. More...
 
 MatrixBlocks (const segments_t &rows, const segments_t &cols)
 
 MatrixBlocks (const size_type &nbRows, const RowIndices_t &rows, const size_type &nbCols, const ColIndices_t &cols)
 
 MatrixBlocks (size_type start, size_type size)
 
 MatrixBlocks (const segments_t &idx)
 
 MatrixBlocks (const segment_t &idx)
 
template<typename MBDerived >
 MatrixBlocks (const MatrixBlocksBase< MBDerived > &other)
 Copy constructor. More...
 
MatrixBlocksoperator= (const MatrixBlocks &other)
 
void clearRows ()
 Clear rows. More...
 
void clearCols ()
 Clear cols. More...
 
void addRow (const size_type &row, const size_type size)
 
void addCol (const size_type &col, const size_type size)
 
template<bool Sort, bool Shrink, bool Cardinal>
void updateRows ()
 
template<bool Sort, bool Shrink, bool Cardinal>
void updateCols ()
 
const RowIndices_t & rows () const
 
const ColIndices_t & cols () const
 
const size_type & nbRows () const
 
const size_type & nbCols () const
 
template<bool Sort, bool Shrink, bool Cardinal>
void updateIndices ()
 

Public Attributes

size_type m_nbRows
 
size_type m_nbCols
 
RowIndices_t m_rows
 
ColIndices_t m_cols
 

Detailed Description

template<bool _allRows, bool _allCols>
class Eigen::MatrixBlocks< _allRows, _allCols >

Collection of indices of matrix blocks

Parameters
_allRowswhether the collection is composed of full columns
_allColswhether the collection is composed of full rows

This class enables a user to virtually create a matrix that concatenates blocks of a larger matrix.

The smaller matrix is built by methods lview and rview

  • lview returns a smaller matrix that can be written in,
  • rview returns a smaller matrix that cannot be written in.

Constructor & Destructor Documentation

◆ MatrixBlocks() [1/7]

template<bool _allRows, bool _allCols>
Eigen::MatrixBlocks< _allRows, _allCols >::MatrixBlocks ( )
inline

Empty constructor.

◆ MatrixBlocks() [2/7]

template<bool _allRows, bool _allCols>
Eigen::MatrixBlocks< _allRows, _allCols >::MatrixBlocks ( const segments_t &  rows,
const segments_t &  cols 
)
inline

Constructor by vectors of segments

Parameters
rowsset of row indices,
colsset of column indices,
Warning
rows and cols must be sorted

◆ MatrixBlocks() [3/7]

template<bool _allRows, bool _allCols>
Eigen::MatrixBlocks< _allRows, _allCols >::MatrixBlocks ( const size_type &  nbRows,
const RowIndices_t &  rows,
const size_type &  nbCols,
const ColIndices_t &  cols 
)
inline

Constructor by vectors of segments

Parameters
nbRowsnumber of rows,
nbColsnumber of columns,
rowsset of row indices,
colsset of column indices,
Warning
rows and cols must be sorted

◆ MatrixBlocks() [4/7]

template<bool _allRows, bool _allCols>
Eigen::MatrixBlocks< _allRows, _allCols >::MatrixBlocks ( size_type  start,
size_type  size 
)
inline

Constructor of single block

Parameters
startindice for row and column
sizenumber of indices in the block (row and column)
Note
if all rows or all columns are selected (template parameter) the block will contain all rows, respectively all columns.

◆ MatrixBlocks() [5/7]

template<bool _allRows, bool _allCols>
Eigen::MatrixBlocks< _allRows, _allCols >::MatrixBlocks ( const segments_t &  idx)
inline

Constructor by a collection of indices

Parameters
idxcollections of indices (for rows and columns)
Warning
idx must be sorted and shrinked
Note
if all rows or all columns are selected (template parameter) the block will contain all rows, respectively all columns.

◆ MatrixBlocks() [6/7]

template<bool _allRows, bool _allCols>
Eigen::MatrixBlocks< _allRows, _allCols >::MatrixBlocks ( const segment_t &  idx)
inline

Constructor of a single block

Parameters
idxsegment of row and column indices
Note
if all rows or all columns are selected (template parameter) the block will contain all rows, respectively all columns.

◆ MatrixBlocks() [7/7]

template<bool _allRows, bool _allCols>
template<typename MBDerived >
Eigen::MatrixBlocks< _allRows, _allCols >::MatrixBlocks ( const MatrixBlocksBase< MBDerived > &  other)
inline

Copy constructor.

Member Function Documentation

◆ addCol()

template<bool _allRows, bool _allCols>
void Eigen::MatrixBlocks< _allRows, _allCols >::addCol ( const size_type &  col,
const size_type  size 
)
inline

Add consecutive columns

Parameters
colfirst column to add
sizenumber of columns to add

◆ addRow()

template<bool _allRows, bool _allCols>
void Eigen::MatrixBlocks< _allRows, _allCols >::addRow ( const size_type &  row,
const size_type  size 
)
inline

Add consecutive rows

Parameters
rowfirst row to add
sizenumber of rows to add

◆ clearCols()

template<bool _allRows, bool _allCols>
void Eigen::MatrixBlocks< _allRows, _allCols >::clearCols ( )
inline

Clear cols.

◆ clearRows()

template<bool _allRows, bool _allCols>
void Eigen::MatrixBlocks< _allRows, _allCols >::clearRows ( )
inline

Clear rows.

◆ cols()

template<bool _allRows, bool _allCols>
const ColIndices_t& Eigen::MatrixBlocks< _allRows, _allCols >::cols ( ) const
inline

Return column indices

Warning
_allCols should be false

◆ nbCols()

template<bool _allRows, bool _allCols>
const size_type& Eigen::MatrixBlocks< _allRows, _allCols >::nbCols ( ) const
inline

Return number of column indices

Warning
_allCols should be false

◆ nbRows()

template<bool _allRows, bool _allCols>
const size_type& Eigen::MatrixBlocks< _allRows, _allCols >::nbRows ( ) const
inline

Return number of row indices

Warning
_allRows should be false

◆ operator=()

template<bool _allRows, bool _allCols>
MatrixBlocks& Eigen::MatrixBlocks< _allRows, _allCols >::operator= ( const MatrixBlocks< _allRows, _allCols > &  other)
inline

◆ rows()

template<bool _allRows, bool _allCols>
const RowIndices_t& Eigen::MatrixBlocks< _allRows, _allCols >::rows ( ) const
inline

Return row indices

Warning
_allRows should be false

◆ updateCols()

template<bool _allRows, bool _allCols>
template<bool Sort, bool Shrink, bool Cardinal>
void Eigen::MatrixBlocks< _allRows, _allCols >::updateCols ( )
inline

Selectively recompute set of columns

Template Parameters
Sortwhether set of columns should be sorted,
Shrinkwhether set of columns should be shrunk,
Cardinalwhether number of columns should be recomputed

◆ updateIndices()

template<bool _allRows, bool _allCols>
template<bool Sort, bool Shrink, bool Cardinal>
void Eigen::MatrixBlocks< _allRows, _allCols >::updateIndices ( )
inline

◆ updateRows()

template<bool _allRows, bool _allCols>
template<bool Sort, bool Shrink, bool Cardinal>
void Eigen::MatrixBlocks< _allRows, _allCols >::updateRows ( )
inline

Selectively recompute set of rows

Template Parameters
Sortwhether set of rows should be sorted,
Shrinkwhether set of rows should be shrunk,
Cardinalwhether number of rows should be recomputed

Member Data Documentation

◆ m_cols

template<bool _allRows, bool _allCols>
ColIndices_t Eigen::MatrixBlocks< _allRows, _allCols >::m_cols

◆ m_nbCols

template<bool _allRows, bool _allCols>
size_type Eigen::MatrixBlocks< _allRows, _allCols >::m_nbCols

◆ m_nbRows

template<bool _allRows, bool _allCols>
size_type Eigen::MatrixBlocks< _allRows, _allCols >::m_nbRows

◆ m_rows

template<bool _allRows, bool _allCols>
RowIndices_t Eigen::MatrixBlocks< _allRows, _allCols >::m_rows

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