pub struct IStream(/* private fields */);
Implementations§
§impl IStream
impl IStream
pub unsafe fn Seek( &self, dlibmove: i64, dworigin: STREAM_SEEK, plibnewposition: Option<*mut u64>, ) -> Result<()>
pub unsafe fn SetSize(&self, libnewsize: u64) -> Result<()>
pub unsafe fn CopyTo<P0>(
&self,
pstm: P0,
cb: u64,
pcbread: Option<*mut u64>,
pcbwritten: Option<*mut u64>,
) -> Result<()>where
P0: Param<IStream>,
pub unsafe fn Commit(&self, grfcommitflags: STGC) -> Result<()>
pub unsafe fn Revert(&self) -> Result<()>
pub unsafe fn LockRegion( &self, liboffset: u64, cb: u64, dwlocktype: LOCKTYPE, ) -> Result<()>
pub unsafe fn UnlockRegion( &self, liboffset: u64, cb: u64, dwlocktype: u32, ) -> Result<()>
pub unsafe fn Stat( &self, pstatstg: *mut STATSTG, grfstatflag: STATFLAG, ) -> Result<()>
pub unsafe fn Clone(&self) -> Result<IStream>
Methods from Deref<Target = ISequentialStream>§
pub unsafe fn Read( &self, pv: *mut c_void, cb: u32, pcbread: Option<*mut u32>, ) -> HRESULT
pub unsafe fn Write( &self, pv: *const c_void, cb: u32, pcbwritten: Option<*mut u32>, ) -> HRESULT
Trait Implementations§
§impl From<&IMarshalingStream> for &IStream
impl From<&IMarshalingStream> for &IStream
§fn from(value: &IMarshalingStream) -> Self
fn from(value: &IMarshalingStream) -> Self
Converts to this type from the input type.
§impl From<&IPortableDeviceDataStream> for &IStream
impl From<&IPortableDeviceDataStream> for &IStream
§fn from(value: &IPortableDeviceDataStream) -> Self
fn from(value: &IPortableDeviceDataStream) -> Self
Converts to this type from the input type.
§impl From<&ISpMMSysAudio> for &IStream
impl From<&ISpMMSysAudio> for &IStream
§fn from(value: &ISpMMSysAudio) -> Self
fn from(value: &ISpMMSysAudio) -> Self
Converts to this type from the input type.
§impl From<&ISpStreamFormat> for &IStream
impl From<&ISpStreamFormat> for &IStream
§fn from(value: &ISpStreamFormat) -> Self
fn from(value: &ISpStreamFormat) -> Self
Converts to this type from the input type.
§impl From<&ISpStreamFormatConverter> for &IStream
impl From<&ISpStreamFormatConverter> for &IStream
§fn from(value: &ISpStreamFormatConverter) -> Self
fn from(value: &ISpStreamFormatConverter) -> Self
Converts to this type from the input type.
§impl From<&IStream> for &ISequentialStream
impl From<&IStream> for &ISequentialStream
§impl From<&IStreamAsync> for &IStream
impl From<&IStreamAsync> for &IStream
§fn from(value: &IStreamAsync) -> Self
fn from(value: &IStreamAsync) -> Self
Converts to this type from the input type.
§impl From<&IStreamConcatenate> for &IStream
impl From<&IStreamConcatenate> for &IStream
§fn from(value: &IStreamConcatenate) -> Self
fn from(value: &IStreamConcatenate) -> Self
Converts to this type from the input type.
§impl From<&IStreamInterleave> for &IStream
impl From<&IStreamInterleave> for &IStream
§fn from(value: &IStreamInterleave) -> Self
fn from(value: &IStreamInterleave) -> Self
Converts to this type from the input type.
§impl From<&IStreamPseudoRandomBased> for &IStream
impl From<&IStreamPseudoRandomBased> for &IStream
§fn from(value: &IStreamPseudoRandomBased) -> Self
fn from(value: &IStreamPseudoRandomBased) -> Self
Converts to this type from the input type.
§impl From<&IWICStream> for &IStream
impl From<&IWICStream> for &IStream
§fn from(value: &IWICStream) -> Self
fn from(value: &IWICStream) -> Self
Converts to this type from the input type.
§impl From<IMarshalingStream> for IStream
impl From<IMarshalingStream> for IStream
§fn from(value: IMarshalingStream) -> Self
fn from(value: IMarshalingStream) -> Self
Converts to this type from the input type.
§impl From<IPortableDeviceDataStream> for IStream
impl From<IPortableDeviceDataStream> for IStream
§fn from(value: IPortableDeviceDataStream) -> Self
fn from(value: IPortableDeviceDataStream) -> Self
Converts to this type from the input type.
§impl From<ISpMMSysAudio> for IStream
impl From<ISpMMSysAudio> for IStream
§fn from(value: ISpMMSysAudio) -> Self
fn from(value: ISpMMSysAudio) -> Self
Converts to this type from the input type.
§impl From<ISpStreamFormat> for IStream
impl From<ISpStreamFormat> for IStream
§fn from(value: ISpStreamFormat) -> Self
fn from(value: ISpStreamFormat) -> Self
Converts to this type from the input type.
§impl From<ISpStreamFormatConverter> for IStream
impl From<ISpStreamFormatConverter> for IStream
§fn from(value: ISpStreamFormatConverter) -> Self
fn from(value: ISpStreamFormatConverter) -> Self
Converts to this type from the input type.
§impl From<IStream> for ISequentialStream
impl From<IStream> for ISequentialStream
§impl From<IStreamAsync> for IStream
impl From<IStreamAsync> for IStream
§fn from(value: IStreamAsync) -> Self
fn from(value: IStreamAsync) -> Self
Converts to this type from the input type.
§impl From<IStreamConcatenate> for IStream
impl From<IStreamConcatenate> for IStream
§fn from(value: IStreamConcatenate) -> Self
fn from(value: IStreamConcatenate) -> Self
Converts to this type from the input type.
§impl From<IStreamInterleave> for IStream
impl From<IStreamInterleave> for IStream
§fn from(value: IStreamInterleave) -> Self
fn from(value: IStreamInterleave) -> Self
Converts to this type from the input type.
§impl From<IStreamPseudoRandomBased> for IStream
impl From<IStreamPseudoRandomBased> for IStream
§fn from(value: IStreamPseudoRandomBased) -> Self
fn from(value: IStreamPseudoRandomBased) -> Self
Converts to this type from the input type.
§impl From<IWICStream> for IStream
impl From<IWICStream> for IStream
§fn from(value: IWICStream) -> Self
fn from(value: IWICStream) -> Self
Converts to this type from the input type.
§impl Interface for IStream
impl Interface for IStream
§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 IStream
impl StructuralPartialEq for IStream
Auto Trait Implementations§
impl Freeze for IStream
impl RefUnwindSafe for IStream
impl !Send for IStream
impl !Sync for IStream
impl Unpin for IStream
impl UnwindSafe for IStream
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
)