windows::Win32::UI::ColorSystem

Trait IDeviceModelPlugIn_Impl

pub trait IDeviceModelPlugIn_Impl: IUnknownImpl {
    // Required methods
    fn Initialize(
        &self,
        bstrxml: &BSTR,
        cnummodels: u32,
        imodelposition: u32,
    ) -> Result<()>;
    fn GetNumChannels(&self) -> Result<u32>;
    fn DeviceToColorimetricColors(
        &self,
        ccolors: u32,
        cchannels: u32,
        pdevicevalues: *const f32,
        pxyzcolors: *mut XYZColorF,
    ) -> Result<()>;
    fn ColorimetricToDeviceColors(
        &self,
        ccolors: u32,
        cchannels: u32,
        pxyzcolors: *const XYZColorF,
    ) -> Result<f32>;
    fn ColorimetricToDeviceColorsWithBlack(
        &self,
        ccolors: u32,
        cchannels: u32,
        pxyzcolors: *const XYZColorF,
        pblackinformation: *const BlackInformation,
    ) -> Result<f32>;
    fn SetTransformDeviceModelInfo(
        &self,
        imodelposition: u32,
        pidevicemodelother: Ref<'_, IDeviceModelPlugIn>,
    ) -> Result<()>;
    fn GetPrimarySamples(
        &self,
        pprimarycolor: *mut PrimaryXYZColors,
    ) -> Result<()>;
    fn GetGamutBoundaryMeshSize(
        &self,
        pnumvertices: *mut u32,
        pnumtriangles: *mut u32,
    ) -> Result<()>;
    fn GetGamutBoundaryMesh(
        &self,
        cchannels: u32,
        cvertices: u32,
        ctriangles: u32,
        pvertices: *mut f32,
        ptriangles: *mut GamutShellTriangle,
    ) -> Result<()>;
    fn GetNeutralAxisSize(&self) -> Result<u32>;
    fn GetNeutralAxis(
        &self,
        ccolors: u32,
        pxyzcolors: *mut XYZColorF,
    ) -> Result<()>;
}

Required Methods§

fn Initialize( &self, bstrxml: &BSTR, cnummodels: u32, imodelposition: u32, ) -> Result<()>

fn GetNumChannels(&self) -> Result<u32>

fn DeviceToColorimetricColors( &self, ccolors: u32, cchannels: u32, pdevicevalues: *const f32, pxyzcolors: *mut XYZColorF, ) -> Result<()>

fn ColorimetricToDeviceColors( &self, ccolors: u32, cchannels: u32, pxyzcolors: *const XYZColorF, ) -> Result<f32>

fn ColorimetricToDeviceColorsWithBlack( &self, ccolors: u32, cchannels: u32, pxyzcolors: *const XYZColorF, pblackinformation: *const BlackInformation, ) -> Result<f32>

fn SetTransformDeviceModelInfo( &self, imodelposition: u32, pidevicemodelother: Ref<'_, IDeviceModelPlugIn>, ) -> Result<()>

fn GetPrimarySamples(&self, pprimarycolor: *mut PrimaryXYZColors) -> Result<()>

fn GetGamutBoundaryMeshSize( &self, pnumvertices: *mut u32, pnumtriangles: *mut u32, ) -> Result<()>

fn GetGamutBoundaryMesh( &self, cchannels: u32, cvertices: u32, ctriangles: u32, pvertices: *mut f32, ptriangles: *mut GamutShellTriangle, ) -> Result<()>

fn GetNeutralAxisSize(&self) -> Result<u32>

fn GetNeutralAxis(&self, ccolors: u32, pxyzcolors: *mut XYZColorF) -> Result<()>

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.

Implementors§