Struct framing::ChunkyFrame
[−]
[src]
pub struct ChunkyFrame<T> { /* fields omitted */ }
A chunky frame.
In this format, each pixel is stored contiguously, and the entire image is stored in row-major order. For example, this means that an RGBA image would store the RGBA values of the top-left pixel, then each of the RGBA values of the pixel immediately to the right, and so on, moving down through each row.
Methods
impl<T> ChunkyFrame<T> where
T: AsBytes,
[src]
T: AsBytes,
fn from_bytes(width: usize, height: usize, bytes: Bytes) -> Self
Creates a new frame backed by the provided byte source.
Panics
Panics if the length of the buffer is not
width * height * bytes_per_pixel
.
fn bytes(&self) -> Bytes
Returns a read-only view into the frame's byte source.
This function is not as slow as you'd expect, because Bytes
is
actually reference-counted.
fn new<U>(frame: U) -> Self where
U: Image<Pixel = T> + Sync,
U: Image<Pixel = T> + Sync,
Creates a new frame using the given frame to fill the buffer.
It is guaranteed that the mapping will be called exactly once for
each of the integers in the range [0, width) * [0, height)
.
Trait Implementations
impl<T: Clone> Clone for ChunkyFrame<T>
[src]
fn clone(&self) -> ChunkyFrame<T>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<T: Debug> Debug for ChunkyFrame<T>
[src]
impl<T> Image for ChunkyFrame<T> where
T: AsBytes,
[src]
T: AsBytes,
type Pixel = T
The kind of pixel that the frame is made of.
fn width(&self) -> usize
The width of the frame in pixels.
fn height(&self) -> usize
The height of the frame in pixels.
unsafe fn pixel(&self, x: usize, y: usize) -> Self::Pixel
Gets the pixel at the specified zero-indexed coordinates. Read more