comparison ext/openal-soft/OpenAL32/Include/alAuxEffectSlot.h @ 0:4a0efb7baf70

* Datasets becomes the new trunk and retires after that :-)
author mvbarracuda@33b003aa-7bff-0310-803a-e67f0ece8222
date Sun, 29 Jun 2008 18:44:17 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:4a0efb7baf70
1 #ifndef _AL_AUXEFFECTSLOT_H_
2 #define _AL_AUXEFFECTSLOT_H_
3
4 #include "alEffect.h"
5 #include "AL/al.h"
6
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11 #define AL_EFFECTSLOT_EFFECT 0x0001
12 #define AL_EFFECTSLOT_GAIN 0x0002
13 #define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003
14
15 #define AL_EFFECTSLOT_NULL 0x0000
16
17 typedef struct ALeffectslot
18 {
19 ALeffect effect;
20
21 ALfloat Gain;
22 ALboolean AuxSendAuto;
23
24 ALfloat *ReverbBuffer;
25 // in frames!
26 ALuint ReverbLength;
27 ALuint ReverbPos;
28 ALuint ReverbReflectPos;
29 ALuint ReverbLatePos;
30 ALfloat ReverbDecayGain;
31 ALfloat LastDecaySample;
32
33 ALuint refcount;
34
35 // Index to itself
36 ALuint effectslot;
37
38 struct ALeffectslot *next;
39 } ALeffectslot;
40
41 AL_API ALvoid AL_APIENTRY alGenAuxiliaryEffectSlots(ALsizei n, ALuint *effectslots);
42 AL_API ALvoid AL_APIENTRY alDeleteAuxiliaryEffectSlots(ALsizei n, ALuint *effectslots);
43 AL_API ALboolean AL_APIENTRY alIsAuxiliaryEffectSlot(ALuint effectslot);
44
45 AL_API ALvoid AL_APIENTRY alAuxiliaryEffectSloti(ALuint effectslot, ALenum param, ALint iValue);
46 AL_API ALvoid AL_APIENTRY alAuxiliaryEffectSlotiv(ALuint effectslot, ALenum param, ALint *piValues);
47 AL_API ALvoid AL_APIENTRY alAuxiliaryEffectSlotf(ALuint effectslot, ALenum param, ALfloat flValue);
48 AL_API ALvoid AL_APIENTRY alAuxiliaryEffectSlotfv(ALuint effectslot, ALenum param, ALfloat *pflValues);
49
50 AL_API ALvoid AL_APIENTRY alGetAuxiliaryEffectSloti(ALuint effectslot, ALenum param, ALint *piValue);
51 AL_API ALvoid AL_APIENTRY alGetAuxiliaryEffectSlotiv(ALuint effectslot, ALenum param, ALint *piValues);
52 AL_API ALvoid AL_APIENTRY alGetAuxiliaryEffectSlotf(ALuint effectslot, ALenum param, ALfloat *pflValue);
53 AL_API ALvoid AL_APIENTRY alGetAuxiliaryEffectSlotfv(ALuint effectslot, ALenum param, ALfloat *pflValues);
54
55 ALvoid ReleaseALAuxiliaryEffectSlots(ALCcontext *Context);
56
57 #ifdef __cplusplus
58 }
59 #endif
60
61 #endif