A pair of begin/end iterators used for implementing circular iteration. More...
#include <Circulator.H>


Public Types | |
| using | size_type = typename Container::size_type |
| The type that can represent the size of Container. | |
| using | difference_type = typename Container::difference_type |
| The type that represents difference between iterator objects. | |
| using | iterator |
| The container iterator type (const/non-const). | |
| using | reference |
| The reference type (const/non-const). | |
| Public Types inherited from CirculatorBase | |
| enum | direction { NONE , CLOCKWISE , ANTICLOCKWISE } |
| Direction type enumeration. More... | |
Public Member Functions | |
| CirculatorIters () | |
| Default construct. | |
| CirculatorIters (const iterator &begin, const iterator &end) | |
| Construct from begin/end iterators. | |
| CirculatorIters (const CirculatorIters< Container, Const > &rhs) | |
| Copy construct. | |
| bool | empty () const |
| True if begin/end iterators are identical. | |
| size_type | size () const |
| Return the range of the iterator pair. | |
| difference_type | nRotations () const |
| The distance between the iterator and the fulcrum. | |
| bool | circulate (const CirculatorBase::direction dir=CirculatorBase::NONE) |
| Circulate around the list in the given direction. | |
| void | setFulcrumToIterator () |
| Set the fulcrum to the current position of the iterator. | |
| void | setIteratorToFulcrum () |
| Set the iterator to the current position of the fulcrum. | |
| reference | curr () const |
| Dereference the current iterator. | |
| reference | next () const |
| Dereference the next iterator. | |
| reference | prev () const |
| Dereference the previous iterator. | |
| void | operator= (const CirculatorIters< Container, Const > &rhs) |
| Assignment operator for circulators operating on the same container type. | |
| CirculatorIters< Container, Const > & | operator++ () |
| Prefix increment the iterator. | |
| CirculatorIters< Container, Const > | operator++ (int) |
| Postfix increment the iterator. | |
| CirculatorIters< Container, Const > & | operator-- () |
| Prefix decrement the iterator. | |
| CirculatorIters< Container, Const > | operator-- (int) |
| Postfix decrement the iterator. | |
| bool | operator== (const CirculatorIters< Container, Const > &) const |
| Check for equality of this iterator with another iterator that operate on the same container type. | |
| bool | operator!= (const CirculatorIters< Container, Const > &) const |
| Check for inequality of this iterator with another iterator that operate on the same container type. | |
| reference | operator* () const |
| Dereference the iterator. Same as curr(). | |
| reference | operator() () const |
| Dereference the iterator. Same as curr(). | |
| difference_type | operator- (const CirculatorIters< Container, Const > &) const |
| Return the difference between this iterator and another iterator that operate on the same container type. | |
| Public Member Functions inherited from CirculatorBase | |
| CirculatorBase ()=default | |
| Default construct. | |
Protected Member Functions | |
| bool | equal (const CirculatorIters< Container, Const > &rhs) |
| Compare for equality. | |
| void | increment () |
| Move iterator forward. | |
| void | decrement () |
| Move iterator backward. | |
A pair of begin/end iterators used for implementing circular iteration.
Definition at line 111 of file Circulator.H.
| using size_type = typename Container::size_type |
The type that can represent the size of Container.
Definition at line 122 of file Circulator.H.
| using difference_type = typename Container::difference_type |
The type that represents difference between iterator objects.
Definition at line 127 of file Circulator.H.
| using iterator |
The container iterator type (const/non-const).
Definition at line 132 of file Circulator.H.
| using reference |
The reference type (const/non-const).
Definition at line 142 of file Circulator.H.
|
inline |
Default construct.
Definition at line 66 of file CirculatorI.H.
Referenced by CirculatorIters(), equal(), operator-(), operator=(), and operator==().

|
inline |
Construct from begin/end iterators.
Definition at line 76 of file CirculatorI.H.
| CirculatorIters | ( | const CirculatorIters< Container, Const > & | rhs | ) |
Copy construct.
Definition at line 90 of file CirculatorI.H.
References CirculatorIters(), and Foam::rhs().

|
inlineprotected |
Compare for equality.
Definition at line 25 of file CirculatorI.H.
References CirculatorIters(), and Foam::rhs().

|
inlineprotected |
Move iterator forward.
Definition at line 41 of file CirculatorI.H.
Referenced by circulate(), and operator++().

|
inlineprotected |
Move iterator backward.
Definition at line 52 of file CirculatorI.H.
Referenced by circulate(), operator--(), and operator--().

|
inline |
True if begin/end iterators are identical.
Definition at line 105 of file CirculatorI.H.
|
inline |
Return the range of the iterator pair.
Definition at line 113 of file CirculatorI.H.
|
inline |
The distance between the iterator and the fulcrum.
This is equivalent to the number of rotations of the circulator
Definition at line 121 of file CirculatorI.H.
|
inline |
Circulate around the list in the given direction.
Definition at line 128 of file CirculatorI.H.
References CirculatorBase::ANTICLOCKWISE, CirculatorBase::CLOCKWISE, decrement(), and increment().
Referenced by face::compare(), and processorPolyPatch::matchFace().


|
inline |
Set the fulcrum to the current position of the iterator.
Definition at line 147 of file CirculatorI.H.
Referenced by face::compare(), and processorPolyPatch::matchFace().

|
inline |
Set the iterator to the current position of the fulcrum.
Definition at line 154 of file CirculatorI.H.
Referenced by face::compare(), and processorPolyPatch::matchFace().

|
inline |
Dereference the current iterator.
Definition at line 162 of file CirculatorI.H.
|
inline |
Dereference the next iterator.
Definition at line 170 of file CirculatorI.H.
|
inline |
Dereference the previous iterator.
Definition at line 183 of file CirculatorI.H.
|
inline |
Assignment operator for circulators operating on the same container type.
Definition at line 197 of file CirculatorI.H.
References CirculatorIters(), and Foam::rhs().

|
inline |
Prefix increment the iterator.
Wraps iterator to the begin if it reaches the end
Definition at line 216 of file CirculatorI.H.
References increment().

|
inline |
Postfix increment the iterator.
Wraps iterator to the begin if it reaches the end
Definition at line 225 of file CirculatorI.H.
|
inline |
Prefix decrement the iterator.
Wraps iterator to the end if it reaches the beginning
Definition at line 235 of file CirculatorI.H.
References decrement().

|
inline |
Postfix decrement the iterator.
Wraps iterator to the end if it reaches the beginning
Definition at line 244 of file CirculatorI.H.
References decrement().

|
inline |
Check for equality of this iterator with another iterator that operate on the same container type.
Definition at line 253 of file CirculatorI.H.
References CirculatorIters(), and Foam::rhs().

|
inline |
Check for inequality of this iterator with another iterator that operate on the same container type.
Definition at line 263 of file CirculatorI.H.
|
inline |
Dereference the iterator. Same as curr().
Definition at line 274 of file CirculatorI.H.
|
inline |
Dereference the iterator. Same as curr().
Definition at line 282 of file CirculatorI.H.
|
inline |
Return the difference between this iterator and another iterator that operate on the same container type.
Definition at line 290 of file CirculatorI.H.
References CirculatorIters(), and Foam::rhs().
