diff --git a/src/Magnum/Audio/Context.cpp b/src/Magnum/Audio/Context.cpp index 9720f5d68..2c4301a83 100644 --- a/src/Magnum/Audio/Context.cpp +++ b/src/Magnum/Audio/Context.cpp @@ -44,6 +44,7 @@ const std::vector& Extension::extensions() { static const std::vector extensions{ _extension(AL,EXT,FLOAT32), _extension(AL,EXT,DOUBLE), + _extension(ALC,EXT,ENUMERATION), _extension(ALC,SOFTX,HRTF) }; #undef _entension diff --git a/src/Magnum/Audio/Extensions.h b/src/Magnum/Audio/Extensions.h index f752a26cb..582da4882 100644 --- a/src/Magnum/Audio/Extensions.h +++ b/src/Magnum/Audio/Extensions.h @@ -67,6 +67,12 @@ namespace Extensions { constexpr static const char* string() { return #prefix "_" #vendor "_" #extension; } \ }; +#define _extension_rev(prefix, vendor, extension) \ + struct extension { \ + enum: std::size_t { Index = __LINE__-1 }; \ + constexpr static const char* string() { return #prefix "_" #extension "_" #vendor; } \ + }; + /* IMPORTANT: don't forget to add new extensions also in Context.cpp */ namespace AL { #line 1 @@ -75,6 +81,9 @@ namespace AL { _extension(AL,EXT,DOUBLE) // #??? } } namespace ALC { + namespace EXT { + _extension_rev(ALC,EXT,ENUMERATION) // #??? + } namespace SOFTX { _extension(ALC,SOFTX,HRTF) // #??? }