#include <vctDynamicMatrixBase.h>
Inheritance diagram for vctDynamicMatrixBase< _matrixOwnerType, _elementType >:


Definition at line 45 of file vctDynamicMatrixBase.h.
| other | The matrix to be copied. |
| other | The matrix to be copied. |
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.
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.
| other | The matrix to be copied. |
| typedef vctDynamicMatrixBase vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ThisType |
Type of the matrix itself.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Reimplemented in mtsMatrix< _elementType >, vctDynamicMatrix< _elementType >, vctDynamicMatrixRef< _elementType >, vctDynamicMatrix< double >, vctDynamicMatrix< float >, vctDynamicMatrix< int >, vctDynamicMatrix< unsigned char >, vctDynamicMatrix< _ValueType >, vctDynamicMatrix< CISSTNETLIB_INTEGER >, vctDynamicMatrix< CISSTNETLIB_DOUBLE >, vctDynamicMatrix< svlTarget2D >, vctDynamicMatrixRef< _ValueType >, and vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >.
Definition at line 51 of file vctDynamicMatrixBase.h.
| typedef vctDynamicConstMatrixBase<_matrixOwnerType, _elementType> vctDynamicMatrixBase< _matrixOwnerType, _elementType >::BaseType |
Type of the base class.
Reimplemented in vctDynamicMatrix< _elementType >, vctReturnDynamicMatrix< _elementType >, vctDynamicMatrixRef< _elementType >, vctDynamicMatrix< double >, vctDynamicMatrix< float >, vctDynamicMatrix< int >, vctDynamicMatrix< unsigned char >, vctDynamicMatrix< _ValueType >, vctDynamicMatrix< CISSTNETLIB_INTEGER >, vctDynamicMatrix< CISSTNETLIB_DOUBLE >, vctDynamicMatrix< svlTarget2D >, vctDynamicMatrixRef< _ValueType >, and vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >.
Definition at line 53 of file vctDynamicMatrixBase.h.
| typedef _matrixOwnerType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::OwnerType |
Type of the data owner (dynamic array or pointer)
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 55 of file vctDynamicMatrixBase.h.
| typedef BaseType::iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::iterator |
Iterator on the elements of the matrix.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Reimplemented in vctDynamicMatrixRef< _elementType >, vctDynamicMatrixRef< _ValueType >, and vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >.
Definition at line 57 of file vctDynamicMatrixBase.h.
| typedef BaseType::reverse_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::reverse_iterator |
Reverse iterator on the elements of the matrix.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Reimplemented in vctDynamicMatrixRef< _elementType >, vctDynamicMatrixRef< _ValueType >, and vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >.
Definition at line 58 of file vctDynamicMatrixBase.h.
| typedef BaseType::const_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::const_iterator |
Const iterator on the elements of the matrix.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Reimplemented in vctDynamicMatrixRef< _elementType >, vctDynamicMatrixRef< _ValueType >, and vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >.
Definition at line 59 of file vctDynamicMatrixBase.h.
| typedef BaseType::const_reverse_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::const_reverse_iterator |
Const reverse iterator on the elements of the matrix.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Reimplemented in vctDynamicMatrixRef< _elementType >, vctDynamicMatrixRef< _ValueType >, and vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >.
Definition at line 60 of file vctDynamicMatrixBase.h.
| typedef BaseType::ConstRowRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ConstRowRefType |
The type indicating a row of this matrix accessed by (const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 62 of file vctDynamicMatrixBase.h.
| typedef BaseType::RowRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RowRefType |
The type indicating a row of this matrix accessed by (non-const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 63 of file vctDynamicMatrixBase.h.
| typedef BaseType::ConstColumnRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ConstColumnRefType |
The type indicating a column of this matrix accessed by (const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 65 of file vctDynamicMatrixBase.h.
| typedef BaseType::ColumnRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ColumnRefType |
The type indicating a column of this matrix accessed by (non-const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 66 of file vctDynamicMatrixBase.h.
| typedef BaseType::ConstDiagonalRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ConstDiagonalRefType |
The type indicating the main diagonal of this matrix accessed by (const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 68 of file vctDynamicMatrixBase.h.
| typedef BaseType::DiagonalRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::DiagonalRefType |
The type indicating the main diagonal of this matrix accessed by (non-const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 69 of file vctDynamicMatrixBase.h.
| typedef BaseType::ConstRefTransposeType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ConstRefTransposeType |
The type of object representing this matrix accessed in transposed order. Access is by (const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 71 of file vctDynamicMatrixBase.h.
| typedef BaseType::RefTransposeType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RefTransposeType |
The type of object representing this matrix accessed in transposed order. Access is by (non-const) reference
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 72 of file vctDynamicMatrixBase.h.
| typedef BaseType::ConstVectorPointerType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ConstVectorPointerType |
The type of vector used to store const pointers on the rows or columns
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 74 of file vctDynamicMatrixBase.h.
| typedef BaseType::VectorPointerType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::VectorPointerType |
The type of vector used to store pointers on the rows or columns
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 75 of file vctDynamicMatrixBase.h.
| iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::begin | ( | void | ) | [inline] |
Returns an iterator on the first element (STL compatibility).
Definition at line 80 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Assign(), and vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::at().
| iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::end | ( | void | ) | [inline] |
Returns an iterator on the last element (STL compatibility).
Definition at line 86 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Assign().
| reverse_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::rbegin | ( | void | ) | [inline] |
Returns a reverse iterator on the last element (STL compatibility).
Definition at line 92 of file vctDynamicMatrixBase.h.
| reverse_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::rend | ( | void | ) | [inline] |
Returns a reverse iterator on the element before first (STL compatibility).
Definition at line 98 of file vctDynamicMatrixBase.h.
| const_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::begin | ( | void | ) | const [inline] |
Returns a const iterator on the first element (STL compatibility).
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 103 of file vctDynamicMatrixBase.h.
| const_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::end | ( | void | ) | const [inline] |
Returns a const iterator on the last element (STL compatibility).
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 108 of file vctDynamicMatrixBase.h.
| const_reverse_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::rbegin | ( | void | ) | const [inline] |
Returns a reverse const iterator on the last element (STL compatibility).
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 113 of file vctDynamicMatrixBase.h.
| const_reverse_iterator vctDynamicMatrixBase< _matrixOwnerType, _elementType >::rend | ( | void | ) | const [inline] |
Returns a reverse const iterator on the element before first (STL compatibility).
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 118 of file vctDynamicMatrixBase.h.
| RowRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::operator[] | ( | size_type | index | ) | [inline] |
Reference a row of this matrix by index.
Definition at line 124 of file vctDynamicMatrixBase.h.
| ConstRowRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::operator[] | ( | size_type | index | ) | const [inline] |
Reference a row of this matrix by index (const).
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 129 of file vctDynamicMatrixBase.h.
| const OwnerType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Owner | ( | void | ) | const [inline] |
Access the matrix owner. This method should be used only to access some extra information related to the memory layout. It is used by the engines (vctDynamicMatrixLoopEngines).
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 135 of file vctDynamicMatrixBase.h.
| pointer vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Pointer | ( | size_type | rowIndex, | |
| size_type | colIndex | |||
| ) | [inline] |
Return a non const pointer to an element of the container, specified by its indices. Addition to the STL requirements.
Definition at line 146 of file vctDynamicMatrixBase.h.
Referenced by vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyInverseTo(), vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyInverseTo(), vctFrameBase< _rotationType >::ApplyInverseTo(), vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyTo(), vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyTo(), vctFrameBase< _rotationType >::ApplyTo(), nmrLSqLin(), vctFixedSizeMatrixRef< _elementType, 3, 3, _rowStride, _colStride >::SetRef(), vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >::SetRef(), nmrSVDSolver::Solve(), nmrSVDRSSolver::Solve(), nmrNNLSSolver::Solve(), nmrLSSolver::Solve(), nmrLSEISolver::Solve(), and nmrHFTISolver::Solve().
| pointer vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Pointer | ( | void | ) | [inline] |
Returns a non const pointer to the first element of the container. Addition to the STL requirements.
Definition at line 153 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::at(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Column(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Diagonal(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Element(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::operator[](), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Row(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::TransposeRef(), and vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Zeros().
| const_pointer vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Pointer | ( | size_type | rowIndex, | |
| size_type | colIndex | |||
| ) | const [inline] |
Returns a const pointer to an element of the container, specified by its indices. Addition to the STL requirements.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 158 of file vctDynamicMatrixBase.h.
| const_pointer vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Pointer | ( | void | ) | const [inline] |
Returns a const pointer to the first element of the container. Addition to the STL requirements.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 163 of file vctDynamicMatrixBase.h.
| reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::at | ( | size_type | index | ) | throw (std::out_of_range) [inline] |
Access an element by index (const). Compare with std::vector::at. This method can be a handy substitute for the overloaded operator [] when operator overloading is unavailable or inconvenient.
Definition at line 174 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::operator()(), and nmrPInverseSolver::Solve().
| const_reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::at | ( | size_type | index | ) | const throw (std::out_of_range) [inline] |
Access an element by index (const). Compare with std::matrix::at(). This method can be a handy substitute for the overloaded operator [] when operator overloading is unavailable or inconvenient.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 181 of file vctDynamicMatrixBase.h.
| reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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.
Definition at line 190 of file vctDynamicMatrixBase.h.
| const_reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::at | ( | size_type | rowIndex, | |
| size_type | colIndex | |||
| ) | const throw (std::out_of_range) [inline] |
Access an element by index (const). Compare with std::vector::at(). This method can be a handy substitute for the overloaded operator () when operator overloading is unavailable or inconvenient.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 196 of file vctDynamicMatrixBase.h.
| reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::operator() | ( | size_type | rowIndex, | |
| size_type | colIndex | |||
| ) | throw (std::out_of_range) [inline] |
Overloaded operator () for simplified (non const) element access with bounds checking
Definition at line 202 of file vctDynamicMatrixBase.h.
| const_reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::operator() | ( | size_type | rowIndex, | |
| size_type | colIndex | |||
| ) | const throw (std::out_of_range) [inline] |
Overloaded operator () for simplified (const) element access with bounds checking
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 207 of file vctDynamicMatrixBase.h.
| reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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.
Definition at line 217 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixRef< CISSTNETLIB_DOUBLE >::SetRef(), nmrLUSolver::UpdateLU(), and vctRandom().
| const_reference vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Element | ( | size_type | rowIndex, | |
| size_type | colIndex | |||
| ) | const [inline] |
Access an element by indices (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.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 222 of file vctDynamicMatrixBase.h.
| RowRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Row | ( | size_type | index | ) | throw (std::out_of_range) [inline] |
Create a row reference.
Definition at line 230 of file vctDynamicMatrixBase.h.
Referenced by vctFrameBase< _rotationType >::ApplyInverseTo(), vctFrameBase< _rotationType >::ApplyTo(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::ExchangeRows(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::RowInversePermutationOf(), and vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::RowPermutationOf().
| ColumnRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Column | ( | size_type | index | ) | throw (std::out_of_range) [inline] |
Create a column reference.
Definition at line 236 of file vctDynamicMatrixBase.h.
Referenced by vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyInverseTo(), vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::ApplyTo(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::ColumnInversePermutationOf(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::ColumnPermutationOf(), vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::ExchangeColumns(), and nmrLSqLinSolutionDynamic::SetRef().
| DiagonalRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Diagonal | ( | void | ) | [inline] |
Create a non-const reference to the main diagonal of this matrix
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 242 of file vctDynamicMatrixBase.h.
Referenced by nmrLUSolver::AllocateLU(), and nmrLUSolver::UpdateP().
| VectorPointerType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RowPointers | ( | VectorPointerType & | rowPointers | ) | throw (std::runtime_error) [inline] |
Resize and fill a vector of pointers on the rows of the matrix. This method is provided to ease the interfacing with C libraries using matrices stored as value_type**.
To use this method, one must first create a dynamic vector of pointers, update it with the RowPointers method and then call the C function:
vctDynamicMatrix<double> myMatrix = ...; vctDynamicVector<double *> rowPointers; myMatrix.RowPointers(rowPointers); c_function(rowPointers.Pointer());
Definition at line 264 of file vctDynamicMatrixBase.h.
| ConstRowRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Row | ( | size_type | index | ) | const throw (std::out_of_range) [inline] |
Create a row reference.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 280 of file vctDynamicMatrixBase.h.
| ConstColumnRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Column | ( | size_type | index | ) | const throw (std::out_of_range) [inline] |
Create a row reference.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 285 of file vctDynamicMatrixBase.h.
| ConstDiagonalRefType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Diagonal | ( | void | ) | const [inline] |
Create a row reference.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 290 of file vctDynamicMatrixBase.h.
| ConstVectorPointerType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RowPointers | ( | ConstVectorPointerType & | rowPointers | ) | const throw (std::runtime_error) [inline] |
Create a row reference.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 295 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ExchangeRows | ( | const size_type | row1Index, | |
| const size_type | row2Index | |||
| ) | [inline] |
Exchange two rows of the matrix
Definition at line 303 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ExchangeColumns | ( | const size_type | col1Index, | |
| const size_type | col2Index | |||
| ) | [inline] |
Exchange two colums of the matrix
Definition at line 310 of file vctDynamicMatrixBase.h.
Referenced by nmrLUSolver::UpdateP().
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::SelectRowsFrom | ( | const vctDynamicConstMatrixBase< __inputMatrixOwnerType, _elementType > & | inputMatrix, | |
| const vctDynamicConstVectorBase< __indexVectorOwnerType, index_type > & | rowIndexVector | |||
| ) | [inline] |
Select a subset of rows from another matrix
Definition at line 319 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::SelectColsFrom().
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::SelectColsFrom | ( | const vctDynamicConstMatrixBase< __inputMatrixOwnerType, _elementType > & | inputMatrix, | |
| const vctDynamicConstVectorBase< __indexVectorOwnerType, index_type > & | colIndexVector | |||
| ) | [inline] |
Select a subset of columns from another matrix
Definition at line 328 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RowPermutationOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | 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.
| inputMatrix | the input matrix for the permutation. | |
| permutedRowIndexes | an array of row indices. The assignment performed is: this->Row(i) <-- inputMatrix.Row( permutedRowIndexes[i] ). |
Do not use this method for an in-place permutation of the input matrix.
Definition at line 349 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RowInversePermutationOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | 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.
| inputMatrix | the input matrix for the permutation. | |
| permutedRowIndexes | an array of row indices. The assignment performed is: this->Row( permutedRowIndexes[i] ) <-- inputMatrix.Row(i). |
Do not use this method for an in-place permutation of the input matrix.
Definition at line 373 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ColumnPermutationOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | 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.
| inputMatrix | the input matrix for the permutation. | |
| permutedColumnIndexes | an array of column indices. The assignment performed is: this->Column(i) <-- inputMatrix.Column( permutedColumnIndexes[i] ). |
Do not use this method for an in-place permutation of the input matrix.
Definition at line 396 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ColumnInversePermutationOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | 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.
| inputMatrix | the input matrix for the permutation. | |
| permutedColumnIndexes | an array of column indices. The assignment performed is: this->Column( permutedColumnIndexes[i] ) <-- inputMatrix.Column(i). |
Do not use this method for an in-place permutation of the input matrix.
Definition at line 419 of file vctDynamicMatrixBase.h.
| value_type vctDynamicMatrixBase< _matrixOwnerType, _elementType >::SetAll | ( | const value_type | value | ) | [inline] |
Assign the given value to all the elements.
| value | the value used to set all the elements of the matrix |
Definition at line 434 of file vctDynamicMatrixBase.h.
Referenced by nmrLUSolver::AllocateLU(), nmrPInverseSolver::Solve(), nmrLUSolver::UpdateP(), and vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Zeros().
| bool vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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.
Definition at line 450 of file vctDynamicMatrixBase.h.
| bool vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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.
std::runtime_error). See cmnThrow for details.
false. If both matrices are compact and use the same storage order, a single memcpy is performed and the method returns true.
memcpy, i.e. one per row or column and the method returns true
performSafetyChecks to vctFastCopy::SkipChecks (boolean defined false). This should be used only when the programmer knows for sure that the source and destination are compatible (size, storage order and compactness).
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); } }
Finally, this method will work on either matrices which have allocated their memory of matrix references (such as vctDynamicMatrixRef). So, to copy a part of a matrix, the programmer can do:
typedef unsigned short PixelType; vctDynamicMatrix<PixelType> image(640, 480, VCT_ROW_MAJOR); vctDynamicMatrixRef<PixelType> upperLeftRef(image, 0, 0, 320, 240); vctDynamicMatrix<PixelType> working(320, 240, VCT_ROW_MAJOR); // use FastCopyCompatible to make sure the sizes and strides match // and then use FastCopyOf without the safety checks working.FastCopyOf(upperLeft, vctFastCopy::SkipChecks);
| 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 660 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::Assign().
| bool vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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.
std::runtime_error). See cmnThrow for details.
false. If both matrices are compact and use the same storage order, a single memcpy is performed and the method returns true.
memcpy, i.e. one per row or column and the method returns true
performSafetyChecks to vctFastCopy::SkipChecks (boolean defined false). This should be used only when the programmer knows for sure that the source and destination are compatible (size, storage order and compactness).
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); } }
Finally, this method will work on either matrices which have allocated their memory of matrix references (such as vctDynamicMatrixRef). So, to copy a part of a matrix, the programmer can do:
typedef unsigned short PixelType; vctDynamicMatrix<PixelType> image(640, 480, VCT_ROW_MAJOR); vctDynamicMatrixRef<PixelType> upperLeftRef(image, 0, 0, 320, 240); vctDynamicMatrix<PixelType> working(320, 240, VCT_ROW_MAJOR); // use FastCopyCompatible to make sure the sizes and strides match // and then use FastCopyOf without the safety checks working.FastCopyOf(upperLeft, vctFastCopy::SkipChecks);
| 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 668 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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.
| 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. |
Definition at line 698 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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 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);
Definition at line 728 of file vctDynamicMatrixBase.h.
| RefTransposeType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::TransposeRef | ( | void | ) | [inline] |
Return a transposed reference to this matrix.
Definition at line 746 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::SelectColsFrom().
| ConstRefTransposeType vctDynamicMatrixBase< _matrixOwnerType, _elementType >::TransposeRef | ( | void | ) | const [inline] |
Return a transposed reference to this matrix. This allows access to elements of this matrix in transposed order.
Reimplemented from vctDynamicConstMatrixBase< _matrixOwnerType, _elementType >.
Definition at line 752 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::SumOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > & | matrix1, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > & | matrix2 | |||
| ) | [inline] |
Binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).
| matrix1 | The first operand of the binary operation | |
| matrix2 | The second operand of the binary operation |
Definition at line 773 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::DifferenceOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > & | matrix1, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > & | matrix2 | |||
| ) | [inline] |
Binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).
| matrix1 | The first operand of the binary operation | |
| matrix2 | The second operand of the binary operation |
Definition at line 783 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseProductOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > & | matrix1, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > & | matrix2 | |||
| ) | [inline] |
Binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).
| matrix1 | The first operand of the binary operation | |
| matrix2 | The second operand of the binary operation |
Definition at line 793 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseRatioOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > & | matrix1, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > & | matrix2 | |||
| ) | [inline] |
Binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).
| matrix1 | The first operand of the binary operation | |
| matrix2 | The second operand of the binary operation |
Definition at line 803 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseMinOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > & | matrix1, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > & | matrix2 | |||
| ) | [inline] |
Binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).
| matrix1 | The first operand of the binary operation | |
| matrix2 | The second operand of the binary operation |
Definition at line 813 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseMaxOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > & | matrix1, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > & | matrix2 | |||
| ) | [inline] |
Binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ElementwiseProductOf), a division (ElementwiseRatioOf), a minimum (ElementwiseMinOf) or a maximum (ElementwiseMaxOf).
| matrix1 | The first operand of the binary operation | |
| matrix2 | The second operand of the binary operation |
Definition at line 823 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Add | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 851 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::operator+=().
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::Subtract | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 860 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::operator-=().
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseMultiply | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 869 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseDivide | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 878 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseMin | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 887 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ElementwiseMax | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 896 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::operator+= | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 905 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::operator-= | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Store back binary elementwise operations between two matrices. For each element of the matrices, performs
where
is either an addition (Add), a subtraction (Subtraction), a multiplication (ElementwiseMultiply) a division (ElementwiseDivide), a minimization (ElementwiseMin) or a maximisation (ElementwiseMax).
| otherMatrix | The second operand of the binary operation (this[i] is the first operand) |
Definition at line 911 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::SumOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix, | |
| const value_type | scalar | |||
| ) | [inline] |
Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| matrix | The first operand of the binary operation. | |
| scalar | The second operand of the binary operation. |
Definition at line 933 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::DifferenceOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix, | |
| const value_type | scalar | |||
| ) | [inline] |
Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| matrix | The first operand of the binary operation. | |
| scalar | The second operand of the binary operation. |
Definition at line 943 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ProductOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix, | |
| const value_type | scalar | |||
| ) | [inline] |
Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| matrix | The first operand of the binary operation. | |
| scalar | The second operand of the binary operation. |
Definition at line 953 of file vctDynamicMatrixBase.h.
Referenced by vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyInverseTo(), vctMatrixRotation3ConstBase< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::ApplyTo(), and vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::OuterProductOf().
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RatioOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix, | |
| const value_type | scalar | |||
| ) | [inline] |
Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| matrix | The first operand of the binary operation. | |
| scalar | The second operand of the binary operation. |
Definition at line 963 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ClippedAboveOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix, | |
| const value_type | lowerBound | |||
| ) | [inline] |
Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| matrix | The first operand of the binary operation. | |
| scalar | The second operand of the binary operation. |
Definition at line 973 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ClippedBelowOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix, | |
| const value_type | upperBound | |||
| ) | [inline] |
Binary elementwise operations between a matrix and a scalar. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| matrix | The first operand of the binary operation. | |
| scalar | The second operand of the binary operation. |
Definition at line 983 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::SumOf | ( | const value_type | scalar, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix | |||
| ) | [inline] |
Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| scalar | The first operand of the binary operation. | |
| matrix | The second operand of the binary operation. |
Definition at line 1010 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::DifferenceOf | ( | const value_type | scalar, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix | |||
| ) | [inline] |
Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| scalar | The first operand of the binary operation. | |
| matrix | The second operand of the binary operation. |
Definition at line 1020 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ProductOf | ( | const value_type | scalar, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix | |||
| ) | [inline] |
Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| scalar | The first operand of the binary operation. | |
| matrix | The second operand of the binary operation. |
Definition at line 1030 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::RatioOf | ( | const value_type | scalar, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix | |||
| ) | [inline] |
Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| scalar | The first operand of the binary operation. | |
| matrix | The second operand of the binary operation. |
Definition at line 1040 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ClippedAboveOf | ( | const value_type | upperBound, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix | |||
| ) | [inline] |
Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| scalar | The first operand of the binary operation. | |
| matrix | The second operand of the binary operation. |
Definition at line 1050 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ClippedBelowOf | ( | const value_type | lowerBound, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | matrix | |||
| ) | [inline] |
Binary elementwise operations between a scalar and a matrix. For each element of the matrix "this", performs
where
is either an addition (SumOf), a subtraction (DifferenceOf), a multiplication (ProductOf), a division (RatioOf), a minimum (ClippedAboveOf) or a maximum (ClippedBelowOf).
| scalar | The first operand of the binary operation. | |
| matrix | The second operand of the binary operation. |
Definition at line 1060 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1086 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1094 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1102 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::operator *=().
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1110 of file vctDynamicMatrixBase.h.
Referenced by vctDynamicMatrixBase< vctDynamicMatrixOwner< float >, float >::operator/=().
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1118 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1126 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1134 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1139 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1144 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::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
where
is either an addition (Add), a subtraction (Subtract), a multiplication (Multiply), a division (Divide), a minimum (ClipAbove) or a maximum (ClipBelow).
| scalar | The second operand of the binary operation (this[i] is the first operand. |
Definition at line 1149 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::AbsOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).
| otherMatrix | The operand of the unary operation. |
Definition at line 1182 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::NegationOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).
| otherMatrix | The operand of the unary operation. |
Definition at line 1191 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::FloorOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).
| otherMatrix | The operand of the unary operation. |
Definition at line 1200 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::CeilOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).
| otherMatrix | The operand of the unary operation. |
Definition at line 1209 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::TransposeOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > & | otherMatrix | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsOf), the opposite (NegationOf) or the transpose (TransposeOf).
| otherMatrix | The operand of the unary operation. |
Definition at line 1217 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::AbsSelf | ( | void | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).
Definition at line 1234 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::NegationSelf | ( | void | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).
Definition at line 1242 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::FloorSelf | ( | void | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).
Definition at line 1250 of file vctDynamicMatrixBase.h.
| ThisType& vctDynamicMatrixBase< _matrixOwnerType, _elementType >::CeilSelf | ( | void | ) | [inline] |
Unary elementwise operations on a matrix. For each element of the matrix "this", performs
where
can calculate the absolute value (AbsSelf) or the opposite (NegationSelf).
Definition at line 1258 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::ProductOf | ( | const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > & | matrix1, | |
| const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > & | matrix2 | |||
| ) | [inline] |
Product of two matrices. If the sizes of the matrices don't match, an exception is thrown.
| matrix1 | The left operand of the binary operation. | |
| matrix2 | The right operand of the binary operation. |
Definition at line 1276 of file vctDynamicMatrixBase.h.
| void vctDynamicMatrixBase< _matrixOwnerType, _elementType >::OuterProductOf | ( | const vctDynamicConstVectorBase< __vectorOwnerType1, _elementType > & | colVector, | |
| const vctDynamicConstVectorBase< __vectorOwnerType2, _elementType > & | 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 1291 of file vctDynamicMatrixBase.h.