From 6b9b875d6f256c659762073a227032f7e7fcbc02 Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Sun, 14 May 2023 17:53:48 -0700 Subject: Implement direct functions for the listener and events --- al/listener.cpp | 149 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 74 insertions(+), 75 deletions(-) (limited to 'al/listener.cpp') diff --git a/al/listener.cpp b/al/listener.cpp index 06d7c370..4ee4f8d7 100644 --- a/al/listener.cpp +++ b/al/listener.cpp @@ -33,6 +33,7 @@ #include "almalloc.h" #include "atomic.h" #include "core/except.h" +#include "direct_defs.h" #include "opthelpers.h" @@ -68,11 +69,10 @@ inline void CommitAndUpdateProps(ALCcontext *context) } // namespace -AL_API void AL_APIENTRY alListenerf(ALenum param, ALfloat value) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alListenerfDirect(ALCcontext *context, ALenum param, ALfloat value) noexcept { - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; @@ -82,27 +82,26 @@ START_API_FUNC if(!(value >= 0.0f && std::isfinite(value))) return context->setError(AL_INVALID_VALUE, "Listener gain out of range"); listener.Gain = value; - UpdateProps(context.get()); + UpdateProps(context); break; case AL_METERS_PER_UNIT: if(!(value >= AL_MIN_METERS_PER_UNIT && value <= AL_MAX_METERS_PER_UNIT)) return context->setError(AL_INVALID_VALUE, "Listener meters per unit out of range"); listener.mMetersPerUnit = value; - UpdateProps(context.get()); + UpdateProps(context); break; default: context->setError(AL_INVALID_ENUM, "Invalid listener float property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alListener3f(ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alListener3fDirect(ALCcontext *context, ALenum param, ALfloat value1, + ALfloat value2, ALfloat value3) noexcept { - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; @@ -114,7 +113,7 @@ START_API_FUNC listener.Position[0] = value1; listener.Position[1] = value2; listener.Position[2] = value3; - CommitAndUpdateProps(context.get()); + CommitAndUpdateProps(context); break; case AL_VELOCITY: @@ -123,17 +122,16 @@ START_API_FUNC listener.Velocity[0] = value1; listener.Velocity[1] = value2; listener.Velocity[2] = value3; - CommitAndUpdateProps(context.get()); + CommitAndUpdateProps(context); break; default: context->setError(AL_INVALID_ENUM, "Invalid listener 3-float property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alListenerfv(ALenum param, const ALfloat *values) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alListenerfvDirect(ALCcontext *context, ALenum param, + const ALfloat *values) noexcept { if(values) { @@ -141,18 +139,18 @@ START_API_FUNC { case AL_GAIN: case AL_METERS_PER_UNIT: - alListenerf(param, values[0]); + alListenerfDirect(context, param, values[0]); return; case AL_POSITION: case AL_VELOCITY: - alListener3f(param, values[0], values[1], values[2]); + alListener3fDirect(context, param, values[0], values[1], values[2]); return; } } - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); @@ -172,21 +170,19 @@ START_API_FUNC listener.OrientUp[0] = values[3]; listener.OrientUp[1] = values[4]; listener.OrientUp[2] = values[5]; - CommitAndUpdateProps(context.get()); + CommitAndUpdateProps(context); break; default: context->setError(AL_INVALID_ENUM, "Invalid listener float-vector property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alListeneri(ALenum param, ALint /*value*/) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alListeneriDirect(ALCcontext *context, ALenum param, ALint /*value*/) noexcept { - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; std::lock_guard _{context->mPropLock}; switch(param) @@ -195,22 +191,21 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener integer property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alListener3i(ALenum param, ALint value1, ALint value2, ALint value3) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alListener3iDirect(ALCcontext *context, ALenum param, ALint value1, + ALint value2, ALint value3) noexcept { switch(param) { case AL_POSITION: case AL_VELOCITY: - alListener3f(param, static_cast(value1), static_cast(value2), - static_cast(value3)); + alListener3fDirect(context, param, static_cast(value1), + static_cast(value2), static_cast(value3)); return; } - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; std::lock_guard _{context->mPropLock}; switch(param) @@ -219,10 +214,9 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener 3-integer property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alListeneriv(ALenum param, const ALint *values) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alListenerivDirect(ALCcontext *context, ALenum param, + const ALint *values) noexcept { if(values) { @@ -231,8 +225,8 @@ START_API_FUNC { case AL_POSITION: case AL_VELOCITY: - alListener3f(param, static_cast(values[0]), static_cast(values[1]), - static_cast(values[2])); + alListener3fDirect(context, param, static_cast(values[0]), + static_cast(values[1]), static_cast(values[2])); return; case AL_ORIENTATION: @@ -242,13 +236,13 @@ START_API_FUNC fvals[3] = static_cast(values[3]); fvals[4] = static_cast(values[4]); fvals[5] = static_cast(values[5]); - alListenerfv(param, fvals); + alListenerfvDirect(context, param, fvals); return; } } - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; std::lock_guard _{context->mPropLock}; if(!values) UNLIKELY @@ -259,14 +253,13 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener integer-vector property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alGetListenerf(ALenum param, ALfloat *value) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alGetListenerfDirect(ALCcontext *context, ALenum param, + ALfloat *value) noexcept { - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; @@ -286,13 +279,12 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener float property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alGetListener3f(ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alGetListener3fDirect(ALCcontext *context, ALenum param, + ALfloat *value1, ALfloat *value2, ALfloat *value3) noexcept { - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; @@ -316,26 +308,25 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener 3-float property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alGetListenerfv(ALenum param, ALfloat *values) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alGetListenerfvDirect(ALCcontext *context, ALenum param, + ALfloat *values) noexcept { switch(param) { case AL_GAIN: case AL_METERS_PER_UNIT: - alGetListenerf(param, values); + alGetListenerfDirect(context, param, values); return; case AL_POSITION: case AL_VELOCITY: - alGetListener3f(param, values+0, values+1, values+2); + alGetListener3fDirect(context, param, values+0, values+1, values+2); return; } - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; @@ -357,14 +348,12 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener float-vector property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alGetListeneri(ALenum param, ALint *value) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alGetListeneriDirect(ALCcontext *context, ALenum param, ALint *value) noexcept { - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; std::lock_guard _{context->mPropLock}; if(!value) @@ -375,13 +364,12 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener integer property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alGetListener3i(ALenum param, ALint *value1, ALint *value2, ALint *value3) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alGetListener3iDirect(ALCcontext *context, ALenum param, + ALint *value1, ALint *value2, ALint *value3) noexcept { - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; @@ -405,21 +393,20 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener 3-integer property"); } } -END_API_FUNC -AL_API void AL_APIENTRY alGetListeneriv(ALenum param, ALint* values) -START_API_FUNC +FORCE_ALIGN void AL_APIENTRY alGetListenerivDirect(ALCcontext *context, ALenum param, + ALint *values) noexcept { switch(param) { case AL_POSITION: case AL_VELOCITY: - alGetListener3i(param, values+0, values+1, values+2); + alGetListener3iDirect(context, param, values+0, values+1, values+2); return; } - ContextRef context{GetContextRef()}; - if(!context) UNLIKELY return; + if(!context) UNLIKELY + return; ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; @@ -441,4 +428,16 @@ START_API_FUNC context->setError(AL_INVALID_ENUM, "Invalid listener integer-vector property"); } } -END_API_FUNC + +DECL_FUNC2(void, alListenerf, ALenum, ALfloat) +DECL_FUNC4(void, alListener3f, ALenum, ALfloat, ALfloat, ALfloat) +DECL_FUNC2(void, alListenerfv, ALenum, const ALfloat*) +DECL_FUNC2(void, alListeneri, ALenum, ALint) +DECL_FUNC4(void, alListener3i, ALenum, ALint, ALint, ALint) +DECL_FUNC2(void, alListeneriv, ALenum, const ALint*) +DECL_FUNC2(void, alGetListenerf, ALenum, ALfloat*) +DECL_FUNC4(void, alGetListener3f, ALenum, ALfloat*, ALfloat*, ALfloat*) +DECL_FUNC2(void, alGetListenerfv, ALenum, ALfloat*) +DECL_FUNC2(void, alGetListeneri, ALenum, ALint*) +DECL_FUNC4(void, alGetListener3i, ALenum, ALint*, ALint*, ALint*) +DECL_FUNC2(void, alGetListeneriv, ALenum, ALint*) -- cgit v1.2.3 From 5d89ea32c2bb6d5a137cb345bec616b0d6708789 Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Sun, 14 May 2023 19:39:25 -0700 Subject: Don't check for a null context in direct functions --- al/auxeffectslot.cpp | 39 ++-------------- al/buffer.cpp | 89 ++++------------------------------- al/debug.cpp | 51 +++++++++++--------- al/direct_defs.h | 62 ++++++++++++++++++------ al/effect.cpp | 41 ++-------------- al/error.cpp | 11 ++++- al/event.cpp | 6 --- al/extension.cpp | 3 -- al/filter.cpp | 41 ++-------------- al/listener.cpp | 36 -------------- al/source.cpp | 130 ++++++--------------------------------------------- al/state.cpp | 50 +------------------- 12 files changed, 125 insertions(+), 434 deletions(-) (limited to 'al/listener.cpp') diff --git a/al/auxeffectslot.cpp b/al/auxeffectslot.cpp index 5fa8fe55..d4f80ca2 100644 --- a/al/auxeffectslot.cpp +++ b/al/auxeffectslot.cpp @@ -313,9 +313,6 @@ inline void UpdateProps(ALeffectslot *slot, ALCcontext *context) FORCE_ALIGN void AL_APIENTRY alGenAuxiliaryEffectSlotsDirect(ALCcontext *context, ALsizei n, ALuint *effectslots) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Generating %d effect slots", n); if(n <= 0) UNLIKELY return; @@ -356,9 +353,6 @@ FORCE_ALIGN void AL_APIENTRY alGenAuxiliaryEffectSlotsDirect(ALCcontext *context FORCE_ALIGN void AL_APIENTRY alDeleteAuxiliaryEffectSlotsDirect(ALCcontext *context, ALsizei n, const ALuint *effectslots) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Deleting %d effect slots", n); if(n <= 0) UNLIKELY return; @@ -419,12 +413,9 @@ FORCE_ALIGN void AL_APIENTRY alDeleteAuxiliaryEffectSlotsDirect(ALCcontext *cont FORCE_ALIGN ALboolean AL_APIENTRY alIsAuxiliaryEffectSlotDirect(ALCcontext *context, ALuint effectslot) noexcept { - if(context) LIKELY - { - std::lock_guard _{context->mEffectSlotLock}; - if(LookupEffectSlot(context, effectslot) != nullptr) - return AL_TRUE; - } + std::lock_guard _{context->mEffectSlotLock}; + if(LookupEffectSlot(context, effectslot) != nullptr) + return AL_TRUE; return AL_FALSE; } @@ -541,9 +532,6 @@ END_API_FUNC FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotiDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); @@ -691,9 +679,6 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotivDirect(ALCcontext *context, return; } - if(!context) UNLIKELY - return; - std::lock_guard _{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); if(!slot) UNLIKELY @@ -710,9 +695,6 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotivDirect(ALCcontext *context, FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotfDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); @@ -746,9 +728,6 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotfvDirect(ALCcontext *context, return; } - if(!context) UNLIKELY - return; - std::lock_guard _{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); if(!slot) UNLIKELY @@ -766,9 +745,6 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotfvDirect(ALCcontext *context, FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotiDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint *value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); if(!slot) UNLIKELY @@ -817,9 +793,6 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotivDirect(ALCcontext *contex return; } - if(!context) UNLIKELY - return; - std::lock_guard _{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); if(!slot) UNLIKELY @@ -836,9 +809,6 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotivDirect(ALCcontext *contex FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotfDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat *value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); if(!slot) UNLIKELY @@ -865,9 +835,6 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotfvDirect(ALCcontext *contex return; } - if(!context) UNLIKELY - return; - std::lock_guard _{context->mEffectSlotLock}; ALeffectslot *slot = LookupEffectSlot(context, effectslot); if(!slot) UNLIKELY diff --git a/al/buffer.cpp b/al/buffer.cpp index 291871e5..6d0eec7f 100644 --- a/al/buffer.cpp +++ b/al/buffer.cpp @@ -638,9 +638,6 @@ std::optional DecomposeUserFormat(ALenum format) FORCE_ALIGN void AL_APIENTRY alGenBuffersDirect(ALCcontext *context, ALsizei n, ALuint *buffers) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Generating %d buffers", n); if(n <= 0) UNLIKELY return; @@ -677,9 +674,6 @@ FORCE_ALIGN void AL_APIENTRY alGenBuffersDirect(ALCcontext *context, ALsizei n, FORCE_ALIGN void AL_APIENTRY alDeleteBuffersDirect(ALCcontext *context, ALsizei n, const ALuint *buffers) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Deleting %d buffers", n); if(n <= 0) UNLIKELY return; @@ -719,20 +713,21 @@ FORCE_ALIGN void AL_APIENTRY alDeleteBuffersDirect(ALCcontext *context, ALsizei FORCE_ALIGN ALboolean AL_APIENTRY alIsBufferDirect(ALCcontext *context, ALuint buffer) noexcept { - if(context) LIKELY - { - ALCdevice *device{context->mALDevice.get()}; - std::lock_guard _{device->BufferLock}; - if(!buffer || LookupBuffer(device, buffer)) - return AL_TRUE; - } + ALCdevice *device{context->mALDevice.get()}; + std::lock_guard _{device->BufferLock}; + if(!buffer || LookupBuffer(device, buffer)) + return AL_TRUE; return AL_FALSE; } AL_API void AL_APIENTRY alBufferData(ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq) START_API_FUNC -{ alBufferStorageDirectSOFT(GetContextRef().get(), buffer, format, data, size, freq, 0); } +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + alBufferStorageDirectSOFT(context.get(), buffer, format, data, size, freq, 0); +} END_API_FUNC FORCE_ALIGN void AL_APIENTRY alBufferDataDirect(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq) noexcept @@ -741,9 +736,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferDataDirect(ALCcontext *context, ALuint buff FORCE_ALIGN void AL_APIENTRY alBufferStorageDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq, ALbitfieldSOFT flags) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -776,9 +768,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferStorageDirectSOFT(ALCcontext *context, ALui FORCE_ALIGN void AL_APIENTRY alBufferDataStaticDirect(ALCcontext *context, const ALuint buffer, ALenum format, ALvoid *data, ALsizei size, ALsizei freq) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -801,9 +790,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferDataStaticDirect(ALCcontext *context, const FORCE_ALIGN void* AL_APIENTRY alMapBufferDirectSOFT(ALCcontext *context, ALuint buffer, ALsizei offset, ALsizei length, ALbitfieldSOFT access) noexcept { - if(!context) UNLIKELY - return nullptr; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -853,9 +839,6 @@ FORCE_ALIGN void* AL_APIENTRY alMapBufferDirectSOFT(ALCcontext *context, ALuint FORCE_ALIGN void AL_APIENTRY alUnmapBufferDirectSOFT(ALCcontext *context, ALuint buffer) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -875,9 +858,6 @@ FORCE_ALIGN void AL_APIENTRY alUnmapBufferDirectSOFT(ALCcontext *context, ALuint FORCE_ALIGN void AL_APIENTRY alFlushMappedBufferDirectSOFT(ALCcontext *context, ALuint buffer, ALsizei offset, ALsizei length) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -906,9 +886,6 @@ FORCE_ALIGN void AL_APIENTRY alFlushMappedBufferDirectSOFT(ALCcontext *context, FORCE_ALIGN void AL_APIENTRY alBufferSubDataDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei offset, ALsizei length) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -965,9 +942,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferSubDataDirectSOFT(ALCcontext *context, ALui FORCE_ALIGN void AL_APIENTRY alBufferfDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat /*value*/) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -983,9 +957,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferfDirect(ALCcontext *context, ALuint buffer, FORCE_ALIGN void AL_APIENTRY alBuffer3fDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat /*value1*/, ALfloat /*value2*/, ALfloat /*value3*/) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1001,9 +972,6 @@ FORCE_ALIGN void AL_APIENTRY alBuffer3fDirect(ALCcontext *context, ALuint buffer FORCE_ALIGN void AL_APIENTRY alBufferfvDirect(ALCcontext *context, ALuint buffer, ALenum param, const ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1022,9 +990,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferfvDirect(ALCcontext *context, ALuint buffer FORCE_ALIGN void AL_APIENTRY alBufferiDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1082,9 +1047,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferiDirect(ALCcontext *context, ALuint buffer, FORCE_ALIGN void AL_APIENTRY alBuffer3iDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint /*value1*/, ALint /*value2*/, ALint /*value3*/) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1114,9 +1076,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferivDirect(ALCcontext *context, ALuint buffer } } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1151,9 +1110,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferivDirect(ALCcontext *context, ALuint buffer FORCE_ALIGN void AL_APIENTRY alGetBufferfDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1177,9 +1133,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferfDirect(ALCcontext *context, ALuint buff FORCE_ALIGN void AL_APIENTRY alGetBuffer3fDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1204,9 +1157,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferfvDirect(ALCcontext *context, ALuint buf return; } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1225,9 +1175,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferfvDirect(ALCcontext *context, ALuint buf FORCE_ALIGN void AL_APIENTRY alGetBufferiDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; ALbuffer *albuf = LookupBuffer(device, buffer); @@ -1291,9 +1238,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferiDirect(ALCcontext *context, ALuint buff FORCE_ALIGN void AL_APIENTRY alGetBuffer3iDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *value1, ALint *value2, ALint *value3) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; if(LookupBuffer(device, buffer) == nullptr) UNLIKELY @@ -1328,9 +1272,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferivDirect(ALCcontext *context, ALuint buf return; } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; ALbuffer *albuf = LookupBuffer(device, buffer); @@ -1354,9 +1295,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferivDirect(ALCcontext *context, ALuint buf FORCE_ALIGN void AL_APIENTRY alBufferCallbackDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, ALsizei freq, ALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; @@ -1381,9 +1319,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferCallbackDirectSOFT(ALCcontext *context, ALu FORCE_ALIGN void AL_APIENTRY alGetBufferPtrDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; ALbuffer *albuf = LookupBuffer(device, buffer); @@ -1408,9 +1343,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferPtrDirectSOFT(ALCcontext *context, ALuin FORCE_ALIGN void AL_APIENTRY alGetBuffer3PtrDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **value1, ALvoid **value2, ALvoid **value3) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; if(LookupBuffer(device, buffer) == nullptr) UNLIKELY @@ -1435,9 +1367,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferPtrvDirectSOFT(ALCcontext *context, ALui return; } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->BufferLock}; if(LookupBuffer(device, buffer) == nullptr) UNLIKELY diff --git a/al/debug.cpp b/al/debug.cpp index e28df917..9c0a63ef 100644 --- a/al/debug.cpp +++ b/al/debug.cpp @@ -234,14 +234,15 @@ void ALCcontext::sendDebugMessage(std::unique_lock &debuglock, Debug FORCE_ALIGN void AL_APIENTRY alDebugMessageCallbackEXT(ALDEBUGPROCEXT callback, void *userParam) noexcept -{ return alDebugMessageCallbackDirectEXT(GetContextRef().get(), callback, userParam); } +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + return alDebugMessageCallbackDirectEXT(context.get(), callback, userParam); +} FORCE_ALIGN void AL_APIENTRY alDebugMessageCallbackDirectEXT(ALCcontext *context, ALDEBUGPROCEXT callback, void *userParam) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mDebugCbLock}; context->mDebugCb = callback; context->mDebugParam = userParam; @@ -249,7 +250,11 @@ FORCE_ALIGN void AL_APIENTRY alDebugMessageCallbackDirectEXT(ALCcontext *context FORCE_ALIGN void AL_APIENTRY alDebugMessageInsertEXT(ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message) noexcept -{ return alDebugMessageInsertDirectEXT(GetContextRef().get(), source, type, id, severity, length, message); } +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + return alDebugMessageInsertDirectEXT(context.get(), source, type, id, severity, length, message); +} FORCE_ALIGN void AL_APIENTRY alDebugMessageInsertDirectEXT(ALCcontext *context, ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message) noexcept @@ -294,14 +299,15 @@ FORCE_ALIGN void AL_APIENTRY alDebugMessageInsertDirectEXT(ALCcontext *context, FORCE_ALIGN void AL_APIENTRY alDebugMessageControlEXT(ALenum source, ALenum type, ALenum severity, ALsizei count, const ALuint *ids, ALboolean enable) noexcept -{ return alDebugMessageControlDirectEXT(GetContextRef().get(), source, type, severity, count, ids, enable); } +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + return alDebugMessageControlDirectEXT(context.get(), source, type, severity, count, ids, enable); +} FORCE_ALIGN void AL_APIENTRY alDebugMessageControlDirectEXT(ALCcontext *context, ALenum source, ALenum type, ALenum severity, ALsizei count, const ALuint *ids, ALboolean enable) noexcept { - if(!context) UNLIKELY - return; - if(count > 0) { if(!ids) @@ -395,14 +401,15 @@ FORCE_ALIGN void AL_APIENTRY alDebugMessageControlDirectEXT(ALCcontext *context, FORCE_ALIGN void AL_APIENTRY alPushDebugGroupEXT(ALenum source, ALuint id, ALsizei length, const ALchar *message) noexcept -{ return alPushDebugGroupDirectEXT(GetContextRef().get(), source, id, length, message); } +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + return alPushDebugGroupDirectEXT(context.get(), source, id, length, message); +} FORCE_ALIGN void AL_APIENTRY alPushDebugGroupDirectEXT(ALCcontext *context, ALenum source, ALuint id, ALsizei length, const ALchar *message) noexcept { - if(!context) UNLIKELY - return; - if(length < 0) { size_t newlen{std::strlen(message)}; @@ -442,13 +449,14 @@ FORCE_ALIGN void AL_APIENTRY alPushDebugGroupDirectEXT(ALCcontext *context, ALen } FORCE_ALIGN void AL_APIENTRY alPopDebugGroupEXT(void) noexcept -{ return alPopDebugGroupDirectEXT(GetContextRef().get()); } +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + return alPopDebugGroupDirectEXT(context.get()); +} FORCE_ALIGN void AL_APIENTRY alPopDebugGroupDirectEXT(ALCcontext *context) noexcept { - if(!context) UNLIKELY - return; - std::unique_lock debuglock{context->mDebugCbLock}; if(context->mDebugGroups.size() <= 1) { @@ -470,15 +478,16 @@ FORCE_ALIGN void AL_APIENTRY alPopDebugGroupDirectEXT(ALCcontext *context) noexc FORCE_ALIGN ALuint AL_APIENTRY alGetDebugMessageLogEXT(ALuint count, ALsizei logBufSize, ALenum *sources, ALenum *types, ALuint *ids, ALenum *severities, ALsizei *lengths, ALchar *logBuf) noexcept -{ return alGetDebugMessageLogDirectEXT(GetContextRef().get(), count, logBufSize, sources, types, ids, severities, lengths, logBuf); } +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return 0; + return alGetDebugMessageLogDirectEXT(context.get(), count, logBufSize, sources, types, ids, severities, lengths, logBuf); +} FORCE_ALIGN ALuint AL_APIENTRY alGetDebugMessageLogDirectEXT(ALCcontext *context, ALuint count, ALsizei logBufSize, ALenum *sources, ALenum *types, ALuint *ids, ALenum *severities, ALsizei *lengths, ALchar *logBuf) noexcept { - if(!context) UNLIKELY - return 0; - if(logBufSize < 0) { context->setError(AL_INVALID_VALUE, "Negative debug log buffer size"); diff --git a/al/direct_defs.h b/al/direct_defs.h index c36211ae..4ab72730 100644 --- a/al/direct_defs.h +++ b/al/direct_defs.h @@ -1,83 +1,119 @@ #ifndef AL_DIRECT_DEFS_H #define AL_DIRECT_DEFS_H +namespace detail_ { + +template +constexpr T DefaultVal() noexcept { return T{}; } + +template<> +constexpr void DefaultVal() noexcept { } + +} // namespace detail_ + #define DECL_FUNC(R, Name) \ R AL_API Name(void) START_API_FUNC \ { \ - return Name##Direct(GetContextRef().get()); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct(context.get()); \ } END_API_FUNC #define DECL_FUNC1(R, Name, T1) \ R AL_API Name(T1 a) START_API_FUNC \ { \ - return Name##Direct(GetContextRef().get(), a); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct(context.get(), a); \ } END_API_FUNC #define DECL_FUNC2(R, Name, T1, T2) \ R AL_API Name(T1 a, T2 b) START_API_FUNC \ { \ - return Name##Direct(GetContextRef().get(), a, b); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct(context.get(), a, b); \ } END_API_FUNC #define DECL_FUNC3(R, Name, T1, T2, T3) \ R AL_API Name(T1 a, T2 b, T3 c) START_API_FUNC \ { \ - return Name##Direct(GetContextRef().get(), a, b, c); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct(context.get(), a, b, c); \ } END_API_FUNC #define DECL_FUNC4(R, Name, T1, T2, T3, T4) \ R AL_API Name(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ { \ - return Name##Direct(GetContextRef().get(), a, b, c, d); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct(context.get(), a, b, c, d); \ } END_API_FUNC #define DECL_FUNC5(R, Name, T1, T2, T3, T4, T5) \ R AL_API Name(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ { \ - return Name##Direct(GetContextRef().get(), a, b, c, d, e); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct(context.get(), a, b, c, d, e); \ } END_API_FUNC #define DECL_FUNCEXT(R, Name,Ext) \ R AL_API Name##Ext(void) START_API_FUNC \ { \ - return Name##Direct##Ext(GetContextRef().get()); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct##Ext(context.get()); \ } END_API_FUNC #define DECL_FUNCEXT1(R, Name,Ext, T1) \ R AL_API Name##Ext(T1 a) START_API_FUNC \ { \ - return Name##Direct##Ext(GetContextRef().get(), a); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct##Ext(context.get(), a); \ } END_API_FUNC #define DECL_FUNCEXT2(R, Name,Ext, T1, T2) \ R AL_API Name##Ext(T1 a, T2 b) START_API_FUNC \ { \ - return Name##Direct##Ext(GetContextRef().get(), a, b); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct##Ext(context.get(), a, b); \ } END_API_FUNC #define DECL_FUNCEXT3(R, Name,Ext, T1, T2, T3) \ R AL_API Name##Ext(T1 a, T2 b, T3 c) START_API_FUNC \ { \ - return Name##Direct##Ext(GetContextRef().get(), a, b, c); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct##Ext(context.get(), a, b, c); \ } END_API_FUNC #define DECL_FUNCEXT4(R, Name,Ext, T1, T2, T3, T4) \ R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ { \ - return Name##Direct##Ext(GetContextRef().get(), a, b, c, d); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct##Ext(context.get(), a, b, c, d); \ } END_API_FUNC #define DECL_FUNCEXT5(R, Name,Ext, T1, T2, T3, T4, T5) \ R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ { \ - return Name##Direct##Ext(GetContextRef().get(), a, b, c, d, e); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct##Ext(context.get(), a, b, c, d, e); \ } END_API_FUNC #define DECL_FUNCEXT6(R, Name,Ext, T1, T2, T3, T4, T5, T6) \ R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d, T5 e, T6 f) START_API_FUNC \ { \ - return Name##Direct##Ext(GetContextRef().get(), a, b, c, d, e, f); \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return detail_::DefaultVal(); \ + return Name##Direct##Ext(context.get(), a, b, c, d, e, f); \ } END_API_FUNC #endif /* AL_DIRECT_DEFS_H */ diff --git a/al/effect.cpp b/al/effect.cpp index a0ec2135..9032fdb3 100644 --- a/al/effect.cpp +++ b/al/effect.cpp @@ -233,9 +233,6 @@ inline ALeffect *LookupEffect(ALCdevice *device, ALuint id) FORCE_ALIGN void AL_APIENTRY alGenEffectsDirect(ALCcontext *context, ALsizei n, ALuint *effects) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Generating %d effects", n); if(n <= 0) UNLIKELY return; @@ -272,9 +269,6 @@ FORCE_ALIGN void AL_APIENTRY alGenEffectsDirect(ALCcontext *context, ALsizei n, FORCE_ALIGN void AL_APIENTRY alDeleteEffectsDirect(ALCcontext *context, ALsizei n, const ALuint *effects) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Deleting %d effects", n); if(n <= 0) UNLIKELY return; @@ -305,22 +299,16 @@ FORCE_ALIGN void AL_APIENTRY alDeleteEffectsDirect(ALCcontext *context, ALsizei FORCE_ALIGN ALboolean AL_APIENTRY alIsEffectDirect(ALCcontext *context, ALuint effect) noexcept { - if(context) LIKELY - { - ALCdevice *device{context->mALDevice.get()}; - std::lock_guard _{device->EffectLock}; - if(!effect || LookupEffect(device, effect)) - return AL_TRUE; - } + ALCdevice *device{context->mALDevice.get()}; + std::lock_guard _{device->EffectLock}; + if(!effect || LookupEffect(device, effect)) + return AL_TRUE; return AL_FALSE; } FORCE_ALIGN void AL_APIENTRY alEffectiDirect(ALCcontext *context, ALuint effect, ALenum param, ALint value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; @@ -367,9 +355,6 @@ FORCE_ALIGN void AL_APIENTRY alEffectivDirect(ALCcontext *context, ALuint effect return; } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; @@ -389,9 +374,6 @@ FORCE_ALIGN void AL_APIENTRY alEffectivDirect(ALCcontext *context, ALuint effect FORCE_ALIGN void AL_APIENTRY alEffectfDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; @@ -411,9 +393,6 @@ FORCE_ALIGN void AL_APIENTRY alEffectfDirect(ALCcontext *context, ALuint effect, FORCE_ALIGN void AL_APIENTRY alEffectfvDirect(ALCcontext *context, ALuint effect, ALenum param, const ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; @@ -433,9 +412,6 @@ FORCE_ALIGN void AL_APIENTRY alEffectfvDirect(ALCcontext *context, ALuint effect FORCE_ALIGN void AL_APIENTRY alGetEffectiDirect(ALCcontext *context, ALuint effect, ALenum param, ALint *value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; @@ -464,9 +440,6 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectivDirect(ALCcontext *context, ALuint eff return; } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; @@ -486,9 +459,6 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectivDirect(ALCcontext *context, ALuint eff FORCE_ALIGN void AL_APIENTRY alGetEffectfDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat *value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; @@ -508,9 +478,6 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectfDirect(ALCcontext *context, ALuint effe FORCE_ALIGN void AL_APIENTRY alGetEffectfvDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->EffectLock}; diff --git a/al/error.cpp b/al/error.cpp index e33ee161..8e6bb3b8 100644 --- a/al/error.cpp +++ b/al/error.cpp @@ -90,9 +90,12 @@ void ALCcontext::setError(ALenum errorCode, const char *msg, ...) debugMessage(DebugSource::API, DebugType::Error, 0, DebugSeverity::High, msglen, msg); } -AL_API DECL_FUNC(ALenum, alGetError) -FORCE_ALIGN ALenum AL_APIENTRY alGetErrorDirect(ALCcontext *context) noexcept +/* Special-case alGetError since it (potentially) raises a debug signal and + * returns a non-default value for a null context. + */ +AL_API ALenum AL_APIENTRY alGetError(void) START_API_FUNC { + auto context = GetContextRef(); if(!context) UNLIKELY { static constexpr ALenum deferror{AL_INVALID_OPERATION}; @@ -108,6 +111,10 @@ FORCE_ALIGN ALenum AL_APIENTRY alGetErrorDirect(ALCcontext *context) noexcept } return deferror; } + return alGetErrorDirect(context.get()); +} END_API_FUNC +FORCE_ALIGN ALenum AL_APIENTRY alGetErrorDirect(ALCcontext *context) noexcept +{ return context->mLastError.exchange(AL_NO_ERROR); } diff --git a/al/event.cpp b/al/event.cpp index f7ef7b50..dffd76d0 100644 --- a/al/event.cpp +++ b/al/event.cpp @@ -176,9 +176,6 @@ void StopEventThrd(ALCcontext *ctx) FORCE_ALIGN void AL_APIENTRY alEventControlDirectSOFT(ALCcontext *context, ALsizei count, const ALenum *types, ALboolean enable) noexcept { - if(!context) UNLIKELY - return; - if(count < 0) context->setError(AL_INVALID_VALUE, "Controlling %d events", count); if(count <= 0) return; if(!types) return context->setError(AL_INVALID_VALUE, "NULL pointer"); @@ -230,9 +227,6 @@ FORCE_ALIGN void AL_APIENTRY alEventControlDirectSOFT(ALCcontext *context, ALsiz FORCE_ALIGN void AL_APIENTRY alEventCallbackDirectSOFT(ALCcontext *context, ALEVENTPROCSOFT callback, void *userParam) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mEventCbLock}; context->mEventCb = callback; diff --git a/al/extension.cpp b/al/extension.cpp index 077e3324..edd30f88 100644 --- a/al/extension.cpp +++ b/al/extension.cpp @@ -37,9 +37,6 @@ AL_API DECL_FUNC1(ALboolean, alIsExtensionPresent, const ALchar*) FORCE_ALIGN ALboolean AL_APIENTRY alIsExtensionPresentDirect(ALCcontext *context, const ALchar *extName) noexcept { - if(!context) UNLIKELY - return AL_FALSE; - if(!extName) UNLIKELY { context->setError(AL_INVALID_VALUE, "NULL pointer"); diff --git a/al/filter.cpp b/al/filter.cpp index 9176a516..fb12ef48 100644 --- a/al/filter.cpp +++ b/al/filter.cpp @@ -404,9 +404,6 @@ inline ALfilter *LookupFilter(ALCdevice *device, ALuint id) FORCE_ALIGN void AL_APIENTRY alGenFiltersDirect(ALCcontext *context, ALsizei n, ALuint *filters) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Generating %d filters", n); if(n <= 0) UNLIKELY return; @@ -443,9 +440,6 @@ FORCE_ALIGN void AL_APIENTRY alGenFiltersDirect(ALCcontext *context, ALsizei n, FORCE_ALIGN void AL_APIENTRY alDeleteFiltersDirect(ALCcontext *context, ALsizei n, const ALuint *filters) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Deleting %d filters", n); if(n <= 0) UNLIKELY return; @@ -476,13 +470,10 @@ FORCE_ALIGN void AL_APIENTRY alDeleteFiltersDirect(ALCcontext *context, ALsizei FORCE_ALIGN ALboolean AL_APIENTRY alIsFilterDirect(ALCcontext *context, ALuint filter) noexcept { - if(context) LIKELY - { - ALCdevice *device{context->mALDevice.get()}; - std::lock_guard _{device->FilterLock}; - if(!filter || LookupFilter(device, filter)) - return AL_TRUE; - } + ALCdevice *device{context->mALDevice.get()}; + std::lock_guard _{device->FilterLock}; + if(!filter || LookupFilter(device, filter)) + return AL_TRUE; return AL_FALSE; } @@ -490,9 +481,6 @@ FORCE_ALIGN ALboolean AL_APIENTRY alIsFilterDirect(ALCcontext *context, ALuint f FORCE_ALIGN void AL_APIENTRY alFilteriDirect(ALCcontext *context, ALuint filter, ALenum param, ALint value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; @@ -530,9 +518,6 @@ FORCE_ALIGN void AL_APIENTRY alFilterivDirect(ALCcontext *context, ALuint filter return; } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; @@ -552,9 +537,6 @@ FORCE_ALIGN void AL_APIENTRY alFilterivDirect(ALCcontext *context, ALuint filter FORCE_ALIGN void AL_APIENTRY alFilterfDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; @@ -574,9 +556,6 @@ FORCE_ALIGN void AL_APIENTRY alFilterfDirect(ALCcontext *context, ALuint filter, FORCE_ALIGN void AL_APIENTRY alFilterfvDirect(ALCcontext *context, ALuint filter, ALenum param, const ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; @@ -596,9 +575,6 @@ FORCE_ALIGN void AL_APIENTRY alFilterfvDirect(ALCcontext *context, ALuint filter FORCE_ALIGN void AL_APIENTRY alGetFilteriDirect(ALCcontext *context, ALuint filter, ALenum param, ALint *value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; @@ -630,9 +606,6 @@ FORCE_ALIGN void AL_APIENTRY alGetFilterivDirect(ALCcontext *context, ALuint fil return; } - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; @@ -652,9 +625,6 @@ FORCE_ALIGN void AL_APIENTRY alGetFilterivDirect(ALCcontext *context, ALuint fil FORCE_ALIGN void AL_APIENTRY alGetFilterfDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat *value) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; @@ -674,9 +644,6 @@ FORCE_ALIGN void AL_APIENTRY alGetFilterfDirect(ALCcontext *context, ALuint filt FORCE_ALIGN void AL_APIENTRY alGetFilterfvDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - ALCdevice *device{context->mALDevice.get()}; std::lock_guard _{device->FilterLock}; diff --git a/al/listener.cpp b/al/listener.cpp index 4ee4f8d7..25cb162e 100644 --- a/al/listener.cpp +++ b/al/listener.cpp @@ -71,9 +71,6 @@ inline void CommitAndUpdateProps(ALCcontext *context) FORCE_ALIGN void AL_APIENTRY alListenerfDirect(ALCcontext *context, ALenum param, ALfloat value) noexcept { - if(!context) UNLIKELY - return; - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; switch(param) @@ -100,9 +97,6 @@ FORCE_ALIGN void AL_APIENTRY alListenerfDirect(ALCcontext *context, ALenum param FORCE_ALIGN void AL_APIENTRY alListener3fDirect(ALCcontext *context, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) noexcept { - if(!context) UNLIKELY - return; - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; switch(param) @@ -149,9 +143,6 @@ FORCE_ALIGN void AL_APIENTRY alListenerfvDirect(ALCcontext *context, ALenum para } } - if(!context) UNLIKELY - return; - if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); @@ -181,9 +172,6 @@ FORCE_ALIGN void AL_APIENTRY alListenerfvDirect(ALCcontext *context, ALenum para FORCE_ALIGN void AL_APIENTRY alListeneriDirect(ALCcontext *context, ALenum param, ALint /*value*/) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; switch(param) { @@ -204,9 +192,6 @@ FORCE_ALIGN void AL_APIENTRY alListener3iDirect(ALCcontext *context, ALenum para return; } - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; switch(param) { @@ -241,9 +226,6 @@ FORCE_ALIGN void AL_APIENTRY alListenerivDirect(ALCcontext *context, ALenum para } } - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; if(!values) UNLIKELY context->setError(AL_INVALID_VALUE, "NULL pointer"); @@ -258,9 +240,6 @@ FORCE_ALIGN void AL_APIENTRY alListenerivDirect(ALCcontext *context, ALenum para FORCE_ALIGN void AL_APIENTRY alGetListenerfDirect(ALCcontext *context, ALenum param, ALfloat *value) noexcept { - if(!context) UNLIKELY - return; - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; if(!value) @@ -283,9 +262,6 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerfDirect(ALCcontext *context, ALenum pa FORCE_ALIGN void AL_APIENTRY alGetListener3fDirect(ALCcontext *context, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) noexcept { - if(!context) UNLIKELY - return; - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; if(!value1 || !value2 || !value3) @@ -325,9 +301,6 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerfvDirect(ALCcontext *context, ALenum p return; } - if(!context) UNLIKELY - return; - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; if(!values) @@ -352,9 +325,6 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerfvDirect(ALCcontext *context, ALenum p FORCE_ALIGN void AL_APIENTRY alGetListeneriDirect(ALCcontext *context, ALenum param, ALint *value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; if(!value) context->setError(AL_INVALID_VALUE, "NULL pointer"); @@ -368,9 +338,6 @@ FORCE_ALIGN void AL_APIENTRY alGetListeneriDirect(ALCcontext *context, ALenum pa FORCE_ALIGN void AL_APIENTRY alGetListener3iDirect(ALCcontext *context, ALenum param, ALint *value1, ALint *value2, ALint *value3) noexcept { - if(!context) UNLIKELY - return; - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; if(!value1 || !value2 || !value3) @@ -405,9 +372,6 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerivDirect(ALCcontext *context, ALenum p return; } - if(!context) UNLIKELY - return; - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; if(!values) diff --git a/al/source.cpp b/al/source.cpp index 1e251a45..8b73ddf0 100644 --- a/al/source.cpp +++ b/al/source.cpp @@ -2628,9 +2628,6 @@ void StartSources(ALCcontext *const context, const al::span srchandle FORCE_ALIGN void AL_APIENTRY alGenSourcesDirect(ALCcontext *context, ALsizei n, ALuint *sources) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Generating %d sources", n); if(n <= 0) UNLIKELY return; @@ -2677,9 +2674,6 @@ FORCE_ALIGN void AL_APIENTRY alGenSourcesDirect(ALCcontext *context, ALsizei n, FORCE_ALIGN void AL_APIENTRY alDeleteSourcesDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Deleting %d sources", n); if(n <= 0) UNLIKELY return; @@ -2706,12 +2700,9 @@ FORCE_ALIGN void AL_APIENTRY alDeleteSourcesDirect(ALCcontext *context, ALsizei FORCE_ALIGN ALboolean AL_APIENTRY alIsSourceDirect(ALCcontext *context, ALuint source) noexcept { - if(context) LIKELY - { - std::lock_guard _{context->mSourceLock}; - if(LookupSource(context, source) != nullptr) - return AL_TRUE; - } + std::lock_guard _{context->mSourceLock}; + if(LookupSource(context, source) != nullptr) + return AL_TRUE; return AL_FALSE; } @@ -2719,9 +2710,6 @@ FORCE_ALIGN ALboolean AL_APIENTRY alIsSourceDirect(ALCcontext *context, ALuint s FORCE_ALIGN void AL_APIENTRY alSourcefDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2735,9 +2723,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcefDirect(ALCcontext *context, ALuint source, FORCE_ALIGN void AL_APIENTRY alSource3fDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2751,9 +2736,6 @@ FORCE_ALIGN void AL_APIENTRY alSource3fDirect(ALCcontext *context, ALuint source FORCE_ALIGN void AL_APIENTRY alSourcefvDirect(ALCcontext *context, ALuint source, ALenum param, const ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2770,9 +2752,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcefvDirect(ALCcontext *context, ALuint source FORCE_ALIGN void AL_APIENTRY alSourcedDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2786,9 +2765,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcedDirectSOFT(ALCcontext *context, ALuint sou FORCE_ALIGN void AL_APIENTRY alSource3dDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble value1, ALdouble value2, ALdouble value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2802,9 +2778,6 @@ FORCE_ALIGN void AL_APIENTRY alSource3dDirectSOFT(ALCcontext *context, ALuint so FORCE_ALIGN void AL_APIENTRY alSourcedvDirectSOFT(ALCcontext *context, ALuint source, ALenum param, const ALdouble *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2821,9 +2794,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcedvDirectSOFT(ALCcontext *context, ALuint so FORCE_ALIGN void AL_APIENTRY alSourceiDirect(ALCcontext *context, ALuint source, ALenum param, ALint value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2837,9 +2807,6 @@ FORCE_ALIGN void AL_APIENTRY alSourceiDirect(ALCcontext *context, ALuint source, FORCE_ALIGN void AL_APIENTRY alSource3iDirect(ALCcontext *context, ALuint source, ALenum param, ALint value1, ALint value2, ALint value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2853,9 +2820,6 @@ FORCE_ALIGN void AL_APIENTRY alSource3iDirect(ALCcontext *context, ALuint source FORCE_ALIGN void AL_APIENTRY alSourceivDirect(ALCcontext *context, ALuint source, ALenum param, const ALint *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source = LookupSource(context, source); @@ -2872,9 +2836,6 @@ FORCE_ALIGN void AL_APIENTRY alSourceivDirect(ALCcontext *context, ALuint source FORCE_ALIGN void AL_APIENTRY alSourcei64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; @@ -2888,9 +2849,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcei64DirectSOFT(ALCcontext *context, ALuint s FORCE_ALIGN void AL_APIENTRY alSource3i64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT value1, ALint64SOFT value2, ALint64SOFT value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; @@ -2904,9 +2862,6 @@ FORCE_ALIGN void AL_APIENTRY alSource3i64DirectSOFT(ALCcontext *context, ALuint FORCE_ALIGN void AL_APIENTRY alSourcei64vDirectSOFT(ALCcontext *context, ALuint source, ALenum param, const ALint64SOFT *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; std::lock_guard __{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; @@ -2923,9 +2878,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcei64vDirectSOFT(ALCcontext *context, ALuint FORCE_ALIGN void AL_APIENTRY alGetSourcefDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -2940,9 +2892,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcefDirect(ALCcontext *context, ALuint sour FORCE_ALIGN void AL_APIENTRY alGetSource3fDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -2962,9 +2911,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3fDirect(ALCcontext *context, ALuint sou FORCE_ALIGN void AL_APIENTRY alGetSourcefvDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -2981,9 +2927,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcefvDirect(ALCcontext *context, ALuint sou FORCE_ALIGN void AL_APIENTRY alGetSourcedDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -2998,9 +2941,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcedDirectSOFT(ALCcontext *context, ALuint FORCE_ALIGN void AL_APIENTRY alGetSource3dDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *value1, ALdouble *value2, ALdouble *value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3020,9 +2960,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3dDirectSOFT(ALCcontext *context, ALuint FORCE_ALIGN void AL_APIENTRY alGetSourcedvDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3039,9 +2976,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcedvDirectSOFT(ALCcontext *context, ALuint FORCE_ALIGN void AL_APIENTRY alGetSourceiDirect(ALCcontext *context, ALuint source, ALenum param, ALint *value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3056,9 +2990,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourceiDirect(ALCcontext *context, ALuint sour FORCE_ALIGN void AL_APIENTRY alGetSource3iDirect(ALCcontext *context, ALuint source, ALenum param, ALint *value1, ALint *value2, ALint *value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3078,9 +3009,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3iDirect(ALCcontext *context, ALuint sou FORCE_ALIGN void AL_APIENTRY alGetSourceivDirect(ALCcontext *context, ALuint source, ALenum param, ALint *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3096,9 +3024,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourceivDirect(ALCcontext *context, ALuint sou FORCE_ALIGN void AL_APIENTRY alGetSourcei64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *value) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3113,9 +3038,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcei64DirectSOFT(ALCcontext *context, ALuin FORCE_ALIGN void AL_APIENTRY alGetSource3i64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *value1, ALint64SOFT *value2, ALint64SOFT *value3) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3135,9 +3057,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3i64DirectSOFT(ALCcontext *context, ALui FORCE_ALIGN void AL_APIENTRY alGetSourcei64vDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *values) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *Source{LookupSource(context, source)}; if(!Source) UNLIKELY @@ -3153,9 +3072,6 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcei64vDirectSOFT(ALCcontext *context, ALui FORCE_ALIGN void AL_APIENTRY alSourcePlayDirect(ALCcontext *context, ALuint source) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mSourceLock}; ALsource *srchandle{LookupSource(context, source)}; if(!srchandle) @@ -3167,9 +3083,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcePlayDirect(ALCcontext *context, ALuint sour FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimeDirectSOFT(ALCcontext *context, ALuint source, ALint64SOFT start_time) noexcept { - if(!context) UNLIKELY - return; - if(start_time < 0) UNLIKELY return context->setError(AL_INVALID_VALUE, "Invalid time point %" PRId64, start_time); @@ -3184,9 +3097,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimeDirectSOFT(ALCcontext *context, A FORCE_ALIGN void AL_APIENTRY alSourcePlayvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Playing %d sources", n); if(n <= 0) UNLIKELY return; @@ -3217,9 +3127,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcePlayvDirect(ALCcontext *context, ALsizei n, FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimevDirectSOFT(ALCcontext *context, ALsizei n, const ALuint *sources, ALint64SOFT start_time) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Playing %d sources", n); if(n <= 0) UNLIKELY return; @@ -3257,9 +3164,6 @@ FORCE_ALIGN void AL_APIENTRY alSourcePauseDirect(ALCcontext *context, ALuint sou FORCE_ALIGN void AL_APIENTRY alSourcePausevDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Pausing %d sources", n); if(n <= 0) UNLIKELY return; @@ -3330,9 +3234,6 @@ FORCE_ALIGN void AL_APIENTRY alSourceStopDirect(ALCcontext *context, ALuint sour FORCE_ALIGN void AL_APIENTRY alSourceStopvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Stopping %d sources", n); if(n <= 0) UNLIKELY return; @@ -3390,9 +3291,6 @@ FORCE_ALIGN void AL_APIENTRY alSourceRewindDirect(ALCcontext *context, ALuint so FORCE_ALIGN void AL_APIENTRY alSourceRewindvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { - if(!context) UNLIKELY - return; - if(n < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Rewinding %d sources", n); if(n <= 0) UNLIKELY return; @@ -3449,9 +3347,6 @@ FORCE_ALIGN void AL_APIENTRY alSourceRewindvDirect(ALCcontext *context, ALsizei FORCE_ALIGN void AL_APIENTRY alSourceQueueBuffersDirect(ALCcontext *context, ALuint src, ALsizei nb, const ALuint *buffers) noexcept { - if(!context) UNLIKELY - return; - if(nb < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Queueing %d buffers", nb); if(nb <= 0) UNLIKELY return; @@ -3576,9 +3471,6 @@ FORCE_ALIGN void AL_APIENTRY alSourceQueueBuffersDirect(ALCcontext *context, ALu FORCE_ALIGN void AL_APIENTRY alSourceUnqueueBuffersDirect(ALCcontext *context, ALuint src, ALsizei nb, ALuint *buffers) noexcept { - if(!context) UNLIKELY - return; - if(nb < 0) UNLIKELY context->setError(AL_INVALID_VALUE, "Unqueueing %d buffers", nb); if(nb <= 0) UNLIKELY return; @@ -3663,10 +3555,18 @@ DECL_FUNCEXT5(void, alGetSource3i64,SOFT, ALuint, ALenum, ALint64SOFT*, ALint64S DECL_FUNCEXT3(void, alGetSourcei64v,SOFT, ALuint, ALenum, ALint64SOFT*) DECL_FUNC3(void, alSourceQueueBuffers, ALuint, ALsizei, const ALuint*) DECL_FUNC3(void, alSourceUnqueueBuffers, ALuint, ALsizei, ALuint*) -FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimeSOFT(ALuint source, ALint64SOFT time) -START_API_FUNC { return alSourcePlayAtTimeDirectSOFT(GetContextRef().get(), source, time); } END_API_FUNC -FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimevSOFT(ALsizei n, const ALuint *sources, ALint64SOFT time) -START_API_FUNC { return alSourcePlayAtTimevDirectSOFT(GetContextRef().get(), n, sources, time); } END_API_FUNC +FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimeSOFT(ALuint source, ALint64SOFT time) START_API_FUNC +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + return alSourcePlayAtTimeDirectSOFT(context.get(), source, time); +} END_API_FUNC +FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimevSOFT(ALsizei n, const ALuint *sources, ALint64SOFT time) START_API_FUNC +{ + auto context = GetContextRef(); + if(!context) UNLIKELY return; + return alSourcePlayAtTimevDirectSOFT(context.get(), n, sources, time); +} END_API_FUNC AL_API void AL_APIENTRY alSourceQueueBufferLayersSOFT(ALuint, ALsizei, const ALuint*) START_API_FUNC diff --git a/al/state.cpp b/al/state.cpp index e1b50af0..2367dbe4 100644 --- a/al/state.cpp +++ b/al/state.cpp @@ -306,9 +306,6 @@ END_API_FUNC FORCE_ALIGN void AL_APIENTRY alEnableDirect(ALCcontext *context, ALenum capability) noexcept { - if(!context) UNLIKELY - return; - switch(capability) { case AL_SOURCE_DISTANCE_MODEL: @@ -334,9 +331,6 @@ FORCE_ALIGN void AL_APIENTRY alEnableDirect(ALCcontext *context, ALenum capabili FORCE_ALIGN void AL_APIENTRY alDisableDirect(ALCcontext *context, ALenum capability) noexcept { - if(!context) UNLIKELY - return; - switch(capability) { case AL_SOURCE_DISTANCE_MODEL: @@ -362,9 +356,6 @@ FORCE_ALIGN void AL_APIENTRY alDisableDirect(ALCcontext *context, ALenum capabil FORCE_ALIGN ALboolean AL_APIENTRY alIsEnabledDirect(ALCcontext *context, ALenum capability) noexcept { - if(!context) UNLIKELY - return AL_FALSE; - std::lock_guard _{context->mPropLock}; ALboolean value{AL_FALSE}; switch(capability) @@ -393,6 +384,8 @@ AL_API R AL_APIENTRY Name##Ext(ALenum pname) \ START_API_FUNC \ { \ R value{}; \ + auto context = GetContextRef(); \ + if(!context) UNLIKELY return value; \ Name##vDirect##Ext(GetContextRef().get(), pname, &value); \ return value; \ } \ @@ -417,9 +410,6 @@ DECL_GETFUNC(ALvoid*, alGetPointer,SOFT) FORCE_ALIGN void AL_APIENTRY alGetBooleanvDirect(ALCcontext *context, ALenum pname, ALboolean *values) noexcept { - if(!context) UNLIKELY - return; - if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); GetValue(context, pname, values); @@ -427,9 +417,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBooleanvDirect(ALCcontext *context, ALenum pna FORCE_ALIGN void AL_APIENTRY alGetDoublevDirect(ALCcontext *context, ALenum pname, ALdouble *values) noexcept { - if(!context) UNLIKELY - return; - if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); GetValue(context, pname, values); @@ -437,9 +424,6 @@ FORCE_ALIGN void AL_APIENTRY alGetDoublevDirect(ALCcontext *context, ALenum pnam FORCE_ALIGN void AL_APIENTRY alGetFloatvDirect(ALCcontext *context, ALenum pname, ALfloat *values) noexcept { - if(!context) UNLIKELY - return; - if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); GetValue(context, pname, values); @@ -447,9 +431,6 @@ FORCE_ALIGN void AL_APIENTRY alGetFloatvDirect(ALCcontext *context, ALenum pname FORCE_ALIGN void AL_APIENTRY alGetIntegervDirect(ALCcontext *context, ALenum pname, ALint *values) noexcept { - if(!context) UNLIKELY - return; - if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); GetValue(context, pname, values); @@ -457,9 +438,6 @@ FORCE_ALIGN void AL_APIENTRY alGetIntegervDirect(ALCcontext *context, ALenum pna FORCE_ALIGN void AL_APIENTRY alGetInteger64vDirectSOFT(ALCcontext *context, ALenum pname, ALint64SOFT *values) noexcept { - if(!context) UNLIKELY - return; - if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); GetValue(context, pname, values); @@ -467,9 +445,6 @@ FORCE_ALIGN void AL_APIENTRY alGetInteger64vDirectSOFT(ALCcontext *context, ALen FORCE_ALIGN void AL_APIENTRY alGetPointervDirectSOFT(ALCcontext *context, ALenum pname, ALvoid **values) noexcept { - if(!context) UNLIKELY - return; - if(!values) UNLIKELY return context->setError(AL_INVALID_VALUE, "NULL pointer"); @@ -498,9 +473,6 @@ FORCE_ALIGN void AL_APIENTRY alGetPointervDirectSOFT(ALCcontext *context, ALenum FORCE_ALIGN const ALchar* AL_APIENTRY alGetStringDirect(ALCcontext *context, ALenum pname) noexcept { - if(!context) UNLIKELY - return nullptr; - const ALchar *value{nullptr}; switch(pname) { @@ -560,9 +532,6 @@ FORCE_ALIGN const ALchar* AL_APIENTRY alGetStringDirect(ALCcontext *context, ALe FORCE_ALIGN void AL_APIENTRY alDopplerFactorDirect(ALCcontext *context, ALfloat value) noexcept { - if(!context) UNLIKELY - return; - if(!(value >= 0.0f && std::isfinite(value))) context->setError(AL_INVALID_VALUE, "Doppler factor %f out of range", value); else @@ -575,9 +544,6 @@ FORCE_ALIGN void AL_APIENTRY alDopplerFactorDirect(ALCcontext *context, ALfloat FORCE_ALIGN void AL_APIENTRY alSpeedOfSoundDirect(ALCcontext *context, ALfloat value) noexcept { - if(!context) UNLIKELY - return; - if(!(value > 0.0f && std::isfinite(value))) context->setError(AL_INVALID_VALUE, "Speed of sound %f out of range", value); else @@ -590,9 +556,6 @@ FORCE_ALIGN void AL_APIENTRY alSpeedOfSoundDirect(ALCcontext *context, ALfloat v FORCE_ALIGN void AL_APIENTRY alDistanceModelDirect(ALCcontext *context, ALenum value) noexcept { - if(!context) UNLIKELY - return; - if(auto model = DistanceModelFromALenum(value)) { std::lock_guard _{context->mPropLock}; @@ -607,18 +570,12 @@ FORCE_ALIGN void AL_APIENTRY alDistanceModelDirect(ALCcontext *context, ALenum v FORCE_ALIGN void AL_APIENTRY alDeferUpdatesDirectSOFT(ALCcontext *context) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; context->deferUpdates(); } FORCE_ALIGN void AL_APIENTRY alProcessUpdatesDirectSOFT(ALCcontext *context) noexcept { - if(!context) UNLIKELY - return; - std::lock_guard _{context->mPropLock}; context->processUpdates(); } @@ -626,9 +583,6 @@ FORCE_ALIGN void AL_APIENTRY alProcessUpdatesDirectSOFT(ALCcontext *context) noe FORCE_ALIGN const ALchar* AL_APIENTRY alGetStringiDirectSOFT(ALCcontext *context, ALenum pname, ALsizei index) noexcept { - if(!context) UNLIKELY - return nullptr; - const ALchar *value{nullptr}; switch(pname) { -- cgit v1.2.3 From de1d0e59797a7eb64c697e861cf033d8cba7190d Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Sun, 14 May 2023 21:01:24 -0700 Subject: Fix linkage definitions --- al/auxeffectslot.cpp | 22 ++++++++-------- al/buffer.cpp | 48 +++++++++++++++++----------------- al/direct_defs.h | 26 +++++++++--------- al/effect.cpp | 22 ++++++++-------- al/event.cpp | 4 +-- al/filter.cpp | 22 ++++++++-------- al/listener.cpp | 24 ++++++++--------- al/source.cpp | 74 ++++++++++++++++++++++++++-------------------------- al/state.cpp | 12 +++------ 9 files changed, 125 insertions(+), 129 deletions(-) (limited to 'al/listener.cpp') diff --git a/al/auxeffectslot.cpp b/al/auxeffectslot.cpp index d4f80ca2..acc05f94 100644 --- a/al/auxeffectslot.cpp +++ b/al/auxeffectslot.cpp @@ -848,17 +848,17 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotfvDirect(ALCcontext *contex } } -DECL_FUNC2(void, alGenAuxiliaryEffectSlots, ALsizei, ALuint*) -DECL_FUNC2(void, alDeleteAuxiliaryEffectSlots, ALsizei, const ALuint*) -DECL_FUNC1(ALboolean, alIsAuxiliaryEffectSlot, ALuint) -DECL_FUNC3(void, alAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat) -DECL_FUNC3(void, alAuxiliaryEffectSlotfv, ALuint, ALenum, const ALfloat*) -DECL_FUNC3(void, alAuxiliaryEffectSloti, ALuint, ALenum, ALint) -DECL_FUNC3(void, alAuxiliaryEffectSlotiv, ALuint, ALenum, const ALint*) -DECL_FUNC3(void, alGetAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetAuxiliaryEffectSlotfv, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetAuxiliaryEffectSloti, ALuint, ALenum, ALint*) -DECL_FUNC3(void, alGetAuxiliaryEffectSlotiv, ALuint, ALenum, ALint*) +AL_API DECL_FUNC2(void, alGenAuxiliaryEffectSlots, ALsizei, ALuint*) +AL_API DECL_FUNC2(void, alDeleteAuxiliaryEffectSlots, ALsizei, const ALuint*) +AL_API DECL_FUNC1(ALboolean, alIsAuxiliaryEffectSlot, ALuint) +AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat) +AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotfv, ALuint, ALenum, const ALfloat*) +AL_API DECL_FUNC3(void, alAuxiliaryEffectSloti, ALuint, ALenum, ALint) +AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotiv, ALuint, ALenum, const ALint*) +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotfv, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSloti, ALuint, ALenum, ALint*) +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotiv, ALuint, ALenum, ALint*) ALeffectslot::ALeffectslot(ALCcontext *context) diff --git a/al/buffer.cpp b/al/buffer.cpp index 6d0eec7f..01c9b5a4 100644 --- a/al/buffer.cpp +++ b/al/buffer.cpp @@ -1381,31 +1381,31 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferPtrvDirectSOFT(ALCcontext *context, ALui } -DECL_FUNC2(void, alGenBuffers, ALsizei, ALuint*) -DECL_FUNC2(void, alDeleteBuffers, ALsizei, const ALuint*) -DECL_FUNC1(ALboolean, alIsBuffer, ALuint) +AL_API DECL_FUNC2(void, alGenBuffers, ALsizei, ALuint*) +AL_API DECL_FUNC2(void, alDeleteBuffers, ALsizei, const ALuint*) +AL_API DECL_FUNC1(ALboolean, alIsBuffer, ALuint) DECL_FUNC5(void, alBufferDataStatic, ALuint, ALenum, ALvoid*, ALsizei, ALsizei) -DECL_FUNCEXT5(void, alBufferCallback,SOFT, ALuint, ALenum, ALsizei, ALBUFFERCALLBACKTYPESOFT, ALvoid*) -DECL_FUNCEXT6(void, alBufferStorage,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei, ALbitfieldSOFT) -DECL_FUNCEXT4(void*, alMapBuffer,SOFT, ALuint, ALsizei, ALsizei, ALbitfieldSOFT) -DECL_FUNCEXT1(void, alUnmapBuffer,SOFT, ALuint) -DECL_FUNCEXT3(void, alFlushMappedBuffer,SOFT, ALuint, ALsizei, ALsizei) -DECL_FUNCEXT5(void, alBufferSubData,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei) -DECL_FUNC3(void, alBufferf, ALuint, ALenum, ALfloat) -DECL_FUNC5(void, alBuffer3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) -DECL_FUNC3(void, alBufferfv, ALuint, ALenum, const ALfloat*) -DECL_FUNC3(void, alBufferi, ALuint, ALenum, ALint) -DECL_FUNC5(void, alBuffer3i, ALuint, ALenum, ALint, ALint, ALint) -DECL_FUNC3(void, alBufferiv, ALuint, ALenum, const ALint*) -DECL_FUNC3(void, alGetBufferf, ALuint, ALenum, ALfloat*) -DECL_FUNC5(void, alGetBuffer3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) -DECL_FUNC3(void, alGetBufferfv, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetBufferi, ALuint, ALenum, ALint*) -DECL_FUNC5(void, alGetBuffer3i, ALuint, ALenum, ALint*, ALint*, ALint*) -DECL_FUNC3(void, alGetBufferiv, ALuint, ALenum, ALint*) -DECL_FUNCEXT3(void, alGetBufferPtr,SOFT, ALuint, ALenum, ALvoid**) -DECL_FUNCEXT5(void, alGetBuffer3Ptr,SOFT, ALuint, ALenum, ALvoid**, ALvoid**, ALvoid**) -DECL_FUNCEXT3(void, alGetBufferPtrv,SOFT, ALuint, ALenum, ALvoid**) +AL_API DECL_FUNCEXT5(void, alBufferCallback,SOFT, ALuint, ALenum, ALsizei, ALBUFFERCALLBACKTYPESOFT, ALvoid*) +AL_API DECL_FUNCEXT6(void, alBufferStorage,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei, ALbitfieldSOFT) +AL_API DECL_FUNCEXT4(void*, alMapBuffer,SOFT, ALuint, ALsizei, ALsizei, ALbitfieldSOFT) +AL_API DECL_FUNCEXT1(void, alUnmapBuffer,SOFT, ALuint) +AL_API DECL_FUNCEXT3(void, alFlushMappedBuffer,SOFT, ALuint, ALsizei, ALsizei) +AL_API DECL_FUNCEXT5(void, alBufferSubData,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei) +AL_API DECL_FUNC3(void, alBufferf, ALuint, ALenum, ALfloat) +AL_API DECL_FUNC5(void, alBuffer3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) +AL_API DECL_FUNC3(void, alBufferfv, ALuint, ALenum, const ALfloat*) +AL_API DECL_FUNC3(void, alBufferi, ALuint, ALenum, ALint) +AL_API DECL_FUNC5(void, alBuffer3i, ALuint, ALenum, ALint, ALint, ALint) +AL_API DECL_FUNC3(void, alBufferiv, ALuint, ALenum, const ALint*) +AL_API DECL_FUNC3(void, alGetBufferf, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC5(void, alGetBuffer3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) +AL_API DECL_FUNC3(void, alGetBufferfv, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetBufferi, ALuint, ALenum, ALint*) +AL_API DECL_FUNC5(void, alGetBuffer3i, ALuint, ALenum, ALint*, ALint*, ALint*) +AL_API DECL_FUNC3(void, alGetBufferiv, ALuint, ALenum, ALint*) +AL_API DECL_FUNCEXT3(void, alGetBufferPtr,SOFT, ALuint, ALenum, ALvoid**) +AL_API DECL_FUNCEXT5(void, alGetBuffer3Ptr,SOFT, ALuint, ALenum, ALvoid**, ALvoid**, ALvoid**) +AL_API DECL_FUNCEXT3(void, alGetBufferPtrv,SOFT, ALuint, ALenum, ALvoid**) AL_API void AL_APIENTRY alBufferSamplesSOFT(ALuint /*buffer*/, ALuint /*samplerate*/, ALenum /*internalformat*/, ALsizei /*samples*/, ALenum /*channels*/, ALenum /*type*/, diff --git a/al/direct_defs.h b/al/direct_defs.h index 4ab72730..e483fc71 100644 --- a/al/direct_defs.h +++ b/al/direct_defs.h @@ -12,7 +12,7 @@ constexpr void DefaultVal() noexcept { } } // namespace detail_ #define DECL_FUNC(R, Name) \ -R AL_API Name(void) START_API_FUNC \ +R AL_APIENTRY Name(void) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -20,7 +20,7 @@ R AL_API Name(void) START_API_FUNC \ } END_API_FUNC #define DECL_FUNC1(R, Name, T1) \ -R AL_API Name(T1 a) START_API_FUNC \ +R AL_APIENTRY Name(T1 a) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -28,7 +28,7 @@ R AL_API Name(T1 a) START_API_FUNC \ } END_API_FUNC #define DECL_FUNC2(R, Name, T1, T2) \ -R AL_API Name(T1 a, T2 b) START_API_FUNC \ +R AL_APIENTRY Name(T1 a, T2 b) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -36,7 +36,7 @@ R AL_API Name(T1 a, T2 b) START_API_FUNC \ } END_API_FUNC #define DECL_FUNC3(R, Name, T1, T2, T3) \ -R AL_API Name(T1 a, T2 b, T3 c) START_API_FUNC \ +R AL_APIENTRY Name(T1 a, T2 b, T3 c) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -44,7 +44,7 @@ R AL_API Name(T1 a, T2 b, T3 c) START_API_FUNC \ } END_API_FUNC #define DECL_FUNC4(R, Name, T1, T2, T3, T4) \ -R AL_API Name(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ +R AL_APIENTRY Name(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -52,7 +52,7 @@ R AL_API Name(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ } END_API_FUNC #define DECL_FUNC5(R, Name, T1, T2, T3, T4, T5) \ -R AL_API Name(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ +R AL_APIENTRY Name(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -61,7 +61,7 @@ R AL_API Name(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ #define DECL_FUNCEXT(R, Name,Ext) \ -R AL_API Name##Ext(void) START_API_FUNC \ +R AL_APIENTRY Name##Ext(void) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -69,7 +69,7 @@ R AL_API Name##Ext(void) START_API_FUNC \ } END_API_FUNC #define DECL_FUNCEXT1(R, Name,Ext, T1) \ -R AL_API Name##Ext(T1 a) START_API_FUNC \ +R AL_APIENTRY Name##Ext(T1 a) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -77,7 +77,7 @@ R AL_API Name##Ext(T1 a) START_API_FUNC \ } END_API_FUNC #define DECL_FUNCEXT2(R, Name,Ext, T1, T2) \ -R AL_API Name##Ext(T1 a, T2 b) START_API_FUNC \ +R AL_APIENTRY Name##Ext(T1 a, T2 b) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -85,7 +85,7 @@ R AL_API Name##Ext(T1 a, T2 b) START_API_FUNC \ } END_API_FUNC #define DECL_FUNCEXT3(R, Name,Ext, T1, T2, T3) \ -R AL_API Name##Ext(T1 a, T2 b, T3 c) START_API_FUNC \ +R AL_APIENTRY Name##Ext(T1 a, T2 b, T3 c) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -93,7 +93,7 @@ R AL_API Name##Ext(T1 a, T2 b, T3 c) START_API_FUNC \ } END_API_FUNC #define DECL_FUNCEXT4(R, Name,Ext, T1, T2, T3, T4) \ -R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ +R AL_APIENTRY Name##Ext(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -101,7 +101,7 @@ R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d) START_API_FUNC \ } END_API_FUNC #define DECL_FUNCEXT5(R, Name,Ext, T1, T2, T3, T4, T5) \ -R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ +R AL_APIENTRY Name##Ext(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ @@ -109,7 +109,7 @@ R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d, T5 e) START_API_FUNC \ } END_API_FUNC #define DECL_FUNCEXT6(R, Name,Ext, T1, T2, T3, T4, T5, T6) \ -R AL_API Name##Ext(T1 a, T2 b, T3 c, T4 d, T5 e, T6 f) START_API_FUNC \ +R AL_APIENTRY Name##Ext(T1 a, T2 b, T3 c, T4 d, T5 e, T6 f) START_API_FUNC \ { \ auto context = GetContextRef(); \ if(!context) UNLIKELY return detail_::DefaultVal(); \ diff --git a/al/effect.cpp b/al/effect.cpp index 9032fdb3..041f0a2e 100644 --- a/al/effect.cpp +++ b/al/effect.cpp @@ -494,17 +494,17 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectfvDirect(ALCcontext *context, ALuint eff } } -DECL_FUNC2(void, alGenEffects, ALsizei, ALuint*) -DECL_FUNC2(void, alDeleteEffects, ALsizei, const ALuint*) -DECL_FUNC1(ALboolean, alIsEffect, ALuint) -DECL_FUNC3(void, alEffectf, ALuint, ALenum, ALfloat) -DECL_FUNC3(void, alEffectfv, ALuint, ALenum, const ALfloat*) -DECL_FUNC3(void, alEffecti, ALuint, ALenum, ALint) -DECL_FUNC3(void, alEffectiv, ALuint, ALenum, const ALint*) -DECL_FUNC3(void, alGetEffectf, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetEffectfv, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetEffecti, ALuint, ALenum, ALint*) -DECL_FUNC3(void, alGetEffectiv, ALuint, ALenum, ALint*) +AL_API DECL_FUNC2(void, alGenEffects, ALsizei, ALuint*) +AL_API DECL_FUNC2(void, alDeleteEffects, ALsizei, const ALuint*) +AL_API DECL_FUNC1(ALboolean, alIsEffect, ALuint) +AL_API DECL_FUNC3(void, alEffectf, ALuint, ALenum, ALfloat) +AL_API DECL_FUNC3(void, alEffectfv, ALuint, ALenum, const ALfloat*) +AL_API DECL_FUNC3(void, alEffecti, ALuint, ALenum, ALint) +AL_API DECL_FUNC3(void, alEffectiv, ALuint, ALenum, const ALint*) +AL_API DECL_FUNC3(void, alGetEffectf, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetEffectfv, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetEffecti, ALuint, ALenum, ALint*) +AL_API DECL_FUNC3(void, alGetEffectiv, ALuint, ALenum, ALint*) void InitEffect(ALeffect *effect) diff --git a/al/event.cpp b/al/event.cpp index dffd76d0..f606f765 100644 --- a/al/event.cpp +++ b/al/event.cpp @@ -233,5 +233,5 @@ FORCE_ALIGN void AL_APIENTRY alEventCallbackDirectSOFT(ALCcontext *context, context->mEventParam = userParam; } -DECL_FUNCEXT3(void, alEventControl,SOFT, ALsizei, const ALenum*, ALboolean) -DECL_FUNCEXT2(void, alEventCallback,SOFT, ALEVENTPROCSOFT, void*) +AL_API DECL_FUNCEXT3(void, alEventControl,SOFT, ALsizei, const ALenum*, ALboolean) +AL_API DECL_FUNCEXT2(void, alEventCallback,SOFT, ALEVENTPROCSOFT, void*) diff --git a/al/filter.cpp b/al/filter.cpp index fb12ef48..4b927a9b 100644 --- a/al/filter.cpp +++ b/al/filter.cpp @@ -660,17 +660,17 @@ FORCE_ALIGN void AL_APIENTRY alGetFilterfvDirect(ALCcontext *context, ALuint fil } } -DECL_FUNC2(void, alGenFilters, ALsizei, ALuint*) -DECL_FUNC2(void, alDeleteFilters, ALsizei, const ALuint*) -DECL_FUNC1(ALboolean, alIsFilter, ALuint) -DECL_FUNC3(void, alFilterf, ALuint, ALenum, ALfloat) -DECL_FUNC3(void, alFilterfv, ALuint, ALenum, const ALfloat*) -DECL_FUNC3(void, alFilteri, ALuint, ALenum, ALint) -DECL_FUNC3(void, alFilteriv, ALuint, ALenum, const ALint*) -DECL_FUNC3(void, alGetFilterf, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetFilterfv, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetFilteri, ALuint, ALenum, ALint*) -DECL_FUNC3(void, alGetFilteriv, ALuint, ALenum, ALint*) +AL_API DECL_FUNC2(void, alGenFilters, ALsizei, ALuint*) +AL_API DECL_FUNC2(void, alDeleteFilters, ALsizei, const ALuint*) +AL_API DECL_FUNC1(ALboolean, alIsFilter, ALuint) +AL_API DECL_FUNC3(void, alFilterf, ALuint, ALenum, ALfloat) +AL_API DECL_FUNC3(void, alFilterfv, ALuint, ALenum, const ALfloat*) +AL_API DECL_FUNC3(void, alFilteri, ALuint, ALenum, ALint) +AL_API DECL_FUNC3(void, alFilteriv, ALuint, ALenum, const ALint*) +AL_API DECL_FUNC3(void, alGetFilterf, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetFilterfv, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetFilteri, ALuint, ALenum, ALint*) +AL_API DECL_FUNC3(void, alGetFilteriv, ALuint, ALenum, ALint*) FilterSubList::~FilterSubList() diff --git a/al/listener.cpp b/al/listener.cpp index 25cb162e..f7e7d6f0 100644 --- a/al/listener.cpp +++ b/al/listener.cpp @@ -393,15 +393,15 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerivDirect(ALCcontext *context, ALenum p } } -DECL_FUNC2(void, alListenerf, ALenum, ALfloat) -DECL_FUNC4(void, alListener3f, ALenum, ALfloat, ALfloat, ALfloat) -DECL_FUNC2(void, alListenerfv, ALenum, const ALfloat*) -DECL_FUNC2(void, alListeneri, ALenum, ALint) -DECL_FUNC4(void, alListener3i, ALenum, ALint, ALint, ALint) -DECL_FUNC2(void, alListeneriv, ALenum, const ALint*) -DECL_FUNC2(void, alGetListenerf, ALenum, ALfloat*) -DECL_FUNC4(void, alGetListener3f, ALenum, ALfloat*, ALfloat*, ALfloat*) -DECL_FUNC2(void, alGetListenerfv, ALenum, ALfloat*) -DECL_FUNC2(void, alGetListeneri, ALenum, ALint*) -DECL_FUNC4(void, alGetListener3i, ALenum, ALint*, ALint*, ALint*) -DECL_FUNC2(void, alGetListeneriv, ALenum, ALint*) +AL_API DECL_FUNC2(void, alListenerf, ALenum, ALfloat) +AL_API DECL_FUNC4(void, alListener3f, ALenum, ALfloat, ALfloat, ALfloat) +AL_API DECL_FUNC2(void, alListenerfv, ALenum, const ALfloat*) +AL_API DECL_FUNC2(void, alListeneri, ALenum, ALint) +AL_API DECL_FUNC4(void, alListener3i, ALenum, ALint, ALint, ALint) +AL_API DECL_FUNC2(void, alListeneriv, ALenum, const ALint*) +AL_API DECL_FUNC2(void, alGetListenerf, ALenum, ALfloat*) +AL_API DECL_FUNC4(void, alGetListener3f, ALenum, ALfloat*, ALfloat*, ALfloat*) +AL_API DECL_FUNC2(void, alGetListenerfv, ALenum, ALfloat*) +AL_API DECL_FUNC2(void, alGetListeneri, ALenum, ALint*) +AL_API DECL_FUNC4(void, alGetListener3i, ALenum, ALint*, ALint*, ALint*) +AL_API DECL_FUNC2(void, alGetListeneriv, ALenum, ALint*) diff --git a/al/source.cpp b/al/source.cpp index 8b73ddf0..0efc7fb9 100644 --- a/al/source.cpp +++ b/al/source.cpp @@ -3518,43 +3518,43 @@ FORCE_ALIGN void AL_APIENTRY alSourceUnqueueBuffersDirect(ALCcontext *context, A } -DECL_FUNC2(void, alGenSources, ALsizei, ALuint*) -DECL_FUNC2(void, alDeleteSources, ALsizei, const ALuint*) -DECL_FUNC1(ALboolean, alIsSource, ALuint) -DECL_FUNC1(void, alSourcePlay, ALuint) -DECL_FUNC1(void, alSourcePause, ALuint) -DECL_FUNC1(void, alSourceStop, ALuint) -DECL_FUNC1(void, alSourceRewind, ALuint) -DECL_FUNC2(void, alSourcePlayv, ALsizei, const ALuint*) -DECL_FUNC2(void, alSourcePausev, ALsizei, const ALuint*) -DECL_FUNC2(void, alSourceStopv, ALsizei, const ALuint*) -DECL_FUNC2(void, alSourceRewindv, ALsizei, const ALuint*) -DECL_FUNC3(void, alSourcef, ALuint, ALenum, ALfloat) -DECL_FUNC5(void, alSource3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) -DECL_FUNC3(void, alSourcefv, ALuint, ALenum, const ALfloat*) -DECL_FUNC3(void, alSourcei, ALuint, ALenum, ALint) -DECL_FUNC5(void, alSource3i, ALuint, ALenum, ALint, ALint, ALint) -DECL_FUNC3(void, alSourceiv, ALuint, ALenum, const ALint*) -DECL_FUNCEXT3(void, alSourced,SOFT, ALuint, ALenum, ALdouble) -DECL_FUNCEXT5(void, alSource3d,SOFT, ALuint, ALenum, ALdouble, ALdouble, ALdouble) -DECL_FUNCEXT3(void, alSourcedv,SOFT, ALuint, ALenum, const ALdouble*) -DECL_FUNCEXT3(void, alSourcei64,SOFT, ALuint, ALenum, ALint64SOFT) -DECL_FUNCEXT5(void, alSource3i64,SOFT, ALuint, ALenum, ALint64SOFT, ALint64SOFT, ALint64SOFT) -DECL_FUNCEXT3(void, alSourcei64v,SOFT, ALuint, ALenum, const ALint64SOFT*) -DECL_FUNC3(void, alGetSourcef, ALuint, ALenum, ALfloat*) -DECL_FUNC5(void, alGetSource3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) -DECL_FUNC3(void, alGetSourcefv, ALuint, ALenum, ALfloat*) -DECL_FUNC3(void, alGetSourcei, ALuint, ALenum, ALint*) -DECL_FUNC5(void, alGetSource3i, ALuint, ALenum, ALint*, ALint*, ALint*) -DECL_FUNC3(void, alGetSourceiv, ALuint, ALenum, ALint*) -DECL_FUNCEXT3(void, alGetSourced,SOFT, ALuint, ALenum, ALdouble*) -DECL_FUNCEXT5(void, alGetSource3d,SOFT, ALuint, ALenum, ALdouble*, ALdouble*, ALdouble*) -DECL_FUNCEXT3(void, alGetSourcedv,SOFT, ALuint, ALenum, ALdouble*) -DECL_FUNCEXT3(void, alGetSourcei64,SOFT, ALuint, ALenum, ALint64SOFT*) -DECL_FUNCEXT5(void, alGetSource3i64,SOFT, ALuint, ALenum, ALint64SOFT*, ALint64SOFT*, ALint64SOFT*) -DECL_FUNCEXT3(void, alGetSourcei64v,SOFT, ALuint, ALenum, ALint64SOFT*) -DECL_FUNC3(void, alSourceQueueBuffers, ALuint, ALsizei, const ALuint*) -DECL_FUNC3(void, alSourceUnqueueBuffers, ALuint, ALsizei, ALuint*) +AL_API DECL_FUNC2(void, alGenSources, ALsizei, ALuint*) +AL_API DECL_FUNC2(void, alDeleteSources, ALsizei, const ALuint*) +AL_API DECL_FUNC1(ALboolean, alIsSource, ALuint) +AL_API DECL_FUNC1(void, alSourcePlay, ALuint) +AL_API DECL_FUNC1(void, alSourcePause, ALuint) +AL_API DECL_FUNC1(void, alSourceStop, ALuint) +AL_API DECL_FUNC1(void, alSourceRewind, ALuint) +AL_API DECL_FUNC2(void, alSourcePlayv, ALsizei, const ALuint*) +AL_API DECL_FUNC2(void, alSourcePausev, ALsizei, const ALuint*) +AL_API DECL_FUNC2(void, alSourceStopv, ALsizei, const ALuint*) +AL_API DECL_FUNC2(void, alSourceRewindv, ALsizei, const ALuint*) +AL_API DECL_FUNC3(void, alSourcef, ALuint, ALenum, ALfloat) +AL_API DECL_FUNC5(void, alSource3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) +AL_API DECL_FUNC3(void, alSourcefv, ALuint, ALenum, const ALfloat*) +AL_API DECL_FUNC3(void, alSourcei, ALuint, ALenum, ALint) +AL_API DECL_FUNC5(void, alSource3i, ALuint, ALenum, ALint, ALint, ALint) +AL_API DECL_FUNC3(void, alSourceiv, ALuint, ALenum, const ALint*) +AL_API DECL_FUNCEXT3(void, alSourced,SOFT, ALuint, ALenum, ALdouble) +AL_API DECL_FUNCEXT5(void, alSource3d,SOFT, ALuint, ALenum, ALdouble, ALdouble, ALdouble) +AL_API DECL_FUNCEXT3(void, alSourcedv,SOFT, ALuint, ALenum, const ALdouble*) +AL_API DECL_FUNCEXT3(void, alSourcei64,SOFT, ALuint, ALenum, ALint64SOFT) +AL_API DECL_FUNCEXT5(void, alSource3i64,SOFT, ALuint, ALenum, ALint64SOFT, ALint64SOFT, ALint64SOFT) +AL_API DECL_FUNCEXT3(void, alSourcei64v,SOFT, ALuint, ALenum, const ALint64SOFT*) +AL_API DECL_FUNC3(void, alGetSourcef, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC5(void, alGetSource3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) +AL_API DECL_FUNC3(void, alGetSourcefv, ALuint, ALenum, ALfloat*) +AL_API DECL_FUNC3(void, alGetSourcei, ALuint, ALenum, ALint*) +AL_API DECL_FUNC5(void, alGetSource3i, ALuint, ALenum, ALint*, ALint*, ALint*) +AL_API DECL_FUNC3(void, alGetSourceiv, ALuint, ALenum, ALint*) +AL_API DECL_FUNCEXT3(void, alGetSourced,SOFT, ALuint, ALenum, ALdouble*) +AL_API DECL_FUNCEXT5(void, alGetSource3d,SOFT, ALuint, ALenum, ALdouble*, ALdouble*, ALdouble*) +AL_API DECL_FUNCEXT3(void, alGetSourcedv,SOFT, ALuint, ALenum, ALdouble*) +AL_API DECL_FUNCEXT3(void, alGetSourcei64,SOFT, ALuint, ALenum, ALint64SOFT*) +AL_API DECL_FUNCEXT5(void, alGetSource3i64,SOFT, ALuint, ALenum, ALint64SOFT*, ALint64SOFT*, ALint64SOFT*) +AL_API DECL_FUNCEXT3(void, alGetSourcei64v,SOFT, ALuint, ALenum, ALint64SOFT*) +AL_API DECL_FUNC3(void, alSourceQueueBuffers, ALuint, ALsizei, const ALuint*) +AL_API DECL_FUNC3(void, alSourceUnqueueBuffers, ALuint, ALsizei, ALuint*) FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimeSOFT(ALuint source, ALint64SOFT time) START_API_FUNC { auto context = GetContextRef(); diff --git a/al/state.cpp b/al/state.cpp index 2367dbe4..60d18818 100644 --- a/al/state.cpp +++ b/al/state.cpp @@ -380,16 +380,14 @@ FORCE_ALIGN ALboolean AL_APIENTRY alIsEnabledDirect(ALCcontext *context, ALenum } #define DECL_GETFUNC(R, Name, Ext) \ -AL_API R AL_APIENTRY Name##Ext(ALenum pname) \ -START_API_FUNC \ +AL_API R AL_APIENTRY Name##Ext(ALenum pname) START_API_FUNC \ { \ R value{}; \ auto context = GetContextRef(); \ if(!context) UNLIKELY return value; \ Name##vDirect##Ext(GetContextRef().get(), pname, &value); \ return value; \ -} \ -END_API_FUNC \ +} END_API_FUNC \ FORCE_ALIGN R AL_APIENTRY Name##Direct##Ext(ALCcontext *context, ALenum pname) noexcept \ { \ R value{}; \ @@ -616,8 +614,7 @@ AL_API DECL_FUNCEXT(void, alDeferUpdates,SOFT) AL_API DECL_FUNCEXT(void, alProcessUpdates,SOFT) AL_API DECL_FUNCEXT2(const ALchar*, alGetStringi,SOFT, ALenum,ALsizei) -AL_API void AL_APIENTRY alDopplerVelocity(ALfloat value) -START_API_FUNC +AL_API void AL_APIENTRY alDopplerVelocity(ALfloat value) START_API_FUNC { ContextRef context{GetContextRef()}; if(!context) UNLIKELY return; @@ -636,8 +633,7 @@ START_API_FUNC context->mDopplerVelocity = value; UpdateProps(context.get()); } -} -END_API_FUNC +} END_API_FUNC void UpdateContextProps(ALCcontext *context) -- cgit v1.2.3 From 4a75de91f6cef6467dadfc307b231235d6c3394b Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Thu, 25 May 2023 09:34:50 -0700 Subject: Avoid duplicate NULL checks --- al/buffer.cpp | 24 +++++++++----------- al/listener.cpp | 70 +++++++++++++++++++++++++++------------------------------ 2 files changed, 44 insertions(+), 50 deletions(-) (limited to 'al/listener.cpp') diff --git a/al/buffer.cpp b/al/buffer.cpp index 7feac255..edca56ad 100644 --- a/al/buffer.cpp +++ b/al/buffer.cpp @@ -1060,18 +1060,18 @@ FORCE_ALIGN void AL_APIENTRY alBuffer3iDirect(ALCcontext *context, ALuint buffer FORCE_ALIGN void AL_APIENTRY alBufferivDirect(ALCcontext *context, ALuint buffer, ALenum param, const ALint *values) noexcept { - if(values) + if(!values) UNLIKELY + return context->setError(AL_INVALID_VALUE, "NULL pointer"); + + switch(param) { - switch(param) - { - case AL_UNPACK_BLOCK_ALIGNMENT_SOFT: - case AL_PACK_BLOCK_ALIGNMENT_SOFT: - case AL_AMBISONIC_LAYOUT_SOFT: - case AL_AMBISONIC_SCALING_SOFT: - case AL_UNPACK_AMBISONIC_ORDER_SOFT: - alBufferiDirect(context, buffer, param, values[0]); - return; - } + case AL_UNPACK_BLOCK_ALIGNMENT_SOFT: + case AL_PACK_BLOCK_ALIGNMENT_SOFT: + case AL_AMBISONIC_LAYOUT_SOFT: + case AL_AMBISONIC_SCALING_SOFT: + case AL_UNPACK_AMBISONIC_ORDER_SOFT: + alBufferiDirect(context, buffer, param, values[0]); + return; } ALCdevice *device{context->mALDevice.get()}; @@ -1080,8 +1080,6 @@ FORCE_ALIGN void AL_APIENTRY alBufferivDirect(ALCcontext *context, ALuint buffer ALbuffer *albuf = LookupBuffer(device, buffer); if(!albuf) UNLIKELY context->setError(AL_INVALID_NAME, "Invalid buffer ID %u", buffer); - else if(!values) UNLIKELY - context->setError(AL_INVALID_VALUE, "NULL pointer"); else switch(param) { case AL_LOOP_POINTS_SOFT: diff --git a/al/listener.cpp b/al/listener.cpp index f7e7d6f0..8d715a10 100644 --- a/al/listener.cpp +++ b/al/listener.cpp @@ -127,25 +127,22 @@ FORCE_ALIGN void AL_APIENTRY alListener3fDirect(ALCcontext *context, ALenum para FORCE_ALIGN void AL_APIENTRY alListenerfvDirect(ALCcontext *context, ALenum param, const ALfloat *values) noexcept { - if(values) + if(!values) UNLIKELY + return context->setError(AL_INVALID_VALUE, "NULL pointer"); + + switch(param) { - switch(param) - { - case AL_GAIN: - case AL_METERS_PER_UNIT: - alListenerfDirect(context, param, values[0]); - return; + case AL_GAIN: + case AL_METERS_PER_UNIT: + alListenerfDirect(context, param, values[0]); + return; - case AL_POSITION: - case AL_VELOCITY: - alListener3fDirect(context, param, values[0], values[1], values[2]); - return; - } + case AL_POSITION: + case AL_VELOCITY: + alListener3fDirect(context, param, values[0], values[1], values[2]); + return; } - if(!values) UNLIKELY - return context->setError(AL_INVALID_VALUE, "NULL pointer"); - ALlistener &listener = context->mListener; std::lock_guard _{context->mPropLock}; switch(param) @@ -203,33 +200,32 @@ FORCE_ALIGN void AL_APIENTRY alListener3iDirect(ALCcontext *context, ALenum para FORCE_ALIGN void AL_APIENTRY alListenerivDirect(ALCcontext *context, ALenum param, const ALint *values) noexcept { - if(values) + if(!values) UNLIKELY + return context->setError(AL_INVALID_VALUE, "NULL pointer"); + + switch(param) { - ALfloat fvals[6]; - switch(param) - { - case AL_POSITION: - case AL_VELOCITY: - alListener3fDirect(context, param, static_cast(values[0]), - static_cast(values[1]), static_cast(values[2])); - return; + case AL_POSITION: + case AL_VELOCITY: + alListener3fDirect(context, param, static_cast(values[0]), + static_cast(values[1]), static_cast(values[2])); + return; - case AL_ORIENTATION: - fvals[0] = static_cast(values[0]); - fvals[1] = static_cast(values[1]); - fvals[2] = static_cast(values[2]); - fvals[3] = static_cast(values[3]); - fvals[4] = static_cast(values[4]); - fvals[5] = static_cast(values[5]); - alListenerfvDirect(context, param, fvals); - return; - } + case AL_ORIENTATION: + const ALfloat fvals[6]{ + static_cast(values[0]), + static_cast(values[1]), + static_cast(values[2]), + static_cast(values[3]), + static_cast(values[4]), + static_cast(values[5]), + }; + alListenerfvDirect(context, param, fvals); + return; } std::lock_guard _{context->mPropLock}; - if(!values) UNLIKELY - context->setError(AL_INVALID_VALUE, "NULL pointer"); - else switch(param) + switch(param) { default: context->setError(AL_INVALID_ENUM, "Invalid listener integer-vector property"); -- cgit v1.2.3 From d8f34d616190bf26dd48c8778aa3311c73eca98b Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Tue, 25 Jul 2023 15:24:07 -0700 Subject: Declare functions closer to where they're needed This provides better code locality when calling implicit context functions that call their direct context variants. --- al/auxeffectslot.cpp | 23 ++++++++------- al/buffer.cpp | 51 +++++++++++++++++---------------- al/effect.cpp | 23 ++++++++------- al/filter.cpp | 23 ++++++++------- al/listener.cpp | 25 ++++++++--------- al/source.cpp | 79 ++++++++++++++++++++++++++-------------------------- al/state.cpp | 32 ++++++++++----------- 7 files changed, 125 insertions(+), 131 deletions(-) (limited to 'al/listener.cpp') diff --git a/al/auxeffectslot.cpp b/al/auxeffectslot.cpp index 8fd158e8..6f82db71 100644 --- a/al/auxeffectslot.cpp +++ b/al/auxeffectslot.cpp @@ -310,6 +310,7 @@ inline void UpdateProps(ALeffectslot *slot, ALCcontext *context) } // namespace +AL_API DECL_FUNC2(void, alGenAuxiliaryEffectSlots, ALsizei, ALuint*) FORCE_ALIGN void AL_APIENTRY alGenAuxiliaryEffectSlotsDirect(ALCcontext *context, ALsizei n, ALuint *effectslots) noexcept { @@ -350,6 +351,7 @@ FORCE_ALIGN void AL_APIENTRY alGenAuxiliaryEffectSlotsDirect(ALCcontext *context } } +AL_API DECL_FUNC2(void, alDeleteAuxiliaryEffectSlots, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alDeleteAuxiliaryEffectSlotsDirect(ALCcontext *context, ALsizei n, const ALuint *effectslots) noexcept { @@ -410,6 +412,7 @@ FORCE_ALIGN void AL_APIENTRY alDeleteAuxiliaryEffectSlotsDirect(ALCcontext *cont } } +AL_API DECL_FUNC1(ALboolean, alIsAuxiliaryEffectSlot, ALuint) FORCE_ALIGN ALboolean AL_APIENTRY alIsAuxiliaryEffectSlotDirect(ALCcontext *context, ALuint effectslot) noexcept { @@ -521,6 +524,7 @@ AL_API void AL_APIENTRY alAuxiliaryEffectSlotStopvSOFT(ALsizei n, const ALuint * } +AL_API DECL_FUNC3(void, alAuxiliaryEffectSloti, ALuint, ALenum, ALint) FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotiDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint value) noexcept { @@ -657,6 +661,7 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotiDirect(ALCcontext *context, A UpdateProps(slot, context); } +AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotiv, ALuint, ALenum, const ALint*) FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotivDirect(ALCcontext *context, ALuint effectslot, ALenum param, const ALint *values) noexcept { @@ -684,6 +689,7 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotivDirect(ALCcontext *context, } } +AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat) FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotfDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat value) noexcept { @@ -710,6 +716,7 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotfDirect(ALCcontext *context, A UpdateProps(slot, context); } +AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotfv, ALuint, ALenum, const ALfloat*) FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotfvDirect(ALCcontext *context, ALuint effectslot, ALenum param, const ALfloat *values) noexcept { @@ -734,6 +741,7 @@ FORCE_ALIGN void AL_APIENTRY alAuxiliaryEffectSlotfvDirect(ALCcontext *context, } +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSloti, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotiDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint *value) noexcept { @@ -771,6 +779,7 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotiDirect(ALCcontext *context } } +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotiv, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotivDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALint *values) noexcept { @@ -798,6 +807,7 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotivDirect(ALCcontext *contex } } +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotfDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat *value) noexcept { @@ -817,6 +827,7 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotfDirect(ALCcontext *context } } +AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotfv, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotfvDirect(ALCcontext *context, ALuint effectslot, ALenum param, ALfloat *values) noexcept { @@ -840,18 +851,6 @@ FORCE_ALIGN void AL_APIENTRY alGetAuxiliaryEffectSlotfvDirect(ALCcontext *contex } } -AL_API DECL_FUNC2(void, alGenAuxiliaryEffectSlots, ALsizei, ALuint*) -AL_API DECL_FUNC2(void, alDeleteAuxiliaryEffectSlots, ALsizei, const ALuint*) -AL_API DECL_FUNC1(ALboolean, alIsAuxiliaryEffectSlot, ALuint) -AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat) -AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotfv, ALuint, ALenum, const ALfloat*) -AL_API DECL_FUNC3(void, alAuxiliaryEffectSloti, ALuint, ALenum, ALint) -AL_API DECL_FUNC3(void, alAuxiliaryEffectSlotiv, ALuint, ALenum, const ALint*) -AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotf, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotfv, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSloti, ALuint, ALenum, ALint*) -AL_API DECL_FUNC3(void, alGetAuxiliaryEffectSlotiv, ALuint, ALenum, ALint*) - ALeffectslot::ALeffectslot(ALCcontext *context) { diff --git a/al/buffer.cpp b/al/buffer.cpp index 01f61793..58e8f375 100644 --- a/al/buffer.cpp +++ b/al/buffer.cpp @@ -636,6 +636,7 @@ std::optional DecomposeUserFormat(ALenum format) } // namespace +AL_API DECL_FUNC2(void, alGenBuffers, ALsizei, ALuint*) FORCE_ALIGN void AL_APIENTRY alGenBuffersDirect(ALCcontext *context, ALsizei n, ALuint *buffers) noexcept { if(n < 0) UNLIKELY @@ -671,6 +672,7 @@ FORCE_ALIGN void AL_APIENTRY alGenBuffersDirect(ALCcontext *context, ALsizei n, } } +AL_API DECL_FUNC2(void, alDeleteBuffers, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alDeleteBuffersDirect(ALCcontext *context, ALsizei n, const ALuint *buffers) noexcept { @@ -711,6 +713,7 @@ FORCE_ALIGN void AL_APIENTRY alDeleteBuffersDirect(ALCcontext *context, ALsizei std::for_each(buffers, buffers_end, delete_buffer); } +AL_API DECL_FUNC1(ALboolean, alIsBuffer, ALuint) FORCE_ALIGN ALboolean AL_APIENTRY alIsBufferDirect(ALCcontext *context, ALuint buffer) noexcept { ALCdevice *device{context->mALDevice.get()}; @@ -731,6 +734,7 @@ AL_API void AL_APIENTRY alBufferData(ALuint buffer, ALenum format, const ALvoid FORCE_ALIGN void AL_APIENTRY alBufferDataDirect(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq) noexcept { alBufferStorageDirectSOFT(context, buffer, format, data, size, freq, 0); } +AL_API DECL_FUNCEXT6(void, alBufferStorage,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei, ALbitfieldSOFT) FORCE_ALIGN void AL_APIENTRY alBufferStorageDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei size, ALsizei freq, ALbitfieldSOFT flags) noexcept { @@ -763,6 +767,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferStorageDirectSOFT(ALCcontext *context, ALui } } +DECL_FUNC5(void, alBufferDataStatic, ALuint, ALenum, ALvoid*, ALsizei, ALsizei) FORCE_ALIGN void AL_APIENTRY alBufferDataStaticDirect(ALCcontext *context, const ALuint buffer, ALenum format, ALvoid *data, ALsizei size, ALsizei freq) noexcept { @@ -785,6 +790,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferDataStaticDirect(ALCcontext *context, const static_cast(data), static_cast(size)); } +AL_API DECL_FUNCEXT4(void*, alMapBuffer,SOFT, ALuint, ALsizei, ALsizei, ALbitfieldSOFT) FORCE_ALIGN void* AL_APIENTRY alMapBufferDirectSOFT(ALCcontext *context, ALuint buffer, ALsizei offset, ALsizei length, ALbitfieldSOFT access) noexcept { @@ -835,6 +841,7 @@ FORCE_ALIGN void* AL_APIENTRY alMapBufferDirectSOFT(ALCcontext *context, ALuint return nullptr; } +AL_API DECL_FUNCEXT1(void, alUnmapBuffer,SOFT, ALuint) FORCE_ALIGN void AL_APIENTRY alUnmapBufferDirectSOFT(ALCcontext *context, ALuint buffer) noexcept { ALCdevice *device{context->mALDevice.get()}; @@ -853,6 +860,7 @@ FORCE_ALIGN void AL_APIENTRY alUnmapBufferDirectSOFT(ALCcontext *context, ALuint } } +AL_API DECL_FUNCEXT3(void, alFlushMappedBuffer,SOFT, ALuint, ALsizei, ALsizei) FORCE_ALIGN void AL_APIENTRY alFlushMappedBufferDirectSOFT(ALCcontext *context, ALuint buffer, ALsizei offset, ALsizei length) noexcept { @@ -881,6 +889,7 @@ FORCE_ALIGN void AL_APIENTRY alFlushMappedBufferDirectSOFT(ALCcontext *context, } } +AL_API DECL_FUNCEXT5(void, alBufferSubData,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei) FORCE_ALIGN void AL_APIENTRY alBufferSubDataDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, const ALvoid *data, ALsizei offset, ALsizei length) noexcept { @@ -937,6 +946,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferSubDataDirectSOFT(ALCcontext *context, ALui } +AL_API DECL_FUNC3(void, alBufferf, ALuint, ALenum, ALfloat) FORCE_ALIGN void AL_APIENTRY alBufferfDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat /*value*/) noexcept { @@ -952,6 +962,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferfDirect(ALCcontext *context, ALuint buffer, } } +AL_API DECL_FUNC5(void, alBuffer3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) FORCE_ALIGN void AL_APIENTRY alBuffer3fDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat /*value1*/, ALfloat /*value2*/, ALfloat /*value3*/) noexcept { @@ -967,6 +978,7 @@ FORCE_ALIGN void AL_APIENTRY alBuffer3fDirect(ALCcontext *context, ALuint buffer } } +AL_API DECL_FUNC3(void, alBufferfv, ALuint, ALenum, const ALfloat*) FORCE_ALIGN void AL_APIENTRY alBufferfvDirect(ALCcontext *context, ALuint buffer, ALenum param, const ALfloat *values) noexcept { @@ -985,6 +997,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferfvDirect(ALCcontext *context, ALuint buffer } +AL_API DECL_FUNC3(void, alBufferi, ALuint, ALenum, ALint) FORCE_ALIGN void AL_APIENTRY alBufferiDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint value) noexcept { @@ -1042,6 +1055,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferiDirect(ALCcontext *context, ALuint buffer, } } +AL_API DECL_FUNC5(void, alBuffer3i, ALuint, ALenum, ALint, ALint, ALint) FORCE_ALIGN void AL_APIENTRY alBuffer3iDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint /*value1*/, ALint /*value2*/, ALint /*value3*/) noexcept { @@ -1057,6 +1071,7 @@ FORCE_ALIGN void AL_APIENTRY alBuffer3iDirect(ALCcontext *context, ALuint buffer } } +AL_API DECL_FUNC3(void, alBufferiv, ALuint, ALenum, const ALint*) FORCE_ALIGN void AL_APIENTRY alBufferivDirect(ALCcontext *context, ALuint buffer, ALenum param, const ALint *values) noexcept { @@ -1103,6 +1118,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferivDirect(ALCcontext *context, ALuint buffer } +AL_API DECL_FUNC3(void, alGetBufferf, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetBufferfDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value) noexcept { @@ -1126,6 +1142,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferfDirect(ALCcontext *context, ALuint buff } } +AL_API DECL_FUNC5(void, alGetBuffer3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetBuffer3fDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) noexcept { @@ -1143,6 +1160,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBuffer3fDirect(ALCcontext *context, ALuint buf } } +AL_API DECL_FUNC3(void, alGetBufferfv, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetBufferfvDirect(ALCcontext *context, ALuint buffer, ALenum param, ALfloat *values) noexcept { @@ -1168,6 +1186,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferfvDirect(ALCcontext *context, ALuint buf } +AL_API DECL_FUNC3(void, alGetBufferi, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetBufferiDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *value) noexcept { @@ -1231,6 +1250,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferiDirect(ALCcontext *context, ALuint buff } } +AL_API DECL_FUNC5(void, alGetBuffer3i, ALuint, ALenum, ALint*, ALint*, ALint*) FORCE_ALIGN void AL_APIENTRY alGetBuffer3iDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *value1, ALint *value2, ALint *value3) noexcept { @@ -1247,6 +1267,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBuffer3iDirect(ALCcontext *context, ALuint buf } } +AL_API DECL_FUNC3(void, alGetBufferiv, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetBufferivDirect(ALCcontext *context, ALuint buffer, ALenum param, ALint *values) noexcept { @@ -1288,6 +1309,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferivDirect(ALCcontext *context, ALuint buf } +AL_API DECL_FUNCEXT5(void, alBufferCallback,SOFT, ALuint, ALenum, ALsizei, ALBUFFERCALLBACKTYPESOFT, ALvoid*) FORCE_ALIGN void AL_APIENTRY alBufferCallbackDirectSOFT(ALCcontext *context, ALuint buffer, ALenum format, ALsizei freq, ALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr) noexcept { @@ -1312,6 +1334,7 @@ FORCE_ALIGN void AL_APIENTRY alBufferCallbackDirectSOFT(ALCcontext *context, ALu } } +AL_API DECL_FUNCEXT3(void, alGetBufferPtr,SOFT, ALuint, ALenum, ALvoid**) FORCE_ALIGN void AL_APIENTRY alGetBufferPtrDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **value) noexcept { @@ -1336,6 +1359,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferPtrDirectSOFT(ALCcontext *context, ALuin } } +AL_API DECL_FUNCEXT5(void, alGetBuffer3Ptr,SOFT, ALuint, ALenum, ALvoid**, ALvoid**, ALvoid**) FORCE_ALIGN void AL_APIENTRY alGetBuffer3PtrDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **value1, ALvoid **value2, ALvoid **value3) noexcept { @@ -1352,6 +1376,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBuffer3PtrDirectSOFT(ALCcontext *context, ALui } } +AL_API DECL_FUNCEXT3(void, alGetBufferPtrv,SOFT, ALuint, ALenum, ALvoid**) FORCE_ALIGN void AL_APIENTRY alGetBufferPtrvDirectSOFT(ALCcontext *context, ALuint buffer, ALenum param, ALvoid **values) noexcept { @@ -1377,32 +1402,6 @@ FORCE_ALIGN void AL_APIENTRY alGetBufferPtrvDirectSOFT(ALCcontext *context, ALui } -AL_API DECL_FUNC2(void, alGenBuffers, ALsizei, ALuint*) -AL_API DECL_FUNC2(void, alDeleteBuffers, ALsizei, const ALuint*) -AL_API DECL_FUNC1(ALboolean, alIsBuffer, ALuint) -DECL_FUNC5(void, alBufferDataStatic, ALuint, ALenum, ALvoid*, ALsizei, ALsizei) -AL_API DECL_FUNCEXT5(void, alBufferCallback,SOFT, ALuint, ALenum, ALsizei, ALBUFFERCALLBACKTYPESOFT, ALvoid*) -AL_API DECL_FUNCEXT6(void, alBufferStorage,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei, ALbitfieldSOFT) -AL_API DECL_FUNCEXT4(void*, alMapBuffer,SOFT, ALuint, ALsizei, ALsizei, ALbitfieldSOFT) -AL_API DECL_FUNCEXT1(void, alUnmapBuffer,SOFT, ALuint) -AL_API DECL_FUNCEXT3(void, alFlushMappedBuffer,SOFT, ALuint, ALsizei, ALsizei) -AL_API DECL_FUNCEXT5(void, alBufferSubData,SOFT, ALuint, ALenum, const ALvoid*, ALsizei, ALsizei) -AL_API DECL_FUNC3(void, alBufferf, ALuint, ALenum, ALfloat) -AL_API DECL_FUNC5(void, alBuffer3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) -AL_API DECL_FUNC3(void, alBufferfv, ALuint, ALenum, const ALfloat*) -AL_API DECL_FUNC3(void, alBufferi, ALuint, ALenum, ALint) -AL_API DECL_FUNC5(void, alBuffer3i, ALuint, ALenum, ALint, ALint, ALint) -AL_API DECL_FUNC3(void, alBufferiv, ALuint, ALenum, const ALint*) -AL_API DECL_FUNC3(void, alGetBufferf, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC5(void, alGetBuffer3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) -AL_API DECL_FUNC3(void, alGetBufferfv, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetBufferi, ALuint, ALenum, ALint*) -AL_API DECL_FUNC5(void, alGetBuffer3i, ALuint, ALenum, ALint*, ALint*, ALint*) -AL_API DECL_FUNC3(void, alGetBufferiv, ALuint, ALenum, ALint*) -AL_API DECL_FUNCEXT3(void, alGetBufferPtr,SOFT, ALuint, ALenum, ALvoid**) -AL_API DECL_FUNCEXT5(void, alGetBuffer3Ptr,SOFT, ALuint, ALenum, ALvoid**, ALvoid**, ALvoid**) -AL_API DECL_FUNCEXT3(void, alGetBufferPtrv,SOFT, ALuint, ALenum, ALvoid**) - AL_API void AL_APIENTRY alBufferSamplesSOFT(ALuint /*buffer*/, ALuint /*samplerate*/, ALenum /*internalformat*/, ALsizei /*samples*/, ALenum /*channels*/, ALenum /*type*/, const ALvoid* /*data*/) noexcept diff --git a/al/effect.cpp b/al/effect.cpp index 041f0a2e..81cbb4c6 100644 --- a/al/effect.cpp +++ b/al/effect.cpp @@ -231,6 +231,7 @@ inline ALeffect *LookupEffect(ALCdevice *device, ALuint id) } // namespace +AL_API DECL_FUNC2(void, alGenEffects, ALsizei, ALuint*) FORCE_ALIGN void AL_APIENTRY alGenEffectsDirect(ALCcontext *context, ALsizei n, ALuint *effects) noexcept { if(n < 0) UNLIKELY @@ -266,6 +267,7 @@ FORCE_ALIGN void AL_APIENTRY alGenEffectsDirect(ALCcontext *context, ALsizei n, } } +AL_API DECL_FUNC2(void, alDeleteEffects, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alDeleteEffectsDirect(ALCcontext *context, ALsizei n, const ALuint *effects) noexcept { @@ -297,6 +299,7 @@ FORCE_ALIGN void AL_APIENTRY alDeleteEffectsDirect(ALCcontext *context, ALsizei std::for_each(effects, effects_end, delete_effect); } +AL_API DECL_FUNC1(ALboolean, alIsEffect, ALuint) FORCE_ALIGN ALboolean AL_APIENTRY alIsEffectDirect(ALCcontext *context, ALuint effect) noexcept { ALCdevice *device{context->mALDevice.get()}; @@ -306,6 +309,7 @@ FORCE_ALIGN ALboolean AL_APIENTRY alIsEffectDirect(ALCcontext *context, ALuint e return AL_FALSE; } +AL_API DECL_FUNC3(void, alEffecti, ALuint, ALenum, ALint) FORCE_ALIGN void AL_APIENTRY alEffectiDirect(ALCcontext *context, ALuint effect, ALenum param, ALint value) noexcept { @@ -345,6 +349,7 @@ FORCE_ALIGN void AL_APIENTRY alEffectiDirect(ALCcontext *context, ALuint effect, } } +AL_API DECL_FUNC3(void, alEffectiv, ALuint, ALenum, const ALint*) FORCE_ALIGN void AL_APIENTRY alEffectivDirect(ALCcontext *context, ALuint effect, ALenum param, const ALint *values) noexcept { @@ -371,6 +376,7 @@ FORCE_ALIGN void AL_APIENTRY alEffectivDirect(ALCcontext *context, ALuint effect } } +AL_API DECL_FUNC3(void, alEffectf, ALuint, ALenum, ALfloat) FORCE_ALIGN void AL_APIENTRY alEffectfDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat value) noexcept { @@ -390,6 +396,7 @@ FORCE_ALIGN void AL_APIENTRY alEffectfDirect(ALCcontext *context, ALuint effect, } } +AL_API DECL_FUNC3(void, alEffectfv, ALuint, ALenum, const ALfloat*) FORCE_ALIGN void AL_APIENTRY alEffectfvDirect(ALCcontext *context, ALuint effect, ALenum param, const ALfloat *values) noexcept { @@ -409,6 +416,7 @@ FORCE_ALIGN void AL_APIENTRY alEffectfvDirect(ALCcontext *context, ALuint effect } } +AL_API DECL_FUNC3(void, alGetEffecti, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetEffectiDirect(ALCcontext *context, ALuint effect, ALenum param, ALint *value) noexcept { @@ -430,6 +438,7 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectiDirect(ALCcontext *context, ALuint effe } } +AL_API DECL_FUNC3(void, alGetEffectiv, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetEffectivDirect(ALCcontext *context, ALuint effect, ALenum param, ALint *values) noexcept { @@ -456,6 +465,7 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectivDirect(ALCcontext *context, ALuint eff } } +AL_API DECL_FUNC3(void, alGetEffectf, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetEffectfDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat *value) noexcept { @@ -475,6 +485,7 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectfDirect(ALCcontext *context, ALuint effe } } +AL_API DECL_FUNC3(void, alGetEffectfv, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetEffectfvDirect(ALCcontext *context, ALuint effect, ALenum param, ALfloat *values) noexcept { @@ -494,18 +505,6 @@ FORCE_ALIGN void AL_APIENTRY alGetEffectfvDirect(ALCcontext *context, ALuint eff } } -AL_API DECL_FUNC2(void, alGenEffects, ALsizei, ALuint*) -AL_API DECL_FUNC2(void, alDeleteEffects, ALsizei, const ALuint*) -AL_API DECL_FUNC1(ALboolean, alIsEffect, ALuint) -AL_API DECL_FUNC3(void, alEffectf, ALuint, ALenum, ALfloat) -AL_API DECL_FUNC3(void, alEffectfv, ALuint, ALenum, const ALfloat*) -AL_API DECL_FUNC3(void, alEffecti, ALuint, ALenum, ALint) -AL_API DECL_FUNC3(void, alEffectiv, ALuint, ALenum, const ALint*) -AL_API DECL_FUNC3(void, alGetEffectf, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetEffectfv, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetEffecti, ALuint, ALenum, ALint*) -AL_API DECL_FUNC3(void, alGetEffectiv, ALuint, ALenum, ALint*) - void InitEffect(ALeffect *effect) { diff --git a/al/filter.cpp b/al/filter.cpp index ed1a86c9..9ad57b54 100644 --- a/al/filter.cpp +++ b/al/filter.cpp @@ -399,6 +399,7 @@ void FilterTable::getParamfv(const ALfilter *filter, ALenum { getParamf(filter, param, vals); } +AL_API DECL_FUNC2(void, alGenFilters, ALsizei, ALuint*) FORCE_ALIGN void AL_APIENTRY alGenFiltersDirect(ALCcontext *context, ALsizei n, ALuint *filters) noexcept { if(n < 0) UNLIKELY @@ -434,6 +435,7 @@ FORCE_ALIGN void AL_APIENTRY alGenFiltersDirect(ALCcontext *context, ALsizei n, } } +AL_API DECL_FUNC2(void, alDeleteFilters, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alDeleteFiltersDirect(ALCcontext *context, ALsizei n, const ALuint *filters) noexcept { @@ -465,6 +467,7 @@ FORCE_ALIGN void AL_APIENTRY alDeleteFiltersDirect(ALCcontext *context, ALsizei std::for_each(filters, filters_end, delete_filter); } +AL_API DECL_FUNC1(ALboolean, alIsFilter, ALuint) FORCE_ALIGN ALboolean AL_APIENTRY alIsFilterDirect(ALCcontext *context, ALuint filter) noexcept { ALCdevice *device{context->mALDevice.get()}; @@ -475,6 +478,7 @@ FORCE_ALIGN ALboolean AL_APIENTRY alIsFilterDirect(ALCcontext *context, ALuint f } +AL_API DECL_FUNC3(void, alFilteri, ALuint, ALenum, ALint) FORCE_ALIGN void AL_APIENTRY alFilteriDirect(ALCcontext *context, ALuint filter, ALenum param, ALint value) noexcept { @@ -503,6 +507,7 @@ FORCE_ALIGN void AL_APIENTRY alFilteriDirect(ALCcontext *context, ALuint filter, } } +AL_API DECL_FUNC3(void, alFilteriv, ALuint, ALenum, const ALint*) FORCE_ALIGN void AL_APIENTRY alFilterivDirect(ALCcontext *context, ALuint filter, ALenum param, const ALint *values) noexcept { @@ -530,6 +535,7 @@ FORCE_ALIGN void AL_APIENTRY alFilterivDirect(ALCcontext *context, ALuint filter } } +AL_API DECL_FUNC3(void, alFilterf, ALuint, ALenum, ALfloat) FORCE_ALIGN void AL_APIENTRY alFilterfDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat value) noexcept { @@ -550,6 +556,7 @@ FORCE_ALIGN void AL_APIENTRY alFilterfDirect(ALCcontext *context, ALuint filter, } } +AL_API DECL_FUNC3(void, alFilterfv, ALuint, ALenum, const ALfloat*) FORCE_ALIGN void AL_APIENTRY alFilterfvDirect(ALCcontext *context, ALuint filter, ALenum param, const ALfloat *values) noexcept { @@ -570,6 +577,7 @@ FORCE_ALIGN void AL_APIENTRY alFilterfvDirect(ALCcontext *context, ALuint filter } } +AL_API DECL_FUNC3(void, alGetFilteri, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetFilteriDirect(ALCcontext *context, ALuint filter, ALenum param, ALint *value) noexcept { @@ -592,6 +600,7 @@ FORCE_ALIGN void AL_APIENTRY alGetFilteriDirect(ALCcontext *context, ALuint filt } } +AL_API DECL_FUNC3(void, alGetFilteriv, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetFilterivDirect(ALCcontext *context, ALuint filter, ALenum param, ALint *values) noexcept { @@ -619,6 +628,7 @@ FORCE_ALIGN void AL_APIENTRY alGetFilterivDirect(ALCcontext *context, ALuint fil } } +AL_API DECL_FUNC3(void, alGetFilterf, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetFilterfDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat *value) noexcept { @@ -639,6 +649,7 @@ FORCE_ALIGN void AL_APIENTRY alGetFilterfDirect(ALCcontext *context, ALuint filt } } +AL_API DECL_FUNC3(void, alGetFilterfv, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetFilterfvDirect(ALCcontext *context, ALuint filter, ALenum param, ALfloat *values) noexcept { @@ -659,18 +670,6 @@ FORCE_ALIGN void AL_APIENTRY alGetFilterfvDirect(ALCcontext *context, ALuint fil } } -AL_API DECL_FUNC2(void, alGenFilters, ALsizei, ALuint*) -AL_API DECL_FUNC2(void, alDeleteFilters, ALsizei, const ALuint*) -AL_API DECL_FUNC1(ALboolean, alIsFilter, ALuint) -AL_API DECL_FUNC3(void, alFilterf, ALuint, ALenum, ALfloat) -AL_API DECL_FUNC3(void, alFilterfv, ALuint, ALenum, const ALfloat*) -AL_API DECL_FUNC3(void, alFilteri, ALuint, ALenum, ALint) -AL_API DECL_FUNC3(void, alFilteriv, ALuint, ALenum, const ALint*) -AL_API DECL_FUNC3(void, alGetFilterf, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetFilterfv, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetFilteri, ALuint, ALenum, ALint*) -AL_API DECL_FUNC3(void, alGetFilteriv, ALuint, ALenum, ALint*) - FilterSubList::~FilterSubList() { diff --git a/al/listener.cpp b/al/listener.cpp index 8d715a10..ea2ebb3f 100644 --- a/al/listener.cpp +++ b/al/listener.cpp @@ -69,6 +69,7 @@ inline void CommitAndUpdateProps(ALCcontext *context) } // namespace +AL_API DECL_FUNC2(void, alListenerf, ALenum, ALfloat) FORCE_ALIGN void AL_APIENTRY alListenerfDirect(ALCcontext *context, ALenum param, ALfloat value) noexcept { ALlistener &listener = context->mListener; @@ -94,6 +95,7 @@ FORCE_ALIGN void AL_APIENTRY alListenerfDirect(ALCcontext *context, ALenum param } } +AL_API DECL_FUNC4(void, alListener3f, ALenum, ALfloat, ALfloat, ALfloat) FORCE_ALIGN void AL_APIENTRY alListener3fDirect(ALCcontext *context, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) noexcept { @@ -124,6 +126,7 @@ FORCE_ALIGN void AL_APIENTRY alListener3fDirect(ALCcontext *context, ALenum para } } +AL_API DECL_FUNC2(void, alListenerfv, ALenum, const ALfloat*) FORCE_ALIGN void AL_APIENTRY alListenerfvDirect(ALCcontext *context, ALenum param, const ALfloat *values) noexcept { @@ -167,6 +170,7 @@ FORCE_ALIGN void AL_APIENTRY alListenerfvDirect(ALCcontext *context, ALenum para } +AL_API DECL_FUNC2(void, alListeneri, ALenum, ALint) FORCE_ALIGN void AL_APIENTRY alListeneriDirect(ALCcontext *context, ALenum param, ALint /*value*/) noexcept { std::lock_guard _{context->mPropLock}; @@ -177,6 +181,7 @@ FORCE_ALIGN void AL_APIENTRY alListeneriDirect(ALCcontext *context, ALenum param } } +AL_API DECL_FUNC4(void, alListener3i, ALenum, ALint, ALint, ALint) FORCE_ALIGN void AL_APIENTRY alListener3iDirect(ALCcontext *context, ALenum param, ALint value1, ALint value2, ALint value3) noexcept { @@ -197,6 +202,7 @@ FORCE_ALIGN void AL_APIENTRY alListener3iDirect(ALCcontext *context, ALenum para } } +AL_API DECL_FUNC2(void, alListeneriv, ALenum, const ALint*) FORCE_ALIGN void AL_APIENTRY alListenerivDirect(ALCcontext *context, ALenum param, const ALint *values) noexcept { @@ -233,6 +239,7 @@ FORCE_ALIGN void AL_APIENTRY alListenerivDirect(ALCcontext *context, ALenum para } +AL_API DECL_FUNC2(void, alGetListenerf, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetListenerfDirect(ALCcontext *context, ALenum param, ALfloat *value) noexcept { @@ -255,6 +262,7 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerfDirect(ALCcontext *context, ALenum pa } } +AL_API DECL_FUNC4(void, alGetListener3f, ALenum, ALfloat*, ALfloat*, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetListener3fDirect(ALCcontext *context, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) noexcept { @@ -281,6 +289,7 @@ FORCE_ALIGN void AL_APIENTRY alGetListener3fDirect(ALCcontext *context, ALenum p } } +AL_API DECL_FUNC2(void, alGetListenerfv, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetListenerfvDirect(ALCcontext *context, ALenum param, ALfloat *values) noexcept { @@ -319,6 +328,7 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerfvDirect(ALCcontext *context, ALenum p } +AL_API DECL_FUNC2(void, alGetListeneri, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetListeneriDirect(ALCcontext *context, ALenum param, ALint *value) noexcept { std::lock_guard _{context->mPropLock}; @@ -331,6 +341,7 @@ FORCE_ALIGN void AL_APIENTRY alGetListeneriDirect(ALCcontext *context, ALenum pa } } +AL_API DECL_FUNC4(void, alGetListener3i, ALenum, ALint*, ALint*, ALint*) FORCE_ALIGN void AL_APIENTRY alGetListener3iDirect(ALCcontext *context, ALenum param, ALint *value1, ALint *value2, ALint *value3) noexcept { @@ -357,6 +368,7 @@ FORCE_ALIGN void AL_APIENTRY alGetListener3iDirect(ALCcontext *context, ALenum p } } +AL_API DECL_FUNC2(void, alGetListeneriv, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetListenerivDirect(ALCcontext *context, ALenum param, ALint *values) noexcept { @@ -388,16 +400,3 @@ FORCE_ALIGN void AL_APIENTRY alGetListenerivDirect(ALCcontext *context, ALenum p context->setError(AL_INVALID_ENUM, "Invalid listener integer-vector property"); } } - -AL_API DECL_FUNC2(void, alListenerf, ALenum, ALfloat) -AL_API DECL_FUNC4(void, alListener3f, ALenum, ALfloat, ALfloat, ALfloat) -AL_API DECL_FUNC2(void, alListenerfv, ALenum, const ALfloat*) -AL_API DECL_FUNC2(void, alListeneri, ALenum, ALint) -AL_API DECL_FUNC4(void, alListener3i, ALenum, ALint, ALint, ALint) -AL_API DECL_FUNC2(void, alListeneriv, ALenum, const ALint*) -AL_API DECL_FUNC2(void, alGetListenerf, ALenum, ALfloat*) -AL_API DECL_FUNC4(void, alGetListener3f, ALenum, ALfloat*, ALfloat*, ALfloat*) -AL_API DECL_FUNC2(void, alGetListenerfv, ALenum, ALfloat*) -AL_API DECL_FUNC2(void, alGetListeneri, ALenum, ALint*) -AL_API DECL_FUNC4(void, alGetListener3i, ALenum, ALint*, ALint*, ALint*) -AL_API DECL_FUNC2(void, alGetListeneriv, ALenum, ALint*) diff --git a/al/source.cpp b/al/source.cpp index adea9715..70182ec8 100644 --- a/al/source.cpp +++ b/al/source.cpp @@ -2625,6 +2625,7 @@ void StartSources(ALCcontext *const context, const al::span srchandle } // namespace +AL_API DECL_FUNC2(void, alGenSources, ALsizei, ALuint*) FORCE_ALIGN void AL_APIENTRY alGenSourcesDirect(ALCcontext *context, ALsizei n, ALuint *sources) noexcept { if(n < 0) UNLIKELY @@ -2670,6 +2671,7 @@ FORCE_ALIGN void AL_APIENTRY alGenSourcesDirect(ALCcontext *context, ALsizei n, } } +AL_API DECL_FUNC2(void, alDeleteSources, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alDeleteSourcesDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { @@ -2697,6 +2699,7 @@ FORCE_ALIGN void AL_APIENTRY alDeleteSourcesDirect(ALCcontext *context, ALsizei std::for_each(sources, sources_end, delete_source); } +AL_API DECL_FUNC1(ALboolean, alIsSource, ALuint) FORCE_ALIGN ALboolean AL_APIENTRY alIsSourceDirect(ALCcontext *context, ALuint source) noexcept { std::lock_guard _{context->mSourceLock}; @@ -2706,6 +2709,7 @@ FORCE_ALIGN ALboolean AL_APIENTRY alIsSourceDirect(ALCcontext *context, ALuint s } +AL_API DECL_FUNC3(void, alSourcef, ALuint, ALenum, ALfloat) FORCE_ALIGN void AL_APIENTRY alSourcefDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat value) noexcept { @@ -2719,6 +2723,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcefDirect(ALCcontext *context, ALuint source, al::span{&value, 1u}); } +AL_API DECL_FUNC5(void, alSource3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) FORCE_ALIGN void AL_APIENTRY alSource3fDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3) noexcept { @@ -2732,6 +2737,7 @@ FORCE_ALIGN void AL_APIENTRY alSource3fDirect(ALCcontext *context, ALuint source SetProperty(Source, context, static_cast(param), al::span{fvals}); } +AL_API DECL_FUNC3(void, alSourcefv, ALuint, ALenum, const ALfloat*) FORCE_ALIGN void AL_APIENTRY alSourcefvDirect(ALCcontext *context, ALuint source, ALenum param, const ALfloat *values) noexcept { @@ -2748,6 +2754,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcefvDirect(ALCcontext *context, ALuint source } +AL_API DECL_FUNCEXT3(void, alSourced,SOFT, ALuint, ALenum, ALdouble) FORCE_ALIGN void AL_APIENTRY alSourcedDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble value) noexcept { @@ -2761,6 +2768,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcedDirectSOFT(ALCcontext *context, ALuint sou al::span{&value, 1}); } +AL_API DECL_FUNCEXT5(void, alSource3d,SOFT, ALuint, ALenum, ALdouble, ALdouble, ALdouble) FORCE_ALIGN void AL_APIENTRY alSource3dDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble value1, ALdouble value2, ALdouble value3) noexcept { @@ -2774,6 +2782,7 @@ FORCE_ALIGN void AL_APIENTRY alSource3dDirectSOFT(ALCcontext *context, ALuint so SetProperty(Source, context, static_cast(param), al::span{dvals}); } +AL_API DECL_FUNCEXT3(void, alSourcedv,SOFT, ALuint, ALenum, const ALdouble*) FORCE_ALIGN void AL_APIENTRY alSourcedvDirectSOFT(ALCcontext *context, ALuint source, ALenum param, const ALdouble *values) noexcept { @@ -2790,6 +2799,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcedvDirectSOFT(ALCcontext *context, ALuint so } +AL_API DECL_FUNC3(void, alSourcei, ALuint, ALenum, ALint) FORCE_ALIGN void AL_APIENTRY alSourceiDirect(ALCcontext *context, ALuint source, ALenum param, ALint value) noexcept { @@ -2803,6 +2813,7 @@ FORCE_ALIGN void AL_APIENTRY alSourceiDirect(ALCcontext *context, ALuint source, al::span{&value, 1u}); } +AL_API DECL_FUNC5(void, alSource3i, ALuint, ALenum, ALint, ALint, ALint) FORCE_ALIGN void AL_APIENTRY alSource3iDirect(ALCcontext *context, ALuint source, ALenum param, ALint value1, ALint value2, ALint value3) noexcept { @@ -2816,6 +2827,7 @@ FORCE_ALIGN void AL_APIENTRY alSource3iDirect(ALCcontext *context, ALuint source SetProperty(Source, context, static_cast(param), al::span{ivals}); } +AL_API DECL_FUNC3(void, alSourceiv, ALuint, ALenum, const ALint*) FORCE_ALIGN void AL_APIENTRY alSourceivDirect(ALCcontext *context, ALuint source, ALenum param, const ALint *values) noexcept { @@ -2832,6 +2844,7 @@ FORCE_ALIGN void AL_APIENTRY alSourceivDirect(ALCcontext *context, ALuint source } +AL_API DECL_FUNCEXT3(void, alSourcei64,SOFT, ALuint, ALenum, ALint64SOFT) FORCE_ALIGN void AL_APIENTRY alSourcei64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT value) noexcept { @@ -2845,6 +2858,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcei64DirectSOFT(ALCcontext *context, ALuint s al::span{&value, 1u}); } +AL_API DECL_FUNCEXT5(void, alSource3i64,SOFT, ALuint, ALenum, ALint64SOFT, ALint64SOFT, ALint64SOFT) FORCE_ALIGN void AL_APIENTRY alSource3i64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT value1, ALint64SOFT value2, ALint64SOFT value3) noexcept { @@ -2858,6 +2872,7 @@ FORCE_ALIGN void AL_APIENTRY alSource3i64DirectSOFT(ALCcontext *context, ALuint SetProperty(Source, context, static_cast(param), al::span{i64vals}); } +AL_API DECL_FUNCEXT3(void, alSourcei64v,SOFT, ALuint, ALenum, const ALint64SOFT*) FORCE_ALIGN void AL_APIENTRY alSourcei64vDirectSOFT(ALCcontext *context, ALuint source, ALenum param, const ALint64SOFT *values) noexcept { @@ -2874,6 +2889,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcei64vDirectSOFT(ALCcontext *context, ALuint } +AL_API DECL_FUNC3(void, alGetSourcef, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetSourcefDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *value) noexcept { @@ -2888,6 +2904,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcefDirect(ALCcontext *context, ALuint sour al::span{value, 1}); } +AL_API DECL_FUNC5(void, alGetSource3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetSource3fDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3) noexcept { @@ -2907,6 +2924,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3fDirect(ALCcontext *context, ALuint sou } } +AL_API DECL_FUNC3(void, alGetSourcefv, ALuint, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetSourcefvDirect(ALCcontext *context, ALuint source, ALenum param, ALfloat *values) noexcept { @@ -2923,6 +2941,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcefvDirect(ALCcontext *context, ALuint sou } +AL_API DECL_FUNCEXT3(void, alGetSourced,SOFT, ALuint, ALenum, ALdouble*) FORCE_ALIGN void AL_APIENTRY alGetSourcedDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *value) noexcept { @@ -2937,6 +2956,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcedDirectSOFT(ALCcontext *context, ALuint al::span{value, 1u}); } +AL_API DECL_FUNCEXT5(void, alGetSource3d,SOFT, ALuint, ALenum, ALdouble*, ALdouble*, ALdouble*) FORCE_ALIGN void AL_APIENTRY alGetSource3dDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *value1, ALdouble *value2, ALdouble *value3) noexcept { @@ -2956,6 +2976,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3dDirectSOFT(ALCcontext *context, ALuint } } +AL_API DECL_FUNCEXT3(void, alGetSourcedv,SOFT, ALuint, ALenum, ALdouble*) FORCE_ALIGN void AL_APIENTRY alGetSourcedvDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALdouble *values) noexcept { @@ -2972,6 +2993,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcedvDirectSOFT(ALCcontext *context, ALuint } +AL_API DECL_FUNC3(void, alGetSourcei, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetSourceiDirect(ALCcontext *context, ALuint source, ALenum param, ALint *value) noexcept { @@ -2986,6 +3008,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourceiDirect(ALCcontext *context, ALuint sour al::span{value, 1u}); } +AL_API DECL_FUNC5(void, alGetSource3i, ALuint, ALenum, ALint*, ALint*, ALint*) FORCE_ALIGN void AL_APIENTRY alGetSource3iDirect(ALCcontext *context, ALuint source, ALenum param, ALint *value1, ALint *value2, ALint *value3) noexcept { @@ -3005,6 +3028,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3iDirect(ALCcontext *context, ALuint sou } } +AL_API DECL_FUNC3(void, alGetSourceiv, ALuint, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetSourceivDirect(ALCcontext *context, ALuint source, ALenum param, ALint *values) noexcept { @@ -3021,6 +3045,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourceivDirect(ALCcontext *context, ALuint sou } +AL_API DECL_FUNCEXT3(void, alGetSourcei64,SOFT, ALuint, ALenum, ALint64SOFT*) FORCE_ALIGN void AL_APIENTRY alGetSourcei64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *value) noexcept { std::lock_guard _{context->mSourceLock}; @@ -3034,6 +3059,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcei64DirectSOFT(ALCcontext *context, ALuin al::span{value, 1u}); } +AL_API DECL_FUNCEXT5(void, alGetSource3i64,SOFT, ALuint, ALenum, ALint64SOFT*, ALint64SOFT*, ALint64SOFT*) FORCE_ALIGN void AL_APIENTRY alGetSource3i64DirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *value1, ALint64SOFT *value2, ALint64SOFT *value3) noexcept { @@ -3053,6 +3079,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSource3i64DirectSOFT(ALCcontext *context, ALui } } +AL_API DECL_FUNCEXT3(void, alGetSourcei64v,SOFT, ALuint, ALenum, ALint64SOFT*) FORCE_ALIGN void AL_APIENTRY alGetSourcei64vDirectSOFT(ALCcontext *context, ALuint source, ALenum param, ALint64SOFT *values) noexcept { @@ -3069,6 +3096,7 @@ FORCE_ALIGN void AL_APIENTRY alGetSourcei64vDirectSOFT(ALCcontext *context, ALui } +AL_API DECL_FUNC1(void, alSourcePlay, ALuint) FORCE_ALIGN void AL_APIENTRY alSourcePlayDirect(ALCcontext *context, ALuint source) noexcept { std::lock_guard _{context->mSourceLock}; @@ -3079,6 +3107,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcePlayDirect(ALCcontext *context, ALuint sour StartSources(context, {&srchandle, 1}); } +FORCE_ALIGN DECL_FUNCEXT2(void, alSourcePlayAtTime,SOFT, ALuint, ALint64SOFT) FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimeDirectSOFT(ALCcontext *context, ALuint source, ALint64SOFT start_time) noexcept { @@ -3093,6 +3122,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimeDirectSOFT(ALCcontext *context, A StartSources(context, {&srchandle, 1}, nanoseconds{start_time}); } +AL_API DECL_FUNC2(void, alSourcePlayv, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alSourcePlayvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { @@ -3123,6 +3153,7 @@ FORCE_ALIGN void AL_APIENTRY alSourcePlayvDirect(ALCcontext *context, ALsizei n, StartSources(context, srchandles); } +FORCE_ALIGN DECL_FUNCEXT3(void, alSourcePlayAtTimev,SOFT, ALsizei, const ALuint*, ALint64SOFT) FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimevDirectSOFT(ALCcontext *context, ALsizei n, const ALuint *sources, ALint64SOFT start_time) noexcept { @@ -3157,9 +3188,11 @@ FORCE_ALIGN void AL_APIENTRY alSourcePlayAtTimevDirectSOFT(ALCcontext *context, } +AL_API DECL_FUNC1(void, alSourcePause, ALuint) FORCE_ALIGN void AL_APIENTRY alSourcePauseDirect(ALCcontext *context, ALuint source) noexcept { alSourcePausevDirect(context, 1, &source); } +AL_API DECL_FUNC2(void, alSourcePausev, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alSourcePausevDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { @@ -3227,9 +3260,11 @@ FORCE_ALIGN void AL_APIENTRY alSourcePausevDirect(ALCcontext *context, ALsizei n } +AL_API DECL_FUNC1(void, alSourceStop, ALuint) FORCE_ALIGN void AL_APIENTRY alSourceStopDirect(ALCcontext *context, ALuint source) noexcept { alSourceStopvDirect(context, 1, &source); } +AL_API DECL_FUNC2(void, alSourceStopv, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alSourceStopvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { @@ -3284,9 +3319,11 @@ FORCE_ALIGN void AL_APIENTRY alSourceStopvDirect(ALCcontext *context, ALsizei n, } +AL_API DECL_FUNC1(void, alSourceRewind, ALuint) FORCE_ALIGN void AL_APIENTRY alSourceRewindDirect(ALCcontext *context, ALuint source) noexcept { alSourceRewindvDirect(context, 1, &source); } +AL_API DECL_FUNC2(void, alSourceRewindv, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alSourceRewindvDirect(ALCcontext *context, ALsizei n, const ALuint *sources) noexcept { @@ -3343,6 +3380,7 @@ FORCE_ALIGN void AL_APIENTRY alSourceRewindvDirect(ALCcontext *context, ALsizei } +AL_API DECL_FUNC3(void, alSourceQueueBuffers, ALuint, ALsizei, const ALuint*) FORCE_ALIGN void AL_APIENTRY alSourceQueueBuffersDirect(ALCcontext *context, ALuint src, ALsizei nb, const ALuint *buffers) noexcept { @@ -3467,6 +3505,7 @@ FORCE_ALIGN void AL_APIENTRY alSourceQueueBuffersDirect(ALCcontext *context, ALu } } +AL_API DECL_FUNC3(void, alSourceUnqueueBuffers, ALuint, ALsizei, ALuint*) FORCE_ALIGN void AL_APIENTRY alSourceUnqueueBuffersDirect(ALCcontext *context, ALuint src, ALsizei nb, ALuint *buffers) noexcept { @@ -3517,46 +3556,6 @@ FORCE_ALIGN void AL_APIENTRY alSourceUnqueueBuffersDirect(ALCcontext *context, A } -AL_API DECL_FUNC2(void, alGenSources, ALsizei, ALuint*) -AL_API DECL_FUNC2(void, alDeleteSources, ALsizei, const ALuint*) -AL_API DECL_FUNC1(ALboolean, alIsSource, ALuint) -AL_API DECL_FUNC1(void, alSourcePlay, ALuint) -AL_API DECL_FUNC1(void, alSourcePause, ALuint) -AL_API DECL_FUNC1(void, alSourceStop, ALuint) -AL_API DECL_FUNC1(void, alSourceRewind, ALuint) -AL_API DECL_FUNC2(void, alSourcePlayv, ALsizei, const ALuint*) -AL_API DECL_FUNC2(void, alSourcePausev, ALsizei, const ALuint*) -AL_API DECL_FUNC2(void, alSourceStopv, ALsizei, const ALuint*) -AL_API DECL_FUNC2(void, alSourceRewindv, ALsizei, const ALuint*) -AL_API DECL_FUNC3(void, alSourcef, ALuint, ALenum, ALfloat) -AL_API DECL_FUNC5(void, alSource3f, ALuint, ALenum, ALfloat, ALfloat, ALfloat) -AL_API DECL_FUNC3(void, alSourcefv, ALuint, ALenum, const ALfloat*) -AL_API DECL_FUNC3(void, alSourcei, ALuint, ALenum, ALint) -AL_API DECL_FUNC5(void, alSource3i, ALuint, ALenum, ALint, ALint, ALint) -AL_API DECL_FUNC3(void, alSourceiv, ALuint, ALenum, const ALint*) -AL_API DECL_FUNCEXT3(void, alSourced,SOFT, ALuint, ALenum, ALdouble) -AL_API DECL_FUNCEXT5(void, alSource3d,SOFT, ALuint, ALenum, ALdouble, ALdouble, ALdouble) -AL_API DECL_FUNCEXT3(void, alSourcedv,SOFT, ALuint, ALenum, const ALdouble*) -AL_API DECL_FUNCEXT3(void, alSourcei64,SOFT, ALuint, ALenum, ALint64SOFT) -AL_API DECL_FUNCEXT5(void, alSource3i64,SOFT, ALuint, ALenum, ALint64SOFT, ALint64SOFT, ALint64SOFT) -AL_API DECL_FUNCEXT3(void, alSourcei64v,SOFT, ALuint, ALenum, const ALint64SOFT*) -AL_API DECL_FUNC3(void, alGetSourcef, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC5(void, alGetSource3f, ALuint, ALenum, ALfloat*, ALfloat*, ALfloat*) -AL_API DECL_FUNC3(void, alGetSourcefv, ALuint, ALenum, ALfloat*) -AL_API DECL_FUNC3(void, alGetSourcei, ALuint, ALenum, ALint*) -AL_API DECL_FUNC5(void, alGetSource3i, ALuint, ALenum, ALint*, ALint*, ALint*) -AL_API DECL_FUNC3(void, alGetSourceiv, ALuint, ALenum, ALint*) -AL_API DECL_FUNCEXT3(void, alGetSourced,SOFT, ALuint, ALenum, ALdouble*) -AL_API DECL_FUNCEXT5(void, alGetSource3d,SOFT, ALuint, ALenum, ALdouble*, ALdouble*, ALdouble*) -AL_API DECL_FUNCEXT3(void, alGetSourcedv,SOFT, ALuint, ALenum, ALdouble*) -AL_API DECL_FUNCEXT3(void, alGetSourcei64,SOFT, ALuint, ALenum, ALint64SOFT*) -AL_API DECL_FUNCEXT5(void, alGetSource3i64,SOFT, ALuint, ALenum, ALint64SOFT*, ALint64SOFT*, ALint64SOFT*) -AL_API DECL_FUNCEXT3(void, alGetSourcei64v,SOFT, ALuint, ALenum, ALint64SOFT*) -AL_API DECL_FUNC3(void, alSourceQueueBuffers, ALuint, ALsizei, const ALuint*) -AL_API DECL_FUNC3(void, alSourceUnqueueBuffers, ALuint, ALsizei, ALuint*) -FORCE_ALIGN DECL_FUNCEXT2(void, alSourcePlayAtTime,SOFT, ALuint, ALint64SOFT) -FORCE_ALIGN DECL_FUNCEXT3(void, alSourcePlayAtTimev,SOFT, ALsizei, const ALuint*, ALint64SOFT) - AL_API void AL_APIENTRY alSourceQueueBufferLayersSOFT(ALuint, ALsizei, const ALuint*) noexcept { ContextRef context{GetContextRef()}; diff --git a/al/state.cpp b/al/state.cpp index e831ccc1..5b0772c7 100644 --- a/al/state.cpp +++ b/al/state.cpp @@ -302,6 +302,7 @@ AL_API const ALchar* AL_APIENTRY alsoft_get_version(void) noexcept } +AL_API DECL_FUNC1(void, alEnable, ALenum) FORCE_ALIGN void AL_APIENTRY alEnableDirect(ALCcontext *context, ALenum capability) noexcept { switch(capability) @@ -327,6 +328,7 @@ FORCE_ALIGN void AL_APIENTRY alEnableDirect(ALCcontext *context, ALenum capabili } } +AL_API DECL_FUNC1(void, alDisable, ALenum) FORCE_ALIGN void AL_APIENTRY alDisableDirect(ALCcontext *context, ALenum capability) noexcept { switch(capability) @@ -352,6 +354,7 @@ FORCE_ALIGN void AL_APIENTRY alDisableDirect(ALCcontext *context, ALenum capabil } } +AL_API DECL_FUNC1(ALboolean, alIsEnabled, ALenum) FORCE_ALIGN ALboolean AL_APIENTRY alIsEnabledDirect(ALCcontext *context, ALenum capability) noexcept { std::lock_guard _{context->mPropLock}; @@ -404,6 +407,7 @@ DECL_GETFUNC(ALvoid*, alGetPointer,SOFT) #undef DECL_GETFUNC +AL_API DECL_FUNC2(void, alGetBooleanv, ALenum, ALboolean*) FORCE_ALIGN void AL_APIENTRY alGetBooleanvDirect(ALCcontext *context, ALenum pname, ALboolean *values) noexcept { if(!values) UNLIKELY @@ -411,6 +415,7 @@ FORCE_ALIGN void AL_APIENTRY alGetBooleanvDirect(ALCcontext *context, ALenum pna GetValue(context, pname, values); } +AL_API DECL_FUNC2(void, alGetDoublev, ALenum, ALdouble*) FORCE_ALIGN void AL_APIENTRY alGetDoublevDirect(ALCcontext *context, ALenum pname, ALdouble *values) noexcept { if(!values) UNLIKELY @@ -418,6 +423,7 @@ FORCE_ALIGN void AL_APIENTRY alGetDoublevDirect(ALCcontext *context, ALenum pnam GetValue(context, pname, values); } +AL_API DECL_FUNC2(void, alGetFloatv, ALenum, ALfloat*) FORCE_ALIGN void AL_APIENTRY alGetFloatvDirect(ALCcontext *context, ALenum pname, ALfloat *values) noexcept { if(!values) UNLIKELY @@ -425,6 +431,7 @@ FORCE_ALIGN void AL_APIENTRY alGetFloatvDirect(ALCcontext *context, ALenum pname GetValue(context, pname, values); } +AL_API DECL_FUNC2(void, alGetIntegerv, ALenum, ALint*) FORCE_ALIGN void AL_APIENTRY alGetIntegervDirect(ALCcontext *context, ALenum pname, ALint *values) noexcept { if(!values) UNLIKELY @@ -432,6 +439,7 @@ FORCE_ALIGN void AL_APIENTRY alGetIntegervDirect(ALCcontext *context, ALenum pna GetValue(context, pname, values); } +AL_API DECL_FUNCEXT2(void, alGetInteger64v,SOFT, ALenum, ALint64SOFT*) FORCE_ALIGN void AL_APIENTRY alGetInteger64vDirectSOFT(ALCcontext *context, ALenum pname, ALint64SOFT *values) noexcept { if(!values) UNLIKELY @@ -439,6 +447,7 @@ FORCE_ALIGN void AL_APIENTRY alGetInteger64vDirectSOFT(ALCcontext *context, ALen GetValue(context, pname, values); } +AL_API DECL_FUNCEXT2(void, alGetPointerv,SOFT, ALenum, ALvoid**) FORCE_ALIGN void AL_APIENTRY alGetPointervDirectSOFT(ALCcontext *context, ALenum pname, ALvoid **values) noexcept { if(!values) UNLIKELY @@ -467,6 +476,7 @@ FORCE_ALIGN void AL_APIENTRY alGetPointervDirectSOFT(ALCcontext *context, ALenum } } +AL_API DECL_FUNC1(const ALchar*, alGetString, ALenum) FORCE_ALIGN const ALchar* AL_APIENTRY alGetStringDirect(ALCcontext *context, ALenum pname) noexcept { const ALchar *value{nullptr}; @@ -526,6 +536,7 @@ FORCE_ALIGN const ALchar* AL_APIENTRY alGetStringDirect(ALCcontext *context, ALe return value; } +AL_API DECL_FUNC1(void, alDopplerFactor, ALfloat) FORCE_ALIGN void AL_APIENTRY alDopplerFactorDirect(ALCcontext *context, ALfloat value) noexcept { if(!(value >= 0.0f && std::isfinite(value))) @@ -538,6 +549,7 @@ FORCE_ALIGN void AL_APIENTRY alDopplerFactorDirect(ALCcontext *context, ALfloat } } +AL_API DECL_FUNC1(void, alSpeedOfSound, ALfloat) FORCE_ALIGN void AL_APIENTRY alSpeedOfSoundDirect(ALCcontext *context, ALfloat value) noexcept { if(!(value > 0.0f && std::isfinite(value))) @@ -550,6 +562,7 @@ FORCE_ALIGN void AL_APIENTRY alSpeedOfSoundDirect(ALCcontext *context, ALfloat v } } +AL_API DECL_FUNC1(void, alDistanceModel, ALenum) FORCE_ALIGN void AL_APIENTRY alDistanceModelDirect(ALCcontext *context, ALenum value) noexcept { if(auto model = DistanceModelFromALenum(value)) @@ -564,12 +577,14 @@ FORCE_ALIGN void AL_APIENTRY alDistanceModelDirect(ALCcontext *context, ALenum v } +AL_API DECL_FUNCEXT(void, alDeferUpdates,SOFT) FORCE_ALIGN void AL_APIENTRY alDeferUpdatesDirectSOFT(ALCcontext *context) noexcept { std::lock_guard _{context->mPropLock}; context->deferUpdates(); } +AL_API DECL_FUNCEXT(void, alProcessUpdates,SOFT) FORCE_ALIGN void AL_APIENTRY alProcessUpdatesDirectSOFT(ALCcontext *context) noexcept { std::lock_guard _{context->mPropLock}; @@ -577,6 +592,7 @@ FORCE_ALIGN void AL_APIENTRY alProcessUpdatesDirectSOFT(ALCcontext *context) noe } +AL_API DECL_FUNCEXT2(const ALchar*, alGetStringi,SOFT, ALenum,ALsizei) FORCE_ALIGN const ALchar* AL_APIENTRY alGetStringiDirectSOFT(ALCcontext *context, ALenum pname, ALsizei index) noexcept { const ALchar *value{nullptr}; @@ -595,22 +611,6 @@ FORCE_ALIGN const ALchar* AL_APIENTRY alGetStringiDirectSOFT(ALCcontext *context return value; } -AL_API DECL_FUNC1(void, alEnable, ALenum) -AL_API DECL_FUNC1(void, alDisable, ALenum) -AL_API DECL_FUNC1(ALboolean, alIsEnabled, ALenum) -AL_API DECL_FUNC2(void, alGetBooleanv, ALenum, ALboolean*) -AL_API DECL_FUNC2(void, alGetDoublev, ALenum, ALdouble*) -AL_API DECL_FUNC2(void, alGetFloatv, ALenum, ALfloat*) -AL_API DECL_FUNC2(void, alGetIntegerv, ALenum, ALint*) -AL_API DECL_FUNCEXT2(void, alGetInteger64v,SOFT, ALenum, ALint64SOFT*) -AL_API DECL_FUNCEXT2(void, alGetPointerv,SOFT, ALenum, ALvoid**) -AL_API DECL_FUNC1(const ALchar*, alGetString, ALenum) -AL_API DECL_FUNC1(void, alDopplerFactor, ALfloat) -AL_API DECL_FUNC1(void, alSpeedOfSound, ALfloat) -AL_API DECL_FUNC1(void, alDistanceModel, ALenum) -AL_API DECL_FUNCEXT(void, alDeferUpdates,SOFT) -AL_API DECL_FUNCEXT(void, alProcessUpdates,SOFT) -AL_API DECL_FUNCEXT2(const ALchar*, alGetStringi,SOFT, ALenum,ALsizei) AL_API void AL_APIENTRY alDopplerVelocity(ALfloat value) noexcept { -- cgit v1.2.3