Move the WetBuffer into the effect slot object
[openal-soft.git] / OpenAL32 / Include / alAuxEffectSlot.h
bloba818bb47734e33e1e1747192da65a2589d811b87
1 #ifndef _AL_AUXEFFECTSLOT_H_
2 #define _AL_AUXEFFECTSLOT_H_
4 #include "AL/al.h"
5 #include "alEffect.h"
6 #include "alFilter.h"
7 #include "alReverb.h"
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
13 #define AL_EFFECTSLOT_EFFECT 0x0001
14 #define AL_EFFECTSLOT_GAIN 0x0002
15 #define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003
17 #define AL_EFFECTSLOT_NULL 0x0000
19 typedef struct ALeffectslot
21 ALeffect effect;
23 ALfloat Gain;
24 ALboolean AuxSendAuto;
26 ALverbState *ReverbState;
28 ALfloat WetBuffer[BUFFERSIZE];
30 ALuint refcount;
32 // Index to itself
33 ALuint effectslot;
35 struct ALeffectslot *next;
36 } ALeffectslot;
38 ALvoid AL_APIENTRY alGenAuxiliaryEffectSlots(ALsizei n, ALuint *effectslots);
39 ALvoid AL_APIENTRY alDeleteAuxiliaryEffectSlots(ALsizei n, ALuint *effectslots);
40 ALboolean AL_APIENTRY alIsAuxiliaryEffectSlot(ALuint effectslot);
42 ALvoid AL_APIENTRY alAuxiliaryEffectSloti(ALuint effectslot, ALenum param, ALint iValue);
43 ALvoid AL_APIENTRY alAuxiliaryEffectSlotiv(ALuint effectslot, ALenum param, ALint *piValues);
44 ALvoid AL_APIENTRY alAuxiliaryEffectSlotf(ALuint effectslot, ALenum param, ALfloat flValue);
45 ALvoid AL_APIENTRY alAuxiliaryEffectSlotfv(ALuint effectslot, ALenum param, ALfloat *pflValues);
47 ALvoid AL_APIENTRY alGetAuxiliaryEffectSloti(ALuint effectslot, ALenum param, ALint *piValue);
48 ALvoid AL_APIENTRY alGetAuxiliaryEffectSlotiv(ALuint effectslot, ALenum param, ALint *piValues);
49 ALvoid AL_APIENTRY alGetAuxiliaryEffectSlotf(ALuint effectslot, ALenum param, ALfloat *pflValue);
50 ALvoid AL_APIENTRY alGetAuxiliaryEffectSlotfv(ALuint effectslot, ALenum param, ALfloat *pflValues);
52 ALvoid ReleaseALAuxiliaryEffectSlots(ALCcontext *Context);
54 #ifdef __cplusplus
56 #endif
58 #endif