1 /* 2 3 Boost Software License - Version 1.0 - August 17th, 2003 4 5 Permission is hereby granted, free of charge, to any person or organization 6 obtaining a copy of the software and accompanying documentation covered by 7 this license ( the "Software" ) to use, reproduce, display, distribute, 8 execute, and transmit the Software, and to prepare derivative works of the 9 Software, and to permit third-parties to whom the Software is furnished to 10 do so, all subject to the following: 11 12 The copyright notices in the Software and this entire statement, including 13 the above license grant, this restriction and the following disclaimer, 14 must be included in all copies of the Software, in whole or in part, and 15 all derivative works of the Software, unless such copies or derivative 16 works are solely in the form of machine-executable object code generated by 17 a source language processor. 18 19 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT 22 SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE 23 FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, 24 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 25 DEALINGS IN THE SOFTWARE. 26 27 */ 28 module derelict.openal.types; 29 30 // al 31 enum AL_VERSION_1_0 = true; 32 enum AL_VERSION_1_1 = true; 33 34 alias ALboolean = byte; 35 alias ALchar = char; 36 alias ALbyte = byte; 37 alias ALubyte = ubyte; 38 alias ALshort = short; 39 alias ALushort = ushort; 40 alias ALint = int; 41 alias ALuint = uint; 42 alias ALsizei = int; 43 alias ALenum = int; 44 alias ALfloat = float; 45 alias ALdouble = double; 46 alias ALvoid = void; 47 48 enum : ALboolean { 49 AL_FALSE = 0, 50 AL_TRUE = 1, 51 } 52 53 enum : ALenum { 54 AL_INVALID = -1, 55 AL_NONE = 0, 56 57 AL_SOURCE_RELATIVE = 0x202, 58 59 AL_CONE_INNER_ANGLE = 0x1001, 60 AL_CONE_OUTER_ANGLE = 0x1002, 61 62 AL_PITCH = 0x1003, 63 AL_POSITION = 0x1004, 64 AL_DIRECTION = 0x1005, 65 AL_VELOCITY = 0x1006, 66 AL_LOOPING = 0x1007, 67 AL_BUFFER = 0x1009, 68 AL_GAIN = 0x100A, 69 AL_MIN_GAIN = 0x100D, 70 AL_MAX_GAIN = 0x100E, 71 AL_ORIENTATION = 0x100F, 72 73 AL_CHANNEL_MASK = 0x3000, 74 75 AL_SOURCE_STATE = 0x1010, 76 AL_INITIAL = 0x1011, 77 AL_PLAYING = 0x1012, 78 AL_PAUSED = 0x1013, 79 AL_STOPPED = 0x1014, 80 81 AL_BUFFERS_QUEUED = 0x1015, 82 AL_BUFFERS_PROCESSED = 0x1016, 83 84 AL_REFERENCE_DISTANCE = 0x1020, 85 AL_ROLLOFF_FACTOR = 0x1021, 86 AL_CONE_OUTER_GAIN = 0x1022, 87 AL_MAX_DISTANCE = 0x1023, 88 89 AL_SEC_OFFSET = 0x1024, 90 AL_SAMPLE_OFFSET = 0x1025, 91 AL_BYTE_OFFSET = 0x1026, 92 93 AL_SOURCE_TYPE = 0x1027, 94 AL_STATIC = 0x1028, 95 AL_STREAMING = 0x1029, 96 AL_UNDETERMINED = 0x1030, 97 98 AL_FORMAT_MONO8 = 0x1100, 99 AL_FORMAT_MONO16 = 0x1101, 100 AL_FORMAT_STEREO8 = 0x1102, 101 AL_FORMAT_STEREO16 = 0x1103, 102 103 AL_FREQUENCY = 0x2001, 104 AL_BITS = 0x2002, 105 AL_CHANNELS = 0x2003, 106 AL_SIZE = 0x2004, 107 108 AL_UNUSED = 0x2010, 109 AL_PENDING = 0x2011, 110 AL_PROCESSED = 0x2012, 111 112 AL_NO_ERROR = AL_FALSE, 113 114 AL_INVALID_NAME = 0xA001, 115 AL_INVALID_ENUM = 0xA002, 116 AL_INVALID_VALUE = 0xA003, 117 AL_INVALID_OPERATION = 0xA004, 118 AL_OUT_OF_MEMORY = 0xA005, 119 120 AL_VENDOR = 0xB001, 121 AL_VERSION = 0xB002, 122 AL_RENDERER = 0xB003, 123 AL_EXTENSIONS = 0xB004, 124 125 AL_DOPPLER_FACTOR = 0xC000, 126 AL_DOPPLER_VELOCITY = 0xC001, 127 AL_SPEED_OF_SOUND = 0xC003, 128 129 AL_DISTANCE_MODEL = 0xD000, 130 AL_INVERSE_DISTANCE = 0xD001, 131 AL_INVERSE_DISTANCE_CLAMPED = 0xD002, 132 AL_LINEAR_DISTANCE = 0xD003, 133 AL_LINEAR_DISTANCE_CLAMPED = 0xD004, 134 AL_EXPONENT_DISTANCE = 0xD005, 135 AL_EXPONENT_DISTANCE_CLAMPED = 0xD006, 136 } 137 138 // alc 139 enum ALC_VERSION_0_1 = true; 140 141 alias ALCdevice = void; 142 alias ALCcontext = void; 143 144 alias ALCboolean = byte; 145 alias ALCchar = char; 146 alias ALCbyte = byte; 147 alias ALCubyte = ubyte; 148 alias ALCshort = short; 149 alias ALCushort = ushort; 150 alias ALCint = int; 151 alias ALCuint = uint; 152 alias ALCsizei = int; 153 alias ALCenum = int; 154 alias ALCfloat = float; 155 alias ALCdouble = double; 156 alias ALCvoid = void; 157 158 enum : ALCboolean { 159 ALC_FALSE = 0, 160 ALC_TRUE = 1, 161 } 162 163 enum : ALCenum { 164 ALC_FREQUENCY = 0x1007, 165 ALC_REFRESH = 0x1008, 166 ALC_SYNC = 0x1009, 167 168 ALC_MONO_SOURCES = 0x1010, 169 ALC_STEREO_SOURCES = 0x1011, 170 171 ALC_NO_ERROR = ALC_FALSE, 172 ALC_INVALID_DEVICE = 0xA001, 173 ALC_INVALID_CONTEXT = 0xA002, 174 ALC_INVALID_ENUM = 0xA003, 175 ALC_INVALID_VALUE = 0xA004, 176 ALC_OUT_OF_MEMORY = 0xA005, 177 178 ALC_DEFAULT_DEVICE_SPECIFIER = 0x1004, 179 ALC_DEVICE_SPECIFIER = 0x1005, 180 ALC_EXTENSIONS = 0x1006, 181 182 ALC_MAJOR_VERSION = 0x1000, 183 ALC_MINOR_VERSION = 0x1001, 184 185 ALC_ATTRIBUTES_SIZE = 0x1002, 186 ALC_ALL_ATTRIBUTES = 0x1003, 187 188 ALC_CAPTURE_DEVICE_SPECIFIER = 0x310, 189 ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER = 0x311, 190 ALC_CAPTURE_SAMPLES = 0x312, 191 } 192 193 // alext 194 enum : ALenum { 195 // AL_LOKI_IMA_ADPCM_format 196 AL_FORMAT_IMA_ADPCM_MONO16_EXT = 0x10000, 197 AL_FORMAT_IMA_ADPCM_STEREO16_EXT = 0x10001, 198 199 // AL_LOKI_WAVE_format 200 AL_FORMAT_WAVE_EXT = 0x10002, 201 202 // AL_EXT_vorbis 203 AL_FORMAT_VORBIS_EXT = 0x10003, 204 205 // AL_LOKI_quadriphonic 206 AL_FORMAT_QUAD8_LOKI = 0x10004, 207 AL_FORMAT_QUAD16_LOKI = 0x10005, 208 209 // AL_EXT_float32 210 AL_FORMAT_MONO_FLOAT32 = 0x10010, 211 AL_FORMAT_STEREO_FLOAT32 = 0x10011, 212 213 // ALC_LOKI_audio_channel 214 ALC_CHAN_MAIN_LOKI = 0x500001, 215 ALC_CHAN_PCM_LOKI = 0x500002, 216 ALC_CHAN_CD_LOKI = 0x500003, 217 218 // ALC_ENUMERATE_ALL_EXT 219 ALC_DEFAULT_ALL_DEVICES_SPECIFIER = 0x1012, 220 ALC_ALL_DEVICES_SPECIFIER = 0x1013, 221 222 // AL_EXT_MCFORMATS 223 AL_FORMAT_QUAD8 = 0x1204, 224 AL_FORMAT_QUAD16 = 0x1205, 225 AL_FORMAT_QUAD32 = 0x1206, 226 AL_FORMAT_REAR8 = 0x1207, 227 AL_FORMAT_REAR16 = 0x1208, 228 AL_FORMAT_REAR32 = 0x1209, 229 AL_FORMAT_51CHN8 = 0x120A, 230 AL_FORMAT_51CHN16 = 0x120B, 231 AL_FORMAT_51CHN32 = 0x120C, 232 AL_FORMAT_61CHN8 = 0x120D, 233 AL_FORMAT_61CHN16 = 0x120E, 234 AL_FORMAT_61CHN32 = 0x120F, 235 AL_FORMAT_71CHN8 = 0x1210, 236 AL_FORMAT_71CHN16 = 0x1211, 237 AL_FORMAT_71CHN32 = 0x1212, 238 239 // AL_EXT_IMA4 240 AL_FORMAT_MONO_IMA4 = 0x1300, 241 AL_FORMAT_STEREO_IMA4 = 0x1301, 242 }