Up Next
Go up to Grid Iterators
Go forward to Grid Incidence Iterator Concept

Grid Sequence iterator Concept

Description
A Grid Sequence Iterator lets a Grid Range be seen as a sequence of the iterators element type.
Refinement of
STL Forward Iterator X
Grid Entity
Notation
I is a model of sequence iterator
i, j are objects of type I
Associated types
Name Expression Description
grid type I::grid_type type of the underlying grid, model of Grid
anchor type I::anchor_type type of the underlying grid range, model of Grid Range
element type I::element_type type of the underlying element, model of Grid Element
value type I::value_type synomym for I::element_type
Valid Expressions
Name Expression Type requirements return type
prefix increment ++it;   I&
dereference *it;   I::element_type
equality comparison i == j   bool
validity check i.IsDone();   bool
Expression semantics
Name Expression Precondition Semantics Postcondition
prefix increment ++i; ! i.IsDone() move iterator forward i.IsDone() or *i is a valid grid element
dereference e = *it; ! it.IsDone() access the element it points to E == (*it);
equality comparison i == j &(i.TheGrid()) == &(j.TheGrid()) true if i and j reference the same element: *i == *j  
validity check i.IsDone();   true iff i is past-the-end.  
Complexity guarantees
Refinements
Grid Vertex Iterator
Grid Edge Iterator
Models
Notes
  1. For the existing models, this is currently only partially implemented: postfix increment is missing (it is inefficient because of the temporary object involved), and iterator_traits<> is not (yet) specialized. However, the main property of Forward Iterator, namely support of multiple passes, is satisfied.
See also
Grid   Grid Element   Grid Incidence Iterator


Guntram Berti

Up Next