windows::Win32::Media::Audio::DirectMusic

Trait IDirectMusicSynth_Impl

pub trait IDirectMusicSynth_Impl: IUnknownImpl {
Show 17 methods // Required methods fn Open(&self, pportparams: *mut DMUS_PORTPARAMS8) -> Result<()>; fn Close(&self) -> Result<()>; fn SetNumChannelGroups(&self, dwgroups: u32) -> Result<()>; fn Download( &self, phdownload: *mut HANDLE, pvdata: *mut c_void, pbfree: *mut BOOL, ) -> Result<()>; fn Unload( &self, hdownload: HANDLE, lpfreehandle: isize, huserdata: HANDLE, ) -> Result<()>; fn PlayBuffer( &self, rt: i64, pbbuffer: *mut u8, cbbuffer: u32, ) -> Result<()>; fn GetRunningStats(&self, pstats: *mut DMUS_SYNTHSTATS) -> Result<()>; fn GetPortCaps(&self, pcaps: *mut DMUS_PORTCAPS) -> Result<()>; fn SetMasterClock(&self, pclock: Ref<'_, IReferenceClock>) -> Result<()>; fn GetLatencyClock(&self) -> Result<IReferenceClock>; fn Activate(&self, fenable: BOOL) -> Result<()>; fn SetSynthSink( &self, psynthsink: Ref<'_, IDirectMusicSynthSink>, ) -> Result<()>; fn Render( &self, pbuffer: *mut i16, dwlength: u32, llposition: i64, ) -> Result<()>; fn SetChannelPriority( &self, dwchannelgroup: u32, dwchannel: u32, dwpriority: u32, ) -> Result<()>; fn GetChannelPriority( &self, dwchannelgroup: u32, dwchannel: u32, pdwpriority: *mut u32, ) -> Result<()>; fn GetFormat( &self, pwaveformatex: *mut WAVEFORMATEX, pdwwaveformatexsize: *mut u32, ) -> Result<()>; fn GetAppend(&self, pdwappend: *mut u32) -> Result<()>;
}

Required Methods§

fn Open(&self, pportparams: *mut DMUS_PORTPARAMS8) -> Result<()>

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

fn SetNumChannelGroups(&self, dwgroups: u32) -> Result<()>

fn Download( &self, phdownload: *mut HANDLE, pvdata: *mut c_void, pbfree: *mut BOOL, ) -> Result<()>

fn Unload( &self, hdownload: HANDLE, lpfreehandle: isize, huserdata: HANDLE, ) -> Result<()>

fn PlayBuffer(&self, rt: i64, pbbuffer: *mut u8, cbbuffer: u32) -> Result<()>

fn GetRunningStats(&self, pstats: *mut DMUS_SYNTHSTATS) -> Result<()>

fn GetPortCaps(&self, pcaps: *mut DMUS_PORTCAPS) -> Result<()>

fn SetMasterClock(&self, pclock: Ref<'_, IReferenceClock>) -> Result<()>

fn GetLatencyClock(&self) -> Result<IReferenceClock>

fn Activate(&self, fenable: BOOL) -> Result<()>

fn SetSynthSink(&self, psynthsink: Ref<'_, IDirectMusicSynthSink>) -> Result<()>

fn Render( &self, pbuffer: *mut i16, dwlength: u32, llposition: i64, ) -> Result<()>

fn SetChannelPriority( &self, dwchannelgroup: u32, dwchannel: u32, dwpriority: u32, ) -> Result<()>

fn GetChannelPriority( &self, dwchannelgroup: u32, dwchannel: u32, pdwpriority: *mut u32, ) -> Result<()>

fn GetFormat( &self, pwaveformatex: *mut WAVEFORMATEX, pdwwaveformatexsize: *mut u32, ) -> Result<()>

fn GetAppend(&self, pdwappend: *mut u32) -> Result<()>

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§