Trait IMFASFStreamConfig_Impl
pub trait IMFASFStreamConfig_Impl: IMFAttributes_Impl {
// Required methods
fn GetStreamType(&self) -> Result<GUID>;
fn GetStreamNumber(&self) -> u16;
fn SetStreamNumber(&self, wstreamnum: u16) -> Result<()>;
fn GetMediaType(&self) -> Result<IMFMediaType>;
fn SetMediaType(&self, pimediatype: Ref<'_, IMFMediaType>) -> Result<()>;
fn GetPayloadExtensionCount(&self) -> Result<u16>;
fn GetPayloadExtension(
&self,
wpayloadextensionnumber: u16,
pguidextensionsystemid: *mut GUID,
pcbextensiondatasize: *mut u16,
pbextensionsysteminfo: *mut u8,
pcbextensionsysteminfo: *mut u32,
) -> Result<()>;
fn AddPayloadExtension(
&self,
guidextensionsystemid: &GUID,
cbextensiondatasize: u16,
pbextensionsysteminfo: *const u8,
cbextensionsysteminfo: u32,
) -> Result<()>;
fn RemoveAllPayloadExtensions(&self) -> Result<()>;
fn Clone(&self) -> Result<IMFASFStreamConfig>;
}
Required Methods§
fn GetStreamType(&self) -> Result<GUID>
fn GetStreamNumber(&self) -> u16
fn SetStreamNumber(&self, wstreamnum: u16) -> Result<()>
fn GetMediaType(&self) -> Result<IMFMediaType>
fn SetMediaType(&self, pimediatype: Ref<'_, IMFMediaType>) -> Result<()>
fn GetPayloadExtensionCount(&self) -> Result<u16>
fn GetPayloadExtension( &self, wpayloadextensionnumber: u16, pguidextensionsystemid: *mut GUID, pcbextensiondatasize: *mut u16, pbextensionsysteminfo: *mut u8, pcbextensionsysteminfo: *mut u32, ) -> Result<()>
fn AddPayloadExtension( &self, guidextensionsystemid: &GUID, cbextensiondatasize: u16, pbextensionsysteminfo: *const u8, cbextensionsysteminfo: u32, ) -> Result<()>
fn RemoveAllPayloadExtensions(&self) -> Result<()>
fn Clone(&self) -> Result<IMFASFStreamConfig>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.