An iterator that remembers its current X,Y position and invokes a function object with it upon dereferencing. Models PixelIteratorConcept. Used to create virtual image views. Models: StepIteratorConcept, PixelIteratorConcept, PixelBasedConcept, HasDynamicXStepTypeConcept. More...
#include <position_iterator.hpp>
Inherits iterator_facade< position_iterator< Deref, Dim >, Deref::value_type, std::random_access_iterator_tag, Deref::reference, Deref::argument_type::template axis< Dim >::coord_t >.
Public Types | |
|
typedef iterator_facade < position_iterator< Deref, Dim >, typename Deref::value_type, std::random_access_iterator_tag, typename Deref::reference, typename Deref::argument_type::template axis< Dim >::coord_t > | parent_t |
| typedef parent_t::difference_type | difference_type |
| typedef parent_t::reference | reference |
| typedef Deref::argument_type | point_t |
Public Member Functions | |
| position_iterator (const point_t &p, const point_t &step, const Deref &d) | |
| position_iterator (const position_iterator &p) | |
| template<typename D > | |
| position_iterator (const position_iterator< D, Dim > &p) | |
| position_iterator & | operator= (const position_iterator &p) |
| const point_t & | pos () const |
| const point_t & | step () const |
| const Deref & | deref_fn () const |
| void | set_step (difference_type s) |
| reference | operator[] (difference_type d) const |
Friends | |
| template<typename DE , int DI> | |
| struct | position_iterator |
| class | boost::iterator_core_access |
An iterator that remembers its current X,Y position and invokes a function object with it upon dereferencing. Models PixelIteratorConcept. Used to create virtual image views. Models: StepIteratorConcept, PixelIteratorConcept, PixelBasedConcept, HasDynamicXStepTypeConcept.
|
inline |
For some reason operator[] provided by iterator_adaptor returns a custom class that is convertible to reference We require our own reference because it is registered in iterator_traits