PCL
|
Immutable filter pixel iterator. More...
#include <Image.h>
Inherits pcl::GenericImage< P >::filter_pixel_iterator_base< image_type, iterator_base, sample_pointer, filter_type >.
Public Types | |
using | filter_type = F |
using | image_type = GenericImage< P > |
using | pixel_traits = typename image_type::pixel_traits |
using | sample = typename image_type::sample |
Friends | |
const_filter_pixel_iterator | operator+ (const const_filter_pixel_iterator &i, distance_type delta) noexcept |
const_filter_pixel_iterator | operator+ (distance_type delta, const const_filter_pixel_iterator &i) noexcept |
const_filter_pixel_iterator | operator- (const const_filter_pixel_iterator &i, distance_type delta) noexcept |
bool | operator< (const const_filter_pixel_iterator &i, const const_filter_pixel_iterator &j) noexcept |
bool | operator== (const const_filter_pixel_iterator &i, const const_filter_pixel_iterator &j) noexcept |
An immutable pixel iterator provides read-only, random access to all pixels in an image. A filter pixel iterator uses a predicate object to filter pixels within its iteration range.
Filter Predicates
For an immutable filter pixel iterator, the class template argument F must provide a function call operator of the form:
Each component of the passed vector f is a pointer to a constant pixel sample in the corresponding channel of the iterated image. The function call operator must return true if the pointed pixel is valid in the context of the filter iterator. The filter iterator stores a private instance of F to validate pixels, so the F class must provide also copy constructor semantics, either explicitly or implicitly.
Filter Iterators
Each time a filter iterator is constructed, incremented, decremented, or moved forward or backward, the filter predicate is called to validate the pixel or pixel sample pointed to by the iterator. If the pointed item is not valid, the iterator is incremented or decremented (depending on the operation performed initially) until it finds a valid one, or until it reaches the end of the iteration range, whichever happens first. In this way a filter iterator gives access only to valid items in a completely automatic and transparent fashion.
using pcl::GenericImage< P >::const_filter_pixel_iterator< F >::filter_type = F |
using pcl::GenericImage< P >::const_filter_pixel_iterator< F >::image_type = GenericImage<P> |
using pcl::GenericImage< P >::const_filter_pixel_iterator< F >::pixel_traits = typename image_type::pixel_traits |
using pcl::GenericImage< P >::const_filter_pixel_iterator< F >::sample = typename image_type::sample |
|
default |
Default constructor. Initializes an invalid iterator.
|
inline |
|
inline |
|
default |
Copy constructor.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Moves this iterator on the iterated image by the specified horizontal and vertical increments in pixels, dx and dy respectively, relative to its current position. Positive (negative) dx increments move the iterator rightwards (leftwards). Positive (negative) dy increments move the iterator downwards (upwards).
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Scalar assignment/addition operator. Increments this iterator by a distance delta from its current position. Positive increments cause this iterator to move forward by delta pixel samples. Negative increments move this iterator backward by delta pixel samples. Returns a reference to this iterator.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Scalar assignment/subtraction operator. Decrements this iterator by a distance delta from its current position. Positive increments cause this iterator to move backward by delta pixel samples. Negative increments move this iterator forward by delta pixel samples. Returns a reference to this iterator.
|
default |
Copy assignment operator. Returns a reference to this iterator.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |