Magnum::GL::Extensions namespace

Compile-time information about OpenGL extensions.

Each extension is a struct named hierarchically by prefix, vendor and extension name taken from list at Support state, for example GL::Extensions::ARB::texture_storage. Note that, unless said otherwise, desktop extensions are available only on desktop build, OpenGL ES 2.0 extensions which are part of ES 3.0 are available only on OpenGL ES 2.0 builds, WebGL 1.0 extensions which are part of WebGL 2.0 are available only on WebGL 1.0 builds, OpenGL ES extensions are available only on OpenGL ES builds and WebGL extensions are available only on WebGL builds.

Each struct has the same public methods as the Extension class (requiredVersion(), coreVersion() and string()), but these structs are better suited for compile-time decisions rather than Extension instances. See Context::isExtensionSupported() for example usage.

This library is built if MAGNUM_WITH_GL is enabled when building Magnum. To use this library with CMake, request the GL component of the Magnum package and link to the Magnum::GL target:

find_package(Magnum REQUIRED GL)

# ...
target_link_libraries(your-app PRIVATE Magnum::GL)

See Downloading and building, Usage with CMake and OpenGL for more information.