Trait windows::Win32::AI::MachineLearning::DirectML::IDMLDevice_Impl
pub trait IDMLDevice_Impl: Sized + IDMLObject_Impl {
// Required methods
fn CheckFeatureSupport(
&self,
feature: DML_FEATURE,
featurequerydatasize: u32,
featurequerydata: *const c_void,
featuresupportdatasize: u32,
featuresupportdata: *mut c_void
) -> Result<()>;
fn CreateOperator(
&self,
desc: *const DML_OPERATOR_DESC,
riid: *const GUID,
ppv: *mut *mut c_void
) -> Result<()>;
fn CompileOperator(
&self,
op: Option<&IDMLOperator>,
flags: DML_EXECUTION_FLAGS,
riid: *const GUID,
ppv: *mut *mut c_void
) -> Result<()>;
fn CreateOperatorInitializer(
&self,
operatorcount: u32,
operators: *const Option<IDMLCompiledOperator>,
riid: *const GUID,
ppv: *mut *mut c_void
) -> Result<()>;
fn CreateCommandRecorder(
&self,
riid: *const GUID,
ppv: *mut *mut c_void
) -> Result<()>;
fn CreateBindingTable(
&self,
desc: *const DML_BINDING_TABLE_DESC,
riid: *const GUID,
ppv: *mut *mut c_void
) -> Result<()>;
fn Evict(
&self,
count: u32,
ppobjects: *const Option<IDMLPageable>
) -> Result<()>;
fn MakeResident(
&self,
count: u32,
ppobjects: *const Option<IDMLPageable>
) -> Result<()>;
fn GetDeviceRemovedReason(&self) -> Result<()>;
fn GetParentDevice(
&self,
riid: *const GUID,
ppv: *mut *mut c_void
) -> Result<()>;
}
Required Methods§
fn CheckFeatureSupport( &self, feature: DML_FEATURE, featurequerydatasize: u32, featurequerydata: *const c_void, featuresupportdatasize: u32, featuresupportdata: *mut c_void ) -> Result<()>
fn CreateOperator( &self, desc: *const DML_OPERATOR_DESC, riid: *const GUID, ppv: *mut *mut c_void ) -> Result<()>
fn CompileOperator( &self, op: Option<&IDMLOperator>, flags: DML_EXECUTION_FLAGS, riid: *const GUID, ppv: *mut *mut c_void ) -> Result<()>
fn CreateOperatorInitializer( &self, operatorcount: u32, operators: *const Option<IDMLCompiledOperator>, riid: *const GUID, ppv: *mut *mut c_void ) -> Result<()>
fn CreateCommandRecorder( &self, riid: *const GUID, ppv: *mut *mut c_void ) -> Result<()>
fn CreateBindingTable( &self, desc: *const DML_BINDING_TABLE_DESC, riid: *const GUID, ppv: *mut *mut c_void ) -> Result<()>
fn Evict( &self, count: u32, ppobjects: *const Option<IDMLPageable> ) -> Result<()>
fn MakeResident( &self, count: u32, ppobjects: *const Option<IDMLPageable> ) -> Result<()>
fn GetDeviceRemovedReason(&self) -> Result<()>
fn GetParentDevice( &self, riid: *const GUID, ppv: *mut *mut c_void ) -> Result<()>
Object Safety§
This trait is not object safe.