pub struct SpiDevice(/* private fields */);
Implementations§
§impl SpiDevice
impl SpiDevice
pub fn Close(&self) -> Result<()>
pub fn DeviceId(&self) -> Result<HSTRING>
pub fn ConnectionSettings(&self) -> Result<SpiConnectionSettings>
pub fn Write(&self, buffer: &[u8]) -> Result<()>
pub fn Read(&self, buffer: &mut [u8]) -> Result<()>
pub fn TransferSequential( &self, writebuffer: &[u8], readbuffer: &mut [u8], ) -> Result<()>
pub fn TransferFullDuplex( &self, writebuffer: &[u8], readbuffer: &mut [u8], ) -> Result<()>
pub fn GetDeviceSelector() -> Result<HSTRING>
pub fn GetDeviceSelectorFromFriendlyName( friendlyname: &HSTRING, ) -> Result<HSTRING>
pub fn GetBusInfo(busid: &HSTRING) -> Result<SpiBusInfo>
pub fn FromIdAsync<P0>(
busid: &HSTRING,
settings: P0,
) -> Result<IAsyncOperation<SpiDevice>>where
P0: Param<SpiConnectionSettings>,
Trait Implementations§
§impl Interface for SpiDevice
impl Interface for SpiDevice
§const IID: GUID = <ISpiDevice as windows_core::Interface>::IID
const IID: GUID = <ISpiDevice 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 SpiDevice
impl Send for SpiDevice
impl StructuralPartialEq for SpiDevice
impl Sync for SpiDevice
Auto Trait Implementations§
impl Freeze for SpiDevice
impl RefUnwindSafe for SpiDevice
impl Unpin for SpiDevice
impl UnwindSafe for SpiDevice
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
)