Trait IDeviceIoControl_Impl
pub trait IDeviceIoControl_Impl: IUnknownImpl {
// Required methods
fn DeviceIoControlSync(
&self,
iocontrolcode: u32,
inputbuffer: *const u8,
inputbuffersize: u32,
outputbuffer: *mut u8,
outputbuffersize: u32,
bytesreturned: *mut u32,
) -> Result<()>;
fn DeviceIoControlAsync(
&self,
iocontrolcode: u32,
inputbuffer: *const u8,
inputbuffersize: u32,
outputbuffer: *mut u8,
outputbuffersize: u32,
requestcompletioncallback: Ref<'_, IDeviceRequestCompletionCallback>,
cancelcontext: *mut usize,
) -> Result<()>;
fn CancelOperation(&self, cancelcontext: usize) -> Result<()>;
}
Required Methods§
fn DeviceIoControlSync( &self, iocontrolcode: u32, inputbuffer: *const u8, inputbuffersize: u32, outputbuffer: *mut u8, outputbuffersize: u32, bytesreturned: *mut u32, ) -> Result<()>
fn DeviceIoControlAsync( &self, iocontrolcode: u32, inputbuffer: *const u8, inputbuffersize: u32, outputbuffer: *mut u8, outputbuffersize: u32, requestcompletioncallback: Ref<'_, IDeviceRequestCompletionCallback>, cancelcontext: *mut usize, ) -> Result<()>
fn CancelOperation(&self, cancelcontext: usize) -> 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.