Trait mf_IMFMediaSession

Source
pub trait mf_IMFMediaSession: mf_IMFMediaEventGenerator {
    // Provided methods
    fn ClearTopologies(&self) -> HrResult<()> { ... }
    fn Close(&self) -> HrResult<()> { ... }
    fn GetClock(&self) -> HrResult<IMFClock> { ... }
    fn GetFullTopology(
        &self,
        flags: MFSESSION_GETFULLTOPOLOGY,
        topo_id: u64,
    ) -> HrResult<IMFTopology> { ... }
    fn GetSessionCapabilities(&self) -> HrResult<MFSESSIONCAP> { ... }
    fn Pause(&self) -> HrResult<()> { ... }
    fn SetTopology(
        &self,
        flags: MFSESSION_SETTOPOLOGY,
        topology: &impl mf_IMFTopology,
    ) -> HrResult<()> { ... }
    fn Shutdown(&self) -> HrResult<()> { ... }
    fn Start(
        &self,
        time_format: MF_TIME_FORMAT,
        start_position: &PropVariant,
    ) -> HrResult<()> { ... }
    fn Stop(&self) -> HrResult<()> { ... }
}
Available on crate features kernel and mf only.
Expand description

This trait is enabled with the mf feature, and provides methods for IMFMediaSession.

Prefer importing this trait through the prelude:

use winsafe::prelude::*;

Provided Methods§

Source

fn ClearTopologies(&self) -> HrResult<()>

Source

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

Source

fn GetClock(&self) -> HrResult<IMFClock>

Source

fn GetFullTopology( &self, flags: MFSESSION_GETFULLTOPOLOGY, topo_id: u64, ) -> HrResult<IMFTopology>

Source

fn GetSessionCapabilities(&self) -> HrResult<MFSESSIONCAP>

Source

fn Pause(&self) -> HrResult<()>

Source

fn SetTopology( &self, flags: MFSESSION_SETTOPOLOGY, topology: &impl mf_IMFTopology, ) -> HrResult<()>

Source

fn Shutdown(&self) -> HrResult<()>

Source

fn Start( &self, time_format: MF_TIME_FORMAT, start_position: &PropVariant, ) -> HrResult<()>

IMFMediaSession::Start method.

§Examples
use winsafe::{self as w, prelude::*, co};

let session: w::IMFMediaSession; // initialized somewhere

session.Start(
    co::MF_TIME_FORMAT::NULL,
    &w::PropVariant::Empty,
)?;
Source

fn Stop(&self) -> HrResult<()>

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.

Implementors§