pub struct UsbDevice(/* private fields */);
Implementations§
§impl UsbDevice
impl UsbDevice
pub fn Close(&self) -> Result<()>
pub fn SendControlOutTransferAsync<P0, P1>(
&self,
setuppacket: P0,
buffer: P1,
) -> Result<IAsyncOperation<u32>>where
P0: Param<UsbSetupPacket>,
P1: Param<IBuffer>,
pub fn SendControlOutTransferAsyncNoBuffer<P0>(
&self,
setuppacket: P0,
) -> Result<IAsyncOperation<u32>>where
P0: Param<UsbSetupPacket>,
pub fn SendControlInTransferAsync<P0, P1>(
&self,
setuppacket: P0,
buffer: P1,
) -> Result<IAsyncOperation<IBuffer>>where
P0: Param<UsbSetupPacket>,
P1: Param<IBuffer>,
pub fn SendControlInTransferAsyncNoBuffer<P0>(
&self,
setuppacket: P0,
) -> Result<IAsyncOperation<IBuffer>>where
P0: Param<UsbSetupPacket>,
pub fn DefaultInterface(&self) -> Result<UsbInterface>
pub fn DeviceDescriptor(&self) -> Result<UsbDeviceDescriptor>
pub fn Configuration(&self) -> Result<UsbConfiguration>
pub fn GetDeviceSelector( vendorid: u32, productid: u32, winusbinterfaceclass: GUID, ) -> Result<HSTRING>
pub fn GetDeviceSelectorGuidOnly(winusbinterfaceclass: GUID) -> Result<HSTRING>
pub fn GetDeviceSelectorVidPidOnly( vendorid: u32, productid: u32, ) -> Result<HSTRING>
pub fn GetDeviceClassSelector<P0>(usbclass: P0) -> Result<HSTRING>where
P0: Param<UsbDeviceClass>,
pub fn FromIdAsync(deviceid: &HSTRING) -> Result<IAsyncOperation<UsbDevice>>
Trait Implementations§
§impl Interface for UsbDevice
impl Interface for UsbDevice
§const IID: GUID = <IUsbDevice as windows_core::Interface>::IID
const IID: GUID = <IUsbDevice as windows_core::Interface>::IID
The
GUID
associated with the interface.§fn as_raw(&self) -> *mut c_void
fn as_raw(&self) -> *mut c_void
Returns the raw COM interface pointer. The resulting pointer continues to be owned by the
Interface
implementation.§fn into_raw(self) -> *mut c_void
fn into_raw(self) -> *mut c_void
Returns the raw COM interface pointer and releases ownership. It the caller’s responsibility to release the COM interface pointer.
§fn cast<T>(&self) -> Result<T, Error>where
T: Interface,
fn cast<T>(&self) -> Result<T, Error>where
T: Interface,
Attempts to cast the current interface to another interface using
QueryInterface
. Read more§fn cast_to_any<T>(&self) -> Result<&(dyn Any + 'static), Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_to_any<T>(&self) -> Result<&(dyn Any + 'static), Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. Read more§fn is_object<T>(&self) -> boolwhere
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn is_object<T>(&self) -> boolwhere
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
§fn cast_object_ref<T>(&self) -> Result<&<T as ComObjectInner>::Outer, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_object_ref<T>(&self) -> Result<&<T as ComObjectInner>::Outer, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. &MyApp_Impl
, not the inner &MyApp
object. Read more§fn cast_object<T>(&self) -> Result<ComObject<T>, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_object<T>(&self) -> Result<ComObject<T>, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. MyApp_Impl
, not the inner MyApp
object. Read more§fn downgrade(&self) -> Result<Weak<Self>, Error>
fn downgrade(&self) -> Result<Weak<Self>, Error>
Attempts to create a [
Weak
] reference to this object.impl Eq for UsbDevice
impl Send for UsbDevice
impl StructuralPartialEq for UsbDevice
impl Sync for UsbDevice
Auto Trait Implementations§
impl Freeze for UsbDevice
impl RefUnwindSafe for UsbDevice
impl Unpin for UsbDevice
impl UnwindSafe for UsbDevice
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)