16#define AL_EFFECTSLOT_NULL 0x0000
17#define AL_EFFECTSLOT_EFFECT 0x0001
18#define AL_EFFECTSLOT_GAIN 0x0002
19#define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003
21#define AL_FILTER_TYPE 0x8001
22#define AL_FILTER_NULL 0x0000
23#define AL_FILTER_LOWPASS 0x0001
24#define AL_FILTER_HIGHPASS 0x0002
25#define AL_FILTER_BANDPASS 0x0003
27#define AL_EFFECT_TYPE 0x8001
28#define AL_EFFECT_NULL 0x0000
29#define AL_EFFECT_EAXREVERB 0x8000
30#define AL_EFFECT_REVERB 0x0001
31#define AL_EFFECT_CHORUS 0x0002
32#define AL_EFFECT_DISTORTION 0x0003
33#define AL_EFFECT_ECHO 0x0004
34#define AL_EFFECT_FLANGER 0x0005
35#define AL_EFFECT_FREQUENCY_SHIFTER 0x0006
36#define AL_EFFECT_VOCAL_MORPHER 0x0007
37#define AL_EFFECT_PITCH_SHIFTER 0x0008
38#define AL_EFFECT_RING_MODULATOR 0x0009
39#define AL_EFFECT_AUTOWAH 0x000A
40#define AL_EFFECT_COMPRESSOR 0x000B
41#define AL_EFFECT_EQUALIZER 0x000C
43#define AL_REVERB_DENSITY 0x0001
44#define AL_REVERB_DIFFUSION 0x0002
45#define AL_REVERB_GAIN 0x0003
46#define AL_REVERB_GAINHF 0x0004
47#define AL_REVERB_DECAY_TIME 0x0005
48#define AL_REVERB_DECAY_HFRATIO 0x0006
49#define AL_REVERB_REFLECTIONS_GAIN 0x0007
50#define AL_REVERB_REFLECTIONS_DELAY 0x0008
51#define AL_REVERB_LATE_REVERB_GAIN 0x0009
52#define AL_REVERB_LATE_REVERB_DELAY 0x000A
53#define AL_REVERB_AIR_ABSORPTION_GAINHF 0x000B
54#define AL_REVERB_ROOM_ROLLOFF_FACTOR 0x000C
55#define AL_REVERB_DECAY_HFLIMIT 0x000D
57#define AL_ECHO_DELAY 0x0001
58#define AL_ECHO_LRDELAY 0x0002
59#define AL_ECHO_DAMPING 0x0003
60#define AL_ECHO_FEEDBACK 0x0004
61#define AL_ECHO_SPREAD 0x0005
63#define AL_METERS_PER_UNIT 0x20004
65#define AL_DIRECT_FILTER 0x20005
66#define AL_AUXILIARY_SEND_FILTER 0x20006
67#define AL_AIR_ABSORPTION_FACTOR 0x20007
68#define AL_ROOM_ROLLOFF_FACTOR 0x20008
69#define AL_CONE_OUTER_GAINHF 0x20009
70#define AL_DIRECT_FILTER_GAINHF_AUTO 0x2000A
71#define AL_AUXILIARY_SEND_FILTER_GAIN_AUTO 0x2000B
72#define AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO 0x2000C
74#define ALC_EFX_MAJOR_VERSION 0x20001
75#define ALC_EFX_MINOR_VERSION 0x20002
76#define ALC_MAX_AUXILIARY_SENDS 0x20003
79extern ALvoid( AL_APIENTRY *nalGenAuxiliaryEffectSlots )( ALsizei, ALuint * );
80extern ALvoid( AL_APIENTRY *nalDeleteAuxiliaryEffectSlots )( ALsizei,
82extern ALboolean( AL_APIENTRY *nalIsAuxiliaryEffectSlot )( ALuint );
83extern ALvoid( AL_APIENTRY *nalAuxiliaryEffectSloti )( ALuint, ALenum, ALint );
84extern ALvoid( AL_APIENTRY *nalAuxiliaryEffectSlotiv )( ALuint, ALenum,
86extern ALvoid( AL_APIENTRY *nalAuxiliaryEffectSlotf )( ALuint, ALenum,
88extern ALvoid( AL_APIENTRY *nalAuxiliaryEffectSlotfv )( ALuint, ALenum,
90extern ALvoid( AL_APIENTRY *nalGetAuxiliaryEffectSloti )( ALuint, ALenum,
92extern ALvoid( AL_APIENTRY *nalGetAuxiliaryEffectSlotiv )( ALuint, ALenum,
94extern ALvoid( AL_APIENTRY *nalGetAuxiliaryEffectSlotf )( ALuint, ALenum,
96extern ALvoid( AL_APIENTRY *nalGetAuxiliaryEffectSlotfv )( ALuint, ALenum,
99extern ALvoid( AL_APIENTRY *nalGenFilters )( ALsizei, ALuint * );
100extern ALvoid( AL_APIENTRY *nalDeleteFilters )( ALsizei, ALuint * );
101extern ALvoid( AL_APIENTRY *nalFilteri )( ALuint, ALenum, ALint );
102extern ALvoid( AL_APIENTRY *nalFilteriv )( ALuint, ALenum, ALint * );
103extern ALvoid( AL_APIENTRY *nalFilterf )( ALuint, ALenum, ALfloat );
104extern ALvoid( AL_APIENTRY *nalFilterfv )( ALuint, ALenum, ALfloat * );
106extern ALvoid( AL_APIENTRY *nalGenEffects )( ALsizei, ALuint * );
107extern ALvoid( AL_APIENTRY *nalDeleteEffects )( ALsizei, ALuint * );
108extern ALvoid( AL_APIENTRY *nalEffecti )( ALuint, ALenum, ALint );
109extern ALvoid( AL_APIENTRY *nalEffectiv )( ALuint, ALenum, ALint * );
110extern ALvoid( AL_APIENTRY *nalEffectf )( ALuint, ALenum, ALfloat );
111extern ALvoid( AL_APIENTRY *nalEffectfv )( ALuint, ALenum, ALfloat * );
115#define al_checkErr() al_checkHandleError( alGetError(), __func__, __LINE__ )
116void al_checkHandleError( ALenum err,
const char *func,
int line );