/// <summary> /// Sets the 3D attributes of a sample, stream, or MOD music channel with 3D functionality. /// </summary> /// <param name="mode">The 3D processing mode. </param> /// <param name="min">The minimum distance. </param> /// <param name="max">The maximum distance. </param> /// <param name="iAngle">The angle of the inside projection cone. </param> /// <param name="oAngle">The angle of the outside projection cone. </param> /// <param name="outVloume">The delta-volume outside the outer projection cone. </param> /// <exception cref="NotAvailableException">Channel object is no longer available.</exception> /// <exception cref="BassErrorException"> /// Some error occur to call a Bass function, check the error code and error message /// to get more error information. /// </exception> /// <exception cref="BassNotLoadedException"> /// Bass DLL not loaded, you must use <see cref="BassManager.Initialize" /> to /// load Bass DLL first. /// </exception> public void Set3DAttribute(Channel3DMode mode, float min, float max, uint iAngle, uint oAngle, float outVloume) { CheckAvailable(); ChannelModule.ChannelSet3DAttributesFunction.CheckResult( ChannelModule.ChannelSet3DAttributesFunction.Delegate(Handle, mode, min, max, (int) iAngle, (int) oAngle, outVloume)); }
/// <summary> /// Get the 3D attributes of a sample, stream, or MOD music channel with 3D functionality. /// </summary> /// <param name="mode">The 3D processing mode. </param> /// <param name="min">The minimum distance. </param> /// <param name="max">The maximum distance. </param> /// <param name="iAngle">The angle of the inside projection cone. </param> /// <param name="oAngle">The angle of the outside projection cone. </param> /// <param name="outVloume">The delta-volume outside the outer projection cone. </param> /// <exception cref="NotAvailableException">Channel object is no longer available.</exception> /// <exception cref="BassErrorException"> /// Some error occur to call a Bass function, check the error code and error message /// to get more error information. /// </exception> /// <exception cref="BassNotLoadedException"> /// Bass DLL not loaded, you must use <see cref="BassManager.Initialize" /> to /// load Bass DLL first. /// </exception> public void Get3DAttribute(out Channel3DMode mode, out float min, out float max, out uint iAngle, out uint oAngle, out float outVloume) { CheckAvailable(); mode = Channel3DMode.Normal; min = 0; max = 0; iAngle = 0; oAngle = 0; outVloume = 0; ChannelModule.ChannelGet3DAttributesFunction.CheckResult( ChannelModule.ChannelGet3DAttributesFunction.Delegate(Handle, ref mode, ref min, ref max, ref iAngle, ref oAngle, ref outVloume)); }