Eigen::MatrixBlocksBase< Derived > Class Template Reference

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

Classes

struct  View
 Smaller matrix composed by concatenation of the blocks. More...
 

Public Types

enum  {
  AllRows = internal::traits<Derived>::AllRows,
  AllCols = internal::traits<Derived>::AllCols,
  OneDimension = bool(AllRows) || bool(AllCols)
}
 
typedef hpp::constraints::size_type size_type
 Index of vector or matrix. More...
 
typedef BlockIndex::segment_t segment_t
 Interval of indices [first, first + second - 1]. More...
 
typedef BlockIndex::segments_t segments_t
 vector of segments More...
 
typedef internal::traits< Derived >::RowIndices_t RowIndices_t
 
typedef internal::traits< Derived >::ColIndices_t ColIndices_t
 

Public Member Functions

Derived const & derived () const
 
Derived & derived ()
 
template<typename MatrixType >
EIGEN_STRONG_INLINE View< MatrixType >::type lview (const MatrixBase< MatrixType > &other) const
 Writable view of the smaller matrix. More...
 
template<typename MatrixType >
EIGEN_STRONG_INLINE View< const MatrixType >::type rview (const MatrixBase< MatrixType > &other) const
 Non-writable view of the smaller matrix. More...
 
MatrixBlocksRef< AllCols, AllRowstranspose () const
 
MatrixBlocksRef< AllRows, true > keepRows () const
 
MatrixBlocksRef< true, AllColskeepCols () const
 
const segments_tindices () const
 Return row or column indices as a vector of segments. More...
 
const RowIndices_trows () const
 Return row indices. More...
 
const ColIndices_tcols () const
 Return column indices. More...
 
const size_typenbIndices () const
 Return number of row or column indices. More...
 
const size_typenbRows () const
 Return number of row indices. More...
 
const size_typenbCols () const
 Return number of column indices. More...
 
MatrixBlocks< AllRows, AllColsblock (size_type i, size_type j, size_type ni, size_type nj) const
 Extract a block. More...
 
MatrixBlocks< AllRows, AllColsmiddleRows (size_type i, size_type ni) const
 Extract a set of rows. More...
 
MatrixBlocks< AllRows, AllColsmiddleCols (size_type j, size_type nj) const
 Extract a set of cols. More...
 

Protected Member Functions

 MatrixBlocksBase ()
 Empty constructor. More...
 
 MatrixBlocksBase (const MatrixBlocksBase &)
 Copy constructor. More...
 

Member Typedef Documentation

template<typename Derived>
typedef internal::traits<Derived>::ColIndices_t Eigen::MatrixBlocksBase< Derived >::ColIndices_t
template<typename Derived>
typedef internal::traits<Derived>::RowIndices_t Eigen::MatrixBlocksBase< Derived >::RowIndices_t
template<typename Derived>
typedef BlockIndex::segment_t Eigen::MatrixBlocksBase< Derived >::segment_t

Interval of indices [first, first + second - 1].

template<typename Derived>
typedef BlockIndex::segments_t Eigen::MatrixBlocksBase< Derived >::segments_t

vector of segments

template<typename Derived>
typedef hpp::constraints::size_type Eigen::MatrixBlocksBase< Derived >::size_type

Index of vector or matrix.

Member Enumeration Documentation

template<typename Derived>
anonymous enum
Enumerator
AllRows 
AllCols 
OneDimension 

Constructor & Destructor Documentation

template<typename Derived>
Eigen::MatrixBlocksBase< Derived >::MatrixBlocksBase ( )
inlineprotected

Empty constructor.

template<typename Derived>
Eigen::MatrixBlocksBase< Derived >::MatrixBlocksBase ( const MatrixBlocksBase< Derived > &  )
inlineprotected

Copy constructor.

Member Function Documentation

template<typename Derived>
MatrixBlocks<AllRows, AllCols> Eigen::MatrixBlocksBase< Derived >::block ( size_type  i,
size_type  j,
size_type  ni,
size_type  nj 
) const
inline

Extract a block.

Parameters
i,j,ni,njupper left corner and lengths of the block
Returns
new instance
template<typename Derived>
const ColIndices_t& Eigen::MatrixBlocksBase< Derived >::cols ( ) const
inline

Return column indices.

Warning
_allCols should be false
template<typename Derived>
Derived const& Eigen::MatrixBlocksBase< Derived >::derived ( ) const
inline
template<typename Derived>
Derived& Eigen::MatrixBlocksBase< Derived >::derived ( )
inline
template<typename Derived>
const segments_t& Eigen::MatrixBlocksBase< Derived >::indices ( ) const
inline

Return row or column indices as a vector of segments.

Returns
rows indices if not all rows are selected (see template parameter _allRows), column indices if all rows are selected.
template<typename Derived>
MatrixBlocksRef<true, AllCols> Eigen::MatrixBlocksBase< Derived >::keepCols ( ) const
inline
template<typename Derived>
MatrixBlocksRef<AllRows, true> Eigen::MatrixBlocksBase< Derived >::keepRows ( ) const
inline
template<typename Derived>
template<typename MatrixType >
EIGEN_STRONG_INLINE View<MatrixType>::type Eigen::MatrixBlocksBase< Derived >::lview ( const MatrixBase< MatrixType > &  other) const
inline

Writable view of the smaller matrix.

Parameters
othermatrix to whick block are extracted
Returns
writable view of the smaller matrix composed by concatenation of blocks.
template<typename Derived>
MatrixBlocks<AllRows, AllCols> Eigen::MatrixBlocksBase< Derived >::middleCols ( size_type  j,
size_type  nj 
) const
inline

Extract a set of cols.

Parameters
j,njstart and length of the set of rows
Returns
new instance
template<typename Derived>
MatrixBlocks<AllRows, AllCols> Eigen::MatrixBlocksBase< Derived >::middleRows ( size_type  i,
size_type  ni 
) const
inline

Extract a set of rows.

Parameters
i,nistart and length of the set of rows
Returns
new instance
template<typename Derived>
const size_type& Eigen::MatrixBlocksBase< Derived >::nbCols ( ) const
inline

Return number of column indices.

Warning
_allCols should be false
template<typename Derived>
const size_type& Eigen::MatrixBlocksBase< Derived >::nbIndices ( ) const
inline

Return number of row or column indices.

Returns
number of rows indices if not all rows are selected (see template parameter _allRows), number of column indices if all rows are selected.
template<typename Derived>
const size_type& Eigen::MatrixBlocksBase< Derived >::nbRows ( ) const
inline

Return number of row indices.

Warning
_allRows should be false
template<typename Derived>
const RowIndices_t& Eigen::MatrixBlocksBase< Derived >::rows ( ) const
inline

Return row indices.

Warning
_allRows should be false
template<typename Derived>
template<typename MatrixType >
EIGEN_STRONG_INLINE View<const MatrixType>::type Eigen::MatrixBlocksBase< Derived >::rview ( const MatrixBase< MatrixType > &  other) const
inline

Non-writable view of the smaller matrix.

Parameters
othermatrix to whick block are extracted
Returns
non-writable view of the smaller matrix composed by concatenation of blocks.
template<typename Derived>
MatrixBlocksRef<AllCols, AllRows> Eigen::MatrixBlocksBase< Derived >::transpose ( ) const
inline