Generic Image Library: bit_aligned_pixel_iterator< NonAlignedPixelReference > Struct Template Reference

###  | #  |

Public Types | Public Member Functions | Friends | List of all members
bit_aligned_pixel_iterator< NonAlignedPixelReference > Struct Template Reference
Pixel Iterator » Models » bit_aligned_pixel_iterator | PixelBased » Models

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

## Detailed Description

template<typename NonAlignedPixelReference>
struct boost::gil::bit_aligned_pixel_iterator< NonAlignedPixelReference >

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.

## Member Function Documentation

## ◆ operator[]()

auto operator[] | ( | difference_type | d | ) | const -> reference
| 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 struct was generated from the following file:

- bit_aligned_pixel_iterator.hpp