SLIP
1.4
|
This is some iterator to iterate a 2d container into two Range defined by the indices and strides of the 2d container. More...
#include <component_iterator2d_range.hpp>
Public Types | |
typedef std::random_access_iterator2d_tag | iterator_category |
typedef MultiComponentContainer2D::value_type | Block |
typedef Block::value_type | value_type |
typedef DPoint2d< int > | difference_type |
typedef value_type * | pointer |
typedef value_type & | reference |
typedef component_iterator2d_range | self |
typedef MultiComponentContainer2D::size_type | size_type |
Public Member Functions | |
reference | operator* () |
Dereference assignment operator. Returns the element that the current component_iterator2d_range i point to. More... | |
pointer | operator-> () |
Constructors & Destructors | |
component_iterator2d_range () | |
Constructs a component_iterator2d_range. More... | |
component_iterator2d_range (MultiComponentContainer2D *c, std::size_t cp, const slip::Range< int > &r1, const slip::Range< int > &r2) | |
Constructs a component_iterator2d_range. More... | |
component_iterator2d_range (const self &o) | |
Constructs a copy of the component_iterator2d_range o. More... | |
Assignment operators and methods | |
self & | operator= (const self &o) |
Assign a component_iterator2d_range. More... | |
Forward operators addons | |
self & | operator++ () |
Preincrement a component_iterator2d_range. Iterate to the next location inside the Range. More... | |
self | operator++ (int) |
Postincrement a component_iterator2d_range. Iterate to the next location inside the Range2d. More... | |
Bidirectional operators addons | |
self & | operator-- () |
Predecrement a component_iterator2d_range. Iterate to the previous location inside the Range2d. More... | |
self | operator-- (int) |
Postdecrement a component_iterator2d_range. Iterate to the previous location inside the Range2d. More... | |
Indices accessors | |
int | x1 () const |
Access to the first index of the current component_iterator2d_range. More... | |
int | i () const |
Access to the first index of the current component_iterator2d_range. More... | |
int | x2 () const |
Access to the second index of the current component_iterator2d_range. More... | |
int | j () const |
Access to the second index of the current component_iterator2d_range. More... | |
int | cp () const |
Access to the component index of the current component_iterator2d_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_iterator2d_range operators addons | |
self & | operator+= (const difference_type &d) |
component_iterator2d_range addition. More... | |
self & | operator-= (const difference_type &d) |
component_iterator2d_range substraction. More... | |
self | operator+ (const difference_type &d) |
component_iterator2d_range addition. More... | |
self | operator- (const difference_type &d) |
component_iterator2d_range substraction. More... | |
reference | operator[] (difference_type d) |
component_iterator2d_range element assignment operator. Equivalent to *(i + d) = t. More... | |
MultiComponentContainer2D::component_row_range_iterator | row_begin (size_type row) |
component_iterator2d_range element assignment operator. More... | |
MultiComponentContainer2D::component_row_range_iterator | row_end (size_type row) |
component_iterator2d_range element assignment operator. More... | |
MultiComponentContainer2D::component_col_range_iterator | col_begin (size_type col) |
component_iterator2d_range element assignment operator. More... | |
MultiComponentContainer2D::component_col_range_iterator | col_end (size_type col) |
component_iterator2d_range element assignment operator. More... | |
difference_type | operator- (const self &i1, const self &i2) |
component_iterator2d_range difference operator. More... | |
This is some iterator to iterate a 2d container into two Range defined by the indices and strides of the 2d container.
MultiComponentContainer2D | Type of 2d container in the component_iterator2d_range |
N | number of elements in one block |
Definition at line 108 of file component_iterator2d_range.hpp.
typedef MultiComponentContainer2D::value_type slip::component_iterator2d_range< MultiComponentContainer2D, N >::Block |
Definition at line 113 of file component_iterator2d_range.hpp.
typedef DPoint2d<int> slip::component_iterator2d_range< MultiComponentContainer2D, N >::difference_type |
Definition at line 115 of file component_iterator2d_range.hpp.
typedef std::random_access_iterator2d_tag slip::component_iterator2d_range< MultiComponentContainer2D, N >::iterator_category |
Definition at line 112 of file component_iterator2d_range.hpp.
typedef value_type* slip::component_iterator2d_range< MultiComponentContainer2D, N >::pointer |
Definition at line 116 of file component_iterator2d_range.hpp.
typedef value_type& slip::component_iterator2d_range< MultiComponentContainer2D, N >::reference |
Definition at line 117 of file component_iterator2d_range.hpp.
typedef component_iterator2d_range slip::component_iterator2d_range< MultiComponentContainer2D, N >::self |
Definition at line 119 of file component_iterator2d_range.hpp.
typedef MultiComponentContainer2D::size_type slip::component_iterator2d_range< MultiComponentContainer2D, N >::size_type |
Definition at line 121 of file component_iterator2d_range.hpp.
typedef Block::value_type slip::component_iterator2d_range< MultiComponentContainer2D, N >::value_type |
Definition at line 114 of file component_iterator2d_range.hpp.
|
inline |
Constructs a component_iterator2d_range.
Definition at line 131 of file component_iterator2d_range.hpp.
|
inline |
Constructs a component_iterator2d_range.
c | pointer to an existing 2d 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 |
Definition at line 146 of file component_iterator2d_range.hpp.
|
inline |
Constructs a copy of the component_iterator2d_range o.
o | component_iterator2d_range to copy. |
Definition at line 157 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range element assignment operator.
row | offset. |
Definition at line 549 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range element assignment operator.
row | offset. |
Definition at line 561 of file component_iterator2d_range.hpp.
|
inline |
Access to the component index of the current component_iterator2d_range.
Definition at line 616 of file component_iterator2d_range.hpp.
|
inline |
Access to the first index of the current component_iterator2d_range.
Definition at line 588 of file component_iterator2d_range.hpp.
|
inline |
Access to the second index of the current component_iterator2d_range.
Definition at line 606 of file component_iterator2d_range.hpp.
|
inline |
Dereference assignment operator. Returns the element that the current component_iterator2d_range i point to.
Definition at line 198 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range addition.
d | difference_type |
Definition at line 456 of file component_iterator2d_range.hpp.
|
inline |
Preincrement a component_iterator2d_range. Iterate to the next location inside the Range.
Definition at line 219 of file component_iterator2d_range.hpp.
|
inline |
Postincrement a component_iterator2d_range. Iterate to the next location inside the Range2d.
Definition at line 254 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range addition.
d | difference_type |
Definition at line 424 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range substraction.
d | difference_type |
Definition at line 471 of file component_iterator2d_range.hpp.
|
inline |
Predecrement a component_iterator2d_range. Iterate to the previous location inside the Range2d.
Definition at line 273 of file component_iterator2d_range.hpp.
|
inline |
Postdecrement a component_iterator2d_range. Iterate to the previous location inside the Range2d.
Definition at line 306 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range substraction.
d | difference_type |
Definition at line 440 of file component_iterator2d_range.hpp.
|
inline |
Definition at line 204 of file component_iterator2d_range.hpp.
|
inline |
Assign a component_iterator2d_range.
Assign elements of component_iterator2d_range in o.
o | component_iterator2d_range to get the values from. |
Definition at line 175 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range element assignment operator. Equivalent to *(i + d) = t.
d | difference_type. |
Definition at line 505 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range element assignment operator.
row | offset. |
Definition at line 522 of file component_iterator2d_range.hpp.
|
inline |
component_iterator2d_range element assignment operator.
row | offset. |
Definition at line 535 of file component_iterator2d_range.hpp.
|
inline |
Access to the first index of the current component_iterator2d_range.
Definition at line 579 of file component_iterator2d_range.hpp.
|
inline |
Access to the second index of the current component_iterator2d_range.
Definition at line 597 of file component_iterator2d_range.hpp.
|
friend |
Inequality operator.
i1 | first component_iterator2d_range. |
i2 | second component_iterator2d_range. |
Definition at line 342 of file component_iterator2d_range.hpp.
|
friend |
component_iterator2d_range difference operator.
i1 | first component_iterator2d_range. |
i2 | second component_iterator2d_range. |
Definition at line 487 of file component_iterator2d_range.hpp.
|
friend |
< operator.
i1 | first iterator2d_box. |
i2 | second iterator2d_box. |
Definition at line 361 of file component_iterator2d_range.hpp.
|
friend |
<= operator.
i1 | first iterator2d_box. |
i2 | second iterator2d_box. |
Definition at line 389 of file component_iterator2d_range.hpp.
|
friend |
Equality operator.
i1 | first component_iterator2d_range. |
i2 | second component_iterator2d_range. |
Definition at line 327 of file component_iterator2d_range.hpp.
|
friend |
operator.
i1 | first iterator2d_box. |
i2 | second iterator2d_box. |
Definition at line 375 of file component_iterator2d_range.hpp.
|
friend |
>= operator.
i1 | first iterator2d_box. |
i2 | second iterator2d_box. |
Definition at line 403 of file component_iterator2d_range.hpp.