Trait IMFContentDecryptionModule_Impl
pub trait IMFContentDecryptionModule_Impl: IUnknownImpl {
// Required methods
fn SetContentEnabler(
&self,
contentenabler: Ref<'_, IMFContentEnabler>,
result: Ref<'_, IMFAsyncResult>,
) -> Result<()>;
fn GetSuspendNotify(&self) -> Result<IMFCdmSuspendNotify>;
fn SetPMPHostApp(&self, pmphostapp: Ref<'_, IMFPMPHostApp>) -> Result<()>;
fn CreateSession(
&self,
sessiontype: MF_MEDIAKEYSESSION_TYPE,
callbacks: Ref<'_, IMFContentDecryptionModuleSessionCallbacks>,
) -> Result<IMFContentDecryptionModuleSession>;
fn SetServerCertificate(
&self,
certificate: *const u8,
certificatesize: u32,
) -> Result<()>;
fn CreateTrustedInput(
&self,
contentinitdata: *const u8,
contentinitdatasize: u32,
) -> Result<IMFTrustedInput>;
fn GetProtectionSystemIds(
&self,
systemids: *mut *mut GUID,
count: *mut u32,
) -> Result<()>;
}
Required Methods§
fn SetContentEnabler( &self, contentenabler: Ref<'_, IMFContentEnabler>, result: Ref<'_, IMFAsyncResult>, ) -> Result<()>
fn GetSuspendNotify(&self) -> Result<IMFCdmSuspendNotify>
fn SetPMPHostApp(&self, pmphostapp: Ref<'_, IMFPMPHostApp>) -> Result<()>
fn CreateSession( &self, sessiontype: MF_MEDIAKEYSESSION_TYPE, callbacks: Ref<'_, IMFContentDecryptionModuleSessionCallbacks>, ) -> Result<IMFContentDecryptionModuleSession>
fn SetServerCertificate( &self, certificate: *const u8, certificatesize: u32, ) -> Result<()>
fn CreateTrustedInput( &self, contentinitdata: *const u8, contentinitdatasize: u32, ) -> Result<IMFTrustedInput>
fn GetProtectionSystemIds( &self, systemids: *mut *mut GUID, count: *mut u32, ) -> Result<()>
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.