+++ /dev/null
-/*\r
-* Copyright (c) 2007-2010 SlimDX Group\r
-* \r
-* Permission is hereby granted, free of charge, to any person obtaining a copy\r
-* of this software and associated documentation files (the "Software"), to deal\r
-* in the Software without restriction, including without limitation the rights\r
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r
-* copies of the Software, and to permit persons to whom the Software is\r
-* furnished to do so, subject to the following conditions:\r
-* \r
-* The above copyright notice and this permission notice shall be included in\r
-* all copies or substantial portions of the Software.\r
-* \r
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r
-* THE SOFTWARE.\r
-*/\r
-#pragma once\r
-\r
-#include "Enums.h"\r
-\r
-namespace SlimDX\r
-{\r
- namespace DirectSound\r
- {\r
- /// <summary>\r
- /// The SoundEffectI3DL2Reverb object is used to set and retrieve effect parameters on a buffer that supports I3DL2 (Interactive 3D Audio Level 2) reverberation effects.\r
- /// </summary>\r
- /// <unmanaged>IDirectSoundFXI3DL2Reverb</unmanaged>\r
- public ref class I3DL2Reverb : public ComObject\r
- {\r
- COMOBJECT(IDirectSoundFXI3DL2Reverb, I3DL2Reverb);\r
-\r
- public:\r
- /// <summary>\r
- /// Attenuation of the room effect, in millibels (mB).\r
- /// </summary>\r
- property int Room\r
- {\r
- int get();\r
- void set( int value );\r
- }\r
-\r
- /// <summary>\r
- /// Attenuation of the room high-frequency effect, in mB.\r
- /// </summary>\r
- property int RoomHF\r
- {\r
- int get();\r
- void set( int value );\r
- }\r
-\r
- /// <summary>\r
- /// Rolloff factor for the reflected signals.\r
- /// </summary>\r
- property float RoomRolloffFactor\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Decay time, in seconds.\r
- /// </summary>\r
- property float DecayTime\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Ratio of the decay time at high frequencies to the decay time at low frequencies.\r
- /// </summary>\r
- property float DecayHFRatio\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Attenuation of early reflections relative to Room, in mB.\r
- /// </summary>\r
- property int Reflections\r
- {\r
- int get();\r
- void set( int value );\r
- }\r
-\r
- /// <summary>\r
- /// Delay time of the first reflection relative to the direct path, in seconds.\r
- /// </summary>\r
- property float ReflectionsDelay\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Attenuation of late reverberation relative to Room, in mB.\r
- /// </summary>\r
- property int Reverb\r
- {\r
- int get();\r
- void set( int value );\r
- }\r
-\r
- /// <summary>\r
- /// Time limit between the early reflections and the late reverberation relative to the time of the first reflection, in seconds.\r
- /// </summary>\r
- property float ReverbDelay\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Echo density in the late reverberation decay, in percent.\r
- /// </summary>\r
- property float Diffusion\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Modal density in the late reverberation decay, in percent.\r
- /// </summary>\r
- property float Density\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Reference high frequency, in hertz.\r
- /// </summary>\r
- property float HFReference\r
- {\r
- float get();\r
- void set( float value );\r
- }\r
-\r
- /// <summary>\r
- /// Gets or sets the quality of the environmental reverberation effect.\r
- /// </summary>\r
- property int Quality\r
- {\r
- int get();\r
- void set( int value );\r
- }\r
-\r
- /// <summary>\r
- /// Gets or sets the standard reverberation parameters of a buffer.\r
- /// </summary>\r
- property I3DL2ReverbPreset Preset\r
- {\r
- I3DL2ReverbPreset get();\r
- void set( I3DL2ReverbPreset value );\r
- }\r
-\r
- /// <summary>\r
- /// Default attenuation of the room effect, in millibels (mB).\r
- /// </summary>\r
- literal int RoomDefault = DSFX_I3DL2REVERB_ROOM_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum attenuation of the room effect, in millibels (mB).\r
- /// </summary>\r
- literal int RoomMax = DSFX_I3DL2REVERB_ROOM_MAX;\r
-\r
- /// <summary>\r
- /// Minimum attenuation of the room effect, in millibels (mB).\r
- /// </summary>\r
- literal int RoomMin = DSFX_I3DL2REVERB_ROOM_MIN;\r
-\r
- /// <summary>\r
- /// Default attenuation of the room high-frequency effect, in mB.\r
- /// </summary>\r
- literal int RoomHFDefault = DSFX_I3DL2REVERB_ROOMHF_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum attenuation of the room high-frequency effect, in mB.\r
- /// </summary>\r
- literal int RoomHFMax = DSFX_I3DL2REVERB_ROOMHF_MAX;\r
-\r
- /// <summary>\r
- /// Minimum attenuation of the room high-frequency effect, in mB.\r
- /// </summary>\r
- literal int RoomHFMin = DSFX_I3DL2REVERB_ROOMHF_MIN;\r
-\r
- /// <summary>\r
- /// Default rolloff factor for the reflected signals. The rolloff factor for the direct path is controlled by the DirectSound listener.\r
- /// </summary>\r
- literal float RoomRolloffFactorDefault = DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum rolloff factor for the reflected signals. The rolloff factor for the direct path is controlled by the DirectSound listener.\r
- /// </summary>\r
- literal float RoomRolloffFactorMax = DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_MAX;\r
-\r
- /// <summary>\r
- /// Minimum rolloff factor for the reflected signals. The rolloff factor for the direct path is controlled by the DirectSound listener.\r
- /// </summary>\r
- literal float RoomRolloffFactorMin = DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_MIN;\r
-\r
- /// <summary>\r
- /// Default decay time, in seconds.\r
- /// </summary>\r
- literal float DecayTimeDefault = DSFX_I3DL2REVERB_DECAYTIME_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum decay time, in seconds.\r
- /// </summary>\r
- literal float DecayTimeMax = DSFX_I3DL2REVERB_DECAYTIME_MAX;\r
-\r
- /// <summary>\r
- /// Minimum decay time, in seconds.\r
- /// </summary>\r
- literal float DecayTimeMin = DSFX_I3DL2REVERB_DECAYTIME_MIN;\r
-\r
- /// <summary>\r
- /// Default ratio of the decay time at high frequencies to the decay time at low frequencies.\r
- /// </summary>\r
- literal float DecayHFRatioDefault = DSFX_I3DL2REVERB_DECAYHFRATIO_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum ratio of the decay time at high frequencies to the decay time at low frequencies.\r
- /// </summary>\r
- literal float DecayHFRatioMax = DSFX_I3DL2REVERB_DECAYHFRATIO_MAX;\r
-\r
- /// <summary>\r
- /// Minimum ratio of the decay time at high frequencies to the decay time at low frequencies.\r
- /// </summary>\r
- literal float DecayHFRatioMin = DSFX_I3DL2REVERB_DECAYHFRATIO_MIN;\r
-\r
- /// <summary>\r
- /// Default attenuation of early reflections relative to Room, in mB.\r
- /// </summary>\r
- literal int ReflectionsDefault = DSFX_I3DL2REVERB_REFLECTIONS_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum attenuation of early reflections relative to Room, in mB.\r
- /// </summary>\r
- literal int ReflectionsMax = DSFX_I3DL2REVERB_REFLECTIONS_MAX;\r
-\r
- /// <summary>\r
- /// Minimum attenuation of early reflections relative to Room, in mB.\r
- /// </summary>\r
- literal int ReflectionsMin = DSFX_I3DL2REVERB_REFLECTIONS_MIN;\r
-\r
- /// <summary>\r
- /// Default delay time of the first reflection relative to the direct path, in seconds.\r
- /// </summary>\r
- literal float ReflectionsDelayDefault = DSFX_I3DL2REVERB_REFLECTIONSDELAY_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum delay time of the first reflection relative to the direct path, in seconds.\r
- /// </summary>\r
- literal float ReflectionsDelayMax = DSFX_I3DL2REVERB_REFLECTIONSDELAY_MAX;\r
-\r
- /// <summary>\r
- /// Minimum delay time of the first reflection relative to the direct path, in seconds.\r
- /// </summary>\r
- literal float ReflectionsDelayMin = DSFX_I3DL2REVERB_REFLECTIONSDELAY_MIN;\r
-\r
- /// <summary>\r
- /// Default attenuation of late reverberation relative to Room, in mB.\r
- /// </summary>\r
- literal int ReverbDefault = DSFX_I3DL2REVERB_REVERB_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum attenuation of late reverberation relative to Room, in mB.\r
- /// </summary>\r
- literal int ReverbMax = DSFX_I3DL2REVERB_REVERB_MAX;\r
-\r
- /// <summary>\r
- /// Minimum attenuation of late reverberation relative to Room, in mB.\r
- /// </summary>\r
- literal int ReverbMin = DSFX_I3DL2REVERB_REVERB_MIN;\r
-\r
- /// <summary>\r
- /// Default time limit between the early reflections and the late reverberation relative to the time of the first reflection, in seconds.\r
- /// </summary>\r
- literal float ReverbDelayDefault = DSFX_I3DL2REVERB_REVERBDELAY_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum time limit between the early reflections and the late reverberation relative to the time of the first reflection, in seconds.\r
- /// </summary>\r
- literal float ReverbDelayMax = DSFX_I3DL2REVERB_REVERBDELAY_MAX;\r
-\r
- /// <summary>\r
- /// Minimum time limit between the early reflections and the late reverberation relative to the time of the first reflection, in seconds.\r
- /// </summary>\r
- literal float ReverbDelayMin = DSFX_I3DL2REVERB_REVERBDELAY_MIN;\r
-\r
- /// <summary>\r
- /// Default modal density in the late reverberation decay, in percent.\r
- /// </summary>\r
- literal float DensityDefault = DSFX_I3DL2REVERB_DENSITY_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum modal density in the late reverberation decay, in percent.\r
- /// </summary>\r
- literal float DensityMax = DSFX_I3DL2REVERB_DENSITY_MAX;\r
-\r
- /// <summary>\r
- /// Minimum modal density in the late reverberation decay, in percent.\r
- /// </summary>\r
- literal float DensityMin = DSFX_I3DL2REVERB_DENSITY_MIN;\r
-\r
- /// <summary>\r
- /// Default echo density in the late reverberation decay, in percent.\r
- /// </summary>\r
- literal float DiffusionDefault = DSFX_I3DL2REVERB_DIFFUSION_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum echo density in the late reverberation decay, in percent.\r
- /// </summary>\r
- literal float DiffusionMax = DSFX_I3DL2REVERB_DIFFUSION_MAX;\r
-\r
- /// <summary>\r
- /// Minimum echo density in the late reverberation decay, in percent.\r
- /// </summary>\r
- literal float DiffusionMin = DSFX_I3DL2REVERB_DIFFUSION_MIN;\r
-\r
- /// <summary>\r
- /// Default reference high frequency, in hertz.\r
- /// </summary>\r
- literal float HFReferenceDefault = DSFX_I3DL2REVERB_HFREFERENCE_DEFAULT;\r
-\r
- /// <summary>\r
- /// Maximum reference high frequency, in hertz.\r
- /// </summary>\r
- literal float HFReferenceMax = DSFX_I3DL2REVERB_HFREFERENCE_MAX;\r
-\r
- /// <summary>\r
- /// Minimum reference high frequency, in hertz.\r
- /// </summary>\r
- literal float HFReferenceMin = DSFX_I3DL2REVERB_HFREFERENCE_MIN;\r
- };\r
- }\r
-}
\ No newline at end of file