pub trait IDeviceIoControl_Impl: Sized {
    // 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: Option<&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: Option<&IDeviceRequestCompletionCallback>, cancelcontext: *mut usize ) -> Result<()>

fn CancelOperation(&self, cancelcontext: usize) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§