Information
MediaSupport
RSSOther Adobe ProjectsOther Resources |
Pixel IteratorsIterators operating on pixels.
More... |
Modules | |
Planar Pointers | |
Iterator Traits | |
Byte-level operations | |
Classes | |
class | dereference_iterator_adaptor< IT, D_FN > |
An adaptor over an existing iterator that provides for custom filter on dereferencing the object. More... | |
class | pixel_2d_locator< S_IT > |
Support for 2D random access of the pixels of an image. More... | |
class | pixel_image_iterator< LOC2 > |
Provides 1D random-access navigation to the pixels of the image. More... | |
class | pixel_step_iterator< IT > |
Pixel iterator with dynamically specified step in bytes. More... | |
make_step_iterator | |
Constructs a step iterator from a base iterator and a step. To construct a step iterator from a given iterator IT and a given step, if IT does not already have a dynamic step, we wrap it in a pixel_step_iterator. Otherwise we do a compile-time traversal of the chain of iterator adaptors to locate the step iterator and then set it step to the new one.
The step iterator of IT is not always pixel_step_iterator<IT>. For example, IT may already be a pixel step iterator, in which case it will be inefficient to stack them; we can obtain the same result by multiplying their steps. Note that for IT to be a step iterator it does not necessarily have to have the form pixel_step_iterator<J>. The step iterator can be wrapped inside another iterator. Also, it may not have the type pixel_step_iterator, but it could be a user-provided type. We know that IT is a step iterator if iterator_is_step<IT>() is true. | |
template<typename I> | |
pixel_iterator_traits< I >::dynamic_step_t | make_step_iterator (const pixel_step_iterator< I > &it, std::ptrdiff_t step) |
template<typename IC, typename C> | |
pixel_step_iterator< planar_ptr< IC, C > > | make_step_iterator (const planar_ptr< IC, C > &it, std::ptrdiff_t step) |
template<typename T, typename C> | |
pixel_step_iterator< const pixel< T, C > * > | make_step_iterator (const pixel< T, C > *it, std::ptrdiff_t step) |
template<typename T, typename C> | |
pixel_step_iterator< pixel< T, C > * > | make_step_iterator (pixel< T, C > *it, std::ptrdiff_t step) |
template<typename I> | |
pixel_iterator_traits< I >::dynamic_step_t | make_step_iterator (const I &it, std::ptrdiff_t step) |
|
for dereference_iterator_adaptor, pixel_image_iterator, etc.
Definition at line 248 of file metafunctions.hpp. |
|
for pixel<T,C>* Definition at line 254 of file metafunctions.hpp. |
|
for const pixel<T,C>* Definition at line 260 of file metafunctions.hpp. |
|
for planar_ptr<IC,C> Definition at line 266 of file metafunctions.hpp. |
|
Definition at line 272 of file metafunctions.hpp. |