pub trait IMFContentDecryptionModuleSession_Impl: Sized {
    // Required methods
    fn GetSessionId(&self) -> Result<PWSTR>;
    fn GetExpiration(&self) -> Result<f64>;
    fn GetKeyStatuses(
        &self,
        keystatuses: *mut *mut MFMediaKeyStatus,
        numkeystatuses: *mut u32
    ) -> Result<()>;
    fn Load(&self, sessionid: &PCWSTR) -> Result<BOOL>;
    fn GenerateRequest(
        &self,
        initdatatype: &PCWSTR,
        initdata: *const u8,
        initdatasize: u32
    ) -> Result<()>;
    fn Update(&self, response: *const u8, responsesize: u32) -> Result<()>;
    fn Close(&self) -> Result<()>;
    fn Remove(&self) -> Result<()>;
}

Required Methods§

fn GetSessionId(&self) -> Result<PWSTR>

fn GetExpiration(&self) -> Result<f64>

fn GetKeyStatuses( &self, keystatuses: *mut *mut MFMediaKeyStatus, numkeystatuses: *mut u32 ) -> Result<()>

fn Load(&self, sessionid: &PCWSTR) -> Result<BOOL>

fn GenerateRequest( &self, initdatatype: &PCWSTR, initdata: *const u8, initdatasize: u32 ) -> Result<()>

fn Update(&self, response: *const u8, responsesize: u32) -> Result<()>

fn Close(&self) -> Result<()>

fn Remove(&self) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§