Use a boolean check instead of a function pointer
[openal-soft.git] / alc / inprogext.h
blob9af80f12ecccabfa6997cb88e5756c4aa6958db5
1 #ifndef INPROGEXT_H
2 #define INPROGEXT_H
4 #include "AL/al.h"
5 #include "AL/alc.h"
6 #include "AL/alext.h"
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
12 #ifndef AL_SOFT_map_buffer
13 #define AL_SOFT_map_buffer 1
14 typedef unsigned int ALbitfieldSOFT;
15 #define AL_MAP_READ_BIT_SOFT 0x00000001
16 #define AL_MAP_WRITE_BIT_SOFT 0x00000002
17 #define AL_MAP_PERSISTENT_BIT_SOFT 0x00000004
18 #define AL_PRESERVE_DATA_BIT_SOFT 0x00000008
19 typedef void (AL_APIENTRY*LPALBUFFERSTORAGESOFT)(ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq, ALbitfieldSOFT flags);
20 typedef void* (AL_APIENTRY*LPALMAPBUFFERSOFT)(ALuint buffer, ALsizei offset, ALsizei length, ALbitfieldSOFT access);
21 typedef void (AL_APIENTRY*LPALUNMAPBUFFERSOFT)(ALuint buffer);
22 typedef void (AL_APIENTRY*LPALFLUSHMAPPEDBUFFERSOFT)(ALuint buffer, ALsizei offset, ALsizei length);
23 #ifdef AL_ALEXT_PROTOTYPES
24 AL_API void AL_APIENTRY alBufferStorageSOFT(ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq, ALbitfieldSOFT flags);
25 AL_API void* AL_APIENTRY alMapBufferSOFT(ALuint buffer, ALsizei offset, ALsizei length, ALbitfieldSOFT access);
26 AL_API void AL_APIENTRY alUnmapBufferSOFT(ALuint buffer);
27 AL_API void AL_APIENTRY alFlushMappedBufferSOFT(ALuint buffer, ALsizei offset, ALsizei length);
28 #endif
29 #endif
31 #ifndef AL_SOFT_bformat_hoa
32 #define AL_SOFT_bformat_hoa
33 #define AL_UNPACK_AMBISONIC_ORDER_SOFT 0x199D
34 #endif
36 #ifndef AL_SOFT_convolution_reverb
37 #define AL_SOFT_convolution_reverb
38 #define AL_EFFECT_CONVOLUTION_REVERB_SOFT 0xA000
39 #define AL_EFFECTSLOT_STATE_SOFT 0x199D
40 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTPLAYSOFT)(ALuint slotid);
41 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTPLAYVSOFT)(ALsizei n, const ALuint *slotids);
42 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTSTOPSOFT)(ALuint slotid);
43 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTSTOPVSOFT)(ALsizei n, const ALuint *slotids);
44 #ifdef AL_ALEXT_PROTOTYPES
45 AL_API void AL_APIENTRY alAuxiliaryEffectSlotPlaySOFT(ALuint slotid);
46 AL_API void AL_APIENTRY alAuxiliaryEffectSlotPlayvSOFT(ALsizei n, const ALuint *slotids);
47 AL_API void AL_APIENTRY alAuxiliaryEffectSlotStopSOFT(ALuint slotid);
48 AL_API void AL_APIENTRY alAuxiliaryEffectSlotStopvSOFT(ALsizei n, const ALuint *slotids);
49 #endif
50 #endif
52 #ifndef AL_SOFT_hold_on_disconnect
53 #define AL_SOFT_hold_on_disconnect
54 #define AL_STOP_SOURCES_ON_DISCONNECT_SOFT 0x19AB
55 #endif
58 /* Non-standard export. Not part of any extension. */
59 AL_API const ALchar* AL_APIENTRY alsoft_get_version(void);
62 /* Functions from abandoned extenions. Only here for binary compatibility. */
63 AL_API void AL_APIENTRY alSourceQueueBufferLayersSOFT(ALuint src, ALsizei nb,
64 const ALuint *buffers);
66 AL_API ALint64SOFT AL_APIENTRY alGetInteger64SOFT(ALenum pname);
67 AL_API void AL_APIENTRY alGetInteger64vSOFT(ALenum pname, ALint64SOFT *values);
69 #ifdef __cplusplus
70 } /* extern "C" */
71 #endif
73 #endif /* INPROGEXT_H */