cisst-saw
|
#include <vctDynamicMatrix.h>
Public Member Functions | |
VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType) | |
vctReturnDynamicMatrix (const BaseType &other) | |
![]() | |
VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType) | |
VCT_NARRAY_TRAITS_TYPEDEFS (DIMENSION) | |
vctDynamicMatrix () | |
vctDynamicMatrix (const vctReturnDynamicMatrix< value_type > &otherMatrix) | |
vctDynamicMatrix (const ThisType &otherMatrix) | |
template<class __matrixOwnerType , typename __otherMatrixElementType > | |
vctDynamicMatrix (const vctDynamicConstMatrixBase< __matrixOwnerType, __otherMatrixElementType > &otherMatrix, bool storageOrder) | |
template<class __matrixOwnerType > | |
vctDynamicMatrix (const vctDynamicConstMatrixBase< __matrixOwnerType, value_type > &otherMatrix) | |
template<class __matrixOwnerType , typename __otherMatrixElementType > | |
vctDynamicMatrix (const vctDynamicConstMatrixBase< __matrixOwnerType, __otherMatrixElementType > &otherMatrix) | |
template<size_type __rows, size_type __cols, stride_type __rowStride, stride_type __colStride, class __elementType , class __dataPtrType > | |
vctDynamicMatrix (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, __elementType, __dataPtrType > &other) | |
template<class __matrixOwnerType , typename __elementType > | |
ThisType & | operator= (const vctDynamicConstMatrixBase< __matrixOwnerType, __elementType > &otherMatrix) |
ThisType & | operator= (const ThisType &otherMatrix) |
template<size_type __rows, size_type __cols, stride_type __rowStride, stride_type __colStride, class __elementType , class __dataPtrType > | |
ThisType & | operator= (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, __elementType, __dataPtrType > &other) |
ThisType & | operator= (const vctReturnDynamicMatrix< value_type > &otherMatrix) |
ThisType & | operator= (const value_type &value) |
template<class __matrixOwnerType , typename __elementType > | |
ThisType & | ForceAssign (const vctDynamicConstMatrixBase< __matrixOwnerType, __elementType > &other) |
template<size_type __rows, size_type __cols, stride_type __rowStride, stride_type __colStride, class __elementType , class __dataPtrType > | |
ThisType & | ForceAssign (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, __elementType, __dataPtrType > &other) |
void | DeSerializeRaw (std::istream &inputStream) |
template<class _elementType > | |
vctDynamicMatrix (const vctReturnDynamicMatrix< _elementType > &other) | |
template<class _elementType > | |
vctDynamicMatrix< _elementType > & | operator= (const vctReturnDynamicMatrix< _elementType > &other) |
vctDynamicMatrix (size_type rows, size_type cols, bool storageOrder=VCT_DEFAULT_STORAGE) | |
vctDynamicMatrix (const nsize_type &matrixSize, bool storageOrder=VCT_DEFAULT_STORAGE) | |
vctDynamicMatrix (size_type rows, size_type cols, value_type value, bool storageOrder=VCT_DEFAULT_STORAGE) | |
vctDynamicMatrix (const nsize_type &matrixSize, value_type value, bool storageOrder=VCT_DEFAULT_STORAGE) | |
void | resize (size_type rows, size_type cols) |
void | resize (const nsize_type &newSizes) |
void | SetSize (size_type rows, size_type cols, bool storageOrder) |
void | SetSize (const nsize_type &matrixSize, bool storageOrder) |
void | SetSize (size_type rows, size_type cols) |
void | SetSize (const nsize_type &matrixSize) |
![]() | |
VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType) | |
iterator | begin (void) |
const_iterator | begin (void) const |
iterator | end (void) |
const_iterator | end (void) const |
reverse_iterator | rbegin (void) |
const_reverse_iterator | rbegin (void) const |
reverse_iterator | rend (void) |
const_reverse_iterator | rend (void) const |
RowRefType | operator[] (size_type index) |
ConstRowRefType | operator[] (size_type index) const |
const OwnerType & | Owner (void) const |
OwnerType & | Owner (void) |
pointer | Pointer (size_type rowIndex, size_type colIndex) |
pointer | Pointer (void) |
const_pointer | Pointer (size_type rowIndex, size_type colIndex) const |
const_pointer | Pointer (void) const |
reference | at (size_type index) throw (std::out_of_range) |
const_reference | at (size_type index) const throw (std::out_of_range) |
reference | at (size_type rowIndex, size_type colIndex) throw (std::out_of_range) |
const_reference | at (size_type rowIndex, size_type colIndex) const throw (std::out_of_range) |
reference | operator() (size_type rowIndex, size_type colIndex) throw (std::out_of_range) |
const_reference | operator() (size_type rowIndex, size_type colIndex) const throw (std::out_of_range) |
reference | Element (size_type rowIndex, size_type colIndex) |
const_reference | Element (size_type rowIndex, size_type colIndex) const |
void | RowPermutationOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &inputMatrix, const index_type permutedRowIndexes[]) |
void | RowInversePermutationOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &inputMatrix, const index_type permutedRowIndexes[]) |
void | ColumnPermutationOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &inputMatrix, const index_type permutedColumnIndexes[]) |
void | ColumnInversePermutationOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &inputMatrix, const index_type permutedColumnIndexes[]) |
value_type | SetAll (const value_type value) |
bool | Zeros (void) |
ThisType & | Assign (const value_type *elements, bool inputIsRowMajor=true) |
ThisType & | Assign (const value_type element0,...) |
RefTransposeType | TransposeRef (void) |
ConstRefTransposeType | TransposeRef (void) const |
void | ProductOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
ThisType & | AddProductOf (const value_type scalar, const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | AddElementwiseProductOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
void | OuterProductOf (const vctDynamicConstVectorBase< __vectorOwnerType1, _elementType > &colVector, const vctDynamicConstVectorBase< __vectorOwnerType2, _elementType > &rowVector) |
RowRefType | Row (size_type index) throw (std::out_of_range) |
ConstRowRefType | Row (size_type index) const throw (std::out_of_range) |
ColumnRefType | Column (size_type index) throw (std::out_of_range) |
ConstColumnRefType | Column (size_type index) const throw (std::out_of_range) |
DiagonalRefType | Diagonal (void) |
ConstDiagonalRefType | Diagonal (void) const |
VectorPointerType & | RowPointers (VectorPointerType &rowPointers) throw (std::runtime_error) |
ConstVectorPointerType | RowPointers (ConstVectorPointerType &rowPointers) const throw (std::runtime_error) |
vctDynamicMatrixRef< _elementType > | Ref (const size_type rows, const size_type cols, const size_type startRow=0, const size_type startCol=0) throw (std::out_of_range) |
vctDynamicConstMatrixRef < _elementType > | Ref (const size_type rows, const size_type cols, const size_type startRow=0, const size_type startCol=0) const throw (std::out_of_range) |
void | ExchangeRows (const size_type row1Index, const size_type row2Index) |
void | ExchangeColumns (const size_type col1Index, const size_type col2Index) |
void | SelectRowsFrom (const vctDynamicConstMatrixBase< __inputMatrixOwnerType, _elementType > &inputMatrix, const vctDynamicConstVectorBase< __indexVectorOwnerType, index_type > &rowIndexVector) |
void | SelectColsFrom (const vctDynamicConstMatrixBase< __inputMatrixOwnerType, _elementType > &inputMatrix, const vctDynamicConstVectorBase< __indexVectorOwnerType, index_type > &colIndexVector) |
ThisType & | Assign (const vctDynamicConstMatrixBase< __matrixOwnerType, value_type > &other) |
ThisType & | Assign (const vctDynamicConstMatrixBase< __matrixOwnerType, __elementType > &other) |
ThisType & | Assign (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, __elementType, __dataPtrType > &other) |
ThisType & | operator= (const vctDynamicConstMatrixBase< __matrixOwnerType, __elementType > &other) |
ThisType & | ForceAssign (const vctDynamicConstMatrixBase< __matrixOwnerType, __elementType > &other) |
ThisType & | ForceAssign (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, __elementType, __dataPtrType > &other) |
bool | FastCopyOf (const vctDynamicConstMatrixBase< __matrixOwnerType, value_type > &source, bool performSafetyChecks=vctFastCopy::PerformChecks) throw (std::runtime_error) |
bool | FastCopyOf (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, value_type, __dataPtrType > &source, bool performSafetyChecks=vctFastCopy::PerformChecks) throw (std::runtime_error) |
ThisType & | SumOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
ThisType & | DifferenceOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
ThisType & | ElementwiseProductOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
ThisType & | ElementwiseRatioOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
ThisType & | ElementwiseMinOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
ThisType & | ElementwiseMaxOf (const vctDynamicConstMatrixBase< __matrixOwnerType1, _elementType > &matrix1, const vctDynamicConstMatrixBase< __matrixOwnerType2, _elementType > &matrix2) |
ThisType & | Add (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | Subtract (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | ElementwiseMultiply (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | ElementwiseDivide (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | ElementwiseMin (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | ElementwiseMax (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | operator+= (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | operator-= (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | SumOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix, const value_type scalar) |
ThisType & | DifferenceOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix, const value_type scalar) |
ThisType & | ProductOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix, const value_type scalar) |
ThisType & | RatioOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix, const value_type scalar) |
ThisType & | ClippedAboveOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix, const value_type lowerBound) |
ThisType & | ClippedBelowOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix, const value_type upperBound) |
ThisType & | SumOf (const value_type scalar, const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix) |
ThisType & | DifferenceOf (const value_type scalar, const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix) |
ThisType & | ProductOf (const value_type scalar, const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix) |
ThisType & | RatioOf (const value_type scalar, const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix) |
ThisType & | ClippedAboveOf (const value_type upperBound, const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix) |
ThisType & | ClippedBelowOf (const value_type lowerBound, const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &matrix) |
ThisType & | Add (const value_type scalar) |
ThisType & | Subtract (const value_type scalar) |
ThisType & | operator+= (const value_type scalar) |
ThisType & | operator-= (const value_type scalar) |
ThisType & | Multiply (const value_type scalar) |
ThisType & | Divide (const value_type scalar) |
ThisType & | ClipAbove (const value_type upperBound) |
ThisType & | ClipBelow (const value_type lowerBound) |
ThisType & | operator*= (const value_type scalar) |
ThisType & | operator/= (const value_type scalar) |
ThisType & | AbsOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | NegationOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | FloorOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | CeilOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | TransposeOf (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) |
ThisType & | AbsSelf (void) |
ThisType & | NegationSelf (void) |
ThisType & | FloorSelf (void) |
ThisType & | CeilSelf (void) |
![]() | |
VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType) | |
VCT_NARRAY_TRAITS_TYPEDEFS (DIMENSION) | |
const_iterator | begin (void) const |
const_iterator | end (void) const |
const_reverse_iterator | rbegin (void) const |
const_reverse_iterator | rend (void) const |
size_type | size (void) const |
const nsize_type & | sizes (void) const |
size_type | rows () const |
size_type | cols () const |
size_type | height () const |
size_type | width () const |
const nstride_type & | strides (void) const |
difference_type | row_stride () const |
difference_type | col_stride () const |
bool | empty () const |
ConstRowRefType | operator[] (size_type index) const |
const_reference | at (size_type index) const throw (std::out_of_range) |
const OwnerType & | Owner (void) const |
const_pointer | Pointer (index_type rowIndex, index_type colIndex) const |
const_pointer | Pointer (void) const |
bool | ValidIndex (size_type index) const |
bool | ValidIndex (size_type rowIndex, size_type colIndex) const |
bool | ValidRowIndex (size_type rowIndex) const |
bool | ValidColIndex (size_type colIndex) const |
const_reference | at (size_type rowIndex, size_type colIndex) const throw (std::out_of_range) |
const_reference | operator() (size_type rowIndex, size_type colIndex) const throw (std::out_of_range) |
const_reference | Element (size_type rowIndex, size_type colIndex) const |
ConstRowRefType | Row (size_type index) const throw (std::out_of_range) |
ConstColumnRefType | Column (size_type index) const throw (std::out_of_range) |
ConstDiagonalRefType | Diagonal () const |
ConstVectorPointerType & | RowPointers (ConstVectorPointerType &rowPointers) const throw (std::runtime_error) |
vctDynamicConstMatrixRef < _elementType > | Ref (const size_type rows, const size_type cols, const size_type startRow=0, const size_type startCol=0) const throw (std::out_of_range) |
ConstRefTransposeType | TransposeRef (void) const |
MatrixReturnType | Transpose () const |
std::string | ToString (void) |
void | ToStream (std::ostream &outputStream) const |
void | ToStreamRaw (std::ostream &outputStream, const char delimiter= ' ', bool headerOnly=false, const std::string &headerPrefix="") const |
void | SerializeRaw (std::ostream &outputStream) const |
value_type | SumOfElements (void) const |
value_type | ProductOfElements (void) const |
value_type | Trace (void) const |
value_type | NormSquare (void) const |
NormType | Norm (void) const |
value_type | L1Norm (void) const |
value_type | LinfNorm (void) const |
value_type | MaxElement (void) const |
value_type | MinElement (void) const |
value_type | MaxAbsElement (void) const |
value_type | MinAbsElement (void) const |
void | MinAndMaxElement (value_type &minElement, value_type &maxElement) const |
bool | IsPositive (void) const |
bool | IsNonNegative (void) const |
bool | IsNonPositive (void) const |
bool | IsNegative (void) const |
bool | All (void) const |
bool | Any (void) const |
bool | IsFinite (void) const |
bool | HasNaN (void) const |
bool | IsColMajor (void) const |
bool | IsRowMajor (void) const |
bool | IsCompact (void) const |
bool | IsFortran (void) const |
bool | StorageOrder (void) const |
bool | IsSquare (void) const |
bool | IsSquare (size_type size) const |
template<class __matrixOwnerType > | |
bool | FastCopyCompatible (const vctDynamicConstMatrixBase< __matrixOwnerType, value_type > &source) const |
template<size_type __rows, size_type __cols, stride_type __rowStride, stride_type __colStride, class __dataPtrType > | |
bool | FastCopyCompatible (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, value_type, __dataPtrType > &source) const |
template<class __matrixOwnerType > | |
bool | Equal (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | operator== (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | AlmostEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix, value_type tolerance) const |
template<class __matrixOwnerType > | |
bool | AlmostEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | NotEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | operator!= (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | Lesser (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | LesserOrEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | Greater (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
bool | GreaterOrEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
BoolMatrixReturnType | ElementwiseEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
BoolMatrixReturnType | ElementwiseNotEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
BoolMatrixReturnType | ElementwiseLesser (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
BoolMatrixReturnType | ElementwiseLesserOrEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
BoolMatrixReturnType | ElementwiseGreater (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
template<class __matrixOwnerType > | |
BoolMatrixReturnType | ElementwiseGreaterOrEqual (const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const |
bool | Equal (const value_type &scalar) const |
bool | operator== (const value_type &scalar) const |
bool | NotEqual (const value_type &scalar) const |
bool | operator!= (const value_type &scalar) const |
bool | Lesser (const value_type &scalar) const |
bool | LesserOrEqual (const value_type &scalar) const |
bool | Greater (const value_type &scalar) const |
bool | GreaterOrEqual (const value_type &scalar) const |
BoolMatrixReturnType | ElementwiseEqual (const value_type &scalar) const |
BoolMatrixReturnType | ElementwiseNotEqual (const value_type &scalar) const |
BoolMatrixReturnType | ElementwiseLesser (const value_type &scalar) const |
BoolMatrixReturnType | ElementwiseLesserOrEqual (const value_type &scalar) const |
BoolMatrixReturnType | ElementwiseGreater (const value_type &scalar) const |
BoolMatrixReturnType | ElementwiseGreaterOrEqual (const value_type &scalar) const |
MatrixReturnType | Abs (void) const |
MatrixReturnType | Negation (void) const |
MatrixReturnType | Floor (void) const |
MatrixReturnType | Ceil (void) const |
Additional Inherited Members | |
![]() | |
static MatrixReturnType | Eye (size_type size) |
![]() | |
void | ThrowUnlessValidIndex (size_type index) const throw (std::out_of_range) |
void | ThrowUnlessValidIndex (size_type rowIndex, size_type colIndex) const throw (std::out_of_range) |
void | ThrowUnlessValidRowIndex (size_type index) const throw (std::out_of_range) |
void | ThrowUnlessValidColIndex (size_type index) const throw (std::out_of_range) |
![]() | |
OwnerType | Matrix |
Class vctReturnDynamicMatrix is specialized to store a temporary matrix object by transfering ownership. An object of this class has all the methods inherited from vctDynamicMatrix, but can only be constructed in one way – taking the ownership from another vctDynamicMatrix (or vctReturnDynamicMatrix) object. In turn, when an assignment occurs from a vctReturnDynamicMatrix to a vctDynamicMatrix (or likewise construction), the lhs vctDynamicMatrix strips this object from the ownership of the data.
Use this class only when you want to return a newly created dynamic matrix from a function, without going through memory allocation and deallocation. Never use it on an object that is going to remain in scope after constructing the vctReturnDynamicMatrix.
typedef vctDynamicMatrix<_elementType> vctReturnDynamicMatrix< _elementType >::BaseType |
Base type of vctReturnDynamicMatrix.
|
inlineexplicit |
vctReturnDynamicMatrix< _elementType >::VCT_CONTAINER_TRAITS_TYPEDEFS | ( | _elementType | ) |