ERC CISST - cisst software

vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType > Class Template Reference

#include <vctFixedSizeMatrixBase.h>

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

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

Collaboration graph
[legend]
List of all members.

Detailed Description

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

A template for a fixed size matrix with fixed spacings in memory.

This class defines a matrix with read/write operations. It extends vctFixedSizeConstMatrixBase with non-const methods. See the base class for more documentation.

See also:
vctFixedSizeConstMatrixBase

Definition at line 61 of file vctFixedSizeMatrixBase.h.

Public Types

Public Member Functions

Row, column, and main diagonal references.
Forced assignment operation between matrices of
different types. On fixed size matrices this method is equivalent to Assign. See notes below!

Note:
For a non-reallocating Assign, it is recommended to use the Assign() methods.

This method is provided for both fixed size and dynamic matrices for API consistency (usable in templated code). There is obviously not resize involved on fixed size matrices.

If the destination matrix doesn't have the same size as the source and can not be resized, an exception will be thrown by the Assign method called internally.

Parameters:
other The matrix to be copied.


Binary elementwise operations between two matrices.
Store the result of op(matrix1, matrix2) to a third matrix.

Binary elementwise operations between two matrices.
Store the result of op(this, otherMatrix) back to this matrix.

Binary elementwise operations a matrix and a scalar.
Store the result of op(matrix, scalar) to a third matrix.

Binary elementwise operations a scalar and a matrix.
Store the result of op(scalar, matrix) to a third matrix.

Binary elementwise operations between a matrix and a scalar.
Store the result of op(this, scalar) back to this matrix.

Unary elementwise operations.
Store the result of op(matrix) to another matrix.

Store back unary elementwise operations.
Store the result of op(this) to this matrix.

Public Attributes

Classes


Member Typedef Documentation

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

Type of the matrix itself.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFixedSizeMatrix< _elementType, _rows, _cols, _rowMajor >, vctFixedSizeMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >, vctFrame4x4< _elementType, _rowMajor >, vctMatrixRotation2< _elementType >, vctMatrixRotation3< _elementType, _rowMajor >, vctMatrixRotation3Ref< _elementType, _rowStride, _colStride >, vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor >, vctFixedSizeMatrix< double, 3, 3, _rowMajor >, vctFixedSizeMatrix< _elementType, 2, 2 >, vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >, vctFixedSizeMatrix< double, 3, 3 >, vctFixedSizeMatrix< double, 4, 4, _rowMajor >, vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >, vctFrame4x4< double >, vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctMatrixRotation2Base< vctFixedSizeMatrix< _elementType, 2, 2 > >, vctMatrixRotation3< double >, vctMatrixRotation3Base< vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride > >, vctMatrixRotation3Base< vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor > >, vctMatrixRotation3Base< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >, vctMatrixRotation3ConstBase< vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride > >, vctMatrixRotation3ConstBase< vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor > >, and vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >.

Definition at line 73 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef vctFixedSizeConstMatrixBase<_rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType> vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::BaseType

Type of the base class.

Reimplemented in vctFixedSizeMatrix< _elementType, _rows, _cols, _rowMajor >, vctFixedSizeMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >, vctFrame4x4< _elementType, _rowMajor >, vctMatrixRotation2< _elementType >, vctMatrixRotation3< _elementType, _rowMajor >, vctMatrixRotation3Ref< _elementType, _rowStride, _colStride >, vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor >, vctFixedSizeMatrix< double, 3, 3, _rowMajor >, vctFixedSizeMatrix< _elementType, 2, 2 >, vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >, vctFixedSizeMatrix< double, 3, 3 >, vctFixedSizeMatrix< double, 4, 4, _rowMajor >, vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >, vctFrame4x4< double >, vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctMatrixRotation2Base< vctFixedSizeMatrix< _elementType, 2, 2 > >, vctMatrixRotation3< double >, vctMatrixRotation3Base< vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride > >, vctMatrixRotation3Base< vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor > >, vctMatrixRotation3Base< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >, vctMatrixRotation3ConstBase< vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride > >, vctMatrixRotation3ConstBase< vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor > >, and vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >.

Definition at line 77 of file vctFixedSizeMatrixBase.h.

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

Traits used for all useful types related to a vctFixedSizeMatrix

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Definition at line 80 of file vctFixedSizeMatrixBase.h.

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

Iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFixedSizeMatrix< _elementType, _rows, _cols, _rowMajor >, vctFixedSizeMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >, vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor >, vctFixedSizeMatrix< double, 3, 3, _rowMajor >, vctFixedSizeMatrix< _elementType, 2, 2 >, vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >, vctFixedSizeMatrix< double, 3, 3 >, vctFixedSizeMatrix< double, 4, 4, _rowMajor >, and vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >.

Definition at line 82 of file vctFixedSizeMatrixBase.h.

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

Const iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFixedSizeMatrix< _elementType, _rows, _cols, _rowMajor >, vctFixedSizeMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >, vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor >, vctFixedSizeMatrix< double, 3, 3, _rowMajor >, vctFixedSizeMatrix< _elementType, 2, 2 >, vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >, vctFixedSizeMatrix< double, 3, 3 >, vctFixedSizeMatrix< double, 4, 4, _rowMajor >, and vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >.

Definition at line 83 of file vctFixedSizeMatrixBase.h.

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

Reverse iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFixedSizeMatrix< _elementType, _rows, _cols, _rowMajor >, vctFixedSizeMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >, vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor >, vctFixedSizeMatrix< double, 3, 3, _rowMajor >, vctFixedSizeMatrix< _elementType, 2, 2 >, vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >, vctFixedSizeMatrix< double, 3, 3 >, vctFixedSizeMatrix< double, 4, 4, _rowMajor >, and vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >.

Definition at line 84 of file vctFixedSizeMatrixBase.h.

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

Const reverse iterator on the elements of the matrix.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFixedSizeMatrix< _elementType, _rows, _cols, _rowMajor >, vctFixedSizeMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride >, vctFixedSizeMatrix< _elementType, 3, 3, _rowMajor >, vctFixedSizeMatrix< double, 3, 3, _rowMajor >, vctFixedSizeMatrix< _elementType, 2, 2 >, vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >, vctFixedSizeMatrix< double, 3, 3 >, vctFixedSizeMatrix< double, 4, 4, _rowMajor >, and vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >.

Definition at line 85 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::RowRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RowRefType

The type indicating a row of this matrix accessed by (non-const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 87 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::ColumnRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ColumnRefType

The type indicating a column of this matrix accessed by (non-const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 88 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::ConstRowRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ConstRowRefType

The type indicating a row of this matrix accessed by (const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 89 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::ConstColumnRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ConstColumnRefType

The type indicating a column of this matrix accessed by (const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 90 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::DiagonalRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::DiagonalRefType

The type indicating the main diagonal of the matrix accessed by (non-const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 91 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::ConstDiagonalRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ConstDiagonalRefType

The type indicating the main diagonal of the matrix accessed by (const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 92 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::RefTransposeType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RefTransposeType

The type of object representing this matrix accessed in transposed order. Access is by (non-const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 93 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::ConstRefTransposeType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ConstRefTransposeType

The type of object representing this matrix accessed in transposed order. Access is by (const) reference

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Reimplemented in vctFrame4x4Base< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >, vctFrame4x4ConstBase< vctFixedSizeMatrix< double, 4, 4, _rowMajor > >, and vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >.

Definition at line 94 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::RowValueType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RowValueType

The type of vector object required to store a copy of a row of this matrix

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Definition at line 95 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
typedef BaseType::ColumnValueType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ColumnValueType

The type of vector object required to store a copy of a column of this matrix

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Definition at line 96 of file vctFixedSizeMatrixBase.h.


Member Enumeration Documentation

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
anonymous enum

Define the dimensions of the matrix

Definition at line 99 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
anonymous enum

Define the strides between rows and columns of the matrix

Definition at line 102 of file vctFixedSizeMatrixBase.h.


Member Function Documentation

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
iterator vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::begin ( void   )  [inline]

Returns an iterator on the first element (STL compatibility).

Definition at line 107 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::Assign(), and vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::at().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
iterator vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::end ( void   )  [inline]

Returns an iterator on the last element (STL compatibility).

Definition at line 117 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::Assign().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
reverse_iterator vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::rbegin ( void   )  [inline]

Returns a reverse iterator on the last element (STL compatibility).

Definition at line 127 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
reverse_iterator vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::rend ( void   )  [inline]

Returns a reverse iterator on the element before first (STL compatibility).

Definition at line 138 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
RowRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator[] ( size_type  index  )  [inline]

Reference a row of this matrix by index (non-const).

Returns:
a const reference to the element[index]

Definition at line 151 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
pointer vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Pointer ( size_type  rowIndex,
size_type  colIndex 
) [inline]

Returns a non const pointer to an element of the container, specified by its index. Addition to the STL requirements.

Definition at line 164 of file vctFixedSizeMatrixBase.h.

Referenced by vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyInverseTo(), vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyInverseTo(), vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyTo(), vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyTo(), nmrSVD(), vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >::SetRef(), and vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >::SetRef().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
pointer vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Pointer ( void   )  [inline]

Returns a non const pointer to the first element of the container. Addition to the STL requirements.

Definition at line 171 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::at(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::Element(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::rbegin(), and vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::Zeros().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
reference vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::at ( size_type  index  )  throw (std::out_of_range) [inline]

Access an element by index (non-const). Compare with std::vector::at(). This method can be a handy substitute for the overloaded operator () when operator overloading is unavailable or inconvenient.

Returns:
a reference to the index-th element (iterator order)

Definition at line 190 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::operator()().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
reference vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::at ( size_type  rowIndex,
size_type  colIndex 
) throw (std::out_of_range) [inline]

Access an element by index. Compare with std::vector::at(). This method can be a handy substitute for the overloaded operator () when operator overloading is unavailable or inconvenient.

Returns:
a reference to the element at rowIndex, colIndex

Definition at line 205 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
reference vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator() ( size_type  rowIndex,
size_type  colIndex 
) throw (std::out_of_range) [inline]

Access an element by index. See method at().

Returns:
a const reference to element[rowIndex, colIndex]

Definition at line 218 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
reference vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Element ( size_type  rowIndex,
size_type  colIndex 
) [inline]

Access an element by indices (non const). This method allows to access an element without any bounds checking. It doesn't create any temporary row reference as a matrix[][] would do.

Returns:
a reference to the element at rowIndex, colIndex

Definition at line 234 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
RowRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Row ( size_type  index  )  [inline]

Create a row reference.

Definition at line 247 of file vctFixedSizeMatrixBase.h.

Referenced by vctFrameBase< _rotationType >::ApplyInverseTo(), vctFrameBase< _rotationType >::ApplyTo(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::ExchangeRows(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::RowInversePermutationOf(), and vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::RowPermutationOf().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ColumnRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Column ( size_type  index  )  [inline]

Create a column reference.

Definition at line 252 of file vctFixedSizeMatrixBase.h.

Referenced by vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyInverseTo(), vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyTo(), vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >::ApplyTo(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::ColumnInversePermutationOf(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::ColumnPermutationOf(), and vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::ExchangeColumns().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
DiagonalRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Diagonal ( void   )  [inline]

Create a reference to the main diagonal

Definition at line 257 of file vctFixedSizeMatrixBase.h.

Referenced by nmrSVDFixedSizeData< _rows, _cols, _storageOrder >::UpdateMatrixS().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ConstRowRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Row ( size_type  index  )  const [inline]

Create a row reference.

Definition at line 262 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ConstColumnRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Column ( size_type  index  )  const [inline]

Create a row reference.

Definition at line 267 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ConstDiagonalRefType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Diagonal ( void   )  const [inline]

Create a row reference.

Definition at line 272 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ExchangeRows ( const size_type  row1Index,
const size_type  row2Index 
) [inline]

Exchange two rows of the matrix

Definition at line 281 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ExchangeColumns ( const size_type  col1Index,
const size_type  col2Index 
) [inline]

Exchange two colums of the matrix

Definition at line 288 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<size_type __rows, stride_type __rowStride, stride_type __colStride, class __dataPtrType, stride_type __indexStride, class __indexDataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::SelectRowsFrom ( const vctFixedSizeConstMatrixBase< __rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &  inputMatrix,
const vctFixedSizeConstVectorBase< _rows, __indexStride, index_type, __indexDataPtrType > &  rowIndexVector 
) [inline]

Select a subset of rows from another matrix

Definition at line 298 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::SelectColsFrom().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<size_type __cols, stride_type __rowStride, stride_type __colStride, class __dataPtrType, stride_type __indexStride, class __indexDataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::SelectColsFrom ( const vctFixedSizeConstMatrixBase< _rows, __cols, __rowStride, __colStride, _elementType, __dataPtrType > &  inputMatrix,
const vctFixedSizeConstVectorBase< _cols, __indexStride, index_type, __indexDataPtrType > &  colIndexVector 
) [inline]

Select a subset of columns from another matrix

Definition at line 308 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RowPermutationOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &  inputMatrix,
const index_type  permutedRowIndexes[] 
) [inline]

Assign a permutation of the rows of the input matrix to the rows of this matrix. Both matrices must have the same size.

Parameters:
inputMatrix the input matrix for the permutation.
permutedRowIndexes an array of row indices. The assignment performed is: this->Row(i) <-- inputMatrix.Row( permutedRowIndexes[i] ).
Note:
The current implementation does not validate that the input permuted indexes is an actual permutation of the numbers 0..(ROWS-1). Nor does it assure that the input permutation array has the right size. Both are the caller's responsibility.

Do not use this method for an in-place permutation of the input matrix.

Definition at line 328 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RowInversePermutationOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &  inputMatrix,
const index_type  permutedRowIndexes[] 
) [inline]

Assign a permutation of the rows of the input matrix to the rows of this matrix. Both matrices must have the same size.

Parameters:
inputMatrix the input matrix for the permutation.
permutedRowIndexes an array of row indices. The assignment performed is: this->Row( permutedRowIndexes[i] ) <-- inputMatrix.Row(i).
Note:
The current implementation does not validate that the input permuted indexes is an actual permutation of the numbers 0..(ROWS-1). Nor does it assure that the input permutation array has the right size. Both are the caller's responsibility.

Do not use this method for an in-place permutation of the input matrix.

Definition at line 350 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ColumnPermutationOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &  inputMatrix,
const index_type  permutedColumnIndexes[] 
) [inline]

Assign a permutation of the columns of the input matrix to the column of this matrix. Both matrices must have the same size.

Parameters:
inputMatrix the input matrix for the permutation.
permutedColumnIndexes an array of column indices. The assignment performed is: this->Column(i) <-- inputMatrix.Column( permutedColumnIndexes[i] ).
Note:
The current implementation does not validate that the input permuted indexes is an actual permutation of the numbers 0..(COLS-1). Nor does it assure that the input permutation array has the right size. Both are the caller's responsibility.

Do not use this method for an in-place permutation of the input matrix.

Definition at line 372 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ColumnInversePermutationOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &  inputMatrix,
const index_type  permutedColumnIndexes[] 
) [inline]

Assign a permutation of the columns of the input matrix to the column of this matrix. Both matrices must have the same size.

Parameters:
inputMatrix the input matrix for the permutation.
permutedColumnIndexes an array of column indices. The assignment performed is: this->Column( permutedColumnIndexes[i] ) <-- inputMatrix.Column(i).
Note:
The current implementation does not validate that the input permuted indexes is an actual permutation of the numbers 0..(COLS-1). Nor does it assure that the input permutation array has the right size. Both are the caller's responsibility.

Do not use this method for an in-place permutation of the input matrix.

Definition at line 394 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
value_type vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::SetAll ( const value_type  value  )  [inline]

Assign the given value to all the elements.

Parameters:
value the value used to set all the elements of the matrix
Returns:
The value used to set all the elements

Definition at line 409 of file vctFixedSizeMatrixBase.h.

Referenced by nmrLUFixedSizeData< _rows, _cols >::UpdateMatrixP(), nmrSVDFixedSizeData< _rows, _cols, _storageOrder >::UpdateMatrixS(), and vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::Zeros().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
bool vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Zeros ( void   )  [inline]

Assign zero to all elements. This methods assumes that the element type has a zero and this zero value can be set using memset(0). If the matrix is not compact this method will use SetAll(0) and memset otherwise. This provides a slightly more efficent way to set all elements to zero.

Returns:
true if the matrix is compact and memset was used, false otherwise.

Definition at line 425 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __elementType, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Assign ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, __elementType, __dataPtrType > &  other  )  [inline]

Assignment operation between matrices of different types

Definition at line 463 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::Assign(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::ColumnInversePermutationOf(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::ColumnPermutationOf(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::ForceAssign(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::FromStreamRaw(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::RowInversePermutationOf(), vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::RowPermutationOf(), and vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::TransposeOf().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Assign ( const value_type  element0,
  ... 
) [inline]

Assign to this matrix a set of values provided as independent arguments, by using cstdarg macros, that is, an unspecified number of arguments. This function is not using a recursive engine, as it may be hard and not worthwhile to use a recursive engine with the va_arg ``iterator''. This operation assumes that all the arguments are of type value_type, and that their number is equal to the size of the matrix. The arguments are passed by value. The user may need to explicitly cast the parameters to value_type to avoid runtime bugs and errors. The order of the paramaters is row first which allows to keep the code pretty intuitive:

      matrix.Assign( 0.0, 1.0,
                    -1.0, 0.0);

Returns:
a reference to this matrix.

Definition at line 489 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Assign ( const value_type *  elements,
bool  inputIsRowMajor = true 
) [inline]

Assign to this matrix values from a C array given as a pointer to value_type. The purpose of this method is to simplify the syntax by not necessitating the creation of an explicit matrix for the given array. However, we only provide this method for an array of value_type. For arrays of other types a matrix still needs to be declared.

Parameters:
elements a pointer to a C array of elements to be assigned to this matrix.
inputIsRowMajor a flag indicating the storage order of the elements in the input array.
Note:
For lack of better knowledge, this method assumes that the input array is _packed_, that is, that all the elements are stored in a contiguous memory block with no gaps. The only existing options now relate to the storage order of the input elements. If the input is not packed, you should create a MatrixRef explicitly, with stride specifications, or use other tricks.
Returns:
a reference to this object.

Definition at line 525 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<class __matrixOwnerType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Assign ( const vctDynamicConstMatrixBase< __matrixOwnerType, value_type > &  other  )  [inline]

Assign to this matrix values from a dynamic matrix. This method doesn't allow type conversion.

Returns:
a reference to this object.

Definition at line 551 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<class __matrixOwnerType>
bool vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::FastCopyOf ( const vctDynamicConstMatrixBase< __matrixOwnerType, value_type > &  source,
bool  performSafetyChecks = vctFastCopy::PerformChecks 
) throw (std::runtime_error) [inline]

Fast copy. This method uses memcpy whenever it is possible to perform a fast copy from another matrix to this matrix.

The basic and safe use of this method for a matrix would be:

        if (!destination.FastCopyOf(source)) {
            destination.Assign(source);
        }

If the method is to be called many times (in a loop for example), it is recommended to check that the source and destination are compatible once and then use the option to turn off the different safety checks for each FastCopyOf.

        bool canUseFastCopy = destination.FastCopyCompatible(source);
        vct::index_type index;
        for (index = 0; index < 1000; index++) {
            DoSomethingUseful(source);
            if (canUseFastCopy) {
                destination.FastCopyOf(source, vctFastCopy::SkipChecks); // Do not check again
            } else {
                destination.Assign(source);
            }
        }

Parameters:
source Matrix used to set the content of this matrix.
performSafetyChecks Flag set to false to avoid safety checks, use with extreme caution. To make your code more readable use vctFastCopy::SkipChecks or vctFastCopy::PerformChecks.

Definition at line 657 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<class __dataPtrType>
bool vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::FastCopyOf ( const vctFixedSizeConstMatrixBase< ROWS, COLS, ROWSTRIDE, COLSTRIDE, value_type, __dataPtrType > &  source,
bool  performSafetyChecks = vctFastCopy::PerformChecks 
) throw (std::runtime_error) [inline]

Fast copy. This method uses memcpy whenever it is possible to perform a fast copy from another matrix to this matrix.

The basic and safe use of this method for a matrix would be:

        if (!destination.FastCopyOf(source)) {
            destination.Assign(source);
        }

If the method is to be called many times (in a loop for example), it is recommended to check that the source and destination are compatible once and then use the option to turn off the different safety checks for each FastCopyOf.

        bool canUseFastCopy = destination.FastCopyCompatible(source);
        vct::index_type index;
        for (index = 0; index < 1000; index++) {
            DoSomethingUseful(source);
            if (canUseFastCopy) {
                destination.FastCopyOf(source, vctFastCopy::SkipChecks); // Do not check again
            } else {
                destination.Assign(source);
            }
        }

Parameters:
source Matrix used to set the content of this matrix.
performSafetyChecks Flag set to false to avoid safety checks, use with extreme caution. To make your code more readable use vctFastCopy::SkipChecks or vctFastCopy::PerformChecks.

Definition at line 665 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RefTransposeType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::TransposeRef ( void   )  [inline]

Return a transposed reference to this matrix. The actual definition of this method follows the declaration of class vctFixedSizeMatrixRef.

Definition at line 183 of file vctFixedSizeConstMatrixRef.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::SelectColsFrom().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ConstRefTransposeType vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::TransposeRef ( void   )  const [inline]

Return a transposed reference to this matrix. The actual definition of this method follows the declaration of class vctFixedSizeConstMatrixRef.

Reimplemented from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >.

Definition at line 682 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __input1RowStride, stride_type __input1ColStride, class __input1DataPtrType, stride_type __input2RowStride, stride_type __input2ColStride, class __input2DataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::SumOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &  input1Matrix,
const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &  input2Matrix 
) [inline]

Binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(matrix1[i], matrix2[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).

Parameters:
input1Matrix The first operand of the binary operation
input2Matrix The second operand of the binary operation
Returns:
The vector "this" modified.

Definition at line 705 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __input1RowStride, stride_type __input1ColStride, class __input1DataPtrType, stride_type __input2RowStride, stride_type __input2ColStride, class __input2DataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::DifferenceOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &  input1Matrix,
const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &  input2Matrix 
) [inline]

Binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(matrix1[i], matrix2[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).

Parameters:
input1Matrix The first operand of the binary operation
input2Matrix The second operand of the binary operation
Returns:
The vector "this" modified.

Definition at line 717 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __input1RowStride, stride_type __input1ColStride, class __input1DataPtrType, stride_type __input2RowStride, stride_type __input2ColStride, class __input2DataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseProductOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &  input1Matrix,
const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &  input2Matrix 
) [inline]

Binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(matrix1[i], matrix2[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).

Parameters:
input1Matrix The first operand of the binary operation
input2Matrix The second operand of the binary operation
Returns:
The vector "this" modified.

Definition at line 729 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __input1RowStride, stride_type __input1ColStride, class __input1DataPtrType, stride_type __input2RowStride, stride_type __input2ColStride, class __input2DataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseRatioOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &  input1Matrix,
const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &  input2Matrix 
) [inline]

Binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(matrix1[i], matrix2[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).

Parameters:
input1Matrix The first operand of the binary operation
input2Matrix The second operand of the binary operation
Returns:
The vector "this" modified.

Definition at line 741 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __input1RowStride, stride_type __input1ColStride, class __input1DataPtrType, stride_type __input2RowStride, stride_type __input2ColStride, class __input2DataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseMinOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &  input1Matrix,
const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &  input2Matrix 
) [inline]

Binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(matrix1[i], matrix2[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).

Parameters:
input1Matrix The first operand of the binary operation
input2Matrix The second operand of the binary operation
Returns:
The vector "this" modified.

Definition at line 753 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __input1RowStride, stride_type __input1ColStride, class __input1DataPtrType, stride_type __input2RowStride, stride_type __input2ColStride, class __input2DataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseMaxOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &  input1Matrix,
const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &  input2Matrix 
) [inline]

Binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(matrix1[i], matrix2[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).

Parameters:
input1Matrix The first operand of the binary operation
input2Matrix The second operand of the binary operation
Returns:
The vector "this" modified.

Definition at line 765 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Add ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 794 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::operator+=().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Subtract ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 803 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::operator-=().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseMultiply ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 812 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseDivide ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 821 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseMin ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 830 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ElementwiseMax ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 839 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator+= ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 848 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator-= ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Store back binary elementwise operations between two matrices. For each element of the matrices, performs $ this[i] \leftarrow op(this[i], otherMatrix[i])$ where $op$ is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) or a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).

Parameters:
otherMatrix The second operand of the binary operation (this[i] is the first operand)
Returns:
The vector "this" modified.

Definition at line 854 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::SumOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix,
const value_type  scalar 
) [inline]

Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(matrix[i], scalar)$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
matrix The first operand of the binary operation.
scalar The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 877 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::DifferenceOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix,
const value_type  scalar 
) [inline]

Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(matrix[i], scalar)$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
matrix The first operand of the binary operation.
scalar The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 887 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ProductOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix,
const value_type  scalar 
) [inline]

Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(matrix[i], scalar)$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
matrix The first operand of the binary operation.
scalar The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 897 of file vctFixedSizeMatrixBase.h.

Referenced by vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyInverseTo(), vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyTo(), and vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::OuterProductOf().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RatioOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix,
const value_type  scalar 
) [inline]

Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(matrix[i], scalar)$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
matrix The first operand of the binary operation.
scalar The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 907 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ClippedAboveOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix,
const value_type  upperBound 
) [inline]

Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(matrix[i], scalar)$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
matrix The first operand of the binary operation.
scalar The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 917 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ClippedBelowOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix,
const value_type  lowerBound 
) [inline]

Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(matrix[i], scalar)$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
matrix The first operand of the binary operation.
scalar The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 927 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::SumOf ( const value_type  scalar,
const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix 
) [inline]

Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(scalar, matrix[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
scalar The first operand of the binary operation.
matrix The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 954 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::DifferenceOf ( const value_type  scalar,
const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix 
) [inline]

Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(scalar, matrix[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
scalar The first operand of the binary operation.
matrix The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 964 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ProductOf ( const value_type  scalar,
const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix 
) [inline]

Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(scalar, matrix[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
scalar The first operand of the binary operation.
matrix The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 974 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::RatioOf ( const value_type  scalar,
const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix 
) [inline]

Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(scalar, matrix[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
scalar The first operand of the binary operation.
matrix The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 984 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ClippedAboveOf ( const value_type  upperBound,
const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix 
) [inline]

Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(scalar, matrix[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
scalar The first operand of the binary operation.
matrix The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 994 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ClippedBelowOf ( const value_type  lowerBound,
const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  matrix 
) [inline]

Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(scalar, matrix[i])$ where $op$ is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).

Parameters:
scalar The first operand of the binary operation.
matrix The second operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 1004 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Add ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1028 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Subtract ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1036 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Multiply ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1044 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::operator *=().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::Divide ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1052 of file vctFixedSizeMatrixBase.h.

Referenced by vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, double, vctFixedSizeMatrixTraits< double, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >::operator/=().

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ClipAbove ( const value_type  upperBound  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1060 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ClipBelow ( const value_type  lowerBound  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1068 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator+= ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1076 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator-= ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1081 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator *= ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1086 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::operator/= ( const value_type  scalar  )  [inline]

Store back binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i], scalar)$ where $op$ is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).

Parameters:
scalar The second operand of the binary operation (this[i] is the first operand.
Returns:
The matrix "this" modified.

Definition at line 1091 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::AbsOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(otherMatrix[i])$ where $op$ can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).

Parameters:
otherMatrix The operand of the unary operation.
Returns:
The matrix "this" modified.

Definition at line 1123 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::NegationOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(otherMatrix[i])$ where $op$ can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).

Parameters:
otherMatrix The operand of the unary operation.
Returns:
The matrix "this" modified.

Definition at line 1132 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::FloorOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(otherMatrix[i])$ where $op$ can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).

Parameters:
otherMatrix The operand of the unary operation.
Returns:
The matrix "this" modified.

Definition at line 1141 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __rowStride, stride_type __colStride, class __dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::CeilOf ( const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &  otherMatrix  )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(otherMatrix[i])$ where $op$ can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).

Parameters:
otherMatrix The operand of the unary operation.
Returns:
The matrix "this" modified.

Definition at line 1150 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::AbsSelf ( void   )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i])$ where $op$ can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).

Returns:
The matrix "this" modified.

Definition at line 1178 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::NegationSelf ( void   )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i])$ where $op$ can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).

Returns:
The matrix "this" modified.

Definition at line 1186 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::FloorSelf ( void   )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i])$ where $op$ can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).

Returns:
The matrix "this" modified.

Definition at line 1194 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
ThisType& vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::CeilSelf ( void   )  [inline]

Unary elementwise operations on a matrix. For each element of the matrix "this", performs $ this[i] \leftarrow op(this[i])$ where $op$ can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).

Returns:
The matrix "this" modified.

Definition at line 1202 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<size_type __input1Cols, stride_type __input1RowStride, stride_type __input1ColStride, class __input1DataPtrType, stride_type __input2RowStride, stride_type __input2ColStride, class __input2DataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::ProductOf ( const vctFixedSizeConstMatrixBase< _rows, __input1Cols, __input1RowStride, __input1ColStride, _elementType, __input1DataPtrType > &  input1Matrix,
const vctFixedSizeConstMatrixBase< __input1Cols, _cols, __input2RowStride, __input2ColStride, _elementType, __input2DataPtrType > &  input2Matrix 
) [inline]

Product of two matrices. The template parameters insure that the size of the matrices match.

Parameters:
input1Matrix The left operand of the binary operation.
input2Matrix The right operand of the binary operation.
Returns:
The matrix "this" modified.

Definition at line 1221 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
template<stride_type __stride1, class __dataPtrType1, stride_type __stride2, class __dataPtrType2>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::OuterProductOf ( const vctFixedSizeConstVectorBase< _rows, __stride1, _elementType, __dataPtrType1 > &  columnVector,
const vctFixedSizeConstVectorBase< _cols, __stride2, _elementType, __dataPtrType2 > &  rowVector 
) [inline]

Compute the outer product of two vectors and store the result to this matrix. The outer product (v1*v2)[i,j] = v1[i] * v2[j]

Definition at line 1239 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
bool vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::FromStreamRaw ( std::istream &  inputStream,
const char  delimiter = ' ' 
) [inline]

Read from an unformatted text input (e.g., one created by ToStreamRaw). Returns true if successful.

Definition at line 1275 of file vctFixedSizeMatrixBase.h.

template<vct::size_type _rows, vct::size_type _cols, vct::stride_type _rowStride, vct::stride_type _colStride, class _elementType, class _dataPtrType>
void vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, _dataPtrType >::DeSerializeRaw ( std::istream &  inputStream  )  [inline]

Binary deserialization

Definition at line 1312 of file vctFixedSizeMatrixBase.h.


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