Trait resize::px::PixelFormat
source · pub trait PixelFormat: Send + Sync {
type InputPixel: Send + Sync + Copy;
type OutputPixel: Default + Send + Sync + Copy;
type Accumulator: Send + Sync + Copy;
// Required methods
fn new() -> Self::Accumulator;
fn add(
&self,
acc: &mut Self::Accumulator,
inp: Self::InputPixel,
coeff: f32
);
fn add_acc(acc: &mut Self::Accumulator, inp: Self::Accumulator, coeff: f32);
fn into_pixel(&self, acc: Self::Accumulator) -> Self::OutputPixel;
}
Expand description
Use Pixel
presets to specify pixel format.
The trait represents a temporary object that adds pixels together.
Required Associated Types§
sourcetype InputPixel: Send + Sync + Copy
type InputPixel: Send + Sync + Copy
Pixel type in the source image
sourcetype OutputPixel: Default + Send + Sync + Copy
type OutputPixel: Default + Send + Sync + Copy
Pixel type in the destination image (usually the same as Input)
sourcetype Accumulator: Send + Sync + Copy
type Accumulator: Send + Sync + Copy
Temporary struct for the pixel in floating-point
Required Methods§
sourcefn new() -> Self::Accumulator
fn new() -> Self::Accumulator
Create new floating-point pixel
sourcefn add(&self, acc: &mut Self::Accumulator, inp: Self::InputPixel, coeff: f32)
fn add(&self, acc: &mut Self::Accumulator, inp: Self::InputPixel, coeff: f32)
Add new pixel with a given weight (first axis)
sourcefn add_acc(acc: &mut Self::Accumulator, inp: Self::Accumulator, coeff: f32)
fn add_acc(acc: &mut Self::Accumulator, inp: Self::Accumulator, coeff: f32)
Add bunch of accumulated pixels with a weight (second axis)
sourcefn into_pixel(&self, acc: Self::Accumulator) -> Self::OutputPixel
fn into_pixel(&self, acc: Self::Accumulator) -> Self::OutputPixel
Finalize, convert to output pixel format
Object Safety§
This trait is not object safe.