/// <summary> /// Gets the voice's filter parameters. /// </summary> /// <param name="filterParameters"> /// <see cref="AudioSharp.XAudio2.FilterParameters" /> structure containing the filter /// information. /// </param> /// <returns>HRESULT</returns> public unsafe int GetFilterParametersNative(out FilterParameters filterParameters) { filterParameters = default(FilterParameters); fixed(void *p = &filterParameters) { return(LocalInterop.Calli(UnsafeBasePtr, p, ((void **)(*(void **)UnsafeBasePtr))[9])); } }
/// <summary> /// Sets the filter parameters on one of this voice's sends. /// </summary> /// <param name="destinationVoice">The destination voice of the send whose filter parameters will be set.</param> /// <param name="filterParameters"> /// <see cref="AudioSharp.XAudio2.FilterParameters" /> structure containing the filter /// information. /// </param> /// <param name="operationSet"> /// Identifies this call as part of a deferred batch. For more information see /// http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx. /// </param> /// <returns>HRESULT</returns> public unsafe int SetOutputFilterParametersNative(XAudio2Voice destinationVoice, FilterParameters filterParameters, int operationSet) { IntPtr pVoice = destinationVoice == null ? IntPtr.Zero : destinationVoice.BasePtr; return(LocalInterop.Calli(UnsafeBasePtr, (void *)pVoice, &filterParameters, operationSet, ((void **)(*(void **)UnsafeBasePtr))[10])); }
/// <summary> /// Returns the filter parameters from one of this voice's sends. /// </summary> /// <param name="destinationVoice">The destination voice of the send whose filter parameters will be read.</param> /// <param name="filterParameters"> /// <see cref="AudioSharp.XAudio2.FilterParameters" /> structure containing the filter /// information. /// </param> /// <returns>HRESULT</returns> public unsafe int GetOutputFilterParametersNative(XAudio2Voice destinationVoice, out FilterParameters filterParameters) { filterParameters = default(FilterParameters); IntPtr pVoice = destinationVoice == null ? IntPtr.Zero : destinationVoice.BasePtr; fixed(void *p = &filterParameters) { return(LocalInterop.Calli(UnsafeBasePtr, (void *)pVoice, p, ((void **)(*(void **)UnsafeBasePtr))[11])); } }
/// <summary> /// Sets the filter parameters on one of this voice's sends. /// </summary> /// <param name="destinationVoice">The destination voice of the send whose filter parameters will be set.</param> /// <param name="filterParameters"> /// <see cref="AudioSharp.XAudio2.FilterParameters" /> structure containing the filter /// information. /// </param> public void SetOutputFilterParameters(XAudio2Voice destinationVoice, FilterParameters filterParameters) { SetOutputFilterParameters(destinationVoice, filterParameters, 0); }
/// <summary> /// Sets the filter parameters on one of this voice's sends. /// </summary> /// <param name="destinationVoice">The destination voice of the send whose filter parameters will be set.</param> /// <param name="filterParameters"> /// <see cref="AudioSharp.XAudio2.FilterParameters" /> structure containing the filter /// information. /// </param> /// <param name="operationSet"> /// Identifies this call as part of a deferred batch. For more information see /// http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx. /// </param> public void SetOutputFilterParameters(XAudio2Voice destinationVoice, FilterParameters filterParameters, int operationSet) { XAudio2Exception.Try(SetOutputFilterParametersNative(destinationVoice, filterParameters, operationSet), InterfaceName, "SetOutputFilterParameters"); }
/// <summary> /// Sets the voice's filter parameters. /// </summary> /// <param name="filterParameters"> /// <see cref="AudioSharp.XAudio2.FilterParameters" /> structure containing the filter /// information. /// </param> /// <param name="operationSet"> /// Identifies this call as part of a deferred batch. For more information see /// http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx. /// </param> public void SetFilterParameters(FilterParameters filterParameters, int operationSet) { XAudio2Exception.Try(SetFilterParametersNative(filterParameters, operationSet), InterfaceName, "SetFilterParameters"); }
/// <summary> /// Sets the voice's filter parameters. /// </summary> /// <param name="filterParameters"> /// <see cref="AudioSharp.XAudio2.FilterParameters" /> structure containing the filter /// information. /// </param> /// <param name="operationSet"> /// Identifies this call as part of a deferred batch. For more information see /// http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx. /// </param> /// <returns>HRESULT</returns> public unsafe int SetFilterParametersNative(FilterParameters filterParameters, int operationSet) { return(LocalInterop.Calli(UnsafeBasePtr, &filterParameters, operationSet, ((void **)(*(void **)UnsafeBasePtr))[8])); }