windows::Win32::Media::DirectShow

Trait ICaptureGraphBuilder2_Impl

pub trait ICaptureGraphBuilder2_Impl: IUnknownImpl {
    // Required methods
    fn SetFiltergraph(&self, pfg: Ref<'_, IGraphBuilder>) -> Result<()>;
    fn GetFiltergraph(&self) -> Result<IGraphBuilder>;
    fn SetOutputFileName(
        &self,
        ptype: *const GUID,
        lpstrfile: &PCWSTR,
        ppf: OutRef<'_, IBaseFilter>,
        ppsink: OutRef<'_, IFileSinkFilter>,
    ) -> Result<()>;
    fn FindInterface(
        &self,
        pcategory: *const GUID,
        ptype: *const GUID,
        pf: Ref<'_, IBaseFilter>,
        riid: *const GUID,
        ppint: *mut *mut c_void,
    ) -> Result<()>;
    fn RenderStream(
        &self,
        pcategory: *const GUID,
        ptype: *const GUID,
        psource: Ref<'_, IUnknown>,
        pfcompressor: Ref<'_, IBaseFilter>,
        pfrenderer: Ref<'_, IBaseFilter>,
    ) -> Result<()>;
    fn ControlStream(
        &self,
        pcategory: *const GUID,
        ptype: *const GUID,
        pfilter: Ref<'_, IBaseFilter>,
        pstart: *const i64,
        pstop: *const i64,
        wstartcookie: u16,
        wstopcookie: u16,
    ) -> Result<()>;
    fn AllocCapFile(&self, lpstr: &PCWSTR, dwlsize: u64) -> Result<()>;
    fn CopyCaptureFile(
        &self,
        lpwstrold: &PCWSTR,
        lpwstrnew: &PCWSTR,
        fallowescabort: i32,
        pcallback: Ref<'_, IAMCopyCaptureFileProgress>,
    ) -> Result<()>;
    fn FindPin(
        &self,
        psource: Ref<'_, IUnknown>,
        pindir: PIN_DIRECTION,
        pcategory: *const GUID,
        ptype: *const GUID,
        funconnected: BOOL,
        num: i32,
    ) -> Result<IPin>;
}

Required Methods§

fn SetFiltergraph(&self, pfg: Ref<'_, IGraphBuilder>) -> Result<()>

fn GetFiltergraph(&self) -> Result<IGraphBuilder>

fn SetOutputFileName( &self, ptype: *const GUID, lpstrfile: &PCWSTR, ppf: OutRef<'_, IBaseFilter>, ppsink: OutRef<'_, IFileSinkFilter>, ) -> Result<()>

fn FindInterface( &self, pcategory: *const GUID, ptype: *const GUID, pf: Ref<'_, IBaseFilter>, riid: *const GUID, ppint: *mut *mut c_void, ) -> Result<()>

fn RenderStream( &self, pcategory: *const GUID, ptype: *const GUID, psource: Ref<'_, IUnknown>, pfcompressor: Ref<'_, IBaseFilter>, pfrenderer: Ref<'_, IBaseFilter>, ) -> Result<()>

fn ControlStream( &self, pcategory: *const GUID, ptype: *const GUID, pfilter: Ref<'_, IBaseFilter>, pstart: *const i64, pstop: *const i64, wstartcookie: u16, wstopcookie: u16, ) -> Result<()>

fn AllocCapFile(&self, lpstr: &PCWSTR, dwlsize: u64) -> Result<()>

fn CopyCaptureFile( &self, lpwstrold: &PCWSTR, lpwstrnew: &PCWSTR, fallowescabort: i32, pcallback: Ref<'_, IAMCopyCaptureFileProgress>, ) -> Result<()>

fn FindPin( &self, psource: Ref<'_, IUnknown>, pindir: PIN_DIRECTION, pcategory: *const GUID, ptype: *const GUID, funconnected: BOOL, num: i32, ) -> Result<IPin>

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§