Trait ScaleFramebuffer

Source
pub trait ScaleFramebuffer<T = ()> {
    type Error;
    type Context;

    // Required method
    fn scale(
        &mut self,
        scaling: Scale2D,
        format: ImageFormat,
        viewport_size: &Size<u32>,
        source_size: &Size<u32>,
        original_size: &Size<u32>,
        should_mipmap: bool,
        context: &Self::Context,
    ) -> Result<Size<u32>, Self::Error>;

    // Provided methods
    fn scale_framebuffers<P>(
        source_size: Size<u32>,
        viewport_size: Size<u32>,
        original_size: Size<u32>,
        output: &mut [Self],
        feedback: &mut [Self],
        passes: &[P],
        callback: Option<&mut dyn FnMut(usize, &P, &Self, &Self) -> Result<(), Self::Error>>,
    ) -> Result<(), Self::Error>
       where Self: Sized,
             Self::Context: Default,
             P: FilterPassMeta { ... }
    fn scale_framebuffers_with_context<P>(
        source_size: Size<u32>,
        viewport_size: Size<u32>,
        original_size: Size<u32>,
        output: &mut [Self],
        feedback: &mut [Self],
        passes: &[P],
        context: &Self::Context,
        callback: Option<&mut dyn FnMut(usize, &P, &Self, &Self) -> Result<(), Self::Error>>,
    ) -> Result<(), Self::Error>
       where Self: Sized,
             P: FilterPassMeta { ... }
}
Expand description

Trait for owned framebuffer objects that can be scaled.

Required Associated Types§

Required Methods§

Source

fn scale( &mut self, scaling: Scale2D, format: ImageFormat, viewport_size: &Size<u32>, source_size: &Size<u32>, original_size: &Size<u32>, should_mipmap: bool, context: &Self::Context, ) -> Result<Size<u32>, Self::Error>

Scale the framebuffer according to the provided parameters, returning the new size.

Provided Methods§

Source

fn scale_framebuffers<P>( source_size: Size<u32>, viewport_size: Size<u32>, original_size: Size<u32>, output: &mut [Self], feedback: &mut [Self], passes: &[P], callback: Option<&mut dyn FnMut(usize, &P, &Self, &Self) -> Result<(), Self::Error>>, ) -> Result<(), Self::Error>
where Self: Sized, Self::Context: Default, P: FilterPassMeta,

Scale framebuffers with default context.

Source

fn scale_framebuffers_with_context<P>( source_size: Size<u32>, viewport_size: Size<u32>, original_size: Size<u32>, output: &mut [Self], feedback: &mut [Self], passes: &[P], context: &Self::Context, callback: Option<&mut dyn FnMut(usize, &P, &Self, &Self) -> Result<(), Self::Error>>, ) -> Result<(), Self::Error>
where Self: Sized, P: FilterPassMeta,

Scale framebuffers with user provided context.

Implementors§