Main MRPT website > C++ reference
MRPT logo

mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE > Class Template Reference

A wrapper around an existing matrix (of any kind) that allows operating on a subrange of the elements. More...

#include <mrpt/math/CMatrixViews.h>

Inheritance diagram for mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >:
Inheritance graph
[legend]
Collaboration diagram for mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef
CArbitrarySubmatrixView
< MATRIXTYPE > 
mrpt_autotype

Public Member Functions

DECLARE_MRPT_CONTAINER_TYPES
DECLARE_MRPT_CONTAINER_IS_MATRIX
DECLARE_MRPT_MATRIX_ITERATORS 
CArbitrarySubmatrixView (MATRIXTYPE &m, const std::vector< size_t > &rs, const std::vector< size_t > &cs)
 CArbitrarySubmatrixView (MATRIXTYPE &m, const std::vector< size_t > &rows_and_cols)
 CArbitrarySubmatrixView (MATRIXTYPE &m, size_t firstRow, size_t numRows, size_t firstCol, size_t numCols)
size_t getRowCount () const
size_t getColCount () const
value_type & get_unsafe (size_t r, size_t c)
value_type get_unsafe (size_t r, size_t c) const
void set_unsafe (size_t r, size_t c, value_type v)
value_type & operator() (size_t r, size_t c)
value_type operator() (size_t r, size_t c) const
template<typename OTHERMATRIX >
mrpt_autotypeoperator= (const OTHERMATRIX &m)
CMatrixTemplateSize size () const
void setSize (size_t r, size_t c)
void resize (size_t rtc)
void getRealRowIndices (std::vector< size_t > &vec) const
void getRealColumnIndices (std::vector< size_t > &vec) const
void deleteRow (size_t r)
void deleteColumn (size_t c)
size_t getProxyRow (size_t r) const
size_t getProxyCol (size_t c) const
value_type & getWithRowProxied (size_t proxyRow, size_t c)
value_type getWithRowProxied (size_t proxyRow, size_t c) const
value_type & getWithColProxied (size_t r, size_t proxyCol)
value_type getWithColProxied (size_t r, size_t proxyCol) const

Protected Attributes

MATRIXTYPE & base
std::vector< size_t > rows
std::vector< size_t > cols

Detailed Description

template<typename MATRIXTYPE>
class mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >

A wrapper around an existing matrix (of any kind) that allows operating on a subrange of the elements.

Example of usage:

  CMatrixDouble  C(10,10);
  vector_size_t  idxs = make_vector<4,size_t>(0,1,6,7);
  CArbitrarySubmatrixView<CMatrixDouble>  Csub(C,idxs);  // Csub is C(idxs,idxs)
See also:
CSubmatrixView

Definition at line 286 of file CMatrixViews.h.


Member Typedef Documentation

template<typename MATRIXTYPE>
typedef CArbitrarySubmatrixView<MATRIXTYPE> mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::mrpt_autotype

Definition at line 292 of file CMatrixViews.h.


Constructor & Destructor Documentation

template<typename MATRIXTYPE>
DECLARE_MRPT_CONTAINER_TYPES DECLARE_MRPT_CONTAINER_IS_MATRIX DECLARE_MRPT_MATRIX_ITERATORS mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::CArbitrarySubmatrixView ( MATRIXTYPE &  m,
const std::vector< size_t > &  rs,
const std::vector< size_t > &  cs 
) [inline]

Definition at line 299 of file CMatrixViews.h.

template<typename MATRIXTYPE>
mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::CArbitrarySubmatrixView ( MATRIXTYPE &  m,
const std::vector< size_t > &  rows_and_cols 
) [inline]

Definition at line 300 of file CMatrixViews.h.

template<typename MATRIXTYPE>
mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::CArbitrarySubmatrixView ( MATRIXTYPE &  m,
size_t  firstRow,
size_t  numRows,
size_t  firstCol,
size_t  numCols 
) [inline]

Member Function Documentation

template<typename MATRIXTYPE>
void mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::deleteColumn ( size_t  c  )  [inline]
template<typename MATRIXTYPE>
void mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::deleteRow ( size_t  r  )  [inline]
template<typename MATRIXTYPE>
value_type mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::get_unsafe ( size_t  r,
size_t  c 
) const [inline]
template<typename MATRIXTYPE>
value_type& mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::get_unsafe ( size_t  r,
size_t  c 
) [inline]
template<typename MATRIXTYPE>
size_t mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getColCount (  )  const [inline]
template<typename MATRIXTYPE>
size_t mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getProxyCol ( size_t  c  )  const [inline]
template<typename MATRIXTYPE>
size_t mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getProxyRow ( size_t  r  )  const [inline]
template<typename MATRIXTYPE>
void mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getRealColumnIndices ( std::vector< size_t > &  vec  )  const [inline]
template<typename MATRIXTYPE>
void mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getRealRowIndices ( std::vector< size_t > &  vec  )  const [inline]
template<typename MATRIXTYPE>
size_t mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getRowCount (  )  const [inline]
template<typename MATRIXTYPE>
value_type mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getWithColProxied ( size_t  r,
size_t  proxyCol 
) const [inline]
template<typename MATRIXTYPE>
value_type& mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getWithColProxied ( size_t  r,
size_t  proxyCol 
) [inline]
template<typename MATRIXTYPE>
value_type mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getWithRowProxied ( size_t  proxyRow,
size_t  c 
) const [inline]
template<typename MATRIXTYPE>
value_type& mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::getWithRowProxied ( size_t  proxyRow,
size_t  c 
) [inline]
template<typename MATRIXTYPE>
value_type mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::operator() ( size_t  r,
size_t  c 
) const [inline]
template<typename MATRIXTYPE>
value_type& mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::operator() ( size_t  r,
size_t  c 
) [inline]
template<typename MATRIXTYPE>
template<typename OTHERMATRIX >
mrpt_autotype& mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::operator= ( const OTHERMATRIX &  m  )  [inline]
template<typename MATRIXTYPE>
void mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::resize ( size_t  rtc  )  [inline]
template<typename MATRIXTYPE>
void mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::set_unsafe ( size_t  r,
size_t  c,
value_type  v 
) [inline]
template<typename MATRIXTYPE>
void mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::setSize ( size_t  r,
size_t  c 
) [inline]
template<typename MATRIXTYPE>
CMatrixTemplateSize mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::size (  )  const [inline]

Member Data Documentation

template<typename MATRIXTYPE>
MATRIXTYPE& mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::base [protected]
template<typename MATRIXTYPE>
std::vector<size_t> mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::cols [protected]
template<typename MATRIXTYPE>
std::vector<size_t> mrpt::math::CArbitrarySubmatrixView< MATRIXTYPE >::rows [protected]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines



Page generated by Doxygen 1.6.1 for MRPT 0.9.0 SVN: at Mon Jun 7 06:47:58 UTC 2010