SLIP
1.4
|
Some const iterator to iterate a 4d container into two Range defined by the indices and strides of the 4d container. More...
#include <iterator4d_range.hpp>
Public Types | |
typedef std::random_access_iterator4d_tag | iterator_category |
typedef Container4D::value_type | value_type |
typedef DPoint4d< int > | difference_type |
typedef slip::DPoint3d< int > | diff3d |
typedef slip::DPoint2d< int > | diff2d |
typedef Container4D::const_pointer | pointer |
typedef Container4D::const_reference | reference |
typedef const_iterator4d_range | self |
typedef Container4D::size_type | size_type |
Public Member Functions | |
reference | operator* () |
Dereference assignment operator. Returns the element that the current iterator4d_range i point to. More... | |
pointer | operator-> () |
Constructors & Destructors | |
const_iterator4d_range () | |
Constructs a const_iterator4d_range. More... | |
const_iterator4d_range (Container4D *c, const slip::Range< int > &r1, const slip::Range< int > &r2, const slip::Range< int > &r3, const slip::Range< int > &r4) | |
Constructs a const_iterator4d_range. More... | |
const_iterator4d_range (const self &o) | |
Constructs a copy of the const_iterator4d_range o. More... | |
Assignment operators and methods | |
self & | operator= (const self &o) |
Assign a const_iterator4d_range. More... | |
Forward operators addons | |
self & | operator++ () |
Preincrement a const_iterator4d_range. Iterate to the next location inside the Range. More... | |
self | operator++ (int) |
Postincrement a const_iterator4d_range. Iterate to the next location inside the Range4d. More... | |
Bidirectional operators addons | |
self & | operator-- () |
Predecrement a const_iterator4d_range. Iterate to the previous location inside the Range4d. More... | |
self | operator-- (int) |
Postdecrement a const_iterator4d_range. Iterate to the previous location inside the Range4d. More... | |
slab, slice, row and col iterators accessors | |
Container4D::const_slab_range_iterator | slab_begin (size_type slice, size_type row, size_type col) const |
const_iterator4d_range element assignment operator. More... | |
Container4D::const_slab_range_iterator | slab_end (size_type slice, size_type row, size_type col) const |
const_iterator4d_range element assignment operator. More... | |
Container4D::const_slice_range_iterator | slice_begin (size_type slab, size_type row, size_type col) const |
const_iterator4d_range element assignment operator. More... | |
Container4D::const_slice_range_iterator | slice_end (size_type slab, size_type row, size_type col) const |
const_iterator4d_range element assignment operator. More... | |
Container4D::const_row_range_iterator | row_begin (size_type slab, size_type slice, size_type row) const |
const_iterator4d_range element assignment operator. More... | |
Container4D::const_row_range_iterator | row_end (size_type slab, size_type slice, size_type row) const |
const_iterator4d_range element assignment operator. More... | |
Container4D::const_col_range_iterator | col_begin (size_type slab, size_type slice, size_type col) const |
const_iterator4d_range element assignment operator. More... | |
Container4D::const_col_range_iterator | col_end (size_type slab, size_type slice, size_type col) const |
const_iterator4d_range element assignment operator. More... | |
Subscripts accessors | |
int | x1 () const |
Access to the first subscript of the current const_iterator4d_range. More... | |
int | t () const |
Access to the first subscript of the current const_iterator4d_range. More... | |
int | x2 () const |
Access to the second subscript of the current const_iterator4d_range. More... | |
int | k () const |
Access to the second subscript of the current const_iterator4d_range. More... | |
int | x3 () const |
Access to the third subscript of the current const_iterator4d_range. More... | |
int | i () const |
Access to the third subscript of the current const_iterator4d_range. More... | |
int | x4 () const |
Access to the fourth subscript of the current const_iterator4d_range. More... | |
int | j () const |
Access to the fourth subscript of the current const_iterator4d_range. More... | |
Friends | |
Equality comparable operators | |
bool | operator== (const self &i1, const self &i2) |
Equality operator. More... | |
bool | operator!= (const self &i1, const self &i2) |
Inequality operator. More... | |
Strict Weakly comparable operators | |
bool | operator< (const self &i1, const self &i2) |
< operator. More... | |
bool | operator> (const self &i1, const self &i2) |
More... | |
bool | operator<= (const self &i1, const self &i2) |
<= operator. More... | |
bool | operator>= (const self &i1, const self &i2) |
>= operator. More... | |
const_iterator4d_range operators addons | |
self & | operator+= (const difference_type &d) |
const_iterator4d_range addition. More... | |
self & | operator-= (const difference_type &d) |
const_iterator4d_range substraction. More... | |
self | operator+ (const difference_type &d) |
const_iterator4d_range addition. More... | |
self | operator- (const difference_type &d) |
const_iterator4d_range substraction. More... | |
reference | operator[] (difference_type d) const |
const_iterator4d_range element assignment operator. Equivalent to *(k + d) = t. More... | |
pointer | operator[] (diff3d d) const |
const_iterator4d_range element assignment operator. Equivalent to *(k + d) = t. More... | |
pointer | operator[] (diff2d d) const |
const_iterator4d_range element assignment operator. Equivalent to *(k + d) = t. More... | |
pointer * | operator[] (int n) const |
const_iterator4d_range element assignment operator. Equivalent to *(k + n) = t. More... | |
difference_type | operator- (const self &i1, const self &i2) |
const_iterator4d_range difference operator. More... | |
Some const iterator to iterate a 4d container into two Range defined by the indices and strides of the 4d container.
Container4D | Type of 4d container in the const_iterator4d_range |
Definition at line 910 of file iterator4d_range.hpp.
typedef slip::DPoint2d<int> slip::const_iterator4d_range< Container4D >::diff2d |
Definition at line 918 of file iterator4d_range.hpp.
typedef slip::DPoint3d<int> slip::const_iterator4d_range< Container4D >::diff3d |
Definition at line 917 of file iterator4d_range.hpp.
typedef DPoint4d<int> slip::const_iterator4d_range< Container4D >::difference_type |
Definition at line 916 of file iterator4d_range.hpp.
typedef std::random_access_iterator4d_tag slip::const_iterator4d_range< Container4D >::iterator_category |
Definition at line 914 of file iterator4d_range.hpp.
typedef Container4D::const_pointer slip::const_iterator4d_range< Container4D >::pointer |
Definition at line 919 of file iterator4d_range.hpp.
typedef Container4D::const_reference slip::const_iterator4d_range< Container4D >::reference |
Definition at line 920 of file iterator4d_range.hpp.
typedef const_iterator4d_range slip::const_iterator4d_range< Container4D >::self |
Definition at line 922 of file iterator4d_range.hpp.
typedef Container4D::size_type slip::const_iterator4d_range< Container4D >::size_type |
Definition at line 924 of file iterator4d_range.hpp.
typedef Container4D::value_type slip::const_iterator4d_range< Container4D >::value_type |
Definition at line 915 of file iterator4d_range.hpp.
|
inline |
Constructs a const_iterator4d_range.
Definition at line 934 of file iterator4d_range.hpp.
|
inline |
Constructs a const_iterator4d_range.
c | pointer to an existing 4d container |
r1 | Range<int> defining the range of indices of the first axis to iterate |
r2 | Range<int> defining the range of indices of the second axis to iterate |
r3 | Range<int> defining the range of indices of the third axis to iterate |
r4 | Range<int> defining the range of indices of the fourth axis to iterate |
Definition at line 951 of file iterator4d_range.hpp.
|
inline |
Constructs a copy of the const_iterator4d_range o.
o | const_iterator4d_range to copy. |
Definition at line 966 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slab | slab offset. |
slice | slice offset. |
col | col offset. |
Definition at line 1574 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slab | slab offset. |
slice | slice offset. |
col | col offset. |
Definition at line 1593 of file iterator4d_range.hpp.
|
inline |
Access to the third subscript of the current const_iterator4d_range.
Definition at line 1656 of file iterator4d_range.hpp.
|
inline |
Access to the fourth subscript of the current const_iterator4d_range.
Definition at line 1675 of file iterator4d_range.hpp.
|
inline |
Access to the second subscript of the current const_iterator4d_range.
Definition at line 1637 of file iterator4d_range.hpp.
|
inline |
Dereference assignment operator. Returns the element that the current iterator4d_range i point to.
Definition at line 1011 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range addition.
d | difference_type |
Definition at line 1342 of file iterator4d_range.hpp.
|
inline |
Preincrement a const_iterator4d_range. Iterate to the next location inside the Range.
Definition at line 1033 of file iterator4d_range.hpp.
|
inline |
Postincrement a const_iterator4d_range. Iterate to the next location inside the Range4d.
Definition at line 1100 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range addition.
d | difference_type |
Definition at line 1298 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range substraction.
d | difference_type |
Definition at line 1357 of file iterator4d_range.hpp.
|
inline |
Predecrement a const_iterator4d_range. Iterate to the previous location inside the Range4d.
Definition at line 1119 of file iterator4d_range.hpp.
|
inline |
Postdecrement a const_iterator4d_range. Iterate to the previous location inside the Range4d.
Definition at line 1182 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range substraction.
d | difference_type |
Definition at line 1320 of file iterator4d_range.hpp.
|
inline |
Definition at line 1017 of file iterator4d_range.hpp.
|
inline |
Assign a const_iterator4d_range.
Assign elements of const_iterator4d_range in o.
o | const_iterator4d_range to get the values from. |
Definition at line 985 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator. Equivalent to *(k + d) = t.
d | difference_type. |
Definition at line 1396 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator. Equivalent to *(k + d) = t.
d | 3d point offset for the dimensions 1,2 and 3. |
Definition at line 1414 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator. Equivalent to *(k + d) = t.
d | 2d point offset for the dimensions 1 and 2. |
Definition at line 1431 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator. Equivalent to *(k + n) = t.
n | offset for the first dimension. |
Definition at line 1447 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slab | slab offset. |
slice | slice offset. |
row | offset. |
Definition at line 1539 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slab | slab offset. |
slice | slice offset. |
row | offset. |
Definition at line 1558 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slice | slice offset. |
row | offset. |
col | offset. |
Definition at line 1468 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slice | slice offset. |
row | offset. |
col | offset. |
Definition at line 1487 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slab | slab offset. |
row | offset. |
col | offset. |
Definition at line 1503 of file iterator4d_range.hpp.
|
inline |
const_iterator4d_range element assignment operator.
slab | slab offset. |
row | offset. |
col | offset. |
Definition at line 1522 of file iterator4d_range.hpp.
|
inline |
Access to the first subscript of the current const_iterator4d_range.
Definition at line 1619 of file iterator4d_range.hpp.
|
inline |
Access to the first subscript of the current const_iterator4d_range.
Definition at line 1610 of file iterator4d_range.hpp.
|
inline |
Access to the second subscript of the current const_iterator4d_range.
Definition at line 1628 of file iterator4d_range.hpp.
|
inline |
Access to the third subscript of the current const_iterator4d_range.
Definition at line 1647 of file iterator4d_range.hpp.
|
inline |
Access to the fourth subscript of the current const_iterator4d_range.
Definition at line 1666 of file iterator4d_range.hpp.
Inequality operator.
i1 | first const_iterator4d_range. |
i2 | second const_iterator4d_range. |
Definition at line 1218 of file iterator4d_range.hpp.
|
friend |
const_iterator4d_range difference operator.
i1 | first const_iterator4d_range. |
i2 | second const_iterator4d_range. |
Definition at line 1373 of file iterator4d_range.hpp.
< operator.
i1 | first const_iterator4d_range. |
i2 | second const_iterator4d_range. |
Definition at line 1237 of file iterator4d_range.hpp.
<= operator.
i1 | first const_iterator4d_range. |
i2 | second const_iterator4d_range. |
Definition at line 1264 of file iterator4d_range.hpp.
Equality operator.
i1 | first const_iterator4d_range. |
i2 | second const_iterator4d_range. |
Definition at line 1203 of file iterator4d_range.hpp.
operator.
i1 | first const_iterator4d_range. |
i2 | second const_iterator4d_range. |
Definition at line 1250 of file iterator4d_range.hpp.
>= operator.
i1 | first const_iterator4d_range. |
i2 | second const_iterator4d_range. |
Definition at line 1278 of file iterator4d_range.hpp.