Add missing linear resampler to the option setting list
[openal-soft.git] / alc / inprogext.h
blob60717ab12448bec5cddbef82a1ef9ae2c3151400
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 ALC_SOFT_loopback_bformat
13 #define ALC_SOFT_loopback_bformat 1
14 #define ALC_AMBISONIC_LAYOUT_SOFT 0x1997
15 #define ALC_AMBISONIC_SCALING_SOFT 0x1998
16 #define ALC_AMBISONIC_ORDER_SOFT 0x1999
17 #define ALC_MAX_AMBISONIC_ORDER_SOFT 0x199B
19 #define ALC_BFORMAT3D_SOFT 0x1508
21 /* Ambisonic layouts */
22 #define ALC_FUMA_SOFT 0x0000
23 #define ALC_ACN_SOFT 0x0001
25 /* Ambisonic scalings (normalization) */
26 /*#define ALC_FUMA_SOFT*/
27 #define ALC_SN3D_SOFT 0x0001
28 #define ALC_N3D_SOFT 0x0002
29 #endif
31 #ifndef AL_SOFT_map_buffer
32 #define AL_SOFT_map_buffer 1
33 typedef unsigned int ALbitfieldSOFT;
34 #define AL_MAP_READ_BIT_SOFT 0x00000001
35 #define AL_MAP_WRITE_BIT_SOFT 0x00000002
36 #define AL_MAP_PERSISTENT_BIT_SOFT 0x00000004
37 #define AL_PRESERVE_DATA_BIT_SOFT 0x00000008
38 typedef void (AL_APIENTRY*LPALBUFFERSTORAGESOFT)(ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq, ALbitfieldSOFT flags);
39 typedef void* (AL_APIENTRY*LPALMAPBUFFERSOFT)(ALuint buffer, ALsizei offset, ALsizei length, ALbitfieldSOFT access);
40 typedef void (AL_APIENTRY*LPALUNMAPBUFFERSOFT)(ALuint buffer);
41 typedef void (AL_APIENTRY*LPALFLUSHMAPPEDBUFFERSOFT)(ALuint buffer, ALsizei offset, ALsizei length);
42 #ifdef AL_ALEXT_PROTOTYPES
43 AL_API void AL_APIENTRY alBufferStorageSOFT(ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq, ALbitfieldSOFT flags);
44 AL_API void* AL_APIENTRY alMapBufferSOFT(ALuint buffer, ALsizei offset, ALsizei length, ALbitfieldSOFT access);
45 AL_API void AL_APIENTRY alUnmapBufferSOFT(ALuint buffer);
46 AL_API void AL_APIENTRY alFlushMappedBufferSOFT(ALuint buffer, ALsizei offset, ALsizei length);
47 #endif
48 #endif
50 #ifndef AL_SOFT_events
51 #define AL_SOFT_events 1
52 #define AL_EVENT_CALLBACK_FUNCTION_SOFT 0x1220
53 #define AL_EVENT_CALLBACK_USER_PARAM_SOFT 0x1221
54 #define AL_EVENT_TYPE_BUFFER_COMPLETED_SOFT 0x1222
55 #define AL_EVENT_TYPE_SOURCE_STATE_CHANGED_SOFT 0x1223
56 #define AL_EVENT_TYPE_DISCONNECTED_SOFT 0x1224
57 typedef void (AL_APIENTRY*ALEVENTPROCSOFT)(ALenum eventType, ALuint object, ALuint param,
58 ALsizei length, const ALchar *message,
59 void *userParam);
60 typedef void (AL_APIENTRY*LPALEVENTCONTROLSOFT)(ALsizei count, const ALenum *types, ALboolean enable);
61 typedef void (AL_APIENTRY*LPALEVENTCALLBACKSOFT)(ALEVENTPROCSOFT callback, void *userParam);
62 typedef void* (AL_APIENTRY*LPALGETPOINTERSOFT)(ALenum pname);
63 typedef void (AL_APIENTRY*LPALGETPOINTERVSOFT)(ALenum pname, void **values);
64 #ifdef AL_ALEXT_PROTOTYPES
65 AL_API void AL_APIENTRY alEventControlSOFT(ALsizei count, const ALenum *types, ALboolean enable);
66 AL_API void AL_APIENTRY alEventCallbackSOFT(ALEVENTPROCSOFT callback, void *userParam);
67 AL_API void* AL_APIENTRY alGetPointerSOFT(ALenum pname);
68 AL_API void AL_APIENTRY alGetPointervSOFT(ALenum pname, void **values);
69 #endif
70 #endif
72 #ifndef AL_SOFT_effect_target
73 #define AL_SOFT_effect_target
74 #define AL_EFFECTSLOT_TARGET_SOFT 0x199C
75 #endif
77 #ifndef AL_SOFT_callback_buffer
78 #define AL_SOFT_callback_buffer
79 #define AL_BUFFER_CALLBACK_FUNCTION_SOFT 0x19A0
80 #define AL_BUFFER_CALLBACK_USER_PARAM_SOFT 0x19A1
81 typedef ALsizei (AL_APIENTRY*LPALBUFFERCALLBACKTYPESOFT)(ALvoid *userptr, ALvoid *sampledata, ALsizei numsamples);
82 typedef void (AL_APIENTRY*LPALBUFFERCALLBACKSOFT)(ALuint buffer, ALenum format, ALsizei freq, LPALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr, ALbitfieldSOFT flags);
83 typedef void (AL_APIENTRY*LPALGETBUFFERPTRSOFT)(ALuint buffer, ALenum param, ALvoid **value);
84 typedef void (AL_APIENTRY*LPALGETBUFFER3PTRSOFT)(ALuint buffer, ALenum param, ALvoid **value1, ALvoid **value2, ALvoid **value3);
85 typedef void (AL_APIENTRY*LPALGETBUFFERPTRVSOFT)(ALuint buffer, ALenum param, ALvoid **values);
86 #ifdef AL_ALEXT_PROTOTYPES
87 AL_API void AL_APIENTRY alBufferCallbackSOFT(ALuint buffer, ALenum format, ALsizei freq, LPALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr, ALbitfieldSOFT flags);
88 AL_API void AL_APIENTRY alGetBufferPtrSOFT(ALuint buffer, ALenum param, ALvoid **ptr);
89 AL_API void AL_APIENTRY alGetBuffer3PtrSOFT(ALuint buffer, ALenum param, ALvoid **ptr0, ALvoid **ptr1, ALvoid **ptr2);
90 AL_API void AL_APIENTRY alGetBufferPtrvSOFT(ALuint buffer, ALenum param, ALvoid **ptr);
91 #endif
92 #endif
94 #ifndef AL_SOFT_bformat_hoa
95 #define AL_SOFT_bformat_hoa
96 #define AL_UNPACK_AMBISONIC_ORDER_SOFT 0x199D
97 #endif
99 #ifndef AL_SOFT_convolution_reverb
100 #define AL_SOFT_convolution_reverb
101 #define AL_EFFECT_CONVOLUTION_REVERB_SOFT 0xA000
102 #define AL_EFFECTSLOT_STATE_SOFT 0x199D
103 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTPLAYSOFT)(ALuint slotid);
104 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTPLAYVSOFT)(ALsizei n, const ALuint *slotids);
105 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTSTOPSOFT)(ALuint slotid);
106 typedef void (AL_APIENTRY*LPALAUXILIARYEFFECTSLOTSTOPVSOFT)(ALsizei n, const ALuint *slotids);
107 #ifdef AL_ALEXT_PROTOTYPES
108 AL_API void AL_APIENTRY alAuxiliaryEffectSlotPlaySOFT(ALuint slotid);
109 AL_API void AL_APIENTRY alAuxiliaryEffectSlotPlayvSOFT(ALsizei n, const ALuint *slotids);
110 AL_API void AL_APIENTRY alAuxiliaryEffectSlotStopSOFT(ALuint slotid);
111 AL_API void AL_APIENTRY alAuxiliaryEffectSlotStopvSOFT(ALsizei n, const ALuint *slotids);
112 #endif
113 #endif
115 #ifdef __cplusplus
116 } /* extern "C" */
117 #endif
119 #endif /* INPROGEXT_H */