Reduce the chorus effect output gain
[openal-soft.git] / include / AL / alext.h
blob02cfe2db7469137464fd202ef01c099b2309a220
1 #ifndef AL_ALEXT_H
2 #define AL_ALEXT_H
4 /* NOLINTBEGIN */
5 #include <stddef.h>
6 /* Define int64 and uint64 types */
7 #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \
8 (defined(__cplusplus) && __cplusplus >= 201103L)
9 #include <stdint.h>
10 typedef int64_t _alsoft_int64_t;
11 typedef uint64_t _alsoft_uint64_t;
12 #elif defined(_WIN32)
13 typedef __int64 _alsoft_int64_t;
14 typedef unsigned __int64 _alsoft_uint64_t;
15 #else
16 /* Fallback if nothing above works */
17 #include <stdint.h>
18 typedef int64_t _alsoft_int64_t;
19 typedef uint64_t _alsoft_uint64_t;
20 #endif
22 #include "alc.h"
23 #include "al.h"
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
29 struct _GUID;
31 #ifndef AL_LOKI_IMA_ADPCM_format
32 #define AL_LOKI_IMA_ADPCM_format 1
33 #define AL_FORMAT_IMA_ADPCM_MONO16_EXT 0x10000
34 #define AL_FORMAT_IMA_ADPCM_STEREO16_EXT 0x10001
35 #endif
37 #ifndef AL_LOKI_WAVE_format
38 #define AL_LOKI_WAVE_format 1
39 #define AL_FORMAT_WAVE_EXT 0x10002
40 #endif
42 #ifndef AL_EXT_vorbis
43 #define AL_EXT_vorbis 1
44 #define AL_FORMAT_VORBIS_EXT 0x10003
45 #endif
47 #ifndef AL_LOKI_quadriphonic
48 #define AL_LOKI_quadriphonic 1
49 #define AL_FORMAT_QUAD8_LOKI 0x10004
50 #define AL_FORMAT_QUAD16_LOKI 0x10005
51 #endif
53 #ifndef AL_EXT_float32
54 #define AL_EXT_float32 1
55 #define AL_FORMAT_MONO_FLOAT32 0x10010
56 #define AL_FORMAT_STEREO_FLOAT32 0x10011
57 #endif
59 #ifndef AL_EXT_double
60 #define AL_EXT_double 1
61 #define AL_FORMAT_MONO_DOUBLE_EXT 0x10012
62 #define AL_FORMAT_STEREO_DOUBLE_EXT 0x10013
63 #endif
65 #ifndef AL_EXT_MULAW
66 #define AL_EXT_MULAW 1
67 #define AL_FORMAT_MONO_MULAW_EXT 0x10014
68 #define AL_FORMAT_STEREO_MULAW_EXT 0x10015
69 #endif
71 #ifndef AL_EXT_ALAW
72 #define AL_EXT_ALAW 1
73 #define AL_FORMAT_MONO_ALAW_EXT 0x10016
74 #define AL_FORMAT_STEREO_ALAW_EXT 0x10017
75 #endif
77 #ifndef ALC_LOKI_audio_channel
78 #define ALC_LOKI_audio_channel 1
79 #define ALC_CHAN_MAIN_LOKI 0x500001
80 #define ALC_CHAN_PCM_LOKI 0x500002
81 #define ALC_CHAN_CD_LOKI 0x500003
82 #endif
84 #ifndef AL_EXT_MCFORMATS
85 #define AL_EXT_MCFORMATS 1
86 /* Provides support for surround sound buffer formats with 8, 16, and 32-bit
87 * samples.
89 * QUAD8: Unsigned 8-bit, Quadraphonic (Front Left, Front Right, Rear Left,
90 * Rear Right).
91 * QUAD16: Signed 16-bit, Quadraphonic.
92 * QUAD32: 32-bit float, Quadraphonic.
93 * REAR8: Unsigned 8-bit, Rear Stereo (Rear Left, Rear Right).
94 * REAR16: Signed 16-bit, Rear Stereo.
95 * REAR32: 32-bit float, Rear Stereo.
96 * 51CHN8: Unsigned 8-bit, 5.1 Surround (Front Left, Front Right, Front Center,
97 * LFE, Side Left, Side Right). Note that some audio systems may label
98 * 5.1's Side channels as Rear or Surround; they are equivalent for the
99 * purposes of this extension.
100 * 51CHN16: Signed 16-bit, 5.1 Surround.
101 * 51CHN32: 32-bit float, 5.1 Surround.
102 * 61CHN8: Unsigned 8-bit, 6.1 Surround (Front Left, Front Right, Front Center,
103 * LFE, Rear Center, Side Left, Side Right).
104 * 61CHN16: Signed 16-bit, 6.1 Surround.
105 * 61CHN32: 32-bit float, 6.1 Surround.
106 * 71CHN8: Unsigned 8-bit, 7.1 Surround (Front Left, Front Right, Front Center,
107 * LFE, Rear Left, Rear Right, Side Left, Side Right).
108 * 71CHN16: Signed 16-bit, 7.1 Surround.
109 * 71CHN32: 32-bit float, 7.1 Surround.
111 #define AL_FORMAT_QUAD8 0x1204
112 #define AL_FORMAT_QUAD16 0x1205
113 #define AL_FORMAT_QUAD32 0x1206
114 #define AL_FORMAT_REAR8 0x1207
115 #define AL_FORMAT_REAR16 0x1208
116 #define AL_FORMAT_REAR32 0x1209
117 #define AL_FORMAT_51CHN8 0x120A
118 #define AL_FORMAT_51CHN16 0x120B
119 #define AL_FORMAT_51CHN32 0x120C
120 #define AL_FORMAT_61CHN8 0x120D
121 #define AL_FORMAT_61CHN16 0x120E
122 #define AL_FORMAT_61CHN32 0x120F
123 #define AL_FORMAT_71CHN8 0x1210
124 #define AL_FORMAT_71CHN16 0x1211
125 #define AL_FORMAT_71CHN32 0x1212
126 #endif
128 #ifndef AL_EXT_MULAW_MCFORMATS
129 #define AL_EXT_MULAW_MCFORMATS 1
130 #define AL_FORMAT_MONO_MULAW 0x10014
131 #define AL_FORMAT_STEREO_MULAW 0x10015
132 #define AL_FORMAT_QUAD_MULAW 0x10021
133 #define AL_FORMAT_REAR_MULAW 0x10022
134 #define AL_FORMAT_51CHN_MULAW 0x10023
135 #define AL_FORMAT_61CHN_MULAW 0x10024
136 #define AL_FORMAT_71CHN_MULAW 0x10025
137 #endif
139 #ifndef AL_EXT_IMA4
140 #define AL_EXT_IMA4 1
141 #define AL_FORMAT_MONO_IMA4 0x1300
142 #define AL_FORMAT_STEREO_IMA4 0x1301
143 #endif
145 #ifndef AL_EXT_STATIC_BUFFER
146 #define AL_EXT_STATIC_BUFFER 1
147 typedef void (AL_APIENTRY*PFNALBUFFERDATASTATICPROC)(const ALuint,ALenum,ALvoid*,ALsizei,ALsizei) AL_API_NOEXCEPT17;
148 #ifdef AL_ALEXT_PROTOTYPES
149 void AL_APIENTRY alBufferDataStatic(const ALuint buffer, ALenum format, ALvoid *data, ALsizei size, ALsizei freq) AL_API_NOEXCEPT;
150 #endif
151 #endif
153 #ifndef ALC_EXT_EFX
154 #define ALC_EXT_EFX 1
155 #include "efx.h"
156 #endif
158 #ifndef ALC_EXT_disconnect
159 #define ALC_EXT_disconnect 1
160 #define ALC_CONNECTED 0x313
161 #endif
163 #ifndef ALC_EXT_thread_local_context
164 #define ALC_EXT_thread_local_context 1
165 typedef ALCboolean (ALC_APIENTRY*PFNALCSETTHREADCONTEXTPROC)(ALCcontext *context) ALC_API_NOEXCEPT17;
166 typedef ALCcontext* (ALC_APIENTRY*PFNALCGETTHREADCONTEXTPROC)(void) ALC_API_NOEXCEPT17;
167 #ifdef AL_ALEXT_PROTOTYPES
168 ALC_API ALCboolean ALC_APIENTRY alcSetThreadContext(ALCcontext *context) ALC_API_NOEXCEPT;
169 ALC_API ALCcontext* ALC_APIENTRY alcGetThreadContext(void) ALC_API_NOEXCEPT;
170 #endif
171 #endif
173 #ifndef AL_EXT_source_distance_model
174 #define AL_EXT_source_distance_model 1
175 #define AL_SOURCE_DISTANCE_MODEL 0x200
176 #endif
178 #ifndef AL_SOFT_buffer_sub_data
179 #define AL_SOFT_buffer_sub_data 1
180 #define AL_BYTE_RW_OFFSETS_SOFT 0x1031
181 #define AL_SAMPLE_RW_OFFSETS_SOFT 0x1032
182 typedef void (AL_APIENTRY*PFNALBUFFERSUBDATASOFTPROC)(ALuint,ALenum,const ALvoid*,ALsizei,ALsizei) AL_API_NOEXCEPT17;
183 #ifdef AL_ALEXT_PROTOTYPES
184 AL_API void AL_APIENTRY alBufferSubDataSOFT(ALuint buffer,ALenum format,const ALvoid *data,ALsizei offset,ALsizei length) AL_API_NOEXCEPT;
185 #endif
186 #endif
188 #ifndef AL_SOFT_loop_points
189 #define AL_SOFT_loop_points 1
190 #define AL_LOOP_POINTS_SOFT 0x2015
191 #endif
193 #ifndef AL_EXT_FOLDBACK
194 #define AL_EXT_FOLDBACK 1
195 #define AL_EXT_FOLDBACK_NAME "AL_EXT_FOLDBACK"
196 #define AL_FOLDBACK_EVENT_BLOCK 0x4112
197 #define AL_FOLDBACK_EVENT_START 0x4111
198 #define AL_FOLDBACK_EVENT_STOP 0x4113
199 #define AL_FOLDBACK_MODE_MONO 0x4101
200 #define AL_FOLDBACK_MODE_STEREO 0x4102
201 typedef void (AL_APIENTRY*LPALFOLDBACKCALLBACK)(ALenum,ALsizei) AL_API_NOEXCEPT17;
202 typedef void (AL_APIENTRY*LPALREQUESTFOLDBACKSTART)(ALenum,ALsizei,ALsizei,ALfloat*,LPALFOLDBACKCALLBACK) AL_API_NOEXCEPT17;
203 typedef void (AL_APIENTRY*LPALREQUESTFOLDBACKSTOP)(void) AL_API_NOEXCEPT17;
204 #ifdef AL_ALEXT_PROTOTYPES
205 AL_API void AL_APIENTRY alRequestFoldbackStart(ALenum mode,ALsizei count,ALsizei length,ALfloat *mem,LPALFOLDBACKCALLBACK callback) AL_API_NOEXCEPT;
206 AL_API void AL_APIENTRY alRequestFoldbackStop(void) AL_API_NOEXCEPT;
207 #endif
208 #endif
210 #ifndef ALC_EXT_DEDICATED
211 #define ALC_EXT_DEDICATED 1
212 #define AL_DEDICATED_GAIN 0x0001
213 #define AL_EFFECT_DEDICATED_DIALOGUE 0x9001
214 #define AL_EFFECT_DEDICATED_LOW_FREQUENCY_EFFECT 0x9000
215 #endif
217 #ifndef AL_SOFT_buffer_samples
218 #define AL_SOFT_buffer_samples 1
219 /* Channel configurations */
220 #define AL_MONO_SOFT 0x1500
221 #define AL_STEREO_SOFT 0x1501
222 #define AL_REAR_SOFT 0x1502
223 #define AL_QUAD_SOFT 0x1503
224 #define AL_5POINT1_SOFT 0x1504
225 #define AL_6POINT1_SOFT 0x1505
226 #define AL_7POINT1_SOFT 0x1506
228 /* Sample types */
229 #define AL_BYTE_SOFT 0x1400
230 #define AL_UNSIGNED_BYTE_SOFT 0x1401
231 #define AL_SHORT_SOFT 0x1402
232 #define AL_UNSIGNED_SHORT_SOFT 0x1403
233 #define AL_INT_SOFT 0x1404
234 #define AL_UNSIGNED_INT_SOFT 0x1405
235 #define AL_FLOAT_SOFT 0x1406
236 #define AL_DOUBLE_SOFT 0x1407
237 #define AL_BYTE3_SOFT 0x1408
238 #define AL_UNSIGNED_BYTE3_SOFT 0x1409
240 /* Storage formats */
241 #define AL_MONO8_SOFT 0x1100
242 #define AL_MONO16_SOFT 0x1101
243 #define AL_MONO32F_SOFT 0x10010
244 #define AL_STEREO8_SOFT 0x1102
245 #define AL_STEREO16_SOFT 0x1103
246 #define AL_STEREO32F_SOFT 0x10011
247 #define AL_QUAD8_SOFT 0x1204
248 #define AL_QUAD16_SOFT 0x1205
249 #define AL_QUAD32F_SOFT 0x1206
250 #define AL_REAR8_SOFT 0x1207
251 #define AL_REAR16_SOFT 0x1208
252 #define AL_REAR32F_SOFT 0x1209
253 #define AL_5POINT1_8_SOFT 0x120A
254 #define AL_5POINT1_16_SOFT 0x120B
255 #define AL_5POINT1_32F_SOFT 0x120C
256 #define AL_6POINT1_8_SOFT 0x120D
257 #define AL_6POINT1_16_SOFT 0x120E
258 #define AL_6POINT1_32F_SOFT 0x120F
259 #define AL_7POINT1_8_SOFT 0x1210
260 #define AL_7POINT1_16_SOFT 0x1211
261 #define AL_7POINT1_32F_SOFT 0x1212
263 /* Buffer attributes */
264 #define AL_INTERNAL_FORMAT_SOFT 0x2008
265 #define AL_BYTE_LENGTH_SOFT 0x2009
266 #define AL_SAMPLE_LENGTH_SOFT 0x200A
267 #define AL_SEC_LENGTH_SOFT 0x200B
269 typedef void (AL_APIENTRY*LPALBUFFERSAMPLESSOFT)(ALuint,ALuint,ALenum,ALsizei,ALenum,ALenum,const ALvoid*) AL_API_NOEXCEPT17;
270 typedef void (AL_APIENTRY*LPALBUFFERSUBSAMPLESSOFT)(ALuint,ALsizei,ALsizei,ALenum,ALenum,const ALvoid*) AL_API_NOEXCEPT17;
271 typedef void (AL_APIENTRY*LPALGETBUFFERSAMPLESSOFT)(ALuint,ALsizei,ALsizei,ALenum,ALenum,ALvoid*) AL_API_NOEXCEPT17;
272 typedef ALboolean (AL_APIENTRY*LPALISBUFFERFORMATSUPPORTEDSOFT)(ALenum) AL_API_NOEXCEPT17;
273 #ifdef AL_ALEXT_PROTOTYPES
274 AL_API void AL_APIENTRY alBufferSamplesSOFT(ALuint buffer, ALuint samplerate, ALenum internalformat, ALsizei samples, ALenum channels, ALenum type, const ALvoid *data) AL_API_NOEXCEPT;
275 AL_API void AL_APIENTRY alBufferSubSamplesSOFT(ALuint buffer, ALsizei offset, ALsizei samples, ALenum channels, ALenum type, const ALvoid *data) AL_API_NOEXCEPT;
276 AL_API void AL_APIENTRY alGetBufferSamplesSOFT(ALuint buffer, ALsizei offset, ALsizei samples, ALenum channels, ALenum type, ALvoid *data) AL_API_NOEXCEPT;
277 AL_API ALboolean AL_APIENTRY alIsBufferFormatSupportedSOFT(ALenum format) AL_API_NOEXCEPT;
278 #endif
279 #endif
281 #ifndef AL_SOFT_direct_channels
282 #define AL_SOFT_direct_channels 1
283 #define AL_DIRECT_CHANNELS_SOFT 0x1033
284 #endif
286 #ifndef ALC_SOFT_loopback
287 #define ALC_SOFT_loopback 1
288 #define ALC_FORMAT_CHANNELS_SOFT 0x1990
289 #define ALC_FORMAT_TYPE_SOFT 0x1991
291 /* Sample types */
292 #define ALC_BYTE_SOFT 0x1400
293 #define ALC_UNSIGNED_BYTE_SOFT 0x1401
294 #define ALC_SHORT_SOFT 0x1402
295 #define ALC_UNSIGNED_SHORT_SOFT 0x1403
296 #define ALC_INT_SOFT 0x1404
297 #define ALC_UNSIGNED_INT_SOFT 0x1405
298 #define ALC_FLOAT_SOFT 0x1406
300 /* Channel configurations */
301 #define ALC_MONO_SOFT 0x1500
302 #define ALC_STEREO_SOFT 0x1501
303 #define ALC_QUAD_SOFT 0x1503
304 #define ALC_5POINT1_SOFT 0x1504
305 #define ALC_6POINT1_SOFT 0x1505
306 #define ALC_7POINT1_SOFT 0x1506
308 typedef ALCdevice* (ALC_APIENTRY*LPALCLOOPBACKOPENDEVICESOFT)(const ALCchar*) ALC_API_NOEXCEPT17;
309 typedef ALCboolean (ALC_APIENTRY*LPALCISRENDERFORMATSUPPORTEDSOFT)(ALCdevice*,ALCsizei,ALCenum,ALCenum) ALC_API_NOEXCEPT17;
310 typedef void (ALC_APIENTRY*LPALCRENDERSAMPLESSOFT)(ALCdevice*,ALCvoid*,ALCsizei) ALC_API_NOEXCEPT17;
311 #ifdef AL_ALEXT_PROTOTYPES
312 ALC_API ALCdevice* ALC_APIENTRY alcLoopbackOpenDeviceSOFT(const ALCchar *deviceName) AL_API_NOEXCEPT;
313 ALC_API ALCboolean ALC_APIENTRY alcIsRenderFormatSupportedSOFT(ALCdevice *device, ALCsizei freq, ALCenum channels, ALCenum type) AL_API_NOEXCEPT;
314 ALC_API void ALC_APIENTRY alcRenderSamplesSOFT(ALCdevice *device, ALCvoid *buffer, ALCsizei samples) AL_API_NOEXCEPT;
315 #endif
316 #endif
318 #ifndef AL_EXT_STEREO_ANGLES
319 #define AL_EXT_STEREO_ANGLES 1
320 #define AL_STEREO_ANGLES 0x1030
321 #endif
323 #ifndef AL_EXT_SOURCE_RADIUS
324 #define AL_EXT_SOURCE_RADIUS 1
325 #define AL_SOURCE_RADIUS 0x1031
326 #endif
328 #ifndef AL_SOFT_source_latency
329 #define AL_SOFT_source_latency 1
330 #define AL_SAMPLE_OFFSET_LATENCY_SOFT 0x1200
331 #define AL_SEC_OFFSET_LATENCY_SOFT 0x1201
332 typedef _alsoft_int64_t ALint64SOFT;
333 typedef _alsoft_uint64_t ALuint64SOFT;
334 typedef void (AL_APIENTRY*LPALSOURCEDSOFT)(ALuint,ALenum,ALdouble) AL_API_NOEXCEPT17;
335 typedef void (AL_APIENTRY*LPALSOURCE3DSOFT)(ALuint,ALenum,ALdouble,ALdouble,ALdouble) AL_API_NOEXCEPT17;
336 typedef void (AL_APIENTRY*LPALSOURCEDVSOFT)(ALuint,ALenum,const ALdouble*) AL_API_NOEXCEPT17;
337 typedef void (AL_APIENTRY*LPALGETSOURCEDSOFT)(ALuint,ALenum,ALdouble*) AL_API_NOEXCEPT17;
338 typedef void (AL_APIENTRY*LPALGETSOURCE3DSOFT)(ALuint,ALenum,ALdouble*,ALdouble*,ALdouble*) AL_API_NOEXCEPT17;
339 typedef void (AL_APIENTRY*LPALGETSOURCEDVSOFT)(ALuint,ALenum,ALdouble*) AL_API_NOEXCEPT17;
340 typedef void (AL_APIENTRY*LPALSOURCEI64SOFT)(ALuint,ALenum,ALint64SOFT) AL_API_NOEXCEPT17;
341 typedef void (AL_APIENTRY*LPALSOURCE3I64SOFT)(ALuint,ALenum,ALint64SOFT,ALint64SOFT,ALint64SOFT) AL_API_NOEXCEPT17;
342 typedef void (AL_APIENTRY*LPALSOURCEI64VSOFT)(ALuint,ALenum,const ALint64SOFT*) AL_API_NOEXCEPT17;
343 typedef void (AL_APIENTRY*LPALGETSOURCEI64SOFT)(ALuint,ALenum,ALint64SOFT*) AL_API_NOEXCEPT17;
344 typedef void (AL_APIENTRY*LPALGETSOURCE3I64SOFT)(ALuint,ALenum,ALint64SOFT*,ALint64SOFT*,ALint64SOFT*) AL_API_NOEXCEPT17;
345 typedef void (AL_APIENTRY*LPALGETSOURCEI64VSOFT)(ALuint,ALenum,ALint64SOFT*) AL_API_NOEXCEPT17;
346 #ifdef AL_ALEXT_PROTOTYPES
347 AL_API void AL_APIENTRY alSourcedSOFT(ALuint source, ALenum param, ALdouble value) AL_API_NOEXCEPT;
348 AL_API void AL_APIENTRY alSource3dSOFT(ALuint source, ALenum param, ALdouble value1, ALdouble value2, ALdouble value3) AL_API_NOEXCEPT;
349 AL_API void AL_APIENTRY alSourcedvSOFT(ALuint source, ALenum param, const ALdouble *values) AL_API_NOEXCEPT;
350 AL_API void AL_APIENTRY alGetSourcedSOFT(ALuint source, ALenum param, ALdouble *value) AL_API_NOEXCEPT;
351 AL_API void AL_APIENTRY alGetSource3dSOFT(ALuint source, ALenum param, ALdouble *value1, ALdouble *value2, ALdouble *value3) AL_API_NOEXCEPT;
352 AL_API void AL_APIENTRY alGetSourcedvSOFT(ALuint source, ALenum param, ALdouble *values) AL_API_NOEXCEPT;
353 AL_API void AL_APIENTRY alSourcei64SOFT(ALuint source, ALenum param, ALint64SOFT value) AL_API_NOEXCEPT;
354 AL_API void AL_APIENTRY alSource3i64SOFT(ALuint source, ALenum param, ALint64SOFT value1, ALint64SOFT value2, ALint64SOFT value3) AL_API_NOEXCEPT;
355 AL_API void AL_APIENTRY alSourcei64vSOFT(ALuint source, ALenum param, const ALint64SOFT *values) AL_API_NOEXCEPT;
356 AL_API void AL_APIENTRY alGetSourcei64SOFT(ALuint source, ALenum param, ALint64SOFT *value) AL_API_NOEXCEPT;
357 AL_API void AL_APIENTRY alGetSource3i64SOFT(ALuint source, ALenum param, ALint64SOFT *value1, ALint64SOFT *value2, ALint64SOFT *value3) AL_API_NOEXCEPT;
358 AL_API void AL_APIENTRY alGetSourcei64vSOFT(ALuint source, ALenum param, ALint64SOFT *values) AL_API_NOEXCEPT;
359 #endif
360 #endif
362 #ifndef ALC_EXT_DEFAULT_FILTER_ORDER
363 #define ALC_EXT_DEFAULT_FILTER_ORDER 1
364 #define ALC_DEFAULT_FILTER_ORDER 0x1100
365 #endif
367 #ifndef AL_SOFT_deferred_updates
368 #define AL_SOFT_deferred_updates 1
369 #define AL_DEFERRED_UPDATES_SOFT 0xC002
370 typedef void (AL_APIENTRY*LPALDEFERUPDATESSOFT)(void) AL_API_NOEXCEPT17;
371 typedef void (AL_APIENTRY*LPALPROCESSUPDATESSOFT)(void) AL_API_NOEXCEPT17;
372 #ifdef AL_ALEXT_PROTOTYPES
373 AL_API void AL_APIENTRY alDeferUpdatesSOFT(void) AL_API_NOEXCEPT;
374 AL_API void AL_APIENTRY alProcessUpdatesSOFT(void) AL_API_NOEXCEPT;
375 #endif
376 #endif
378 #ifndef AL_SOFT_block_alignment
379 #define AL_SOFT_block_alignment 1
380 #define AL_UNPACK_BLOCK_ALIGNMENT_SOFT 0x200C
381 #define AL_PACK_BLOCK_ALIGNMENT_SOFT 0x200D
382 #endif
384 #ifndef AL_SOFT_MSADPCM
385 #define AL_SOFT_MSADPCM 1
386 #define AL_FORMAT_MONO_MSADPCM_SOFT 0x1302
387 #define AL_FORMAT_STEREO_MSADPCM_SOFT 0x1303
388 #endif
390 #ifndef AL_SOFT_source_length
391 #define AL_SOFT_source_length 1
392 /*#define AL_BYTE_LENGTH_SOFT 0x2009*/
393 /*#define AL_SAMPLE_LENGTH_SOFT 0x200A*/
394 /*#define AL_SEC_LENGTH_SOFT 0x200B*/
395 #endif
397 #ifndef AL_SOFT_buffer_length_query
398 #define AL_SOFT_buffer_length_query 1
399 /*#define AL_BYTE_LENGTH_SOFT 0x2009*/
400 /*#define AL_SAMPLE_LENGTH_SOFT 0x200A*/
401 /*#define AL_SEC_LENGTH_SOFT 0x200B*/
402 #endif
404 #ifndef ALC_SOFT_pause_device
405 #define ALC_SOFT_pause_device 1
406 typedef void (ALC_APIENTRY*LPALCDEVICEPAUSESOFT)(ALCdevice *device) ALC_API_NOEXCEPT17;
407 typedef void (ALC_APIENTRY*LPALCDEVICERESUMESOFT)(ALCdevice *device) ALC_API_NOEXCEPT17;
408 #ifdef AL_ALEXT_PROTOTYPES
409 ALC_API void ALC_APIENTRY alcDevicePauseSOFT(ALCdevice *device) ALC_API_NOEXCEPT;
410 ALC_API void ALC_APIENTRY alcDeviceResumeSOFT(ALCdevice *device) ALC_API_NOEXCEPT;
411 #endif
412 #endif
414 #ifndef AL_EXT_BFORMAT
415 #define AL_EXT_BFORMAT 1
416 /* Provides support for B-Format ambisonic buffers (first-order, FuMa scaling
417 * and layout).
419 * BFORMAT2D_8: Unsigned 8-bit, 3-channel non-periphonic (WXY).
420 * BFORMAT2D_16: Signed 16-bit, 3-channel non-periphonic (WXY).
421 * BFORMAT2D_FLOAT32: 32-bit float, 3-channel non-periphonic (WXY).
422 * BFORMAT3D_8: Unsigned 8-bit, 4-channel periphonic (WXYZ).
423 * BFORMAT3D_16: Signed 16-bit, 4-channel periphonic (WXYZ).
424 * BFORMAT3D_FLOAT32: 32-bit float, 4-channel periphonic (WXYZ).
426 #define AL_FORMAT_BFORMAT2D_8 0x20021
427 #define AL_FORMAT_BFORMAT2D_16 0x20022
428 #define AL_FORMAT_BFORMAT2D_FLOAT32 0x20023
429 #define AL_FORMAT_BFORMAT3D_8 0x20031
430 #define AL_FORMAT_BFORMAT3D_16 0x20032
431 #define AL_FORMAT_BFORMAT3D_FLOAT32 0x20033
432 #endif
434 #ifndef AL_EXT_MULAW_BFORMAT
435 #define AL_EXT_MULAW_BFORMAT 1
436 #define AL_FORMAT_BFORMAT2D_MULAW 0x10031
437 #define AL_FORMAT_BFORMAT3D_MULAW 0x10032
438 #endif
440 #ifndef ALC_SOFT_HRTF
441 #define ALC_SOFT_HRTF 1
442 #define ALC_HRTF_SOFT 0x1992
443 #define ALC_DONT_CARE_SOFT 0x0002
444 #define ALC_HRTF_STATUS_SOFT 0x1993
445 #define ALC_HRTF_DISABLED_SOFT 0x0000
446 #define ALC_HRTF_ENABLED_SOFT 0x0001
447 #define ALC_HRTF_DENIED_SOFT 0x0002
448 #define ALC_HRTF_REQUIRED_SOFT 0x0003
449 #define ALC_HRTF_HEADPHONES_DETECTED_SOFT 0x0004
450 #define ALC_HRTF_UNSUPPORTED_FORMAT_SOFT 0x0005
451 #define ALC_NUM_HRTF_SPECIFIERS_SOFT 0x1994
452 #define ALC_HRTF_SPECIFIER_SOFT 0x1995
453 #define ALC_HRTF_ID_SOFT 0x1996
454 typedef const ALCchar* (ALC_APIENTRY*LPALCGETSTRINGISOFT)(ALCdevice *device, ALCenum paramName, ALCsizei index) ALC_API_NOEXCEPT17;
455 typedef ALCboolean (ALC_APIENTRY*LPALCRESETDEVICESOFT)(ALCdevice *device, const ALCint *attribs) ALC_API_NOEXCEPT17;
456 #ifdef AL_ALEXT_PROTOTYPES
457 ALC_API const ALCchar* ALC_APIENTRY alcGetStringiSOFT(ALCdevice *device, ALCenum paramName, ALCsizei index) ALC_API_NOEXCEPT;
458 ALC_API ALCboolean ALC_APIENTRY alcResetDeviceSOFT(ALCdevice *device, const ALCint *attribs) ALC_API_NOEXCEPT;
459 #endif
460 #endif
462 #ifndef AL_SOFT_gain_clamp_ex
463 #define AL_SOFT_gain_clamp_ex 1
464 #define AL_GAIN_LIMIT_SOFT 0x200E
465 #endif
467 #ifndef AL_SOFT_source_resampler
468 #define AL_SOFT_source_resampler
469 #define AL_NUM_RESAMPLERS_SOFT 0x1210
470 #define AL_DEFAULT_RESAMPLER_SOFT 0x1211
471 #define AL_SOURCE_RESAMPLER_SOFT 0x1212
472 #define AL_RESAMPLER_NAME_SOFT 0x1213
473 typedef const ALchar* (AL_APIENTRY*LPALGETSTRINGISOFT)(ALenum pname, ALsizei index) AL_API_NOEXCEPT17;
474 #ifdef AL_ALEXT_PROTOTYPES
475 AL_API const ALchar* AL_APIENTRY alGetStringiSOFT(ALenum pname, ALsizei index) AL_API_NOEXCEPT;
476 #endif
477 #endif
479 #ifndef AL_SOFT_source_spatialize
480 #define AL_SOFT_source_spatialize
481 #define AL_SOURCE_SPATIALIZE_SOFT 0x1214
482 #define AL_AUTO_SOFT 0x0002
483 #endif
485 #ifndef ALC_SOFT_output_limiter
486 #define ALC_SOFT_output_limiter
487 #define ALC_OUTPUT_LIMITER_SOFT 0x199A
488 #endif
490 #ifndef ALC_SOFT_device_clock
491 #define ALC_SOFT_device_clock 1
492 typedef _alsoft_int64_t ALCint64SOFT;
493 typedef _alsoft_uint64_t ALCuint64SOFT;
494 #define ALC_DEVICE_CLOCK_SOFT 0x1600
495 #define ALC_DEVICE_LATENCY_SOFT 0x1601
496 #define ALC_DEVICE_CLOCK_LATENCY_SOFT 0x1602
497 #define AL_SAMPLE_OFFSET_CLOCK_SOFT 0x1202
498 #define AL_SEC_OFFSET_CLOCK_SOFT 0x1203
499 typedef void (ALC_APIENTRY*LPALCGETINTEGER64VSOFT)(ALCdevice *device, ALCenum pname, ALsizei size, ALCint64SOFT *values) ALC_API_NOEXCEPT17;
500 #ifdef AL_ALEXT_PROTOTYPES
501 ALC_API void ALC_APIENTRY alcGetInteger64vSOFT(ALCdevice *device, ALCenum pname, ALsizei size, ALCint64SOFT *values) ALC_API_NOEXCEPT;
502 #endif
503 #endif
505 #ifndef AL_SOFT_direct_channels_remix
506 #define AL_SOFT_direct_channels_remix 1
507 #define AL_DROP_UNMATCHED_SOFT 0x0001
508 #define AL_REMIX_UNMATCHED_SOFT 0x0002
509 #endif
511 #ifndef AL_SOFT_bformat_ex
512 #define AL_SOFT_bformat_ex 1
513 #define AL_AMBISONIC_LAYOUT_SOFT 0x1997
514 #define AL_AMBISONIC_SCALING_SOFT 0x1998
516 /* Ambisonic layouts */
517 #define AL_FUMA_SOFT 0x0000
518 #define AL_ACN_SOFT 0x0001
520 /* Ambisonic scalings (normalization) */
521 /*#define AL_FUMA_SOFT*/
522 #define AL_SN3D_SOFT 0x0001
523 #define AL_N3D_SOFT 0x0002
524 #endif
526 #ifndef ALC_SOFT_loopback_bformat
527 #define ALC_SOFT_loopback_bformat 1
528 #define ALC_AMBISONIC_LAYOUT_SOFT 0x1997
529 #define ALC_AMBISONIC_SCALING_SOFT 0x1998
530 #define ALC_AMBISONIC_ORDER_SOFT 0x1999
531 #define ALC_MAX_AMBISONIC_ORDER_SOFT 0x199B
533 #define ALC_BFORMAT3D_SOFT 0x1507
535 /* Ambisonic layouts */
536 #define ALC_FUMA_SOFT 0x0000
537 #define ALC_ACN_SOFT 0x0001
539 /* Ambisonic scalings (normalization) */
540 /*#define ALC_FUMA_SOFT*/
541 #define ALC_SN3D_SOFT 0x0001
542 #define ALC_N3D_SOFT 0x0002
543 #endif
545 #ifndef AL_SOFT_effect_target
546 #define AL_SOFT_effect_target
547 #define AL_EFFECTSLOT_TARGET_SOFT 0x199C
548 #endif
550 #ifndef AL_SOFT_events
551 #define AL_SOFT_events 1
552 #define AL_EVENT_CALLBACK_FUNCTION_SOFT 0x19A2
553 #define AL_EVENT_CALLBACK_USER_PARAM_SOFT 0x19A3
554 #define AL_EVENT_TYPE_BUFFER_COMPLETED_SOFT 0x19A4
555 #define AL_EVENT_TYPE_SOURCE_STATE_CHANGED_SOFT 0x19A5
556 #define AL_EVENT_TYPE_DISCONNECTED_SOFT 0x19A6
557 typedef void (AL_APIENTRY*ALEVENTPROCSOFT)(ALenum eventType, ALuint object, ALuint param,
558 ALsizei length, const ALchar *message, void *userParam) AL_API_NOEXCEPT17;
559 typedef void (AL_APIENTRY*LPALEVENTCONTROLSOFT)(ALsizei count, const ALenum *types, ALboolean enable) AL_API_NOEXCEPT17;
560 typedef void (AL_APIENTRY*LPALEVENTCALLBACKSOFT)(ALEVENTPROCSOFT callback, void *userParam) AL_API_NOEXCEPT17;
561 typedef void* (AL_APIENTRY*LPALGETPOINTERSOFT)(ALenum pname) AL_API_NOEXCEPT17;
562 typedef void (AL_APIENTRY*LPALGETPOINTERVSOFT)(ALenum pname, void **values) AL_API_NOEXCEPT17;
563 #ifdef AL_ALEXT_PROTOTYPES
564 AL_API void AL_APIENTRY alEventControlSOFT(ALsizei count, const ALenum *types, ALboolean enable) AL_API_NOEXCEPT;
565 AL_API void AL_APIENTRY alEventCallbackSOFT(ALEVENTPROCSOFT callback, void *userParam) AL_API_NOEXCEPT;
566 AL_API void* AL_APIENTRY alGetPointerSOFT(ALenum pname) AL_API_NOEXCEPT;
567 AL_API void AL_APIENTRY alGetPointervSOFT(ALenum pname, void **values) AL_API_NOEXCEPT;
568 #endif
569 #endif
571 #ifndef ALC_SOFT_reopen_device
572 #define ALC_SOFT_reopen_device
573 typedef ALCboolean (ALC_APIENTRY*LPALCREOPENDEVICESOFT)(ALCdevice *device,
574 const ALCchar *deviceName, const ALCint *attribs) ALC_API_NOEXCEPT17;
575 #ifdef AL_ALEXT_PROTOTYPES
576 ALCboolean ALC_APIENTRY alcReopenDeviceSOFT(ALCdevice *device, const ALCchar *deviceName,
577 const ALCint *attribs) ALC_API_NOEXCEPT;
578 #endif
579 #endif
581 #ifndef AL_SOFT_callback_buffer
582 #define AL_SOFT_callback_buffer
583 #define AL_BUFFER_CALLBACK_FUNCTION_SOFT 0x19A0
584 #define AL_BUFFER_CALLBACK_USER_PARAM_SOFT 0x19A1
585 typedef ALsizei (AL_APIENTRY*ALBUFFERCALLBACKTYPESOFT)(ALvoid *userptr, ALvoid *sampledata, ALsizei numbytes) AL_API_NOEXCEPT17;
586 typedef void (AL_APIENTRY*LPALBUFFERCALLBACKSOFT)(ALuint buffer, ALenum format, ALsizei freq, ALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr) AL_API_NOEXCEPT17;
587 typedef void (AL_APIENTRY*LPALGETBUFFERPTRSOFT)(ALuint buffer, ALenum param, ALvoid **value) AL_API_NOEXCEPT17;
588 typedef void (AL_APIENTRY*LPALGETBUFFER3PTRSOFT)(ALuint buffer, ALenum param, ALvoid **value1, ALvoid **value2, ALvoid **value3) AL_API_NOEXCEPT17;
589 typedef void (AL_APIENTRY*LPALGETBUFFERPTRVSOFT)(ALuint buffer, ALenum param, ALvoid **values) AL_API_NOEXCEPT17;
590 #ifdef AL_ALEXT_PROTOTYPES
591 AL_API void AL_APIENTRY alBufferCallbackSOFT(ALuint buffer, ALenum format, ALsizei freq, ALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr) AL_API_NOEXCEPT;
592 AL_API void AL_APIENTRY alGetBufferPtrSOFT(ALuint buffer, ALenum param, ALvoid **ptr) AL_API_NOEXCEPT;
593 AL_API void AL_APIENTRY alGetBuffer3PtrSOFT(ALuint buffer, ALenum param, ALvoid **ptr0, ALvoid **ptr1, ALvoid **ptr2) AL_API_NOEXCEPT;
594 AL_API void AL_APIENTRY alGetBufferPtrvSOFT(ALuint buffer, ALenum param, ALvoid **ptr) AL_API_NOEXCEPT;
595 #endif
596 #endif
598 #ifndef AL_SOFT_UHJ
599 #define AL_SOFT_UHJ
600 #define AL_FORMAT_UHJ2CHN8_SOFT 0x19A2
601 #define AL_FORMAT_UHJ2CHN16_SOFT 0x19A3
602 #define AL_FORMAT_UHJ2CHN_FLOAT32_SOFT 0x19A4
603 #define AL_FORMAT_UHJ3CHN8_SOFT 0x19A5
604 #define AL_FORMAT_UHJ3CHN16_SOFT 0x19A6
605 #define AL_FORMAT_UHJ3CHN_FLOAT32_SOFT 0x19A7
606 #define AL_FORMAT_UHJ4CHN8_SOFT 0x19A8
607 #define AL_FORMAT_UHJ4CHN16_SOFT 0x19A9
608 #define AL_FORMAT_UHJ4CHN_FLOAT32_SOFT 0x19AA
610 #define AL_STEREO_MODE_SOFT 0x19B0
611 #define AL_NORMAL_SOFT 0x0000
612 #define AL_SUPER_STEREO_SOFT 0x0001
613 #define AL_SUPER_STEREO_WIDTH_SOFT 0x19B1
614 #endif
616 #ifndef AL_SOFT_UHJ_ex
617 #define AL_SOFT_UHJ_ex
618 #define AL_FORMAT_UHJ2CHN_MULAW_SOFT 0x19B3
619 #define AL_FORMAT_UHJ2CHN_ALAW_SOFT 0x19B4
620 #define AL_FORMAT_UHJ2CHN_IMA4_SOFT 0x19B5
621 #define AL_FORMAT_UHJ2CHN_MSADPCM_SOFT 0x19B6
622 #define AL_FORMAT_UHJ3CHN_MULAW_SOFT 0x19B7
623 #define AL_FORMAT_UHJ3CHN_ALAW_SOFT 0x19B8
624 #define AL_FORMAT_UHJ4CHN_MULAW_SOFT 0x19B9
625 #define AL_FORMAT_UHJ4CHN_ALAW_SOFT 0x19BA
626 #endif
628 #ifndef ALC_SOFT_output_mode
629 #define ALC_SOFT_output_mode
630 #define ALC_OUTPUT_MODE_SOFT 0x19AC
631 #define ALC_ANY_SOFT 0x19AD
632 /*#define ALC_MONO_SOFT 0x1500*/
633 /*#define ALC_STEREO_SOFT 0x1501*/
634 #define ALC_STEREO_BASIC_SOFT 0x19AE
635 #define ALC_STEREO_UHJ_SOFT 0x19AF
636 #define ALC_STEREO_HRTF_SOFT 0x19B2
637 /*#define ALC_QUAD_SOFT 0x1503*/
638 #define ALC_SURROUND_5_1_SOFT 0x1504
639 #define ALC_SURROUND_6_1_SOFT 0x1505
640 #define ALC_SURROUND_7_1_SOFT 0x1506
641 #endif
643 #ifndef AL_SOFT_source_start_delay
644 #define AL_SOFT_source_start_delay
645 typedef void (AL_APIENTRY*LPALSOURCEPLAYATTIMESOFT)(ALuint source, ALint64SOFT start_time) AL_API_NOEXCEPT17;
646 typedef void (AL_APIENTRY*LPALSOURCEPLAYATTIMEVSOFT)(ALsizei n, const ALuint *sources, ALint64SOFT start_time) AL_API_NOEXCEPT17;
647 #ifdef AL_ALEXT_PROTOTYPES
648 void AL_APIENTRY alSourcePlayAtTimeSOFT(ALuint source, ALint64SOFT start_time) AL_API_NOEXCEPT;
649 void AL_APIENTRY alSourcePlayAtTimevSOFT(ALsizei n, const ALuint *sources, ALint64SOFT start_time) AL_API_NOEXCEPT;
650 #endif
651 #endif
653 #ifndef ALC_EXT_debug
654 #define ALC_EXT_debug
655 #define ALC_CONTEXT_FLAGS_EXT 0x19CF
656 #define ALC_CONTEXT_DEBUG_BIT_EXT 0x0001
657 #endif
659 #ifndef AL_EXT_debug
660 #define AL_EXT_debug
661 #define AL_DONT_CARE_EXT 0x0002
662 #define AL_DEBUG_OUTPUT_EXT 0x19B2
663 #define AL_DEBUG_CALLBACK_FUNCTION_EXT 0x19B3
664 #define AL_DEBUG_CALLBACK_USER_PARAM_EXT 0x19B4
665 #define AL_DEBUG_SOURCE_API_EXT 0x19B5
666 #define AL_DEBUG_SOURCE_AUDIO_SYSTEM_EXT 0x19B6
667 #define AL_DEBUG_SOURCE_THIRD_PARTY_EXT 0x19B7
668 #define AL_DEBUG_SOURCE_APPLICATION_EXT 0x19B8
669 #define AL_DEBUG_SOURCE_OTHER_EXT 0x19B9
670 #define AL_DEBUG_TYPE_ERROR_EXT 0x19BA
671 #define AL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_EXT 0x19BB
672 #define AL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_EXT 0x19BC
673 #define AL_DEBUG_TYPE_PORTABILITY_EXT 0x19BD
674 #define AL_DEBUG_TYPE_PERFORMANCE_EXT 0x19BE
675 #define AL_DEBUG_TYPE_MARKER_EXT 0x19BF
676 #define AL_DEBUG_TYPE_PUSH_GROUP_EXT 0x19C0
677 #define AL_DEBUG_TYPE_POP_GROUP_EXT 0x19C1
678 #define AL_DEBUG_TYPE_OTHER_EXT 0x19C2
679 #define AL_DEBUG_SEVERITY_HIGH_EXT 0x19C3
680 #define AL_DEBUG_SEVERITY_MEDIUM_EXT 0x19C4
681 #define AL_DEBUG_SEVERITY_LOW_EXT 0x19C5
682 #define AL_DEBUG_SEVERITY_NOTIFICATION_EXT 0x19C6
683 #define AL_DEBUG_LOGGED_MESSAGES_EXT 0x19C7
684 #define AL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_EXT 0x19C8
685 #define AL_MAX_DEBUG_MESSAGE_LENGTH_EXT 0x19C9
686 #define AL_MAX_DEBUG_LOGGED_MESSAGES_EXT 0x19CA
687 #define AL_MAX_DEBUG_GROUP_STACK_DEPTH_EXT 0x19CB
688 #define AL_MAX_LABEL_LENGTH_EXT 0x19CC
689 #define AL_STACK_OVERFLOW_EXT 0x19CD
690 #define AL_STACK_UNDERFLOW_EXT 0x19CE
691 #define AL_CONTEXT_FLAGS_EXT 0x19CF
692 #define AL_BUFFER_EXT 0x1009 /* Same as AL_BUFFER */
693 #define AL_SOURCE_EXT 0x19D0
694 #define AL_FILTER_EXT 0x19D1
695 #define AL_EFFECT_EXT 0x19D2
696 #define AL_AUXILIARY_EFFECT_SLOT_EXT 0x19D3
698 typedef void (AL_APIENTRY*ALDEBUGPROCEXT)(ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message, void *userParam) AL_API_NOEXCEPT17;
699 typedef void (AL_APIENTRY*LPALDEBUGMESSAGECALLBACKEXT)(ALDEBUGPROCEXT callback, void *userParam) AL_API_NOEXCEPT17;
700 typedef void (AL_APIENTRY*LPALDEBUGMESSAGEINSERTEXT)(ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message) AL_API_NOEXCEPT17;
701 typedef void (AL_APIENTRY*LPALDEBUGMESSAGECONTROLEXT)(ALenum source, ALenum type, ALenum severity, ALsizei count, const ALuint *ids, ALboolean enable) AL_API_NOEXCEPT17;
702 typedef void (AL_APIENTRY*LPALPUSHDEBUGGROUPEXT)(ALenum source, ALuint id, ALsizei length, const ALchar *message) AL_API_NOEXCEPT17;
703 typedef void (AL_APIENTRY*LPALPOPDEBUGGROUPEXT)(void) AL_API_NOEXCEPT17;
704 typedef ALuint (AL_APIENTRY*LPALGETDEBUGMESSAGELOGEXT)(ALuint count, ALsizei logBufSize, ALenum *sources, ALenum *types, ALuint *ids, ALenum *severities, ALsizei *lengths, ALchar *logBuf) AL_API_NOEXCEPT17;
705 typedef void (AL_APIENTRY*LPALOBJECTLABELEXT)(ALenum identifier, ALuint name, ALsizei length, const ALchar *label) AL_API_NOEXCEPT17;
706 typedef void (AL_APIENTRY*LPALGETOBJECTLABELEXT)(ALenum identifier, ALuint name, ALsizei bufSize, ALsizei *length, ALchar *label) AL_API_NOEXCEPT17;
707 #ifdef AL_ALEXT_PROTOTYPES
708 void AL_APIENTRY alDebugMessageCallbackEXT(ALDEBUGPROCEXT callback, void *userParam) AL_API_NOEXCEPT;
709 void AL_APIENTRY alDebugMessageInsertEXT(ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message) AL_API_NOEXCEPT;
710 void AL_APIENTRY alDebugMessageControlEXT(ALenum source, ALenum type, ALenum severity, ALsizei count, const ALuint *ids, ALboolean enable) AL_API_NOEXCEPT;
711 void AL_APIENTRY alPushDebugGroupEXT(ALenum source, ALuint id, ALsizei length, const ALchar *message) AL_API_NOEXCEPT;
712 void AL_APIENTRY alPopDebugGroupEXT(void) AL_API_NOEXCEPT;
713 ALuint AL_APIENTRY alGetDebugMessageLogEXT(ALuint count, ALsizei logBufSize, ALenum *sources, ALenum *types, ALuint *ids, ALenum *severities, ALsizei *lengths, ALchar *logBuf) AL_API_NOEXCEPT;
714 void AL_APIENTRY alObjectLabelEXT(ALenum identifier, ALuint name, ALsizei length, const ALchar *label) AL_API_NOEXCEPT;
715 void AL_APIENTRY alGetObjectLabelEXT(ALenum identifier, ALuint name, ALsizei bufSize, ALsizei *length, ALchar *label) AL_API_NOEXCEPT;
716 #endif
717 #endif
719 #ifndef ALC_SOFT_system_events
720 #define ALC_SOFT_system_events
721 #define ALC_PLAYBACK_DEVICE_SOFT 0x19D4
722 #define ALC_CAPTURE_DEVICE_SOFT 0x19D5
723 #define ALC_EVENT_TYPE_DEFAULT_DEVICE_CHANGED_SOFT 0x19D6
724 #define ALC_EVENT_TYPE_DEVICE_ADDED_SOFT 0x19D7
725 #define ALC_EVENT_TYPE_DEVICE_REMOVED_SOFT 0x19D8
726 #define ALC_EVENT_SUPPORTED_SOFT 0x19D9
727 #define ALC_EVENT_NOT_SUPPORTED_SOFT 0x19DA
728 typedef void (ALC_APIENTRY*ALCEVENTPROCTYPESOFT)(ALCenum eventType, ALCenum deviceType,
729 ALCdevice *device, ALCsizei length, const ALCchar *message, void *userParam) ALC_API_NOEXCEPT17;
730 typedef ALCenum (ALC_APIENTRY*LPALCEVENTISSUPPORTEDSOFT)(ALCenum eventType, ALCenum deviceType) ALC_API_NOEXCEPT17;
731 typedef ALCboolean (ALC_APIENTRY*LPALCEVENTCONTROLSOFT)(ALCsizei count, const ALCenum *events, ALCboolean enable) ALC_API_NOEXCEPT17;
732 typedef void (ALC_APIENTRY*LPALCEVENTCALLBACKSOFT)(ALCEVENTPROCTYPESOFT callback, void *userParam) ALC_API_NOEXCEPT17;
733 #ifdef AL_ALEXT_PROTOTYPES
734 ALCenum ALC_APIENTRY alcEventIsSupportedSOFT(ALCenum eventType, ALCenum deviceType) ALC_API_NOEXCEPT;
735 ALCboolean ALC_APIENTRY alcEventControlSOFT(ALCsizei count, const ALCenum *events, ALCboolean enable) ALC_API_NOEXCEPT;
736 void ALC_APIENTRY alcEventCallbackSOFT(ALCEVENTPROCTYPESOFT callback, void *userParam) ALC_API_NOEXCEPT;
737 #endif
738 #endif
740 #ifndef AL_EXT_direct_context
741 #define AL_EXT_direct_context
742 typedef ALCvoid* (ALC_APIENTRY *LPALCGETPROCADDRESS2)(ALCdevice *device, const ALCchar *funcname) AL_API_NOEXCEPT17;
744 typedef void (AL_APIENTRY *LPALENABLEDIRECT)(ALCcontext *context, ALenum capability) AL_API_NOEXCEPT17;
745 typedef void (AL_APIENTRY *LPALDISABLEDIRECT)(ALCcontext *context, ALenum capability) AL_API_NOEXCEPT17;
746 typedef ALboolean (AL_APIENTRY *LPALISENABLEDDIRECT)(ALCcontext *context, ALenum capability) AL_API_NOEXCEPT17;
747 typedef void (AL_APIENTRY *LPALDOPPLERFACTORDIRECT)(ALCcontext *context, ALfloat value) AL_API_NOEXCEPT17;
748 typedef void (AL_APIENTRY *LPALSPEEDOFSOUNDDIRECT)(ALCcontext *context, ALfloat value) AL_API_NOEXCEPT17;
749 typedef void (AL_APIENTRY *LPALDISTANCEMODELDIRECT)(ALCcontext *context, ALenum distanceModel) AL_API_NOEXCEPT17;
750 typedef const ALchar* (AL_APIENTRY *LPALGETSTRINGDIRECT)(ALCcontext *context, ALenum param) AL_API_NOEXCEPT17;
751 typedef void (AL_APIENTRY *LPALGETBOOLEANVDIRECT)(ALCcontext *context, ALenum param, ALboolean *values) AL_API_NOEXCEPT17;
752 typedef void (AL_APIENTRY *LPALGETINTEGERVDIRECT)(ALCcontext *context, ALenum param, ALint *values) AL_API_NOEXCEPT17;
753 typedef void (AL_APIENTRY *LPALGETFLOATVDIRECT)(ALCcontext *context, ALenum param, ALfloat *values) AL_API_NOEXCEPT17;
754 typedef void (AL_APIENTRY *LPALGETDOUBLEVDIRECT)(ALCcontext *context, ALenum param, ALdouble *values) AL_API_NOEXCEPT17;
755 typedef ALboolean (AL_APIENTRY *LPALGETBOOLEANDIRECT)(ALCcontext *context, ALenum param) AL_API_NOEXCEPT17;
756 typedef ALint (AL_APIENTRY *LPALGETINTEGERDIRECT)(ALCcontext *context, ALenum param) AL_API_NOEXCEPT17;
757 typedef ALfloat (AL_APIENTRY *LPALGETFLOATDIRECT)(ALCcontext *context, ALenum param) AL_API_NOEXCEPT17;
758 typedef ALdouble (AL_APIENTRY *LPALGETDOUBLEDIRECT)(ALCcontext *context, ALenum param) AL_API_NOEXCEPT17;
759 typedef ALenum (AL_APIENTRY *LPALGETERRORDIRECT)(ALCcontext *context) AL_API_NOEXCEPT17;
760 typedef ALboolean (AL_APIENTRY *LPALISEXTENSIONPRESENTDIRECT)(ALCcontext *context, const ALchar *extname) AL_API_NOEXCEPT17;
761 typedef void* (AL_APIENTRY *LPALGETPROCADDRESSDIRECT)(ALCcontext *context, const ALchar *fname) AL_API_NOEXCEPT17;
762 typedef ALenum (AL_APIENTRY *LPALGETENUMVALUEDIRECT)(ALCcontext *context, const ALchar *ename) AL_API_NOEXCEPT17;
763 typedef void (AL_APIENTRY *LPALLISTENERFDIRECT)(ALCcontext *context, ALenum param, ALfloat value) AL_API_NOEXCEPT17;
764 typedef void (AL_APIENTRY *LPALLISTENER3FDIRECT)(ALCcontext *context, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) AL_API_NOEXCEPT17;
765 typedef void (AL_APIENTRY *LPALLISTENERFVDIRECT)(ALCcontext *context, ALenum param, const ALfloat *values) AL_API_NOEXCEPT17;
766 typedef void (AL_APIENTRY *LPALLISTENERIDIRECT)(ALCcontext *context, ALenum param, ALint value) AL_API_NOEXCEPT17;
767 typedef void (AL_APIENTRY *LPALLISTENER3IDIRECT)(ALCcontext *context, ALenum param, ALint value1, ALint value2, ALint value3) AL_API_NOEXCEPT17;
768 typedef void (AL_APIENTRY *LPALLISTENERIVDIRECT)(ALCcontext *context, ALenum param, const ALint *values) AL_API_NOEXCEPT17;
769 typedef void (AL_APIENTRY *LPALGETLISTENERFDIRECT)(ALCcontext *context, ALenum param, ALfloat *value) AL_API_NOEXCEPT17;
770 typedef void (AL_APIENTRY *LPALGETLISTENER3FDIRECT)(ALCcontext *context, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) AL_API_NOEXCEPT17;
771 typedef void (AL_APIENTRY *LPALGETLISTENERFVDIRECT)(ALCcontext *context, ALenum param, ALfloat *values) AL_API_NOEXCEPT17;
772 typedef void (AL_APIENTRY *LPALGETLISTENERIDIRECT)(ALCcontext *context, ALenum param, ALint *value) AL_API_NOEXCEPT17;
773 typedef void (AL_APIENTRY *LPALGETLISTENER3IDIRECT)(ALCcontext *context, ALenum param, ALint *value1, ALint *value2, ALint *value3) AL_API_NOEXCEPT17;
774 typedef void (AL_APIENTRY *LPALGETLISTENERIVDIRECT)(ALCcontext *context, ALenum param, ALint *values) AL_API_NOEXCEPT17;
775 typedef void (AL_APIENTRY *LPALGENSOURCESDIRECT)(ALCcontext *context, ALsizei n, ALuint *sources) AL_API_NOEXCEPT17;
776 typedef void (AL_APIENTRY *LPALDELETESOURCESDIRECT)(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT17;
777 typedef ALboolean (AL_APIENTRY *LPALISSOURCEDIRECT)(ALCcontext *context, ALuint source) AL_API_NOEXCEPT17;
778 typedef void (AL_APIENTRY *LPALSOURCEFDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALfloat value) AL_API_NOEXCEPT17;
779 typedef void (AL_APIENTRY *LPALSOURCE3FDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) AL_API_NOEXCEPT17;
780 typedef void (AL_APIENTRY *LPALSOURCEFVDIRECT)(ALCcontext *context, ALuint source, ALenum param, const ALfloat *values) AL_API_NOEXCEPT17;
781 typedef void (AL_APIENTRY *LPALSOURCEIDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALint value) AL_API_NOEXCEPT17;
782 typedef void (AL_APIENTRY *LPALSOURCE3IDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALint value1, ALint value2, ALint value3) AL_API_NOEXCEPT17;
783 typedef void (AL_APIENTRY *LPALSOURCEIVDIRECT)(ALCcontext *context, ALuint source, ALenum param, const ALint *values) AL_API_NOEXCEPT17;
784 typedef void (AL_APIENTRY *LPALGETSOURCEFDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALfloat *value) AL_API_NOEXCEPT17;
785 typedef void (AL_APIENTRY *LPALGETSOURCE3FDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) AL_API_NOEXCEPT17;
786 typedef void (AL_APIENTRY *LPALGETSOURCEFVDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALfloat *values) AL_API_NOEXCEPT17;
787 typedef void (AL_APIENTRY *LPALGETSOURCEIDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALint *value) AL_API_NOEXCEPT17;
788 typedef void (AL_APIENTRY *LPALGETSOURCE3IDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALint *value1, ALint *value2, ALint *value3) AL_API_NOEXCEPT17;
789 typedef void (AL_APIENTRY *LPALGETSOURCEIVDIRECT)(ALCcontext *context, ALuint source, ALenum param, ALint *values) AL_API_NOEXCEPT17;
790 typedef void (AL_APIENTRY *LPALSOURCEPLAYDIRECT)(ALCcontext *context, ALuint source) AL_API_NOEXCEPT17;
791 typedef void (AL_APIENTRY *LPALSOURCESTOPDIRECT)(ALCcontext *context, ALuint source) AL_API_NOEXCEPT17;
792 typedef void (AL_APIENTRY *LPALSOURCEREWINDDIRECT)(ALCcontext *context, ALuint source) AL_API_NOEXCEPT17;
793 typedef void (AL_APIENTRY *LPALSOURCEPAUSEDIRECT)(ALCcontext *context, ALuint source) AL_API_NOEXCEPT17;
794 typedef void (AL_APIENTRY *LPALSOURCEPLAYVDIRECT)(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT17;
795 typedef void (AL_APIENTRY *LPALSOURCESTOPVDIRECT)(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT17;
796 typedef void (AL_APIENTRY *LPALSOURCEREWINDVDIRECT)(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT17;
797 typedef void (AL_APIENTRY *LPALSOURCEPAUSEVDIRECT)(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT17;
798 typedef void (AL_APIENTRY *LPALSOURCEQUEUEBUFFERSDIRECT)(ALCcontext *context, ALuint source, ALsizei nb, const ALuint *buffers) AL_API_NOEXCEPT17;
799 typedef void (AL_APIENTRY *LPALSOURCEUNQUEUEBUFFERSDIRECT)(ALCcontext *context, ALuint source, ALsizei nb, ALuint *buffers) AL_API_NOEXCEPT17;
800 typedef void (AL_APIENTRY *LPALGENBUFFERSDIRECT)(ALCcontext *context, ALsizei n, ALuint *buffers) AL_API_NOEXCEPT17;
801 typedef void (AL_APIENTRY *LPALDELETEBUFFERSDIRECT)(ALCcontext *context, ALsizei n, const ALuint *buffers) AL_API_NOEXCEPT17;
802 typedef ALboolean (AL_APIENTRY *LPALISBUFFERDIRECT)(ALCcontext *context, ALuint buffer) AL_API_NOEXCEPT17;
803 typedef void (AL_APIENTRY *LPALBUFFERDATADIRECT)(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei samplerate) AL_API_NOEXCEPT17;
804 typedef void (AL_APIENTRY *LPALBUFFERFDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALfloat value) AL_API_NOEXCEPT17;
805 typedef void (AL_APIENTRY *LPALBUFFER3FDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) AL_API_NOEXCEPT17;
806 typedef void (AL_APIENTRY *LPALBUFFERFVDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, const ALfloat *values) AL_API_NOEXCEPT17;
807 typedef void (AL_APIENTRY *LPALBUFFERIDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALint value) AL_API_NOEXCEPT17;
808 typedef void (AL_APIENTRY *LPALBUFFER3IDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALint value1, ALint value2, ALint value3) AL_API_NOEXCEPT17;
809 typedef void (AL_APIENTRY *LPALBUFFERIVDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, const ALint *values) AL_API_NOEXCEPT17;
810 typedef void (AL_APIENTRY *LPALGETBUFFERFDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value) AL_API_NOEXCEPT17;
811 typedef void (AL_APIENTRY *LPALGETBUFFER3FDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) AL_API_NOEXCEPT17;
812 typedef void (AL_APIENTRY *LPALGETBUFFERFVDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *values) AL_API_NOEXCEPT17;
813 typedef void (AL_APIENTRY *LPALGETBUFFERIDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALint *value) AL_API_NOEXCEPT17;
814 typedef void (AL_APIENTRY *LPALGETBUFFER3IDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALint *value1, ALint *value2, ALint *value3) AL_API_NOEXCEPT17;
815 typedef void (AL_APIENTRY *LPALGETBUFFERIVDIRECT)(ALCcontext *context, ALuint buffer, ALenum param, ALint *values) AL_API_NOEXCEPT17;
816 /* ALC_EXT_EFX */
817 typedef void (AL_APIENTRY *LPALGENEFFECTSDIRECT)(ALCcontext *context, ALsizei n, ALuint *effects) AL_API_NOEXCEPT17;
818 typedef void (AL_APIENTRY *LPALDELETEEFFECTSDIRECT)(ALCcontext *context, ALsizei n, const ALuint *effects) AL_API_NOEXCEPT17;
819 typedef ALboolean (AL_APIENTRY *LPALISEFFECTDIRECT)(ALCcontext *context, ALuint effect) AL_API_NOEXCEPT17;
820 typedef void (AL_APIENTRY *LPALEFFECTIDIRECT)(ALCcontext *context, ALuint effect, ALenum param, ALint value) AL_API_NOEXCEPT17;
821 typedef void (AL_APIENTRY *LPALEFFECTIVDIRECT)(ALCcontext *context, ALuint effect, ALenum param, const ALint *values) AL_API_NOEXCEPT17;
822 typedef void (AL_APIENTRY *LPALEFFECTFDIRECT)(ALCcontext *context, ALuint effect, ALenum param, ALfloat value) AL_API_NOEXCEPT17;
823 typedef void (AL_APIENTRY *LPALEFFECTFVDIRECT)(ALCcontext *context, ALuint effect, ALenum param, const ALfloat *values) AL_API_NOEXCEPT17;
824 typedef void (AL_APIENTRY *LPALGETEFFECTIDIRECT)(ALCcontext *context, ALuint effect, ALenum param, ALint *value) AL_API_NOEXCEPT17;
825 typedef void (AL_APIENTRY *LPALGETEFFECTIVDIRECT)(ALCcontext *context, ALuint effect, ALenum param, ALint *values) AL_API_NOEXCEPT17;
826 typedef void (AL_APIENTRY *LPALGETEFFECTFDIRECT)(ALCcontext *context, ALuint effect, ALenum param, ALfloat *value) AL_API_NOEXCEPT17;
827 typedef void (AL_APIENTRY *LPALGETEFFECTFVDIRECT)(ALCcontext *context, ALuint effect, ALenum param, ALfloat *values) AL_API_NOEXCEPT17;
828 typedef void (AL_APIENTRY *LPALGENFILTERSDIRECT)(ALCcontext *context, ALsizei n, ALuint *filters) AL_API_NOEXCEPT17;
829 typedef void (AL_APIENTRY *LPALDELETEFILTERSDIRECT)(ALCcontext *context, ALsizei n, const ALuint *filters) AL_API_NOEXCEPT17;
830 typedef ALboolean (AL_APIENTRY *LPALISFILTERDIRECT)(ALCcontext *context, ALuint filter) AL_API_NOEXCEPT17;
831 typedef void (AL_APIENTRY *LPALFILTERIDIRECT)(ALCcontext *context, ALuint filter, ALenum param, ALint value) AL_API_NOEXCEPT17;
832 typedef void (AL_APIENTRY *LPALFILTERIVDIRECT)(ALCcontext *context, ALuint filter, ALenum param, const ALint *values) AL_API_NOEXCEPT17;
833 typedef void (AL_APIENTRY *LPALFILTERFDIRECT)(ALCcontext *context, ALuint filter, ALenum param, ALfloat value) AL_API_NOEXCEPT17;
834 typedef void (AL_APIENTRY *LPALFILTERFVDIRECT)(ALCcontext *context, ALuint filter, ALenum param, const ALfloat *values) AL_API_NOEXCEPT17;
835 typedef void (AL_APIENTRY *LPALGETFILTERIDIRECT)(ALCcontext *context, ALuint filter, ALenum param, ALint *value) AL_API_NOEXCEPT17;
836 typedef void (AL_APIENTRY *LPALGETFILTERIVDIRECT)(ALCcontext *context, ALuint filter, ALenum param, ALint *values) AL_API_NOEXCEPT17;
837 typedef void (AL_APIENTRY *LPALGETFILTERFDIRECT)(ALCcontext *context, ALuint filter, ALenum param, ALfloat *value) AL_API_NOEXCEPT17;
838 typedef void (AL_APIENTRY *LPALGETFILTERFVDIRECT)(ALCcontext *context, ALuint filter, ALenum param, ALfloat *values) AL_API_NOEXCEPT17;
839 typedef void (AL_APIENTRY *LPALGENAUXILIARYEFFECTSLOTSDIRECT)(ALCcontext *context, ALsizei n, ALuint *effectslots) AL_API_NOEXCEPT17;
840 typedef void (AL_APIENTRY *LPALDELETEAUXILIARYEFFECTSLOTSDIRECT)(ALCcontext *context, ALsizei n, const ALuint *effectslots) AL_API_NOEXCEPT17;
841 typedef ALboolean (AL_APIENTRY *LPALISAUXILIARYEFFECTSLOTDIRECT)(ALCcontext *context, ALuint effectslot) AL_API_NOEXCEPT17;
842 typedef void (AL_APIENTRY *LPALAUXILIARYEFFECTSLOTIDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, ALint value) AL_API_NOEXCEPT17;
843 typedef void (AL_APIENTRY *LPALAUXILIARYEFFECTSLOTIVDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, const ALint *values) AL_API_NOEXCEPT17;
844 typedef void (AL_APIENTRY *LPALAUXILIARYEFFECTSLOTFDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat value) AL_API_NOEXCEPT17;
845 typedef void (AL_APIENTRY *LPALAUXILIARYEFFECTSLOTFVDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, const ALfloat *values) AL_API_NOEXCEPT17;
846 typedef void (AL_APIENTRY *LPALGETAUXILIARYEFFECTSLOTIDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, ALint *value) AL_API_NOEXCEPT17;
847 typedef void (AL_APIENTRY *LPALGETAUXILIARYEFFECTSLOTIVDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, ALint *values) AL_API_NOEXCEPT17;
848 typedef void (AL_APIENTRY *LPALGETAUXILIARYEFFECTSLOTFDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat *value) AL_API_NOEXCEPT17;
849 typedef void (AL_APIENTRY *LPALGETAUXILIARYEFFECTSLOTFVDIRECT)(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat *values) AL_API_NOEXCEPT17;
850 /* AL_EXT_BUFFER_DATA_STATIC */
851 typedef void (AL_APIENTRY *LPALBUFFERDATASTATICDIRECT)(ALCcontext *context, ALuint buffer, ALenum format, ALvoid *data, ALsizei size, ALsizei freq) AL_API_NOEXCEPT17;
852 /* AL_EXT_debug */
853 typedef void (AL_APIENTRY*LPALDEBUGMESSAGECALLBACKDIRECTEXT)(ALCcontext *context, ALDEBUGPROCEXT callback, void *userParam) AL_API_NOEXCEPT17;
854 typedef void (AL_APIENTRY*LPALDEBUGMESSAGEINSERTDIRECTEXT)(ALCcontext *context, ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message) AL_API_NOEXCEPT17;
855 typedef void (AL_APIENTRY*LPALDEBUGMESSAGECONTROLDIRECTEXT)(ALCcontext *context, ALenum source, ALenum type, ALenum severity, ALsizei count, const ALuint *ids, ALboolean enable) AL_API_NOEXCEPT17;
856 typedef void (AL_APIENTRY*LPALPUSHDEBUGGROUPDIRECTEXT)(ALCcontext *context, ALenum source, ALuint id, ALsizei length, const ALchar *message) AL_API_NOEXCEPT17;
857 typedef void (AL_APIENTRY*LPALPOPDEBUGGROUPDIRECTEXT)(ALCcontext *context) AL_API_NOEXCEPT17;
858 typedef ALuint (AL_APIENTRY*LPALGETDEBUGMESSAGELOGDIRECTEXT)(ALCcontext *context, ALuint count, ALsizei logBufSize, ALenum *sources, ALenum *types, ALuint *ids, ALenum *severities, ALsizei *lengths, ALchar *logBuf) AL_API_NOEXCEPT17;
859 typedef void (AL_APIENTRY*LPALOBJECTLABELDIRECTEXT)(ALCcontext *context, ALenum identifier, ALuint name, ALsizei length, const ALchar *label) AL_API_NOEXCEPT17;
860 typedef void (AL_APIENTRY*LPALGETOBJECTLABELDIRECTEXT)(ALCcontext *context, ALenum identifier, ALuint name, ALsizei bufSize, ALsizei *length, ALchar *label) AL_API_NOEXCEPT17;
861 /* AL_EXT_FOLDBACK */
862 typedef void (AL_APIENTRY *LPALREQUESTFOLDBACKSTARTDIRECT)(ALCcontext *context, ALenum mode, ALsizei count, ALsizei length, ALfloat *mem, LPALFOLDBACKCALLBACK callback) AL_API_NOEXCEPT17;
863 typedef void (AL_APIENTRY *LPALREQUESTFOLDBACKSTOPDIRECT)(ALCcontext *context) AL_API_NOEXCEPT17;
864 /* AL_SOFT_buffer_sub_data */
865 typedef void (AL_APIENTRY *LPALBUFFERSUBDATADIRECTSOFT)(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei offset, ALsizei length) AL_API_NOEXCEPT17;
866 /* AL_SOFT_source_latency */
867 typedef void (AL_APIENTRY *LPALSOURCEDDIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALdouble) AL_API_NOEXCEPT17;
868 typedef void (AL_APIENTRY *LPALSOURCE3DDIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALdouble,ALdouble,ALdouble) AL_API_NOEXCEPT17;
869 typedef void (AL_APIENTRY *LPALSOURCEDVDIRECTSOFT)(ALCcontext*,ALuint,ALenum,const ALdouble*) AL_API_NOEXCEPT17;
870 typedef void (AL_APIENTRY *LPALGETSOURCEDDIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALdouble*) AL_API_NOEXCEPT17;
871 typedef void (AL_APIENTRY *LPALGETSOURCE3DDIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALdouble*,ALdouble*,ALdouble*) AL_API_NOEXCEPT17;
872 typedef void (AL_APIENTRY *LPALGETSOURCEDVDIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALdouble*) AL_API_NOEXCEPT17;
873 typedef void (AL_APIENTRY *LPALSOURCEI64DIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALint64SOFT) AL_API_NOEXCEPT17;
874 typedef void (AL_APIENTRY *LPALSOURCE3I64DIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALint64SOFT,ALint64SOFT,ALint64SOFT) AL_API_NOEXCEPT17;
875 typedef void (AL_APIENTRY *LPALSOURCEI64VDIRECTSOFT)(ALCcontext*,ALuint,ALenum,const ALint64SOFT*) AL_API_NOEXCEPT17;
876 typedef void (AL_APIENTRY *LPALGETSOURCEI64DIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALint64SOFT*) AL_API_NOEXCEPT17;
877 typedef void (AL_APIENTRY *LPALGETSOURCE3I64DIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALint64SOFT*,ALint64SOFT*,ALint64SOFT*) AL_API_NOEXCEPT17;
878 typedef void (AL_APIENTRY *LPALGETSOURCEI64VDIRECTSOFT)(ALCcontext*,ALuint,ALenum,ALint64SOFT*) AL_API_NOEXCEPT17;
879 /* AL_SOFT_deferred_updates */
880 typedef void (AL_APIENTRY *LPALDEFERUPDATESDIRECTSOFT)(ALCcontext *context) AL_API_NOEXCEPT17;
881 typedef void (AL_APIENTRY *LPALPROCESSUPDATESDIRECTSOFT)(ALCcontext *context) AL_API_NOEXCEPT17;
882 /* AL_SOFT_source_resampler */
883 typedef const ALchar* (AL_APIENTRY *LPALGETSTRINGIDIRECTSOFT)(ALCcontext *context, ALenum pname, ALsizei index) AL_API_NOEXCEPT17;
884 /* AL_SOFT_events */
885 typedef void (AL_APIENTRY *LPALEVENTCONTROLDIRECTSOFT)(ALCcontext *context, ALsizei count, const ALenum *types, ALboolean enable) AL_API_NOEXCEPT17;
886 typedef void (AL_APIENTRY *LPALEVENTCALLBACKDIRECTSOFT)(ALCcontext *context, ALEVENTPROCSOFT callback, void *userParam) AL_API_NOEXCEPT17;
887 typedef void* (AL_APIENTRY *LPALGETPOINTERDIRECTSOFT)(ALCcontext *context, ALenum pname) AL_API_NOEXCEPT17;
888 typedef void (AL_APIENTRY *LPALGETPOINTERVDIRECTSOFT)(ALCcontext *context, ALenum pname, void **values) AL_API_NOEXCEPT17;
889 /* AL_SOFT_callback_buffer */
890 typedef void (AL_APIENTRY *LPALBUFFERCALLBACKDIRECTSOFT)(ALCcontext *context, ALuint buffer, ALenum format, ALsizei freq, ALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr) AL_API_NOEXCEPT17;
891 typedef void (AL_APIENTRY *LPALGETBUFFERPTRDIRECTSOFT)(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **value) AL_API_NOEXCEPT17;
892 typedef void (AL_APIENTRY *LPALGETBUFFER3PTRDIRECTSOFT)(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **value1, ALvoid **value2, ALvoid **value3) AL_API_NOEXCEPT17;
893 typedef void (AL_APIENTRY *LPALGETBUFFERPTRVDIRECTSOFT)(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **values) AL_API_NOEXCEPT17;
894 /* AL_SOFT_source_start_delay */
895 typedef void (AL_APIENTRY *LPALSOURCEPLAYATTIMEDIRECTSOFT)(ALCcontext *context, ALuint source, ALint64SOFT start_time) AL_API_NOEXCEPT17;
896 typedef void (AL_APIENTRY *LPALSOURCEPLAYATTIMEVDIRECTSOFT)(ALCcontext *context, ALsizei n, const ALuint *sources, ALint64SOFT start_time) AL_API_NOEXCEPT17;
897 /* EAX */
898 typedef ALenum (AL_APIENTRY *LPEAXSETDIRECT)(ALCcontext *context, const struct _GUID *property_set_id, ALuint property_id, ALuint source_id, ALvoid *value, ALuint value_size) AL_API_NOEXCEPT17;
899 typedef ALenum (AL_APIENTRY *LPEAXGETDIRECT)(ALCcontext *context, const struct _GUID *property_set_id, ALuint property_id, ALuint source_id, ALvoid *value, ALuint value_size) AL_API_NOEXCEPT17;
900 typedef ALboolean (AL_APIENTRY *LPEAXSETBUFFERMODEDIRECT)(ALCcontext *context, ALsizei n, const ALuint *buffers, ALint value) AL_API_NOEXCEPT17;
901 typedef ALenum (AL_APIENTRY *LPEAXGETBUFFERMODEDIRECT)(ALCcontext *context, ALuint buffer, ALint *pReserved) AL_API_NOEXCEPT17;
902 #ifdef AL_ALEXT_PROTOTYPES
903 ALCvoid* AL_APIENTRY alcGetProcAddress2(ALCdevice *device, const ALchar *funcName) AL_API_NOEXCEPT;
905 void AL_APIENTRY alEnableDirect(ALCcontext *context, ALenum capability) AL_API_NOEXCEPT;
906 void AL_APIENTRY alDisableDirect(ALCcontext *context, ALenum capability) AL_API_NOEXCEPT;
907 ALboolean AL_APIENTRY alIsEnabledDirect(ALCcontext *context, ALenum capability) AL_API_NOEXCEPT;
909 void AL_APIENTRY alDopplerFactorDirect(ALCcontext *context, ALfloat value) AL_API_NOEXCEPT;
910 void AL_APIENTRY alSpeedOfSoundDirect(ALCcontext *context, ALfloat value) AL_API_NOEXCEPT;
911 void AL_APIENTRY alDistanceModelDirect(ALCcontext *context, ALenum distanceModel) AL_API_NOEXCEPT;
913 const ALchar* AL_APIENTRY alGetStringDirect(ALCcontext *context, ALenum param) AL_API_NOEXCEPT;
914 void AL_APIENTRY alGetBooleanvDirect(ALCcontext *context, ALenum param, ALboolean *values) AL_API_NOEXCEPT;
915 void AL_APIENTRY alGetIntegervDirect(ALCcontext *context, ALenum param, ALint *values) AL_API_NOEXCEPT;
916 void AL_APIENTRY alGetFloatvDirect(ALCcontext *context, ALenum param, ALfloat *values) AL_API_NOEXCEPT;
917 void AL_APIENTRY alGetDoublevDirect(ALCcontext *context, ALenum param, ALdouble *values) AL_API_NOEXCEPT;
918 ALboolean AL_APIENTRY alGetBooleanDirect(ALCcontext *context, ALenum param) AL_API_NOEXCEPT;
919 ALint AL_APIENTRY alGetIntegerDirect(ALCcontext *context, ALenum param) AL_API_NOEXCEPT;
920 ALfloat AL_APIENTRY alGetFloatDirect(ALCcontext *context, ALenum param) AL_API_NOEXCEPT;
921 ALdouble AL_APIENTRY alGetDoubleDirect(ALCcontext *context, ALenum param) AL_API_NOEXCEPT;
923 ALenum AL_APIENTRY alGetErrorDirect(ALCcontext *context) AL_API_NOEXCEPT;
924 ALboolean AL_APIENTRY alIsExtensionPresentDirect(ALCcontext *context, const ALchar *extname) AL_API_NOEXCEPT;
925 void* AL_APIENTRY alGetProcAddressDirect(ALCcontext *context, const ALchar *fname) AL_API_NOEXCEPT;
926 ALenum AL_APIENTRY alGetEnumValueDirect(ALCcontext *context, const ALchar *ename) AL_API_NOEXCEPT;
928 void AL_APIENTRY alListenerfDirect(ALCcontext *context, ALenum param, ALfloat value) AL_API_NOEXCEPT;
929 void AL_APIENTRY alListener3fDirect(ALCcontext *context, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) AL_API_NOEXCEPT;
930 void AL_APIENTRY alListenerfvDirect(ALCcontext *context, ALenum param, const ALfloat *values) AL_API_NOEXCEPT;
931 void AL_APIENTRY alListeneriDirect(ALCcontext *context, ALenum param, ALint value) AL_API_NOEXCEPT;
932 void AL_APIENTRY alListener3iDirect(ALCcontext *context, ALenum param, ALint value1, ALint value2, ALint value3) AL_API_NOEXCEPT;
933 void AL_APIENTRY alListenerivDirect(ALCcontext *context, ALenum param, const ALint *values) AL_API_NOEXCEPT;
934 void AL_APIENTRY alGetListenerfDirect(ALCcontext *context, ALenum param, ALfloat *value) AL_API_NOEXCEPT;
935 void AL_APIENTRY alGetListener3fDirect(ALCcontext *context, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) AL_API_NOEXCEPT;
936 void AL_APIENTRY alGetListenerfvDirect(ALCcontext *context, ALenum param, ALfloat *values) AL_API_NOEXCEPT;
937 void AL_APIENTRY alGetListeneriDirect(ALCcontext *context, ALenum param, ALint *value) AL_API_NOEXCEPT;
938 void AL_APIENTRY alGetListener3iDirect(ALCcontext *context, ALenum param, ALint *value1, ALint *value2, ALint *value3) AL_API_NOEXCEPT;
939 void AL_APIENTRY alGetListenerivDirect(ALCcontext *context, ALenum param, ALint *values) AL_API_NOEXCEPT;
941 void AL_APIENTRY alGenSourcesDirect(ALCcontext *context, ALsizei n, ALuint *sources) AL_API_NOEXCEPT;
942 void AL_APIENTRY alDeleteSourcesDirect(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT;
943 ALboolean AL_APIENTRY alIsSourceDirect(ALCcontext *context, ALuint source) AL_API_NOEXCEPT;
944 void AL_APIENTRY alSourcefDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat value) AL_API_NOEXCEPT;
945 void AL_APIENTRY alSource3fDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) AL_API_NOEXCEPT;
946 void AL_APIENTRY alSourcefvDirect(ALCcontext *context, ALuint source, ALenum param, const ALfloat *values) AL_API_NOEXCEPT;
947 void AL_APIENTRY alSourceiDirect(ALCcontext *context, ALuint source, ALenum param, ALint value) AL_API_NOEXCEPT;
948 void AL_APIENTRY alSource3iDirect(ALCcontext *context, ALuint source, ALenum param, ALint value1, ALint value2, ALint value3) AL_API_NOEXCEPT;
949 void AL_APIENTRY alSourceivDirect(ALCcontext *context, ALuint source, ALenum param, const ALint *values) AL_API_NOEXCEPT;
950 void AL_APIENTRY alGetSourcefDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *value) AL_API_NOEXCEPT;
951 void AL_APIENTRY alGetSource3fDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) AL_API_NOEXCEPT;
952 void AL_APIENTRY alGetSourcefvDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *values) AL_API_NOEXCEPT;
953 void AL_APIENTRY alGetSourceiDirect(ALCcontext *context, ALuint source, ALenum param, ALint *value) AL_API_NOEXCEPT;
954 void AL_APIENTRY alGetSource3iDirect(ALCcontext *context, ALuint source, ALenum param, ALint *value1, ALint *value2, ALint *value3) AL_API_NOEXCEPT;
955 void AL_APIENTRY alGetSourceivDirect(ALCcontext *context, ALuint source, ALenum param, ALint *values) AL_API_NOEXCEPT;
956 void AL_APIENTRY alSourcePlayDirect(ALCcontext *context, ALuint source) AL_API_NOEXCEPT;
957 void AL_APIENTRY alSourceStopDirect(ALCcontext *context, ALuint source) AL_API_NOEXCEPT;
958 void AL_APIENTRY alSourceRewindDirect(ALCcontext *context, ALuint source) AL_API_NOEXCEPT;
959 void AL_APIENTRY alSourcePauseDirect(ALCcontext *context, ALuint source) AL_API_NOEXCEPT;
960 void AL_APIENTRY alSourcePlayvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT;
961 void AL_APIENTRY alSourceStopvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT;
962 void AL_APIENTRY alSourceRewindvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT;
963 void AL_APIENTRY alSourcePausevDirect(ALCcontext *context, ALsizei n, const ALuint *sources) AL_API_NOEXCEPT;
964 void AL_APIENTRY alSourceQueueBuffersDirect(ALCcontext *context, ALuint source, ALsizei nb, const ALuint *buffers) AL_API_NOEXCEPT;
965 void AL_APIENTRY alSourceUnqueueBuffersDirect(ALCcontext *context, ALuint source, ALsizei nb, ALuint *buffers) AL_API_NOEXCEPT;
967 void AL_APIENTRY alGenBuffersDirect(ALCcontext *context, ALsizei n, ALuint *buffers) AL_API_NOEXCEPT;
968 void AL_APIENTRY alDeleteBuffersDirect(ALCcontext *context, ALsizei n, const ALuint *buffers) AL_API_NOEXCEPT;
969 ALboolean AL_APIENTRY alIsBufferDirect(ALCcontext *context, ALuint buffer) AL_API_NOEXCEPT;
970 void AL_APIENTRY alBufferDataDirect(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei samplerate) AL_API_NOEXCEPT;
971 void AL_APIENTRY alBufferfDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat value) AL_API_NOEXCEPT;
972 void AL_APIENTRY alBuffer3fDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) AL_API_NOEXCEPT;
973 void AL_APIENTRY alBufferfvDirect(ALCcontext *context, ALuint buffer, ALenum param, const ALfloat *values) AL_API_NOEXCEPT;
974 void AL_APIENTRY alBufferiDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint value) AL_API_NOEXCEPT;
975 void AL_APIENTRY alBuffer3iDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint value1, ALint value2, ALint value3) AL_API_NOEXCEPT;
976 void AL_APIENTRY alBufferivDirect(ALCcontext *context, ALuint buffer, ALenum param, const ALint *values) AL_API_NOEXCEPT;
977 void AL_APIENTRY alGetBufferfDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value) AL_API_NOEXCEPT;
978 void AL_APIENTRY alGetBuffer3fDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) AL_API_NOEXCEPT;
979 void AL_APIENTRY alGetBufferfvDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *values) AL_API_NOEXCEPT;
980 void AL_APIENTRY alGetBufferiDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *value) AL_API_NOEXCEPT;
981 void AL_APIENTRY alGetBuffer3iDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *value1, ALint *value2, ALint *value3) AL_API_NOEXCEPT;
982 void AL_APIENTRY alGetBufferivDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *values) AL_API_NOEXCEPT;
984 void AL_APIENTRY alGenEffectsDirect(ALCcontext *context, ALsizei n, ALuint *effects) AL_API_NOEXCEPT;
985 void AL_APIENTRY alDeleteEffectsDirect(ALCcontext *context, ALsizei n, const ALuint *effects) AL_API_NOEXCEPT;
986 ALboolean AL_APIENTRY alIsEffectDirect(ALCcontext *context, ALuint effect) AL_API_NOEXCEPT;
987 void AL_APIENTRY alEffectiDirect(ALCcontext *context, ALuint effect, ALenum param, ALint iValue) AL_API_NOEXCEPT;
988 void AL_APIENTRY alEffectivDirect(ALCcontext *context, ALuint effect, ALenum param, const ALint *piValues) AL_API_NOEXCEPT;
989 void AL_APIENTRY alEffectfDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat flValue) AL_API_NOEXCEPT;
990 void AL_APIENTRY alEffectfvDirect(ALCcontext *context, ALuint effect, ALenum param, const ALfloat *pflValues) AL_API_NOEXCEPT;
991 void AL_APIENTRY alGetEffectiDirect(ALCcontext *context, ALuint effect, ALenum param, ALint *piValue) AL_API_NOEXCEPT;
992 void AL_APIENTRY alGetEffectivDirect(ALCcontext *context, ALuint effect, ALenum param, ALint *piValues) AL_API_NOEXCEPT;
993 void AL_APIENTRY alGetEffectfDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat *pflValue) AL_API_NOEXCEPT;
994 void AL_APIENTRY alGetEffectfvDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat *pflValues) AL_API_NOEXCEPT;
996 void AL_APIENTRY alGenFiltersDirect(ALCcontext *context, ALsizei n, ALuint *filters) AL_API_NOEXCEPT;
997 void AL_APIENTRY alDeleteFiltersDirect(ALCcontext *context, ALsizei n, const ALuint *filters) AL_API_NOEXCEPT;
998 ALboolean AL_APIENTRY alIsFilterDirect(ALCcontext *context, ALuint filter) AL_API_NOEXCEPT;
999 void AL_APIENTRY alFilteriDirect(ALCcontext *context, ALuint filter, ALenum param, ALint iValue) AL_API_NOEXCEPT;
1000 void AL_APIENTRY alFilterivDirect(ALCcontext *context, ALuint filter, ALenum param, const ALint *piValues) AL_API_NOEXCEPT;
1001 void AL_APIENTRY alFilterfDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat flValue) AL_API_NOEXCEPT;
1002 void AL_APIENTRY alFilterfvDirect(ALCcontext *context, ALuint filter, ALenum param, const ALfloat *pflValues) AL_API_NOEXCEPT;
1003 void AL_APIENTRY alGetFilteriDirect(ALCcontext *context, ALuint filter, ALenum param, ALint *piValue) AL_API_NOEXCEPT;
1004 void AL_APIENTRY alGetFilterivDirect(ALCcontext *context, ALuint filter, ALenum param, ALint *piValues) AL_API_NOEXCEPT;
1005 void AL_APIENTRY alGetFilterfDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat *pflValue) AL_API_NOEXCEPT;
1006 void AL_APIENTRY alGetFilterfvDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat *pflValues) AL_API_NOEXCEPT;
1008 void AL_APIENTRY alGenAuxiliaryEffectSlotsDirect(ALCcontext *context, ALsizei n, ALuint *effectslots) AL_API_NOEXCEPT;
1009 void AL_APIENTRY alDeleteAuxiliaryEffectSlotsDirect(ALCcontext *context, ALsizei n, const ALuint *effectslots) AL_API_NOEXCEPT;
1010 ALboolean AL_APIENTRY alIsAuxiliaryEffectSlotDirect(ALCcontext *context, ALuint effectslot) AL_API_NOEXCEPT;
1011 void AL_APIENTRY alAuxiliaryEffectSlotiDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint iValue) AL_API_NOEXCEPT;
1012 void AL_APIENTRY alAuxiliaryEffectSlotivDirect(ALCcontext *context, ALuint effectslot, ALenum param, const ALint *piValues) AL_API_NOEXCEPT;
1013 void AL_APIENTRY alAuxiliaryEffectSlotfDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat flValue) AL_API_NOEXCEPT;
1014 void AL_APIENTRY alAuxiliaryEffectSlotfvDirect(ALCcontext *context, ALuint effectslot, ALenum param, const ALfloat *pflValues) AL_API_NOEXCEPT;
1015 void AL_APIENTRY alGetAuxiliaryEffectSlotiDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint *piValue) AL_API_NOEXCEPT;
1016 void AL_APIENTRY alGetAuxiliaryEffectSlotivDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint *piValues) AL_API_NOEXCEPT;
1017 void AL_APIENTRY alGetAuxiliaryEffectSlotfDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat *pflValue) AL_API_NOEXCEPT;
1018 void AL_APIENTRY alGetAuxiliaryEffectSlotfvDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat *pflValues) AL_API_NOEXCEPT;
1020 void AL_APIENTRY alBufferDataStaticDirect(ALCcontext *context, ALuint buffer, ALenum format, ALvoid *data, ALsizei size, ALsizei freq) AL_API_NOEXCEPT;
1022 void AL_APIENTRY alDebugMessageCallbackDirectEXT(ALCcontext *context, ALDEBUGPROCEXT callback, void *userParam) AL_API_NOEXCEPT;
1023 void AL_APIENTRY alDebugMessageInsertDirectEXT(ALCcontext *context, ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message) AL_API_NOEXCEPT;
1024 void AL_APIENTRY alDebugMessageControlDirectEXT(ALCcontext *context, ALenum source, ALenum type, ALenum severity, ALsizei count, const ALuint *ids, ALboolean enable) AL_API_NOEXCEPT;
1025 void AL_APIENTRY alPushDebugGroupDirectEXT(ALCcontext *context, ALenum source, ALuint id, ALsizei length, const ALchar *message) AL_API_NOEXCEPT;
1026 void AL_APIENTRY alPopDebugGroupDirectEXT(ALCcontext *context) AL_API_NOEXCEPT;
1027 ALuint AL_APIENTRY alGetDebugMessageLogDirectEXT(ALCcontext *context, ALuint count, ALsizei logBufSize, ALenum *sources, ALenum *types, ALuint *ids, ALenum *severities, ALsizei *lengths, ALchar *logBuf) AL_API_NOEXCEPT;
1028 void AL_APIENTRY alObjectLabelDirectEXT(ALCcontext *context, ALenum identifier, ALuint name, ALsizei length, const ALchar *label) AL_API_NOEXCEPT;
1029 void AL_APIENTRY alGetObjectLabelDirectEXT(ALCcontext *context, ALenum identifier, ALuint name, ALsizei bufSize, ALsizei *length, ALchar *label) AL_API_NOEXCEPT;
1031 void AL_APIENTRY alRequestFoldbackStartDirect(ALCcontext *context, ALenum mode, ALsizei count, ALsizei length, ALfloat *mem, LPALFOLDBACKCALLBACK callback) AL_API_NOEXCEPT;
1032 void AL_APIENTRY alRequestFoldbackStopDirect(ALCcontext *context) AL_API_NOEXCEPT;
1034 void AL_APIENTRY alBufferSubDataDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei offset, ALsizei length) AL_API_NOEXCEPT;
1036 void AL_APIENTRY alSourcedDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble value) AL_API_NOEXCEPT;
1037 void AL_APIENTRY alSource3dDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble value1, ALdouble value2, ALdouble value3) AL_API_NOEXCEPT;
1038 void AL_APIENTRY alSourcedvDirectSOFT(ALCcontext *context, ALuint source, ALenum param, const ALdouble *values) AL_API_NOEXCEPT;
1039 void AL_APIENTRY alGetSourcedDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *value) AL_API_NOEXCEPT;
1040 void AL_APIENTRY alGetSource3dDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *value1, ALdouble *value2, ALdouble *value3) AL_API_NOEXCEPT;
1041 void AL_APIENTRY alGetSourcedvDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *values) AL_API_NOEXCEPT;
1042 void AL_APIENTRY alSourcei64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT value) AL_API_NOEXCEPT;
1043 void AL_APIENTRY alSource3i64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT value1, ALint64SOFT value2, ALint64SOFT value3) AL_API_NOEXCEPT;
1044 void AL_APIENTRY alSourcei64vDirectSOFT(ALCcontext *context, ALuint source, ALenum param, const ALint64SOFT *values) AL_API_NOEXCEPT;
1045 void AL_APIENTRY alGetSourcei64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *value) AL_API_NOEXCEPT;
1046 void AL_APIENTRY alGetSource3i64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *value1, ALint64SOFT *value2, ALint64SOFT *value3) AL_API_NOEXCEPT;
1047 void AL_APIENTRY alGetSourcei64vDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *values) AL_API_NOEXCEPT;
1049 void AL_APIENTRY alDeferUpdatesDirectSOFT(ALCcontext *context) AL_API_NOEXCEPT;
1050 void AL_APIENTRY alProcessUpdatesDirectSOFT(ALCcontext *context) AL_API_NOEXCEPT;
1052 const ALchar* AL_APIENTRY alGetStringiDirectSOFT(ALCcontext *context, ALenum pname, ALsizei index) AL_API_NOEXCEPT;
1054 void AL_APIENTRY alEventControlDirectSOFT(ALCcontext *context, ALsizei count, const ALenum *types, ALboolean enable) AL_API_NOEXCEPT;
1055 void AL_APIENTRY alEventCallbackDirectSOFT(ALCcontext *context, ALEVENTPROCSOFT callback, void *userParam) AL_API_NOEXCEPT;
1056 void* AL_APIENTRY alGetPointerDirectSOFT(ALCcontext *context, ALenum pname) AL_API_NOEXCEPT;
1057 void AL_APIENTRY alGetPointervDirectSOFT(ALCcontext *context, ALenum pname, void **values) AL_API_NOEXCEPT;
1059 void AL_APIENTRY alBufferCallbackDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, ALsizei freq, ALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr) AL_API_NOEXCEPT;
1060 void AL_APIENTRY alGetBufferPtrDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **ptr) AL_API_NOEXCEPT;
1061 void AL_APIENTRY alGetBuffer3PtrDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **ptr0, ALvoid **ptr1, ALvoid **ptr2) AL_API_NOEXCEPT;
1062 void AL_APIENTRY alGetBufferPtrvDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **ptr) AL_API_NOEXCEPT;
1064 void AL_APIENTRY alSourcePlayAtTimeDirectSOFT(ALCcontext *context, ALuint source, ALint64SOFT start_time) AL_API_NOEXCEPT;
1065 void AL_APIENTRY alSourcePlayAtTimevDirectSOFT(ALCcontext *context, ALsizei n, const ALuint *sources, ALint64SOFT start_time) AL_API_NOEXCEPT;
1067 ALenum AL_APIENTRY EAXSetDirect(ALCcontext *context, const struct _GUID *property_set_id, ALuint property_id, ALuint source_id, ALvoid *value, ALuint value_size) AL_API_NOEXCEPT;
1068 ALenum AL_APIENTRY EAXGetDirect(ALCcontext *context, const struct _GUID *property_set_id, ALuint property_id, ALuint source_id, ALvoid *value, ALuint value_size) AL_API_NOEXCEPT;
1069 ALboolean AL_APIENTRY EAXSetBufferModeDirect(ALCcontext *context, ALsizei n, const ALuint *buffers, ALint value) AL_API_NOEXCEPT;
1070 ALenum AL_APIENTRY EAXGetBufferModeDirect(ALCcontext *context, ALuint buffer, ALint *pReserved) AL_API_NOEXCEPT;
1071 #endif
1072 #endif
1074 #ifdef __cplusplus
1076 #endif
1077 /* NOLINTEND */
1079 #endif