aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2007-12-18 17:41:44 -0800
committerChris Robinson <[email protected]>2007-12-18 17:41:44 -0800
commit17c88814445333bb14797e7598f25d94ae350a3b (patch)
tree373512d27e805b387ce33bbc22f80ff7581f19c0
parent6aabc837a967b15993c5a9f3da63164f451811c3 (diff)
Add AL_EFFECTSLOT_AUXILIARY_SEND_AUTO property (still unimplemented)
-rw-r--r--OpenAL32/Include/alAuxEffectSlot.h1
-rw-r--r--OpenAL32/alAuxEffectSlot.c17
2 files changed, 18 insertions, 0 deletions
diff --git a/OpenAL32/Include/alAuxEffectSlot.h b/OpenAL32/Include/alAuxEffectSlot.h
index 72640610..5e6441a2 100644
--- a/OpenAL32/Include/alAuxEffectSlot.h
+++ b/OpenAL32/Include/alAuxEffectSlot.h
@@ -22,6 +22,7 @@ typedef struct ALeffectslot_struct
ALeffect effect;
ALfloat Gain;
+ ALboolean AuxSendAuto;
// Index to itself
ALuint effectslot;
diff --git a/OpenAL32/alAuxEffectSlot.c b/OpenAL32/alAuxEffectSlot.c
index 564314bd..4b3368ad 100644
--- a/OpenAL32/alAuxEffectSlot.c
+++ b/OpenAL32/alAuxEffectSlot.c
@@ -64,6 +64,9 @@ AL_API ALvoid AL_APIENTRY alGenAuxiliaryEffectSlots(ALsizei n, ALuint *effectslo
break;
}
+ (*list)->Gain = 1.0;
+ (*list)->AuxSendAuto = AL_TRUE;
+
effectslots[i] = (ALuint)ALTHUNK_ADDENTRY(*list);
(*list)->effectslot = effectslots[i];
@@ -181,6 +184,14 @@ AL_API ALvoid AL_APIENTRY alAuxiliaryEffectSloti(ALuint effectslot, ALenum param
alSetError(AL_INVALID_VALUE);
break;
+ case AL_EFFECTSLOT_AUXILIARY_SEND_AUTO:
+ /* FIXME: Unused */
+ if(iValue == AL_TRUE || iValue == AL_FALSE)
+ ALEffectSlot->AuxSendAuto = iValue;
+ else
+ alSetError(AL_INVALID_VALUE);
+ break;
+
default:
alSetError(AL_INVALID_ENUM);
break;
@@ -204,6 +215,7 @@ AL_API ALvoid AL_APIENTRY alAuxiliaryEffectSlotiv(ALuint effectslot, ALenum para
switch(param)
{
case AL_EFFECTSLOT_EFFECT:
+ case AL_EFFECTSLOT_AUXILIARY_SEND_AUTO:
alAuxiliaryEffectSloti(effectslot, param, piValues[0]);
break;
@@ -294,6 +306,10 @@ AL_API ALvoid AL_APIENTRY alGetAuxiliaryEffectSloti(ALuint effectslot, ALenum pa
*piValue = ALEffectSlot->effect.effect;
break;
+ case AL_EFFECTSLOT_AUXILIARY_SEND_AUTO:
+ *piValue = ALEffectSlot->AuxSendAuto;
+ break;
+
default:
alSetError(AL_INVALID_ENUM);
break;
@@ -317,6 +333,7 @@ AL_API ALvoid AL_APIENTRY alGetAuxiliaryEffectSlotiv(ALuint effectslot, ALenum p
switch(param)
{
case AL_EFFECTSLOT_EFFECT:
+ case AL_EFFECTSLOT_AUXILIARY_SEND_AUTO:
alGetAuxiliaryEffectSloti(effectslot, param, piValues);
break;