The packed pixel row class template. More...
#include <pixel_buffer.hpp>
Public Types | |
typedef detail::const_packed_pixel_proxy < pixel > | const_pixel_proxy |
The immutable packed pixel proxy type. More... | |
typedef detail::packed_pixel_proxy < pixel > | pixel_proxy |
The mutable packed pixel proxy type. More... | |
Public Member Functions | |
packed_pixel_row (size_t size=0) | |
Constructs a pixel row object for size packed pixels. More... | |
const_pixel_proxy | at (size_t index) const |
Returns an immutable proxy the to the pixel at index . More... | |
pixel_proxy | at (size_t index) |
Returns a mutable proxy the to the pixel at index . More... | |
byte * | get_data () |
Returns the starting address of the row. More... | |
const_pixel_proxy | operator[] (size_t index) const |
Returns an immutable proxy the to the pixel at index . More... | |
pixel_proxy | operator[] (size_t index) |
Returns n mutable proxy the to the pixel at index . More... | |
void | resize (size_t size) |
Resizes the pixel row to hold up to size packed pixels. More... | |
size_t | size () const |
Static Private Member Functions | |
static size_t | get_pixels_per_byte () |
Private Attributes | |
size_t | m_size |
std::vector< byte > | m_vec |
The packed pixel row class template.
Stores the pixel row as a std::vector of byte-s, providing access to individual packed pixels via proxy objects.
typedef detail::const_packed_pixel_proxy< pixel > png::packed_pixel_row< pixel >::const_pixel_proxy |
The immutable packed pixel proxy type.
typedef detail::packed_pixel_proxy< pixel > png::packed_pixel_row< pixel >::pixel_proxy |
The mutable packed pixel proxy type.
|
inlineexplicit |
Constructs a pixel row object for size
packed pixels.
References png::packed_pixel_row< pixel >::resize(), and png::packed_pixel_row< pixel >::size().
|
inline |
Returns an immutable proxy the to the pixel at index
.
References png::packed_pixel_row< pixel >::get_pixels_per_byte(), and png::packed_pixel_row< pixel >::m_vec.
|
inline |
Returns a mutable proxy the to the pixel at index
.
References png::packed_pixel_row< pixel >::get_pixels_per_byte(), and png::packed_pixel_row< pixel >::m_vec.
|
inline |
Returns the starting address of the row.
References png::packed_pixel_row< pixel >::m_vec.
Referenced by png::row_traits< packed_pixel_row< pixel > >::get_data().
|
inlinestaticprivate |
Referenced by png::packed_pixel_row< pixel >::at(), png::packed_pixel_row< pixel >::operator[](), and png::packed_pixel_row< pixel >::resize().
|
inline |
Returns an immutable proxy the to the pixel at index
.
The non-checking version.
References png::packed_pixel_row< pixel >::get_pixels_per_byte(), and png::packed_pixel_row< pixel >::m_vec.
|
inline |
Returns n mutable proxy the to the pixel at index
.
The non-checking version.
References png::packed_pixel_row< pixel >::get_pixels_per_byte(), and png::packed_pixel_row< pixel >::m_vec.
|
inline |
Resizes the pixel row to hold up to size
packed pixels.
References png::packed_pixel_row< pixel >::get_pixels_per_byte(), png::packed_pixel_row< pixel >::m_size, png::packed_pixel_row< pixel >::m_vec, and png::packed_pixel_row< pixel >::size().
Referenced by png::packed_pixel_row< pixel >::packed_pixel_row().
|
inline |
References png::packed_pixel_row< pixel >::m_size.
Referenced by png::packed_pixel_row< pixel >::packed_pixel_row(), png::basic_pixel_buffer< packed_index_pixel< bits >, packed_pixel_row< packed_index_pixel< bits > > >::put_row(), and png::packed_pixel_row< pixel >::resize().
|
private |
Referenced by png::packed_pixel_row< pixel >::resize(), and png::packed_pixel_row< pixel >::size().
|
private |