Type Alias exr::block::lines::LineRef

source ·
pub type LineRef<'s> = LineSlice<&'s [u8]>;
Expand description

An reference to a single line of pixels. May go across the whole image or just a tile section of it.

This line contains an immutable slice that all samples will be read from.

Aliased Type§

struct LineRef<'s> {
    pub location: LineIndex,
    pub value: &'s [u8],
}

Fields§

§location: LineIndex

Where this line is located inside the image.

§value: &'s [u8]

The raw bytes of the pixel line, either &[u8] or &mut [u8]. Must be re-interpreted as slice of f16, f32, or u32, according to the channel data type.

Implementations§

source§

impl LineRef<'_>

source

pub fn read_samples_into_slice<T: Data>(self, slice: &mut [T]) -> UnitResult

Read the samples (f16, f32, u32 values) from this line value reference. Use read_samples if there is not slice available.

source

pub fn read_samples<T: Data>(&self) -> impl Iterator<Item = Result<T>> + '_

Iterate over all samples in this line, from left to right. Use read_sample_into_slice if you already have a slice of samples.