ERC CISST - cisst software

vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride > Class Template Reference
[Vectors]

#include <vctFixedSizeConstMatrixRef.h>

Inheritance diagram for vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >:

Inheritance graph
[legend]
Collaboration diagram for vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
class vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >

An implementation of the ``abstract'' vctFixedSizeConstMatrixBase.

This implementations uses a pointer to the matrix beginning as the matrix defining data member. An instantiation of this type can be used as a matrix reference with TransposeRef().

Note that the class provides only const operations, except for assigning the matrix start, which does not affect the matrix. This is despite the fact that the stored pointer is non-const.

See the base class (vctFixedSizeConstMatrixBase) for template parameter details.

Definition at line 51 of file vctFixedSizeConstMatrixRef.h.

Public Types

Public Member Functions

Public Attributes


Member Typedef Documentation

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
typedef vctFixedSizeMatrixTraits<_elementType, _rows, _cols, _rowStride, _colStride> vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::MatrixTraits

Traits used for all useful types related to a vctFixedSizeMatrix

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride >::pointer >.

Definition at line 60 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
typedef MatrixTraits::iterator vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::iterator

Iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride >::pointer >.

Definition at line 62 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
typedef MatrixTraits::const_iterator vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::const_iterator

Const iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride >::pointer >.

Definition at line 63 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
typedef MatrixTraits::reverse_iterator vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::reverse_iterator

Reverse iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride >::pointer >.

Definition at line 64 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
typedef MatrixTraits::const_reverse_iterator vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::const_reverse_iterator

Const reverse iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride >::pointer >.

Definition at line 65 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
typedef vctFixedSizeConstMatrixRef<value_type, _rows, _cols, _rowStride, _colStride> vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::ThisType

Type of the matrix itself.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride >::pointer >.

Reimplemented in vctMatrixRotation3ConstRef< _elementType, _rowStride, _colStride >, vctMatrixRotation3Base< vctFixedSizeConstMatrixRef< _elementType, 3, 3, _rowStride, _colStride > >, and vctMatrixRotation3ConstBase< vctFixedSizeConstMatrixRef< _elementType, 3, 3, _rowStride, _colStride > >.

Definition at line 68 of file vctFixedSizeConstMatrixRef.h.


Constructor & Destructor Documentation

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::vctFixedSizeConstMatrixRef (  )  [inline]

Default constructor: create an uninitialized matrix

Definition at line 73 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::vctFixedSizeConstMatrixRef ( pointer  p  )  [inline]

Initialize the matrix with a (non-const) pointer

Definition at line 77 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
template<size_type __rows, size_type __cols, class __dataPtrType>
vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::vctFixedSizeConstMatrixRef ( const vctFixedSizeConstMatrixBase< __rows, __cols, _rowStride, _colStride, _elementType, __dataPtrType > &  matrix  )  [inline]

Convenience constructor to initialize a reference to a fixed-size matrix object. Since the argument is const, there is no worry about explicit instantiation.

Definition at line 85 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
template<size_type __rows, size_type __cols, class __dataPtrType>
vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::vctFixedSizeConstMatrixRef ( const vctFixedSizeConstMatrixBase< __rows, __cols, _rowStride, _colStride, _elementType, __dataPtrType > &  matrix,
size_type  startRow,
size_type  startCol 
) [inline]

Convenience constructor to initialize a reference to a fixed-size matrix object.

Definition at line 93 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
template<class __matrixOwnerType>
vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::vctFixedSizeConstMatrixRef ( const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &  matrix,
size_type  startRow,
size_type  startCol 
) [inline]

Convenience constructor to initialize a fixed-size reference to a dynamic matrix. The involves assertion that the sizes and strides match

Definition at line 102 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::vctFixedSizeConstMatrixRef ( const_pointer  p  )  [inline]

Initialize the matrix with a const pointer. This requires const_cast.

Definition at line 110 of file vctFixedSizeConstMatrixRef.h.


Member Function Documentation

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
void vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::SetRef ( pointer  p  )  [inline]

Assign the matrix start with a (non-const) pointer

Definition at line 115 of file vctFixedSizeConstMatrixRef.h.

Referenced by vctFixedSizeConstMatrixRef< _elementType, 3, 3, _rowStride, _colStride >::SetRef(), and vctFixedSizeConstMatrixRef< _elementType, 3, 3, _rowStride, _colStride >::vctFixedSizeConstMatrixRef().

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
void vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::SetRef ( const_pointer  p  )  [inline]

Assign the matrix start with a const pointer. This requires const_cast.

Definition at line 120 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
template<size_type __rows, size_type __cols, class __dataPtrType>
void vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::SetRef ( const vctFixedSizeConstMatrixBase< __rows, __cols, _rowStride, _colStride, _elementType, __dataPtrType > &  matrix,
size_type  startRow,
size_type  startCol 
) [inline]

Convenience method to set a reference to a fixed-size matrix object.

Parameters:
matrix the fixed size matrix to be referenced
startRow the row index from which reference will start
startCol the column index from which reference will start The strides of this matrix must be identical to the strides of the other matrix (this is enforced by the template parameters).
Note:
This method asserts that the size of this matrix does not exceed the size of the input matrix (otherwise cmnThrow is used to throw std::out_of_range).

Definition at line 134 of file vctFixedSizeConstMatrixRef.h.

template<class _elementType, vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride>
template<class __matrixOwnerType>
void vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >::SetRef ( const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &  matrix,
size_type  startRow,
size_type  startCol 
) [inline]

Convenience method to set a reference to a dynamic matrix object.

Parameters:
matrix the fixed size matrix to be referenced
startRow the row index from which reference will start
startCol the column index from which reference will start The strides of this matrix must be identical to the strides of the other matrix (otherwise cmnThrow is used to throw std::runtime_error).
Note:
This method asserts that the size of this matrix does not exceed the size of the input matrix (otherwise cmnThrow is used to throw std::out_of_range).

Definition at line 153 of file vctFixedSizeConstMatrixRef.h.


The documentation for this class was generated from the following file:
erc-cisst-devel<at>lists.johnshopkins.edu