Skip to main content

RgbXyzFactory

Trait RgbXyzFactory 

Source
pub(crate) trait RgbXyzFactory<T: Clone + AsPrimitive<usize> + Default> {
    // Required method
    fn make_transform<const LINEAR_CAP: usize, const GAMMA_LUT: usize, const BIT_DEPTH: usize>(
        src_layout: Layout,
        dst_layout: Layout,
        profile: TransformMatrixShaper<T, LINEAR_CAP>,
        transform_options: TransformOptions,
    ) -> Result<Arc<dyn TransformExecutor<T> + Send + Sync>, CmsError>;
}

Required Methods§

Source

fn make_transform<const LINEAR_CAP: usize, const GAMMA_LUT: usize, const BIT_DEPTH: usize>( src_layout: Layout, dst_layout: Layout, profile: TransformMatrixShaper<T, LINEAR_CAP>, transform_options: TransformOptions, ) -> Result<Arc<dyn TransformExecutor<T> + Send + Sync>, CmsError>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl RgbXyzFactory<f32> for f32

Source§

fn make_transform<const LINEAR_CAP: usize, const GAMMA_LUT: usize, const BIT_DEPTH: usize>( src_layout: Layout, dst_layout: Layout, profile: TransformMatrixShaper<f32, LINEAR_CAP>, _: TransformOptions, ) -> Result<Arc<dyn TransformExecutor<f32> + Send + Sync>, CmsError>

Source§

impl RgbXyzFactory<f64> for f64

Source§

fn make_transform<const LINEAR_CAP: usize, const GAMMA_LUT: usize, const BIT_DEPTH: usize>( src_layout: Layout, dst_layout: Layout, profile: TransformMatrixShaper<f64, LINEAR_CAP>, _: TransformOptions, ) -> Result<Arc<dyn TransformExecutor<f64> + Send + Sync>, CmsError>

Source§

impl RgbXyzFactory<u8> for u8

Source§

fn make_transform<const LINEAR_CAP: usize, const GAMMA_LUT: usize, const BIT_DEPTH: usize>( src_layout: Layout, dst_layout: Layout, profile: TransformMatrixShaper<u8, LINEAR_CAP>, _: TransformOptions, ) -> Result<Arc<dyn TransformExecutor<u8> + Send + Sync>, CmsError>

Source§

impl RgbXyzFactory<u16> for u16

Source§

fn make_transform<const LINEAR_CAP: usize, const GAMMA_LUT: usize, const BIT_DEPTH: usize>( src_layout: Layout, dst_layout: Layout, profile: TransformMatrixShaper<u16, LINEAR_CAP>, _: TransformOptions, ) -> Result<Arc<dyn TransformExecutor<u16> + Send + Sync>, CmsError>

Implementors§