export_list.h 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925
  1. #ifndef ALC_EXPORT_LIST_H
  2. #define ALC_EXPORT_LIST_H
  3. #include "config.h"
  4. #include "AL/alc.h"
  5. #include "AL/al.h"
  6. #include "AL/alext.h"
  7. #include "inprogext.h"
  8. #if ALSOFT_EAX
  9. #include "context.h"
  10. #include "al/eax/x_ram.h"
  11. #endif
  12. struct FuncExport {
  13. const char *funcName;
  14. void *address;
  15. };
  16. #define DECL(x) FuncExport{#x, reinterpret_cast<void*>(x)}
  17. /* NOLINTNEXTLINE(*-avoid-c-arrays) Too large for std::array auto-deduction :( */
  18. inline const FuncExport alcFunctions[]{
  19. DECL(alcCreateContext),
  20. DECL(alcMakeContextCurrent),
  21. DECL(alcProcessContext),
  22. DECL(alcSuspendContext),
  23. DECL(alcDestroyContext),
  24. DECL(alcGetCurrentContext),
  25. DECL(alcGetContextsDevice),
  26. DECL(alcOpenDevice),
  27. DECL(alcCloseDevice),
  28. DECL(alcGetError),
  29. DECL(alcIsExtensionPresent),
  30. DECL(alcGetProcAddress),
  31. DECL(alcGetEnumValue),
  32. DECL(alcGetString),
  33. DECL(alcGetIntegerv),
  34. DECL(alcCaptureOpenDevice),
  35. DECL(alcCaptureCloseDevice),
  36. DECL(alcCaptureStart),
  37. DECL(alcCaptureStop),
  38. DECL(alcCaptureSamples),
  39. DECL(alcSetThreadContext),
  40. DECL(alcGetThreadContext),
  41. DECL(alcLoopbackOpenDeviceSOFT),
  42. DECL(alcIsRenderFormatSupportedSOFT),
  43. DECL(alcRenderSamplesSOFT),
  44. DECL(alcDevicePauseSOFT),
  45. DECL(alcDeviceResumeSOFT),
  46. DECL(alcGetStringiSOFT),
  47. DECL(alcResetDeviceSOFT),
  48. DECL(alcGetInteger64vSOFT),
  49. DECL(alcReopenDeviceSOFT),
  50. DECL(alcEventIsSupportedSOFT),
  51. DECL(alcEventControlSOFT),
  52. DECL(alcEventCallbackSOFT),
  53. DECL(alEnable),
  54. DECL(alDisable),
  55. DECL(alIsEnabled),
  56. DECL(alGetString),
  57. DECL(alGetBooleanv),
  58. DECL(alGetIntegerv),
  59. DECL(alGetFloatv),
  60. DECL(alGetDoublev),
  61. DECL(alGetBoolean),
  62. DECL(alGetInteger),
  63. DECL(alGetFloat),
  64. DECL(alGetDouble),
  65. DECL(alGetError),
  66. DECL(alIsExtensionPresent),
  67. DECL(alGetProcAddress),
  68. DECL(alGetEnumValue),
  69. DECL(alListenerf),
  70. DECL(alListener3f),
  71. DECL(alListenerfv),
  72. DECL(alListeneri),
  73. DECL(alListener3i),
  74. DECL(alListeneriv),
  75. DECL(alGetListenerf),
  76. DECL(alGetListener3f),
  77. DECL(alGetListenerfv),
  78. DECL(alGetListeneri),
  79. DECL(alGetListener3i),
  80. DECL(alGetListeneriv),
  81. DECL(alGenSources),
  82. DECL(alDeleteSources),
  83. DECL(alIsSource),
  84. DECL(alSourcef),
  85. DECL(alSource3f),
  86. DECL(alSourcefv),
  87. DECL(alSourcei),
  88. DECL(alSource3i),
  89. DECL(alSourceiv),
  90. DECL(alGetSourcef),
  91. DECL(alGetSource3f),
  92. DECL(alGetSourcefv),
  93. DECL(alGetSourcei),
  94. DECL(alGetSource3i),
  95. DECL(alGetSourceiv),
  96. DECL(alSourcePlayv),
  97. DECL(alSourceStopv),
  98. DECL(alSourceRewindv),
  99. DECL(alSourcePausev),
  100. DECL(alSourcePlay),
  101. DECL(alSourceStop),
  102. DECL(alSourceRewind),
  103. DECL(alSourcePause),
  104. DECL(alSourceQueueBuffers),
  105. DECL(alSourceUnqueueBuffers),
  106. DECL(alGenBuffers),
  107. DECL(alDeleteBuffers),
  108. DECL(alIsBuffer),
  109. DECL(alBufferData),
  110. DECL(alBufferf),
  111. DECL(alBuffer3f),
  112. DECL(alBufferfv),
  113. DECL(alBufferi),
  114. DECL(alBuffer3i),
  115. DECL(alBufferiv),
  116. DECL(alGetBufferf),
  117. DECL(alGetBuffer3f),
  118. DECL(alGetBufferfv),
  119. DECL(alGetBufferi),
  120. DECL(alGetBuffer3i),
  121. DECL(alGetBufferiv),
  122. DECL(alDopplerFactor),
  123. DECL(alDopplerVelocity),
  124. DECL(alSpeedOfSound),
  125. DECL(alDistanceModel),
  126. DECL(alGenFilters),
  127. DECL(alDeleteFilters),
  128. DECL(alIsFilter),
  129. DECL(alFilteri),
  130. DECL(alFilteriv),
  131. DECL(alFilterf),
  132. DECL(alFilterfv),
  133. DECL(alGetFilteri),
  134. DECL(alGetFilteriv),
  135. DECL(alGetFilterf),
  136. DECL(alGetFilterfv),
  137. DECL(alGenEffects),
  138. DECL(alDeleteEffects),
  139. DECL(alIsEffect),
  140. DECL(alEffecti),
  141. DECL(alEffectiv),
  142. DECL(alEffectf),
  143. DECL(alEffectfv),
  144. DECL(alGetEffecti),
  145. DECL(alGetEffectiv),
  146. DECL(alGetEffectf),
  147. DECL(alGetEffectfv),
  148. DECL(alGenAuxiliaryEffectSlots),
  149. DECL(alDeleteAuxiliaryEffectSlots),
  150. DECL(alIsAuxiliaryEffectSlot),
  151. DECL(alAuxiliaryEffectSloti),
  152. DECL(alAuxiliaryEffectSlotiv),
  153. DECL(alAuxiliaryEffectSlotf),
  154. DECL(alAuxiliaryEffectSlotfv),
  155. DECL(alGetAuxiliaryEffectSloti),
  156. DECL(alGetAuxiliaryEffectSlotiv),
  157. DECL(alGetAuxiliaryEffectSlotf),
  158. DECL(alGetAuxiliaryEffectSlotfv),
  159. DECL(alDeferUpdatesSOFT),
  160. DECL(alProcessUpdatesSOFT),
  161. DECL(alSourcedSOFT),
  162. DECL(alSource3dSOFT),
  163. DECL(alSourcedvSOFT),
  164. DECL(alGetSourcedSOFT),
  165. DECL(alGetSource3dSOFT),
  166. DECL(alGetSourcedvSOFT),
  167. DECL(alSourcei64SOFT),
  168. DECL(alSource3i64SOFT),
  169. DECL(alSourcei64vSOFT),
  170. DECL(alGetSourcei64SOFT),
  171. DECL(alGetSource3i64SOFT),
  172. DECL(alGetSourcei64vSOFT),
  173. DECL(alGetStringiSOFT),
  174. DECL(alBufferStorageSOFT),
  175. DECL(alMapBufferSOFT),
  176. DECL(alUnmapBufferSOFT),
  177. DECL(alFlushMappedBufferSOFT),
  178. DECL(alEventControlSOFT),
  179. DECL(alEventCallbackSOFT),
  180. DECL(alGetPointerSOFT),
  181. DECL(alGetPointervSOFT),
  182. DECL(alBufferCallbackSOFT),
  183. DECL(alGetBufferPtrSOFT),
  184. DECL(alGetBuffer3PtrSOFT),
  185. DECL(alGetBufferPtrvSOFT),
  186. DECL(alSourcePlayAtTimeSOFT),
  187. DECL(alSourcePlayAtTimevSOFT),
  188. DECL(alBufferSubDataSOFT),
  189. DECL(alBufferDataStatic),
  190. DECL(alDebugMessageCallbackEXT),
  191. DECL(alDebugMessageInsertEXT),
  192. DECL(alDebugMessageControlEXT),
  193. DECL(alPushDebugGroupEXT),
  194. DECL(alPopDebugGroupEXT),
  195. DECL(alGetDebugMessageLogEXT),
  196. DECL(alObjectLabelEXT),
  197. DECL(alGetObjectLabelEXT),
  198. DECL(alGetPointerEXT),
  199. DECL(alGetPointervEXT),
  200. /* Direct Context functions */
  201. DECL(alcGetProcAddress2),
  202. DECL(alEnableDirect),
  203. DECL(alDisableDirect),
  204. DECL(alIsEnabledDirect),
  205. DECL(alDopplerFactorDirect),
  206. DECL(alSpeedOfSoundDirect),
  207. DECL(alDistanceModelDirect),
  208. DECL(alGetStringDirect),
  209. DECL(alGetBooleanvDirect),
  210. DECL(alGetIntegervDirect),
  211. DECL(alGetFloatvDirect),
  212. DECL(alGetDoublevDirect),
  213. DECL(alGetBooleanDirect),
  214. DECL(alGetIntegerDirect),
  215. DECL(alGetFloatDirect),
  216. DECL(alGetDoubleDirect),
  217. DECL(alGetErrorDirect),
  218. DECL(alIsExtensionPresentDirect),
  219. DECL(alGetProcAddress),
  220. DECL(alGetEnumValueDirect),
  221. DECL(alListeneriDirect),
  222. DECL(alListener3iDirect),
  223. DECL(alListenerivDirect),
  224. DECL(alListenerfDirect),
  225. DECL(alListener3fDirect),
  226. DECL(alListenerfvDirect),
  227. DECL(alGetListeneriDirect),
  228. DECL(alGetListener3iDirect),
  229. DECL(alGetListenerivDirect),
  230. DECL(alGetListenerfDirect),
  231. DECL(alGetListener3fDirect),
  232. DECL(alGetListenerfvDirect),
  233. DECL(alGenBuffersDirect),
  234. DECL(alDeleteBuffersDirect),
  235. DECL(alIsBufferDirect),
  236. DECL(alBufferDataDirect),
  237. DECL(alBufferiDirect),
  238. DECL(alBuffer3iDirect),
  239. DECL(alBufferivDirect),
  240. DECL(alBufferfDirect),
  241. DECL(alBuffer3fDirect),
  242. DECL(alBufferfvDirect),
  243. DECL(alGetBufferiDirect),
  244. DECL(alGetBuffer3iDirect),
  245. DECL(alGetBufferivDirect),
  246. DECL(alGetBufferfDirect),
  247. DECL(alGetBuffer3fDirect),
  248. DECL(alGetBufferfvDirect),
  249. DECL(alGenSourcesDirect),
  250. DECL(alDeleteSourcesDirect),
  251. DECL(alIsSourceDirect),
  252. DECL(alSourcePlayDirect),
  253. DECL(alSourceStopDirect),
  254. DECL(alSourcePauseDirect),
  255. DECL(alSourceRewindDirect),
  256. DECL(alSourcePlayvDirect),
  257. DECL(alSourceStopvDirect),
  258. DECL(alSourcePausevDirect),
  259. DECL(alSourceRewindvDirect),
  260. DECL(alSourceiDirect),
  261. DECL(alSource3iDirect),
  262. DECL(alSourceivDirect),
  263. DECL(alSourcefDirect),
  264. DECL(alSource3fDirect),
  265. DECL(alSourcefvDirect),
  266. DECL(alGetSourceiDirect),
  267. DECL(alGetSource3iDirect),
  268. DECL(alGetSourceivDirect),
  269. DECL(alGetSourcefDirect),
  270. DECL(alGetSource3fDirect),
  271. DECL(alGetSourcefvDirect),
  272. DECL(alSourceQueueBuffersDirect),
  273. DECL(alSourceUnqueueBuffersDirect),
  274. DECL(alGenFiltersDirect),
  275. DECL(alDeleteFiltersDirect),
  276. DECL(alIsFilterDirect),
  277. DECL(alFilteriDirect),
  278. DECL(alFilterivDirect),
  279. DECL(alFilterfDirect),
  280. DECL(alFilterfvDirect),
  281. DECL(alGetFilteriDirect),
  282. DECL(alGetFilterivDirect),
  283. DECL(alGetFilterfDirect),
  284. DECL(alGetFilterfvDirect),
  285. DECL(alGenEffectsDirect),
  286. DECL(alDeleteEffectsDirect),
  287. DECL(alIsEffectDirect),
  288. DECL(alEffectiDirect),
  289. DECL(alEffectivDirect),
  290. DECL(alEffectfDirect),
  291. DECL(alEffectfvDirect),
  292. DECL(alGetEffectiDirect),
  293. DECL(alGetEffectivDirect),
  294. DECL(alGetEffectfDirect),
  295. DECL(alGetEffectfvDirect),
  296. DECL(alGenAuxiliaryEffectSlotsDirect),
  297. DECL(alDeleteAuxiliaryEffectSlotsDirect),
  298. DECL(alIsAuxiliaryEffectSlotDirect),
  299. DECL(alAuxiliaryEffectSlotiDirect),
  300. DECL(alAuxiliaryEffectSlotivDirect),
  301. DECL(alAuxiliaryEffectSlotfDirect),
  302. DECL(alAuxiliaryEffectSlotfvDirect),
  303. DECL(alGetAuxiliaryEffectSlotiDirect),
  304. DECL(alGetAuxiliaryEffectSlotivDirect),
  305. DECL(alGetAuxiliaryEffectSlotfDirect),
  306. DECL(alGetAuxiliaryEffectSlotfvDirect),
  307. DECL(alDeferUpdatesDirectSOFT),
  308. DECL(alProcessUpdatesDirectSOFT),
  309. DECL(alGetStringiDirectSOFT),
  310. DECL(alBufferDataStaticDirect),
  311. DECL(alBufferCallbackDirectSOFT),
  312. DECL(alBufferSubDataDirectSOFT),
  313. DECL(alBufferStorageDirectSOFT),
  314. DECL(alMapBufferDirectSOFT),
  315. DECL(alUnmapBufferDirectSOFT),
  316. DECL(alFlushMappedBufferDirectSOFT),
  317. DECL(alSourcei64DirectSOFT),
  318. DECL(alSource3i64DirectSOFT),
  319. DECL(alSourcei64vDirectSOFT),
  320. DECL(alSourcedDirectSOFT),
  321. DECL(alSource3dDirectSOFT),
  322. DECL(alSourcedvDirectSOFT),
  323. DECL(alGetSourcei64DirectSOFT),
  324. DECL(alGetSource3i64DirectSOFT),
  325. DECL(alGetSourcei64vDirectSOFT),
  326. DECL(alGetSourcedDirectSOFT),
  327. DECL(alGetSource3dDirectSOFT),
  328. DECL(alGetSourcedvDirectSOFT),
  329. DECL(alSourcePlayAtTimeDirectSOFT),
  330. DECL(alSourcePlayAtTimevDirectSOFT),
  331. DECL(alEventControlDirectSOFT),
  332. DECL(alEventCallbackDirectSOFT),
  333. DECL(alDebugMessageCallbackDirectEXT),
  334. DECL(alDebugMessageInsertDirectEXT),
  335. DECL(alDebugMessageControlDirectEXT),
  336. DECL(alPushDebugGroupDirectEXT),
  337. DECL(alPopDebugGroupDirectEXT),
  338. DECL(alGetDebugMessageLogDirectEXT),
  339. DECL(alObjectLabelDirectEXT),
  340. DECL(alGetObjectLabelDirectEXT),
  341. DECL(alGetPointerDirectEXT),
  342. DECL(alGetPointervDirectEXT),
  343. /* Extra functions */
  344. DECL(alsoft_set_log_callback),
  345. };
  346. #if ALSOFT_EAX
  347. inline const std::array eaxFunctions{
  348. DECL(EAXGet),
  349. DECL(EAXSet),
  350. DECL(EAXGetBufferMode),
  351. DECL(EAXSetBufferMode),
  352. DECL(EAXGetDirect),
  353. DECL(EAXSetDirect),
  354. DECL(EAXGetBufferModeDirect),
  355. DECL(EAXSetBufferModeDirect),
  356. };
  357. #endif
  358. #undef DECL
  359. struct EnumExport {
  360. const char *enumName;
  361. int value;
  362. };
  363. #define DECL(x) EnumExport{#x, (x)}
  364. /* NOLINTNEXTLINE(*-avoid-c-arrays) Too large for std::array auto-deduction :( */
  365. inline const EnumExport alcEnumerations[]{
  366. DECL(ALC_INVALID),
  367. DECL(ALC_FALSE),
  368. DECL(ALC_TRUE),
  369. DECL(ALC_MAJOR_VERSION),
  370. DECL(ALC_MINOR_VERSION),
  371. DECL(ALC_ATTRIBUTES_SIZE),
  372. DECL(ALC_ALL_ATTRIBUTES),
  373. DECL(ALC_DEFAULT_DEVICE_SPECIFIER),
  374. DECL(ALC_DEVICE_SPECIFIER),
  375. DECL(ALC_ALL_DEVICES_SPECIFIER),
  376. DECL(ALC_DEFAULT_ALL_DEVICES_SPECIFIER),
  377. DECL(ALC_EXTENSIONS),
  378. DECL(ALC_FREQUENCY),
  379. DECL(ALC_REFRESH),
  380. DECL(ALC_SYNC),
  381. DECL(ALC_MONO_SOURCES),
  382. DECL(ALC_STEREO_SOURCES),
  383. DECL(ALC_CAPTURE_DEVICE_SPECIFIER),
  384. DECL(ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER),
  385. DECL(ALC_CAPTURE_SAMPLES),
  386. DECL(ALC_CONNECTED),
  387. DECL(ALC_EFX_MAJOR_VERSION),
  388. DECL(ALC_EFX_MINOR_VERSION),
  389. DECL(ALC_MAX_AUXILIARY_SENDS),
  390. DECL(ALC_FORMAT_CHANNELS_SOFT),
  391. DECL(ALC_FORMAT_TYPE_SOFT),
  392. DECL(ALC_MONO_SOFT),
  393. DECL(ALC_STEREO_SOFT),
  394. DECL(ALC_QUAD_SOFT),
  395. DECL(ALC_5POINT1_SOFT),
  396. DECL(ALC_6POINT1_SOFT),
  397. DECL(ALC_7POINT1_SOFT),
  398. DECL(ALC_BFORMAT3D_SOFT),
  399. DECL(ALC_BYTE_SOFT),
  400. DECL(ALC_UNSIGNED_BYTE_SOFT),
  401. DECL(ALC_SHORT_SOFT),
  402. DECL(ALC_UNSIGNED_SHORT_SOFT),
  403. DECL(ALC_INT_SOFT),
  404. DECL(ALC_UNSIGNED_INT_SOFT),
  405. DECL(ALC_FLOAT_SOFT),
  406. DECL(ALC_HRTF_SOFT),
  407. DECL(ALC_DONT_CARE_SOFT),
  408. DECL(ALC_HRTF_STATUS_SOFT),
  409. DECL(ALC_HRTF_DISABLED_SOFT),
  410. DECL(ALC_HRTF_ENABLED_SOFT),
  411. DECL(ALC_HRTF_DENIED_SOFT),
  412. DECL(ALC_HRTF_REQUIRED_SOFT),
  413. DECL(ALC_HRTF_HEADPHONES_DETECTED_SOFT),
  414. DECL(ALC_HRTF_UNSUPPORTED_FORMAT_SOFT),
  415. DECL(ALC_NUM_HRTF_SPECIFIERS_SOFT),
  416. DECL(ALC_HRTF_SPECIFIER_SOFT),
  417. DECL(ALC_HRTF_ID_SOFT),
  418. DECL(ALC_AMBISONIC_LAYOUT_SOFT),
  419. DECL(ALC_AMBISONIC_SCALING_SOFT),
  420. DECL(ALC_AMBISONIC_ORDER_SOFT),
  421. DECL(ALC_ACN_SOFT),
  422. DECL(ALC_FUMA_SOFT),
  423. DECL(ALC_N3D_SOFT),
  424. DECL(ALC_SN3D_SOFT),
  425. DECL(ALC_OUTPUT_LIMITER_SOFT),
  426. DECL(ALC_DEVICE_CLOCK_SOFT),
  427. DECL(ALC_DEVICE_LATENCY_SOFT),
  428. DECL(ALC_DEVICE_CLOCK_LATENCY_SOFT),
  429. DECL(AL_SAMPLE_OFFSET_CLOCK_SOFT),
  430. DECL(AL_SEC_OFFSET_CLOCK_SOFT),
  431. DECL(ALC_OUTPUT_MODE_SOFT),
  432. DECL(ALC_ANY_SOFT),
  433. DECL(ALC_STEREO_BASIC_SOFT),
  434. DECL(ALC_STEREO_UHJ_SOFT),
  435. DECL(ALC_STEREO_HRTF_SOFT),
  436. DECL(ALC_SURROUND_5_1_SOFT),
  437. DECL(ALC_SURROUND_6_1_SOFT),
  438. DECL(ALC_SURROUND_7_1_SOFT),
  439. DECL(ALC_NO_ERROR),
  440. DECL(ALC_INVALID_DEVICE),
  441. DECL(ALC_INVALID_CONTEXT),
  442. DECL(ALC_INVALID_ENUM),
  443. DECL(ALC_INVALID_VALUE),
  444. DECL(ALC_OUT_OF_MEMORY),
  445. DECL(ALC_CONTEXT_FLAGS_EXT),
  446. DECL(ALC_CONTEXT_DEBUG_BIT_EXT),
  447. DECL(ALC_PLAYBACK_DEVICE_SOFT),
  448. DECL(ALC_CAPTURE_DEVICE_SOFT),
  449. DECL(ALC_EVENT_TYPE_DEFAULT_DEVICE_CHANGED_SOFT),
  450. DECL(ALC_EVENT_TYPE_DEVICE_ADDED_SOFT),
  451. DECL(ALC_EVENT_TYPE_DEVICE_REMOVED_SOFT),
  452. DECL(AL_INVALID),
  453. DECL(AL_NONE),
  454. DECL(AL_FALSE),
  455. DECL(AL_TRUE),
  456. DECL(AL_SOURCE_RELATIVE),
  457. DECL(AL_CONE_INNER_ANGLE),
  458. DECL(AL_CONE_OUTER_ANGLE),
  459. DECL(AL_PITCH),
  460. DECL(AL_POSITION),
  461. DECL(AL_DIRECTION),
  462. DECL(AL_VELOCITY),
  463. DECL(AL_LOOPING),
  464. DECL(AL_BUFFER),
  465. DECL(AL_GAIN),
  466. DECL(AL_MIN_GAIN),
  467. DECL(AL_MAX_GAIN),
  468. DECL(AL_ORIENTATION),
  469. DECL(AL_REFERENCE_DISTANCE),
  470. DECL(AL_ROLLOFF_FACTOR),
  471. DECL(AL_CONE_OUTER_GAIN),
  472. DECL(AL_MAX_DISTANCE),
  473. DECL(AL_SEC_OFFSET),
  474. DECL(AL_SAMPLE_OFFSET),
  475. DECL(AL_BYTE_OFFSET),
  476. DECL(AL_SOURCE_TYPE),
  477. DECL(AL_STATIC),
  478. DECL(AL_STREAMING),
  479. DECL(AL_UNDETERMINED),
  480. DECL(AL_METERS_PER_UNIT),
  481. DECL(AL_LOOP_POINTS_SOFT),
  482. DECL(AL_DIRECT_CHANNELS_SOFT),
  483. DECL(AL_DIRECT_FILTER),
  484. DECL(AL_AUXILIARY_SEND_FILTER),
  485. DECL(AL_AIR_ABSORPTION_FACTOR),
  486. DECL(AL_ROOM_ROLLOFF_FACTOR),
  487. DECL(AL_CONE_OUTER_GAINHF),
  488. DECL(AL_DIRECT_FILTER_GAINHF_AUTO),
  489. DECL(AL_AUXILIARY_SEND_FILTER_GAIN_AUTO),
  490. DECL(AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO),
  491. DECL(AL_SOURCE_STATE),
  492. DECL(AL_INITIAL),
  493. DECL(AL_PLAYING),
  494. DECL(AL_PAUSED),
  495. DECL(AL_STOPPED),
  496. DECL(AL_BUFFERS_QUEUED),
  497. DECL(AL_BUFFERS_PROCESSED),
  498. DECL(AL_FORMAT_MONO8),
  499. DECL(AL_FORMAT_MONO16),
  500. DECL(AL_FORMAT_MONO_FLOAT32),
  501. DECL(AL_FORMAT_MONO_DOUBLE_EXT),
  502. DECL(AL_FORMAT_STEREO8),
  503. DECL(AL_FORMAT_STEREO16),
  504. DECL(AL_FORMAT_STEREO_FLOAT32),
  505. DECL(AL_FORMAT_STEREO_DOUBLE_EXT),
  506. DECL(AL_FORMAT_MONO_IMA4),
  507. DECL(AL_FORMAT_STEREO_IMA4),
  508. DECL(AL_FORMAT_MONO_MSADPCM_SOFT),
  509. DECL(AL_FORMAT_STEREO_MSADPCM_SOFT),
  510. DECL(AL_FORMAT_QUAD8_LOKI),
  511. DECL(AL_FORMAT_QUAD16_LOKI),
  512. DECL(AL_FORMAT_QUAD8),
  513. DECL(AL_FORMAT_QUAD16),
  514. DECL(AL_FORMAT_QUAD32),
  515. DECL(AL_FORMAT_51CHN8),
  516. DECL(AL_FORMAT_51CHN16),
  517. DECL(AL_FORMAT_51CHN32),
  518. DECL(AL_FORMAT_61CHN8),
  519. DECL(AL_FORMAT_61CHN16),
  520. DECL(AL_FORMAT_61CHN32),
  521. DECL(AL_FORMAT_71CHN8),
  522. DECL(AL_FORMAT_71CHN16),
  523. DECL(AL_FORMAT_71CHN32),
  524. DECL(AL_FORMAT_REAR8),
  525. DECL(AL_FORMAT_REAR16),
  526. DECL(AL_FORMAT_REAR32),
  527. DECL(AL_FORMAT_MONO_MULAW),
  528. DECL(AL_FORMAT_MONO_MULAW_EXT),
  529. DECL(AL_FORMAT_STEREO_MULAW),
  530. DECL(AL_FORMAT_STEREO_MULAW_EXT),
  531. DECL(AL_FORMAT_QUAD_MULAW),
  532. DECL(AL_FORMAT_51CHN_MULAW),
  533. DECL(AL_FORMAT_61CHN_MULAW),
  534. DECL(AL_FORMAT_71CHN_MULAW),
  535. DECL(AL_FORMAT_REAR_MULAW),
  536. DECL(AL_FORMAT_MONO_ALAW_EXT),
  537. DECL(AL_FORMAT_STEREO_ALAW_EXT),
  538. DECL(AL_FORMAT_BFORMAT2D_8),
  539. DECL(AL_FORMAT_BFORMAT2D_16),
  540. DECL(AL_FORMAT_BFORMAT2D_FLOAT32),
  541. DECL(AL_FORMAT_BFORMAT2D_MULAW),
  542. DECL(AL_FORMAT_BFORMAT3D_8),
  543. DECL(AL_FORMAT_BFORMAT3D_16),
  544. DECL(AL_FORMAT_BFORMAT3D_FLOAT32),
  545. DECL(AL_FORMAT_BFORMAT3D_MULAW),
  546. DECL(AL_FORMAT_UHJ2CHN8_SOFT),
  547. DECL(AL_FORMAT_UHJ2CHN16_SOFT),
  548. DECL(AL_FORMAT_UHJ2CHN_FLOAT32_SOFT),
  549. DECL(AL_FORMAT_UHJ3CHN8_SOFT),
  550. DECL(AL_FORMAT_UHJ3CHN16_SOFT),
  551. DECL(AL_FORMAT_UHJ3CHN_FLOAT32_SOFT),
  552. DECL(AL_FORMAT_UHJ4CHN8_SOFT),
  553. DECL(AL_FORMAT_UHJ4CHN16_SOFT),
  554. DECL(AL_FORMAT_UHJ4CHN_FLOAT32_SOFT),
  555. DECL(AL_STEREO_MODE_SOFT),
  556. DECL(AL_NORMAL_SOFT),
  557. DECL(AL_SUPER_STEREO_SOFT),
  558. DECL(AL_SUPER_STEREO_WIDTH_SOFT),
  559. DECL(AL_FORMAT_UHJ2CHN_MULAW_SOFT),
  560. DECL(AL_FORMAT_UHJ2CHN_ALAW_SOFT),
  561. DECL(AL_FORMAT_UHJ2CHN_IMA4_SOFT),
  562. DECL(AL_FORMAT_UHJ2CHN_MSADPCM_SOFT),
  563. DECL(AL_FORMAT_UHJ3CHN_MULAW_SOFT),
  564. DECL(AL_FORMAT_UHJ3CHN_ALAW_SOFT),
  565. DECL(AL_FORMAT_UHJ4CHN_MULAW_SOFT),
  566. DECL(AL_FORMAT_UHJ4CHN_ALAW_SOFT),
  567. DECL(AL_FORMAT_MONO_I32),
  568. DECL(AL_FORMAT_STEREO_I32),
  569. DECL(AL_FORMAT_REAR_I32),
  570. DECL(AL_FORMAT_QUAD_I32),
  571. DECL(AL_FORMAT_51CHN_I32),
  572. DECL(AL_FORMAT_61CHN_I32),
  573. DECL(AL_FORMAT_71CHN_I32),
  574. DECL(AL_FORMAT_BFORMAT2D_I32),
  575. DECL(AL_FORMAT_BFORMAT3D_I32),
  576. DECL(AL_FORMAT_UHJ2CHN_I32_SOFT),
  577. DECL(AL_FORMAT_UHJ3CHN_I32_SOFT),
  578. DECL(AL_FORMAT_UHJ4CHN_I32_SOFT),
  579. DECL(AL_FORMAT_REAR_FLOAT32),
  580. DECL(AL_FORMAT_QUAD_FLOAT32),
  581. DECL(AL_FORMAT_51CHN_FLOAT32),
  582. DECL(AL_FORMAT_61CHN_FLOAT32),
  583. DECL(AL_FORMAT_71CHN_FLOAT32),
  584. DECL(AL_FREQUENCY),
  585. DECL(AL_BITS),
  586. DECL(AL_CHANNELS),
  587. DECL(AL_SIZE),
  588. DECL(AL_UNPACK_BLOCK_ALIGNMENT_SOFT),
  589. DECL(AL_PACK_BLOCK_ALIGNMENT_SOFT),
  590. DECL(AL_SOURCE_RADIUS),
  591. DECL(AL_SAMPLE_OFFSET_LATENCY_SOFT),
  592. DECL(AL_SEC_OFFSET_LATENCY_SOFT),
  593. DECL(AL_STEREO_ANGLES),
  594. DECL(AL_UNUSED),
  595. DECL(AL_PENDING),
  596. DECL(AL_PROCESSED),
  597. DECL(AL_NO_ERROR),
  598. DECL(AL_INVALID_NAME),
  599. DECL(AL_INVALID_ENUM),
  600. DECL(AL_INVALID_VALUE),
  601. DECL(AL_INVALID_OPERATION),
  602. DECL(AL_OUT_OF_MEMORY),
  603. DECL(AL_VENDOR),
  604. DECL(AL_VERSION),
  605. DECL(AL_RENDERER),
  606. DECL(AL_EXTENSIONS),
  607. DECL(AL_DOPPLER_FACTOR),
  608. DECL(AL_DOPPLER_VELOCITY),
  609. DECL(AL_DISTANCE_MODEL),
  610. DECL(AL_SPEED_OF_SOUND),
  611. DECL(AL_SOURCE_DISTANCE_MODEL),
  612. DECL(AL_DEFERRED_UPDATES_SOFT),
  613. DECL(AL_GAIN_LIMIT_SOFT),
  614. DECL(AL_INVERSE_DISTANCE),
  615. DECL(AL_INVERSE_DISTANCE_CLAMPED),
  616. DECL(AL_LINEAR_DISTANCE),
  617. DECL(AL_LINEAR_DISTANCE_CLAMPED),
  618. DECL(AL_EXPONENT_DISTANCE),
  619. DECL(AL_EXPONENT_DISTANCE_CLAMPED),
  620. DECL(AL_FILTER_TYPE),
  621. DECL(AL_FILTER_NULL),
  622. DECL(AL_FILTER_LOWPASS),
  623. DECL(AL_FILTER_HIGHPASS),
  624. DECL(AL_FILTER_BANDPASS),
  625. DECL(AL_LOWPASS_GAIN),
  626. DECL(AL_LOWPASS_GAINHF),
  627. DECL(AL_HIGHPASS_GAIN),
  628. DECL(AL_HIGHPASS_GAINLF),
  629. DECL(AL_BANDPASS_GAIN),
  630. DECL(AL_BANDPASS_GAINHF),
  631. DECL(AL_BANDPASS_GAINLF),
  632. DECL(AL_EFFECT_TYPE),
  633. DECL(AL_EFFECT_NULL),
  634. DECL(AL_EFFECT_REVERB),
  635. DECL(AL_EFFECT_EAXREVERB),
  636. DECL(AL_EFFECT_CHORUS),
  637. DECL(AL_EFFECT_DISTORTION),
  638. DECL(AL_EFFECT_ECHO),
  639. DECL(AL_EFFECT_FLANGER),
  640. DECL(AL_EFFECT_PITCH_SHIFTER),
  641. DECL(AL_EFFECT_FREQUENCY_SHIFTER),
  642. DECL(AL_EFFECT_VOCAL_MORPHER),
  643. DECL(AL_EFFECT_RING_MODULATOR),
  644. DECL(AL_EFFECT_AUTOWAH),
  645. DECL(AL_EFFECT_COMPRESSOR),
  646. DECL(AL_EFFECT_EQUALIZER),
  647. DECL(AL_EFFECT_DEDICATED_LOW_FREQUENCY_EFFECT),
  648. DECL(AL_EFFECT_DEDICATED_DIALOGUE),
  649. DECL(AL_EFFECTSLOT_EFFECT),
  650. DECL(AL_EFFECTSLOT_GAIN),
  651. DECL(AL_EFFECTSLOT_AUXILIARY_SEND_AUTO),
  652. DECL(AL_EFFECTSLOT_NULL),
  653. DECL(AL_EAXREVERB_DENSITY),
  654. DECL(AL_EAXREVERB_DIFFUSION),
  655. DECL(AL_EAXREVERB_GAIN),
  656. DECL(AL_EAXREVERB_GAINHF),
  657. DECL(AL_EAXREVERB_GAINLF),
  658. DECL(AL_EAXREVERB_DECAY_TIME),
  659. DECL(AL_EAXREVERB_DECAY_HFRATIO),
  660. DECL(AL_EAXREVERB_DECAY_LFRATIO),
  661. DECL(AL_EAXREVERB_REFLECTIONS_GAIN),
  662. DECL(AL_EAXREVERB_REFLECTIONS_DELAY),
  663. DECL(AL_EAXREVERB_REFLECTIONS_PAN),
  664. DECL(AL_EAXREVERB_LATE_REVERB_GAIN),
  665. DECL(AL_EAXREVERB_LATE_REVERB_DELAY),
  666. DECL(AL_EAXREVERB_LATE_REVERB_PAN),
  667. DECL(AL_EAXREVERB_ECHO_TIME),
  668. DECL(AL_EAXREVERB_ECHO_DEPTH),
  669. DECL(AL_EAXREVERB_MODULATION_TIME),
  670. DECL(AL_EAXREVERB_MODULATION_DEPTH),
  671. DECL(AL_EAXREVERB_AIR_ABSORPTION_GAINHF),
  672. DECL(AL_EAXREVERB_HFREFERENCE),
  673. DECL(AL_EAXREVERB_LFREFERENCE),
  674. DECL(AL_EAXREVERB_ROOM_ROLLOFF_FACTOR),
  675. DECL(AL_EAXREVERB_DECAY_HFLIMIT),
  676. DECL(AL_REVERB_DENSITY),
  677. DECL(AL_REVERB_DIFFUSION),
  678. DECL(AL_REVERB_GAIN),
  679. DECL(AL_REVERB_GAINHF),
  680. DECL(AL_REVERB_DECAY_TIME),
  681. DECL(AL_REVERB_DECAY_HFRATIO),
  682. DECL(AL_REVERB_REFLECTIONS_GAIN),
  683. DECL(AL_REVERB_REFLECTIONS_DELAY),
  684. DECL(AL_REVERB_LATE_REVERB_GAIN),
  685. DECL(AL_REVERB_LATE_REVERB_DELAY),
  686. DECL(AL_REVERB_AIR_ABSORPTION_GAINHF),
  687. DECL(AL_REVERB_ROOM_ROLLOFF_FACTOR),
  688. DECL(AL_REVERB_DECAY_HFLIMIT),
  689. DECL(AL_CHORUS_WAVEFORM),
  690. DECL(AL_CHORUS_PHASE),
  691. DECL(AL_CHORUS_RATE),
  692. DECL(AL_CHORUS_DEPTH),
  693. DECL(AL_CHORUS_FEEDBACK),
  694. DECL(AL_CHORUS_DELAY),
  695. DECL(AL_DISTORTION_EDGE),
  696. DECL(AL_DISTORTION_GAIN),
  697. DECL(AL_DISTORTION_LOWPASS_CUTOFF),
  698. DECL(AL_DISTORTION_EQCENTER),
  699. DECL(AL_DISTORTION_EQBANDWIDTH),
  700. DECL(AL_ECHO_DELAY),
  701. DECL(AL_ECHO_LRDELAY),
  702. DECL(AL_ECHO_DAMPING),
  703. DECL(AL_ECHO_FEEDBACK),
  704. DECL(AL_ECHO_SPREAD),
  705. DECL(AL_FLANGER_WAVEFORM),
  706. DECL(AL_FLANGER_PHASE),
  707. DECL(AL_FLANGER_RATE),
  708. DECL(AL_FLANGER_DEPTH),
  709. DECL(AL_FLANGER_FEEDBACK),
  710. DECL(AL_FLANGER_DELAY),
  711. DECL(AL_FREQUENCY_SHIFTER_FREQUENCY),
  712. DECL(AL_FREQUENCY_SHIFTER_LEFT_DIRECTION),
  713. DECL(AL_FREQUENCY_SHIFTER_RIGHT_DIRECTION),
  714. DECL(AL_RING_MODULATOR_FREQUENCY),
  715. DECL(AL_RING_MODULATOR_HIGHPASS_CUTOFF),
  716. DECL(AL_RING_MODULATOR_WAVEFORM),
  717. DECL(AL_PITCH_SHIFTER_COARSE_TUNE),
  718. DECL(AL_PITCH_SHIFTER_FINE_TUNE),
  719. DECL(AL_COMPRESSOR_ONOFF),
  720. DECL(AL_EQUALIZER_LOW_GAIN),
  721. DECL(AL_EQUALIZER_LOW_CUTOFF),
  722. DECL(AL_EQUALIZER_MID1_GAIN),
  723. DECL(AL_EQUALIZER_MID1_CENTER),
  724. DECL(AL_EQUALIZER_MID1_WIDTH),
  725. DECL(AL_EQUALIZER_MID2_GAIN),
  726. DECL(AL_EQUALIZER_MID2_CENTER),
  727. DECL(AL_EQUALIZER_MID2_WIDTH),
  728. DECL(AL_EQUALIZER_HIGH_GAIN),
  729. DECL(AL_EQUALIZER_HIGH_CUTOFF),
  730. DECL(AL_DEDICATED_GAIN),
  731. DECL(AL_AUTOWAH_ATTACK_TIME),
  732. DECL(AL_AUTOWAH_RELEASE_TIME),
  733. DECL(AL_AUTOWAH_RESONANCE),
  734. DECL(AL_AUTOWAH_PEAK_GAIN),
  735. DECL(AL_VOCAL_MORPHER_PHONEMEA),
  736. DECL(AL_VOCAL_MORPHER_PHONEMEB_COARSE_TUNING),
  737. DECL(AL_VOCAL_MORPHER_PHONEMEB),
  738. DECL(AL_VOCAL_MORPHER_PHONEMEB_COARSE_TUNING),
  739. DECL(AL_VOCAL_MORPHER_WAVEFORM),
  740. DECL(AL_VOCAL_MORPHER_RATE),
  741. DECL(AL_EFFECTSLOT_TARGET_SOFT),
  742. DECL(AL_NUM_RESAMPLERS_SOFT),
  743. DECL(AL_DEFAULT_RESAMPLER_SOFT),
  744. DECL(AL_SOURCE_RESAMPLER_SOFT),
  745. DECL(AL_RESAMPLER_NAME_SOFT),
  746. DECL(AL_SOURCE_SPATIALIZE_SOFT),
  747. DECL(AL_AUTO_SOFT),
  748. DECL(AL_MAP_READ_BIT_SOFT),
  749. DECL(AL_MAP_WRITE_BIT_SOFT),
  750. DECL(AL_MAP_PERSISTENT_BIT_SOFT),
  751. DECL(AL_PRESERVE_DATA_BIT_SOFT),
  752. DECL(AL_EVENT_CALLBACK_FUNCTION_SOFT),
  753. DECL(AL_EVENT_CALLBACK_USER_PARAM_SOFT),
  754. DECL(AL_EVENT_TYPE_BUFFER_COMPLETED_SOFT),
  755. DECL(AL_EVENT_TYPE_SOURCE_STATE_CHANGED_SOFT),
  756. DECL(AL_EVENT_TYPE_DISCONNECTED_SOFT),
  757. DECL(AL_DROP_UNMATCHED_SOFT),
  758. DECL(AL_REMIX_UNMATCHED_SOFT),
  759. DECL(AL_AMBISONIC_LAYOUT_SOFT),
  760. DECL(AL_AMBISONIC_SCALING_SOFT),
  761. DECL(AL_FUMA_SOFT),
  762. DECL(AL_ACN_SOFT),
  763. DECL(AL_SN3D_SOFT),
  764. DECL(AL_N3D_SOFT),
  765. DECL(AL_BUFFER_CALLBACK_FUNCTION_SOFT),
  766. DECL(AL_BUFFER_CALLBACK_USER_PARAM_SOFT),
  767. DECL(AL_UNPACK_AMBISONIC_ORDER_SOFT),
  768. DECL(AL_EFFECT_CONVOLUTION_SOFT),
  769. DECL(AL_EFFECTSLOT_STATE_SOFT),
  770. DECL(AL_DONT_CARE_EXT),
  771. DECL(AL_DEBUG_OUTPUT_EXT),
  772. DECL(AL_DEBUG_CALLBACK_FUNCTION_EXT),
  773. DECL(AL_DEBUG_CALLBACK_USER_PARAM_EXT),
  774. DECL(AL_DEBUG_SOURCE_API_EXT),
  775. DECL(AL_DEBUG_SOURCE_AUDIO_SYSTEM_EXT),
  776. DECL(AL_DEBUG_SOURCE_THIRD_PARTY_EXT),
  777. DECL(AL_DEBUG_SOURCE_APPLICATION_EXT),
  778. DECL(AL_DEBUG_SOURCE_OTHER_EXT),
  779. DECL(AL_DEBUG_TYPE_ERROR_EXT),
  780. DECL(AL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_EXT),
  781. DECL(AL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_EXT),
  782. DECL(AL_DEBUG_TYPE_PORTABILITY_EXT),
  783. DECL(AL_DEBUG_TYPE_PERFORMANCE_EXT),
  784. DECL(AL_DEBUG_TYPE_MARKER_EXT),
  785. DECL(AL_DEBUG_TYPE_PUSH_GROUP_EXT),
  786. DECL(AL_DEBUG_TYPE_POP_GROUP_EXT),
  787. DECL(AL_DEBUG_TYPE_OTHER_EXT),
  788. DECL(AL_DEBUG_SEVERITY_HIGH_EXT),
  789. DECL(AL_DEBUG_SEVERITY_MEDIUM_EXT),
  790. DECL(AL_DEBUG_SEVERITY_LOW_EXT),
  791. DECL(AL_DEBUG_SEVERITY_NOTIFICATION_EXT),
  792. DECL(AL_DEBUG_LOGGED_MESSAGES_EXT),
  793. DECL(AL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_EXT),
  794. DECL(AL_MAX_DEBUG_MESSAGE_LENGTH_EXT),
  795. DECL(AL_MAX_DEBUG_LOGGED_MESSAGES_EXT),
  796. DECL(AL_MAX_DEBUG_GROUP_STACK_DEPTH_EXT),
  797. DECL(AL_MAX_LABEL_LENGTH_EXT),
  798. DECL(AL_STACK_OVERFLOW_EXT),
  799. DECL(AL_STACK_UNDERFLOW_EXT),
  800. DECL(AL_BUFFER_EXT),
  801. DECL(AL_SOURCE_EXT),
  802. DECL(AL_FILTER_EXT),
  803. DECL(AL_EFFECT_EXT),
  804. DECL(AL_AUXILIARY_EFFECT_SLOT_EXT),
  805. DECL(AL_PANNING_ENABLED_SOFT),
  806. DECL(AL_PAN_SOFT),
  807. DECL(AL_STOP_SOURCES_ON_DISCONNECT_SOFT),
  808. };
  809. #if ALSOFT_EAX
  810. inline const std::array eaxEnumerations{
  811. DECL(AL_EAX_RAM_SIZE),
  812. DECL(AL_EAX_RAM_FREE),
  813. DECL(AL_STORAGE_AUTOMATIC),
  814. DECL(AL_STORAGE_HARDWARE),
  815. DECL(AL_STORAGE_ACCESSIBLE),
  816. };
  817. #endif
  818. #undef DECL
  819. #endif /* ALC_EXPORT_LIST_H */