annotate include/AL/alext.h @ 0:f9476ff7637e

initial forking of open-al to create multiple listeners
author Robert McIntyre <rlm@mit.edu>
date Tue, 25 Oct 2011 13:02:31 -0700
parents
children
rev   line source
rlm@0 1 /**
rlm@0 2 * OpenAL cross platform audio library
rlm@0 3 * Copyright (C) 2008 by authors.
rlm@0 4 * This library is free software; you can redistribute it and/or
rlm@0 5 * modify it under the terms of the GNU Library General Public
rlm@0 6 * License as published by the Free Software Foundation; either
rlm@0 7 * version 2 of the License, or (at your option) any later version.
rlm@0 8 *
rlm@0 9 * This library is distributed in the hope that it will be useful,
rlm@0 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
rlm@0 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
rlm@0 12 * Library General Public License for more details.
rlm@0 13 *
rlm@0 14 * You should have received a copy of the GNU Library General Public
rlm@0 15 * License along with this library; if not, write to the
rlm@0 16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
rlm@0 17 * Boston, MA 02111-1307, USA.
rlm@0 18 * Or go to http://www.gnu.org/copyleft/lgpl.html
rlm@0 19 */
rlm@0 20
rlm@0 21 #ifndef AL_ALEXT_H
rlm@0 22 #define AL_ALEXT_H
rlm@0 23
rlm@0 24 #include <stddef.h>
rlm@0 25
rlm@0 26 #ifdef __cplusplus
rlm@0 27 extern "C" {
rlm@0 28 #endif
rlm@0 29
rlm@0 30 #ifndef AL_LOKI_IMA_ADPCM_format
rlm@0 31 #define AL_LOKI_IMA_ADPCM_format 1
rlm@0 32 #define AL_FORMAT_IMA_ADPCM_MONO16_EXT 0x10000
rlm@0 33 #define AL_FORMAT_IMA_ADPCM_STEREO16_EXT 0x10001
rlm@0 34 #endif
rlm@0 35
rlm@0 36 #ifndef AL_LOKI_WAVE_format
rlm@0 37 #define AL_LOKI_WAVE_format 1
rlm@0 38 #define AL_FORMAT_WAVE_EXT 0x10002
rlm@0 39 #endif
rlm@0 40
rlm@0 41 #ifndef AL_EXT_vorbis
rlm@0 42 #define AL_EXT_vorbis 1
rlm@0 43 #define AL_FORMAT_VORBIS_EXT 0x10003
rlm@0 44 #endif
rlm@0 45
rlm@0 46 #ifndef AL_LOKI_quadriphonic
rlm@0 47 #define AL_LOKI_quadriphonic 1
rlm@0 48 #define AL_FORMAT_QUAD8_LOKI 0x10004
rlm@0 49 #define AL_FORMAT_QUAD16_LOKI 0x10005
rlm@0 50 #endif
rlm@0 51
rlm@0 52 #ifndef AL_EXT_float32
rlm@0 53 #define AL_EXT_float32 1
rlm@0 54 #define AL_FORMAT_MONO_FLOAT32 0x10010
rlm@0 55 #define AL_FORMAT_STEREO_FLOAT32 0x10011
rlm@0 56 #endif
rlm@0 57
rlm@0 58 #ifndef AL_EXT_double
rlm@0 59 #define AL_EXT_double 1
rlm@0 60 #define AL_FORMAT_MONO_DOUBLE_EXT 0x10012
rlm@0 61 #define AL_FORMAT_STEREO_DOUBLE_EXT 0x10013
rlm@0 62 #endif
rlm@0 63
rlm@0 64 #ifndef ALC_LOKI_audio_channel
rlm@0 65 #define ALC_LOKI_audio_channel 1
rlm@0 66 #define ALC_CHAN_MAIN_LOKI 0x500001
rlm@0 67 #define ALC_CHAN_PCM_LOKI 0x500002
rlm@0 68 #define ALC_CHAN_CD_LOKI 0x500003
rlm@0 69 #endif
rlm@0 70
rlm@0 71 #ifndef AL_EXT_MCFORMATS
rlm@0 72 #define AL_EXT_MCFORMATS 1
rlm@0 73 #define AL_FORMAT_QUAD8 0x1204
rlm@0 74 #define AL_FORMAT_QUAD16 0x1205
rlm@0 75 #define AL_FORMAT_QUAD32 0x1206
rlm@0 76 #define AL_FORMAT_REAR8 0x1207
rlm@0 77 #define AL_FORMAT_REAR16 0x1208
rlm@0 78 #define AL_FORMAT_REAR32 0x1209
rlm@0 79 #define AL_FORMAT_51CHN8 0x120A
rlm@0 80 #define AL_FORMAT_51CHN16 0x120B
rlm@0 81 #define AL_FORMAT_51CHN32 0x120C
rlm@0 82 #define AL_FORMAT_61CHN8 0x120D
rlm@0 83 #define AL_FORMAT_61CHN16 0x120E
rlm@0 84 #define AL_FORMAT_61CHN32 0x120F
rlm@0 85 #define AL_FORMAT_71CHN8 0x1210
rlm@0 86 #define AL_FORMAT_71CHN16 0x1211
rlm@0 87 #define AL_FORMAT_71CHN32 0x1212
rlm@0 88 #endif
rlm@0 89
rlm@0 90 #ifndef AL_EXT_MULAW_MCFORMATS
rlm@0 91 #define AL_EXT_MULAW_MCFORMATS 1
rlm@0 92 #define AL_FORMAT_MONO_MULAW 0x10014
rlm@0 93 #define AL_FORMAT_STEREO_MULAW 0x10015
rlm@0 94 #define AL_FORMAT_QUAD_MULAW 0x10021
rlm@0 95 #define AL_FORMAT_REAR_MULAW 0x10022
rlm@0 96 #define AL_FORMAT_51CHN_MULAW 0x10023
rlm@0 97 #define AL_FORMAT_61CHN_MULAW 0x10024
rlm@0 98 #define AL_FORMAT_71CHN_MULAW 0x10025
rlm@0 99 #endif
rlm@0 100
rlm@0 101 #ifndef AL_EXT_IMA4
rlm@0 102 #define AL_EXT_IMA4 1
rlm@0 103 #define AL_FORMAT_MONO_IMA4 0x1300
rlm@0 104 #define AL_FORMAT_STEREO_IMA4 0x1301
rlm@0 105 #endif
rlm@0 106
rlm@0 107 #ifndef AL_EXT_STATIC_BUFFER
rlm@0 108 #define AL_EXT_STATIC_BUFFER 1
rlm@0 109 typedef ALvoid (AL_APIENTRY*PFNALBUFFERDATASTATICPROC)(const ALint,ALenum,ALvoid*,ALsizei,ALsizei);
rlm@0 110 #ifdef AL_ALEXT_PROTOTYPES
rlm@0 111 AL_API ALvoid AL_APIENTRY alBufferDataStatic(const ALint buffer, ALenum format, ALvoid *data, ALsizei len, ALsizei freq);
rlm@0 112 #endif
rlm@0 113 #endif
rlm@0 114
rlm@0 115 #ifndef ALC_EXT_EFX
rlm@0 116 #define ALC_EXT_EFX 1
rlm@0 117 #include "efx.h"
rlm@0 118 #endif
rlm@0 119
rlm@0 120 #ifndef ALC_EXT_disconnect
rlm@0 121 #define ALC_EXT_disconnect 1
rlm@0 122 #define ALC_CONNECTED 0x313
rlm@0 123 #endif
rlm@0 124
rlm@0 125 #ifndef ALC_EXT_thread_local_context
rlm@0 126 #define ALC_EXT_thread_local_context 1
rlm@0 127 typedef ALCboolean (ALC_APIENTRY*PFNALCSETTHREADCONTEXTPROC)(ALCcontext *context);
rlm@0 128 typedef ALCcontext* (ALC_APIENTRY*PFNALCGETTHREADCONTEXTPROC)(void);
rlm@0 129 #ifdef AL_ALEXT_PROTOTYPES
rlm@0 130 ALC_API ALCboolean ALC_APIENTRY alcSetThreadContext(ALCcontext *context);
rlm@0 131 ALC_API ALCcontext* ALC_APIENTRY alcGetThreadContext(void);
rlm@0 132 #endif
rlm@0 133 #endif
rlm@0 134
rlm@0 135 #ifndef AL_EXT_source_distance_model
rlm@0 136 #define AL_EXT_source_distance_model 1
rlm@0 137 #define AL_SOURCE_DISTANCE_MODEL 0x200
rlm@0 138 #endif
rlm@0 139
rlm@0 140 #ifndef AL_SOFT_buffer_sub_data
rlm@0 141 #define AL_SOFT_buffer_sub_data 1
rlm@0 142 #define AL_BYTE_RW_OFFSETS_SOFT 0x1031
rlm@0 143 #define AL_SAMPLE_RW_OFFSETS_SOFT 0x1032
rlm@0 144 typedef ALvoid (AL_APIENTRY*PFNALBUFFERSUBDATASOFTPROC)(ALuint,ALenum,const ALvoid*,ALsizei,ALsizei);
rlm@0 145 #ifdef AL_ALEXT_PROTOTYPES
rlm@0 146 AL_API ALvoid AL_APIENTRY alBufferSubDataSOFT(ALuint buffer,ALenum format,const ALvoid *data,ALsizei offset,ALsizei length);
rlm@0 147 #endif
rlm@0 148 #endif
rlm@0 149
rlm@0 150 #ifndef AL_SOFT_loop_points
rlm@0 151 #define AL_SOFT_loop_points 1
rlm@0 152 #define AL_LOOP_POINTS_SOFT 0x2015
rlm@0 153 #endif
rlm@0 154
rlm@0 155 #ifndef AL_EXT_FOLDBACK
rlm@0 156 #define AL_EXT_FOLDBACK 1
rlm@0 157 #define AL_EXT_FOLDBACK_NAME "AL_EXT_FOLDBACK"
rlm@0 158 #define AL_FOLDBACK_EVENT_BLOCK 0x4112
rlm@0 159 #define AL_FOLDBACK_EVENT_START 0x4111
rlm@0 160 #define AL_FOLDBACK_EVENT_STOP 0x4113
rlm@0 161 #define AL_FOLDBACK_MODE_MONO 0x4101
rlm@0 162 #define AL_FOLDBACK_MODE_STEREO 0x4102
rlm@0 163 typedef void (AL_APIENTRY*LPALFOLDBACKCALLBACK)(ALenum,ALsizei);
rlm@0 164 typedef void (AL_APIENTRY*LPALREQUESTFOLDBACKSTART)(ALenum,ALsizei,ALsizei,ALfloat*,LPALFOLDBACKCALLBACK);
rlm@0 165 typedef void (AL_APIENTRY*LPALREQUESTFOLDBACKSTOP)(void);
rlm@0 166 #ifdef AL_ALEXT_PROTOTYPES
rlm@0 167 AL_API void AL_APIENTRY alRequestFoldbackStart(ALenum mode,ALsizei count,ALsizei length,ALfloat *mem,LPALFOLDBACKCALLBACK callback);
rlm@0 168 AL_API void AL_APIENTRY alRequestFoldbackStop(void);
rlm@0 169 #endif
rlm@0 170 #endif
rlm@0 171
rlm@0 172 #ifndef ALC_EXT_DEDICATED
rlm@0 173 #define ALC_EXT_DEDICATED 1
rlm@0 174 #define AL_DEDICATED_GAIN 0x0001
rlm@0 175 #define AL_EFFECT_DEDICATED_DIALOGUE 0x9001
rlm@0 176 #define AL_EFFECT_DEDICATED_LOW_FREQUENCY_EFFECT 0x9000
rlm@0 177 #endif
rlm@0 178
rlm@0 179 #ifdef __cplusplus
rlm@0 180 }
rlm@0 181 #endif
rlm@0 182
rlm@0 183 #endif