windows::Win32::Graphics::Direct3D11

Trait ID3D11FunctionLinkingGraph_Impl

pub trait ID3D11FunctionLinkingGraph_Impl: IUnknownImpl {
    // Required methods
    fn CreateModuleInstance(
        &self,
        ppmoduleinstance: OutRef<'_, ID3D11ModuleInstance>,
        pperrorbuffer: OutRef<'_, ID3DBlob>,
    ) -> Result<()>;
    fn SetInputSignature(
        &self,
        pinputparameters: *const D3D11_PARAMETER_DESC,
        cinputparameters: u32,
    ) -> Result<ID3D11LinkingNode>;
    fn SetOutputSignature(
        &self,
        poutputparameters: *const D3D11_PARAMETER_DESC,
        coutputparameters: u32,
    ) -> Result<ID3D11LinkingNode>;
    fn CallFunction(
        &self,
        pmoduleinstancenamespace: &PCSTR,
        pmodulewithfunctionprototype: Ref<'_, ID3D11Module>,
        pfunctionname: &PCSTR,
    ) -> Result<ID3D11LinkingNode>;
    fn PassValue(
        &self,
        psrcnode: Ref<'_, ID3D11LinkingNode>,
        srcparameterindex: i32,
        pdstnode: Ref<'_, ID3D11LinkingNode>,
        dstparameterindex: i32,
    ) -> Result<()>;
    fn PassValueWithSwizzle(
        &self,
        psrcnode: Ref<'_, ID3D11LinkingNode>,
        srcparameterindex: i32,
        psrcswizzle: &PCSTR,
        pdstnode: Ref<'_, ID3D11LinkingNode>,
        dstparameterindex: i32,
        pdstswizzle: &PCSTR,
    ) -> Result<()>;
    fn GetLastError(&self, pperrorbuffer: OutRef<'_, ID3DBlob>) -> Result<()>;
    fn GenerateHlsl(&self, uflags: u32) -> Result<ID3DBlob>;
}

Required Methods§

fn CreateModuleInstance( &self, ppmoduleinstance: OutRef<'_, ID3D11ModuleInstance>, pperrorbuffer: OutRef<'_, ID3DBlob>, ) -> Result<()>

fn SetInputSignature( &self, pinputparameters: *const D3D11_PARAMETER_DESC, cinputparameters: u32, ) -> Result<ID3D11LinkingNode>

fn SetOutputSignature( &self, poutputparameters: *const D3D11_PARAMETER_DESC, coutputparameters: u32, ) -> Result<ID3D11LinkingNode>

fn CallFunction( &self, pmoduleinstancenamespace: &PCSTR, pmodulewithfunctionprototype: Ref<'_, ID3D11Module>, pfunctionname: &PCSTR, ) -> Result<ID3D11LinkingNode>

fn PassValue( &self, psrcnode: Ref<'_, ID3D11LinkingNode>, srcparameterindex: i32, pdstnode: Ref<'_, ID3D11LinkingNode>, dstparameterindex: i32, ) -> Result<()>

fn PassValueWithSwizzle( &self, psrcnode: Ref<'_, ID3D11LinkingNode>, srcparameterindex: i32, psrcswizzle: &PCSTR, pdstnode: Ref<'_, ID3D11LinkingNode>, dstparameterindex: i32, pdstswizzle: &PCSTR, ) -> Result<()>

fn GetLastError(&self, pperrorbuffer: OutRef<'_, ID3DBlob>) -> Result<()>

fn GenerateHlsl(&self, uflags: u32) -> Result<ID3DBlob>

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§