pub trait IMFContentDecryptionModule_Impl: Sized {
    // Required methods
    fn SetContentEnabler(
        &self,
        contentenabler: Option<&IMFContentEnabler>,
        result: Option<&IMFAsyncResult>,
    ) -> Result<()>;
    fn GetSuspendNotify(&self) -> Result<IMFCdmSuspendNotify>;
    fn SetPMPHostApp(&self, pmphostapp: Option<&IMFPMPHostApp>) -> Result<()>;
    fn CreateSession(
        &self,
        sessiontype: MF_MEDIAKEYSESSION_TYPE,
        callbacks: Option<&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: Option<&IMFContentEnabler>, result: Option<&IMFAsyncResult>, ) -> Result<()>

fn GetSuspendNotify(&self) -> Result<IMFCdmSuspendNotify>

fn SetPMPHostApp(&self, pmphostapp: Option<&IMFPMPHostApp>) -> Result<()>

fn CreateSession( &self, sessiontype: MF_MEDIAKEYSESSION_TYPE, callbacks: Option<&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<()>

Object Safety§

This trait is not object safe.

Implementors§