SLIP
1.4
|
This is some iterator to iterate a 4d container into two Range defined by the indices and strides of the 4d container. More...
#include <component_iterator4d_range.hpp>
Public Types | |
typedef std::random_access_iterator4d_tag | iterator_category |
typedef MultiComponentContainer4d::value_type | Block |
typedef Block::value_type | value_type |
typedef DPoint4d< int > | difference_type |
typedef value_type * | pointer |
typedef value_type & | reference |
typedef component_iterator4d_range | self |
typedef MultiComponentContainer4d::size_type | size_type |
Public Member Functions | |
reference | operator* () |
Dereference assignment operator. Returns the element that the current component_iterator4d_range i point to. More... | |
pointer | operator-> () |
Constructors & Destructors | |
component_iterator4d_range () | |
Constructs a component_iterator4d_range. More... | |
component_iterator4d_range (MultiComponentContainer4d *c, std::size_t cp, const slip::Range< int > &r1, const slip::Range< int > &r2, const slip::Range< int > &r3, const slip::Range< int > &r4) | |
Constructs a component_iterator4d_range. More... | |
component_iterator4d_range (const self &o) | |
Constructs a copy of the component_iterator4d_range o. More... | |
Assignment operators and methods | |
self & | operator= (const self &o) |
Assign a component_iterator4d_range. More... | |
Forward operators addons | |
self & | operator++ () |
Preincrement a component_iterator4d_range. Iterate to the next location inside the Range. More... | |
self | operator++ (int) |
Postincrement a component_iterator4d_range. Iterate to the next location inside the Range4d. More... | |
Bidirectional operators addons | |
self & | operator-- () |
Predecrement a component_iterator4d_range. Iterate to the previous location inside the Range4d. More... | |
self | operator-- (int) |
Postdecrement a component_iterator4d_range. Iterate to the previous location inside the Range4d. More... | |
Indices accessors | |
int | x1 () const |
Access to the first index of the current component_iterator4d_range. More... | |
int | t () const |
Access to the first index of the current component_iterator4d_range. More... | |
int | x2 () const |
Access to the second index of the current component_iterator4d_range. More... | |
int | k () const |
Access to the second index of the current component_iterator4d_range. More... | |
int | x3 () const |
Access to the third index of the current component_iterator4d_range. More... | |
int | i () const |
Access to the third index of the current component_iterator4d_range. More... | |
int | x4 () const |
Access to the fourth index of the current component_iterator4d_range. More... | |
int | j () const |
Access to the fourthindex of the current component_iterator4d_range. More... | |
int | cp () const |
Access to the component index of the current component_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... | |
component_iterator4d_range operators addons | |
self & | operator+= (const difference_type &d) |
component_iterator4d_range addition. More... | |
self & | operator-= (const difference_type &d) |
component_iterator4d_range substraction. More... | |
self | operator+ (const difference_type &d) |
component_iterator4d_range addition. More... | |
self | operator- (const difference_type &d) |
component_iterator4d_range substraction. More... | |
reference | operator[] (difference_type d) |
component_iterator4d_range element assignment operator. Equivalent to *(i + d) = t. More... | |
MultiComponentContainer4d::component_slice_range_iterator | slab_begin (size_type slice, size_type row, size_type col) |
component_iterator4d_range element assignment operator. More... | |
MultiComponentContainer4d::component_slice_range_iterator | slab_end (size_type slice, size_type row, size_type col) |
component_iterator4d_range element assignment operator. More... | |
MultiComponentContainer4d::component_slice_range_iterator | slice_begin (size_type slab, size_type row, size_type col) |
component_iterator4d_range element assignment operator. More... | |
MultiComponentContainer4d::component_slice_range_iterator | slice_end (size_type slab, size_type row, size_type col) |
component_iterator4d_range element assignment operator. More... | |
MultiComponentContainer4d::component_row_range_iterator | row_begin (size_type slab, size_type slice, size_type row) |
component_iterator4d_range element assignment operator. More... | |
MultiComponentContainer4d::component_row_range_iterator | row_end (size_type slab, size_type slice, size_type row) |
component_iterator4d_range element assignment operator. More... | |
MultiComponentContainer4d::component_col_range_iterator | col_begin (size_type slab, size_type slice, size_type col) |
component_iterator4d_range element assignment operator. More... | |
MultiComponentContainer4d::component_col_range_iterator | col_end (size_type slab, size_type slice, size_type col) |
component_iterator4d_range element assignment operator. More... | |
difference_type | operator- (const self &i1, const self &i2) |
component_iterator4d_range difference operator. More... | |
This is some iterator to iterate a 4d container into two Range defined by the indices and strides of the 4d container.
MultiComponentContainer4d | Type of 4d container in the component_iterator4d_range |
N | number of elements in one block* |
Definition at line 107 of file component_iterator4d_range.hpp.
typedef MultiComponentContainer4d::value_type slip::component_iterator4d_range< MultiComponentContainer4d, N >::Block |
Definition at line 112 of file component_iterator4d_range.hpp.
typedef DPoint4d<int> slip::component_iterator4d_range< MultiComponentContainer4d, N >::difference_type |
Definition at line 114 of file component_iterator4d_range.hpp.
typedef std::random_access_iterator4d_tag slip::component_iterator4d_range< MultiComponentContainer4d, N >::iterator_category |
Definition at line 111 of file component_iterator4d_range.hpp.
typedef value_type* slip::component_iterator4d_range< MultiComponentContainer4d, N >::pointer |
Definition at line 115 of file component_iterator4d_range.hpp.
typedef value_type& slip::component_iterator4d_range< MultiComponentContainer4d, N >::reference |
Definition at line 116 of file component_iterator4d_range.hpp.
typedef component_iterator4d_range slip::component_iterator4d_range< MultiComponentContainer4d, N >::self |
Definition at line 118 of file component_iterator4d_range.hpp.
typedef MultiComponentContainer4d::size_type slip::component_iterator4d_range< MultiComponentContainer4d, N >::size_type |
Definition at line 120 of file component_iterator4d_range.hpp.
typedef Block::value_type slip::component_iterator4d_range< MultiComponentContainer4d, N >::value_type |
Definition at line 113 of file component_iterator4d_range.hpp.
|
inline |
Constructs a component_iterator4d_range.
Definition at line 130 of file component_iterator4d_range.hpp.
|
inline |
Constructs a component_iterator4d_range.
c | pointer to an existing 4d container |
cp | index of the component to iterate |
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 149 of file component_iterator4d_range.hpp.
|
inline |
Constructs a copy of the component_iterator4d_range o.
o | component_iterator4d_range to copy. |
Definition at line 169 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slab | offset. |
slice | offset. |
row | offset. |
Definition at line 740 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slab | offset. |
slice | offset. |
row | offset. |
Definition at line 760 of file component_iterator4d_range.hpp.
|
inline |
Access to the component index of the current component_iterator4d_range.
Definition at line 856 of file component_iterator4d_range.hpp.
|
inline |
Access to the third index of the current component_iterator4d_range.
Definition at line 826 of file component_iterator4d_range.hpp.
|
inline |
Access to the fourthindex of the current component_iterator4d_range.
Definition at line 845 of file component_iterator4d_range.hpp.
|
inline |
Access to the second index of the current component_iterator4d_range.
Definition at line 807 of file component_iterator4d_range.hpp.
|
inline |
Dereference assignment operator. Returns the element that the current component_iterator4d_range i point to.
Definition at line 215 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range addition.
d | difference_type |
Definition at line 548 of file component_iterator4d_range.hpp.
|
inline |
Preincrement a component_iterator4d_range. Iterate to the next location inside the Range.
Definition at line 236 of file component_iterator4d_range.hpp.
|
inline |
Postincrement a component_iterator4d_range. Iterate to the next location inside the Range4d.
Definition at line 298 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range addition.
d | difference_type |
Definition at line 502 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range substraction.
d | difference_type |
Definition at line 563 of file component_iterator4d_range.hpp.
|
inline |
Predecrement a component_iterator4d_range. Iterate to the previous location inside the Range4d.
Definition at line 317 of file component_iterator4d_range.hpp.
|
inline |
Postdecrement a component_iterator4d_range. Iterate to the previous location inside the Range4d.
Definition at line 382 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range substraction.
d | difference_type |
Definition at line 525 of file component_iterator4d_range.hpp.
|
inline |
Definition at line 221 of file component_iterator4d_range.hpp.
|
inline |
Assign a component_iterator4d_range.
Assign elements of component_iterator4d_range in o.
o | component_iterator4d_range to get the values from. |
Definition at line 188 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator. Equivalent to *(i + d) = t.
d | difference_type. |
Definition at line 602 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slab | offset. |
slice | offset. |
row | offset. |
Definition at line 701 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slab | offset. |
slice | offset. |
row | offset. |
Definition at line 722 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slice | offset |
row | offset. |
col | offset. |
Definition at line 625 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slice | offset |
row | offset. |
col | offset. |
Definition at line 646 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slab | offset. |
row | offset. |
col | offset. |
Definition at line 663 of file component_iterator4d_range.hpp.
|
inline |
component_iterator4d_range element assignment operator.
slab | offset. |
row | offset. |
col | offset. |
Definition at line 684 of file component_iterator4d_range.hpp.
|
inline |
Access to the first index of the current component_iterator4d_range.
Definition at line 788 of file component_iterator4d_range.hpp.
|
inline |
Access to the first index of the current component_iterator4d_range.
Definition at line 779 of file component_iterator4d_range.hpp.
|
inline |
Access to the second index of the current component_iterator4d_range.
Definition at line 798 of file component_iterator4d_range.hpp.
|
inline |
Access to the third index of the current component_iterator4d_range.
Definition at line 817 of file component_iterator4d_range.hpp.
|
inline |
Access to the fourth index of the current component_iterator4d_range.
Definition at line 836 of file component_iterator4d_range.hpp.
|
friend |
Inequality operator.
i1 | first component_iterator4d_range. |
i2 | second component_iterator4d_range. |
Definition at line 419 of file component_iterator4d_range.hpp.
|
friend |
component_iterator4d_range difference operator.
i1 | first component_iterator4d_range. |
i2 | second component_iterator4d_range. |
Definition at line 579 of file component_iterator4d_range.hpp.
|
friend |
< operator.
i1 | first iterator4d_box. |
i2 | second iterator4d_box. |
Definition at line 439 of file component_iterator4d_range.hpp.
|
friend |
<= operator.
i1 | first iterator4d_box. |
i2 | second iterator4d_box. |
Definition at line 467 of file component_iterator4d_range.hpp.
|
friend |
Equality operator.
i1 | first component_iterator4d_range. |
i2 | second component_iterator4d_range. |
Definition at line 403 of file component_iterator4d_range.hpp.
|
friend |
operator.
i1 | first iterator4d_box. |
i2 | second iterator4d_box. |
Definition at line 453 of file component_iterator4d_range.hpp.
|
friend |
>= operator.
i1 | first iterator4d_box. |
i2 | second iterator4d_box. |
Definition at line 481 of file component_iterator4d_range.hpp.