diff options
-rw-r--r-- | al/extension.cpp | 118 | ||||
-rw-r--r-- | alc/alc.cpp | 32 |
2 files changed, 28 insertions, 122 deletions
diff --git a/al/extension.cpp b/al/extension.cpp index c442fa05..5dda2a86 100644 --- a/al/extension.cpp +++ b/al/extension.cpp @@ -32,10 +32,6 @@ #include "core/except.h" #include "opthelpers.h" -#ifdef ALSOFT_EAX -#include "eax_globals.h" -#include "eax_x_ram.h" -#endif // ALSOFT_EAX AL_API ALboolean AL_APIENTRY alIsExtensionPresent(const ALchar *extName) START_API_FUNC @@ -47,23 +43,6 @@ START_API_FUNC SETERR_RETURN(context, AL_INVALID_VALUE, AL_FALSE, "NULL pointer"); size_t len{strlen(extName)}; -#ifdef ALSOFT_EAX - if (al::strcasecmp(eax_v2_0_ext_name_1, extName) == 0 || - al::strcasecmp(eax_v2_0_ext_name_2, extName) == 0 || - al::strcasecmp(eax_v3_0_ext_name, extName) == 0 || - al::strcasecmp(eax_v4_0_ext_name, extName) == 0 || - al::strcasecmp(eax_v5_0_ext_name, extName) == 0) - { - const auto is_present = eax_g_is_enabled && context->eax_is_capable(); - return is_present ? AL_TRUE : AL_FALSE; - } - - if (al::strcasecmp(eax_x_ram_ext_name, extName) == 0) - { - const auto is_present = eax_g_is_enabled; - return is_present ? AL_TRUE : AL_FALSE; - } -#endif // ALSOFT_EAX const char *ptr{context->mExtensionList}; while(ptr && *ptr) { @@ -87,75 +66,6 @@ AL_API ALvoid* AL_APIENTRY alGetProcAddress(const ALchar *funcName) START_API_FUNC { if(!funcName) return nullptr; -#ifdef ALSOFT_EAX - if (al::strcasecmp(funcName, eax_eax_set_func_name) == 0) - { - if (!eax_g_is_enabled) - { - return nullptr; - } - - ContextRef context{GetContextRef()}; - - if (!context || !context->eax_is_capable()) - { - return nullptr; - } - - return reinterpret_cast<ALvoid*>(EAXSet); - } - - if (al::strcasecmp(funcName, eax_eax_get_func_name) == 0) - { - if (!eax_g_is_enabled) - { - return nullptr; - } - - ContextRef context{GetContextRef()}; - - if (!context || !context->eax_is_capable()) - { - return nullptr; - } - - return reinterpret_cast<ALvoid*>(EAXGet); - } - - if (al::strcasecmp(funcName, eax_eax_set_buffer_mode_func_name) == 0) - { - if (!eax_g_is_enabled) - { - return nullptr; - } - - ContextRef context{GetContextRef()}; - - if (!context) - { - return nullptr; - } - - return reinterpret_cast<ALvoid*>(EAXSetBufferMode); - } - - if (al::strcasecmp(funcName, eax_eax_get_buffer_mode_func_name) == 0) - { - if (!eax_g_is_enabled) - { - return nullptr; - } - - ContextRef context{GetContextRef()}; - - if (!context) - { - return nullptr; - } - - return reinterpret_cast<ALvoid*>(EAXGetBufferMode); - } -#endif // ALSOFT_EAX return alcGetProcAddress(nullptr, funcName); } END_API_FUNC @@ -164,34 +74,6 @@ AL_API ALenum AL_APIENTRY alGetEnumValue(const ALchar *enumName) START_API_FUNC { if(!enumName) return static_cast<ALenum>(0); -#ifdef ALSOFT_EAX - if (eax_g_is_enabled) - { - struct Descriptor - { - const char* name; - ALenum value; - }; // Descriptor - - constexpr Descriptor descriptors[] = - { - Descriptor{AL_EAX_RAM_SIZE_NAME, AL_EAX_RAM_SIZE}, - Descriptor{AL_EAX_RAM_FREE_NAME, AL_EAX_RAM_FREE}, - - Descriptor{AL_STORAGE_AUTOMATIC_NAME, AL_STORAGE_AUTOMATIC}, - Descriptor{AL_STORAGE_HARDWARE_NAME, AL_STORAGE_HARDWARE}, - Descriptor{AL_STORAGE_ACCESSIBLE_NAME, AL_STORAGE_ACCESSIBLE}, - }; // descriptors - - for (const auto& descriptor : descriptors) - { - if (strcmp(descriptor.name, enumName) == 0) - { - return descriptor.value; - } - } - } -#endif // ALSOFT_EAX return alcGetEnumValue(nullptr, enumName); } END_API_FUNC diff --git a/alc/alc.cpp b/alc/alc.cpp index d6bd005f..6358ad8b 100644 --- a/alc/alc.cpp +++ b/alc/alc.cpp @@ -452,6 +452,13 @@ const struct { DECL(alAuxiliaryEffectSlotPlayvSOFT), DECL(alAuxiliaryEffectSlotStopSOFT), DECL(alAuxiliaryEffectSlotStopvSOFT), +#ifdef ALSOFT_EAX +}, eaxFunctions[] = { + DECL(EAXGet), + DECL(EAXSet), + DECL(EAXGetBufferMode), + DECL(EAXSetBufferMode), +#endif }; #undef DECL @@ -882,6 +889,7 @@ constexpr struct { DECL(AL_STOP_SOURCES_ON_DISCONNECT_SOFT), #ifdef ALSOFT_EAX +}, eaxEnumerations[] = { DECL(AL_EAX_RAM_SIZE), DECL(AL_EAX_RAM_FREE), DECL(AL_STORAGE_AUTOMATIC), @@ -2943,15 +2951,23 @@ START_API_FUNC { DeviceRef dev{VerifyDevice(device)}; alcSetError(dev.get(), ALC_INVALID_VALUE); + return nullptr; } - else +#ifdef ALSOFT_EAX + if(eax_g_is_enabled) { - for(const auto &func : alcFunctions) + for(const auto &func : eaxFunctions) { if(strcmp(func.funcName, funcName) == 0) return func.address; } } +#endif + for(const auto &func : alcFunctions) + { + if(strcmp(func.funcName, funcName) == 0) + return func.address; + } return nullptr; } END_API_FUNC @@ -2964,15 +2980,23 @@ START_API_FUNC { DeviceRef dev{VerifyDevice(device)}; alcSetError(dev.get(), ALC_INVALID_VALUE); + return 0; } - else +#ifdef ALSOFT_EAX + if(eax_g_is_enabled) { - for(const auto &enm : alcEnumerations) + for(const auto &enm : eaxEnumerations) { if(strcmp(enm.enumName, enumName) == 0) return enm.value; } } +#endif + for(const auto &enm : alcEnumerations) + { + if(strcmp(enm.enumName, enumName) == 0) + return enm.value; + } return 0; } |