Skip to main content

TileBatchDecodeDevice

Trait TileBatchDecodeDevice 

Source
pub trait TileBatchDecodeDevice: ImageCodec {
    type Context: CodecContext;
    type DeviceSurface: DeviceSurface;

    // Provided methods
    fn decode_tile_to_device<'a>(
        ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>,
        pool: &mut Self::Pool,
        input: &'a [u8],
        fmt: PixelFormat,
        backend: BackendRequest,
    ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
       where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface> { ... }
    fn decode_tile_region_to_device<'a>(
        ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>,
        pool: &mut Self::Pool,
        input: &'a [u8],
        fmt: PixelFormat,
        roi: Rect,
        backend: BackendRequest,
    ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
       where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface> { ... }
    fn decode_tile_scaled_to_device<'a>(
        ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>,
        pool: &mut Self::Pool,
        input: &'a [u8],
        fmt: PixelFormat,
        scale: Downscale,
        backend: BackendRequest,
    ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
       where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface> { ... }
    fn decode_tile_region_scaled_to_device<'a>(
        ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>,
        pool: &mut Self::Pool,
        input: &'a [u8],
        fmt: PixelFormat,
        roi: Rect,
        scale: Downscale,
        backend: BackendRequest,
    ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
       where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface> { ... }
}
Expand description

Tile-batch helpers that return synchronous device surfaces.

Required Associated Types§

Source

type Context: CodecContext

Codec-specific context cached across tiles.

Source

type DeviceSurface: DeviceSurface

Device surface returned by decode calls.

Provided Methods§

Source

fn decode_tile_to_device<'a>( ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>, pool: &mut Self::Pool, input: &'a [u8], fmt: PixelFormat, backend: BackendRequest, ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface>,

Decode one tile to the requested backend.

Source

fn decode_tile_region_to_device<'a>( ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>, pool: &mut Self::Pool, input: &'a [u8], fmt: PixelFormat, roi: Rect, backend: BackendRequest, ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface>,

Decode one tile region to the requested backend.

Source

fn decode_tile_scaled_to_device<'a>( ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>, pool: &mut Self::Pool, input: &'a [u8], fmt: PixelFormat, scale: Downscale, backend: BackendRequest, ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface>,

Decode one tile at reduced resolution to the requested backend.

Source

fn decode_tile_region_scaled_to_device<'a>( ctx: &mut DecoderContext<<Self as TileBatchDecodeDevice>::Context>, pool: &mut Self::Pool, input: &'a [u8], fmt: PixelFormat, roi: Rect, scale: Downscale, backend: BackendRequest, ) -> Result<<Self as TileBatchDecodeDevice>::DeviceSurface, Self::Error>
where Self: TileBatchDecodeSubmit<Context = <Self as TileBatchDecodeDevice>::Context, DeviceSurface = <Self as TileBatchDecodeDevice>::DeviceSurface>,

Decode one tile region at reduced resolution to the requested backend.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§