SLIP
1.4
|
This is some iterator to iterate a 3d container into two Range defined by the indices and strides of the 3d container. More...
#include <component_iterator3d_range.hpp>
Public Types | |
typedef std::random_access_iterator3d_tag | iterator_category |
typedef MultiComponentContainer3d::value_type | Block |
typedef Block::value_type | value_type |
typedef DPoint3d< int > | difference_type |
typedef value_type * | pointer |
typedef value_type & | reference |
typedef component_iterator3d_range | self |
typedef MultiComponentContainer3d::size_type | size_type |
Public Member Functions | |
reference | operator* () |
Dereference assignment operator. Returns the element that the current component_iterator3d_range i point to. More... | |
pointer | operator-> () |
Constructors & Destructors | |
component_iterator3d_range () | |
Constructs a component_iterator3d_range. More... | |
component_iterator3d_range (MultiComponentContainer3d *c, std::size_t cp, const slip::Range< int > &r1, const slip::Range< int > &r2, const slip::Range< int > &r3) | |
Constructs a component_iterator3d_range. More... | |
component_iterator3d_range (const self &o) | |
Constructs a copy of the component_iterator3d_range o. More... | |
Assignment operators and methods | |
self & | operator= (const self &o) |
Assign a component_iterator3d_range. More... | |
Forward operators addons | |
self & | operator++ () |
Preincrement a component_iterator3d_range. Iterate to the next location inside the Range. More... | |
self | operator++ (int) |
Postincrement a component_iterator3d_range. Iterate to the next location inside the Range3d. More... | |
Bidirectional operators addons | |
self & | operator-- () |
Predecrement a component_iterator3d_range. Iterate to the previous location inside the Range3d. More... | |
self | operator-- (int) |
Postdecrement a component_iterator3d_range. Iterate to the previous location inside the Range3d. More... | |
Indices accessors | |
int | x1 () const |
Access to the first index of the current component_iterator3d_range. More... | |
int | k () const |
Access to the first index of the current component_iterator3d_range. More... | |
int | x2 () const |
Access to the second index of the current component_iterator3d_range. More... | |
int | i () const |
Access to the second index of the current component_iterator3d_range. More... | |
int | x3 () const |
Access to the third index of the current component_iterator3d_range. More... | |
int | j () const |
Access to the third index of the current component_iterator3d_range. More... | |
int | cp () const |
Access to the component index of the current component_iterator3d_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_iterator3d_range operators addons | |
self & | operator+= (const difference_type &d) |
component_iterator3d_range addition. More... | |
self & | operator-= (const difference_type &d) |
component_iterator3d_range substraction. More... | |
self | operator+ (const difference_type &d) |
component_iterator3d_range addition. More... | |
self | operator- (const difference_type &d) |
component_iterator3d_range substraction. More... | |
reference | operator[] (difference_type d) |
component_iterator3d_range element assignment operator. Equivalent to *(i + d) = t. More... | |
MultiComponentContainer3d::component_slice_range_iterator | slice_begin (size_type row, size_type col) |
component_iterator3d_range element assignment operator. More... | |
MultiComponentContainer3d::component_slice_range_iterator | slice_end (size_type row, size_type col) |
component_iterator3d_range element assignment operator. More... | |
MultiComponentContainer3d::component_row_range_iterator | row_begin (size_type slice, size_type row) |
component_iterator3d_range element assignment operator. More... | |
MultiComponentContainer3d::component_row_range_iterator | row_end (size_type slice, size_type row) |
component_iterator3d_range element assignment operator. More... | |
MultiComponentContainer3d::component_col_range_iterator | col_begin (size_type slice, size_type col) |
component_iterator3d_range element assignment operator. More... | |
MultiComponentContainer3d::component_col_range_iterator | col_end (size_type slice, size_type col) |
component_iterator3d_range element assignment operator. More... | |
difference_type | operator- (const self &i1, const self &i2) |
component_iterator3d_range difference operator. More... | |
This is some iterator to iterate a 3d container into two Range defined by the indices and strides of the 3d container.
MultiComponentContainer3d | Type of 3d container in the component_iterator3d_range |
N | number of elements in one block |
Definition at line 111 of file component_iterator3d_range.hpp.
typedef MultiComponentContainer3d::value_type slip::component_iterator3d_range< MultiComponentContainer3d, N >::Block |
Definition at line 116 of file component_iterator3d_range.hpp.
typedef DPoint3d<int> slip::component_iterator3d_range< MultiComponentContainer3d, N >::difference_type |
Definition at line 118 of file component_iterator3d_range.hpp.
typedef std::random_access_iterator3d_tag slip::component_iterator3d_range< MultiComponentContainer3d, N >::iterator_category |
Definition at line 115 of file component_iterator3d_range.hpp.
typedef value_type* slip::component_iterator3d_range< MultiComponentContainer3d, N >::pointer |
Definition at line 119 of file component_iterator3d_range.hpp.
typedef value_type& slip::component_iterator3d_range< MultiComponentContainer3d, N >::reference |
Definition at line 120 of file component_iterator3d_range.hpp.
typedef component_iterator3d_range slip::component_iterator3d_range< MultiComponentContainer3d, N >::self |
Definition at line 122 of file component_iterator3d_range.hpp.
typedef MultiComponentContainer3d::size_type slip::component_iterator3d_range< MultiComponentContainer3d, N >::size_type |
Definition at line 124 of file component_iterator3d_range.hpp.
typedef Block::value_type slip::component_iterator3d_range< MultiComponentContainer3d, N >::value_type |
Definition at line 117 of file component_iterator3d_range.hpp.
|
inline |
Constructs a component_iterator3d_range.
Definition at line 134 of file component_iterator3d_range.hpp.
|
inline |
Constructs a component_iterator3d_range.
c | pointer to an existing 3d 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 |
Definition at line 150 of file component_iterator3d_range.hpp.
|
inline |
Constructs a copy of the component_iterator3d_range o.
o | component_iterator3d_range to copy. |
Definition at line 167 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range element assignment operator.
slice | offset. |
row | offset. |
Definition at line 625 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range element assignment operator.
slice | offset. |
row | offset. |
Definition at line 640 of file component_iterator3d_range.hpp.
|
inline |
Access to the component index of the current component_iterator3d_range.
Definition at line 715 of file component_iterator3d_range.hpp.
|
inline |
Access to the second index of the current component_iterator3d_range.
Definition at line 687 of file component_iterator3d_range.hpp.
|
inline |
Access to the third index of the current component_iterator3d_range.
Definition at line 705 of file component_iterator3d_range.hpp.
|
inline |
Access to the first index of the current component_iterator3d_range.
Definition at line 668 of file component_iterator3d_range.hpp.
|
inline |
Dereference assignment operator. Returns the element that the current component_iterator3d_range i point to.
Definition at line 211 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range addition.
d | difference_type |
Definition at line 491 of file component_iterator3d_range.hpp.
|
inline |
Preincrement a component_iterator3d_range. Iterate to the next location inside the Range.
Definition at line 232 of file component_iterator3d_range.hpp.
|
inline |
Postincrement a component_iterator3d_range. Iterate to the next location inside the Range3d.
Definition at line 272 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range addition.
d | difference_type |
Definition at line 453 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range substraction.
d | difference_type |
Definition at line 506 of file component_iterator3d_range.hpp.
|
inline |
Predecrement a component_iterator3d_range. Iterate to the previous location inside the Range3d.
Definition at line 291 of file component_iterator3d_range.hpp.
|
inline |
Postdecrement a component_iterator3d_range. Iterate to the previous location inside the Range3d.
Definition at line 333 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range substraction.
d | difference_type |
Definition at line 472 of file component_iterator3d_range.hpp.
|
inline |
Definition at line 217 of file component_iterator3d_range.hpp.
|
inline |
Assign a component_iterator3d_range.
Assign elements of component_iterator3d_range in o.
o | component_iterator3d_range to get the values from. |
Definition at line 186 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range element assignment operator. Equivalent to *(i + d) = t.
d | difference_type. |
Definition at line 543 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range element assignment operator.
slice | offset. |
row | offset. |
Definition at line 593 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range element assignment operator.
slice | offset. |
row | offset. |
Definition at line 609 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range element assignment operator.
row | offset. |
col | offset. |
Definition at line 562 of file component_iterator3d_range.hpp.
|
inline |
component_iterator3d_range element assignment operator.
row | offset. |
col | offset. |
Definition at line 578 of file component_iterator3d_range.hpp.
|
inline |
Access to the first index of the current component_iterator3d_range.
Definition at line 659 of file component_iterator3d_range.hpp.
|
inline |
Access to the second index of the current component_iterator3d_range.
Definition at line 678 of file component_iterator3d_range.hpp.
|
inline |
Access to the third index of the current component_iterator3d_range.
Definition at line 696 of file component_iterator3d_range.hpp.
|
friend |
Inequality operator.
i1 | first component_iterator3d_range. |
i2 | second component_iterator3d_range. |
Definition at line 370 of file component_iterator3d_range.hpp.
|
friend |
component_iterator3d_range difference operator.
i1 | first component_iterator3d_range. |
i2 | second component_iterator3d_range. |
Definition at line 522 of file component_iterator3d_range.hpp.
|
friend |
< operator.
i1 | first iterator3d_box. |
i2 | second iterator3d_box. |
Definition at line 390 of file component_iterator3d_range.hpp.
|
friend |
<= operator.
i1 | first iterator3d_box. |
i2 | second iterator3d_box. |
Definition at line 418 of file component_iterator3d_range.hpp.
|
friend |
Equality operator.
i1 | first component_iterator3d_range. |
i2 | second component_iterator3d_range. |
Definition at line 354 of file component_iterator3d_range.hpp.
|
friend |
operator.
i1 | first iterator3d_box. |
i2 | second iterator3d_box. |
Definition at line 404 of file component_iterator3d_range.hpp.
|
friend |
>= operator.
i1 | first iterator3d_box. |
i2 | second iterator3d_box. |
Definition at line 432 of file component_iterator3d_range.hpp.