Remove the union from the effect parameter types

This commit is contained in:
Chris Robinson
2011-09-11 07:42:23 -07:00
parent ab2b62c980
commit d51b93f869
7 changed files with 218 additions and 220 deletions
+3 -3
View File
@@ -424,10 +424,10 @@ ALvoid CalcSourceParams(ALsource *ALSource, const ALCcontext *ALContext)
RoomRolloff[i] = RoomRolloffBase;
if(IsReverbEffect(Slot->effect.type))
{
RoomRolloff[i] += Slot->effect.Params.Reverb.RoomRolloffFactor;
DecayDistance[i] = Slot->effect.Params.Reverb.DecayTime *
RoomRolloff[i] += Slot->effect.Reverb.RoomRolloffFactor;
DecayDistance[i] = Slot->effect.Reverb.DecayTime *
SPEEDOFSOUNDMETRESPERSEC;
RoomAirAbsorption[i] = Slot->effect.Params.Reverb.AirAbsorptionGainHF;
RoomAirAbsorption[i] = Slot->effect.Reverb.AirAbsorptionGainHF;
}
else
{
+1 -1
View File
@@ -59,7 +59,7 @@ static ALvoid DedicatedUpdate(ALeffectState *effect, ALCcontext *Context, const
ALint pos;
ALsizei s;
Gain = Slot->Gain * Slot->effect.Params.Dedicated.Gain;
Gain = Slot->Gain * Slot->effect.Dedicated.Gain;
for(s = 0;s < MAXCHANNELS;s++)
state->gains[s] = 0.0f;
+5 -5
View File
@@ -101,18 +101,18 @@ static ALvoid EchoUpdate(ALeffectState *effect, ALCcontext *Context, const ALeff
ALfloat lrpan, cw, g, gain;
ALuint i;
state->Tap[0].delay = (ALuint)(Slot->effect.Params.Echo.Delay * frequency) + 1;
state->Tap[1].delay = (ALuint)(Slot->effect.Params.Echo.LRDelay * frequency);
state->Tap[0].delay = (ALuint)(Slot->effect.Echo.Delay * frequency) + 1;
state->Tap[1].delay = (ALuint)(Slot->effect.Echo.LRDelay * frequency);
state->Tap[1].delay += state->Tap[0].delay;
lrpan = Slot->effect.Params.Echo.Spread*0.5f + 0.5f;
lrpan = Slot->effect.Echo.Spread*0.5f + 0.5f;
state->GainL = aluSqrt( lrpan);
state->GainR = aluSqrt(1.0f-lrpan);
state->FeedGain = Slot->effect.Params.Echo.Feedback;
state->FeedGain = Slot->effect.Echo.Feedback;
cw = cos(2.0*M_PI * LOWPASSFREQCUTOFF / frequency);
g = 1.0f - Slot->effect.Params.Echo.Damping;
g = 1.0f - Slot->effect.Echo.Damping;
state->iirFilter.coeff = lpCoeffCalc(g, cw);
gain = Slot->Gain;
+5 -5
View File
@@ -139,19 +139,19 @@ static ALvoid ModulatorUpdate(ALeffectState *effect, ALCcontext *Context, const
ALfloat gain, cw, a = 0.0f;
ALuint index;
if(Slot->effect.Params.Modulator.Waveform == AL_RING_MODULATOR_SINUSOID)
if(Slot->effect.Modulator.Waveform == AL_RING_MODULATOR_SINUSOID)
state->Waveform = SINUSOID;
else if(Slot->effect.Params.Modulator.Waveform == AL_RING_MODULATOR_SAWTOOTH)
else if(Slot->effect.Modulator.Waveform == AL_RING_MODULATOR_SAWTOOTH)
state->Waveform = SAWTOOTH;
else if(Slot->effect.Params.Modulator.Waveform == AL_RING_MODULATOR_SQUARE)
else if(Slot->effect.Modulator.Waveform == AL_RING_MODULATOR_SQUARE)
state->Waveform = SQUARE;
state->step = Slot->effect.Params.Modulator.Frequency*(1<<WAVEFORM_FRACBITS) /
state->step = Slot->effect.Modulator.Frequency*(1<<WAVEFORM_FRACBITS) /
Device->Frequency;
if(!state->step)
state->step = 1;
cw = cos(2.0*M_PI * Slot->effect.Params.Modulator.HighPassCutoff /
cw = cos(2.0*M_PI * Slot->effect.Modulator.HighPassCutoff /
Device->Frequency);
a = (2.0f-cw) - aluSqrt(aluPow(2.0f-cw, 2.0f) - 1.0f);
state->iirFilter.coeff = a;
+24 -24
View File
@@ -1113,61 +1113,61 @@ static ALvoid ReverbUpdate(ALeffectState *effect, ALCcontext *Context, const ALe
}
// Calculate the master low-pass filter (from the master effect HF gain).
cw = CalcI3DL2HFreq(Slot->effect.Params.Reverb.HFReference, frequency);
cw = CalcI3DL2HFreq(Slot->effect.Reverb.HFReference, frequency);
// This is done with 2 chained 1-pole filters, so no need to square g.
State->LpFilter.coeff = lpCoeffCalc(Slot->effect.Params.Reverb.GainHF, cw);
State->LpFilter.coeff = lpCoeffCalc(Slot->effect.Reverb.GainHF, cw);
if(isEAX)
{
// Update the modulator line.
UpdateModulator(Slot->effect.Params.Reverb.ModulationTime,
Slot->effect.Params.Reverb.ModulationDepth,
UpdateModulator(Slot->effect.Reverb.ModulationTime,
Slot->effect.Reverb.ModulationDepth,
frequency, State);
}
// Update the initial effect delay.
UpdateDelayLine(Slot->effect.Params.Reverb.ReflectionsDelay,
Slot->effect.Params.Reverb.LateReverbDelay,
UpdateDelayLine(Slot->effect.Reverb.ReflectionsDelay,
Slot->effect.Reverb.LateReverbDelay,
frequency, State);
// Update the early lines.
UpdateEarlyLines(Slot->effect.Params.Reverb.Gain,
Slot->effect.Params.Reverb.ReflectionsGain,
Slot->effect.Params.Reverb.LateReverbDelay, State);
UpdateEarlyLines(Slot->effect.Reverb.Gain,
Slot->effect.Reverb.ReflectionsGain,
Slot->effect.Reverb.LateReverbDelay, State);
// Update the decorrelator.
UpdateDecorrelator(Slot->effect.Params.Reverb.Density, frequency, State);
UpdateDecorrelator(Slot->effect.Reverb.Density, frequency, State);
// Get the mixing matrix coefficients (x and y).
CalcMatrixCoeffs(Slot->effect.Params.Reverb.Diffusion, &x, &y);
CalcMatrixCoeffs(Slot->effect.Reverb.Diffusion, &x, &y);
// Then divide x into y to simplify the matrix calculation.
State->Late.MixCoeff = y / x;
// If the HF limit parameter is flagged, calculate an appropriate limit
// based on the air absorption parameter.
hfRatio = Slot->effect.Params.Reverb.DecayHFRatio;
if(Slot->effect.Params.Reverb.DecayHFLimit &&
Slot->effect.Params.Reverb.AirAbsorptionGainHF < 1.0f)
hfRatio = Slot->effect.Reverb.DecayHFRatio;
if(Slot->effect.Reverb.DecayHFLimit &&
Slot->effect.Reverb.AirAbsorptionGainHF < 1.0f)
hfRatio = CalcLimitedHfRatio(hfRatio,
Slot->effect.Params.Reverb.AirAbsorptionGainHF,
Slot->effect.Params.Reverb.DecayTime);
Slot->effect.Reverb.AirAbsorptionGainHF,
Slot->effect.Reverb.DecayTime);
// Update the late lines.
UpdateLateLines(Slot->effect.Params.Reverb.Gain, Slot->effect.Params.Reverb.LateReverbGain,
x, Slot->effect.Params.Reverb.Density, Slot->effect.Params.Reverb.DecayTime,
Slot->effect.Params.Reverb.Diffusion, hfRatio, cw, frequency, State);
UpdateLateLines(Slot->effect.Reverb.Gain, Slot->effect.Reverb.LateReverbGain,
x, Slot->effect.Reverb.Density, Slot->effect.Reverb.DecayTime,
Slot->effect.Reverb.Diffusion, hfRatio, cw, frequency, State);
if(isEAX)
{
// Update the echo line.
UpdateEchoLine(Slot->effect.Params.Reverb.Gain, Slot->effect.Params.Reverb.LateReverbGain,
Slot->effect.Params.Reverb.EchoTime, Slot->effect.Params.Reverb.DecayTime,
Slot->effect.Params.Reverb.Diffusion, Slot->effect.Params.Reverb.EchoDepth,
UpdateEchoLine(Slot->effect.Reverb.Gain, Slot->effect.Reverb.LateReverbGain,
Slot->effect.Reverb.EchoTime, Slot->effect.Reverb.DecayTime,
Slot->effect.Reverb.Diffusion, Slot->effect.Reverb.EchoDepth,
hfRatio, cw, frequency, State);
// Update early and late 3D panning.
Update3DPanning(Context->Device, Slot->effect.Params.Reverb.ReflectionsPan,
Slot->effect.Params.Reverb.LateReverbPan, Slot->Gain, State);
Update3DPanning(Context->Device, Slot->effect.Reverb.ReflectionsPan,
Slot->effect.Reverb.LateReverbPan, Slot->Gain, State);
}
else
{
+42 -44
View File
@@ -26,56 +26,54 @@ typedef struct ALeffect
// Effect type (AL_EFFECT_NULL, ...)
ALenum type;
union {
struct {
// Shared Reverb Properties
ALfloat Density;
ALfloat Diffusion;
ALfloat Gain;
ALfloat GainHF;
ALfloat DecayTime;
ALfloat DecayHFRatio;
ALfloat ReflectionsGain;
ALfloat ReflectionsDelay;
ALfloat LateReverbGain;
ALfloat LateReverbDelay;
ALfloat AirAbsorptionGainHF;
ALfloat RoomRolloffFactor;
ALboolean DecayHFLimit;
struct {
// Shared Reverb Properties
ALfloat Density;
ALfloat Diffusion;
ALfloat Gain;
ALfloat GainHF;
ALfloat DecayTime;
ALfloat DecayHFRatio;
ALfloat ReflectionsGain;
ALfloat ReflectionsDelay;
ALfloat LateReverbGain;
ALfloat LateReverbDelay;
ALfloat AirAbsorptionGainHF;
ALfloat RoomRolloffFactor;
ALboolean DecayHFLimit;
// Additional EAX Reverb Properties
ALfloat GainLF;
ALfloat DecayLFRatio;
ALfloat ReflectionsPan[3];
ALfloat LateReverbPan[3];
ALfloat EchoTime;
ALfloat EchoDepth;
ALfloat ModulationTime;
ALfloat ModulationDepth;
ALfloat HFReference;
ALfloat LFReference;
} Reverb;
// Additional EAX Reverb Properties
ALfloat GainLF;
ALfloat DecayLFRatio;
ALfloat ReflectionsPan[3];
ALfloat LateReverbPan[3];
ALfloat EchoTime;
ALfloat EchoDepth;
ALfloat ModulationTime;
ALfloat ModulationDepth;
ALfloat HFReference;
ALfloat LFReference;
} Reverb;
struct {
ALfloat Delay;
ALfloat LRDelay;
struct {
ALfloat Delay;
ALfloat LRDelay;
ALfloat Damping;
ALfloat Feedback;
ALfloat Damping;
ALfloat Feedback;
ALfloat Spread;
} Echo;
ALfloat Spread;
} Echo;
struct {
ALfloat Frequency;
ALfloat HighPassCutoff;
ALint Waveform;
} Modulator;
struct {
ALfloat Frequency;
ALfloat HighPassCutoff;
ALint Waveform;
} Modulator;
struct {
ALfloat Gain;
} Dedicated;
} Params;
struct {
ALfloat Gain;
} Dedicated;
// Index to itself
ALuint effect;
+138 -138
View File
@@ -181,7 +181,7 @@ AL_API ALvoid AL_APIENTRY alEffecti(ALuint effect, ALenum param, ALint iValue)
case AL_EAXREVERB_DECAY_HFLIMIT:
if(iValue >= AL_EAXREVERB_MIN_DECAY_HFLIMIT &&
iValue <= AL_EAXREVERB_MAX_DECAY_HFLIMIT)
ALEffect->Params.Reverb.DecayHFLimit = iValue;
ALEffect->Reverb.DecayHFLimit = iValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -198,7 +198,7 @@ AL_API ALvoid AL_APIENTRY alEffecti(ALuint effect, ALenum param, ALint iValue)
case AL_REVERB_DECAY_HFLIMIT:
if(iValue >= AL_REVERB_MIN_DECAY_HFLIMIT &&
iValue <= AL_REVERB_MAX_DECAY_HFLIMIT)
ALEffect->Params.Reverb.DecayHFLimit = iValue;
ALEffect->Reverb.DecayHFLimit = iValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -224,7 +224,7 @@ AL_API ALvoid AL_APIENTRY alEffecti(ALuint effect, ALenum param, ALint iValue)
case AL_RING_MODULATOR_FREQUENCY:
if(iValue >= AL_RING_MODULATOR_MIN_FREQUENCY &&
iValue <= AL_RING_MODULATOR_MAX_FREQUENCY)
ALEffect->Params.Modulator.Frequency = iValue;
ALEffect->Modulator.Frequency = iValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -232,7 +232,7 @@ AL_API ALvoid AL_APIENTRY alEffecti(ALuint effect, ALenum param, ALint iValue)
case AL_RING_MODULATOR_HIGHPASS_CUTOFF:
if(iValue >= AL_RING_MODULATOR_MIN_HIGHPASS_CUTOFF &&
iValue <= AL_RING_MODULATOR_MAX_HIGHPASS_CUTOFF)
ALEffect->Params.Modulator.HighPassCutoff = iValue;
ALEffect->Modulator.HighPassCutoff = iValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -240,7 +240,7 @@ AL_API ALvoid AL_APIENTRY alEffecti(ALuint effect, ALenum param, ALint iValue)
case AL_RING_MODULATOR_WAVEFORM:
if(iValue >= AL_RING_MODULATOR_MIN_WAVEFORM &&
iValue <= AL_RING_MODULATOR_MAX_WAVEFORM)
ALEffect->Params.Modulator.Waveform = iValue;
ALEffect->Modulator.Waveform = iValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -284,7 +284,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_DENSITY:
if(flValue >= AL_EAXREVERB_MIN_DENSITY &&
flValue <= AL_EAXREVERB_MAX_DENSITY)
ALEffect->Params.Reverb.Density = flValue;
ALEffect->Reverb.Density = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -292,7 +292,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_DIFFUSION:
if(flValue >= AL_EAXREVERB_MIN_DIFFUSION &&
flValue <= AL_EAXREVERB_MAX_DIFFUSION)
ALEffect->Params.Reverb.Diffusion = flValue;
ALEffect->Reverb.Diffusion = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -300,7 +300,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_GAIN:
if(flValue >= AL_EAXREVERB_MIN_GAIN &&
flValue <= AL_EAXREVERB_MAX_GAIN)
ALEffect->Params.Reverb.Gain = flValue;
ALEffect->Reverb.Gain = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -308,7 +308,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_GAINHF:
if(flValue >= AL_EAXREVERB_MIN_GAINHF &&
flValue <= AL_EAXREVERB_MAX_GAINHF)
ALEffect->Params.Reverb.GainHF = flValue;
ALEffect->Reverb.GainHF = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -316,7 +316,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_GAINLF:
if(flValue >= AL_EAXREVERB_MIN_GAINLF &&
flValue <= AL_EAXREVERB_MAX_GAINLF)
ALEffect->Params.Reverb.GainLF = flValue;
ALEffect->Reverb.GainLF = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -324,7 +324,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_DECAY_TIME:
if(flValue >= AL_EAXREVERB_MIN_DECAY_TIME &&
flValue <= AL_EAXREVERB_MAX_DECAY_TIME)
ALEffect->Params.Reverb.DecayTime = flValue;
ALEffect->Reverb.DecayTime = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -332,7 +332,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_DECAY_HFRATIO:
if(flValue >= AL_EAXREVERB_MIN_DECAY_HFRATIO &&
flValue <= AL_EAXREVERB_MAX_DECAY_HFRATIO)
ALEffect->Params.Reverb.DecayHFRatio = flValue;
ALEffect->Reverb.DecayHFRatio = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -340,7 +340,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_DECAY_LFRATIO:
if(flValue >= AL_EAXREVERB_MIN_DECAY_LFRATIO &&
flValue <= AL_EAXREVERB_MAX_DECAY_LFRATIO)
ALEffect->Params.Reverb.DecayLFRatio = flValue;
ALEffect->Reverb.DecayLFRatio = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -348,7 +348,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_REFLECTIONS_GAIN:
if(flValue >= AL_EAXREVERB_MIN_REFLECTIONS_GAIN &&
flValue <= AL_EAXREVERB_MAX_REFLECTIONS_GAIN)
ALEffect->Params.Reverb.ReflectionsGain = flValue;
ALEffect->Reverb.ReflectionsGain = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -356,7 +356,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_REFLECTIONS_DELAY:
if(flValue >= AL_EAXREVERB_MIN_REFLECTIONS_DELAY &&
flValue <= AL_EAXREVERB_MAX_REFLECTIONS_DELAY)
ALEffect->Params.Reverb.ReflectionsDelay = flValue;
ALEffect->Reverb.ReflectionsDelay = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -364,7 +364,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_LATE_REVERB_GAIN:
if(flValue >= AL_EAXREVERB_MIN_LATE_REVERB_GAIN &&
flValue <= AL_EAXREVERB_MAX_LATE_REVERB_GAIN)
ALEffect->Params.Reverb.LateReverbGain = flValue;
ALEffect->Reverb.LateReverbGain = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -372,7 +372,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_LATE_REVERB_DELAY:
if(flValue >= AL_EAXREVERB_MIN_LATE_REVERB_DELAY &&
flValue <= AL_EAXREVERB_MAX_LATE_REVERB_DELAY)
ALEffect->Params.Reverb.LateReverbDelay = flValue;
ALEffect->Reverb.LateReverbDelay = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -380,7 +380,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_AIR_ABSORPTION_GAINHF:
if(flValue >= AL_EAXREVERB_MIN_AIR_ABSORPTION_GAINHF &&
flValue <= AL_EAXREVERB_MAX_AIR_ABSORPTION_GAINHF)
ALEffect->Params.Reverb.AirAbsorptionGainHF = flValue;
ALEffect->Reverb.AirAbsorptionGainHF = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -388,7 +388,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_ECHO_TIME:
if(flValue >= AL_EAXREVERB_MIN_ECHO_TIME &&
flValue <= AL_EAXREVERB_MAX_ECHO_TIME)
ALEffect->Params.Reverb.EchoTime = flValue;
ALEffect->Reverb.EchoTime = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -396,7 +396,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_ECHO_DEPTH:
if(flValue >= AL_EAXREVERB_MIN_ECHO_DEPTH &&
flValue <= AL_EAXREVERB_MAX_ECHO_DEPTH)
ALEffect->Params.Reverb.EchoDepth = flValue;
ALEffect->Reverb.EchoDepth = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -404,7 +404,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_MODULATION_TIME:
if(flValue >= AL_EAXREVERB_MIN_MODULATION_TIME &&
flValue <= AL_EAXREVERB_MAX_MODULATION_TIME)
ALEffect->Params.Reverb.ModulationTime = flValue;
ALEffect->Reverb.ModulationTime = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -412,7 +412,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_MODULATION_DEPTH:
if(flValue >= AL_EAXREVERB_MIN_MODULATION_DEPTH &&
flValue <= AL_EAXREVERB_MAX_MODULATION_DEPTH)
ALEffect->Params.Reverb.ModulationDepth = flValue;
ALEffect->Reverb.ModulationDepth = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -420,7 +420,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_HFREFERENCE:
if(flValue >= AL_EAXREVERB_MIN_HFREFERENCE &&
flValue <= AL_EAXREVERB_MAX_HFREFERENCE)
ALEffect->Params.Reverb.HFReference = flValue;
ALEffect->Reverb.HFReference = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -428,14 +428,14 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_EAXREVERB_LFREFERENCE:
if(flValue >= AL_EAXREVERB_MIN_LFREFERENCE &&
flValue <= AL_EAXREVERB_MAX_LFREFERENCE)
ALEffect->Params.Reverb.LFReference = flValue;
ALEffect->Reverb.LFReference = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
case AL_EAXREVERB_ROOM_ROLLOFF_FACTOR:
if(flValue >= 0.0f && flValue <= 10.0f)
ALEffect->Params.Reverb.RoomRolloffFactor = flValue;
ALEffect->Reverb.RoomRolloffFactor = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -452,7 +452,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_DENSITY:
if(flValue >= AL_REVERB_MIN_DENSITY &&
flValue <= AL_REVERB_MAX_DENSITY)
ALEffect->Params.Reverb.Density = flValue;
ALEffect->Reverb.Density = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -460,7 +460,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_DIFFUSION:
if(flValue >= AL_REVERB_MIN_DIFFUSION &&
flValue <= AL_REVERB_MAX_DIFFUSION)
ALEffect->Params.Reverb.Diffusion = flValue;
ALEffect->Reverb.Diffusion = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -468,7 +468,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_GAIN:
if(flValue >= AL_REVERB_MIN_GAIN &&
flValue <= AL_REVERB_MAX_GAIN)
ALEffect->Params.Reverb.Gain = flValue;
ALEffect->Reverb.Gain = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -476,7 +476,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_GAINHF:
if(flValue >= AL_REVERB_MIN_GAINHF &&
flValue <= AL_REVERB_MAX_GAINHF)
ALEffect->Params.Reverb.GainHF = flValue;
ALEffect->Reverb.GainHF = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -484,7 +484,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_DECAY_TIME:
if(flValue >= AL_REVERB_MIN_DECAY_TIME &&
flValue <= AL_REVERB_MAX_DECAY_TIME)
ALEffect->Params.Reverb.DecayTime = flValue;
ALEffect->Reverb.DecayTime = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -492,7 +492,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_DECAY_HFRATIO:
if(flValue >= AL_REVERB_MIN_DECAY_HFRATIO &&
flValue <= AL_REVERB_MAX_DECAY_HFRATIO)
ALEffect->Params.Reverb.DecayHFRatio = flValue;
ALEffect->Reverb.DecayHFRatio = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -500,7 +500,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_REFLECTIONS_GAIN:
if(flValue >= AL_REVERB_MIN_REFLECTIONS_GAIN &&
flValue <= AL_REVERB_MAX_REFLECTIONS_GAIN)
ALEffect->Params.Reverb.ReflectionsGain = flValue;
ALEffect->Reverb.ReflectionsGain = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -508,7 +508,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_REFLECTIONS_DELAY:
if(flValue >= AL_REVERB_MIN_REFLECTIONS_DELAY &&
flValue <= AL_REVERB_MAX_REFLECTIONS_DELAY)
ALEffect->Params.Reverb.ReflectionsDelay = flValue;
ALEffect->Reverb.ReflectionsDelay = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -516,7 +516,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_LATE_REVERB_GAIN:
if(flValue >= AL_REVERB_MIN_LATE_REVERB_GAIN &&
flValue <= AL_REVERB_MAX_LATE_REVERB_GAIN)
ALEffect->Params.Reverb.LateReverbGain = flValue;
ALEffect->Reverb.LateReverbGain = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -524,7 +524,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_LATE_REVERB_DELAY:
if(flValue >= AL_REVERB_MIN_LATE_REVERB_DELAY &&
flValue <= AL_REVERB_MAX_LATE_REVERB_DELAY)
ALEffect->Params.Reverb.LateReverbDelay = flValue;
ALEffect->Reverb.LateReverbDelay = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -532,7 +532,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_AIR_ABSORPTION_GAINHF:
if(flValue >= AL_REVERB_MIN_AIR_ABSORPTION_GAINHF &&
flValue <= AL_REVERB_MAX_AIR_ABSORPTION_GAINHF)
ALEffect->Params.Reverb.AirAbsorptionGainHF = flValue;
ALEffect->Reverb.AirAbsorptionGainHF = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -540,7 +540,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_REVERB_ROOM_ROLLOFF_FACTOR:
if(flValue >= AL_REVERB_MIN_ROOM_ROLLOFF_FACTOR &&
flValue <= AL_REVERB_MAX_ROOM_ROLLOFF_FACTOR)
ALEffect->Params.Reverb.RoomRolloffFactor = flValue;
ALEffect->Reverb.RoomRolloffFactor = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -556,35 +556,35 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
{
case AL_ECHO_DELAY:
if(flValue >= AL_ECHO_MIN_DELAY && flValue <= AL_ECHO_MAX_DELAY)
ALEffect->Params.Echo.Delay = flValue;
ALEffect->Echo.Delay = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
case AL_ECHO_LRDELAY:
if(flValue >= AL_ECHO_MIN_LRDELAY && flValue <= AL_ECHO_MAX_LRDELAY)
ALEffect->Params.Echo.LRDelay = flValue;
ALEffect->Echo.LRDelay = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
case AL_ECHO_DAMPING:
if(flValue >= AL_ECHO_MIN_DAMPING && flValue <= AL_ECHO_MAX_DAMPING)
ALEffect->Params.Echo.Damping = flValue;
ALEffect->Echo.Damping = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
case AL_ECHO_FEEDBACK:
if(flValue >= AL_ECHO_MIN_FEEDBACK && flValue <= AL_ECHO_MAX_FEEDBACK)
ALEffect->Params.Echo.Feedback = flValue;
ALEffect->Echo.Feedback = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
case AL_ECHO_SPREAD:
if(flValue >= AL_ECHO_MIN_SPREAD && flValue <= AL_ECHO_MAX_SPREAD)
ALEffect->Params.Echo.Spread = flValue;
ALEffect->Echo.Spread = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -601,7 +601,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_RING_MODULATOR_FREQUENCY:
if(flValue >= AL_RING_MODULATOR_MIN_FREQUENCY &&
flValue <= AL_RING_MODULATOR_MAX_FREQUENCY)
ALEffect->Params.Modulator.Frequency = flValue;
ALEffect->Modulator.Frequency = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -609,7 +609,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
case AL_RING_MODULATOR_HIGHPASS_CUTOFF:
if(flValue >= AL_RING_MODULATOR_MIN_HIGHPASS_CUTOFF &&
flValue <= AL_RING_MODULATOR_MAX_HIGHPASS_CUTOFF)
ALEffect->Params.Modulator.HighPassCutoff = flValue;
ALEffect->Modulator.HighPassCutoff = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -626,7 +626,7 @@ AL_API ALvoid AL_APIENTRY alEffectf(ALuint effect, ALenum param, ALfloat flValue
{
case AL_DEDICATED_GAIN:
if(flValue >= 0.0f && isfinite(flValue))
ALEffect->Params.Dedicated.Gain = flValue;
ALEffect->Dedicated.Gain = flValue;
else
alSetError(Context, AL_INVALID_VALUE);
break;
@@ -664,9 +664,9 @@ AL_API ALvoid AL_APIENTRY alEffectfv(ALuint effect, ALenum param, ALfloat *pflVa
case AL_EAXREVERB_REFLECTIONS_PAN:
if(isfinite(pflValues[0]) && isfinite(pflValues[1]) && isfinite(pflValues[2]))
{
ALEffect->Params.Reverb.ReflectionsPan[0] = pflValues[0];
ALEffect->Params.Reverb.ReflectionsPan[1] = pflValues[1];
ALEffect->Params.Reverb.ReflectionsPan[2] = pflValues[2];
ALEffect->Reverb.ReflectionsPan[0] = pflValues[0];
ALEffect->Reverb.ReflectionsPan[1] = pflValues[1];
ALEffect->Reverb.ReflectionsPan[2] = pflValues[2];
}
else
alSetError(Context, AL_INVALID_VALUE);
@@ -674,9 +674,9 @@ AL_API ALvoid AL_APIENTRY alEffectfv(ALuint effect, ALenum param, ALfloat *pflVa
case AL_EAXREVERB_LATE_REVERB_PAN:
if(isfinite(pflValues[0]) && isfinite(pflValues[1]) && isfinite(pflValues[2]))
{
ALEffect->Params.Reverb.LateReverbPan[0] = pflValues[0];
ALEffect->Params.Reverb.LateReverbPan[1] = pflValues[1];
ALEffect->Params.Reverb.LateReverbPan[2] = pflValues[2];
ALEffect->Reverb.LateReverbPan[0] = pflValues[0];
ALEffect->Reverb.LateReverbPan[1] = pflValues[1];
ALEffect->Reverb.LateReverbPan[2] = pflValues[2];
}
else
alSetError(Context, AL_INVALID_VALUE);
@@ -722,7 +722,7 @@ AL_API ALvoid AL_APIENTRY alGetEffecti(ALuint effect, ALenum param, ALint *piVal
switch(param)
{
case AL_EAXREVERB_DECAY_HFLIMIT:
*piValue = ALEffect->Params.Reverb.DecayHFLimit;
*piValue = ALEffect->Reverb.DecayHFLimit;
break;
default:
@@ -735,7 +735,7 @@ AL_API ALvoid AL_APIENTRY alGetEffecti(ALuint effect, ALenum param, ALint *piVal
switch(param)
{
case AL_REVERB_DECAY_HFLIMIT:
*piValue = ALEffect->Params.Reverb.DecayHFLimit;
*piValue = ALEffect->Reverb.DecayHFLimit;
break;
default:
@@ -757,13 +757,13 @@ AL_API ALvoid AL_APIENTRY alGetEffecti(ALuint effect, ALenum param, ALint *piVal
switch(param)
{
case AL_RING_MODULATOR_FREQUENCY:
*piValue = (ALint)ALEffect->Params.Modulator.Frequency;
*piValue = (ALint)ALEffect->Modulator.Frequency;
break;
case AL_RING_MODULATOR_HIGHPASS_CUTOFF:
*piValue = (ALint)ALEffect->Params.Modulator.HighPassCutoff;
*piValue = (ALint)ALEffect->Modulator.HighPassCutoff;
break;
case AL_RING_MODULATOR_WAVEFORM:
*piValue = ALEffect->Params.Modulator.Waveform;
*piValue = ALEffect->Modulator.Waveform;
break;
default:
@@ -803,83 +803,83 @@ AL_API ALvoid AL_APIENTRY alGetEffectf(ALuint effect, ALenum param, ALfloat *pfl
switch(param)
{
case AL_EAXREVERB_DENSITY:
*pflValue = ALEffect->Params.Reverb.Density;
*pflValue = ALEffect->Reverb.Density;
break;
case AL_EAXREVERB_DIFFUSION:
*pflValue = ALEffect->Params.Reverb.Diffusion;
*pflValue = ALEffect->Reverb.Diffusion;
break;
case AL_EAXREVERB_GAIN:
*pflValue = ALEffect->Params.Reverb.Gain;
*pflValue = ALEffect->Reverb.Gain;
break;
case AL_EAXREVERB_GAINHF:
*pflValue = ALEffect->Params.Reverb.GainHF;
*pflValue = ALEffect->Reverb.GainHF;
break;
case AL_EAXREVERB_GAINLF:
*pflValue = ALEffect->Params.Reverb.GainLF;
*pflValue = ALEffect->Reverb.GainLF;
break;
case AL_EAXREVERB_DECAY_TIME:
*pflValue = ALEffect->Params.Reverb.DecayTime;
*pflValue = ALEffect->Reverb.DecayTime;
break;
case AL_EAXREVERB_DECAY_HFRATIO:
*pflValue = ALEffect->Params.Reverb.DecayHFRatio;
*pflValue = ALEffect->Reverb.DecayHFRatio;
break;
case AL_EAXREVERB_DECAY_LFRATIO:
*pflValue = ALEffect->Params.Reverb.DecayLFRatio;
*pflValue = ALEffect->Reverb.DecayLFRatio;
break;
case AL_EAXREVERB_REFLECTIONS_GAIN:
*pflValue = ALEffect->Params.Reverb.ReflectionsGain;
*pflValue = ALEffect->Reverb.ReflectionsGain;
break;
case AL_EAXREVERB_REFLECTIONS_DELAY:
*pflValue = ALEffect->Params.Reverb.ReflectionsDelay;
*pflValue = ALEffect->Reverb.ReflectionsDelay;
break;
case AL_EAXREVERB_LATE_REVERB_GAIN:
*pflValue = ALEffect->Params.Reverb.LateReverbGain;
*pflValue = ALEffect->Reverb.LateReverbGain;
break;
case AL_EAXREVERB_LATE_REVERB_DELAY:
*pflValue = ALEffect->Params.Reverb.LateReverbDelay;
*pflValue = ALEffect->Reverb.LateReverbDelay;
break;
case AL_EAXREVERB_AIR_ABSORPTION_GAINHF:
*pflValue = ALEffect->Params.Reverb.AirAbsorptionGainHF;
*pflValue = ALEffect->Reverb.AirAbsorptionGainHF;
break;
case AL_EAXREVERB_ECHO_TIME:
*pflValue = ALEffect->Params.Reverb.EchoTime;
*pflValue = ALEffect->Reverb.EchoTime;
break;
case AL_EAXREVERB_ECHO_DEPTH:
*pflValue = ALEffect->Params.Reverb.EchoDepth;
*pflValue = ALEffect->Reverb.EchoDepth;
break;
case AL_EAXREVERB_MODULATION_TIME:
*pflValue = ALEffect->Params.Reverb.ModulationTime;
*pflValue = ALEffect->Reverb.ModulationTime;
break;
case AL_EAXREVERB_MODULATION_DEPTH:
*pflValue = ALEffect->Params.Reverb.ModulationDepth;
*pflValue = ALEffect->Reverb.ModulationDepth;
break;
case AL_EAXREVERB_HFREFERENCE:
*pflValue = ALEffect->Params.Reverb.HFReference;
*pflValue = ALEffect->Reverb.HFReference;
break;
case AL_EAXREVERB_LFREFERENCE:
*pflValue = ALEffect->Params.Reverb.LFReference;
*pflValue = ALEffect->Reverb.LFReference;
break;
case AL_EAXREVERB_ROOM_ROLLOFF_FACTOR:
*pflValue = ALEffect->Params.Reverb.RoomRolloffFactor;
*pflValue = ALEffect->Reverb.RoomRolloffFactor;
break;
default:
@@ -892,51 +892,51 @@ AL_API ALvoid AL_APIENTRY alGetEffectf(ALuint effect, ALenum param, ALfloat *pfl
switch(param)
{
case AL_REVERB_DENSITY:
*pflValue = ALEffect->Params.Reverb.Density;
*pflValue = ALEffect->Reverb.Density;
break;
case AL_REVERB_DIFFUSION:
*pflValue = ALEffect->Params.Reverb.Diffusion;
*pflValue = ALEffect->Reverb.Diffusion;
break;
case AL_REVERB_GAIN:
*pflValue = ALEffect->Params.Reverb.Gain;
*pflValue = ALEffect->Reverb.Gain;
break;
case AL_REVERB_GAINHF:
*pflValue = ALEffect->Params.Reverb.GainHF;
*pflValue = ALEffect->Reverb.GainHF;
break;
case AL_REVERB_DECAY_TIME:
*pflValue = ALEffect->Params.Reverb.DecayTime;
*pflValue = ALEffect->Reverb.DecayTime;
break;
case AL_REVERB_DECAY_HFRATIO:
*pflValue = ALEffect->Params.Reverb.DecayHFRatio;
*pflValue = ALEffect->Reverb.DecayHFRatio;
break;
case AL_REVERB_REFLECTIONS_GAIN:
*pflValue = ALEffect->Params.Reverb.ReflectionsGain;
*pflValue = ALEffect->Reverb.ReflectionsGain;
break;
case AL_REVERB_REFLECTIONS_DELAY:
*pflValue = ALEffect->Params.Reverb.ReflectionsDelay;
*pflValue = ALEffect->Reverb.ReflectionsDelay;
break;
case AL_REVERB_LATE_REVERB_GAIN:
*pflValue = ALEffect->Params.Reverb.LateReverbGain;
*pflValue = ALEffect->Reverb.LateReverbGain;
break;
case AL_REVERB_LATE_REVERB_DELAY:
*pflValue = ALEffect->Params.Reverb.LateReverbDelay;
*pflValue = ALEffect->Reverb.LateReverbDelay;
break;
case AL_REVERB_AIR_ABSORPTION_GAINHF:
*pflValue = ALEffect->Params.Reverb.AirAbsorptionGainHF;
*pflValue = ALEffect->Reverb.AirAbsorptionGainHF;
break;
case AL_REVERB_ROOM_ROLLOFF_FACTOR:
*pflValue = ALEffect->Params.Reverb.RoomRolloffFactor;
*pflValue = ALEffect->Reverb.RoomRolloffFactor;
break;
default:
@@ -949,23 +949,23 @@ AL_API ALvoid AL_APIENTRY alGetEffectf(ALuint effect, ALenum param, ALfloat *pfl
switch(param)
{
case AL_ECHO_DELAY:
*pflValue = ALEffect->Params.Echo.Delay;
*pflValue = ALEffect->Echo.Delay;
break;
case AL_ECHO_LRDELAY:
*pflValue = ALEffect->Params.Echo.LRDelay;
*pflValue = ALEffect->Echo.LRDelay;
break;
case AL_ECHO_DAMPING:
*pflValue = ALEffect->Params.Echo.Damping;
*pflValue = ALEffect->Echo.Damping;
break;
case AL_ECHO_FEEDBACK:
*pflValue = ALEffect->Params.Echo.Feedback;
*pflValue = ALEffect->Echo.Feedback;
break;
case AL_ECHO_SPREAD:
*pflValue = ALEffect->Params.Echo.Spread;
*pflValue = ALEffect->Echo.Spread;
break;
default:
@@ -978,10 +978,10 @@ AL_API ALvoid AL_APIENTRY alGetEffectf(ALuint effect, ALenum param, ALfloat *pfl
switch(param)
{
case AL_RING_MODULATOR_FREQUENCY:
*pflValue = ALEffect->Params.Modulator.Frequency;
*pflValue = ALEffect->Modulator.Frequency;
break;
case AL_RING_MODULATOR_HIGHPASS_CUTOFF:
*pflValue = ALEffect->Params.Modulator.HighPassCutoff;
*pflValue = ALEffect->Modulator.HighPassCutoff;
break;
default:
@@ -995,7 +995,7 @@ AL_API ALvoid AL_APIENTRY alGetEffectf(ALuint effect, ALenum param, ALfloat *pfl
switch(param)
{
case AL_DEDICATED_GAIN:
*pflValue = ALEffect->Params.Dedicated.Gain;
*pflValue = ALEffect->Dedicated.Gain;
break;
default:
@@ -1029,14 +1029,14 @@ AL_API ALvoid AL_APIENTRY alGetEffectfv(ALuint effect, ALenum param, ALfloat *pf
switch(param)
{
case AL_EAXREVERB_REFLECTIONS_PAN:
pflValues[0] = ALEffect->Params.Reverb.ReflectionsPan[0];
pflValues[1] = ALEffect->Params.Reverb.ReflectionsPan[1];
pflValues[2] = ALEffect->Params.Reverb.ReflectionsPan[2];
pflValues[0] = ALEffect->Reverb.ReflectionsPan[0];
pflValues[1] = ALEffect->Reverb.ReflectionsPan[1];
pflValues[2] = ALEffect->Reverb.ReflectionsPan[2];
break;
case AL_EAXREVERB_LATE_REVERB_PAN:
pflValues[0] = ALEffect->Params.Reverb.LateReverbPan[0];
pflValues[1] = ALEffect->Params.Reverb.LateReverbPan[1];
pflValues[2] = ALEffect->Params.Reverb.LateReverbPan[2];
pflValues[0] = ALEffect->Reverb.LateReverbPan[0];
pflValues[1] = ALEffect->Reverb.LateReverbPan[1];
pflValues[2] = ALEffect->Reverb.LateReverbPan[2];
break;
default:
@@ -1086,49 +1086,49 @@ static void InitEffectParams(ALeffect *effect, ALenum type)
*/
case AL_EFFECT_EAXREVERB:
case AL_EFFECT_REVERB:
effect->Params.Reverb.Density = AL_EAXREVERB_DEFAULT_DENSITY;
effect->Params.Reverb.Diffusion = AL_EAXREVERB_DEFAULT_DIFFUSION;
effect->Params.Reverb.Gain = AL_EAXREVERB_DEFAULT_GAIN;
effect->Params.Reverb.GainHF = AL_EAXREVERB_DEFAULT_GAINHF;
effect->Params.Reverb.GainLF = AL_EAXREVERB_DEFAULT_GAINLF;
effect->Params.Reverb.DecayTime = AL_EAXREVERB_DEFAULT_DECAY_TIME;
effect->Params.Reverb.DecayHFRatio = AL_EAXREVERB_DEFAULT_DECAY_HFRATIO;
effect->Params.Reverb.DecayLFRatio = AL_EAXREVERB_DEFAULT_DECAY_LFRATIO;
effect->Params.Reverb.ReflectionsGain = AL_EAXREVERB_DEFAULT_REFLECTIONS_GAIN;
effect->Params.Reverb.ReflectionsDelay = AL_EAXREVERB_DEFAULT_REFLECTIONS_DELAY;
effect->Params.Reverb.ReflectionsPan[0] = AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ;
effect->Params.Reverb.ReflectionsPan[1] = AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ;
effect->Params.Reverb.ReflectionsPan[2] = AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ;
effect->Params.Reverb.LateReverbGain = AL_EAXREVERB_DEFAULT_LATE_REVERB_GAIN;
effect->Params.Reverb.LateReverbDelay = AL_EAXREVERB_DEFAULT_LATE_REVERB_DELAY;
effect->Params.Reverb.LateReverbPan[0] = AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ;
effect->Params.Reverb.LateReverbPan[1] = AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ;
effect->Params.Reverb.LateReverbPan[2] = AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ;
effect->Params.Reverb.EchoTime = AL_EAXREVERB_DEFAULT_ECHO_TIME;
effect->Params.Reverb.EchoDepth = AL_EAXREVERB_DEFAULT_ECHO_DEPTH;
effect->Params.Reverb.ModulationTime = AL_EAXREVERB_DEFAULT_MODULATION_TIME;
effect->Params.Reverb.ModulationDepth = AL_EAXREVERB_DEFAULT_MODULATION_DEPTH;
effect->Params.Reverb.AirAbsorptionGainHF = AL_EAXREVERB_DEFAULT_AIR_ABSORPTION_GAINHF;
effect->Params.Reverb.HFReference = AL_EAXREVERB_DEFAULT_HFREFERENCE;
effect->Params.Reverb.LFReference = AL_EAXREVERB_DEFAULT_LFREFERENCE;
effect->Params.Reverb.RoomRolloffFactor = AL_EAXREVERB_DEFAULT_ROOM_ROLLOFF_FACTOR;
effect->Params.Reverb.DecayHFLimit = AL_EAXREVERB_DEFAULT_DECAY_HFLIMIT;
effect->Reverb.Density = AL_EAXREVERB_DEFAULT_DENSITY;
effect->Reverb.Diffusion = AL_EAXREVERB_DEFAULT_DIFFUSION;
effect->Reverb.Gain = AL_EAXREVERB_DEFAULT_GAIN;
effect->Reverb.GainHF = AL_EAXREVERB_DEFAULT_GAINHF;
effect->Reverb.GainLF = AL_EAXREVERB_DEFAULT_GAINLF;
effect->Reverb.DecayTime = AL_EAXREVERB_DEFAULT_DECAY_TIME;
effect->Reverb.DecayHFRatio = AL_EAXREVERB_DEFAULT_DECAY_HFRATIO;
effect->Reverb.DecayLFRatio = AL_EAXREVERB_DEFAULT_DECAY_LFRATIO;
effect->Reverb.ReflectionsGain = AL_EAXREVERB_DEFAULT_REFLECTIONS_GAIN;
effect->Reverb.ReflectionsDelay = AL_EAXREVERB_DEFAULT_REFLECTIONS_DELAY;
effect->Reverb.ReflectionsPan[0] = AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ;
effect->Reverb.ReflectionsPan[1] = AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ;
effect->Reverb.ReflectionsPan[2] = AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ;
effect->Reverb.LateReverbGain = AL_EAXREVERB_DEFAULT_LATE_REVERB_GAIN;
effect->Reverb.LateReverbDelay = AL_EAXREVERB_DEFAULT_LATE_REVERB_DELAY;
effect->Reverb.LateReverbPan[0] = AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ;
effect->Reverb.LateReverbPan[1] = AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ;
effect->Reverb.LateReverbPan[2] = AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ;
effect->Reverb.EchoTime = AL_EAXREVERB_DEFAULT_ECHO_TIME;
effect->Reverb.EchoDepth = AL_EAXREVERB_DEFAULT_ECHO_DEPTH;
effect->Reverb.ModulationTime = AL_EAXREVERB_DEFAULT_MODULATION_TIME;
effect->Reverb.ModulationDepth = AL_EAXREVERB_DEFAULT_MODULATION_DEPTH;
effect->Reverb.AirAbsorptionGainHF = AL_EAXREVERB_DEFAULT_AIR_ABSORPTION_GAINHF;
effect->Reverb.HFReference = AL_EAXREVERB_DEFAULT_HFREFERENCE;
effect->Reverb.LFReference = AL_EAXREVERB_DEFAULT_LFREFERENCE;
effect->Reverb.RoomRolloffFactor = AL_EAXREVERB_DEFAULT_ROOM_ROLLOFF_FACTOR;
effect->Reverb.DecayHFLimit = AL_EAXREVERB_DEFAULT_DECAY_HFLIMIT;
break;
case AL_EFFECT_ECHO:
effect->Params.Echo.Delay = AL_ECHO_DEFAULT_DELAY;
effect->Params.Echo.LRDelay = AL_ECHO_DEFAULT_LRDELAY;
effect->Params.Echo.Damping = AL_ECHO_DEFAULT_DAMPING;
effect->Params.Echo.Feedback = AL_ECHO_DEFAULT_FEEDBACK;
effect->Params.Echo.Spread = AL_ECHO_DEFAULT_SPREAD;
effect->Echo.Delay = AL_ECHO_DEFAULT_DELAY;
effect->Echo.LRDelay = AL_ECHO_DEFAULT_LRDELAY;
effect->Echo.Damping = AL_ECHO_DEFAULT_DAMPING;
effect->Echo.Feedback = AL_ECHO_DEFAULT_FEEDBACK;
effect->Echo.Spread = AL_ECHO_DEFAULT_SPREAD;
break;
case AL_EFFECT_RING_MODULATOR:
effect->Params.Modulator.Frequency = AL_RING_MODULATOR_DEFAULT_FREQUENCY;
effect->Params.Modulator.HighPassCutoff = AL_RING_MODULATOR_DEFAULT_HIGHPASS_CUTOFF;
effect->Params.Modulator.Waveform = AL_RING_MODULATOR_DEFAULT_WAVEFORM;
effect->Modulator.Frequency = AL_RING_MODULATOR_DEFAULT_FREQUENCY;
effect->Modulator.HighPassCutoff = AL_RING_MODULATOR_DEFAULT_HIGHPASS_CUTOFF;
effect->Modulator.Waveform = AL_RING_MODULATOR_DEFAULT_WAVEFORM;
break;
case AL_EFFECT_DEDICATED_LOW_FREQUENCY_EFFECT:
case AL_EFFECT_DEDICATED_DIALOGUE:
effect->Params.Dedicated.Gain = 1.0f;
effect->Dedicated.Gain = 1.0f;
break;
}
}