// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ namespace Win32.Media.Audio.XAudio2; /// /// IXAudio2SubmixVoice [NativeTypeName("struct IXAudio2SubmixVoice : IXAudio2Voice")] [NativeInheritance("IXAudio2Voice")] public unsafe partial struct IXAudio2SubmixVoice : IXAudio2SubmixVoice.Interface { public void** lpVtbl; /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(0)] public void GetVoiceDetails(VoiceDetails* pVoiceDetails) { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[0]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pVoiceDetails); #else ((delegate* unmanaged[Stdcall])(lpVtbl[0]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pVoiceDetails); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(1)] public HResult SetOutputVoices(VoiceSends* pSendList) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[1]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pSendList); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[1]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pSendList); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(2)] public HResult SetEffectChain(EffectChain* pEffectChain) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[2]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pEffectChain); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[2]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pEffectChain); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(3)] public HResult EnableEffect(uint EffectIndex, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[3]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[3]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(4)] public HResult DisableEffect(uint EffectIndex, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[4]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[4]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(5)] public void GetEffectState(uint EffectIndex, Bool32* pEnabled) { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[5]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, pEnabled); #else ((delegate* unmanaged[Stdcall])(lpVtbl[5]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, pEnabled); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(6)] public HResult SetEffectParameters(uint EffectIndex, void* pParameters, uint ParametersByteSize, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[6]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, pParameters, ParametersByteSize, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[6]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, pParameters, ParametersByteSize, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(7)] public HResult GetEffectParameters(uint EffectIndex, void* pParameters, uint ParametersByteSize) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[7]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, pParameters, ParametersByteSize); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[7]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), EffectIndex, pParameters, ParametersByteSize); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(8)] public HResult SetFilterParameters(FilterParameters* pParameters, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[8]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pParameters, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[8]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pParameters, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(9)] public void GetFilterParameters(FilterParameters* pParameters) { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[9]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pParameters); #else ((delegate* unmanaged[Stdcall])(lpVtbl[9]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pParameters); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(10)] public HResult SetOutputFilterParameters(IXAudio2Voice* pDestinationVoice, FilterParameters* pParameters, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[10]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, pParameters, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[10]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, pParameters, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(11)] public void GetOutputFilterParameters(IXAudio2Voice* pDestinationVoice, FilterParameters* pParameters) { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[11]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, pParameters); #else ((delegate* unmanaged[Stdcall])(lpVtbl[11]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, pParameters); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(12)] public HResult SetVolume(float Volume, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[12]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), Volume, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[12]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), Volume, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(13)] public void GetVolume(float* pVolume) { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[13]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pVolume); #else ((delegate* unmanaged[Stdcall])(lpVtbl[13]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pVolume); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(14)] public HResult SetChannelVolumes(uint Channels, float* pVolumes, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[14]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), Channels, pVolumes, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[14]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), Channels, pVolumes, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(15)] public void GetChannelVolumes(uint Channels, float* pVolumes) { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[15]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), Channels, pVolumes); #else ((delegate* unmanaged[Stdcall])(lpVtbl[15]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), Channels, pVolumes); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(16)] public HResult SetOutputMatrix(IXAudio2Voice* pDestinationVoice, uint SourceChannels, uint DestinationChannels, float* pLevelMatrix, uint OperationSet) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[16]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, SourceChannels, DestinationChannels, pLevelMatrix, OperationSet); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[16]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, SourceChannels, DestinationChannels, pLevelMatrix, OperationSet); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(17)] public void GetOutputMatrix(IXAudio2Voice* pDestinationVoice, uint SourceChannels, uint DestinationChannels, float* pLevelMatrix) { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[17]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, SourceChannels, DestinationChannels, pLevelMatrix); #else ((delegate* unmanaged[Stdcall])(lpVtbl[17]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this), pDestinationVoice, SourceChannels, DestinationChannels, pLevelMatrix); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(18)] public void DestroyVoice() { #if NET6_0_OR_GREATER ((delegate* unmanaged)(lpVtbl[18]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this)); #else ((delegate* unmanaged[Stdcall])(lpVtbl[18]))((IXAudio2SubmixVoice*)Unsafe.AsPointer(ref this)); #endif } public interface Interface : IXAudio2Voice.Interface { } }