Struct _KUSB_DRIVER_API

Source
#[repr(C)]
pub struct _KUSB_DRIVER_API {
Show 41 fields pub Info: KUSB_DRIVER_API_INFO, pub Init: Option<unsafe extern "C" fn(arg1: *mut KUSB_HANDLE, arg2: KLST_DEVINFO_HANDLE) -> BOOL>, pub Free: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE) -> BOOL>, pub ClaimInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL) -> BOOL>, pub ReleaseInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL) -> BOOL>, pub SetAltInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL, arg4: UCHAR) -> BOOL>, pub GetAltInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL, arg4: PUCHAR) -> BOOL>, pub GetDescriptor: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: USHORT, arg5: PUCHAR, arg6: UINT, arg7: PUINT) -> BOOL>, pub ControlTransfer: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: WINUSB_SETUP_PACKET, arg3: PUCHAR, arg4: UINT, arg5: PUINT, arg6: LPOVERLAPPED) -> BOOL>, pub SetPowerPolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UINT, arg3: UINT, arg4: PVOID) -> BOOL>, pub GetPowerPolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UINT, arg3: PUINT, arg4: PVOID) -> BOOL>, pub SetConfiguration: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>, pub GetConfiguration: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: PUCHAR) -> BOOL>, pub ResetDevice: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE) -> BOOL>, pub Initialize: Option<unsafe extern "C" fn(arg1: HANDLE, arg2: *mut KUSB_HANDLE) -> BOOL>, pub SelectInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL) -> BOOL>, pub GetAssociatedInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: *mut KUSB_HANDLE) -> BOOL>, pub Clone: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: *mut KUSB_HANDLE) -> BOOL>, pub QueryInterfaceSettings: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUSB_INTERFACE_DESCRIPTOR) -> BOOL>, pub QueryDeviceInformation: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UINT, arg3: PUINT, arg4: PUCHAR) -> BOOL>, pub SetCurrentAlternateSetting: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>, pub GetCurrentAlternateSetting: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: PUCHAR) -> BOOL>, pub QueryPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: PWINUSB_PIPE_INFORMATION) -> BOOL>, pub SetPipePolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UINT, arg4: UINT, arg5: PVOID) -> BOOL>, pub GetPipePolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UINT, arg4: PUINT, arg5: PVOID) -> BOOL>, pub ReadPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: PUINT, arg6: LPOVERLAPPED) -> BOOL>, pub WritePipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: PUINT, arg6: LPOVERLAPPED) -> BOOL>, pub ResetPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>, pub AbortPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>, pub FlushPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>, pub IsoReadPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: LPOVERLAPPED, arg6: PKISO_CONTEXT) -> BOOL>, pub IsoWritePipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: LPOVERLAPPED, arg6: PKISO_CONTEXT) -> BOOL>, pub GetCurrentFrameNumber: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: PUINT) -> BOOL>, pub GetOverlappedResult: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: LPOVERLAPPED, arg3: PUINT, arg4: BOOL) -> BOOL>, pub GetProperty: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: KUSB_PROPERTY, arg3: PUINT, arg4: PVOID) -> BOOL>, pub IsochReadPipe: Option<unsafe extern "C" fn(arg1: KISOCH_HANDLE, arg2: UINT, arg3: PUINT, arg4: UINT, arg5: LPOVERLAPPED) -> BOOL>, pub IsochWritePipe: Option<unsafe extern "C" fn(arg1: KISOCH_HANDLE, arg2: UINT, arg3: PUINT, arg4: UINT, arg5: LPOVERLAPPED) -> BOOL>, pub QueryPipeEx: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: PWINUSB_PIPE_INFORMATION_EX) -> BOOL>, pub GetSuperSpeedPipeCompanionDescriptor: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: PUSB_SUPERSPEED_ENDPOINT_COMPANION_DESCRIPTOR) -> BOOL>, pub z_F_i_x_e_d: [UCHAR; 160], pub z_FuncSupported: [UCHAR; 40],
}

Fields§

§Info: KUSB_DRIVER_API_INFO§Init: Option<unsafe extern "C" fn(arg1: *mut KUSB_HANDLE, arg2: KLST_DEVINFO_HANDLE) -> BOOL>§Free: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE) -> BOOL>§ClaimInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL) -> BOOL>§ReleaseInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL) -> BOOL>§SetAltInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL, arg4: UCHAR) -> BOOL>§GetAltInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL, arg4: PUCHAR) -> BOOL>§GetDescriptor: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: USHORT, arg5: PUCHAR, arg6: UINT, arg7: PUINT) -> BOOL>§ControlTransfer: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: WINUSB_SETUP_PACKET, arg3: PUCHAR, arg4: UINT, arg5: PUINT, arg6: LPOVERLAPPED) -> BOOL>§SetPowerPolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UINT, arg3: UINT, arg4: PVOID) -> BOOL>§GetPowerPolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UINT, arg3: PUINT, arg4: PVOID) -> BOOL>§SetConfiguration: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>§GetConfiguration: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: PUCHAR) -> BOOL>§ResetDevice: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE) -> BOOL>§Initialize: Option<unsafe extern "C" fn(arg1: HANDLE, arg2: *mut KUSB_HANDLE) -> BOOL>§SelectInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: BOOL) -> BOOL>§GetAssociatedInterface: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: *mut KUSB_HANDLE) -> BOOL>§Clone: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: *mut KUSB_HANDLE) -> BOOL>§QueryInterfaceSettings: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUSB_INTERFACE_DESCRIPTOR) -> BOOL>§QueryDeviceInformation: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UINT, arg3: PUINT, arg4: PUCHAR) -> BOOL>§SetCurrentAlternateSetting: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>§GetCurrentAlternateSetting: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: PUCHAR) -> BOOL>§QueryPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: PWINUSB_PIPE_INFORMATION) -> BOOL>§SetPipePolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UINT, arg4: UINT, arg5: PVOID) -> BOOL>§GetPipePolicy: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UINT, arg4: PUINT, arg5: PVOID) -> BOOL>§ReadPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: PUINT, arg6: LPOVERLAPPED) -> BOOL>§WritePipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: PUINT, arg6: LPOVERLAPPED) -> BOOL>§ResetPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>§AbortPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>§FlushPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR) -> BOOL>§IsoReadPipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: LPOVERLAPPED, arg6: PKISO_CONTEXT) -> BOOL>§IsoWritePipe: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: PUCHAR, arg4: UINT, arg5: LPOVERLAPPED, arg6: PKISO_CONTEXT) -> BOOL>§GetCurrentFrameNumber: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: PUINT) -> BOOL>§GetOverlappedResult: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: LPOVERLAPPED, arg3: PUINT, arg4: BOOL) -> BOOL>§GetProperty: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: KUSB_PROPERTY, arg3: PUINT, arg4: PVOID) -> BOOL>§IsochReadPipe: Option<unsafe extern "C" fn(arg1: KISOCH_HANDLE, arg2: UINT, arg3: PUINT, arg4: UINT, arg5: LPOVERLAPPED) -> BOOL>§IsochWritePipe: Option<unsafe extern "C" fn(arg1: KISOCH_HANDLE, arg2: UINT, arg3: PUINT, arg4: UINT, arg5: LPOVERLAPPED) -> BOOL>§QueryPipeEx: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: PWINUSB_PIPE_INFORMATION_EX) -> BOOL>§GetSuperSpeedPipeCompanionDescriptor: Option<unsafe extern "C" fn(arg1: KUSB_HANDLE, arg2: UCHAR, arg3: UCHAR, arg4: PUSB_SUPERSPEED_ENDPOINT_COMPANION_DESCRIPTOR) -> BOOL>§z_F_i_x_e_d: [UCHAR; 160]§z_FuncSupported: [UCHAR; 40]

Trait Implementations§

Source§

impl Clone for _KUSB_DRIVER_API

Source§

fn clone(&self) -> _KUSB_DRIVER_API

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for _KUSB_DRIVER_API

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for _KUSB_DRIVER_API

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Copy for _KUSB_DRIVER_API

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.