memory_based_step_iterator Class Template Reference
[step iterators, Models]
#include <step_iterator.hpp>
List of all members.
Detailed Description
template<typename Iterator>
 class boost::gil::memory_based_step_iterator< Iterator >
Iterator with dynamically specified step in memory units (bytes or bits). Models 
StepIteratorConcept, 
IteratorAdaptorConcept, 
MemoryBasedIteratorConcept, 
PixelIteratorConcept, 
HasDynamicXStepTypeConcept. 
MEMORY-BASED STEP ITERATOR
A refinement of step_iterator_adaptor that uses a dynamic parameter for the step which is specified in memory units, such as bytes or bits
Pixel step iterators are used to provide iteration over non-adjacent pixels. Common use is a vertical traversal, where the step is the row stride.
Another application is as a sub-channel view. For example, a red intensity image over interleaved RGB data would use a step iterator adaptor with step sizeof(channel_t)*3 In the latter example the step size could be fixed at compile time for efficiency. Compile-time fixed step can be implemented by providing a step function object that takes the step as a template 
 | 
 Public Types | 
typedef  
detail::step_iterator_adaptor 
< memory_based_step_iterator 
< Iterator >, Iterator,  
memunit_step_fn< Iterator > >  | parent_t | 
| 
typedef parent_t::reference  | reference | 
| 
typedef parent_t::difference_type  | difference_type | 
| 
typedef Iterator  | x_iterator | 
 Public Member Functions | 
| 
  | memory_based_step_iterator (Iterator it, std::ptrdiff_t memunit_step) | 
| 
template<typename I2>  | 
|   | memory_based_step_iterator (const memory_based_step_iterator< I2 > &it) | 
| reference  | operator[] (difference_type d) const  | 
| 
void  | set_step (std::ptrdiff_t memunit_step) | 
| 
x_iterator &  | base () | 
| 
x_iterator const &  | base () const  | 
Member Function Documentation
      
        
          | reference operator[]            | 
          ( | 
          difference_type  | 
           d           | 
           )  | 
           const [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 
 
 
The documentation for this class was generated from the following file: