pub trait IMediaObject_Impl: Sized {
Show 21 methods // Required methods fn GetStreamCount( &self, pcinputstreams: *mut u32, pcoutputstreams: *mut u32 ) -> Result<()>; fn GetInputStreamInfo(&self, dwinputstreamindex: u32) -> Result<u32>; fn GetOutputStreamInfo(&self, dwoutputstreamindex: u32) -> Result<u32>; fn GetInputType( &self, dwinputstreamindex: u32, dwtypeindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>; fn GetOutputType( &self, dwoutputstreamindex: u32, dwtypeindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>; fn SetInputType( &self, dwinputstreamindex: u32, pmt: *const DMO_MEDIA_TYPE, dwflags: u32 ) -> Result<()>; fn SetOutputType( &self, dwoutputstreamindex: u32, pmt: *const DMO_MEDIA_TYPE, dwflags: u32 ) -> Result<()>; fn GetInputCurrentType( &self, dwinputstreamindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>; fn GetOutputCurrentType( &self, dwoutputstreamindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>; fn GetInputSizeInfo( &self, dwinputstreamindex: u32, pcbsize: *mut u32, pcbmaxlookahead: *mut u32, pcbalignment: *mut u32 ) -> Result<()>; fn GetOutputSizeInfo( &self, dwoutputstreamindex: u32, pcbsize: *mut u32, pcbalignment: *mut u32 ) -> Result<()>; fn GetInputMaxLatency(&self, dwinputstreamindex: u32) -> Result<i64>; fn SetInputMaxLatency( &self, dwinputstreamindex: u32, rtmaxlatency: i64 ) -> Result<()>; fn Flush(&self) -> Result<()>; fn Discontinuity(&self, dwinputstreamindex: u32) -> Result<()>; fn AllocateStreamingResources(&self) -> Result<()>; fn FreeStreamingResources(&self) -> Result<()>; fn GetInputStatus(&self, dwinputstreamindex: u32) -> Result<u32>; fn ProcessInput( &self, dwinputstreamindex: u32, pbuffer: Option<&IMediaBuffer>, dwflags: u32, rttimestamp: i64, rttimelength: i64 ) -> Result<()>; fn ProcessOutput( &self, dwflags: u32, coutputbuffercount: u32, poutputbuffers: *mut DMO_OUTPUT_DATA_BUFFER, pdwstatus: *mut u32 ) -> Result<()>; fn Lock(&self, block: i32) -> Result<()>;
}

Required Methods§

fn GetStreamCount( &self, pcinputstreams: *mut u32, pcoutputstreams: *mut u32 ) -> Result<()>

fn GetInputStreamInfo(&self, dwinputstreamindex: u32) -> Result<u32>

fn GetOutputStreamInfo(&self, dwoutputstreamindex: u32) -> Result<u32>

fn GetInputType( &self, dwinputstreamindex: u32, dwtypeindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>

fn GetOutputType( &self, dwoutputstreamindex: u32, dwtypeindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>

fn SetInputType( &self, dwinputstreamindex: u32, pmt: *const DMO_MEDIA_TYPE, dwflags: u32 ) -> Result<()>

fn SetOutputType( &self, dwoutputstreamindex: u32, pmt: *const DMO_MEDIA_TYPE, dwflags: u32 ) -> Result<()>

fn GetInputCurrentType( &self, dwinputstreamindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>

fn GetOutputCurrentType( &self, dwoutputstreamindex: u32, pmt: *mut DMO_MEDIA_TYPE ) -> Result<()>

fn GetInputSizeInfo( &self, dwinputstreamindex: u32, pcbsize: *mut u32, pcbmaxlookahead: *mut u32, pcbalignment: *mut u32 ) -> Result<()>

fn GetOutputSizeInfo( &self, dwoutputstreamindex: u32, pcbsize: *mut u32, pcbalignment: *mut u32 ) -> Result<()>

fn GetInputMaxLatency(&self, dwinputstreamindex: u32) -> Result<i64>

fn SetInputMaxLatency( &self, dwinputstreamindex: u32, rtmaxlatency: i64 ) -> Result<()>

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

fn Discontinuity(&self, dwinputstreamindex: u32) -> Result<()>

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

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

fn GetInputStatus(&self, dwinputstreamindex: u32) -> Result<u32>

fn ProcessInput( &self, dwinputstreamindex: u32, pbuffer: Option<&IMediaBuffer>, dwflags: u32, rttimestamp: i64, rttimelength: i64 ) -> Result<()>

fn ProcessOutput( &self, dwflags: u32, coutputbuffercount: u32, poutputbuffers: *mut DMO_OUTPUT_DATA_BUFFER, pdwstatus: *mut u32 ) -> Result<()>

fn Lock(&self, block: i32) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§