An iterator over non-byte-aligned pixels. Models PixelIteratorConcept, PixelBasedConcept, MemoryBasedIteratorConcept, HasDynamicXStepTypeConcept. More...
#include <bit_aligned_pixel_iterator.hpp>
Inherits iterator_facade< bit_aligned_pixel_iterator< NonAlignedPixelReference >, NonAlignedPixelReference::value_type, std::random_access_iterator_tag, const NonAlignedPixelReference, NonAlignedPixelReference::bit_range_t::difference_type >.
Public Types | |
using | difference_type = typename parent_t::difference_type |
using | reference = typename parent_t::reference |
Public Member Functions | |
bit_aligned_pixel_iterator (const bit_aligned_pixel_iterator &p) | |
bit_aligned_pixel_iterator & | operator= (const bit_aligned_pixel_iterator &p) |
template<typename Ref > | |
bit_aligned_pixel_iterator (const bit_aligned_pixel_iterator< Ref > &p) | |
bit_aligned_pixel_iterator (reference *ref) | |
bit_aligned_pixel_iterator (typename bit_range_t::byte_t *data, int bit_offset=0) | |
auto | operator[] (difference_type d) const -> reference |
auto | operator-> () const -> reference |
auto | bit_range () const -> bit_range_t const & |
auto | bit_range () -> bit_range_t & |
Friends | |
class | boost::iterator_core_access |
An iterator over non-byte-aligned pixels. Models PixelIteratorConcept, PixelBasedConcept, MemoryBasedIteratorConcept, HasDynamicXStepTypeConcept.
An iterator over pixels that correspond to non-byte-aligned bit ranges. Examples of such pixels are single bit grayscale pixel, or a 6-bit RGB 222 pixel.
|
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