pub trait IDeviceModelPlugIn_Impl: Sized {
    // 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: Option<&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: Option<&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<()>

Object Safety§

This trait is not object safe.

Implementors§