21#ifndef _vctVarStrideMatrixIterator_h
22#define _vctVarStrideMatrixIterator_h
38template<
class _elementType>
106 size_type numColumns, stride_type rowStride,
107 size_type initialColumn = 0):
125 size_type numColumns, stride_type rowStride,
126 size_type initialColumn = 0):
217 const difference_type rowDiff = (beginThisRow - beginThatRow) /
RowStride;
219 const difference_type result = rowDiff *
NumColumns + colDiff;
246 return ((*
this) - other) < 0;
249 return ((*
this) < other) || ((*this) == other);;
261 return other < (*this);
264 return ((*
this) > other) || ((*this) == other);;
270 return !( (*this) == other );
281template<
class _elementType>
301 size_type numColumns, stride_type rowStride,
302 size_type initialColumn = 0):
303 BaseType(dataPtr, columnStride, numColumns, rowStride, initialColumn)
398template<
class _elementType>
404 return result += difference;
409template<
class _elementType>
415 return result += difference;
420template<
class _elementType>
426 return result -= difference;
434template<
class _elementType>
440 return result += difference;
445template<
class _elementType>
451 return result += difference;
456template<
class _elementType>
462 return result -= difference;
Definition vctVarStrideMatrixIterator.h:40
vctVarStrideMatrixConstIterator(value_type *dataPtr, stride_type columnStride, size_type numColumns, stride_type rowStride, size_type initialColumn=0)
Definition vctVarStrideMatrixIterator.h:105
vctVarStrideMatrixConstIterator(const value_type *dataPtr, difference_type columnStride, size_type numColumns, stride_type rowStride, size_type initialColumn=0)
Definition vctVarStrideMatrixIterator.h:124
difference_type operator-(const ThisType &other) const
Definition vctVarStrideMatrixIterator.h:214
bool operator==(const ThisType &other) const
Definition vctVarStrideMatrixIterator.h:254
value_type * DataPtr
Definition vctVarStrideMatrixIterator.h:59
stride_type RowStride
Definition vctVarStrideMatrixIterator.h:64
bool operator<=(const ThisType &other) const
Definition vctVarStrideMatrixIterator.h:248
ThisType & operator++()
Definition vctVarStrideMatrixIterator.h:136
void WrapToRight()
Definition vctVarStrideMatrixIterator.h:72
ThisType & operator+=(difference_type difference)
Definition vctVarStrideMatrixIterator.h:172
void WrapToLeft()
Definition vctVarStrideMatrixIterator.h:84
ThisType & operator--()
Definition vctVarStrideMatrixIterator.h:153
bool operator<(const ThisType &other) const
Definition vctVarStrideMatrixIterator.h:245
ThisType operator++(int)
Definition vctVarStrideMatrixIterator.h:145
ThisType & operator-=(difference_type difference)
Definition vctVarStrideMatrixIterator.h:186
bool operator!=(const ThisType &other) const
Definition vctVarStrideMatrixIterator.h:269
difference_type CurrentColumn
Definition vctVarStrideMatrixIterator.h:65
ThisType operator--(int)
Definition vctVarStrideMatrixIterator.h:162
stride_type ColumnStride
Definition vctVarStrideMatrixIterator.h:62
const value_type & operator*() const
Definition vctVarStrideMatrixIterator.h:233
std::random_access_iterator_tag iterator_category
Definition vctVarStrideMatrixIterator.h:50
difference_type NumColumns
Definition vctVarStrideMatrixIterator.h:63
bool operator>=(const ThisType &other) const
Definition vctVarStrideMatrixIterator.h:263
VCT_CONTAINER_TRAITS_TYPEDEFS(_elementType)
bool operator>(const ThisType &other) const
Definition vctVarStrideMatrixIterator.h:260
vctVarStrideMatrixConstIterator()
Definition vctVarStrideMatrixIterator.h:94
vctVarStrideMatrixConstIterator< value_type > ThisType
Definition vctVarStrideMatrixIterator.h:46
const value_type & operator[](difference_type index) const
Definition vctVarStrideMatrixIterator.h:225
Definition vctVarStrideMatrixIterator.h:283
ThisType & operator-=(difference_type difference)
Definition vctVarStrideMatrixIterator.h:368
ThisType & operator++()
Definition vctVarStrideMatrixIterator.h:309
vctVarStrideMatrixIterator(value_type *dataPtr, stride_type columnStride, size_type numColumns, stride_type rowStride, size_type initialColumn=0)
Definition vctVarStrideMatrixIterator.h:300
BaseType::iterator_category iterator_category
Definition vctVarStrideMatrixIterator.h:289
ThisType operator++(int)
Definition vctVarStrideMatrixIterator.h:319
ThisType & operator--()
Definition vctVarStrideMatrixIterator.h:328
ThisType operator--(int)
Definition vctVarStrideMatrixIterator.h:338
ThisType & operator+=(difference_type difference)
Definition vctVarStrideMatrixIterator.h:350
vctVarStrideMatrixIterator< value_type > ThisType
Definition vctVarStrideMatrixIterator.h:287
vctVarStrideMatrixIterator()
Definition vctVarStrideMatrixIterator.h:292
VCT_CONTAINER_TRAITS_TYPEDEFS(_elementType)
value_type & operator[](difference_type index) const
Definition vctVarStrideMatrixIterator.h:382
vctVarStrideMatrixConstIterator< value_type > BaseType
Definition vctVarStrideMatrixIterator.h:288
value_type & operator*() const
Definition vctVarStrideMatrixIterator.h:390
Basic traits for the cisstVector containers.
OwnerType::iterator iterator
Definition vctDynamicConstMatrixBase.h:92
vctReturnDynamicMatrix< _elementType > operator-(const vctDynamicConstMatrixBase< _matrixOwnerType1, _elementType > &inputMatrix1, const vctDynamicConstMatrixBase< _matrixOwnerType2, _elementType > &inputMatrix2)
Definition vctDynamicMatrix.h:487
vctReturnDynamicMatrix< _elementType > operator+(const vctDynamicConstMatrixBase< _matrixOwnerType1, _elementType > &inputMatrix1, const vctDynamicConstMatrixBase< _matrixOwnerType2, _elementType > &inputMatrix2)
Definition vctDynamicMatrix.h:476