From 614730543ca2a9f6b8acddbf92b8994ba56610ad Mon Sep 17 00:00:00 2001 From: BZLZHH Date: Fri, 11 Jul 2025 16:26:10 +0800 Subject: [PATCH] Remove most stuff, ready to rewrite this project. --- CMakeLists.txt | 91 +- MG/Constants.h | 207 -- MG/Global.h | 41 - MG/Includes.h | 109 - MG/Init.cpp | 48 - MG/MG_GL/BackendLoader/GLES/Loader.cpp | 1059 ------- MG/MG_GL/BackendLoader/GLES/Loader.h | 1024 ------ .../EGL/Diligent/DiligentConfig.h | 9 - .../Implementations/EGL/Diligent/EGL_impl.cpp | 1076 ------- .../Implementations/EGL/Diligent/EGL_impl.h | 264 -- .../Implementations/EGL/GLES/EGL_WRAP.cpp | 184 -- MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.h | 14 - MG/MG_GL/Implementations/EGL/VK/EGL_EMU.cpp | 551 ---- MG/MG_GL/Implementations/EGL/VK/EGL_EMU.h | 101 - .../Implementations/GL/Buffer/GL_Buffer.cpp | 379 --- .../Implementations/GL/Buffer/GL_Buffer.h | 23 - .../Implementations/GL/Common/GL_Common.cpp | 218 -- .../Implementations/GL/Common/GL_Common.h | 23 - .../Implementations/GL/Drawing/GL_Drawing.cpp | 1123 ------- .../Implementations/GL/Drawing/GL_Drawing.h | 20 - .../GL/Framebuffer/GL_Framebuffer.cpp | 606 ---- .../GL/Framebuffer/GL_Framebuffer.h | 22 - .../GLFuncsDefinitions/GLFuncsDefinitions.cpp | 2799 ----------------- .../GLFuncsDefinitions/GLFuncsDefinitions.h | 8 - .../Implementations/GL/Getter/BackendInfo.cpp | 173 - .../Implementations/GL/Getter/BackendInfo.h | 18 - .../Implementations/GL/Getter/GL_Getter.cpp | 324 -- .../Implementations/GL/Getter/GL_Getter.h | 15 - .../Implementations/GL/Program/GL_Program.cpp | 676 ---- .../Implementations/GL/Program/GL_Program.h | 60 - .../Implementations/GL/Texture/GL_Texture.cpp | 698 ---- .../Implementations/GL/Texture/GL_Texture.h | 21 - .../GL/VertexArray/GL_VertexArray.cpp | 55 - .../GL/VertexArray/GL_VertexArray.h | 16 - .../GLXFuncsDefinitions.cpp | 13 - .../GLXFuncsDefinitions/GLXFuncsDefinitions.h | 8 - .../Implementations/GLX/LookUp/LookUp.cpp | 25 - MG/MG_GL/Implementations/GLX/LookUp/LookUp.h | 12 - MG/MG_GL/State/Buffer/BufferState.cpp | 345 -- MG/MG_GL/State/Buffer/BufferState.h | 57 - MG/MG_GL/State/Common/CommonState.cpp | 159 - MG/MG_GL/State/Common/CommonState.h | 60 - MG/MG_GL/State/Core/GLState.cpp | 407 --- MG/MG_GL/State/Core/GLState.h | 149 - .../State/Framebuffer/FramebufferState.cpp | 179 -- MG/MG_GL/State/Framebuffer/FramebufferState.h | 46 - MG/MG_GL/State/Program/ProgramState.cpp | 600 ---- MG/MG_GL/State/Program/ProgramState.h | 120 - MG/MG_GL/State/Program/ShaderObject.cpp | 130 - MG/MG_GL/State/Program/ShaderObject.h | 8 - MG/MG_GL/State/Texture/TextureState.cpp | 1258 -------- MG/MG_GL/State/Texture/TextureState.h | 108 - .../State/VertexArray/VertexArrayState.cpp | 161 - MG/MG_GL/State/VertexArray/VertexArrayState.h | 56 - MG/MG_Include/IndexGenerator.hpp | 73 - MG/MG_Include/UncertainBool.hpp | 127 - MG/MG_RHI/GLES/Test/TestDrawing.cpp | 240 -- MG/MG_RHI/GLES/Test/TestDrawing.h | 12 - MG/MG_UTIL/Debug/Debug.cpp | 1996 ------------ MG/MG_UTIL/Debug/Debug.h | 30 - MG/MG_UTIL/Program/DebugTool.cpp | 149 - MG/MG_UTIL/Program/DebugTool.h | 15 - MG/MG_UTIL/Program/GLSLTool.cpp | 1162 ------- MG/MG_UTIL/Program/GLSLTool.h | 192 -- PlannedFunctions.md | 204 -- README.md | 12 +- library/arm64-v8a/libshaderconv.so | Bin 8017248 -> 0 bytes 67 files changed, 7 insertions(+), 20161 deletions(-) delete mode 100644 MG/Constants.h delete mode 100644 MG/Global.h delete mode 100644 MG/Includes.h delete mode 100644 MG/Init.cpp delete mode 100644 MG/MG_GL/BackendLoader/GLES/Loader.cpp delete mode 100644 MG/MG_GL/BackendLoader/GLES/Loader.h delete mode 100644 MG/MG_GL/Implementations/EGL/Diligent/DiligentConfig.h delete mode 100644 MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.cpp delete mode 100644 MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.h delete mode 100644 MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.cpp delete mode 100644 MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.h delete mode 100644 MG/MG_GL/Implementations/EGL/VK/EGL_EMU.cpp delete mode 100644 MG/MG_GL/Implementations/EGL/VK/EGL_EMU.h delete mode 100644 MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.h delete mode 100644 MG/MG_GL/Implementations/GL/Common/GL_Common.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Common/GL_Common.h delete mode 100644 MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.h delete mode 100644 MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.h delete mode 100644 MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.cpp delete mode 100644 MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.h delete mode 100644 MG/MG_GL/Implementations/GL/Getter/BackendInfo.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Getter/BackendInfo.h delete mode 100644 MG/MG_GL/Implementations/GL/Getter/GL_Getter.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Getter/GL_Getter.h delete mode 100644 MG/MG_GL/Implementations/GL/Program/GL_Program.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Program/GL_Program.h delete mode 100644 MG/MG_GL/Implementations/GL/Texture/GL_Texture.cpp delete mode 100644 MG/MG_GL/Implementations/GL/Texture/GL_Texture.h delete mode 100644 MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.cpp delete mode 100644 MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.h delete mode 100644 MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.cpp delete mode 100644 MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.h delete mode 100644 MG/MG_GL/Implementations/GLX/LookUp/LookUp.cpp delete mode 100644 MG/MG_GL/Implementations/GLX/LookUp/LookUp.h delete mode 100644 MG/MG_GL/State/Buffer/BufferState.cpp delete mode 100644 MG/MG_GL/State/Buffer/BufferState.h delete mode 100644 MG/MG_GL/State/Common/CommonState.cpp delete mode 100644 MG/MG_GL/State/Common/CommonState.h delete mode 100644 MG/MG_GL/State/Core/GLState.cpp delete mode 100644 MG/MG_GL/State/Core/GLState.h delete mode 100644 MG/MG_GL/State/Framebuffer/FramebufferState.cpp delete mode 100644 MG/MG_GL/State/Framebuffer/FramebufferState.h delete mode 100644 MG/MG_GL/State/Program/ProgramState.cpp delete mode 100644 MG/MG_GL/State/Program/ProgramState.h delete mode 100644 MG/MG_GL/State/Program/ShaderObject.cpp delete mode 100644 MG/MG_GL/State/Program/ShaderObject.h delete mode 100644 MG/MG_GL/State/Texture/TextureState.cpp delete mode 100644 MG/MG_GL/State/Texture/TextureState.h delete mode 100644 MG/MG_GL/State/VertexArray/VertexArrayState.cpp delete mode 100644 MG/MG_GL/State/VertexArray/VertexArrayState.h delete mode 100644 MG/MG_Include/IndexGenerator.hpp delete mode 100644 MG/MG_Include/UncertainBool.hpp delete mode 100644 MG/MG_RHI/GLES/Test/TestDrawing.cpp delete mode 100644 MG/MG_RHI/GLES/Test/TestDrawing.h delete mode 100644 MG/MG_UTIL/Debug/Debug.cpp delete mode 100644 MG/MG_UTIL/Debug/Debug.h delete mode 100644 MG/MG_UTIL/Program/DebugTool.cpp delete mode 100644 MG/MG_UTIL/Program/DebugTool.h delete mode 100644 MG/MG_UTIL/Program/GLSLTool.cpp delete mode 100644 MG/MG_UTIL/Program/GLSLTool.h delete mode 100644 PlannedFunctions.md delete mode 100644 library/arm64-v8a/libshaderconv.so diff --git a/CMakeLists.txt b/CMakeLists.txt index 904778e7..1902ffff 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,90 +10,17 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w -fvisibility=hidden -funwind-tables -g -D_THREAD_SAFE -fPIC -stdlib=libc++") -#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w -g -std=gnu99 -funwind-tables -O3 -fvisibility=hidden") - -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libstdc++") - -set(CMAKE_ANDROID_STL_TYPE c++_static) - -#set(CMAKE_BUILD_TYPE Release) - set(PROFILING OFF) find_library(GLSLANG_LIB glslang PATHS ${CMAKE_SOURCE_DIR}/libraries/arm64-v8a/) add_library(${CMAKE_PROJECT_NAME} SHARED - MG/Init.cpp - - # MG_GL/Implementations/GLX - MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.cpp - - # MG_GL/Implementations/GL - MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.cpp - MG/MG_GL/Implementations/GL/Getter/GL_Getter.cpp - MG/MG_GL/Implementations/GL/Getter/BackendInfo.cpp - - MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.cpp - - MG/MG_GL/Implementations/GL/Common/GL_Common.cpp - - MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.cpp - - MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.cpp - - MG/MG_GL/Implementations/GL/Program/GL_Program.cpp - - MG/MG_GL/Implementations/GL/Texture/GL_Texture.cpp - - MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.cpp - - # MG_GL/Implementations/GLX - MG/MG_GL/Implementations/GLX/LookUp/LookUp.cpp - - # MG_GL/Implementations/EGL - MG/MG_GL/Implementations/EGL/VK/EGL_EMU.cpp - - MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.cpp - - MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.cpp - - # MG_GL/State - MG/MG_GL/State/Core/GLState.cpp - - MG/MG_GL/State/Common/CommonState.cpp - - MG/MG_GL/State/Texture/TextureState.cpp - - MG/MG_GL/State/VertexArray/VertexArrayState.cpp - - MG/MG_GL/State/Buffer/BufferState.cpp - - MG/MG_GL/State/Program/ShaderObject.cpp - MG/MG_GL/State/Program/ProgramState.cpp - - MG/MG_GL/State/Framebuffer/FramebufferState.cpp - - # MG_GL/BackendLoader - MG/MG_GL/BackendLoader/GLES/Loader.cpp - - # MG_UTIL/Debug - MG/MG_UTIL/Debug/Debug.cpp - - # MG_UTIL/Program - MG/MG_UTIL/Program/DebugTool.cpp - MG/MG_UTIL/Program/GLSLTool.cpp - - # MG_RHI/GLES - MG/MG_RHI/GLES/Test/TestDrawing.cpp ) -target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE ./includes) - target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/library/arm64-v8a/libglslang.a ${CMAKE_SOURCE_DIR}/library/arm64-v8a/libspirv-cross-c-shared.so - #${CMAKE_SOURCE_DIR}/library/arm64-v8a/libshaderconv.so ${CMAKE_SOURCE_DIR}/library/arm64-v8a/libGenericCodeGen.a ${CMAKE_SOURCE_DIR}/library/arm64-v8a/libglslang-default-resource-limits.a ${CMAKE_SOURCE_DIR}/library/arm64-v8a/libMachineIndependent.a @@ -112,7 +39,7 @@ target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE vulkan ) -add_subdirectory(3rdparty/DiligentCore) +# add_subdirectory(3rdparty/DiligentCore) target_include_directories(MobileGL PUBLIC ${CMAKE_SOURCE_DIR}/include @@ -120,15 +47,7 @@ target_include_directories(MobileGL PUBLIC target_link_libraries(MobileGL PRIVATE - Diligent-Common - Diligent-GraphicsEngineOpenGL-shared - Diligent-GraphicsEngineVk-shared -) - -if (PROFILING) - find_package(Threads) - include_directories(${CMAKE_SOURCE_DIR}/3rdparty/perfetto/sdk) - add_library(perfetto STATIC ${CMAKE_SOURCE_DIR}/3rdparty/perfetto/sdk/perfetto.cc) - target_link_libraries(MobileGL PRIVATE perfetto ${CMAKE_THREAD_LIBS_INIT}) - target_compile_definitions(MobileGL PUBLIC PROFILING=1) -endif() + # Diligent-Common + # Diligent-GraphicsEngineOpenGL-shared + # Diligent-GraphicsEngineVk-shared +) \ No newline at end of file diff --git a/MG/Constants.h b/MG/Constants.h deleted file mode 100644 index 38d00d72..00000000 --- a/MG/Constants.h +++ /dev/null @@ -1,207 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_CONSTANTS_H -#define MOBILEGL_CONSTANTS_H - -#include -#include -#include -#include -#include - -#ifdef __ANDROID__ -#define __ANDROID_API__ 26 -#endif - -#ifdef _WIN32 -#define MG_EXPORT extern "C" __declspec(dllexport) -#else -#define MG_EXPORT extern "C" __attribute__((visibility("default"))) -#endif - -namespace MG_Global { - template - using unordered_map = ankerl::unordered_dense::map; - - template - using unordered_set = ankerl::unordered_dense::set; -} - -namespace MG_Constants { - namespace Common { - inline constexpr int LOG_LEVEL_DEBUG = 0x0010; - inline constexpr int LOG_LEVEL_INFO = 0x0011; - inline constexpr int LOG_LEVEL_WARN = 0x0012; - inline constexpr int LOG_LEVEL_ERROR = 0x0013; - inline constexpr int LOG_LEVEL_FATAL = 0x0014; - - - inline constexpr int LOG_TARGET_NONE = 0x00; - inline constexpr int LOG_TARGET_CONSOLE = 0x01; - inline constexpr int LOG_TARGET_FILE = 0x02; - inline constexpr int LOG_TARGET_ANDROID = 0x04; // Android logcat - inline constexpr int LOG_TARGET_ALL = LOG_TARGET_CONSOLE | LOG_TARGET_FILE | LOG_TARGET_ANDROID; - - template - bool Contains(T item, const std::vector vec) { - return std::find(vec.begin(), vec.end(), item) != vec.end(); - } - } - - namespace Blend { - static const std::vector VALID_FACTORS = { - GL_ZERO, GL_ONE, GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR, - GL_DST_COLOR, GL_ONE_MINUS_DST_COLOR, GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, - GL_DST_ALPHA, GL_ONE_MINUS_DST_ALPHA, GL_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR, - GL_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA, GL_SRC_ALPHA_SATURATE - }; // OpenGL 3 - } - - namespace Depth { - static const std::vector VALID_FUNCS = { - GL_NEVER, GL_LESS, GL_EQUAL, GL_LEQUAL, GL_GREATER, GL_NOTEQUAL, GL_GEQUAL, GL_ALWAYS - }; // OpenGL 3 - } - - namespace CommonState { - static const std::vector VALID_CAPS = { - GL_BLEND, GL_DEPTH_TEST, GL_STENCIL_TEST, GL_SCISSOR_TEST, GL_CULL_FACE, - GL_POLYGON_OFFSET_FILL, GL_SAMPLE_ALPHA_TO_COVERAGE, GL_SAMPLE_COVERAGE - }; // OpenGL 3 - } - - namespace Framebuffer { - static const std::vector VALID_ATTACHMENTS = { - GL_COLOR_ATTACHMENT0, GL_DEPTH_ATTACHMENT, - GL_STENCIL_ATTACHMENT, GL_DEPTH_STENCIL_ATTACHMENT - }; // OpenGL 3 - - static const std::vector VALID_TARGETS = { - GL_FRAMEBUFFER, GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER - }; // OpenGL 3 - - static const std::vector VALID_ACCESS = { - GL_READ_ONLY, GL_WRITE_ONLY, GL_READ_WRITE - }; // OpenGL 3 - } - - namespace Buffer { - static const std::vector VALID_PARAM_NAMES = { - GL_BUFFER_ACCESS, GL_BUFFER_MAPPED, GL_BUFFER_SIZE, GL_BUFFER_USAGE - }; // OpenGL 3 - - static const std::vector VALID_TARGETS = { - GL_ARRAY_BUFFER, GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_ELEMENT_ARRAY_BUFFER, - GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_TEXTURE_BUFFER, - GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER - }; // OpenGL 3 - - static const std::vector VALID_ACCESS = { - GL_READ_ONLY, GL_WRITE_ONLY, GL_READ_WRITE - }; // OpenGL 3 - } - - namespace VertexArray { - constexpr uint32_t MAX_VERTEX_ATTRIBS = 32; - } - - namespace PixelStore { - static const MG_Global::unordered_map DEFAULT_VALUES_MAP = { - {GL_PACK_SWAP_BYTES, GL_FALSE}, - {GL_PACK_LSB_FIRST, GL_FALSE}, - {GL_PACK_ROW_LENGTH, 0}, - {GL_PACK_IMAGE_HEIGHT, 0}, - {GL_PACK_SKIP_ROWS, 0}, - {GL_PACK_SKIP_PIXELS, 0}, - {GL_PACK_SKIP_IMAGES, 0}, - {GL_PACK_ALIGNMENT, 4}, - {GL_UNPACK_SWAP_BYTES, GL_FALSE}, - {GL_UNPACK_LSB_FIRST, GL_FALSE}, - {GL_UNPACK_ROW_LENGTH, 0}, - {GL_UNPACK_IMAGE_HEIGHT, 0}, - {GL_UNPACK_SKIP_ROWS, 0}, - {GL_UNPACK_SKIP_PIXELS,0}, - {GL_UNPACK_SKIP_IMAGES,0}, - {GL_UNPACK_ALIGNMENT, 4} - }; // OpenGL 3 - - static const std::vector VALID_PARAM_NAMES = { - GL_PACK_SWAP_BYTES, GL_PACK_LSB_FIRST, GL_PACK_ROW_LENGTH, GL_PACK_IMAGE_HEIGHT, - GL_PACK_SKIP_ROWS, GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_IMAGES, GL_PACK_ALIGNMENT, - GL_UNPACK_SWAP_BYTES, GL_UNPACK_LSB_FIRST, GL_UNPACK_ROW_LENGTH, - GL_UNPACK_IMAGE_HEIGHT, - GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_PIXELS, GL_UNPACK_SKIP_IMAGES, - GL_UNPACK_ALIGNMENT - }; // OpenGL 3 - } - - namespace Texture { - inline const GLuint MAX_TEXTURE_UNITS = 80; - const GLsizei MAX_TEXTURE_SIZE = 32768; - const GLsizei MAX_ARRAY_LAYERS = 256; - inline const std::vector VALID_TARGETS = { - GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, - GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP_POSITIVE_X, - GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, - GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, GL_PROXY_TEXTURE_CUBE_MAP - }; // OpenGL 3 - - inline const std::vector VALID_FORMATS = { - GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_DEPTH_COMPONENT, GL_DEPTH_STENCIL - }; // OpenGL 3 - - inline const std::vector VALID_INTERNAL_FORMATS = { - GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_DEPTH_COMPONENT, GL_DEPTH_STENCIL, - GL_RGBA32F, GL_RGBA32I, GL_RGBA32UI, GL_RGBA16, GL_RGBA16F, GL_RGBA16I, - GL_RGBA16UI, GL_RGBA8, GL_RGBA8UI, GL_SRGB8_ALPHA8, GL_RGB10_A2, GL_RGB10_A2UI, - GL_R11F_G11F_B10F, GL_RG32F, GL_RG32I, GL_RG32UI, GL_RG16, GL_RG16F, GL_RGB16I, - GL_RGB16UI, GL_RG8, GL_RG8I, GL_RG8UI, GL_R32F, GL_R32I, GL_R32UI, GL_R16F, - GL_R16I, GL_R16UI, GL_R8, GL_R8I, GL_R8UI, GL_RGBA16_SNORM, GL_RGBA8_SNORM, - GL_RGB32F, GL_RGB32I, GL_RGB32UI, GL_RGB16_SNORM, GL_RGB16F, GL_RGB16I, GL_RGB16UI, - GL_RGB16, GL_RGB8_SNORM, GL_RGB8, GL_RGB8I, GL_RGB8UI, GL_SRGB8, GL_RGB9_E5, - GL_RG16_SNORM, GL_RG8_SNORM, GL_COMPRESSED_RG_RGTC2, GL_COMPRESSED_SIGNED_RG_RGTC2, - GL_R16_SNORM, GL_R8_SNORM, GL_COMPRESSED_RED_RGTC1, GL_COMPRESSED_SIGNED_RED_RGTC1, - GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT32, GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT16, - GL_DEPTH32F_STENCIL8, GL_DEPTH24_STENCIL8 - }; // OpenGL 3 - - inline const std::vector VALID_TYPES = { - GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, - GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, - GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, - GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, - GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_2_10_10_10_REV - }; // OpenGL 3 - - inline const std::vector VALID_TEXTURE_PARAM_NAMES = { - GL_TEXTURE_BASE_LEVEL, GL_TEXTURE_COMPARE_FUNC, GL_TEXTURE_COMPARE_MODE, GL_TEXTURE_MIN_FILTER, - GL_TEXTURE_MAG_FILTER, GL_TEXTURE_MAX_LEVEL, GL_TEXTURE_SWIZZLE_R, GL_TEXTURE_SWIZZLE_G, - GL_TEXTURE_SWIZZLE_B, GL_TEXTURE_SWIZZLE_A, GL_TEXTURE_SWIZZLE_RGBA, GL_TEXTURE_WRAP_S, - GL_TEXTURE_WRAP_T, GL_TEXTURE_WRAP_R, GL_TEXTURE_LOD_BIAS, GL_TEXTURE_MIN_LOD, GL_TEXTURE_MAX_LOD, GL_TEXTURE_BORDER_COLOR - }; // OpenGL 3 - - inline const std::vector VALID_QUERY_LEVEL_PROPERTY_PARAM_NAMES = { - GL_TEXTURE_WIDTH, GL_TEXTURE_HEIGHT, GL_TEXTURE_DEPTH, GL_TEXTURE_INTERNAL_FORMAT, - GL_TEXTURE_RED_SIZE, GL_TEXTURE_GREEN_SIZE, GL_TEXTURE_BLUE_SIZE, GL_TEXTURE_ALPHA_SIZE, - GL_TEXTURE_DEPTH_SIZE, GL_TEXTURE_COMPRESSED, GL_TEXTURE_COMPRESSED_IMAGE_SIZE - }; // OpenGL 3 - } - - namespace Backend { -#define BACKEND_VULKAN 0x0015 -#define BACKEND_METAL 0x0016 -#define BACKEND_GLES 0x0017 -#define BACKEND_DILIGENT 0x0018 - -inline const int BACKEND_DILIGENT_VULKAN = 0x0020; -inline const int BACKEND_DILIGENT_METAL = 0x0021; // not ready currently -inline const int BACKEND_DILIGENT_OPENGL = 0x0022; - - } - - inline const char* RenderName = "MobileGL"; -} - -#endif //MOBILEGL_CONSTANTS_H diff --git a/MG/Global.h b/MG/Global.h deleted file mode 100644 index ceaeeae4..00000000 --- a/MG/Global.h +++ /dev/null @@ -1,41 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GLOBAL_H -#define MOBILEGL_GLOBAL_H - -#include "Includes.h" - -namespace MG_Global { - namespace MG { - inline const int VersionMajor = 1; - inline const int VersionMinor = 0; - inline const int VersionRevision = 0; - inline const int VersionPatch = 0; - inline const std::string VersionSuffix = "-Dev"; - } - - namespace Backend { -// BACKEND_TYPE is defined in Includes.h - } - - namespace GL { - inline const int GLVersionMajor = 3; - inline const int GLVersionMinor = 2; - inline const int GLVersionRevision = 0; - } - - namespace Common { - inline constexpr int LogLevel = MG_Constants::Common::LOG_LEVEL_INFO; - inline constexpr int LogTarget = MG_Constants::Common::LOG_TARGET_ALL; - -#ifdef __ANDROID__ - inline const char* LOG_FILE_PATH = "/sdcard/MG/latest.log"; -#else - inline const char* LOG_FILE_PATH = nullptr; -#endif - } -} - -#endif //MOBILEGL_GLOBAL_H diff --git a/MG/Includes.h b/MG/Includes.h deleted file mode 100644 index 4e9d0d69..00000000 --- a/MG/Includes.h +++ /dev/null @@ -1,109 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// -#pragma once - -#define BACKEND_TYPE BACKEND_DILIGENT - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "MG_Include/UncertainBool.hpp" -#include "MG_Include/IndexGenerator.hpp" - -#ifdef _WIN32 -#include -#endif - -#ifndef _WIN32 -#include -#include -#include -#endif - -#ifdef __ANDROID__ -#include -#include -#include -#include -#elif _WIN32 -#include -#include -#else -#include -#endif - -#include -#include -#include - -#if BACKEND_TYPE == BACKEND_DILIGENT -#include "EngineFactory.h" -#include "EngineFactoryOpenGL.h" -#include "EngineFactoryVk.h" -#include "RefCntAutoPtr.hpp" - -#include "PipelineState.h" -#include "GraphicsTypes.h" -#include "DeviceContext.h" -#endif - - -#include "Constants.h" -#include "Global.h" -#include "MG_GL/Implementations/EGL/Diligent/DiligentConfig.h" -#include "MG_GL/BackendLoader/GLES/Loader.h" -#include "MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.h" -#include "MG_GL/Implementations/GL/Getter/GL_Getter.h" -#include "MG_GL/Implementations/GL/Getter/BackendInfo.h" -#include "MG_GL/Implementations/GL/Buffer/GL_Buffer.h" -#include "MG_GL/Implementations/GL/Drawing/GL_Drawing.h" -#include "MG_GL/Implementations/GL/Program/GL_Program.h" -#include "MG_GL/Implementations/GL/Texture/GL_Texture.h" -#include "MG_GL/Implementations/GL/VertexArray/GL_VertexArray.h" -#include "MG_GL/State/Common/CommonState.h" -#include "MG_GL/State/Texture/TextureState.h" -#include "MG_GL/State/VertexArray/VertexArrayState.h" -#include "MG_GL/State/Buffer/BufferState.h" -#include "MG_GL/State/Program/ShaderObject.h" -#include "MG_GL/State/Program/ProgramState.h" -#include "MG_GL/State/Framebuffer/FramebufferState.h" -#include "MG_GL/State/Core/GLState.h" -#include "MG_GL/Implementations/EGL/Diligent/EGL_impl.h" -#include "MG_GL/Implementations/GLX/LookUp/LookUp.h" -#include "MG_UTIL/Debug/Debug.h" -#include "MG_UTIL/Program/GLSLTool.h" -#include "MG_UTIL/Program/DebugTool.h" -#include "MG_GL/Implementations/GL/Common/GL_Common.h" -#include "MG_GL/Implementations/EGL/VK/EGL_EMU.h" -#include "MG_GL/Implementations/EGL/GLES/EGL_WRAP.h" -#include "MG_RHI/GLES/Test/TestDrawing.h" diff --git a/MG/Init.cpp b/MG/Init.cpp deleted file mode 100644 index f35dd933..00000000 --- a/MG/Init.cpp +++ /dev/null @@ -1,48 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "Includes.h" - -void MG_Initialize() { - MG_Util::Debug::LogInit(); - MG_Util::Debug::LogI("MobileGL Initializing..."); - MG_State::Init(); -#if BACKEND_TYPE == BACKEND_GLES - MG_GL::BackendLoader::Init(); -#endif -} - -void MG_Destroy() { - MG_Util::Debug::LogI("MobileGL Exiting..."); - MG_State::Destroy(); -} - -#if defined(__linux__) || defined(__APPLE__) -__attribute__((constructor)) static void AutoInit() { - MG_Initialize(); -} - -__attribute__((destructor)) static void AutoDestroy() { - MG_Destroy(); -} -#endif - -#ifdef _WIN32 -BOOL WINAPI DllMain(HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved) -{ - switch (ul_reason_for_call) - { - case DLL_PROCESS_ATTACH: - MG_Initialize(); - break; - - case DLL_PROCESS_DETACH: - MG_Destroy(); - break; - } - return TRUE; -} -#endif \ No newline at end of file diff --git a/MG/MG_GL/BackendLoader/GLES/Loader.cpp b/MG/MG_GL/BackendLoader/GLES/Loader.cpp deleted file mode 100644 index 5cc53e92..00000000 --- a/MG/MG_GL/BackendLoader/GLES/Loader.cpp +++ /dev/null @@ -1,1059 +0,0 @@ -// -// Created by BZLZHH on 2025/4/26. -// - -#include "../../../Includes.h" - -#if BACKEND_TYPE == BACKEND_GLES - -// TODO: Take this code file apart into multiple files. - -#define GL_FUNC_DECL(name) \ -name##_PTR name; - -namespace GLES { - GL_FUNC_DECL(glActiveTexture) - GL_FUNC_DECL(glAttachShader) - GL_FUNC_DECL(glBindAttribLocation) - GL_FUNC_DECL(glBindBuffer) - GL_FUNC_DECL(glBindFramebuffer) - GL_FUNC_DECL(glBindRenderbuffer) - GL_FUNC_DECL(glBindTexture) - GL_FUNC_DECL(glBlendColor) - GL_FUNC_DECL(glBlendEquation) - GL_FUNC_DECL(glBlendEquationSeparate) - GL_FUNC_DECL(glBlendFunc) - GL_FUNC_DECL(glBlendFuncSeparate) - GL_FUNC_DECL(glBufferData) - GL_FUNC_DECL(glBufferSubData) - GL_FUNC_DECL(glCheckFramebufferStatus) - GL_FUNC_DECL(glClear) - GL_FUNC_DECL(glClearColor) - GL_FUNC_DECL(glClearDepthf) - GL_FUNC_DECL(glClearStencil) - GL_FUNC_DECL(glColorMask) - GL_FUNC_DECL(glCompileShader) - GL_FUNC_DECL(glCompressedTexImage2D) - GL_FUNC_DECL(glCompressedTexSubImage2D) - GL_FUNC_DECL(glCopyTexImage2D) - GL_FUNC_DECL(glCopyTexSubImage2D) - GL_FUNC_DECL(glCreateProgram) - GL_FUNC_DECL(glCreateShader) - GL_FUNC_DECL(glCullFace) - GL_FUNC_DECL(glDeleteBuffers) - GL_FUNC_DECL(glDeleteFramebuffers) - GL_FUNC_DECL(glDeleteProgram) - GL_FUNC_DECL(glDeleteRenderbuffers) - GL_FUNC_DECL(glDeleteShader) - GL_FUNC_DECL(glDeleteTextures) - GL_FUNC_DECL(glDepthFunc) - GL_FUNC_DECL(glDepthMask) - GL_FUNC_DECL(glDepthRangef) - GL_FUNC_DECL(glDetachShader) - GL_FUNC_DECL(glDisable) - GL_FUNC_DECL(glDisableVertexAttribArray) - GL_FUNC_DECL(glDrawArrays) - GL_FUNC_DECL(glDrawElements) - GL_FUNC_DECL(glEnable) - GL_FUNC_DECL(glEnableVertexAttribArray) - GL_FUNC_DECL(glFinish) - GL_FUNC_DECL(glFlush) - GL_FUNC_DECL(glFramebufferRenderbuffer) - GL_FUNC_DECL(glFramebufferTexture2D) - GL_FUNC_DECL(glFrontFace) - GL_FUNC_DECL(glGenBuffers) - GL_FUNC_DECL(glGenerateMipmap) - GL_FUNC_DECL(glGenFramebuffers) - GL_FUNC_DECL(glGenRenderbuffers) - GL_FUNC_DECL(glGenTextures) - GL_FUNC_DECL(glGetActiveAttrib) - GL_FUNC_DECL(glGetActiveUniform) - GL_FUNC_DECL(glGetAttachedShaders) - GL_FUNC_DECL(glGetAttribLocation) - GL_FUNC_DECL(glGetBooleanv) - GL_FUNC_DECL(glGetBufferParameteriv) - GL_FUNC_DECL(glGetError) - GL_FUNC_DECL(glGetString) - GL_FUNC_DECL(glGetStringi) - GL_FUNC_DECL(glGetFloatv) - GL_FUNC_DECL(glGetFramebufferAttachmentParameteriv) - GL_FUNC_DECL(glGetIntegerv) - GL_FUNC_DECL(glGetProgramiv) - GL_FUNC_DECL(glGetProgramInfoLog) - GL_FUNC_DECL(glGetRenderbufferParameteriv) - GL_FUNC_DECL(glGetShaderiv) - GL_FUNC_DECL(glGetShaderInfoLog) - GL_FUNC_DECL(glGetShaderPrecisionFormat) - GL_FUNC_DECL(glGetShaderSource) - GL_FUNC_DECL(glGetTexParameterfv) - GL_FUNC_DECL(glGetTexParameteriv) - GL_FUNC_DECL(glGetUniformfv) - GL_FUNC_DECL(glGetUniformiv) - GL_FUNC_DECL(glGetUniformLocation) - GL_FUNC_DECL(glGetVertexAttribfv) - GL_FUNC_DECL(glGetVertexAttribiv) - GL_FUNC_DECL(glGetVertexAttribPointerv) - GL_FUNC_DECL(glHint) - GL_FUNC_DECL(glIsBuffer) - GL_FUNC_DECL(glIsEnabled) - GL_FUNC_DECL(glIsFramebuffer) - GL_FUNC_DECL(glIsProgram) - GL_FUNC_DECL(glIsRenderbuffer) - GL_FUNC_DECL(glIsShader) - GL_FUNC_DECL(glIsTexture) - GL_FUNC_DECL(glLineWidth) - GL_FUNC_DECL(glLinkProgram) - GL_FUNC_DECL(glPixelStorei) - GL_FUNC_DECL(glPolygonOffset) - GL_FUNC_DECL(glReadPixels) - GL_FUNC_DECL(glReleaseShaderCompiler) - GL_FUNC_DECL(glRenderbufferStorage) - GL_FUNC_DECL(glSampleCoverage) - GL_FUNC_DECL(glScissor) - GL_FUNC_DECL(glShaderBinary) - GL_FUNC_DECL(glShaderSource) - GL_FUNC_DECL(glStencilFunc) - GL_FUNC_DECL(glStencilFuncSeparate) - GL_FUNC_DECL(glStencilMask) - GL_FUNC_DECL(glStencilMaskSeparate) - GL_FUNC_DECL(glStencilOp) - GL_FUNC_DECL(glStencilOpSeparate) - GL_FUNC_DECL(glTexImage2D) - GL_FUNC_DECL(glTexParameterf) - GL_FUNC_DECL(glTexParameterfv) - GL_FUNC_DECL(glTexParameteri) - GL_FUNC_DECL(glTexParameteriv) - GL_FUNC_DECL(glTexSubImage2D) - GL_FUNC_DECL(glUniform1f) - GL_FUNC_DECL(glUniform1fv) - GL_FUNC_DECL(glUniform1i) - GL_FUNC_DECL(glUniform1iv) - GL_FUNC_DECL(glUniform2f) - GL_FUNC_DECL(glUniform2fv) - GL_FUNC_DECL(glUniform2i) - GL_FUNC_DECL(glUniform2iv) - GL_FUNC_DECL(glUniform3f) - GL_FUNC_DECL(glUniform3fv) - GL_FUNC_DECL(glUniform3i) - GL_FUNC_DECL(glUniform3iv) - GL_FUNC_DECL(glUniform4f) - GL_FUNC_DECL(glUniform4fv) - GL_FUNC_DECL(glUniform4i) - GL_FUNC_DECL(glUniform4iv) - GL_FUNC_DECL(glUniformMatrix2fv) - GL_FUNC_DECL(glUniformMatrix3fv) - GL_FUNC_DECL(glUniformMatrix4fv) - GL_FUNC_DECL(glUseProgram) - GL_FUNC_DECL(glValidateProgram) - GL_FUNC_DECL(glVertexAttrib1f) - GL_FUNC_DECL(glVertexAttrib1fv) - GL_FUNC_DECL(glVertexAttrib2f) - GL_FUNC_DECL(glVertexAttrib2fv) - GL_FUNC_DECL(glVertexAttrib3f) - GL_FUNC_DECL(glVertexAttrib3fv) - GL_FUNC_DECL(glVertexAttrib4f) - GL_FUNC_DECL(glVertexAttrib4fv) - GL_FUNC_DECL(glVertexAttribPointer) - GL_FUNC_DECL(glViewport) - GL_FUNC_DECL(glReadBuffer) - GL_FUNC_DECL(glDrawRangeElements) - GL_FUNC_DECL(glTexImage3D) - GL_FUNC_DECL(glTexSubImage3D) - GL_FUNC_DECL(glCopyTexSubImage3D) - GL_FUNC_DECL(glCompressedTexImage3D) - GL_FUNC_DECL(glCompressedTexSubImage3D) - GL_FUNC_DECL(glGenQueries) - GL_FUNC_DECL(glDeleteQueries) - GL_FUNC_DECL(glIsQuery) - GL_FUNC_DECL(glBeginQuery) - GL_FUNC_DECL(glEndQuery) - GL_FUNC_DECL(glGetQueryiv) - GL_FUNC_DECL(glGetQueryObjectuiv) - GL_FUNC_DECL(glUnmapBuffer) - GL_FUNC_DECL(glGetBufferPointerv) - GL_FUNC_DECL(glDrawBuffers) - GL_FUNC_DECL(glUniformMatrix2x3fv) - GL_FUNC_DECL(glUniformMatrix3x2fv) - GL_FUNC_DECL(glUniformMatrix2x4fv) - GL_FUNC_DECL(glUniformMatrix4x2fv) - GL_FUNC_DECL(glUniformMatrix3x4fv) - GL_FUNC_DECL(glUniformMatrix4x3fv) - GL_FUNC_DECL(glBlitFramebuffer) - GL_FUNC_DECL(glRenderbufferStorageMultisample) - GL_FUNC_DECL(glFramebufferTextureLayer) - GL_FUNC_DECL(glFlushMappedBufferRange) - GL_FUNC_DECL(glBindVertexArray) - GL_FUNC_DECL(glDeleteVertexArrays) - GL_FUNC_DECL(glGenVertexArrays) - GL_FUNC_DECL(glIsVertexArray) - GL_FUNC_DECL(glGetIntegeri_v) - GL_FUNC_DECL(glBeginTransformFeedback) - GL_FUNC_DECL(glEndTransformFeedback) - GL_FUNC_DECL(glBindBufferRange) - GL_FUNC_DECL(glBindBufferBase) - GL_FUNC_DECL(glTransformFeedbackVaryings) - GL_FUNC_DECL(glGetTransformFeedbackVarying) - GL_FUNC_DECL(glVertexAttribIPointer) - GL_FUNC_DECL(glGetVertexAttribIiv) - GL_FUNC_DECL(glGetVertexAttribIuiv) - GL_FUNC_DECL(glVertexAttribI4i) - GL_FUNC_DECL(glVertexAttribI4ui) - GL_FUNC_DECL(glVertexAttribI4iv) - GL_FUNC_DECL(glVertexAttribI4uiv) - GL_FUNC_DECL(glGetUniformuiv) - GL_FUNC_DECL(glGetFragDataLocation) - GL_FUNC_DECL(glUniform1ui) - GL_FUNC_DECL(glUniform2ui) - GL_FUNC_DECL(glUniform3ui) - GL_FUNC_DECL(glUniform4ui) - GL_FUNC_DECL(glUniform1uiv) - GL_FUNC_DECL(glUniform2uiv) - GL_FUNC_DECL(glUniform3uiv) - GL_FUNC_DECL(glUniform4uiv) - GL_FUNC_DECL(glClearBufferiv) - GL_FUNC_DECL(glClearBufferuiv) - GL_FUNC_DECL(glClearBufferfv) - GL_FUNC_DECL(glClearBufferfi) - GL_FUNC_DECL(glCopyBufferSubData) - GL_FUNC_DECL(glGetUniformIndices) - GL_FUNC_DECL(glGetActiveUniformsiv) - GL_FUNC_DECL(glGetUniformBlockIndex) - GL_FUNC_DECL(glGetActiveUniformBlockiv) - GL_FUNC_DECL(glGetActiveUniformBlockName) - GL_FUNC_DECL(glUniformBlockBinding) - GL_FUNC_DECL(glDrawArraysInstanced) - GL_FUNC_DECL(glDrawElementsInstanced) - GL_FUNC_DECL(glFenceSync) - GL_FUNC_DECL(glIsSync) - GL_FUNC_DECL(glDeleteSync) - GL_FUNC_DECL(glClientWaitSync) - GL_FUNC_DECL(glWaitSync) - GL_FUNC_DECL(glGetInteger64v) - GL_FUNC_DECL(glGetSynciv) - GL_FUNC_DECL(glGetInteger64i_v) - GL_FUNC_DECL(glGetBufferParameteri64v) - GL_FUNC_DECL(glGenSamplers) - GL_FUNC_DECL(glDeleteSamplers) - GL_FUNC_DECL(glIsSampler) - GL_FUNC_DECL(glBindSampler) - GL_FUNC_DECL(glSamplerParameteri) - GL_FUNC_DECL(glSamplerParameteriv) - GL_FUNC_DECL(glSamplerParameterf) - GL_FUNC_DECL(glSamplerParameterfv) - GL_FUNC_DECL(glGetSamplerParameteriv) - GL_FUNC_DECL(glGetSamplerParameterfv) - GL_FUNC_DECL(glVertexAttribDivisor) - GL_FUNC_DECL(glBindTransformFeedback) - GL_FUNC_DECL(glDeleteTransformFeedbacks) - GL_FUNC_DECL(glGenTransformFeedbacks) - GL_FUNC_DECL(glIsTransformFeedback) - GL_FUNC_DECL(glPauseTransformFeedback) - GL_FUNC_DECL(glResumeTransformFeedback) - GL_FUNC_DECL(glGetProgramBinary) - GL_FUNC_DECL(glProgramBinary) - GL_FUNC_DECL(glProgramParameteri) - GL_FUNC_DECL(glInvalidateFramebuffer) - GL_FUNC_DECL(glInvalidateSubFramebuffer) - GL_FUNC_DECL(glTexStorage2D) - GL_FUNC_DECL(glTexStorage3D) - GL_FUNC_DECL(glGetInternalformativ) - GL_FUNC_DECL(glDispatchCompute) - GL_FUNC_DECL(glDispatchComputeIndirect) - GL_FUNC_DECL(glDrawArraysIndirect) - GL_FUNC_DECL(glDrawElementsIndirect) - GL_FUNC_DECL(glFramebufferParameteri) - GL_FUNC_DECL(glGetFramebufferParameteriv) - GL_FUNC_DECL(glGetProgramInterfaceiv) - GL_FUNC_DECL(glGetProgramResourceIndex) - GL_FUNC_DECL(glGetProgramResourceName) - GL_FUNC_DECL(glGetProgramResourceiv) - GL_FUNC_DECL(glGetProgramResourceLocation) - GL_FUNC_DECL(glUseProgramStages) - GL_FUNC_DECL(glActiveShaderProgram) - GL_FUNC_DECL(glCreateShaderProgramv) - GL_FUNC_DECL(glBindProgramPipeline) - GL_FUNC_DECL(glDeleteProgramPipelines) - GL_FUNC_DECL(glGenProgramPipelines) - GL_FUNC_DECL(glIsProgramPipeline) - GL_FUNC_DECL(glGetProgramPipelineiv) - GL_FUNC_DECL(glProgramUniform1i) - GL_FUNC_DECL(glProgramUniform2i) - GL_FUNC_DECL(glProgramUniform3i) - GL_FUNC_DECL(glProgramUniform4i) - GL_FUNC_DECL(glProgramUniform1ui) - GL_FUNC_DECL(glProgramUniform2ui) - GL_FUNC_DECL(glProgramUniform3ui) - GL_FUNC_DECL(glProgramUniform4ui) - GL_FUNC_DECL(glProgramUniform1f) - GL_FUNC_DECL(glProgramUniform2f) - GL_FUNC_DECL(glProgramUniform3f) - GL_FUNC_DECL(glProgramUniform4f) - GL_FUNC_DECL(glProgramUniform1iv) - GL_FUNC_DECL(glProgramUniform2iv) - GL_FUNC_DECL(glProgramUniform3iv) - GL_FUNC_DECL(glProgramUniform4iv) - GL_FUNC_DECL(glProgramUniform1uiv) - GL_FUNC_DECL(glProgramUniform2uiv) - GL_FUNC_DECL(glProgramUniform3uiv) - GL_FUNC_DECL(glProgramUniform4uiv) - GL_FUNC_DECL(glProgramUniform1fv) - GL_FUNC_DECL(glProgramUniform2fv) - GL_FUNC_DECL(glProgramUniform3fv) - GL_FUNC_DECL(glProgramUniform4fv) - GL_FUNC_DECL(glProgramUniformMatrix2fv) - GL_FUNC_DECL(glProgramUniformMatrix3fv) - GL_FUNC_DECL(glProgramUniformMatrix4fv) - GL_FUNC_DECL(glProgramUniformMatrix2x3fv) - GL_FUNC_DECL(glProgramUniformMatrix3x2fv) - GL_FUNC_DECL(glProgramUniformMatrix2x4fv) - GL_FUNC_DECL(glProgramUniformMatrix4x2fv) - GL_FUNC_DECL(glProgramUniformMatrix3x4fv) - GL_FUNC_DECL(glProgramUniformMatrix4x3fv) - GL_FUNC_DECL(glValidateProgramPipeline) - GL_FUNC_DECL(glGetProgramPipelineInfoLog) - GL_FUNC_DECL(glBindImageTexture) - GL_FUNC_DECL(glGetBooleani_v) - GL_FUNC_DECL(glMemoryBarrier) - GL_FUNC_DECL(glMemoryBarrierByRegion) - GL_FUNC_DECL(glTexStorage2DMultisample) - GL_FUNC_DECL(glGetMultisamplefv) - GL_FUNC_DECL(glSampleMaski) - GL_FUNC_DECL(glGetTexLevelParameteriv) - GL_FUNC_DECL(glGetTexLevelParameterfv) - GL_FUNC_DECL(glBindVertexBuffer) - GL_FUNC_DECL(glVertexAttribFormat) - GL_FUNC_DECL(glVertexAttribIFormat) - GL_FUNC_DECL(glVertexAttribBinding) - GL_FUNC_DECL(glVertexBindingDivisor) - GL_FUNC_DECL(glBlendBarrier) - GL_FUNC_DECL(glCopyImageSubData) - GL_FUNC_DECL(glDebugMessageControl) - GL_FUNC_DECL(glDebugMessageInsert) - GL_FUNC_DECL(glDebugMessageCallback) - GL_FUNC_DECL(glGetDebugMessageLog) - GL_FUNC_DECL(glPushDebugGroup) - GL_FUNC_DECL(glPopDebugGroup) - GL_FUNC_DECL(glObjectLabel) - GL_FUNC_DECL(glGetObjectLabel) - GL_FUNC_DECL(glObjectPtrLabel) - GL_FUNC_DECL(glGetObjectPtrLabel) - GL_FUNC_DECL(glGetPointerv) - GL_FUNC_DECL(glEnablei) - GL_FUNC_DECL(glDisablei) - GL_FUNC_DECL(glBlendEquationi) - GL_FUNC_DECL(glBlendEquationSeparatei) - GL_FUNC_DECL(glBlendFunci) - GL_FUNC_DECL(glBlendFuncSeparatei) - GL_FUNC_DECL(glColorMaski) - GL_FUNC_DECL(glIsEnabledi) - GL_FUNC_DECL(glDrawElementsBaseVertex) - GL_FUNC_DECL(glDrawRangeElementsBaseVertex) - GL_FUNC_DECL(glDrawElementsInstancedBaseVertex) - GL_FUNC_DECL(glFramebufferTexture) - GL_FUNC_DECL(glPrimitiveBoundingBox) - GL_FUNC_DECL(glGetGraphicsResetStatus) - GL_FUNC_DECL(glReadnPixels) - GL_FUNC_DECL(glGetnUniformfv) - GL_FUNC_DECL(glGetnUniformiv) - GL_FUNC_DECL(glGetnUniformuiv) - GL_FUNC_DECL(glMinSampleShading) - GL_FUNC_DECL(glPatchParameteri) - GL_FUNC_DECL(glTexParameterIiv) - GL_FUNC_DECL(glTexParameterIuiv) - GL_FUNC_DECL(glGetTexParameterIiv) - GL_FUNC_DECL(glGetTexParameterIuiv) - GL_FUNC_DECL(glSamplerParameterIiv) - GL_FUNC_DECL(glSamplerParameterIuiv) - GL_FUNC_DECL(glGetSamplerParameterIiv) - GL_FUNC_DECL(glGetSamplerParameterIuiv) - GL_FUNC_DECL(glTexBuffer) - GL_FUNC_DECL(glTexBufferRange) - GL_FUNC_DECL(glTexStorage3DMultisample) - GL_FUNC_DECL(glMapBufferRange) - GL_FUNC_DECL(glBufferStorageEXT) - GL_FUNC_DECL(glGetQueryObjectivEXT) - GL_FUNC_DECL(glGetQueryObjecti64vEXT) - GL_FUNC_DECL(glBindFragDataLocationEXT) - GL_FUNC_DECL(glMapBufferOES) - - GL_FUNC_DECL(glMultiDrawArraysIndirectEXT) - GL_FUNC_DECL(glMultiDrawElementsIndirectEXT) - GL_FUNC_DECL(glMultiDrawElementsBaseVertexEXT) - - GL_FUNC_DECL(glBruh) -} - -#undef GL_FUNC_DECL - -namespace MG_GL::BackendLoader { - void Init() { - GLESBackend::LoadLibs(); - GLESBackend::InitEGL(); - GLESBackend::InitGLES(); - GLESBackend::DestroyTempEGLCtx(); - } -} - -namespace MG_GL::BackendLoader::GLESBackend { - void *libGLES = nullptr, *libEGL = nullptr; - - static const char *LibPathPrefixes[] = { - "", - "/opt/vc/lib/", - "/usr/local/lib/", - "/usr/lib/", - nullptr - }; - - static const char *LibExts[] = { - "so", - "so.1", - "so.2", - "dylib", - "dll", - nullptr - }; - - static const char *GLES3Libs[] = { - "libGLESv3_CM", - "libGLESv3", - nullptr - }; - - static const char *EGLLibs[] = { - "libEGL", - nullptr - }; - - void *OpenLib(const char **names, const char *override) { - void *lib = nullptr; - - char path_name[PATH_MAX + 1]; - int flags = RTLD_LOCAL | RTLD_NOW; - if (override) { - if ((lib = dlopen(override, flags))) { - strncpy(path_name, override, PATH_MAX); - return lib; - } else { - MG_Util::Debug::LogE("LIBGL_GLES override failed: %s\n", dlerror()); - } - } - for (int p = 0; LibPathPrefixes[p]; p++) { - for (int i = 0; names[i]; i++) { - for (int e = 0; LibExts[e]; e++) { - snprintf(path_name, PATH_MAX, "%s%s.%s", LibPathPrefixes[p], names[i], LibExts[e]); - if ((lib = dlopen(path_name, flags))) { - return lib; - } - } - } - } - return lib; - } - - void LoadLibs() { - static int first = 1; - if (!first) return; - first = 0; - - // TODO: Add ANGLE override? - libGLES = OpenLib(GLES3Libs, nullptr); - libEGL = OpenLib(EGLLibs, nullptr); - } - - void *ProcAddress(void *lib, const char *name) { - return dlsym(lib, name); - } - - void LogOpenGLExtensions() { - const GLubyte *raw_extensions = glGetString(GL_EXTENSIONS); - MG_Util::Debug::LogD("Extensions list using glGetString:\n%s", - raw_extensions ? (const char *) raw_extensions : "(nullptr)"); - GLint num_extensions = 0; - glGetIntegerv(GL_NUM_EXTENSIONS, &num_extensions); - MG_Util::Debug::LogD("Extensions list using glGetStringi:\n"); - for (GLint i = 0; i < num_extensions; ++i) { - const GLubyte *extension = glGetStringi(GL_EXTENSIONS, i); - if (extension) { - MG_Util::Debug::LogD("%s", (const char *) extension); - } else { - MG_Util::Debug::LogD("(nullptr)"); - } - } - } - - void InitGLESCapabilities() { - GLES::glGetIntegerv(GL_MAJOR_VERSION, &GLES::Caps::Version::Major); - GLES::glGetIntegerv(GL_MINOR_VERSION, &GLES::Caps::Version::Minor); - - GLint num_es_extensions = 0; - GLES::glGetIntegerv(GL_NUM_EXTENSIONS, &num_es_extensions); - MG_Util::Debug::LogD("Detected %d OpenGL ES extensions.", num_es_extensions); - for (GLint i = 0; i < num_es_extensions; ++i) { - const char *extension = (const char *) GLES::glGetStringi(GL_EXTENSIONS, i); - if (extension) { - MG_Util::Debug::LogD("%s", (const char *) extension); - if (strcmp(extension, "GL_EXT_buffer_storage") == 0) { - GLES::Caps::Exts::GL_EXT_buffer_storage = 1; - } else if (strcmp(extension, "GL_EXT_disjoint_timer_query") == 0) { - GLES::Caps::Exts::GL_EXT_disjoint_timer_query = 1; - } else if (strcmp(extension, "GL_QCOM_texture_lod_bias") == 0) { - GLES::Caps::Exts::GL_QCOM_texture_lod_bias = 1; - } else if (strcmp(extension, "GL_EXT_blend_func_extended") == 0) { - GLES::Caps::Exts::GL_EXT_blend_func_extended = 1; - } else if (strcmp(extension, "GL_EXT_texture_format_BGRA8888") == 0) { - GLES::Caps::Exts::GL_EXT_texture_format_BGRA8888 = 1; - } else if (strcmp(extension, "GL_EXT_read_format_bgra") == 0) { - GLES::Caps::Exts::GL_EXT_read_format_bgra = 1; - } else if (strcmp(extension, "GL_OES_mapbuffer") == 0) { - GLES::Caps::Exts::GL_OES_mapbuffer = 1; - } else if (strcmp(extension, "GL_EXT_multi_draw_indirect") == 0) { - GLES::Caps::Exts::GL_EXT_multi_draw_indirect = 1; - } else if (strcmp(extension, "GL_OES_draw_elements_base_vertex") == 0) { - GLES::Caps::Exts::GL_OES_draw_elements_base_vertex = 1; - } else if (strcmp(extension, "GL_OES_depth_texture") == 0) { - GLES::Caps::Exts::GL_OES_depth_texture = 1; - } else if (strcmp(extension, "GL_OES_depth24") == 0) { - GLES::Caps::Exts::GL_OES_depth24 = 1; - } else if (strcmp(extension, "GL_OES_depth_texture_float") == 0) { - GLES::Caps::Exts::GL_OES_depth_texture_float = 1; - } else if (strcmp(extension, "GL_EXT_texture_norm16") == 0) { - GLES::Caps::Exts::GL_EXT_texture_norm16 = 1; - } else if (strcmp(extension, "GL_EXT_texture_rg") == 0) { - GLES::Caps::Exts::GL_EXT_texture_rg = 1; - } - } else { - MG_Util::Debug::LogD("(nullptr)"); - } - } - - MG_Util::Debug::LogD("Detected GL_QCOM_texture_lod_bias!"); - - if (GLES::Caps::Exts::GL_EXT_buffer_storage) { - // TODO: Complete AppendExtension. -//AppendExtension("GL_ARB_buffer_storage"); - } - - if (GLES::Caps::Exts::GL_EXT_disjoint_timer_query) { - // TODO: Complete AppendExtension. -//AppendExtension("GL_ARB_timer_query"); - // TODO: Complete AppendExtension. -//AppendExtension("GL_EXT_timer_query"); - } - } - - void InitGLES() { - INIT_GLES_FUNC(glActiveTexture) - INIT_GLES_FUNC(glAttachShader) - INIT_GLES_FUNC(glBindAttribLocation) - INIT_GLES_FUNC(glBindBuffer) - INIT_GLES_FUNC(glBindFramebuffer) - INIT_GLES_FUNC(glBindRenderbuffer) - INIT_GLES_FUNC(glBindTexture) - INIT_GLES_FUNC(glBlendColor) - INIT_GLES_FUNC(glBlendEquation) - INIT_GLES_FUNC(glBlendEquationSeparate) - INIT_GLES_FUNC(glBlendFunc) - INIT_GLES_FUNC(glBlendFuncSeparate) - INIT_GLES_FUNC(glBufferData) - INIT_GLES_FUNC(glBufferSubData) - INIT_GLES_FUNC(glCheckFramebufferStatus) - INIT_GLES_FUNC(glClear) - INIT_GLES_FUNC(glClearColor) - INIT_GLES_FUNC(glClearDepthf) - INIT_GLES_FUNC(glClearStencil) - INIT_GLES_FUNC(glColorMask) - INIT_GLES_FUNC(glCompileShader) - INIT_GLES_FUNC(glCompressedTexImage2D) - INIT_GLES_FUNC(glCompressedTexSubImage2D) -// INIT_GLES_FUNC(glCopyTexImage1D) - INIT_GLES_FUNC(glCopyTexImage2D) - INIT_GLES_FUNC(glCopyTexSubImage2D) - INIT_GLES_FUNC(glCreateProgram) - INIT_GLES_FUNC(glCreateShader) - INIT_GLES_FUNC(glCullFace) - INIT_GLES_FUNC(glDeleteBuffers) - INIT_GLES_FUNC(glDeleteFramebuffers) - INIT_GLES_FUNC(glDeleteProgram) - INIT_GLES_FUNC(glDeleteRenderbuffers) - INIT_GLES_FUNC(glDeleteShader) - INIT_GLES_FUNC(glDeleteTextures) - INIT_GLES_FUNC(glDepthFunc) - INIT_GLES_FUNC(glDepthMask) - INIT_GLES_FUNC(glDepthRangef) - INIT_GLES_FUNC(glDetachShader) - INIT_GLES_FUNC(glDisable) - INIT_GLES_FUNC(glDisableVertexAttribArray) - INIT_GLES_FUNC(glDrawArrays) - INIT_GLES_FUNC(glDrawElements) - INIT_GLES_FUNC(glEnable) - INIT_GLES_FUNC(glEnableVertexAttribArray) - INIT_GLES_FUNC(glFinish) - INIT_GLES_FUNC(glFlush) - INIT_GLES_FUNC(glFramebufferRenderbuffer) - INIT_GLES_FUNC(glFramebufferTexture2D) - INIT_GLES_FUNC(glFrontFace) - INIT_GLES_FUNC(glGenBuffers) - INIT_GLES_FUNC(glGenerateMipmap) - INIT_GLES_FUNC(glGenFramebuffers) - INIT_GLES_FUNC(glGenRenderbuffers) - INIT_GLES_FUNC(glGenTextures) - INIT_GLES_FUNC(glGetActiveAttrib) - INIT_GLES_FUNC(glGetActiveUniform) - INIT_GLES_FUNC(glGetAttachedShaders) - INIT_GLES_FUNC(glGetAttribLocation) - INIT_GLES_FUNC(glGetBooleanv) - INIT_GLES_FUNC(glGetBufferParameteriv) - INIT_GLES_FUNC(glGetError) - INIT_GLES_FUNC(glGetString) - INIT_GLES_FUNC(glGetStringi) - INIT_GLES_FUNC(glGetFloatv) - INIT_GLES_FUNC(glGetFramebufferAttachmentParameteriv) - INIT_GLES_FUNC(glGetIntegerv) - INIT_GLES_FUNC(glGetProgramiv) - INIT_GLES_FUNC(glGetProgramInfoLog) - INIT_GLES_FUNC(glGetRenderbufferParameteriv) - INIT_GLES_FUNC(glGetShaderiv) - INIT_GLES_FUNC(glGetShaderInfoLog) - INIT_GLES_FUNC(glGetShaderPrecisionFormat) - INIT_GLES_FUNC(glGetShaderSource) - INIT_GLES_FUNC(glGetTexParameterfv) - INIT_GLES_FUNC(glGetTexParameteriv) - INIT_GLES_FUNC(glGetUniformfv) - INIT_GLES_FUNC(glGetUniformiv) - INIT_GLES_FUNC(glGetUniformLocation) - INIT_GLES_FUNC(glGetVertexAttribfv) - INIT_GLES_FUNC(glGetVertexAttribiv) - INIT_GLES_FUNC(glGetVertexAttribPointerv) - INIT_GLES_FUNC(glHint) - INIT_GLES_FUNC(glIsBuffer) - INIT_GLES_FUNC(glIsEnabled) - INIT_GLES_FUNC(glIsFramebuffer) - INIT_GLES_FUNC(glIsProgram) - INIT_GLES_FUNC(glIsRenderbuffer) - INIT_GLES_FUNC(glIsShader) - INIT_GLES_FUNC(glIsTexture) - INIT_GLES_FUNC(glLineWidth) - INIT_GLES_FUNC(glLinkProgram) - INIT_GLES_FUNC(glPixelStorei) - INIT_GLES_FUNC(glPolygonOffset) - INIT_GLES_FUNC(glReadPixels) - INIT_GLES_FUNC(glReleaseShaderCompiler) - INIT_GLES_FUNC(glRenderbufferStorage) - INIT_GLES_FUNC(glSampleCoverage) - INIT_GLES_FUNC(glScissor) - INIT_GLES_FUNC(glShaderBinary) - INIT_GLES_FUNC(glShaderSource) - INIT_GLES_FUNC(glStencilFunc) - INIT_GLES_FUNC(glStencilFuncSeparate) - INIT_GLES_FUNC(glStencilMask) - INIT_GLES_FUNC(glStencilMaskSeparate) - INIT_GLES_FUNC(glStencilOp) - INIT_GLES_FUNC(glStencilOpSeparate) -// INIT_GLES_FUNC(glTexImage1D) - INIT_GLES_FUNC(glTexImage2D) -// INIT_GLES_FUNC(glTexStorage1D) - INIT_GLES_FUNC(glTexParameterf) - INIT_GLES_FUNC(glTexParameterfv) - INIT_GLES_FUNC(glTexParameteri) - INIT_GLES_FUNC(glTexParameteriv) - INIT_GLES_FUNC(glTexSubImage2D) - INIT_GLES_FUNC(glUniform1f) - INIT_GLES_FUNC(glUniform1fv) - INIT_GLES_FUNC(glUniform1i) - INIT_GLES_FUNC(glUniform1iv) - INIT_GLES_FUNC(glUniform2f) - INIT_GLES_FUNC(glUniform2fv) - INIT_GLES_FUNC(glUniform2i) - INIT_GLES_FUNC(glUniform2iv) - INIT_GLES_FUNC(glUniform3f) - INIT_GLES_FUNC(glUniform3fv) - INIT_GLES_FUNC(glUniform3i) - INIT_GLES_FUNC(glUniform3iv) - INIT_GLES_FUNC(glUniform4f) - INIT_GLES_FUNC(glUniform4fv) - INIT_GLES_FUNC(glUniform4i) - INIT_GLES_FUNC(glUniform4iv) - INIT_GLES_FUNC(glUniformMatrix2fv) - INIT_GLES_FUNC(glUniformMatrix3fv) - INIT_GLES_FUNC(glUniformMatrix4fv) - INIT_GLES_FUNC(glUseProgram) - INIT_GLES_FUNC(glValidateProgram) - INIT_GLES_FUNC(glVertexAttrib1f) - INIT_GLES_FUNC(glVertexAttrib1fv) - INIT_GLES_FUNC(glVertexAttrib2f) - INIT_GLES_FUNC(glVertexAttrib2fv) - INIT_GLES_FUNC(glVertexAttrib3f) - INIT_GLES_FUNC(glVertexAttrib3fv) - INIT_GLES_FUNC(glVertexAttrib4f) - INIT_GLES_FUNC(glVertexAttrib4fv) - INIT_GLES_FUNC(glVertexAttribPointer) - INIT_GLES_FUNC(glViewport) - INIT_GLES_FUNC(glReadBuffer) - INIT_GLES_FUNC(glDrawRangeElements) - INIT_GLES_FUNC(glTexImage3D) - INIT_GLES_FUNC(glTexSubImage3D) - INIT_GLES_FUNC(glCopyTexSubImage3D) - INIT_GLES_FUNC(glCompressedTexImage3D) - INIT_GLES_FUNC(glCompressedTexSubImage3D) - INIT_GLES_FUNC(glGenQueries) - INIT_GLES_FUNC(glDeleteQueries) - INIT_GLES_FUNC(glIsQuery) - INIT_GLES_FUNC(glBeginQuery) - INIT_GLES_FUNC(glEndQuery) - INIT_GLES_FUNC(glGetQueryiv) - INIT_GLES_FUNC(glGetQueryObjectuiv) - INIT_GLES_FUNC(glUnmapBuffer) - INIT_GLES_FUNC(glGetBufferPointerv) - INIT_GLES_FUNC(glDrawBuffers) - INIT_GLES_FUNC(glUniformMatrix2x3fv) - INIT_GLES_FUNC(glUniformMatrix3x2fv) - INIT_GLES_FUNC(glUniformMatrix2x4fv) - INIT_GLES_FUNC(glUniformMatrix4x2fv) - INIT_GLES_FUNC(glUniformMatrix3x4fv) - INIT_GLES_FUNC(glUniformMatrix4x3fv) - INIT_GLES_FUNC(glBlitFramebuffer) - INIT_GLES_FUNC(glRenderbufferStorageMultisample) - INIT_GLES_FUNC(glFramebufferTextureLayer) - INIT_GLES_FUNC(glFlushMappedBufferRange) - INIT_GLES_FUNC(glBindVertexArray) - INIT_GLES_FUNC(glDeleteVertexArrays) - INIT_GLES_FUNC(glGenVertexArrays) - INIT_GLES_FUNC(glIsVertexArray) - INIT_GLES_FUNC(glGetIntegeri_v) - INIT_GLES_FUNC(glBeginTransformFeedback) - INIT_GLES_FUNC(glEndTransformFeedback) - INIT_GLES_FUNC(glBindBufferRange) - INIT_GLES_FUNC(glBindBufferBase) - INIT_GLES_FUNC(glTransformFeedbackVaryings) - INIT_GLES_FUNC(glGetTransformFeedbackVarying) - INIT_GLES_FUNC(glVertexAttribIPointer) - INIT_GLES_FUNC(glGetVertexAttribIiv) - INIT_GLES_FUNC(glGetVertexAttribIuiv) - INIT_GLES_FUNC(glVertexAttribI4i) - INIT_GLES_FUNC(glVertexAttribI4ui) - INIT_GLES_FUNC(glVertexAttribI4iv) - INIT_GLES_FUNC(glVertexAttribI4uiv) - INIT_GLES_FUNC(glGetUniformuiv) - INIT_GLES_FUNC(glGetFragDataLocation) - INIT_GLES_FUNC(glUniform1ui) - INIT_GLES_FUNC(glUniform2ui) - INIT_GLES_FUNC(glUniform3ui) - INIT_GLES_FUNC(glUniform4ui) - INIT_GLES_FUNC(glUniform1uiv) - INIT_GLES_FUNC(glUniform2uiv) - INIT_GLES_FUNC(glUniform3uiv) - INIT_GLES_FUNC(glUniform4uiv) - INIT_GLES_FUNC(glClearBufferiv) - INIT_GLES_FUNC(glClearBufferuiv) - INIT_GLES_FUNC(glClearBufferfv) - INIT_GLES_FUNC(glClearBufferfi) - INIT_GLES_FUNC(glCopyBufferSubData) - INIT_GLES_FUNC(glGetUniformIndices) - INIT_GLES_FUNC(glGetActiveUniformsiv) - INIT_GLES_FUNC(glGetUniformBlockIndex) - INIT_GLES_FUNC(glGetActiveUniformBlockiv) - INIT_GLES_FUNC(glGetActiveUniformBlockName) - INIT_GLES_FUNC(glUniformBlockBinding) - INIT_GLES_FUNC(glDrawArraysInstanced) - INIT_GLES_FUNC(glDrawElementsInstanced) - INIT_GLES_FUNC(glFenceSync) - INIT_GLES_FUNC(glIsSync) - INIT_GLES_FUNC(glDeleteSync) - INIT_GLES_FUNC(glClientWaitSync) - INIT_GLES_FUNC(glWaitSync) - INIT_GLES_FUNC(glGetInteger64v) - INIT_GLES_FUNC(glGetSynciv) - INIT_GLES_FUNC(glGetInteger64i_v) - INIT_GLES_FUNC(glGetBufferParameteri64v) - INIT_GLES_FUNC(glGenSamplers) - INIT_GLES_FUNC(glDeleteSamplers) - INIT_GLES_FUNC(glIsSampler) - INIT_GLES_FUNC(glBindSampler) - INIT_GLES_FUNC(glSamplerParameteri) - INIT_GLES_FUNC(glSamplerParameteriv) - INIT_GLES_FUNC(glSamplerParameterf) - INIT_GLES_FUNC(glSamplerParameterfv) - INIT_GLES_FUNC(glGetSamplerParameteriv) - INIT_GLES_FUNC(glGetSamplerParameterfv) - INIT_GLES_FUNC(glVertexAttribDivisor) - INIT_GLES_FUNC(glBindTransformFeedback) - INIT_GLES_FUNC(glDeleteTransformFeedbacks) - INIT_GLES_FUNC(glGenTransformFeedbacks) - INIT_GLES_FUNC(glIsTransformFeedback) - INIT_GLES_FUNC(glPauseTransformFeedback) - INIT_GLES_FUNC(glResumeTransformFeedback) - INIT_GLES_FUNC(glGetProgramBinary) - INIT_GLES_FUNC(glProgramBinary) - INIT_GLES_FUNC(glProgramParameteri) - INIT_GLES_FUNC(glInvalidateFramebuffer) - INIT_GLES_FUNC(glInvalidateSubFramebuffer) - INIT_GLES_FUNC(glTexStorage2D) - INIT_GLES_FUNC(glTexStorage3D) - INIT_GLES_FUNC(glGetInternalformativ) - INIT_GLES_FUNC(glDispatchCompute) - INIT_GLES_FUNC(glDispatchComputeIndirect) - INIT_GLES_FUNC(glDrawArraysIndirect) - INIT_GLES_FUNC(glDrawElementsIndirect) - INIT_GLES_FUNC(glFramebufferParameteri) - INIT_GLES_FUNC(glGetFramebufferParameteriv) - INIT_GLES_FUNC(glGetProgramInterfaceiv) - INIT_GLES_FUNC(glGetProgramResourceIndex) - INIT_GLES_FUNC(glGetProgramResourceName) - INIT_GLES_FUNC(glGetProgramResourceiv) - INIT_GLES_FUNC(glGetProgramResourceLocation) - INIT_GLES_FUNC(glUseProgramStages) - INIT_GLES_FUNC(glActiveShaderProgram) - INIT_GLES_FUNC(glCreateShaderProgramv) - INIT_GLES_FUNC(glBindProgramPipeline) - INIT_GLES_FUNC(glDeleteProgramPipelines) - INIT_GLES_FUNC(glGenProgramPipelines) - INIT_GLES_FUNC(glIsProgramPipeline) - INIT_GLES_FUNC(glGetProgramPipelineiv) - INIT_GLES_FUNC(glProgramUniform1i) - INIT_GLES_FUNC(glProgramUniform2i) - INIT_GLES_FUNC(glProgramUniform3i) - INIT_GLES_FUNC(glProgramUniform4i) - INIT_GLES_FUNC(glProgramUniform1ui) - INIT_GLES_FUNC(glProgramUniform2ui) - INIT_GLES_FUNC(glProgramUniform3ui) - INIT_GLES_FUNC(glProgramUniform4ui) - INIT_GLES_FUNC(glProgramUniform1f) - INIT_GLES_FUNC(glProgramUniform2f) - INIT_GLES_FUNC(glProgramUniform3f) - INIT_GLES_FUNC(glProgramUniform4f) - INIT_GLES_FUNC(glProgramUniform1iv) - INIT_GLES_FUNC(glProgramUniform2iv) - INIT_GLES_FUNC(glProgramUniform3iv) - INIT_GLES_FUNC(glProgramUniform4iv) - INIT_GLES_FUNC(glProgramUniform1uiv) - INIT_GLES_FUNC(glProgramUniform2uiv) - INIT_GLES_FUNC(glProgramUniform3uiv) - INIT_GLES_FUNC(glProgramUniform4uiv) - INIT_GLES_FUNC(glProgramUniform1fv) - INIT_GLES_FUNC(glProgramUniform2fv) - INIT_GLES_FUNC(glProgramUniform3fv) - INIT_GLES_FUNC(glProgramUniform4fv) - INIT_GLES_FUNC(glProgramUniformMatrix2fv) - INIT_GLES_FUNC(glProgramUniformMatrix3fv) - INIT_GLES_FUNC(glProgramUniformMatrix4fv) - INIT_GLES_FUNC(glProgramUniformMatrix2x3fv) - INIT_GLES_FUNC(glProgramUniformMatrix3x2fv) - INIT_GLES_FUNC(glProgramUniformMatrix2x4fv) - INIT_GLES_FUNC(glProgramUniformMatrix4x2fv) - INIT_GLES_FUNC(glProgramUniformMatrix3x4fv) - INIT_GLES_FUNC(glProgramUniformMatrix4x3fv) - INIT_GLES_FUNC(glValidateProgramPipeline) - INIT_GLES_FUNC(glGetProgramPipelineInfoLog) - INIT_GLES_FUNC(glBindImageTexture) - INIT_GLES_FUNC(glGetBooleani_v) - INIT_GLES_FUNC(glMemoryBarrier) - INIT_GLES_FUNC(glMemoryBarrierByRegion) - INIT_GLES_FUNC(glTexStorage2DMultisample) - INIT_GLES_FUNC(glGetMultisamplefv) - INIT_GLES_FUNC(glSampleMaski) - INIT_GLES_FUNC(glGetTexLevelParameteriv) - INIT_GLES_FUNC(glGetTexLevelParameterfv) - INIT_GLES_FUNC(glBindVertexBuffer) - INIT_GLES_FUNC(glVertexAttribFormat) - INIT_GLES_FUNC(glVertexAttribIFormat) - INIT_GLES_FUNC(glVertexAttribBinding) - INIT_GLES_FUNC(glVertexBindingDivisor) - INIT_GLES_FUNC(glBlendBarrier) - INIT_GLES_FUNC(glCopyImageSubData) - INIT_GLES_FUNC(glDebugMessageControl) - INIT_GLES_FUNC(glDebugMessageInsert) - INIT_GLES_FUNC(glDebugMessageCallback) - INIT_GLES_FUNC(glGetDebugMessageLog) - INIT_GLES_FUNC(glPushDebugGroup) - INIT_GLES_FUNC(glPopDebugGroup) - INIT_GLES_FUNC(glObjectLabel) - INIT_GLES_FUNC(glGetObjectLabel) - INIT_GLES_FUNC(glObjectPtrLabel) - INIT_GLES_FUNC(glGetObjectPtrLabel) - INIT_GLES_FUNC(glGetPointerv) - INIT_GLES_FUNC(glEnablei) - INIT_GLES_FUNC(glDisablei) - INIT_GLES_FUNC(glBlendEquationi) - INIT_GLES_FUNC(glBlendEquationSeparatei) - INIT_GLES_FUNC(glBlendFunci) - INIT_GLES_FUNC(glBlendFuncSeparatei) - INIT_GLES_FUNC(glColorMaski) - INIT_GLES_FUNC(glIsEnabledi) - INIT_GLES_FUNC(glDrawElementsBaseVertex) - INIT_GLES_FUNC(glDrawRangeElementsBaseVertex) - INIT_GLES_FUNC(glDrawElementsInstancedBaseVertex) - INIT_GLES_FUNC(glFramebufferTexture) - INIT_GLES_FUNC(glPrimitiveBoundingBox) - INIT_GLES_FUNC(glGetGraphicsResetStatus) - INIT_GLES_FUNC(glReadnPixels) - INIT_GLES_FUNC(glGetnUniformfv) - INIT_GLES_FUNC(glGetnUniformiv) - INIT_GLES_FUNC(glGetnUniformuiv) - INIT_GLES_FUNC(glMinSampleShading) - INIT_GLES_FUNC(glPatchParameteri) - INIT_GLES_FUNC(glTexParameterIiv) - INIT_GLES_FUNC(glTexParameterIuiv) - INIT_GLES_FUNC(glGetTexParameterIiv) - INIT_GLES_FUNC(glGetTexParameterIuiv) - INIT_GLES_FUNC(glSamplerParameterIiv) - INIT_GLES_FUNC(glSamplerParameterIuiv) - INIT_GLES_FUNC(glGetSamplerParameterIiv) - INIT_GLES_FUNC(glGetSamplerParameterIuiv) - INIT_GLES_FUNC(glTexBuffer) - INIT_GLES_FUNC(glTexBufferRange) - INIT_GLES_FUNC(glTexStorage3DMultisample) - INIT_GLES_FUNC(glMapBufferRange) - INIT_GLES_FUNC(glBufferStorageEXT) - INIT_GLES_FUNC(glGetQueryObjectivEXT) - INIT_GLES_FUNC(glGetQueryObjecti64vEXT) - INIT_GLES_FUNC(glBindFragDataLocationEXT) - INIT_GLES_FUNC(glMapBufferOES) - - INIT_GLES_FUNC(glMultiDrawArraysIndirectEXT) - INIT_GLES_FUNC(glMultiDrawElementsIndirectEXT) - INIT_GLES_FUNC(glMultiDrawElementsBaseVertexEXT) - - MG_Util::Debug::LogD("glMultiDrawArraysIndirectEXT() @ 0x%x", GLES::glMultiDrawArraysIndirectEXT); - MG_Util::Debug::LogD("glMultiDrawElementsIndirectEXT() @ 0x%x", GLES::glMultiDrawElementsIndirectEXT); - MG_Util::Debug::LogD("glMultiDrawElementsBaseVertexEXT() @ 0x%x", GLES::glMultiDrawElementsBaseVertexEXT); - - InitGLESCapabilities(); - LogOpenGLExtensions(); - } - - static EGLDisplay eglDisplay = EGL_NO_DISPLAY; - static EGLSurface eglSurface = EGL_NO_SURFACE; - static EGLContext eglContext = EGL_NO_CONTEXT; - -#define LOAD_EGL(name) \ -static EGL::name##_PTR egl_##name = NULL; \ -{ \ - static bool first = true; \ - if (first) { \ - first = false; \ - if (libEGL != NULL) { \ - egl_##name = (EGL::name##_PTR)ProcAddress(libEGL, #name); \ - } \ - } \ -} - - void InitEGL() { - LOAD_EGL(eglGetProcAddress) - LOAD_EGL(eglBindAPI) - LOAD_EGL(eglInitialize) - LOAD_EGL(eglGetDisplay) - LOAD_EGL(eglCreatePbufferSurface) - LOAD_EGL(eglDestroySurface) - LOAD_EGL(eglDestroyContext) - LOAD_EGL(eglMakeCurrent) - LOAD_EGL(eglChooseConfig) - LOAD_EGL(eglCreateContext) - LOAD_EGL(eglQueryString) - LOAD_EGL(eglTerminate) - LOAD_EGL(eglGetError) - - - EGLint configAttribs[] = { - EGL_RED_SIZE, 8, - EGL_GREEN_SIZE, 8, - EGL_BLUE_SIZE, 8, - EGL_ALPHA_SIZE, 8, - EGL_SURFACE_TYPE, EGL_PBUFFER_BIT, - EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, - EGL_NONE - }; - - EGLint ctxAttribs[] = { EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE }; - - EGLint pbAttribs[] = { EGL_WIDTH, 32, EGL_HEIGHT, 32, EGL_NONE }; - - EGLConfig pbufConfig; - EGLint configsFound = 0; - - eglDisplay = egl_eglGetDisplay(EGL_DEFAULT_DISPLAY); - if (eglDisplay == EGL_NO_DISPLAY) { - MG_Util::Debug::LogE("eglGetDisplay failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - - if (egl_eglInitialize(eglDisplay, NULL, NULL) != EGL_TRUE) { - MG_Util::Debug::LogE("eglInitialize failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - - if (egl_eglBindAPI(EGL_OPENGL_ES_API) != EGL_TRUE) { - MG_Util::Debug::LogE("eglBindAPI failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - - if (egl_eglChooseConfig(eglDisplay, configAttribs, &pbufConfig, 1, &configsFound) != EGL_TRUE) { - MG_Util::Debug::LogE("eglChooseConfig failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - - if (configsFound == 0) { - configAttribs[6] = 0; - if (egl_eglChooseConfig(eglDisplay, configAttribs, &pbufConfig, 1, &configsFound) != EGL_TRUE) { - MG_Util::Debug::LogE("Retry eglChooseConfig failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - if (configsFound) { - MG_Util::Debug::LogD("Using config without alpha channel"); - } else { - MG_Util::Debug::LogE("No valid EGL config found"); - goto cleanup; - } - } - - eglContext = egl_eglCreateContext(eglDisplay, pbufConfig, EGL_NO_CONTEXT, ctxAttribs); - if (eglContext == EGL_NO_CONTEXT) { - MG_Util::Debug::LogE("eglCreateContext failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - - eglSurface = egl_eglCreatePbufferSurface(eglDisplay, pbufConfig, pbAttribs); - if (eglSurface == EGL_NO_SURFACE) { - MG_Util::Debug::LogE("eglCreatePbufferSurface failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - - if (egl_eglMakeCurrent(eglDisplay, eglSurface, eglSurface, eglContext) != EGL_TRUE) { - MG_Util::Debug::LogE("eglMakeCurrent failed (0x%x)", egl_eglGetError()); - goto cleanup; - } - - MG_Util::Debug::LogD("EGL initialized successfully"); - return; - - cleanup: - if (eglSurface != EGL_NO_SURFACE) { - egl_eglDestroySurface(eglDisplay, eglSurface); - } - if (eglContext != EGL_NO_CONTEXT) { - egl_eglDestroyContext(eglDisplay, eglContext); - } - if (eglDisplay != EGL_NO_DISPLAY) { - egl_eglTerminate(eglDisplay); - } - MG_Util::Debug::LogE("EGL initialization failed"); - } - - void DestroyTempEGLCtx() { - LOAD_EGL(eglDestroySurface) - LOAD_EGL(eglDestroyContext) - LOAD_EGL(eglMakeCurrent) - LOAD_EGL(eglTerminate) - - egl_eglMakeCurrent(eglDisplay, 0, 0, EGL_NO_CONTEXT); - egl_eglDestroySurface(eglDisplay, eglSurface); - egl_eglDestroyContext(eglDisplay, eglContext); - - egl_eglTerminate(eglDisplay); - } - -#undef LOAD_EGL - -} - -#endif \ No newline at end of file diff --git a/MG/MG_GL/BackendLoader/GLES/Loader.h b/MG/MG_GL/BackendLoader/GLES/Loader.h deleted file mode 100644 index 4d4ff4e7..00000000 --- a/MG/MG_GL/BackendLoader/GLES/Loader.h +++ /dev/null @@ -1,1024 +0,0 @@ -// -// Created by BZLZHH on 2025/4/26. -// - -#ifndef MOBILEGL_GLES_LOADER_H -#define MOBILEGL_GLES_LOADER_H - -#if BACKEND_TYPE == BACKEND_GLES - -#define APIENTRY_GLES - -#define GL_FUNC_TYPEDEF(type,name,...) \ - typedef type (APIENTRY_GLES *name##_PTR)(__VA_ARGS__); - -GL_FUNC_TYPEDEF(void, glActiveTexture, GLenum texture) -GL_FUNC_TYPEDEF(void, glAttachShader, GLuint program, GLuint shader) -GL_FUNC_TYPEDEF(void, glBindAttribLocation, GLuint program, GLuint index, const GLchar *name) -GL_FUNC_TYPEDEF(void, glBindBuffer, GLenum target, GLuint buffer) -GL_FUNC_TYPEDEF(void, glBindFramebuffer, GLenum target, GLuint framebuffer) -GL_FUNC_TYPEDEF(void, glBindRenderbuffer, GLenum target, GLuint renderbuffer) -GL_FUNC_TYPEDEF(void, glBindTexture, GLenum target, GLuint texture) -GL_FUNC_TYPEDEF(void, glBlendColor, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) -GL_FUNC_TYPEDEF(void, glBlendEquation, GLenum mode) -GL_FUNC_TYPEDEF(void, glBlendEquationSeparate, GLenum modeRGB, GLenum modeAlpha) -GL_FUNC_TYPEDEF(void, glBlendFunc, GLenum sfactor, GLenum dfactor) -GL_FUNC_TYPEDEF(void, glBlendFuncSeparate, GLenum sfactorRGB, GLenum dfactorRGB, - GLenum sfactorAlpha, GLenum dfactorAlpha) -GL_FUNC_TYPEDEF(void, glBufferData, GLenum target, GLsizeiptr size, const void *data, GLenum usage) -GL_FUNC_TYPEDEF(void, glBufferSubData, GLenum target, GLintptr offset, GLsizeiptr size, - const void *data) -GL_FUNC_TYPEDEF(GLenum, glCheckFramebufferStatus, GLenum target) -GL_FUNC_TYPEDEF(void, glClear, GLbitfield mask) -GL_FUNC_TYPEDEF(void, glClearColor, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) -GL_FUNC_TYPEDEF(void, glClearDepthf, GLfloat d) -GL_FUNC_TYPEDEF(void, glClearStencil, GLint s) -GL_FUNC_TYPEDEF(void, glColorMask, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) -GL_FUNC_TYPEDEF(void, glCompileShader, GLuint shader) -GL_FUNC_TYPEDEF(void, glCompressedTexImage2D, GLenum target, GLint level, GLenum internalformat, - GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data) -GL_FUNC_TYPEDEF(void, glCompressedTexSubImage2D, GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, - const void *data) -GL_FUNC_TYPEDEF(void, glCopyTexImage2D, GLenum target, GLint level, GLenum internalformat, GLint x, - GLint y, GLsizei width, GLsizei height, GLint border) -GL_FUNC_TYPEDEF(void, glCopyTexSubImage2D, GLenum target, GLint level, GLint xoffset, GLint yoffset, - GLint x, GLint y, GLsizei width, GLsizei height) -GL_FUNC_TYPEDEF(GLuint, glCreateProgram) -GL_FUNC_TYPEDEF(GLuint, glCreateShader, GLenum type) -GL_FUNC_TYPEDEF(void, glCullFace, GLenum mode) -GL_FUNC_TYPEDEF(void, glDeleteBuffers, GLsizei n, const GLuint *buffers) -GL_FUNC_TYPEDEF(void, glDeleteFramebuffers, GLsizei n, const GLuint *framebuffers) -GL_FUNC_TYPEDEF(void, glDeleteProgram, GLuint program) -GL_FUNC_TYPEDEF(void, glDeleteRenderbuffers, GLsizei n, const GLuint *renderbuffers) -GL_FUNC_TYPEDEF(void, glDeleteShader, GLuint shader) -GL_FUNC_TYPEDEF(void, glDeleteTextures, GLsizei n, const GLuint *textures) -GL_FUNC_TYPEDEF(void, glDepthFunc, GLenum func) -GL_FUNC_TYPEDEF(void, glDepthMask, GLboolean flag) -GL_FUNC_TYPEDEF(void, glDepthRangef, GLfloat n, GLfloat f) -GL_FUNC_TYPEDEF(void, glDetachShader, GLuint program, GLuint shader) -GL_FUNC_TYPEDEF(void, glDisable, GLenum cap) -GL_FUNC_TYPEDEF(void, glDisableVertexAttribArray, GLuint index) -GL_FUNC_TYPEDEF(void, glDrawArrays, GLenum mode, GLint first, GLsizei count) -GL_FUNC_TYPEDEF(void, glDrawElements, GLenum mode, GLsizei count, GLenum type, const void *indices) -GL_FUNC_TYPEDEF(void, glEnable, GLenum cap) -GL_FUNC_TYPEDEF(void, glEnableVertexAttribArray, GLuint index) -GL_FUNC_TYPEDEF(void, glFinish) -GL_FUNC_TYPEDEF(void, glFlush) -GL_FUNC_TYPEDEF(void, glFramebufferRenderbuffer, GLenum target, GLenum attachment, - GLenum renderbuffertarget, GLuint renderbuffer) -GL_FUNC_TYPEDEF(void, glFramebufferTexture2D, GLenum target, GLenum attachment, GLenum textarget, - GLuint texture, GLint level) -GL_FUNC_TYPEDEF(void, glFrontFace, GLenum mode) -GL_FUNC_TYPEDEF(void, glGenBuffers, GLsizei n, GLuint *buffers) -GL_FUNC_TYPEDEF(void, glGenerateMipmap, GLenum target) -GL_FUNC_TYPEDEF(void, glGenFramebuffers, GLsizei n, GLuint *framebuffers) -GL_FUNC_TYPEDEF(void, glGenRenderbuffers, GLsizei n, GLuint *renderbuffers) -GL_FUNC_TYPEDEF(void, glGenTextures, GLsizei n, GLuint *textures) -GL_FUNC_TYPEDEF(void, glGetActiveAttrib, GLuint program, GLuint index, GLsizei bufSize, - GLsizei *length, GLint *size, GLenum *type, GLchar *name) -GL_FUNC_TYPEDEF(void, glGetActiveUniform, GLuint program, GLuint index, GLsizei bufSize, - GLsizei *length, GLint *size, GLenum *type, GLchar *name) -GL_FUNC_TYPEDEF(void, glGetAttachedShaders, GLuint program, GLsizei maxCount, GLsizei *count, - GLuint *shaders) -GL_FUNC_TYPEDEF(GLint, glGetAttribLocation, GLuint program, const GLchar *name) -GL_FUNC_TYPEDEF(void, glGetBooleanv, GLenum pname, GLboolean *data) -GL_FUNC_TYPEDEF(void, glGetBufferParameteriv, GLenum target, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(GLenum, glGetError) -GL_FUNC_TYPEDEF(const GLubyte *, glGetString, GLenum) -GL_FUNC_TYPEDEF(const GLubyte *, glGetStringi, GLenum, GLuint) -GL_FUNC_TYPEDEF(void, glGetFloatv, GLenum pname, GLfloat *data) -GL_FUNC_TYPEDEF(void, glGetFramebufferAttachmentParameteriv, GLenum target, GLenum attachment, - GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetIntegerv, GLenum pname, GLint *data) -GL_FUNC_TYPEDEF(void, glGetProgramiv, GLuint program, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetProgramInfoLog, GLuint program, GLsizei bufSize, GLsizei *length, - GLchar *infoLog) -GL_FUNC_TYPEDEF(void, glGetRenderbufferParameteriv, GLenum target, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetShaderiv, GLuint shader, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetShaderInfoLog, GLuint shader, GLsizei bufSize, GLsizei *length, - GLchar *infoLog) -GL_FUNC_TYPEDEF(void, glGetShaderPrecisionFormat, GLenum shadertype, GLenum precisiontype, - GLint *range, GLint *precision) -GL_FUNC_TYPEDEF(void, glGetShaderSource, GLuint shader, GLsizei bufSize, GLsizei *length, - GLchar *source) -GL_FUNC_TYPEDEF(void, glGetTexParameterfv, GLenum target, GLenum pname, GLfloat *params) -GL_FUNC_TYPEDEF(void, glGetTexParameteriv, GLenum target, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetUniformfv, GLuint program, GLint location, GLfloat *params) -GL_FUNC_TYPEDEF(void, glGetUniformiv, GLuint program, GLint location, GLint *params) -GL_FUNC_TYPEDEF(GLint, glGetUniformLocation, GLuint program, const GLchar *name) -GL_FUNC_TYPEDEF(void, glGetVertexAttribfv, GLuint index, GLenum pname, GLfloat *params) -GL_FUNC_TYPEDEF(void, glGetVertexAttribiv, GLuint index, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetVertexAttribPointerv, GLuint index, GLenum pname, void **pointer) -GL_FUNC_TYPEDEF(void, glHint, GLenum target, GLenum mode) -GL_FUNC_TYPEDEF(GLboolean, glIsBuffer, GLuint buffer) -GL_FUNC_TYPEDEF(GLboolean, glIsEnabled, GLenum cap) -GL_FUNC_TYPEDEF(GLboolean, glIsFramebuffer, GLuint framebuffer) -GL_FUNC_TYPEDEF(GLboolean, glIsProgram, GLuint program) -GL_FUNC_TYPEDEF(GLboolean, glIsRenderbuffer, GLuint renderbuffer) -GL_FUNC_TYPEDEF(GLboolean, glIsShader, GLuint shader) -GL_FUNC_TYPEDEF(GLboolean, glIsTexture, GLuint texture) -GL_FUNC_TYPEDEF(void, glLineWidth, GLfloat width) -GL_FUNC_TYPEDEF(void, glLinkProgram, GLuint program) -GL_FUNC_TYPEDEF(void, glPixelStorei, GLenum pname, GLint param) -GL_FUNC_TYPEDEF(void, glPolygonOffset, GLfloat factor, GLfloat units) -GL_FUNC_TYPEDEF(void, glReadPixels, GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, - GLenum type, void *pixels) -GL_FUNC_TYPEDEF(void, glReleaseShaderCompiler) -GL_FUNC_TYPEDEF(void, glRenderbufferStorage, GLenum target, GLenum internalformat, GLsizei width, - GLsizei height) -GL_FUNC_TYPEDEF(void, glSampleCoverage, GLfloat value, GLboolean invert) -GL_FUNC_TYPEDEF(void, glScissor, GLint x, GLint y, GLsizei width, GLsizei height) -GL_FUNC_TYPEDEF(void, glShaderBinary, GLsizei count, const GLuint *shaders, GLenum binaryformat, - const void *binary, GLsizei length) -GL_FUNC_TYPEDEF(void, glShaderSource, GLuint shader, GLsizei count, const GLchar *const *string, - const GLint *length) -GL_FUNC_TYPEDEF(void, glStencilFunc, GLenum func, GLint ref, GLuint mask) -GL_FUNC_TYPEDEF(void, glStencilFuncSeparate, GLenum face, GLenum func, GLint ref, GLuint mask) -GL_FUNC_TYPEDEF(void, glStencilMask, GLuint mask) -GL_FUNC_TYPEDEF(void, glStencilMaskSeparate, GLenum face, GLuint mask) -GL_FUNC_TYPEDEF(void, glStencilOp, GLenum fail, GLenum zfail, GLenum zpass) -GL_FUNC_TYPEDEF(void, glStencilOpSeparate, GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass) -GL_FUNC_TYPEDEF(void, glTexImage2D, GLenum target, GLint level, GLint internalformat, GLsizei width, - GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels) -GL_FUNC_TYPEDEF(void, glTexParameterf, GLenum target, GLenum pname, GLfloat param) -GL_FUNC_TYPEDEF(void, glTexParameterfv, GLenum target, GLenum pname, const GLfloat *params) -GL_FUNC_TYPEDEF(void, glTexParameteri, GLenum target, GLenum pname, GLint param) -GL_FUNC_TYPEDEF(void, glTexParameteriv, GLenum target, GLenum pname, const GLint *params) -GL_FUNC_TYPEDEF(void, glTexSubImage2D, GLenum target, GLint level, GLint xoffset, GLint yoffset, - GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels) -GL_FUNC_TYPEDEF(void, glUniform1f, GLint location, GLfloat v0) -GL_FUNC_TYPEDEF(void, glUniform1fv, GLint location, GLsizei count, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniform1i, GLint location, GLint v0) -GL_FUNC_TYPEDEF(void, glUniform1iv, GLint location, GLsizei count, const GLint *value) -GL_FUNC_TYPEDEF(void, glUniform2f, GLint location, GLfloat v0, GLfloat v1) -GL_FUNC_TYPEDEF(void, glUniform2fv, GLint location, GLsizei count, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniform2i, GLint location, GLint v0, GLint v1) -GL_FUNC_TYPEDEF(void, glUniform2iv, GLint location, GLsizei count, const GLint *value) -GL_FUNC_TYPEDEF(void, glUniform3f, GLint location, GLfloat v0, GLfloat v1, GLfloat v2) -GL_FUNC_TYPEDEF(void, glUniform3fv, GLint location, GLsizei count, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniform3i, GLint location, GLint v0, GLint v1, GLint v2) -GL_FUNC_TYPEDEF(void, glUniform3iv, GLint location, GLsizei count, const GLint *value) -GL_FUNC_TYPEDEF(void, glUniform4f, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) -GL_FUNC_TYPEDEF(void, glUniform4fv, GLint location, GLsizei count, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniform4i, GLint location, GLint v0, GLint v1, GLint v2, GLint v3) -GL_FUNC_TYPEDEF(void, glUniform4iv, GLint location, GLsizei count, const GLint *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix2fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix3fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix4fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUseProgram, GLuint program) -GL_FUNC_TYPEDEF(void, glValidateProgram, GLuint program) -GL_FUNC_TYPEDEF(void, glVertexAttrib1f, GLuint index, GLfloat x) -GL_FUNC_TYPEDEF(void, glVertexAttrib1fv, GLuint index, const GLfloat *v) -GL_FUNC_TYPEDEF(void, glVertexAttrib2f, GLuint index, GLfloat x, GLfloat y) -GL_FUNC_TYPEDEF(void, glVertexAttrib2fv, GLuint index, const GLfloat *v) -GL_FUNC_TYPEDEF(void, glVertexAttrib3f, GLuint index, GLfloat x, GLfloat y, GLfloat z) -GL_FUNC_TYPEDEF(void, glVertexAttrib3fv, GLuint index, const GLfloat *v) -GL_FUNC_TYPEDEF(void, glVertexAttrib4f, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) -GL_FUNC_TYPEDEF(void, glVertexAttrib4fv, GLuint index, const GLfloat *v) -GL_FUNC_TYPEDEF(void, glVertexAttribPointer, GLuint index, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, const void *pointer) -GL_FUNC_TYPEDEF(void, glViewport, GLint x, GLint y, GLsizei width, GLsizei height) -GL_FUNC_TYPEDEF(void, glReadBuffer, GLenum src) -GL_FUNC_TYPEDEF(void, glDrawRangeElements, GLenum mode, GLuint start, GLuint end, GLsizei count, - GLenum type, const void *indices) -GL_FUNC_TYPEDEF(void, glTexImage3D, GLenum target, GLint level, GLint internalformat, GLsizei width, - GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, - const void *pixels) -GL_FUNC_TYPEDEF(void, glTexSubImage3D, GLenum target, GLint level, GLint xoffset, GLint yoffset, - GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, - GLenum type, const void *pixels) -GL_FUNC_TYPEDEF(void, glCopyTexSubImage3D, GLenum target, GLint level, GLint xoffset, GLint yoffset, - GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) -GL_FUNC_TYPEDEF(void, glCompressedTexImage3D, GLenum target, GLint level, GLenum internalformat, - GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, - const void *data) -GL_FUNC_TYPEDEF(void, glCompressedTexSubImage3D, GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, - GLenum format, GLsizei imageSize, const void *data) -GL_FUNC_TYPEDEF(void, glGenQueries, GLsizei n, GLuint *ids) -GL_FUNC_TYPEDEF(void, glDeleteQueries, GLsizei n, const GLuint *ids) -GL_FUNC_TYPEDEF(GLboolean, glIsQuery, GLuint id) -GL_FUNC_TYPEDEF(void, glBeginQuery, GLenum target, GLuint id) -GL_FUNC_TYPEDEF(void, glEndQuery, GLenum target) -GL_FUNC_TYPEDEF(void, glGetQueryiv, GLenum target, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetQueryObjectuiv, GLuint id, GLenum pname, GLuint *params) -GL_FUNC_TYPEDEF(GLboolean, glUnmapBuffer, GLenum target) -GL_FUNC_TYPEDEF(void, glGetBufferPointerv, GLenum target, GLenum pname, void **params) -GL_FUNC_TYPEDEF(void, glDrawBuffers, GLsizei n, const GLenum *bufs) -GL_FUNC_TYPEDEF(void, glUniformMatrix2x3fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix3x2fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix2x4fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix4x2fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix3x4fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glUniformMatrix4x3fv, GLint location, GLsizei count, GLboolean transpose, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glBlitFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, - GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) -GL_FUNC_TYPEDEF(void, glRenderbufferStorageMultisample, GLenum target, GLsizei samples, - GLenum internalformat, GLsizei width, GLsizei height) -GL_FUNC_TYPEDEF(void, glFramebufferTextureLayer, GLenum target, GLenum attachment, GLuint texture, - GLint level, GLint layer) -GL_FUNC_TYPEDEF(void, glFlushMappedBufferRange, GLenum target, GLintptr offset, GLsizeiptr length) -GL_FUNC_TYPEDEF(void, glBindVertexArray, GLuint array) -GL_FUNC_TYPEDEF(void, glDeleteVertexArrays, GLsizei n, const GLuint *arrays) -GL_FUNC_TYPEDEF(void, glGenVertexArrays, GLsizei n, GLuint *arrays) -GL_FUNC_TYPEDEF(GLboolean, glIsVertexArray, GLuint array) -GL_FUNC_TYPEDEF(void, glGetIntegeri_v, GLenum target, GLuint index, GLint *data) -GL_FUNC_TYPEDEF(void, glBeginTransformFeedback, GLenum primitiveMode) -GL_FUNC_TYPEDEF(void, glEndTransformFeedback) -GL_FUNC_TYPEDEF(void, glBindBufferRange, GLenum target, GLuint index, GLuint buffer, - GLintptr offset, GLsizeiptr size) -GL_FUNC_TYPEDEF(void, glBindBufferBase, GLenum target, GLuint index, GLuint buffer) -GL_FUNC_TYPEDEF(void, glTransformFeedbackVaryings, GLuint program, GLsizei count, - const GLchar *const *varyings, GLenum bufferMode) -GL_FUNC_TYPEDEF(void, glGetTransformFeedbackVarying, GLuint program, GLuint index, GLsizei bufSize, - GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) -GL_FUNC_TYPEDEF(void, glVertexAttribIPointer, GLuint index, GLint size, GLenum type, GLsizei stride, - const void *pointer) -GL_FUNC_TYPEDEF(void, glGetVertexAttribIiv, GLuint index, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetVertexAttribIuiv, GLuint index, GLenum pname, GLuint *params) -GL_FUNC_TYPEDEF(void, glVertexAttribI4i, GLuint index, GLint x, GLint y, GLint z, GLint w) -GL_FUNC_TYPEDEF(void, glVertexAttribI4ui, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) -GL_FUNC_TYPEDEF(void, glVertexAttribI4iv, GLuint index, const GLint *v) -GL_FUNC_TYPEDEF(void, glVertexAttribI4uiv, GLuint index, const GLuint *v) -GL_FUNC_TYPEDEF(void, glGetUniformuiv, GLuint program, GLint location, GLuint *params) -GL_FUNC_TYPEDEF(GLint, glGetFragDataLocation, GLuint program, const GLchar *name) -GL_FUNC_TYPEDEF(void, glUniform1ui, GLint location, GLuint v0) -GL_FUNC_TYPEDEF(void, glUniform2ui, GLint location, GLuint v0, GLuint v1) -GL_FUNC_TYPEDEF(void, glUniform3ui, GLint location, GLuint v0, GLuint v1, GLuint v2) -GL_FUNC_TYPEDEF(void, glUniform4ui, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) -GL_FUNC_TYPEDEF(void, glUniform1uiv, GLint location, GLsizei count, const GLuint *value) -GL_FUNC_TYPEDEF(void, glUniform2uiv, GLint location, GLsizei count, const GLuint *value) -GL_FUNC_TYPEDEF(void, glUniform3uiv, GLint location, GLsizei count, const GLuint *value) -GL_FUNC_TYPEDEF(void, glUniform4uiv, GLint location, GLsizei count, const GLuint *value) -GL_FUNC_TYPEDEF(void, glClearBufferiv, GLenum buffer, GLint drawbuffer, const GLint *value) -GL_FUNC_TYPEDEF(void, glClearBufferuiv, GLenum buffer, GLint drawbuffer, const GLuint *value) -GL_FUNC_TYPEDEF(void, glClearBufferfv, GLenum buffer, GLint drawbuffer, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glClearBufferfi, GLenum buffer, GLint drawbuffer, GLfloat depth, - GLint stencil) -GL_FUNC_TYPEDEF(void, glCopyBufferSubData, GLenum readTarget, GLenum writeTarget, - GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) -GL_FUNC_TYPEDEF(void, glGetUniformIndices, GLuint program, GLsizei uniformCount, - const GLchar *const *uniformNames, GLuint *uniformIndices) -GL_FUNC_TYPEDEF(void, glGetActiveUniformsiv, GLuint program, GLsizei uniformCount, - const GLuint *uniformIndices, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(GLuint, glGetUniformBlockIndex, GLuint program, const GLchar *uniformBlockName) -GL_FUNC_TYPEDEF(void, glGetActiveUniformBlockiv, GLuint program, GLuint uniformBlockIndex, - GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetActiveUniformBlockName, GLuint program, GLuint uniformBlockIndex, - GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName) -GL_FUNC_TYPEDEF(void, glUniformBlockBinding, GLuint program, GLuint uniformBlockIndex, - GLuint uniformBlockBinding) -GL_FUNC_TYPEDEF(void, glDrawArraysInstanced, GLenum mode, GLint first, GLsizei count, - GLsizei instancecount) -GL_FUNC_TYPEDEF(void, glDrawElementsInstanced, GLenum mode, GLsizei count, GLenum type, - const void *indices, GLsizei instancecount) -GL_FUNC_TYPEDEF(GLsync, glFenceSync, GLenum condition, GLbitfield flags) -GL_FUNC_TYPEDEF(GLboolean, glIsSync, GLsync sync) -GL_FUNC_TYPEDEF(void, glDeleteSync, GLsync sync) -GL_FUNC_TYPEDEF(GLenum, glClientWaitSync, GLsync sync, GLbitfield flags, GLuint64 timeout) -GL_FUNC_TYPEDEF(void, glWaitSync, GLsync sync, GLbitfield flags, GLuint64 timeout) -GL_FUNC_TYPEDEF(void, glGetInteger64v, GLenum pname, GLint64 *data) -GL_FUNC_TYPEDEF(void, glGetSynciv, GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, - GLint *values) -GL_FUNC_TYPEDEF(void, glGetInteger64i_v, GLenum target, GLuint index, GLint64 *data) -GL_FUNC_TYPEDEF(void, glGetBufferParameteri64v, GLenum target, GLenum pname, GLint64 *params) -GL_FUNC_TYPEDEF(void, glGenSamplers, GLsizei count, GLuint *samplers) -GL_FUNC_TYPEDEF(void, glDeleteSamplers, GLsizei count, const GLuint *samplers) -GL_FUNC_TYPEDEF(GLboolean, glIsSampler, GLuint sampler) -GL_FUNC_TYPEDEF(void, glBindSampler, GLuint unit, GLuint sampler) -GL_FUNC_TYPEDEF(void, glSamplerParameteri, GLuint sampler, GLenum pname, GLint param) -GL_FUNC_TYPEDEF(void, glSamplerParameteriv, GLuint sampler, GLenum pname, const GLint *param) -GL_FUNC_TYPEDEF(void, glSamplerParameterf, GLuint sampler, GLenum pname, GLfloat param) -GL_FUNC_TYPEDEF(void, glSamplerParameterfv, GLuint sampler, GLenum pname, const GLfloat *param) -GL_FUNC_TYPEDEF(void, glGetSamplerParameteriv, GLuint sampler, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetSamplerParameterfv, GLuint sampler, GLenum pname, GLfloat *params) -GL_FUNC_TYPEDEF(void, glVertexAttribDivisor, GLuint index, GLuint divisor) -GL_FUNC_TYPEDEF(void, glBindTransformFeedback, GLenum target, GLuint id) -GL_FUNC_TYPEDEF(void, glDeleteTransformFeedbacks, GLsizei n, const GLuint *ids) -GL_FUNC_TYPEDEF(void, glGenTransformFeedbacks, GLsizei n, GLuint *ids) -GL_FUNC_TYPEDEF(GLboolean, glIsTransformFeedback, GLuint id) -GL_FUNC_TYPEDEF(void, glPauseTransformFeedback) -GL_FUNC_TYPEDEF(void, glResumeTransformFeedback) -GL_FUNC_TYPEDEF(void, glGetProgramBinary, GLuint program, GLsizei bufSize, GLsizei *length, - GLenum *binaryFormat, void *binary) -GL_FUNC_TYPEDEF(void, glProgramBinary, GLuint program, GLenum binaryFormat, const void *binary, - GLsizei length) -GL_FUNC_TYPEDEF(void, glProgramParameteri, GLuint program, GLenum pname, GLint value) -GL_FUNC_TYPEDEF(void, glInvalidateFramebuffer, GLenum target, GLsizei numAttachments, - const GLenum *attachments) -GL_FUNC_TYPEDEF(void, glInvalidateSubFramebuffer, GLenum target, GLsizei numAttachments, - const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height) -GL_FUNC_TYPEDEF(void, glTexStorage2D, GLenum target, GLsizei levels, GLenum internalformat, - GLsizei width, GLsizei height) -GL_FUNC_TYPEDEF(void, glTexStorage3D, GLenum target, GLsizei levels, GLenum internalformat, - GLsizei width, GLsizei height, GLsizei depth) -GL_FUNC_TYPEDEF(void, glGetInternalformativ, GLenum target, GLenum internalformat, GLenum pname, - GLsizei bufSize, GLint *params) -GL_FUNC_TYPEDEF(void, glDispatchCompute, GLuint num_groups_x, GLuint num_groups_y, - GLuint num_groups_z) -GL_FUNC_TYPEDEF(void, glDispatchComputeIndirect, GLintptr indirect) -GL_FUNC_TYPEDEF(void, glDrawArraysIndirect, GLenum mode, const void *indirect) -GL_FUNC_TYPEDEF(void, glDrawElementsIndirect, GLenum mode, GLenum type, const void *indirect) -GL_FUNC_TYPEDEF(void, glFramebufferParameteri, GLenum target, GLenum pname, GLint param) -GL_FUNC_TYPEDEF(void, glGetFramebufferParameteriv, GLenum target, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetProgramInterfaceiv, GLuint program, GLenum programInterface, - GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(GLuint, glGetProgramResourceIndex, GLuint program, GLenum programInterface, - const GLchar *name) -GL_FUNC_TYPEDEF(void, glGetProgramResourceName, GLuint program, GLenum programInterface, - GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name) -GL_FUNC_TYPEDEF(void, glGetProgramResourceiv, GLuint program, GLenum programInterface, GLuint index, - GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, - GLint *params) -GL_FUNC_TYPEDEF(GLint, glGetProgramResourceLocation, GLuint program, GLenum programInterface, - const GLchar *name) -GL_FUNC_TYPEDEF(void, glUseProgramStages, GLuint pipeline, GLbitfield stages, GLuint program) -GL_FUNC_TYPEDEF(void, glActiveShaderProgram, GLuint pipeline, GLuint program) -GL_FUNC_TYPEDEF(GLuint, glCreateShaderProgramv, GLenum type, GLsizei count, - const GLchar *const *strings) -GL_FUNC_TYPEDEF(void, glBindProgramPipeline, GLuint pipeline) -GL_FUNC_TYPEDEF(void, glDeleteProgramPipelines, GLsizei n, const GLuint *pipelines) -GL_FUNC_TYPEDEF(void, glGenProgramPipelines, GLsizei n, GLuint *pipelines) -GL_FUNC_TYPEDEF(GLboolean, glIsProgramPipeline, GLuint pipeline) -GL_FUNC_TYPEDEF(void, glGetProgramPipelineiv, GLuint pipeline, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glProgramUniform1i, GLuint program, GLint location, GLint v0) -GL_FUNC_TYPEDEF(void, glProgramUniform2i, GLuint program, GLint location, GLint v0, GLint v1) -GL_FUNC_TYPEDEF(void, glProgramUniform3i, GLuint program, GLint location, GLint v0, GLint v1, - GLint v2) -GL_FUNC_TYPEDEF(void, glProgramUniform4i, GLuint program, GLint location, GLint v0, GLint v1, - GLint v2, GLint v3) -GL_FUNC_TYPEDEF(void, glProgramUniform1ui, GLuint program, GLint location, GLuint v0) -GL_FUNC_TYPEDEF(void, glProgramUniform2ui, GLuint program, GLint location, GLuint v0, GLuint v1) -GL_FUNC_TYPEDEF(void, glProgramUniform3ui, GLuint program, GLint location, GLuint v0, GLuint v1, - GLuint v2) -GL_FUNC_TYPEDEF(void, glProgramUniform4ui, GLuint program, GLint location, GLuint v0, GLuint v1, - GLuint v2, GLuint v3) -GL_FUNC_TYPEDEF(void, glProgramUniform1f, GLuint program, GLint location, GLfloat v0) -GL_FUNC_TYPEDEF(void, glProgramUniform2f, GLuint program, GLint location, GLfloat v0, GLfloat v1) -GL_FUNC_TYPEDEF(void, glProgramUniform3f, GLuint program, GLint location, GLfloat v0, GLfloat v1, - GLfloat v2) -GL_FUNC_TYPEDEF(void, glProgramUniform4f, GLuint program, GLint location, GLfloat v0, GLfloat v1, - GLfloat v2, GLfloat v3) -GL_FUNC_TYPEDEF(void, glProgramUniform1iv, GLuint program, GLint location, GLsizei count, - const GLint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform2iv, GLuint program, GLint location, GLsizei count, - const GLint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform3iv, GLuint program, GLint location, GLsizei count, - const GLint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform4iv, GLuint program, GLint location, GLsizei count, - const GLint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform1uiv, GLuint program, GLint location, GLsizei count, - const GLuint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform2uiv, GLuint program, GLint location, GLsizei count, - const GLuint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform3uiv, GLuint program, GLint location, GLsizei count, - const GLuint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform4uiv, GLuint program, GLint location, GLsizei count, - const GLuint *value) -GL_FUNC_TYPEDEF(void, glProgramUniform1fv, GLuint program, GLint location, GLsizei count, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniform2fv, GLuint program, GLint location, GLsizei count, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniform3fv, GLuint program, GLint location, GLsizei count, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniform4fv, GLuint program, GLint location, GLsizei count, - const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix2fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix3fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix4fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix2x3fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix3x2fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix2x4fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix4x2fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix3x4fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glProgramUniformMatrix4x3fv, GLuint program, GLint location, GLsizei count, - GLboolean transpose, const GLfloat *value) -GL_FUNC_TYPEDEF(void, glValidateProgramPipeline, GLuint pipeline) -GL_FUNC_TYPEDEF(void, glGetProgramPipelineInfoLog, GLuint pipeline, GLsizei bufSize, - GLsizei *length, GLchar *infoLog) -GL_FUNC_TYPEDEF(void, glBindImageTexture, GLuint unit, GLuint texture, GLint level, - GLboolean layered, GLint layer, GLenum access, GLenum format) -GL_FUNC_TYPEDEF(void, glGetBooleani_v, GLenum target, GLuint index, GLboolean *data) -GL_FUNC_TYPEDEF(void, glMemoryBarrier, GLbitfield barriers) -GL_FUNC_TYPEDEF(void, glMemoryBarrierByRegion, GLbitfield barriers) -GL_FUNC_TYPEDEF(void, glTexStorage2DMultisample, GLenum target, GLsizei samples, - GLenum internalformat, GLsizei width, GLsizei height, - GLboolean fixedsamplelocations) -GL_FUNC_TYPEDEF(void, glGetMultisamplefv, GLenum pname, GLuint index, GLfloat *val) -GL_FUNC_TYPEDEF(void, glSampleMaski, GLuint maskNumber, GLbitfield mask) -GL_FUNC_TYPEDEF(void, glGetTexLevelParameteriv, GLenum target, GLint level, GLenum pname, - GLint *params) -GL_FUNC_TYPEDEF(void, glGetTexLevelParameterfv, GLenum target, GLint level, GLenum pname, - GLfloat *params) -GL_FUNC_TYPEDEF(void, glBindVertexBuffer, GLuint bindingindex, GLuint buffer, GLintptr offset, - GLsizei stride) -GL_FUNC_TYPEDEF(void, glVertexAttribFormat, GLuint attribindex, GLint size, GLenum type, - GLboolean normalized, GLuint relativeoffset) -GL_FUNC_TYPEDEF(void, glVertexAttribIFormat, GLuint attribindex, GLint size, GLenum type, - GLuint relativeoffset) -GL_FUNC_TYPEDEF(void, glVertexAttribBinding, GLuint attribindex, GLuint bindingindex) -GL_FUNC_TYPEDEF(void, glVertexBindingDivisor, GLuint bindingindex, GLuint divisor) -GL_FUNC_TYPEDEF(void, glBlendBarrier) -GL_FUNC_TYPEDEF(void, glCopyImageSubData, GLuint srcName, GLenum srcTarget, GLint srcLevel, - GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, - GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, - GLsizei srcHeight, GLsizei srcDepth) -GL_FUNC_TYPEDEF(void, glDebugMessageControl, GLenum source, GLenum type, GLenum severity, - GLsizei count, const GLuint *ids, GLboolean enabled) -GL_FUNC_TYPEDEF(void, glDebugMessageInsert, GLenum source, GLenum type, GLuint id, GLenum severity, - GLsizei length, const GLchar *buf) -GL_FUNC_TYPEDEF(void, glDebugMessageCallback, GLDEBUGPROC callback, const void *userParam) -GL_FUNC_TYPEDEF(GLuint, glGetDebugMessageLog, GLuint count, GLsizei bufSize, GLenum *sources, - GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, - GLchar *messageLog) -GL_FUNC_TYPEDEF(void, glPushDebugGroup, GLenum source, GLuint id, GLsizei length, - const GLchar *message) -GL_FUNC_TYPEDEF(void, glPopDebugGroup) -GL_FUNC_TYPEDEF(void, glObjectLabel, GLenum identifier, GLuint name, GLsizei length, - const GLchar *label) -GL_FUNC_TYPEDEF(void, glGetObjectLabel, GLenum identifier, GLuint name, GLsizei bufSize, - GLsizei *length, GLchar *label) -GL_FUNC_TYPEDEF(void, glObjectPtrLabel, const void *ptr, GLsizei length, const GLchar *label) -GL_FUNC_TYPEDEF(void, glGetObjectPtrLabel, const void *ptr, GLsizei bufSize, GLsizei *length, - GLchar *label) -GL_FUNC_TYPEDEF(void, glGetPointerv, GLenum pname, void **params) -GL_FUNC_TYPEDEF(void, glEnablei, GLenum target, GLuint index) -GL_FUNC_TYPEDEF(void, glDisablei, GLenum target, GLuint index) -GL_FUNC_TYPEDEF(void, glBlendEquationi, GLuint buf, GLenum mode) -GL_FUNC_TYPEDEF(void, glBlendEquationSeparatei, GLuint buf, GLenum modeRGB, GLenum modeAlpha) -GL_FUNC_TYPEDEF(void, glBlendFunci, GLuint buf, GLenum src, GLenum dst) -GL_FUNC_TYPEDEF(void, glBlendFuncSeparatei, GLuint buf, GLenum srcRGB, GLenum dstRGB, - GLenum srcAlpha, GLenum dstAlpha) -GL_FUNC_TYPEDEF(void, glColorMaski, GLuint index, GLboolean r, GLboolean g, GLboolean b, - GLboolean a) -GL_FUNC_TYPEDEF(GLboolean, glIsEnabledi, GLenum target, GLuint index) -GL_FUNC_TYPEDEF(void, glDrawElementsBaseVertex, GLenum mode, GLsizei count, GLenum type, - const void *indices, GLint basevertex) -GL_FUNC_TYPEDEF(void, glDrawRangeElementsBaseVertex, GLenum mode, GLuint start, GLuint end, - GLsizei count, GLenum type, const void *indices, GLint basevertex) -GL_FUNC_TYPEDEF(void, glDrawElementsInstancedBaseVertex, GLenum mode, GLsizei count, GLenum type, - const void *indices, GLsizei instancecount, GLint basevertex) -GL_FUNC_TYPEDEF(void, glFramebufferTexture, GLenum target, GLenum attachment, GLuint texture, - GLint level) -GL_FUNC_TYPEDEF(void, glPrimitiveBoundingBox, GLfloat minX, GLfloat minY, GLfloat minZ, - GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW) -GL_FUNC_TYPEDEF(GLenum, glGetGraphicsResetStatus) -GL_FUNC_TYPEDEF(void, glReadnPixels, GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, - GLenum type, GLsizei bufSize, void *data) -GL_FUNC_TYPEDEF(void, glGetnUniformfv, GLuint program, GLint location, GLsizei bufSize, - GLfloat *params) -GL_FUNC_TYPEDEF(void, glGetnUniformiv, GLuint program, GLint location, GLsizei bufSize, - GLint *params) -GL_FUNC_TYPEDEF(void, glGetnUniformuiv, GLuint program, GLint location, GLsizei bufSize, - GLuint *params) -GL_FUNC_TYPEDEF(void, glMinSampleShading, GLfloat value) -GL_FUNC_TYPEDEF(void, glPatchParameteri, GLenum pname, GLint value) -GL_FUNC_TYPEDEF(void, glTexParameterIiv, GLenum target, GLenum pname, const GLint *params) -GL_FUNC_TYPEDEF(void, glTexParameterIuiv, GLenum target, GLenum pname, const GLuint *params) -GL_FUNC_TYPEDEF(void, glGetTexParameterIiv, GLenum target, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetTexParameterIuiv, GLenum target, GLenum pname, GLuint *params) -GL_FUNC_TYPEDEF(void, glSamplerParameterIiv, GLuint sampler, GLenum pname, const GLint *param) -GL_FUNC_TYPEDEF(void, glSamplerParameterIuiv, GLuint sampler, GLenum pname, const GLuint *param) -GL_FUNC_TYPEDEF(void, glGetSamplerParameterIiv, GLuint sampler, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetSamplerParameterIuiv, GLuint sampler, GLenum pname, GLuint *params) -GL_FUNC_TYPEDEF(void, glTexBuffer, GLenum target, GLenum internalformat, GLuint buffer) -GL_FUNC_TYPEDEF(void, glTexBufferRange, GLenum target, GLenum internalformat, GLuint buffer, - GLintptr offset, GLsizeiptr size) -GL_FUNC_TYPEDEF(void, glTexStorage3DMultisample, GLenum target, GLsizei samples, - GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, - GLboolean fixedsamplelocations) -GL_FUNC_TYPEDEF(void*, glMapBufferRange, GLenum target, GLintptr offset, GLsizeiptr length, - GLbitfield access) -GL_FUNC_TYPEDEF(void, glBufferStorageEXT, GLenum target, GLsizeiptr size, const void *data, - GLbitfield flags) -GL_FUNC_TYPEDEF(void, glGetQueryObjectivEXT, GLuint id, GLenum pname, GLint *params) -GL_FUNC_TYPEDEF(void, glGetQueryObjecti64vEXT, GLuint id, GLenum pname, GLint64 *params) -GL_FUNC_TYPEDEF(void, glBindFragDataLocationEXT, GLuint program, GLuint colorNumber, - const GLchar *name) -GL_FUNC_TYPEDEF(void*, glMapBufferOES, GLenum target, GLenum access) - -GL_FUNC_TYPEDEF(void, glMultiDrawArraysIndirectEXT, GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride) -GL_FUNC_TYPEDEF(void, glMultiDrawElementsIndirectEXT, GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride) -GL_FUNC_TYPEDEF(void, glBruh) -GL_FUNC_TYPEDEF(void, glMultiDrawElementsBaseVertexEXT, GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex) - -#undef APIENTRY_GLES -#undef GL_FUNC_TYPEDEF - -namespace EGL { - typedef EGLBoolean (*eglBindAPI_PTR)(EGLenum api); - typedef EGLBoolean (*eglBindTexImage_PTR)(EGLDisplay dpy, EGLSurface surface, EGLint buffer); - typedef EGLBoolean (*eglChooseConfig_PTR)(EGLDisplay dpy, const EGLint *attrib_list, - EGLConfig *configs, EGLint config_size, - EGLint *num_config); - typedef EGLBoolean (*eglCopyBuffers_PTR)(EGLDisplay dpy, EGLSurface surface, - EGLNativePixmapType target); - typedef EGLContext (*eglCreateContext_PTR)(EGLDisplay dpy, EGLConfig config, - EGLContext share_context, const EGLint *attrib_list); - typedef EGLSurface (*eglCreatePbufferFromClientBuffer_PTR)(EGLDisplay dpy, EGLenum buftype, - EGLClientBuffer buffer, EGLConfig config, - const EGLint *attrib_list); - typedef EGLSurface (*eglCreatePbufferSurface_PTR)(EGLDisplay dpy, EGLConfig config, - const EGLint *attrib_list); - typedef EGLSurface (*eglCreatePixmapSurface_PTR)(EGLDisplay dpy, EGLConfig config, - EGLNativePixmapType pixmap, - const EGLint *attrib_list); - typedef EGLSurface (*eglCreatePlatformWindowSurface_PTR)(EGLDisplay display, EGLConfig config, - void *native_window, - const EGLint *attrib_list); - typedef EGLSurface (*eglCreateWindowSurface_PTR)(EGLDisplay dpy, EGLConfig config, - EGLNativeWindowType win, - const EGLint *attrib_list); - typedef EGLBoolean (*eglDestroyContext_PTR)(EGLDisplay dpy, EGLContext ctx); - typedef EGLBoolean (*eglDestroySurface_PTR)(EGLDisplay dpy, EGLSurface surface); - typedef EGLBoolean (*eglGetConfigAttrib_PTR)(EGLDisplay dpy, EGLConfig config, EGLint attribute, - EGLint *value); - typedef EGLBoolean (*eglGetConfigs_PTR)(EGLDisplay dpy, EGLConfig *configs, EGLint config_size, - EGLint *num_config); - typedef EGLContext (*eglGetCurrentContext_PTR)(); - typedef EGLDisplay (*eglGetCurrentDisplay_PTR)(); - typedef EGLSurface (*eglGetCurrentSurface_PTR)(EGLint readdraw); - typedef EGLDisplay (*eglGetDisplay_PTR)(EGLNativeDisplayType display_id); - typedef EGLDisplay (*eglGetPlatformDisplay_PTR)(EGLenum platform, void *native_display, - const EGLint *attrib_list); - typedef EGLint (*eglGetError_PTR)(); - typedef __eglMustCastToProperFunctionPointerType (*eglGetProcAddress_PTR)(const char *procname); - typedef EGLBoolean (*eglInitialize_PTR)(EGLDisplay dpy, EGLint *major, EGLint *minor); - typedef EGLBoolean (*eglMakeCurrent_PTR)(EGLDisplay dpy, EGLSurface draw, EGLSurface read, - EGLContext ctx); - typedef EGLenum (*eglQueryAPI_PTR)(); - typedef EGLBoolean (*eglQueryContext_PTR)(EGLDisplay dpy, EGLContext ctx, EGLint attribute, - EGLint *value); - typedef const char *(*eglQueryString_PTR)(EGLDisplay dpy, EGLint name); - typedef EGLBoolean (*eglQuerySurface_PTR)(EGLDisplay dpy, EGLSurface surface, EGLint attribute, - EGLint *value); - typedef EGLBoolean (*eglReleaseTexImage_PTR)(EGLDisplay dpy, EGLSurface surface, EGLint buffer); - typedef EGLBoolean (*eglReleaseThread_PTR)(); - typedef EGLBoolean (*eglSurfaceAttrib_PTR)(EGLDisplay dpy, EGLSurface surface, EGLint attribute, - EGLint value); - typedef EGLBoolean (*eglSwapBuffers_PTR)(EGLDisplay dpy, EGLSurface surface); - typedef EGLBoolean (*eglSwapBuffersWithDamageEXT_PTR)(EGLDisplay dpy, EGLSurface surface, - EGLint *rects, EGLint n_rects); - typedef EGLBoolean (*eglSwapInterval_PTR)(EGLDisplay dpy, EGLint interval); - typedef EGLBoolean (*eglTerminate_PTR)(EGLDisplay dpy); - typedef EGLBoolean (*eglUnlockSurfaceKHR_PTR)(EGLDisplay display, EGLSurface surface); - typedef EGLBoolean (*eglWaitClient_PTR)(); - typedef EGLBoolean (*eglWaitGL_PTR)(); - typedef EGLBoolean (*eglWaitNative_PTR)(EGLint engine); - -}; - -#define GL_FUNC_DECL(name) \ -extern name##_PTR name; - -namespace GLES { - namespace Caps { - namespace Version { - static int Major; - static int Minor; - } - - namespace Exts { - static int GL_EXT_buffer_storage; - static int GL_EXT_disjoint_timer_query; - static int GL_QCOM_texture_lod_bias; - [[maybe_unused]] static int GL_EXT_blend_func_extended; - [[maybe_unused]] static int GL_EXT_texture_format_BGRA8888; - [[maybe_unused]] static int GL_EXT_read_format_bgra; - static int GL_OES_mapbuffer; - static int GL_EXT_multi_draw_indirect; - static int GL_OES_draw_elements_base_vertex; - static int GL_OES_depth_texture; - static int GL_OES_depth24; - static int GL_OES_depth_texture_float; - static int GL_EXT_texture_norm16; - static int GL_EXT_texture_rg; - } - } - - GL_FUNC_DECL(glActiveTexture) - GL_FUNC_DECL(glAttachShader) - GL_FUNC_DECL(glBindAttribLocation) - GL_FUNC_DECL(glBindBuffer) - GL_FUNC_DECL(glBindFramebuffer) - GL_FUNC_DECL(glBindRenderbuffer) - GL_FUNC_DECL(glBindTexture) - GL_FUNC_DECL(glBlendColor) - GL_FUNC_DECL(glBlendEquation) - GL_FUNC_DECL(glBlendEquationSeparate) - GL_FUNC_DECL(glBlendFunc) - GL_FUNC_DECL(glBlendFuncSeparate) - GL_FUNC_DECL(glBufferData) - GL_FUNC_DECL(glBufferSubData) - GL_FUNC_DECL(glCheckFramebufferStatus) - GL_FUNC_DECL(glClear) - GL_FUNC_DECL(glClearColor) - GL_FUNC_DECL(glClearDepthf) - GL_FUNC_DECL(glClearStencil) - GL_FUNC_DECL(glColorMask) - GL_FUNC_DECL(glCompileShader) - GL_FUNC_DECL(glCompressedTexImage2D) - GL_FUNC_DECL(glCompressedTexSubImage2D) - GL_FUNC_DECL(glCopyTexImage2D) - GL_FUNC_DECL(glCopyTexSubImage2D) - GL_FUNC_DECL(glCreateProgram) - GL_FUNC_DECL(glCreateShader) - GL_FUNC_DECL(glCullFace) - GL_FUNC_DECL(glDeleteBuffers) - GL_FUNC_DECL(glDeleteFramebuffers) - GL_FUNC_DECL(glDeleteProgram) - GL_FUNC_DECL(glDeleteRenderbuffers) - GL_FUNC_DECL(glDeleteShader) - GL_FUNC_DECL(glDeleteTextures) - GL_FUNC_DECL(glDepthFunc) - GL_FUNC_DECL(glDepthMask) - GL_FUNC_DECL(glDepthRangef) - GL_FUNC_DECL(glDetachShader) - GL_FUNC_DECL(glDisable) - GL_FUNC_DECL(glDisableVertexAttribArray) - GL_FUNC_DECL(glDrawArrays) - GL_FUNC_DECL(glDrawElements) - GL_FUNC_DECL(glEnable) - GL_FUNC_DECL(glEnableVertexAttribArray) - GL_FUNC_DECL(glFinish) - GL_FUNC_DECL(glFlush) - GL_FUNC_DECL(glFramebufferRenderbuffer) - GL_FUNC_DECL(glFramebufferTexture2D) - GL_FUNC_DECL(glFrontFace) - GL_FUNC_DECL(glGenBuffers) - GL_FUNC_DECL(glGenerateMipmap) - GL_FUNC_DECL(glGenFramebuffers) - GL_FUNC_DECL(glGenRenderbuffers) - GL_FUNC_DECL(glGenTextures) - GL_FUNC_DECL(glGetActiveAttrib) - GL_FUNC_DECL(glGetActiveUniform) - GL_FUNC_DECL(glGetAttachedShaders) - GL_FUNC_DECL(glGetAttribLocation) - GL_FUNC_DECL(glGetBooleanv) - GL_FUNC_DECL(glGetBufferParameteriv) - GL_FUNC_DECL(glGetError) - GL_FUNC_DECL(glGetString) - GL_FUNC_DECL(glGetStringi) - GL_FUNC_DECL(glGetFloatv) - GL_FUNC_DECL(glGetFramebufferAttachmentParameteriv) - GL_FUNC_DECL(glGetIntegerv) - GL_FUNC_DECL(glGetProgramiv) - GL_FUNC_DECL(glGetProgramInfoLog) - GL_FUNC_DECL(glGetRenderbufferParameteriv) - GL_FUNC_DECL(glGetShaderiv) - GL_FUNC_DECL(glGetShaderInfoLog) - GL_FUNC_DECL(glGetShaderPrecisionFormat) - GL_FUNC_DECL(glGetShaderSource) - GL_FUNC_DECL(glGetTexParameterfv) - GL_FUNC_DECL(glGetTexParameteriv) - GL_FUNC_DECL(glGetUniformfv) - GL_FUNC_DECL(glGetUniformiv) - GL_FUNC_DECL(glGetUniformLocation) - GL_FUNC_DECL(glGetVertexAttribfv) - GL_FUNC_DECL(glGetVertexAttribiv) - GL_FUNC_DECL(glGetVertexAttribPointerv) - GL_FUNC_DECL(glHint) - GL_FUNC_DECL(glIsBuffer) - GL_FUNC_DECL(glIsEnabled) - GL_FUNC_DECL(glIsFramebuffer) - GL_FUNC_DECL(glIsProgram) - GL_FUNC_DECL(glIsRenderbuffer) - GL_FUNC_DECL(glIsShader) - GL_FUNC_DECL(glIsTexture) - GL_FUNC_DECL(glLineWidth) - GL_FUNC_DECL(glLinkProgram) - GL_FUNC_DECL(glPixelStorei) - GL_FUNC_DECL(glPolygonOffset) - GL_FUNC_DECL(glReadPixels) - GL_FUNC_DECL(glReleaseShaderCompiler) - GL_FUNC_DECL(glRenderbufferStorage) - GL_FUNC_DECL(glSampleCoverage) - GL_FUNC_DECL(glScissor) - GL_FUNC_DECL(glShaderBinary) - GL_FUNC_DECL(glShaderSource) - GL_FUNC_DECL(glStencilFunc) - GL_FUNC_DECL(glStencilFuncSeparate) - GL_FUNC_DECL(glStencilMask) - GL_FUNC_DECL(glStencilMaskSeparate) - GL_FUNC_DECL(glStencilOp) - GL_FUNC_DECL(glStencilOpSeparate) - GL_FUNC_DECL(glTexImage2D) - GL_FUNC_DECL(glTexParameterf) - GL_FUNC_DECL(glTexParameterfv) - GL_FUNC_DECL(glTexParameteri) - GL_FUNC_DECL(glTexParameteriv) - GL_FUNC_DECL(glTexSubImage2D) - GL_FUNC_DECL(glUniform1f) - GL_FUNC_DECL(glUniform1fv) - GL_FUNC_DECL(glUniform1i) - GL_FUNC_DECL(glUniform1iv) - GL_FUNC_DECL(glUniform2f) - GL_FUNC_DECL(glUniform2fv) - GL_FUNC_DECL(glUniform2i) - GL_FUNC_DECL(glUniform2iv) - GL_FUNC_DECL(glUniform3f) - GL_FUNC_DECL(glUniform3fv) - GL_FUNC_DECL(glUniform3i) - GL_FUNC_DECL(glUniform3iv) - GL_FUNC_DECL(glUniform4f) - GL_FUNC_DECL(glUniform4fv) - GL_FUNC_DECL(glUniform4i) - GL_FUNC_DECL(glUniform4iv) - GL_FUNC_DECL(glUniformMatrix2fv) - GL_FUNC_DECL(glUniformMatrix3fv) - GL_FUNC_DECL(glUniformMatrix4fv) - GL_FUNC_DECL(glUseProgram) - GL_FUNC_DECL(glValidateProgram) - GL_FUNC_DECL(glVertexAttrib1f) - GL_FUNC_DECL(glVertexAttrib1fv) - GL_FUNC_DECL(glVertexAttrib2f) - GL_FUNC_DECL(glVertexAttrib2fv) - GL_FUNC_DECL(glVertexAttrib3f) - GL_FUNC_DECL(glVertexAttrib3fv) - GL_FUNC_DECL(glVertexAttrib4f) - GL_FUNC_DECL(glVertexAttrib4fv) - GL_FUNC_DECL(glVertexAttribPointer) - GL_FUNC_DECL(glViewport) - GL_FUNC_DECL(glReadBuffer) - GL_FUNC_DECL(glDrawRangeElements) - GL_FUNC_DECL(glTexImage3D) - GL_FUNC_DECL(glTexSubImage3D) - GL_FUNC_DECL(glCopyTexSubImage3D) - GL_FUNC_DECL(glCompressedTexImage3D) - GL_FUNC_DECL(glCompressedTexSubImage3D) - GL_FUNC_DECL(glGenQueries) - GL_FUNC_DECL(glDeleteQueries) - GL_FUNC_DECL(glIsQuery) - GL_FUNC_DECL(glBeginQuery) - GL_FUNC_DECL(glEndQuery) - GL_FUNC_DECL(glGetQueryiv) - GL_FUNC_DECL(glGetQueryObjectuiv) - GL_FUNC_DECL(glUnmapBuffer) - GL_FUNC_DECL(glGetBufferPointerv) - GL_FUNC_DECL(glDrawBuffers) - GL_FUNC_DECL(glUniformMatrix2x3fv) - GL_FUNC_DECL(glUniformMatrix3x2fv) - GL_FUNC_DECL(glUniformMatrix2x4fv) - GL_FUNC_DECL(glUniformMatrix4x2fv) - GL_FUNC_DECL(glUniformMatrix3x4fv) - GL_FUNC_DECL(glUniformMatrix4x3fv) - GL_FUNC_DECL(glBlitFramebuffer) - GL_FUNC_DECL(glRenderbufferStorageMultisample) - GL_FUNC_DECL(glFramebufferTextureLayer) - GL_FUNC_DECL(glFlushMappedBufferRange) - GL_FUNC_DECL(glBindVertexArray) - GL_FUNC_DECL(glDeleteVertexArrays) - GL_FUNC_DECL(glGenVertexArrays) - GL_FUNC_DECL(glIsVertexArray) - GL_FUNC_DECL(glGetIntegeri_v) - GL_FUNC_DECL(glBeginTransformFeedback) - GL_FUNC_DECL(glEndTransformFeedback) - GL_FUNC_DECL(glBindBufferRange) - GL_FUNC_DECL(glBindBufferBase) - GL_FUNC_DECL(glTransformFeedbackVaryings) - GL_FUNC_DECL(glGetTransformFeedbackVarying) - GL_FUNC_DECL(glVertexAttribIPointer) - GL_FUNC_DECL(glGetVertexAttribIiv) - GL_FUNC_DECL(glGetVertexAttribIuiv) - GL_FUNC_DECL(glVertexAttribI4i) - GL_FUNC_DECL(glVertexAttribI4ui) - GL_FUNC_DECL(glVertexAttribI4iv) - GL_FUNC_DECL(glVertexAttribI4uiv) - GL_FUNC_DECL(glGetUniformuiv) - GL_FUNC_DECL(glGetFragDataLocation) - GL_FUNC_DECL(glUniform1ui) - GL_FUNC_DECL(glUniform2ui) - GL_FUNC_DECL(glUniform3ui) - GL_FUNC_DECL(glUniform4ui) - GL_FUNC_DECL(glUniform1uiv) - GL_FUNC_DECL(glUniform2uiv) - GL_FUNC_DECL(glUniform3uiv) - GL_FUNC_DECL(glUniform4uiv) - GL_FUNC_DECL(glClearBufferiv) - GL_FUNC_DECL(glClearBufferuiv) - GL_FUNC_DECL(glClearBufferfv) - GL_FUNC_DECL(glClearBufferfi) - GL_FUNC_DECL(glCopyBufferSubData) - GL_FUNC_DECL(glGetUniformIndices) - GL_FUNC_DECL(glGetActiveUniformsiv) - GL_FUNC_DECL(glGetUniformBlockIndex) - GL_FUNC_DECL(glGetActiveUniformBlockiv) - GL_FUNC_DECL(glGetActiveUniformBlockName) - GL_FUNC_DECL(glUniformBlockBinding) - GL_FUNC_DECL(glDrawArraysInstanced) - GL_FUNC_DECL(glDrawElementsInstanced) - GL_FUNC_DECL(glFenceSync) - GL_FUNC_DECL(glIsSync) - GL_FUNC_DECL(glDeleteSync) - GL_FUNC_DECL(glClientWaitSync) - GL_FUNC_DECL(glWaitSync) - GL_FUNC_DECL(glGetInteger64v) - GL_FUNC_DECL(glGetSynciv) - GL_FUNC_DECL(glGetInteger64i_v) - GL_FUNC_DECL(glGetBufferParameteri64v) - GL_FUNC_DECL(glGenSamplers) - GL_FUNC_DECL(glDeleteSamplers) - GL_FUNC_DECL(glIsSampler) - GL_FUNC_DECL(glBindSampler) - GL_FUNC_DECL(glSamplerParameteri) - GL_FUNC_DECL(glSamplerParameteriv) - GL_FUNC_DECL(glSamplerParameterf) - GL_FUNC_DECL(glSamplerParameterfv) - GL_FUNC_DECL(glGetSamplerParameteriv) - GL_FUNC_DECL(glGetSamplerParameterfv) - GL_FUNC_DECL(glVertexAttribDivisor) - GL_FUNC_DECL(glBindTransformFeedback) - GL_FUNC_DECL(glDeleteTransformFeedbacks) - GL_FUNC_DECL(glGenTransformFeedbacks) - GL_FUNC_DECL(glIsTransformFeedback) - GL_FUNC_DECL(glPauseTransformFeedback) - GL_FUNC_DECL(glResumeTransformFeedback) - GL_FUNC_DECL(glGetProgramBinary) - GL_FUNC_DECL(glProgramBinary) - GL_FUNC_DECL(glProgramParameteri) - GL_FUNC_DECL(glInvalidateFramebuffer) - GL_FUNC_DECL(glInvalidateSubFramebuffer) - GL_FUNC_DECL(glTexStorage2D) - GL_FUNC_DECL(glTexStorage3D) - GL_FUNC_DECL(glGetInternalformativ) - GL_FUNC_DECL(glDispatchCompute) - GL_FUNC_DECL(glDispatchComputeIndirect) - GL_FUNC_DECL(glDrawArraysIndirect) - GL_FUNC_DECL(glDrawElementsIndirect) - GL_FUNC_DECL(glFramebufferParameteri) - GL_FUNC_DECL(glGetFramebufferParameteriv) - GL_FUNC_DECL(glGetProgramInterfaceiv) - GL_FUNC_DECL(glGetProgramResourceIndex) - GL_FUNC_DECL(glGetProgramResourceName) - GL_FUNC_DECL(glGetProgramResourceiv) - GL_FUNC_DECL(glGetProgramResourceLocation) - GL_FUNC_DECL(glUseProgramStages) - GL_FUNC_DECL(glActiveShaderProgram) - GL_FUNC_DECL(glCreateShaderProgramv) - GL_FUNC_DECL(glBindProgramPipeline) - GL_FUNC_DECL(glDeleteProgramPipelines) - GL_FUNC_DECL(glGenProgramPipelines) - GL_FUNC_DECL(glIsProgramPipeline) - GL_FUNC_DECL(glGetProgramPipelineiv) - GL_FUNC_DECL(glProgramUniform1i) - GL_FUNC_DECL(glProgramUniform2i) - GL_FUNC_DECL(glProgramUniform3i) - GL_FUNC_DECL(glProgramUniform4i) - GL_FUNC_DECL(glProgramUniform1ui) - GL_FUNC_DECL(glProgramUniform2ui) - GL_FUNC_DECL(glProgramUniform3ui) - GL_FUNC_DECL(glProgramUniform4ui) - GL_FUNC_DECL(glProgramUniform1f) - GL_FUNC_DECL(glProgramUniform2f) - GL_FUNC_DECL(glProgramUniform3f) - GL_FUNC_DECL(glProgramUniform4f) - GL_FUNC_DECL(glProgramUniform1iv) - GL_FUNC_DECL(glProgramUniform2iv) - GL_FUNC_DECL(glProgramUniform3iv) - GL_FUNC_DECL(glProgramUniform4iv) - GL_FUNC_DECL(glProgramUniform1uiv) - GL_FUNC_DECL(glProgramUniform2uiv) - GL_FUNC_DECL(glProgramUniform3uiv) - GL_FUNC_DECL(glProgramUniform4uiv) - GL_FUNC_DECL(glProgramUniform1fv) - GL_FUNC_DECL(glProgramUniform2fv) - GL_FUNC_DECL(glProgramUniform3fv) - GL_FUNC_DECL(glProgramUniform4fv) - GL_FUNC_DECL(glProgramUniformMatrix2fv) - GL_FUNC_DECL(glProgramUniformMatrix3fv) - GL_FUNC_DECL(glProgramUniformMatrix4fv) - GL_FUNC_DECL(glProgramUniformMatrix2x3fv) - GL_FUNC_DECL(glProgramUniformMatrix3x2fv) - GL_FUNC_DECL(glProgramUniformMatrix2x4fv) - GL_FUNC_DECL(glProgramUniformMatrix4x2fv) - GL_FUNC_DECL(glProgramUniformMatrix3x4fv) - GL_FUNC_DECL(glProgramUniformMatrix4x3fv) - GL_FUNC_DECL(glValidateProgramPipeline) - GL_FUNC_DECL(glGetProgramPipelineInfoLog) - GL_FUNC_DECL(glBindImageTexture) - GL_FUNC_DECL(glGetBooleani_v) - GL_FUNC_DECL(glMemoryBarrier) - GL_FUNC_DECL(glMemoryBarrierByRegion) - GL_FUNC_DECL(glTexStorage2DMultisample) - GL_FUNC_DECL(glGetMultisamplefv) - GL_FUNC_DECL(glSampleMaski) - GL_FUNC_DECL(glGetTexLevelParameteriv) - GL_FUNC_DECL(glGetTexLevelParameterfv) - GL_FUNC_DECL(glBindVertexBuffer) - GL_FUNC_DECL(glVertexAttribFormat) - GL_FUNC_DECL(glVertexAttribIFormat) - GL_FUNC_DECL(glVertexAttribBinding) - GL_FUNC_DECL(glVertexBindingDivisor) - GL_FUNC_DECL(glBlendBarrier) - GL_FUNC_DECL(glCopyImageSubData) - GL_FUNC_DECL(glDebugMessageControl) - GL_FUNC_DECL(glDebugMessageInsert) - GL_FUNC_DECL(glDebugMessageCallback) - GL_FUNC_DECL(glGetDebugMessageLog) - GL_FUNC_DECL(glPushDebugGroup) - GL_FUNC_DECL(glPopDebugGroup) - GL_FUNC_DECL(glObjectLabel) - GL_FUNC_DECL(glGetObjectLabel) - GL_FUNC_DECL(glObjectPtrLabel) - GL_FUNC_DECL(glGetObjectPtrLabel) - GL_FUNC_DECL(glGetPointerv) - GL_FUNC_DECL(glEnablei) - GL_FUNC_DECL(glDisablei) - GL_FUNC_DECL(glBlendEquationi) - GL_FUNC_DECL(glBlendEquationSeparatei) - GL_FUNC_DECL(glBlendFunci) - GL_FUNC_DECL(glBlendFuncSeparatei) - GL_FUNC_DECL(glColorMaski) - GL_FUNC_DECL(glIsEnabledi) - GL_FUNC_DECL(glDrawElementsBaseVertex) - GL_FUNC_DECL(glDrawRangeElementsBaseVertex) - GL_FUNC_DECL(glDrawElementsInstancedBaseVertex) - GL_FUNC_DECL(glFramebufferTexture) - GL_FUNC_DECL(glPrimitiveBoundingBox) - GL_FUNC_DECL(glGetGraphicsResetStatus) - GL_FUNC_DECL(glReadnPixels) - GL_FUNC_DECL(glGetnUniformfv) - GL_FUNC_DECL(glGetnUniformiv) - GL_FUNC_DECL(glGetnUniformuiv) - GL_FUNC_DECL(glMinSampleShading) - GL_FUNC_DECL(glPatchParameteri) - GL_FUNC_DECL(glTexParameterIiv) - GL_FUNC_DECL(glTexParameterIuiv) - GL_FUNC_DECL(glGetTexParameterIiv) - GL_FUNC_DECL(glGetTexParameterIuiv) - GL_FUNC_DECL(glSamplerParameterIiv) - GL_FUNC_DECL(glSamplerParameterIuiv) - GL_FUNC_DECL(glGetSamplerParameterIiv) - GL_FUNC_DECL(glGetSamplerParameterIuiv) - GL_FUNC_DECL(glTexBuffer) - GL_FUNC_DECL(glTexBufferRange) - GL_FUNC_DECL(glTexStorage3DMultisample) - GL_FUNC_DECL(glMapBufferRange) - GL_FUNC_DECL(glBufferStorageEXT) - GL_FUNC_DECL(glGetQueryObjectivEXT) - GL_FUNC_DECL(glGetQueryObjecti64vEXT) - GL_FUNC_DECL(glBindFragDataLocationEXT) - GL_FUNC_DECL(glMapBufferOES) - - GL_FUNC_DECL(glMultiDrawArraysIndirectEXT) - GL_FUNC_DECL(glMultiDrawElementsIndirectEXT) - GL_FUNC_DECL(glMultiDrawElementsBaseVertexEXT) - - GL_FUNC_DECL(glBruh) -} - -#undef GL_FUNC_DECL - -#define LOAD_EGL(name) \ - static EGL::name##_PTR egl_##name = NULL; \ - { \ - static bool first = true; \ - if (first) { \ - first = false; \ - if (MG_GL::BackendLoader::GLESBackend::libEGL != NULL) { \ - egl_##name = (EGL::name##_PTR)MG_GL::BackendLoader::GLESBackend::ProcAddress(MG_GL::BackendLoader::GLESBackend::libEGL, #name); \ - } \ - } \ - } - -namespace MG_GL::BackendLoader { - void Init(); - - namespace GLESBackend { - extern void *libGLES, *libEGL; - - void *ProcAddress(void *lib, const char *name); - void InitGLES(); - void InitEGL(); - void DestroyTempEGLCtx(); - void LoadLibs(); - void *OpenLib(const char **names, const char *override); - - #define INIT_GLES_FUNC(name) \ - { \ - GLES::name = (name##_PTR)ProcAddress(libGLES, #name); \ - } - } -} - -#endif - -#endif //MOBILEGL_GLES_LOADER_H diff --git a/MG/MG_GL/Implementations/EGL/Diligent/DiligentConfig.h b/MG/MG_GL/Implementations/EGL/Diligent/DiligentConfig.h deleted file mode 100644 index 01e53e08..00000000 --- a/MG/MG_GL/Implementations/EGL/Diligent/DiligentConfig.h +++ /dev/null @@ -1,9 +0,0 @@ -// -// Created by BZLZHH on 2025/5/25. -// - -#pragma once - -namespace MG_Diligent { - inline const int DILIGENT_BACKEND_TYPE = MG_Constants::Backend::BACKEND_DILIGENT_VULKAN; -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.cpp b/MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.cpp deleted file mode 100644 index b009ac08..00000000 --- a/MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.cpp +++ /dev/null @@ -1,1076 +0,0 @@ -// -// Created by Swung 0x48 on 2025-05-18. -// - -#include "../../../../Includes.h" - -typedef Diligent::IEngineFactoryVk* (*Diligent_GetEngineFactoryVk_t)(); -typedef Diligent::IEngineFactoryOpenGL* (*Diligent_GetEngineFactoryOpenGL_t)(); - -namespace MG_Diligent { - Diligent::IEngineFactory* g_pFactory; - Diligent::IRenderDevice* g_pDevice; - Diligent::IDeviceContext* g_pContext; - Diligent::ISwapChain* g_pSwapChain; - MG_Global::unordered_map g_BufferMap; - MG_Global::unordered_map g_TextureMap; - MG_Global::unordered_map g_TextureViewMap; - MG_Global::unordered_map g_FramebufferMap; - MG_Global::unordered_map g_ShaderMap; - MG_Global::unordered_map g_ProgramMap; - MG_Global::unordered_map g_SamplerMap; - MG_Global::unordered_map g_UniformBufferMap; - Diligent::IBuffer* g_TriangleFanIndexBuffer = nullptr; - GLuint g_NextResourceId = 0; -// bool IsInRenderPass = false; - bool initialized = false; - - void BuildInputLayout(GLuint program, VertexArrayState& vaState, - std::vector& inputLayout) { - inputLayout.clear(); - - auto& programObj = MG_State_T::programState->programs_[program]; - -// for (const auto& [attribIndex, attrib] : vaState.vaos_[vaState.currentVao_].attribs) { - for (uint32_t attribIndex = 0; attribIndex < MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS; ++attribIndex) { - const auto& attrib = vaState.vaos_[vaState.currentVao_].attribs[attribIndex]; - if (!attrib.enabled) continue; - - std::string attribName; - for (auto [name, loc] : programObj.attribLocations) { - if (loc == attribIndex) { - attribName = name; - break; - } - } - - if (attribName.empty()) { - continue; - // This can happen if an attribute is bound but not used by the shader program. - } - - MG_State::QueryProgramAttributeLocation(program, attribName.c_str()); - if (attribIndex == -1) { - continue; - } - - Diligent::LayoutElement element; - element.InputIndex = attribIndex; - element.BufferSlot = 0; - element.NumComponents = attrib.size; - - switch (attrib.type) { - case GL_BYTE: element.ValueType = Diligent::VT_INT8; break; - case GL_UNSIGNED_BYTE: element.ValueType = Diligent::VT_UINT8; break; - case GL_SHORT: element.ValueType = Diligent::VT_INT16; break; - case GL_UNSIGNED_SHORT: element.ValueType = Diligent::VT_UINT16; break; - case GL_INT: element.ValueType = Diligent::VT_INT32; break; - case GL_UNSIGNED_INT: element.ValueType = Diligent::VT_UINT32; break; - case GL_FLOAT: element.ValueType = Diligent::VT_FLOAT32; break; - case GL_HALF_FLOAT: element.ValueType = Diligent::VT_FLOAT16; break; - case GL_DOUBLE: element.ValueType = Diligent::VT_FLOAT64; break; - default: element.ValueType = Diligent::VT_UNDEFINED; break; - } - - element.IsNormalized = attrib.normalized; - element.Stride = attrib.stride; // Set stride by attrib.stride - - element.RelativeOffset = static_cast(reinterpret_cast(attrib.pointer)); - - inputLayout.push_back(element); - - MG_Util::Debug::LogD("Built LayoutElement for attrib '%s' (location %d): " - "NumComponents=%d, ValueType=%d, IsNormalized=%s, RelativeOffset=%u, Stride=%u", - attribName.c_str(), attribIndex, - element.NumComponents, element.ValueType, - element.IsNormalized ? "true" : "false", - element.RelativeOffset, element.Stride); - } - } - - namespace { - template - inline void hash_combine(std::size_t& seed, const T& v) { - std::hash hasher; - seed ^= hasher(v) + 0x9e3779b9 + (seed << 6) + (seed >> 2); - } - } - - uint64_t PipelineStateManager::CalculateStateHash( - CommonState &commonState, - VertexArrayState &vaState, - GLFramebufferInfo& fbInfo, - GLenum primitiveTopology) { - size_t hash = 0; - - auto& capabilities = commonState.capabilities; - - hash_combine(hash, commonState.blendSrcRGB); - hash_combine(hash, commonState.blendDstRGB); - hash_combine(hash, commonState.blendSrcAlpha); - hash_combine(hash, commonState.blendDstAlpha); - uint32_t colorMask = (commonState.colorMask[0] ? 1 : 0) | - (commonState.colorMask[1] ? 2 : 0) | - (commonState.colorMask[2] ? 4 : 0) | - (commonState.colorMask[3] ? 8 : 0); - hash_combine(hash, colorMask); - hash_combine(hash, capabilities[GL_BLEND]); - - hash_combine(hash, commonState.depthFunc); - hash_combine(hash, commonState.depthMask); - hash_combine(hash, capabilities[GL_DEPTH_TEST]); - - hash_combine(hash, primitiveTopology); - hash_combine(hash, 0); // TODO: Cull Face Mode - hash_combine(hash, capabilities[GL_CULL_FACE]); - hash_combine(hash, capabilities[GL_STENCIL_TEST]); - - auto *pVAO = vaState.GetCurrentVAO(); - - for (uint32_t i = 0; i < MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS; ++i) { - const auto& attrib = pVAO->attribs[i]; - if (attrib.enabled) { - hash_combine(hash, i); - hash_combine(hash, attrib.size); - hash_combine(hash, attrib.type); - hash_combine(hash, attrib.normalized); - } - } - - hash_combine(hash, fbInfo.ColorRTVs.size()); -// if (!fbInfo.pRenderPass) { - for (const auto& rtv : fbInfo.ColorRTVs) { - if (rtv) { - hash_combine(hash, rtv->GetDesc().Format); - } - } -// } - hash_combine(hash, fbInfo.DepthStencilFormat); - auto& programObj = MG_State_T::programState->programs_[MG_State_T::programState->currentProgram_]; - - for (auto& [name, uniform] : programObj.uniformValues) { - if (!MG_GL::GL::IsSamplerType(uniform.type)) continue; - - std::string textureIDStr; - if (!uniform.intData.empty()) { - auto textureUnit = static_cast(uniform.intData[0]); - auto unitState = &MG_State_T::textureState->textureUnits_[textureUnit]; - textureIDStr = "tex" + std::to_string(unitState->GetBoundTexture(unitState->activeTarget)); - hash_combine(hash, textureIDStr); - MG_Util::Debug::LogD("Hashing sampler: %s, texture: %s", name.c_str(), textureIDStr.c_str()); - } - } - return hash; - } - - void PipelineStateManager::ConfigurePSO( - Diligent::GraphicsPipelineStateCreateInfo &PSOCreateInfo, - GLProgramInfo &programInfo, - CommonState &commonState, - VertexArrayState &vaState, - GLFramebufferInfo& fbInfo, - GLenum primitiveTopology) { - PSOCreateInfo.PSODesc.Name = "Program_PSO"; - PSOCreateInfo.PSODesc.PipelineType = Diligent::PIPELINE_TYPE_GRAPHICS; - - MG_Util::Debug::LogD("Num AttachedShaders: %zu", programInfo.AttachedShaders.size()); - for (auto shader: programInfo.AttachedShaders) { - MG_Util::Debug::LogD("AttachedShader: %p, Type: %d", shader, shader->GetDesc().ShaderType); - switch (shader->GetDesc().ShaderType) { - case Diligent::SHADER_TYPE_VERTEX: - PSOCreateInfo.pVS = shader; - break; - case Diligent::SHADER_TYPE_PIXEL: - PSOCreateInfo.pPS = shader; - break; - case Diligent::SHADER_TYPE_GEOMETRY: - PSOCreateInfo.pGS = shader; - break; - default: - break; - } - } - - PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements = programInfo.inputLayout.data(); - PSOCreateInfo.GraphicsPipeline.InputLayout.NumElements = programInfo.inputLayout.size(); - -// if (fbInfo.pRenderPass) { -// PSOCreateInfo.GraphicsPipeline.pRenderPass = fbInfo.pRenderPass; -// } else { -// PSOCreateInfo.GraphicsPipeline.pRenderPass = g_FramebufferMap[0].pRenderPass; // Default render pass -// } - - PSOCreateInfo.GraphicsPipeline.PrimitiveTopology = GLPrimitiveTopologyToDiligent(primitiveTopology); - -// if (fbInfo.pRenderPass) { -// PSOCreateInfo.GraphicsPipeline.NumRenderTargets = 0; -// } else - { - PSOCreateInfo.GraphicsPipeline.NumRenderTargets = fbInfo.ColorRTVs.size(); - if (PSOCreateInfo.GraphicsPipeline.NumRenderTargets == 0) { - PSOCreateInfo.GraphicsPipeline.NumRenderTargets = 1; - PSOCreateInfo.GraphicsPipeline.RTVFormats[0] = Diligent::TEX_FORMAT_RGBA8_UNORM; - } else { - for (size_t i = 0; i < fbInfo.ColorRTVs.size(); ++i) { - if (fbInfo.ColorRTVs[i]) { - PSOCreateInfo.GraphicsPipeline.RTVFormats[i] = - fbInfo.ColorRTVs[i]->GetDesc().Format; - } else { - PSOCreateInfo.GraphicsPipeline.RTVFormats[i] = Diligent::TEX_FORMAT_RGBA8_UNORM; - } - } - } - } - - PSOCreateInfo.GraphicsPipeline.DSVFormat = fbInfo.DepthStencilFormat; - - Diligent::BlendStateDesc &blendDesc = PSOCreateInfo.GraphicsPipeline.BlendDesc; - blendDesc.IndependentBlendEnable = false; - blendDesc.RenderTargets[0].BlendEnable = commonState.capabilities[GL_BLEND]; - blendDesc.RenderTargets[0].SrcBlend = ConvertGLBlendFactor(commonState.blendSrcRGB); - blendDesc.RenderTargets[0].DestBlend = ConvertGLBlendFactor(commonState.blendDstRGB); - blendDesc.RenderTargets[0].BlendOp = Diligent::BLEND_OPERATION_ADD; - blendDesc.RenderTargets[0].SrcBlendAlpha = ConvertGLBlendFactor( - commonState.blendSrcAlpha); - blendDesc.RenderTargets[0].DestBlendAlpha = ConvertGLBlendFactor( - commonState.blendDstAlpha); - blendDesc.RenderTargets[0].BlendOpAlpha = Diligent::BLEND_OPERATION_ADD; - blendDesc.RenderTargets[0].RenderTargetWriteMask = (Diligent::COLOR_MASK)( - (commonState.colorMask[0] ? Diligent::COLOR_MASK_RED : 0) | - (commonState.colorMask[1] ? Diligent::COLOR_MASK_GREEN : 0) | - (commonState.colorMask[2] ? Diligent::COLOR_MASK_BLUE : 0) | - (commonState.colorMask[3] ? Diligent::COLOR_MASK_ALPHA : 0)); - - MG_Util::Debug::LogD("Configured Blend State:"); -// MG_Util::Debug::LogD(" Using explicit render pass: %s", fbInfo.pRenderPass ? "true" : "false"); - MG_Util::Debug::LogD(" NumRenderTargets: %u", PSOCreateInfo.GraphicsPipeline.NumRenderTargets); - MG_Util::Debug::LogD(" IndependentBlendEnable: %s", blendDesc.IndependentBlendEnable ? "true" : "false"); - MG_Util::Debug::LogD(" RenderTargets[0].BlendEnable: %s", blendDesc.RenderTargets[0].BlendEnable ? "true" : "false"); - MG_Util::Debug::LogD(" RenderTargets[0].SrcBlend: %d (GL: %s)", - blendDesc.RenderTargets[0].SrcBlend, - MG_Util::Debug::GLEnumToString(commonState.blendSrcRGB)); - MG_Util::Debug::LogD(" RenderTargets[0].DestBlend: %d (GL: %s)", - blendDesc.RenderTargets[0].DestBlend, - MG_Util::Debug::GLEnumToString(commonState.blendDstRGB)); - MG_Util::Debug::LogD(" RenderTargets[0].BlendOp: %d", blendDesc.RenderTargets[0].BlendOp); - MG_Util::Debug::LogD(" RenderTargets[0].SrcBlendAlpha: %d (GL: %s)", - blendDesc.RenderTargets[0].SrcBlendAlpha, - MG_Util::Debug::GLEnumToString(commonState.blendSrcAlpha)); - MG_Util::Debug::LogD(" RenderTargets[0].DestBlendAlpha: %d (GL: %s)", - blendDesc.RenderTargets[0].DestBlendAlpha, - MG_Util::Debug::GLEnumToString(commonState.blendDstAlpha)); - MG_Util::Debug::LogD(" RenderTargets[0].BlendOpAlpha: %d", blendDesc.RenderTargets[0].BlendOpAlpha); - MG_Util::Debug::LogD(" RenderTargets[0].RenderTargetWriteMask: %u", blendDesc.RenderTargets[0].RenderTargetWriteMask); - - Diligent::DepthStencilStateDesc &depthStencilDesc = PSOCreateInfo.GraphicsPipeline.DepthStencilDesc; - depthStencilDesc.DepthEnable = commonState.capabilities[GL_DEPTH_TEST]; - depthStencilDesc.DepthWriteEnable = commonState.depthMask; - depthStencilDesc.DepthFunc = ConvertGLDepthFunc(commonState.depthFunc); - - Diligent::RasterizerStateDesc &rasterizerDesc = PSOCreateInfo.GraphicsPipeline.RasterizerDesc; - rasterizerDesc.CullMode = commonState.capabilities[GL_CULL_FACE] ? - Diligent::CULL_MODE_BACK : Diligent::CULL_MODE_NONE; - rasterizerDesc.FrontCounterClockwise = false; - // TODO: Get correct FrontCounterClockwise state and re-enable backface culling. - - if (!programInfo.inputLayout.empty()) { - PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements = programInfo.inputLayout.data(); - PSOCreateInfo.GraphicsPipeline.InputLayout.NumElements = - static_cast(programInfo.inputLayout.size()); - - MG_Util::Debug::LogD("Configured InputLayout with %zu elements", - programInfo.inputLayout.size()); - } else { - MG_Util::Debug::LogW("No input layout elements for PSO"); - PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements = nullptr; - PSOCreateInfo.GraphicsPipeline.InputLayout.NumElements = 0; - } - - - ConfigureResourceLayout(PSOCreateInfo, programInfo); - } - - void PipelineStateManager::ReleasePSO(GLuint program) { - if (program == 0) - return; - auto &programInfo = g_ProgramMap[program]; - if (programInfo.pPipelineState) { - MG_Util::Debug::LogD("Releasing PSO for program %u", program); - programInfo.pPipelineState->Release(); - programInfo.pPipelineState = nullptr; - MG_Util::Debug::LogD("PSO released for program %u", program); - } - programInfo.psoDirty = true; - } - - void PipelineStateManager::MarkPSODirty(GLuint program) { - if (program == 0) - return; - auto &programInfo = g_ProgramMap[program]; - programInfo.psoDirty = true; - MG_Util::Debug::LogD("Marked PSO dirty for program %u", program); - } - - Diligent::IPipelineState *PipelineStateManager::GetOrCreatePSO( - GLuint program, - GLProgramInfo &programInfo, - CommonState &commonState, - VertexArrayState &vaState, - GLFramebufferInfo& fbInfo, - GLenum primitiveTopology) { - uint64_t currentStateHash = CalculateStateHash(commonState, vaState, fbInfo, primitiveTopology); - - if (programInfo.pPipelineState && - programInfo.psoStateHash == currentStateHash && - !programInfo.psoDirty) { - MG_Util::Debug::LogD("PSO unchanged"); - return programInfo.pPipelineState; - } - - MG_Util::Debug::LogD("commonState - Blend states: "); - MG_Util::Debug::LogD(" SrcBlend: %s", MG_Util::Debug::GLEnumToString(commonState.blendSrcRGB)); - MG_Util::Debug::LogD(" DestBlend: %s", MG_Util::Debug::GLEnumToString(commonState.blendDstRGB)); - MG_Util::Debug::LogD(" SrcBlendAlpha: %s", MG_Util::Debug::GLEnumToString(commonState.blendSrcAlpha)); - MG_Util::Debug::LogD(" DestBlendAlpha: %s", MG_Util::Debug::GLEnumToString(commonState.blendDstAlpha)); - - PSOKey key{program, currentStateHash}; - - auto it = psoCache.find(key); - if (it != psoCache.end() && it->second) { - MG_Util::Debug::LogD("Found cached PSO: %04X%04X", it->first.programHash, it->first.stateHash); - - auto& desc = it->second->GetGraphicsPipelineDesc(); - MG_Util::Debug::LogD("PSO state - Blend states: "); - MG_Util::Debug::LogD(" SrcBlend: %s", MG_Util::Debug::DiligentBlendFactorToString(desc.BlendDesc.RenderTargets[0].SrcBlend)); - MG_Util::Debug::LogD(" DestBlend: %s", MG_Util::Debug::DiligentBlendFactorToString(desc.BlendDesc.RenderTargets[0].DestBlend)); - MG_Util::Debug::LogD(" SrcBlendAlpha: %s", MG_Util::Debug::DiligentBlendFactorToString(desc.BlendDesc.RenderTargets[0].SrcBlendAlpha)); - MG_Util::Debug::LogD(" DestBlendAlpha: %s", MG_Util::Debug::DiligentBlendFactorToString(desc.BlendDesc.RenderTargets[0].DestBlendAlpha)); - // These asserts can fail - assert(ConvertGLBlendFactor(commonState.blendSrcRGB) == desc.BlendDesc.RenderTargets[0].SrcBlend); - assert(ConvertGLBlendFactor(commonState.blendDstRGB) == desc.BlendDesc.RenderTargets[0].DestBlend); - assert(ConvertGLBlendFactor(commonState.blendSrcAlpha) == desc.BlendDesc.RenderTargets[0].SrcBlendAlpha); - assert(ConvertGLBlendFactor(commonState.blendDstAlpha) == desc.BlendDesc.RenderTargets[0].DestBlendAlpha); - - assert(ConvertGLDepthFunc(commonState.depthFunc) == desc.DepthStencilDesc.DepthFunc); -// assert(commonState.capabilities[GL_DEPTH_TEST] == desc.DepthStencilDesc.DepthEnable); -// if ((ConvertGLBlendFactor(commonState.blendSrcRGB) == desc.BlendDesc.RenderTargets[0].SrcBlend) && -// (ConvertGLBlendFactor(commonState.blendDstRGB) == desc.BlendDesc.RenderTargets[0].DestBlend) && -// (ConvertGLBlendFactor(commonState.blendSrcAlpha) == desc.BlendDesc.RenderTargets[0].SrcBlendAlpha) && -// (ConvertGLBlendFactor(commonState.blendDstAlpha) == desc.BlendDesc.RenderTargets[0].DestBlendAlpha)) - return it->second; - } - - MG_Diligent::BuildInputLayout(program, vaState, programInfo.inputLayout); - - Diligent::GraphicsPipelineStateCreateInfo PSOCreateInfo; - ConfigurePSO(PSOCreateInfo, programInfo, commonState, vaState, fbInfo, primitiveTopology); - - MG_Util::Debug::LogD("Dumping PSOCreateInfo for program %u:", program); - MG_Util::Debug::LogD(" PSODesc.Name: %s", PSOCreateInfo.PSODesc.Name); - MG_Util::Debug::LogD(" PSODesc.PipelineType: %d", PSOCreateInfo.PSODesc.PipelineType); - MG_Util::Debug::LogD(" PSODesc.ResourceLayout.DefaultVariableType: %d", PSOCreateInfo.PSODesc.ResourceLayout.DefaultVariableType); - MG_Util::Debug::LogD(" PSODesc.ResourceLayout.NumVariables: %u", PSOCreateInfo.PSODesc.ResourceLayout.NumVariables); - if (PSOCreateInfo.PSODesc.ResourceLayout.Variables) { - for (Diligent::Uint32 i = 0; i < PSOCreateInfo.PSODesc.ResourceLayout.NumVariables; ++i) { - MG_Util::Debug::LogD(" Variable %u:", i); - MG_Util::Debug::LogD(" Name: %s", PSOCreateInfo.PSODesc.ResourceLayout.Variables[i].Name); - MG_Util::Debug::LogD(" ShaderStages: %u", PSOCreateInfo.PSODesc.ResourceLayout.Variables[i].ShaderStages); - MG_Util::Debug::LogD(" Type: %d", PSOCreateInfo.PSODesc.ResourceLayout.Variables[i].Type); - } - } - MG_Util::Debug::LogD(" PSODesc.ResourceLayout.NumImmutableSamplers: %u", PSOCreateInfo.PSODesc.ResourceLayout.NumImmutableSamplers); - if (PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers) { - for (Diligent::Uint32 i = 0; i < PSOCreateInfo.PSODesc.ResourceLayout.NumImmutableSamplers; ++i) { - MG_Util::Debug::LogD(" ImmutableSampler %u:", i); - MG_Util::Debug::LogD(" ShaderStages: %u", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].ShaderStages); - MG_Util::Debug::LogD(" SamplerOrTextureName: %s", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].SamplerOrTextureName); - // SamplerDesc - MG_Util::Debug::LogD(" Desc.MinFilter: %d", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].Desc.MinFilter); - MG_Util::Debug::LogD(" Desc.MagFilter: %d", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].Desc.MagFilter); - MG_Util::Debug::LogD(" Desc.MipFilter: %d", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].Desc.MipFilter); - MG_Util::Debug::LogD(" Desc.AddressU: %d", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].Desc.AddressU); - MG_Util::Debug::LogD(" Desc.AddressV: %d", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].Desc.AddressV); - MG_Util::Debug::LogD(" Desc.AddressW: %d", PSOCreateInfo.PSODesc.ResourceLayout.ImmutableSamplers[i].Desc.AddressW); - } - } - MG_Util::Debug::LogD(" pVS: %p (Shader Type: %d)", PSOCreateInfo.pVS, PSOCreateInfo.pVS ? PSOCreateInfo.pVS->GetDesc().ShaderType : -1); - MG_Util::Debug::LogD(" pPS: %p (Shader Type: %d)", PSOCreateInfo.pPS, PSOCreateInfo.pPS ? PSOCreateInfo.pPS->GetDesc().ShaderType : -1); - MG_Util::Debug::LogD(" pGS: %p (Shader Type: %d)", PSOCreateInfo.pGS, PSOCreateInfo.pGS ? PSOCreateInfo.pGS->GetDesc().ShaderType : -1); - // GraphicsPipeline - MG_Util::Debug::LogD(" GraphicsPipeline.InputLayout.NumElements: %u", PSOCreateInfo.GraphicsPipeline.InputLayout.NumElements); - if (PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements) { - for (Diligent::Uint32 i = 0; i < PSOCreateInfo.GraphicsPipeline.InputLayout.NumElements; ++i) { - MG_Util::Debug::LogD(" LayoutElement %u:", i); - MG_Util::Debug::LogD(" InputIndex: %u", PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements[i].InputIndex); - MG_Util::Debug::LogD(" BufferSlot: %u", PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements[i].BufferSlot); - MG_Util::Debug::LogD(" NumComponents: %u", PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements[i].NumComponents); - MG_Util::Debug::LogD(" ValueType: %d", PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements[i].ValueType); - MG_Util::Debug::LogD(" IsNormalized: %s", PSOCreateInfo.GraphicsPipeline.InputLayout.LayoutElements[i].IsNormalized ? "true" : "false"); - } - MG_Util::Debug::LogD(" GraphicsPipeline.pRenderPass: %p", PSOCreateInfo.GraphicsPipeline.pRenderPass); - } - MG_Util::Debug::LogD(" GraphicsPipeline.PrimitiveTopology: %d", PSOCreateInfo.GraphicsPipeline.PrimitiveTopology); - MG_Util::Debug::LogD(" GraphicsPipeline.NumRenderTargets: %u", PSOCreateInfo.GraphicsPipeline.NumRenderTargets); - for (Diligent::Uint8 i = 0; i < PSOCreateInfo.GraphicsPipeline.NumRenderTargets; ++i) { - MG_Util::Debug::LogD(" RTVFormats[%u]: %d", i, PSOCreateInfo.GraphicsPipeline.RTVFormats[i]); - } - MG_Util::Debug::LogD(" GraphicsPipeline.DSVFormat: %d", PSOCreateInfo.GraphicsPipeline.DSVFormat); - MG_Util::Debug::LogD(" GraphicsPipeline.BlendDesc.IndependentBlendEnable: %s", PSOCreateInfo.GraphicsPipeline.BlendDesc.IndependentBlendEnable ? "true" : "false"); - MG_Util::Debug::LogD(" GraphicsPipeline.DepthStencilDesc.DepthEnable: %s", PSOCreateInfo.GraphicsPipeline.DepthStencilDesc.DepthEnable ? "true" : "false"); - MG_Util::Debug::LogD(" GraphicsPipeline.DepthStencilDesc.DepthFunc: 0x%x", PSOCreateInfo.GraphicsPipeline.DepthStencilDesc.DepthFunc); - MG_Util::Debug::LogD(" GraphicsPipeline.RasterizerDesc.CullMode: %d", PSOCreateInfo.GraphicsPipeline.RasterizerDesc.CullMode); - - MG_Util::Debug::LogD("Blend states: "); - MG_Util::Debug::LogD(" GraphicsPipeline.BlendDesc.RenderTargets[0].BlendEnable: %s", PSOCreateInfo.GraphicsPipeline.BlendDesc.RenderTargets[0].BlendEnable ? "true" : "false"); - MG_Util::Debug::LogD(" GraphicsPipeline.BlendDesc.RenderTargets[0].SrcBlend: %s", MG_Util::Debug::GLEnumToString(commonState.blendSrcRGB)); - MG_Util::Debug::LogD(" GraphicsPipeline.BlendDesc.RenderTargets[0].DestBlend: %s", MG_Util::Debug::GLEnumToString(commonState.blendDstRGB)); - MG_Util::Debug::LogD(" GraphicsPipeline.BlendDesc.RenderTargets[0].SrcBlendAlpha: %s", MG_Util::Debug::GLEnumToString(commonState.blendSrcAlpha)); - MG_Util::Debug::LogD(" GraphicsPipeline.BlendDesc.RenderTargets[0].DestBlendAlpha: %s", MG_Util::Debug::GLEnumToString(commonState.blendDstAlpha)); - - Diligent::IPipelineState *pNewPSO = nullptr; - MG_Util::Debug::LogD("Creating new PSO for program %u", program); - g_pDevice->CreateGraphicsPipelineState(PSOCreateInfo, &pNewPSO); - if (pNewPSO) { - MG_Util::Debug::LogD("PSO created successfully for program %u: %p, key = %04X%04X", program, pNewPSO, key.programHash, key.stateHash); - } else { - MG_Util::Debug::LogE("Failed to create PSO for program %u", program); - } - - psoCache[key] = pNewPSO; - - if constexpr (MG_Global::Common::LogLevel >= MG_Constants::Common::LOG_LEVEL_DEBUG) { - MG_Util::Debug::LogD("PSO list = ["); - for (auto& pso: psoCache) { - MG_Util::Debug::LogD(" %04X%04X,", pso.first.programHash, pso.first.stateHash); - } - MG_Util::Debug::LogD("] // PSO list end"); - } - - return pNewPSO; - } - - void PipelineStateManager::ConfigureResourceLayout( - Diligent::GraphicsPipelineStateCreateInfo& PSOCreateInfo, - GLProgramInfo& programInfo) - { - MG_Util::Debug::LogD("Begin configuring resource layout for pipeline"); - - auto& ResourceLayout = PSOCreateInfo.PSODesc.ResourceLayout; - ResourceLayout.DefaultVariableType = Diligent::SHADER_RESOURCE_VARIABLE_TYPE_MUTABLE; - - static std::vector Variables; - Variables.clear(); - - MG_Global::unordered_map shaderSourcesMap; - - ProgramObject programObj = MG_State_T::programState->programs_[programInfo.id]; - - for (GLuint shaderId : programObj.attachedShaders) { - auto it = MG_State_T::programState->shaders_.find(shaderId); - if (it != MG_State_T::programState->shaders_.end()) { - std::string shaderSource; - if (it->second.type == GL_VERTEX_SHADER) { - std::string infoLog; - auto spirv = - MG_Util::Program::CompileGLSLToSPIRV(it->second.type, - it->second.source, - infoLog); - if (spirv.empty()) { - MG_Util::Debug::LogE("Shader Source for %u:\n%s", shaderId, - it->second.source.c_str()); - MG_Util::Debug::LogE("Failed to compile shader %u: %s", shaderId, - infoLog.c_str()); - continue; - } - - shaderSource = MG_Util::Program::BindInputLayoutLocationsForGLSL(spirv, - programObj.attribLocations); - // MG_Util::Program::RenameGLSLBuiltinsForVulkan(shaderSource); - } else { - shaderSource = it->second.source; - } - shaderSourcesMap[it->first] = shaderSource; - } - } - - MG_Util::Program::GenerateDefaultUBOForGLSL_Multi(shaderSourcesMap, programInfo.uniformBufferNames); - MG_Util::Debug::LogD("ConfigureResourceLayout: uniformBufferNames for %u:", programInfo.id); - for (auto& name: programInfo.uniformBufferNames) { - MG_Util::Debug::LogD(" %s", name.c_str()); - } - - for (auto shaderId : programInfo.AttachedShadersID) { - auto shader = MG_Diligent::g_ShaderMap[shaderId]; - MG_Util::Debug::LogD("Processing shader ID: %u", shaderId); - - auto& shaderObj = MG_State_T::programState->shaders_[shaderId]; - MG_Util::Debug::LogD("Shader source for %u before SPIR-V compilation:\n%s", shaderId, - shaderSourcesMap[shaderId].c_str()); - - std::string compilationLog; - auto spirv = - MG_Util::Program::CompileGLSLToSPIRV(shaderObj.type, - shaderSourcesMap[shaderId], - compilationLog); - if (spirv.empty()) { - MG_Util::Debug::LogE("Failed to compile shader %u: %s", shaderId, compilationLog.c_str()); - continue; - } else { - MG_Util::Debug::LogD("Shader %u (modified) compiled to SPIR-V successfully", shaderId); - } - - spvc_context context = nullptr; - spvc_parsed_ir parsed_ir = nullptr; - spvc_compiler compiler = nullptr; - spvc_resources resources = nullptr; - - spvc_result result = spvc_context_create(&context); - if (result != SPVC_SUCCESS) { - MG_Util::Debug::LogE("spvc_context_create failed for shader %u", shaderId); - continue; - } - - result = spvc_context_parse_spirv(context, - spirv.data(), - spirv.size(), - &parsed_ir); - - if (result != SPVC_SUCCESS) { - MG_Util::Debug::LogE("spvc_context_parse_spirv failed for shader %u", shaderId); - spvc_context_destroy(context); - continue; - } - - result = spvc_context_create_compiler(context, SPVC_BACKEND_GLSL, - parsed_ir, SPVC_CAPTURE_MODE_TAKE_OWNERSHIP, &compiler); - - if (result != SPVC_SUCCESS) { - MG_Util::Debug::LogE("spvc_context_create_compiler failed for shader %u", shaderId); - spvc_context_destroy(context); - continue; - } - - result = spvc_compiler_create_shader_resources(compiler, &resources); - if (result != SPVC_SUCCESS) { - MG_Util::Debug::LogE("spvc_compiler_create_shader_resources failed for shader %u", shaderId); - spvc_context_destroy(context); - continue; - } - - Diligent::SHADER_TYPE shaderType; - switch (shaderObj.type) { - case GL_VERTEX_SHADER: - shaderType = Diligent::SHADER_TYPE_VERTEX; - break; - case GL_FRAGMENT_SHADER: - shaderType = Diligent::SHADER_TYPE_PIXEL; - break; - case GL_GEOMETRY_SHADER: - shaderType = Diligent::SHADER_TYPE_GEOMETRY; - break; - case GL_COMPUTE_SHADER: - shaderType = Diligent::SHADER_TYPE_COMPUTE; - break; - default: - shaderType = Diligent::SHADER_TYPE_UNKNOWN; - } - - MG_Util::Debug::LogD("Shader %u mapped to Diligent shader type %d", shaderId, shaderType); - - const spvc_reflected_resource* resourceList = nullptr; - size_t resourceCount = 0; - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_UNIFORM_BUFFER, - &resourceList, &resourceCount); - MG_Util::Debug::LogD("Shader %u has %zu uniform buffers", shaderId, resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - bool already_added = false; - for(const auto& existing_var : Variables) { - if (strcmp(existing_var.Name, resourceList[i].name) == 0) { - already_added = true; - MG_Util::Debug::LogD("Uniform buffer %s already added, skipping.", resourceList[i].name); - break; - } - } - if (already_added) continue; - - Diligent::ShaderResourceVariableDesc varDesc; - varDesc.Name = strdup(resourceList[i].name); - varDesc.ShaderStages = shaderType; - varDesc.Type = Diligent::SHADER_RESOURCE_VARIABLE_TYPE_MUTABLE; - MG_Util::Debug::LogD("Uniform buffer: %s, Stage: %u, Type: %u", varDesc.Name, varDesc.ShaderStages, varDesc.Type); - Variables.push_back(varDesc); - } - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_SAMPLED_IMAGE, - &resourceList, &resourceCount); - MG_Util::Debug::LogD("Shader %u has %zu sampled images", shaderId, resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - Diligent::ShaderResourceVariableDesc varDesc; - varDesc.Name = strdup(resourceList[i].name); - varDesc.ShaderStages = shaderType; - varDesc.Type = Diligent::SHADER_RESOURCE_VARIABLE_TYPE_MUTABLE; - MG_Util::Debug::LogD("Sampled image: %s", varDesc.Name); - Variables.push_back(varDesc); - } - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_SEPARATE_SAMPLERS, - &resourceList, &resourceCount); - MG_Util::Debug::LogD("Shader %u has %zu separate samplers", shaderId, resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - Diligent::ShaderResourceVariableDesc varDesc; - varDesc.Name = strdup(resourceList[i].name); - varDesc.ShaderStages = shaderType; - varDesc.Type = Diligent::SHADER_RESOURCE_VARIABLE_TYPE_MUTABLE; - Variables.push_back(varDesc); - MG_Util::Debug::LogD("Separate sampler: %s", varDesc.Name); - } - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_STORAGE_IMAGE, - &resourceList, &resourceCount); - MG_Util::Debug::LogD("Shader %u has %zu storage images", shaderId, resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - Diligent::ShaderResourceVariableDesc varDesc; - varDesc.Name = strdup(resourceList[i].name); - varDesc.ShaderStages = shaderType; - varDesc.Type = Diligent::SHADER_RESOURCE_VARIABLE_TYPE_MUTABLE; - MG_Util::Debug::LogD("Storage image: %s", varDesc.Name); - Variables.push_back(varDesc); - } - - spvc_context_destroy(context); - } - - if (!Variables.empty()) { - ResourceLayout.Variables = Variables.data(); - ResourceLayout.NumVariables = static_cast(Variables.size()); - MG_Util::Debug::LogD("Added %u shader resource variables", ResourceLayout.NumVariables); - } - - ResourceLayout.ImmutableSamplers = nullptr; - ResourceLayout.NumImmutableSamplers = 0; - MG_Util::Debug::LogD("Immutable samplers disabled"); - - MG_Util::Debug::LogD("Finished configuring resource layout"); - } - - - - PipelineStateManager g_PSOManager; -} - -using namespace Diligent; - -namespace MG_EGL::Diligent { - void CreateWindowDiligentCoreOpenGL(NativeWindowType window) { - void *handle = dlopen("libGraphicsEngineOpenGL.so", RTLD_LAZY); - auto Diligent_GetEngineFactoryOpenGL = - (Diligent_GetEngineFactoryOpenGL_t) dlsym(handle, - "Diligent_GetEngineFactoryOpenGL"); - - auto *pFactoryOpenGL = Diligent_GetEngineFactoryOpenGL(); - ::Diligent::EngineGLCreateInfo EngineCI; - auto *nativeWindow = static_cast(window); - EngineCI.Window.pAWindow = nativeWindow; - - ::Diligent::SwapChainDesc SCDesc; - - MG_Util::Debug::LogD("Creating OpenGL device and swap chain"); - pFactoryOpenGL->CreateDeviceAndSwapChainGL( - EngineCI, &MG_Diligent::g_pDevice, &MG_Diligent::g_pContext, SCDesc, &MG_Diligent::g_pSwapChain); - if (MG_Diligent::g_pDevice && MG_Diligent::g_pContext && MG_Diligent::g_pSwapChain) { - MG_Util::Debug::LogD("OpenGL device created: device=%p, context=%p, swapchain=%p", - MG_Diligent::g_pDevice, MG_Diligent::g_pContext, MG_Diligent::g_pSwapChain); - } else { - MG_Util::Debug::LogE("Failed to create OpenGL device"); - } - } - - void CreateWindowDiligentCoreVulkan(NativeWindowType window) { - AndroidNativeWindow nativeWindow{window}; - auto* pFactoryVk = static_cast(MG_Diligent::g_pFactory); - MG_Util::Debug::LogD("Creating Vulkan swap chain"); - - ::Diligent::SwapChainDesc SCDesc; - SCDesc.ColorBufferFormat = TEX_FORMAT_RGBA8_UNORM; - SCDesc.PreTransform = SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180; - - pFactoryVk->CreateSwapChainVk( - MG_Diligent::g_pDevice, MG_Diligent::g_pContext, SCDesc, nativeWindow, &MG_Diligent::g_pSwapChain); - if (MG_Diligent::g_pSwapChain) { - MG_Util::Debug::LogD("Vulkan swap chain created: %p", MG_Diligent::g_pSwapChain); - } else { - MG_Util::Debug::LogE("Failed to create Vulkan swap chain"); - } - } - - void CreateWindowDiligentCore(NativeWindowType window) { - switch (MG_Diligent::DILIGENT_BACKEND_TYPE) { - case MG_Constants::Backend::BACKEND_DILIGENT_VULKAN: - CreateWindowDiligentCoreVulkan(window); - break; - case MG_Constants::Backend::BACKEND_DILIGENT_OPENGL: - default: - CreateWindowDiligentCoreOpenGL(window); - break; - } - } - - void LoadDiligentCoreVulkan() { - void *handle = dlopen("libGraphicsEngineVk.so", RTLD_LAZY); - auto Diligent_GetEngineFactoryVk = - (Diligent_GetEngineFactoryVk_t) dlsym(handle, - "Diligent_GetEngineFactoryVk"); - - auto *pFactoryVk = Diligent_GetEngineFactoryVk(); - MG_Diligent::g_pFactory = pFactoryVk; - ::Diligent::EngineVkCreateInfo EngineCI; - EngineCI.DynamicHeapSize = 512 << 20; - EngineCI.Features.NativeMultiDraw = DEVICE_FEATURE_STATE_OPTIONAL; - - MG_Util::Debug::LogD("Creating Vulkan device and contexts"); - pFactoryVk->CreateDeviceAndContextsVk( - EngineCI, &MG_Diligent::g_pDevice, &MG_Diligent::g_pContext); - - if (MG_Diligent::g_pDevice && MG_Diligent::g_pContext) { - MG_Util::Debug::LogD("Vulkan device created: device=%p, context=%p", - MG_Diligent::g_pDevice, MG_Diligent::g_pContext); - auto version = MG_Diligent::g_pDevice->GetDeviceInfo().APIVersion; - std::string apiVersion; - switch (MG_Diligent::DILIGENT_BACKEND_TYPE) { - case MG_Constants::Backend::BACKEND_DILIGENT_VULKAN: - apiVersion = std::format("Vulkan {}.{}", version.Major, version.Minor); - break; - case MG_Constants::Backend::BACKEND_DILIGENT_METAL: - apiVersion = std::format("Metal {}.{}", version.Major, version.Minor); - break; - case MG_Constants::Backend::BACKEND_DILIGENT_OPENGL: - apiVersion = std::format("OpenGL {}.{}", version.Major, version.Minor); - break; - default: - apiVersion = ""; - } - MG_Util::Debug::LogI("Running on %s, %s", MG_Diligent::g_pDevice->GetAdapterInfo().Description, apiVersion.c_str()); - MG_Util::Debug::LogI("NativeMultiDraw is%s supported.", (MG_Diligent::g_pDevice->GetDeviceInfo().Features.NativeMultiDraw != DEVICE_FEATURE_STATE_DISABLED) ? " " : " not"); - } else { - MG_Util::Debug::LogE("Failed to create Vulkan device"); - } - - } - - void LoadDiligentCore() { - switch (MG_Diligent::DILIGENT_BACKEND_TYPE) { - case MG_Constants::Backend::BACKEND_DILIGENT_VULKAN: - LoadDiligentCoreVulkan(); - break; - case MG_Constants::Backend::BACKEND_DILIGENT_OPENGL: - default: -// CreateWindowDiligentCoreOpenGL(window); - break; - } - } - - void CreateDefaultRenderPass() { - ::Diligent::RenderPassDesc RPDesc; - RPDesc.AttachmentCount = 2; - ::Diligent::RenderPassAttachmentDesc Attachments[2]; - RPDesc.pAttachments = Attachments; - - Attachments[0].Format = ::Diligent::TEX_FORMAT_RGBA8_UNORM; - Attachments[0].InitialState = ::Diligent::RESOURCE_STATE_RENDER_TARGET; - Attachments[0].FinalState = ::Diligent::RESOURCE_STATE_RENDER_TARGET; - Attachments[0].LoadOp = ::Diligent::ATTACHMENT_LOAD_OP_CLEAR; - Attachments[0].StoreOp = ::Diligent::ATTACHMENT_STORE_OP_STORE; - - Attachments[1].Format = ::Diligent::TEX_FORMAT_D24_UNORM_S8_UINT; - Attachments[1].InitialState = ::Diligent::RESOURCE_STATE_DEPTH_WRITE; - Attachments[1].FinalState = ::Diligent::RESOURCE_STATE_DEPTH_WRITE; - Attachments[1].LoadOp = ::Diligent::ATTACHMENT_LOAD_OP_CLEAR; - Attachments[1].StoreOp = ::Diligent::ATTACHMENT_STORE_OP_STORE; - - ::Diligent::AttachmentReference RTAttachmentRef{0, ::Diligent::RESOURCE_STATE_RENDER_TARGET}; - ::Diligent::AttachmentReference DSAttachmentRef{1, ::Diligent::RESOURCE_STATE_DEPTH_WRITE}; - - ::Diligent::SubpassDesc Subpasses[1]; - Subpasses[0].RenderTargetAttachmentCount = 1; - Subpasses[0].pRenderTargetAttachments = &RTAttachmentRef; - Subpasses[0].pDepthStencilAttachment = &DSAttachmentRef; - - RPDesc.SubpassCount = 1; - RPDesc.pSubpasses = Subpasses; - -// MG_Util::Debug::LogD("Creating default render pass"); -// MG_Diligent::g_pDevice->CreateRenderPass(RPDesc, &MG_Diligent::g_FramebufferMap[0].pRenderPass); -// if (MG_Diligent::g_FramebufferMap[0].pRenderPass) { -// MG_Util::Debug::LogD("Default render pass created: %p", MG_Diligent::g_FramebufferMap[0].pRenderPass); -// } else { -// MG_Util::Debug::LogE("Failed to create default render pass"); -// } - } - - EGLSurface eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, NativeWindowType window, - const EGLint *attrib_list) { - CreateWindowDiligentCore(window); - MG_GL::GL::UpdateDefaultFramebuffer(); - return (EGLSurface) 1; - } - - EGLBoolean eglChooseConfig(EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, - EGLint config_size, EGLint *num_config) { - *num_config = 1; - return EGL_TRUE; - } - - EGLContext eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext shareCtx, - const EGLint *attrib_list) { - return (EGLContext) 1; - } - - EGLBoolean eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor) { - LoadDiligentCore(); - if (major) *major = 1; - if (minor) *minor = 5; - return EGL_TRUE; - } - - EGLDisplay eglGetDisplay(NativeDisplayType display) { - return (EGLDisplay) 1; - } - - EGLint eglGetError() { - return EGL_SUCCESS; - } - - EGLBoolean eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx) { - return EGL_TRUE; - } - - EGLBoolean eglDestroyContext(EGLDisplay dpy, EGLContext ctx) { - return EGL_TRUE; - } - - EGLBoolean eglDestroySurface(EGLDisplay dpy, EGLSurface surface) { - return EGL_TRUE; - } - - EGLBoolean eglTerminate(EGLDisplay dpy) { - return EGL_TRUE; - } - - EGLBoolean eglReleaseThread(void) { - return EGL_TRUE; - } - - EGLContext eglGetCurrentContext(void) { - return (EGLContext) 1; - } - - EGLBoolean - eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value) { - if (attribute == EGL_NATIVE_VISUAL_ID) - *value = AHARDWAREBUFFER_FORMAT_R8G8B8A8_UNORM; - return EGL_TRUE; - } - - EGLBoolean eglBindAPI(EGLenum api) { - return EGL_TRUE; - } - - EGLSurface eglGetCurrentSurface(EGLint readdraw) { - return (EGLSurface) 1; - } - - EGLBoolean - eglQuerySurface(EGLDisplay display, EGLSurface surface, EGLint attribute, EGLint *value) { - return EGL_TRUE; - } - - EGLBoolean eglSwapInterval(EGLDisplay dpy, EGLint interval) { - return EGL_TRUE; - } - - EGLBoolean eglSwapBuffers(EGLDisplay dpy, EGLSurface draw) { - MG_Util::Debug::LogD("Flushing context"); -// if (MG_Diligent::IsInRenderPass) { -// MG_Util::Debug::LogD("Ending current render pass."); -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; -// MG_Util::Debug::LogD("Current render pass ended."); -// } else { -// MG_Util::Debug::LogD("No active render pass to end."); -// } - MG_Diligent::g_pContext->Flush(); - - MG_Util::Debug::LogD("Presenting swap chain"); - MG_Diligent::g_pSwapChain->Present(0); - MG_GL::GL::UpdateDefaultFramebuffer(); -// if (MG_Diligent::IsInRenderPass) { -// MG_Util::Debug::LogD("Ending current render pass."); -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; -// MG_Util::Debug::LogD("Current render pass ended."); -// } else { -// MG_Util::Debug::LogD("No active render pass to end."); -// } - MG_Diligent::g_pContext->Flush(); - - MG_Util::Debug::LogD("Finishing frame"); - MG_Diligent::g_pContext->FinishFrame(); - - auto& fbInfo = MG_Diligent::g_FramebufferMap[0]; -// if (/*fbInfo.pRenderPass &&*/ fbInfo.pFramebuffer) { - MG_Util::Debug::LogD("Setting render targets: %zu color attachments", fbInfo.ColorRTVs.size()); - MG_Diligent::g_pContext->SetRenderTargets( - static_cast(fbInfo.ColorRTVs.size()), - fbInfo.ColorRTVs.data(), - fbInfo.pDepthStencilRTV, - ::Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - - static ::Diligent::OptimizedClearValue DefaultClearValues[2]; - DefaultClearValues[0].Format = fbInfo.ColorRTVs[0]->GetDesc().Format; - DefaultClearValues[0].Color[0] = 0.0f; - DefaultClearValues[0].Color[1] = 0.0f; - DefaultClearValues[0].Color[2] = 0.0f; - DefaultClearValues[0].Color[3] = 1.0f; - DefaultClearValues[1].Format = fbInfo.DepthStencilFormat; - DefaultClearValues[1].DepthStencil.Depth = 1.0f; - DefaultClearValues[1].DepthStencil.Stencil = 0; - -// MG_Util::Debug::LogD("Beginning render pass: pass=%p, fb=%p", fbInfo.pRenderPass, fbInfo.pFramebuffer); -// MG_Diligent::g_pContext->BeginRenderPass( -// ::Diligent::BeginRenderPassAttribs{ fbInfo.pRenderPass, fbInfo.pFramebuffer, -// 2, DefaultClearValues, -// ::Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION} -// ); -// MG_Diligent::IsInRenderPass = true; -// } -// const auto& SCDesc = MG_Diligent::g_pSwapChain->GetDesc(); -// MG_Util::Debug::LogD("Setting viewport: width=%d, height=%d", SCDesc.Width, SCDesc.Height); - -// ::Diligent::Viewport viewport; -// viewport.TopLeftX = 0.f; -// viewport.TopLeftY = SCDesc.Height; -// viewport.Width = SCDesc.Width; -// viewport.Height = SCDesc.Height; -// viewport.MinDepth = 0.f; -// viewport.MaxDepth = 1.f; - MG_Diligent::g_pContext->SetViewports(1, nullptr, 0, 0); - return EGL_TRUE; - } - - EGLSurface - eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list) { - return (EGLSurface) 1; - } - -} - -void *libGLES = nullptr, *libEGL = nullptr; - -static const char *LibPathPrefixes[] = { - "", - "/opt/vc/lib/", - "/usr/local/lib/", - "/usr/lib/", - nullptr -}; - -static const char *LibExts[] = { - "so", - "so.1", - "so.2", - "dylib", - "dll", - nullptr -}; - -static const char *GLES3Libs[] = { - "libGLESv3_CM", - "libGLESv3", - nullptr -}; - -static const char *EGLLibs[] = { - "libEGL", - nullptr -}; - -void *OpenLib(const char **names, const char *override) { - void *lib = nullptr; - - char path_name[PATH_MAX + 1]; - int flags = RTLD_LOCAL | RTLD_NOW; - if (override) { - if ((lib = dlopen(override, flags))) { - strncpy(path_name, override, PATH_MAX); - return lib; - } else { - MG_Util::Debug::LogE("LIBGL_GLES override failed: %s\n", dlerror()); - } - } - for (int p = 0; LibPathPrefixes[p]; p++) { - for (int i = 0; names[i]; i++) { - for (int e = 0; LibExts[e]; e++) { - snprintf(path_name, PATH_MAX, "%s%s.%s", LibPathPrefixes[p], names[i], LibExts[e]); - if ((lib = dlopen(path_name, flags))) { - return lib; - } - } - } - } - return lib; -} - -typedef __eglMustCastToProperFunctionPointerType (* eglGetProcAddress_t)(const char *procname); -eglGetProcAddress_t real_eglGetProcAddress = nullptr; - -__eglMustCastToProperFunctionPointerType eglGetProcAddress(const char *procname) { - if (strncmp(procname, "eglGetProcAddress", strlen("eglGetProcAddress")) == 0) { - return (__eglMustCastToProperFunctionPointerType)(&eglGetProcAddress); - } - -#define MG_EGL_PROC_EXPORT(name) \ - if (strncmp(procname, #name, strlen(#name)) == 0) { \ - return (__eglMustCastToProperFunctionPointerType)(&MG_EGL::Diligent::name); \ - } - - MG_EGL_PROC_EXPORT(eglCreateWindowSurface); - MG_EGL_PROC_EXPORT(eglChooseConfig); - MG_EGL_PROC_EXPORT(eglCreateContext); - MG_EGL_PROC_EXPORT(eglInitialize); - MG_EGL_PROC_EXPORT(eglGetDisplay); - MG_EGL_PROC_EXPORT(eglGetError); - MG_EGL_PROC_EXPORT(eglMakeCurrent); - MG_EGL_PROC_EXPORT(eglDestroyContext); - MG_EGL_PROC_EXPORT(eglDestroySurface); - MG_EGL_PROC_EXPORT(eglTerminate); - MG_EGL_PROC_EXPORT(eglReleaseThread); - MG_EGL_PROC_EXPORT(eglGetCurrentContext); - MG_EGL_PROC_EXPORT(eglGetConfigAttrib); - MG_EGL_PROC_EXPORT(eglBindAPI); - MG_EGL_PROC_EXPORT(eglGetCurrentSurface); - MG_EGL_PROC_EXPORT(eglQuerySurface); - MG_EGL_PROC_EXPORT(eglSwapInterval); - MG_EGL_PROC_EXPORT(eglSwapBuffers); - MG_EGL_PROC_EXPORT(eglCreatePbufferSurface); -#undef MG_EGL_PROC_EXPORT - - /* TODO: Call real eglGetProcAddress() to get the rest (should be real native GLES functions) */ - if (!libEGL) { - libEGL = OpenLib(EGLLibs, nullptr); - real_eglGetProcAddress = (eglGetProcAddress_t)dlsym(libEGL, "eglGetProcAddress"); - } - if (real_eglGetProcAddress) - return real_eglGetProcAddress(procname); - - return nullptr; -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.h b/MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.h deleted file mode 100644 index 1c185752..00000000 --- a/MG/MG_GL/Implementations/EGL/Diligent/EGL_impl.h +++ /dev/null @@ -1,264 +0,0 @@ -// -// Created by Swung 0x48 on 2025-05-18. -// - -#ifndef MOBILEGL_DILIGENT_EGL_IMPL_H -#define MOBILEGL_DILIGENT_EGL_IMPL_H - -#if BACKEND_TYPE == BACKEND_DILIGENT - -namespace MG_Diligent { - extern Diligent::IRenderDevice* g_pDevice; - extern Diligent::IDeviceContext* g_pContext; - extern Diligent::ISwapChain* g_pSwapChain; - extern MG_Global::unordered_map g_BufferMap; - extern MG_Global::unordered_map g_TextureMap; - extern MG_Global::unordered_map g_TextureViewMap; - - struct GLFramebufferInfo - { -// Diligent::IFramebuffer* pFramebuffer = nullptr; -// Diligent::IRenderPass* pRenderPass = nullptr; - std::vector ColorRTVs; - Diligent::ITextureView* pDepthStencilRTV = nullptr; - Diligent::TEXTURE_FORMAT DepthStencilFormat = Diligent::TEX_FORMAT_UNKNOWN; - bool HasDepthStencil = false; - std::vector ClearValues; - // ... - }; - extern MG_Global::unordered_map g_FramebufferMap; - extern MG_Global::unordered_map g_ShaderMap; - struct GLProgramInfo - { - GLuint id; - std::vector AttachedShaders; - std::vector AttachedShadersID; - Diligent::IPipelineState* pPipelineState = nullptr; - Diligent::IShaderResourceBinding* pResourceBinding = nullptr; - uint64_t psoStateHash = 0; - bool psoDirty = true; - std::vector inputLayout; - GLuint DefaultFBO = 0; - ProgramObject programObj; - - // Uniform names, in the order of their index in uniform buffer - std::vector uniformBufferNames; - - Diligent::IBuffer* pDefaultUBO = nullptr; - - std::unordered_map uniformStages; - std::unordered_map uniformOffsets; - // ... - }; - extern MG_Global::unordered_map g_ProgramMap; - - extern MG_Global::unordered_map g_SamplerMap; - extern MG_Global::unordered_map g_UniformBufferMap; - extern Diligent::IBuffer* g_TriangleFanIndexBuffer; - - inline Diligent::PRIMITIVE_TOPOLOGY GLPrimitiveTopologyToDiligent(GLenum Topology) - { - switch (Topology) - { - case GL_TRIANGLE_STRIP: - return Diligent::PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP; - case GL_TRIANGLES: - return Diligent::PRIMITIVE_TOPOLOGY_TRIANGLE_LIST; - case GL_TRIANGLE_FAN: - return Diligent::PRIMITIVE_TOPOLOGY_TRIANGLE_LIST; - // TODO: Handle other topologies - default: - return Diligent::PRIMITIVE_TOPOLOGY_TRIANGLE_LIST; - } - } - - class PipelineStateManager { - private: - struct PSOKey { - uint64_t programHash; - uint64_t stateHash; - - bool operator==(const PSOKey &other) const { - return programHash == other.programHash && stateHash == other.stateHash; - } - }; - - struct PSOKeyHash { - size_t operator()(const PSOKey &key) const { - return std::hash()(key.programHash) ^ - std::hash()(key.stateHash); - } - }; - - std::unordered_map psoCache; - - public: - Diligent::IPipelineState *GetOrCreatePSO( - GLuint program, - GLProgramInfo &programInfo, - CommonState &commonState, - VertexArrayState &vaState, - GLFramebufferInfo& fbInfo, - GLenum primitiveTopology); - - void MarkPSODirty(GLuint program); - - void ReleasePSO(GLuint program); - - private: - Diligent::FILTER_TYPE ConvertGLFilter(GLenum filter) { - switch (filter) { - case GL_NEAREST: - case GL_NEAREST_MIPMAP_NEAREST: - case GL_NEAREST_MIPMAP_LINEAR: - return Diligent::FILTER_TYPE_POINT; - case GL_LINEAR: - case GL_LINEAR_MIPMAP_NEAREST: - case GL_LINEAR_MIPMAP_LINEAR: - return Diligent::FILTER_TYPE_LINEAR; - default: - return Diligent::FILTER_TYPE_LINEAR; - } - } - - Diligent::FILTER_TYPE ConvertGLMipFilter(GLenum filter) { - switch (filter) { - case GL_NEAREST_MIPMAP_NEAREST: - case GL_LINEAR_MIPMAP_NEAREST: - return Diligent::FILTER_TYPE_POINT; - case GL_NEAREST_MIPMAP_LINEAR: - case GL_LINEAR_MIPMAP_LINEAR: - return Diligent::FILTER_TYPE_LINEAR; - case GL_NEAREST: - case GL_LINEAR: - return Diligent::FILTER_TYPE_LINEAR; - default: - return Diligent::FILTER_TYPE_LINEAR; - } - } - - Diligent::TEXTURE_ADDRESS_MODE ConvertGLWrapMode(GLenum wrap) { - switch (wrap) { - case GL_REPEAT: - return Diligent::TEXTURE_ADDRESS_WRAP; - case GL_MIRRORED_REPEAT: - return Diligent::TEXTURE_ADDRESS_MIRROR; - case GL_CLAMP_TO_EDGE: - return Diligent::TEXTURE_ADDRESS_CLAMP; - case GL_CLAMP_TO_BORDER: - return Diligent::TEXTURE_ADDRESS_BORDER; - case GL_MIRROR_CLAMP_TO_EDGE: - return Diligent::TEXTURE_ADDRESS_MIRROR_ONCE; - default: - return Diligent::TEXTURE_ADDRESS_WRAP; - } - } - - Diligent::BLEND_FACTOR ConvertGLBlendFactor(GLenum factor) { - switch (factor) { - case GL_ZERO: - return Diligent::BLEND_FACTOR_ZERO; - case GL_ONE: - return Diligent::BLEND_FACTOR_ONE; - case GL_SRC_COLOR: - return Diligent::BLEND_FACTOR_SRC_COLOR; - case GL_ONE_MINUS_SRC_COLOR: - return Diligent::BLEND_FACTOR_INV_SRC_COLOR; - case GL_DST_COLOR: - return Diligent::BLEND_FACTOR_DEST_COLOR; - case GL_ONE_MINUS_DST_COLOR: - return Diligent::BLEND_FACTOR_INV_DEST_COLOR; - case GL_SRC_ALPHA: - return Diligent::BLEND_FACTOR_SRC_ALPHA; - case GL_ONE_MINUS_SRC_ALPHA: - return Diligent::BLEND_FACTOR_INV_SRC_ALPHA; - case GL_DST_ALPHA: - return Diligent::BLEND_FACTOR_DEST_ALPHA; - case GL_ONE_MINUS_DST_ALPHA: - return Diligent::BLEND_FACTOR_INV_DEST_ALPHA; - default: - return Diligent::BLEND_FACTOR_ONE; - } - } - - Diligent::COMPARISON_FUNCTION ConvertGLDepthFunc(GLenum func) { - switch (func) { - case GL_LESS: - return Diligent::COMPARISON_FUNC_LESS; - case GL_LEQUAL: - return Diligent::COMPARISON_FUNC_LESS_EQUAL; - case GL_GREATER: - return Diligent::COMPARISON_FUNC_GREATER; - case GL_GEQUAL: - return Diligent::COMPARISON_FUNC_GREATER_EQUAL; - case GL_EQUAL: - return Diligent::COMPARISON_FUNC_EQUAL; - case GL_NOTEQUAL: - return Diligent::COMPARISON_FUNC_NOT_EQUAL; - case GL_ALWAYS: - return Diligent::COMPARISON_FUNC_ALWAYS; - case GL_NEVER: - return Diligent::COMPARISON_FUNC_NEVER; - default: - return Diligent::COMPARISON_FUNC_LESS; - } - } - - uint64_t CalculateStateHash( - CommonState &commonState, - VertexArrayState &vaState, - GLFramebufferInfo& fbInfo, - GLenum primitiveTopology); - - void ConfigurePSO( - Diligent::GraphicsPipelineStateCreateInfo &PSOCreateInfo, - GLProgramInfo &programInfo, - CommonState &commonState, - VertexArrayState &vaState, - GLFramebufferInfo& fbInfo, - GLenum primitiveTopology); - - void ConfigureResourceLayout( - Diligent::GraphicsPipelineStateCreateInfo& PSOCreateInfo, - GLProgramInfo& programInfo); - }; - - extern PipelineStateManager g_PSOManager; - - void BuildInputLayout(GLuint program, VertexArrayState& vaState, - std::vector& inputLayout); - - extern bool initialized; -// extern bool IsInRenderPass; - extern GLuint g_NextResourceId; -} - -namespace MG_EGL::Diligent { - - EGLSurface eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, NativeWindowType window, const EGLint* attrib_list); - EGLBoolean eglChooseConfig(EGLDisplay dpy, const EGLint* attrib_list, EGLConfig* configs, EGLint config_size, EGLint* num_config); - EGLContext eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext shareCtx, const EGLint* attrib_list); - EGLBoolean eglInitialize(EGLDisplay dpy, EGLint* major, EGLint* minor); - EGLDisplay eglGetDisplay(NativeDisplayType display); - EGLint eglGetError(); - EGLBoolean eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx); - EGLBoolean eglDestroyContext(EGLDisplay dpy, EGLContext ctx); - EGLBoolean eglDestroySurface(EGLDisplay dpy, EGLSurface surface); - EGLBoolean eglTerminate(EGLDisplay dpy); - EGLBoolean eglReleaseThread(void); - EGLContext eglGetCurrentContext(void); - EGLBoolean eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value); - EGLBoolean eglBindAPI(EGLenum api); - EGLSurface eglGetCurrentSurface(EGLint readdraw); - EGLBoolean eglQuerySurface(EGLDisplay display, EGLSurface surface, EGLint attribute, EGLint *value); - EGLBoolean eglSwapInterval(EGLDisplay dpy, EGLint interval); - EGLBoolean eglSwapBuffers(EGLDisplay dpy, EGLSurface draw); - EGLSurface eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list); -} - -MG_EXPORT __eglMustCastToProperFunctionPointerType eglGetProcAddress(const char *procname); - -#endif - - -#endif //MOBILEGL_DILIGENT_EGL_IMPL_H diff --git a/MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.cpp b/MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.cpp deleted file mode 100644 index 217bda16..00000000 --- a/MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.cpp +++ /dev/null @@ -1,184 +0,0 @@ -// -// Created by BZLZHH on 2025/4/26. -// - -#include "../../../../Includes.h" - -#if BACKEND_TYPE == BACKEND_GLES - -MG_EXPORT EGLint eglGetError(void) { - LOAD_EGL(eglGetError) - return egl_eglGetError(); -} - -MG_EXPORT EGLDisplay eglGetDisplay(EGLNativeDisplayType display_id) { - LOAD_EGL(eglGetDisplay) - return egl_eglGetDisplay(display_id); -} - -MG_EXPORT EGLBoolean eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor) { - LOAD_EGL(eglInitialize) - return egl_eglInitialize(dpy, major, minor); -} - -MG_EXPORT EGLBoolean eglTerminate(EGLDisplay dpy) { - LOAD_EGL(eglTerminate) - return egl_eglTerminate(dpy); -} - -MG_EXPORT const char *eglQueryString(EGLDisplay dpy, EGLint name) { - LOAD_EGL(eglQueryString) - return egl_eglQueryString(dpy, name); -} - -MG_EXPORT EGLBoolean eglGetConfigs(EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config) { - LOAD_EGL(eglGetConfigs) - return egl_eglGetConfigs(dpy, configs, config_size, num_config); -} - -MG_EXPORT EGLBoolean eglChooseConfig(EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config) { - LOAD_EGL(eglChooseConfig) - return egl_eglChooseConfig(dpy, attrib_list, configs, config_size, num_config); -} - -MG_EXPORT EGLBoolean eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value) { - LOAD_EGL(eglGetConfigAttrib) - return egl_eglGetConfigAttrib(dpy, config, attribute, value); -} - -MG_EXPORT EGLSurface eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list) { - LOAD_EGL(eglCreateWindowSurface) - EGLSurface surface = egl_eglCreateWindowSurface(dpy, config, win, attrib_list); - -// auto* pFactoryOpenGL = GetEngineFactoryOpenGL(); - - - return surface; -} - -MG_EXPORT EGLSurface eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list) { - LOAD_EGL(eglCreatePbufferSurface) - return egl_eglCreatePbufferSurface(dpy, config, attrib_list); -} - -MG_EXPORT EGLSurface eglCreatePixmapSurface(EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list) { - LOAD_EGL(eglCreatePixmapSurface) - return egl_eglCreatePixmapSurface(dpy, config, pixmap, attrib_list); -} - -MG_EXPORT EGLBoolean eglDestroySurface(EGLDisplay dpy, EGLSurface surface) { - LOAD_EGL(eglDestroySurface) - return egl_eglDestroySurface(dpy, surface); -} - -MG_EXPORT EGLBoolean eglQuerySurface(EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value) { - LOAD_EGL(eglQuerySurface) - return egl_eglQuerySurface(dpy, surface, attribute, value); -} - -MG_EXPORT EGLBoolean eglBindAPI(EGLenum api) { - LOAD_EGL(eglBindAPI) - return egl_eglBindAPI(api); -} - -MG_EXPORT EGLenum eglQueryAPI(void) { - LOAD_EGL(eglQueryAPI) - return egl_eglQueryAPI(); -} - -MG_EXPORT EGLBoolean eglWaitClient(void) { - LOAD_EGL(eglWaitClient) - return egl_eglWaitClient(); -} - -MG_EXPORT EGLBoolean eglReleaseThread(void) { - LOAD_EGL(eglReleaseThread) - return egl_eglReleaseThread(); -} - -MG_EXPORT EGLSurface eglCreatePbufferFromClientBuffer(EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list) { - LOAD_EGL(eglCreatePbufferFromClientBuffer) - return egl_eglCreatePbufferFromClientBuffer(dpy, buftype, buffer, config, attrib_list); -} - -MG_EXPORT EGLBoolean eglSurfaceAttrib(EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value) { - LOAD_EGL(eglSurfaceAttrib) - return egl_eglSurfaceAttrib(dpy, surface, attribute, value); -} - -MG_EXPORT EGLBoolean eglBindTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer) { - LOAD_EGL(eglBindTexImage) - return egl_eglBindTexImage(dpy, surface, buffer); -} - -MG_EXPORT EGLBoolean eglReleaseTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer) { - LOAD_EGL(eglReleaseTexImage) - return egl_eglReleaseTexImage(dpy, surface, buffer); -} - -MG_EXPORT EGLBoolean eglSwapInterval(EGLDisplay dpy, EGLint interval) { - LOAD_EGL(eglSwapInterval) - return egl_eglSwapInterval(dpy, interval); -} - -MG_EXPORT EGLContext eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list) { - LOAD_EGL(eglCreateContext) - return egl_eglCreateContext(dpy, config, share_context, attrib_list); -} - -MG_EXPORT EGLBoolean eglDestroyContext(EGLDisplay dpy, EGLContext ctx) { - LOAD_EGL(eglDestroyContext) - return egl_eglDestroyContext(dpy, ctx); -} - -MG_EXPORT EGLBoolean eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx) { - LOAD_EGL(eglMakeCurrent) - return egl_eglMakeCurrent(dpy, draw, read, ctx); -} - -MG_EXPORT EGLContext eglGetCurrentContext(void) { - LOAD_EGL(eglGetCurrentContext) - return egl_eglGetCurrentContext(); -} - -MG_EXPORT EGLSurface eglGetCurrentSurface(EGLint readdraw) { - LOAD_EGL(eglGetCurrentSurface) - return egl_eglGetCurrentSurface(readdraw); -} - -MG_EXPORT EGLDisplay eglGetCurrentDisplay(void) { - LOAD_EGL(eglGetCurrentDisplay) - return egl_eglGetCurrentDisplay(); -} - -MG_EXPORT EGLBoolean eglQueryContext(EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value) { - LOAD_EGL(eglQueryContext) - return egl_eglQueryContext(dpy, ctx, attribute, value); -} - -MG_EXPORT EGLBoolean eglWaitGL(void) { - LOAD_EGL(eglWaitGL) - return egl_eglWaitGL(); -} - -MG_EXPORT EGLBoolean eglWaitNative(EGLint engine) { - LOAD_EGL(eglWaitNative) - return egl_eglWaitNative(engine); -} - -MG_EXPORT EGLBoolean eglSwapBuffers(EGLDisplay dpy, EGLSurface surface) { - LOAD_EGL(eglSwapBuffers) - return egl_eglSwapBuffers(dpy, surface); -} - -MG_EXPORT EGLBoolean eglCopyBuffers(EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target) { - LOAD_EGL(eglCopyBuffers) - return egl_eglCopyBuffers(dpy, surface, target); -} - -MG_EXPORT EGLDisplay eglGetPlatformDisplay(EGLenum platform, void *native_display, const EGLAttrib *attrib_list) { - LOAD_EGL(eglGetPlatformDisplay) - return egl_eglGetPlatformDisplay(platform, native_display, (const EGLint *)attrib_list); -} - -#endif \ No newline at end of file diff --git a/MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.h b/MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.h deleted file mode 100644 index 2348eadd..00000000 --- a/MG/MG_GL/Implementations/EGL/GLES/EGL_WRAP.h +++ /dev/null @@ -1,14 +0,0 @@ -// -// Created by BZLZHH on 2025/4/26. -// - -#ifndef MOBILEGL_EGL_GLES_EGL_WRAP_H -#define MOBILEGL_EGL_GLES_EGL_WRAP_H - -#if BACKEND_TYPE == BACKEND_GLES - - - -#endif - -#endif //MOBILEGL_EGL_GLES_EGL_WRAP_H diff --git a/MG/MG_GL/Implementations/EGL/VK/EGL_EMU.cpp b/MG/MG_GL/Implementations/EGL/VK/EGL_EMU.cpp deleted file mode 100644 index 1ead1a72..00000000 --- a/MG/MG_GL/Implementations/EGL/VK/EGL_EMU.cpp +++ /dev/null @@ -1,551 +0,0 @@ -// -// Created by BZLZHH on 2025/3/30. -// - -#include "../../../../Includes.h" - -#if BACKEND_TYPE == BACKEND_VULKAN - -std::atomic g_nextContextId{1}; -std::atomic g_nextSurfaceId{1}; -EGLenum g_currentAPI = EGL_OPENGL_ES_API; - -std::mutex g_globalMutex; -MG_Global::unordered_map g_displays; -MG_Global::unordered_map g_surfaces; -MG_Global::unordered_map g_contexts; -EGLint g_lastError = EGL_SUCCESS; - -thread_local EGLContext tls_currentContext = EGL_NO_CONTEXT; -thread_local EGLSurface tls_drawSurface = EGL_NO_SURFACE; -thread_local EGLSurface tls_readSurface = EGL_NO_SURFACE; - -static VkResult CreateRenderPass(VulkanDisplay& display, VulkanContext& ctx) { - VkAttachmentDescription colorAttachment{}; - colorAttachment.format = VK_FORMAT_B8G8R8A8_SRGB; - colorAttachment.samples = VK_SAMPLE_COUNT_1_BIT; - colorAttachment.loadOp = VK_ATTACHMENT_LOAD_OP_CLEAR; - colorAttachment.storeOp = VK_ATTACHMENT_STORE_OP_STORE; - colorAttachment.stencilLoadOp = VK_ATTACHMENT_LOAD_OP_DONT_CARE; - colorAttachment.stencilStoreOp = VK_ATTACHMENT_STORE_OP_DONT_CARE; - colorAttachment.initialLayout = VK_IMAGE_LAYOUT_UNDEFINED; - colorAttachment.finalLayout = VK_IMAGE_LAYOUT_PRESENT_SRC_KHR; - - VkAttachmentReference colorRef{0, VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL}; - - VkSubpassDescription subpass{}; - subpass.pipelineBindPoint = VK_PIPELINE_BIND_POINT_GRAPHICS; - subpass.colorAttachmentCount = 1; - subpass.pColorAttachments = &colorRef; - - VkRenderPassCreateInfo rpInfo{}; - rpInfo.sType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO; - rpInfo.subpassCount = 1; - rpInfo.pSubpasses = &subpass; - rpInfo.attachmentCount = 1; - rpInfo.pAttachments = &colorAttachment; - - return vkCreateRenderPass(display.device, &rpInfo, nullptr, &ctx.renderPass); -} - -EGLDisplay eglGetDisplay(NativeDisplayType display) { - std::lock_guard lock(g_globalMutex); - static uintptr_t nextDisplayId = 1; - EGLDisplay newDisplay = (EGLDisplay)nextDisplayId++; - g_displays[newDisplay].initialized = false; - return newDisplay; -} - -EGLBoolean eglInitialize(EGLDisplay dpy, EGLint* major, EGLint* minor) { - VulkanDisplay& vkDpy = g_displays[dpy]; - if (vkDpy.initialized) return EGL_TRUE; - - VkInstanceCreateInfo instInfo{}; - instInfo.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO; - const char* extensions[] = { - VK_KHR_SURFACE_EXTENSION_NAME, - VK_KHR_ANDROID_SURFACE_EXTENSION_NAME - }; - instInfo.enabledExtensionCount = 2; - instInfo.ppEnabledExtensionNames = extensions; - - if (vkCreateInstance(&instInfo, nullptr, &vkDpy.instance) != VK_SUCCESS) { - g_lastError = EGL_NOT_INITIALIZED; - return EGL_FALSE; - } - - uint32_t devCount = 0; - vkEnumeratePhysicalDevices(vkDpy.instance, &devCount, nullptr); - std::vector devices(devCount); - vkEnumeratePhysicalDevices(vkDpy.instance, &devCount, devices.data()); - vkDpy.physicalDevice = devices[0]; - - - uint32_t queueFamilyCount = 0; - vkGetPhysicalDeviceQueueFamilyProperties(vkDpy.physicalDevice, &queueFamilyCount, nullptr); - std::vector queueFamilies(queueFamilyCount); - vkGetPhysicalDeviceQueueFamilyProperties(vkDpy.physicalDevice, &queueFamilyCount, queueFamilies.data()); - - // 寻找支æŒå›¾å½¢å’Œå‘ˆçŽ°çš„é˜Ÿåˆ—å®¶æ— - bool foundQueue = false; - for (uint32_t i = 0; i < queueFamilyCount; ++i) { - VkBool32 presentSupport = VK_FALSE; - vkGetPhysicalDeviceSurfaceSupportKHR(vkDpy.physicalDevice, i, VK_NULL_HANDLE, &presentSupport); - - if ((queueFamilies[i].queueFlags & VK_QUEUE_GRAPHICS_BIT) && presentSupport) { - vkDpy.graphicsQueueFamily = i; - foundQueue = true; - break; - } - } - - if (!foundQueue) { - g_lastError = EGL_NOT_INITIALIZED; - return EGL_FALSE; - } - - // 创建逻辑设备时请求队列 - float queuePriority = 1.0f; - VkDeviceQueueCreateInfo queueInfo{}; - queueInfo.sType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO; - queueInfo.queueFamilyIndex = vkDpy.graphicsQueueFamily; - queueInfo.queueCount = 1; - queueInfo.pQueuePriorities = &queuePriority; - - const char* devExtensions[] = {VK_KHR_SWAPCHAIN_EXTENSION_NAME}; - VkDeviceCreateInfo devInfo{}; - devInfo.sType = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO; - devInfo.pQueueCreateInfos = &queueInfo; - devInfo.queueCreateInfoCount = 1; - devInfo.ppEnabledExtensionNames = devExtensions; - devInfo.enabledExtensionCount = 1; - - if (vkCreateDevice(vkDpy.physicalDevice, &devInfo, nullptr, &vkDpy.device) != VK_SUCCESS) { - g_lastError = EGL_NOT_INITIALIZED; - return EGL_FALSE; - } - - vkDpy.vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)vkGetDeviceProcAddr(vkDpy.device, "vkCreateSwapchainKHR"); - vkDpy.vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)vkGetDeviceProcAddr(vkDpy.device, "vkDestroySwapchainKHR"); - vkDpy.vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)vkGetDeviceProcAddr(vkDpy.device, "vkGetSwapchainImagesKHR"); - vkDpy.vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)vkGetDeviceProcAddr(vkDpy.device, "vkAcquireNextImageKHR"); - vkDpy.vkQueuePresentKHR = (PFN_vkQueuePresentKHR)vkGetDeviceProcAddr(vkDpy.device, "vkQueuePresentKHR"); - vkGetDeviceQueue(vkDpy.device, vkDpy.graphicsQueueFamily, 0, &vkDpy.graphicsQueue); - vkDpy.presentQueue = vkDpy.graphicsQueue; - vkDpy.initialized = true; - if (major) *major = 1; - if (minor) *minor = 5; - return EGL_TRUE; -} - -EGLBoolean eglChooseConfig(EGLDisplay dpy, const EGLint* attrib_list, EGLConfig* configs, EGLint config_size, EGLint* num_config) { - VulkanDisplay& vkDpy = g_displays[dpy]; - EGLInternalConfig defaultConfig{ VK_FORMAT_B8G8R8A8_SRGB, VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, 1 }; - vkDpy.configs = {defaultConfig}; - - EGLint returnCount = 1; - if (configs && config_size > 0) { - configs[0] = (EGLConfig)0; - } - - if (num_config) *num_config = returnCount; - return EGL_TRUE; -} - -EGLSurface eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, NativeWindowType window, const EGLint* attrib_list) { - VulkanDisplay& disp = g_displays[dpy]; - static uintptr_t nextSurfId = 1; - - ANativeWindow* nativeWindow = static_cast(window); - if (!nativeWindow || ANativeWindow_getWidth(nativeWindow) <= 0 || ANativeWindow_getHeight(nativeWindow) <= 0) { - g_lastError = EGL_BAD_NATIVE_WINDOW; - return EGL_NO_SURFACE; - } - - auto vkCreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)vkGetInstanceProcAddr( - disp.instance, "vkCreateAndroidSurfaceKHR"); - if (!vkCreateAndroidSurfaceKHR) { - g_lastError = EGL_BAD_ALLOC; - return EGL_NO_SURFACE; - } - - VulkanSurface surface{}; - surface.type = VulkanSurface::WINDOW; - - VkAndroidSurfaceCreateInfoKHR createInfo{}; - createInfo.sType = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR; - createInfo.window = nativeWindow; - VkResult result = vkCreateAndroidSurfaceKHR(disp.instance, &createInfo, nullptr, &surface.surface); - if (result != VK_SUCCESS) { - g_lastError = (result == VK_ERROR_NATIVE_WINDOW_IN_USE_KHR) ? - EGL_BAD_NATIVE_WINDOW : EGL_BAD_ALLOC; - return EGL_NO_SURFACE; - } - - VkBool32 supported = VK_FALSE; - vkGetPhysicalDeviceSurfaceSupportKHR(disp.physicalDevice, - disp.graphicsQueueFamily, - surface.surface, - &supported); - if (!supported) { - vkDestroySurfaceKHR(disp.instance, surface.surface, nullptr); - g_lastError = EGL_BAD_MATCH; - return EGL_NO_SURFACE; - } - - VkSurfaceCapabilitiesKHR caps; - vkGetPhysicalDeviceSurfaceCapabilitiesKHR(disp.physicalDevice, surface.surface, &caps); - - const VkExtent2D swapchainExtent = { - (std::max)(caps.minImageExtent.width, (uint32_t)ANativeWindow_getWidth(nativeWindow)), - (std::max)(caps.minImageExtent.height, (uint32_t)ANativeWindow_getHeight(nativeWindow)) - }; - - VkSwapchainCreateInfoKHR swapInfo{}; - swapInfo.sType = VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR; - swapInfo.surface = surface.surface; - swapInfo.minImageCount = 3; - swapInfo.imageFormat = VK_FORMAT_R8G8B8A8_SRGB; - swapInfo.imageColorSpace = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR; - swapInfo.imageExtent = swapchainExtent; - swapInfo.imageArrayLayers = 1; - swapInfo.imageUsage = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT; - swapInfo.preTransform = caps.currentTransform; - swapInfo.compositeAlpha = VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR; - swapInfo.presentMode = VK_PRESENT_MODE_MAILBOX_KHR; - - if (disp.vkCreateSwapchainKHR(disp.device, &swapInfo, nullptr, &surface.swapchain) != VK_SUCCESS) { - vkDestroySurfaceKHR(disp.instance, surface.surface, nullptr); - g_lastError = EGL_BAD_ALLOC; - return EGL_NO_SURFACE; - } - - uint32_t imageCount = 0; - disp.vkGetSwapchainImagesKHR(disp.device, surface.swapchain, &imageCount, nullptr); - surface.images.resize(imageCount); - disp.vkGetSwapchainImagesKHR(disp.device, surface.swapchain, &imageCount, surface.images.data()); - - surface.imageViews.resize(imageCount); - for (uint32_t i = 0; i < imageCount; ++i) { - VkImageViewCreateInfo viewInfo{}; - viewInfo.sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO; - viewInfo.image = surface.images[i]; - viewInfo.viewType = VK_IMAGE_VIEW_TYPE_2D; - viewInfo.format = swapInfo.imageFormat; - viewInfo.subresourceRange = {VK_IMAGE_ASPECT_COLOR_BIT, 0, 1, 0, 1}; - - if (vkCreateImageView(disp.device, &viewInfo, nullptr, &surface.imageViews[i]) != VK_SUCCESS) { - // Handle error - } - } - - ANativeWindow_acquire(nativeWindow); - ANativeWindow_setBuffersGeometry(nativeWindow, - swapchainExtent.width, - swapchainExtent.height, - AHARDWAREBUFFER_FORMAT_R8G8B8A8_UNORM); - EGLSurface surfId = (EGLSurface)nextSurfId++; - g_surfaces[surfId] = std::move(surface); - return surfId; -} - -EGLContext eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext shareCtx, const EGLint* attrib_list) { - static uintptr_t nextCtxId = 1; - VulkanDisplay &disp = g_displays[dpy]; - - VulkanContext ctx{}; - VkCommandPoolCreateInfo poolInfo{}; - poolInfo.sType = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO; - poolInfo.queueFamilyIndex = 0; - if (vkCreateCommandPool(disp.device, &poolInfo, nullptr, &ctx.cmdPool) != VK_SUCCESS) { - g_lastError = EGL_BAD_ALLOC; - return EGL_NO_CONTEXT; - } - - ctx.frameFences.resize(2); - ctx.acquireSemaphores.resize(2); - ctx.presentSemaphores.resize(2); - for (uint32_t i = 0; i < 2; ++i) { - VkFenceCreateInfo fenceInfo{VK_STRUCTURE_TYPE_FENCE_CREATE_INFO, nullptr, - VK_FENCE_CREATE_SIGNALED_BIT}; - vkCreateFence(disp.device, &fenceInfo, nullptr, &ctx.frameFences[i]); - - VkSemaphoreCreateInfo semInfo{VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO}; - vkCreateSemaphore(disp.device, &semInfo, nullptr, &ctx.acquireSemaphores[i]); - vkCreateSemaphore(disp.device, &semInfo, nullptr, &ctx.presentSemaphores[i]); - } - - if (CreateRenderPass(disp, ctx) != VK_SUCCESS) { - g_lastError = EGL_BAD_CONFIG; - return EGL_NO_CONTEXT; - } - - EGLContext ctxId = (EGLContext)nextCtxId++; - g_contexts[ctxId] = std::move(ctx); - return ctxId; -} - -EGLint eglGetError() { - return EGL_SUCCESS; -} - -EGLBoolean eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx) { - std::lock_guard lock(g_globalMutex); - - if (dpy == EGL_NO_DISPLAY || (ctx != EGL_NO_CONTEXT && !g_contexts.count(ctx)) || - (draw != EGL_NO_SURFACE && !g_surfaces.count(draw)) || - (read != EGL_NO_SURFACE && !g_surfaces.count(read))) { - g_lastError = EGL_BAD_PARAMETER; - return EGL_FALSE; - } - - if (tls_currentContext != EGL_NO_CONTEXT) { - VulkanContext& oldCtx = g_contexts[tls_currentContext]; - if (oldCtx.currentCmdBuffer) { - vkEndCommandBuffer(oldCtx.currentCmdBuffer); - oldCtx.currentCmdBuffer = VK_NULL_HANDLE; - } - } - - if (ctx != EGL_NO_CONTEXT) { - VulkanContext& newCtx = g_contexts[ctx]; - VulkanDisplay& disp = g_displays[dpy]; - - VkCommandBufferAllocateInfo allocInfo{}; - allocInfo.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO; - allocInfo.commandPool = newCtx.cmdPool; - allocInfo.level = VK_COMMAND_BUFFER_LEVEL_PRIMARY; - allocInfo.commandBufferCount = 1; - - if (vkAllocateCommandBuffers(disp.device, &allocInfo, &newCtx.currentCmdBuffer) != VK_SUCCESS) { - g_lastError = EGL_BAD_ALLOC; - return EGL_FALSE; - } - - VkCommandBufferBeginInfo beginInfo{}; - beginInfo.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO; - vkBeginCommandBuffer(newCtx.currentCmdBuffer, &beginInfo); - } - - tls_currentContext = ctx; - tls_drawSurface = draw; - tls_readSurface = read; - return EGL_TRUE; -} - -EGLBoolean eglDestroyContext(EGLDisplay dpy, EGLContext ctx) { - std::lock_guard lock(g_globalMutex); - - if (!g_contexts.count(ctx)) { - g_lastError = EGL_BAD_CONTEXT; - return EGL_FALSE; - } - - VulkanContext& vkCtx = g_contexts[ctx]; - VulkanDisplay& disp = g_displays[dpy]; - - vkDeviceWaitIdle(disp.device); - - vkDestroyCommandPool(disp.device, vkCtx.cmdPool, nullptr); - vkDestroyRenderPass(disp.device, vkCtx.renderPass, nullptr); - - for (auto& fence : vkCtx.frameFences) - vkDestroyFence(disp.device, fence, nullptr); - for (auto& sem : vkCtx.acquireSemaphores) - vkDestroySemaphore(disp.device, sem, nullptr); - for (auto& sem : vkCtx.presentSemaphores) - vkDestroySemaphore(disp.device, sem, nullptr); - - g_contexts.erase(ctx); - if (tls_currentContext == ctx) - tls_currentContext = EGL_NO_CONTEXT; - - return EGL_TRUE; -} - -EGLBoolean eglDestroySurface(EGLDisplay dpy, EGLSurface surface) { - std::lock_guard lock(g_globalMutex); - - if (!g_surfaces.count(surface)) { - g_lastError = EGL_BAD_SURFACE; - return EGL_FALSE; - } - - VulkanSurface& surf = g_surfaces[surface]; - VulkanDisplay& disp = g_displays[dpy]; - - vkDeviceWaitIdle(disp.device); - - if (surf.type == VulkanSurface::WINDOW) { - disp.vkDestroySwapchainKHR(disp.device, surf.swapchain, nullptr); - vkDestroySurfaceKHR(disp.instance, surf.surface, nullptr); - for (auto& view : surf.imageViews) - vkDestroyImageView(disp.device, view, nullptr); - } else { - vkDestroyImageView(disp.device, surf.pbufferImageView, nullptr); - vkDestroyImage(disp.device, surf.pbufferImage, nullptr); - } - - g_surfaces.erase(surface); - return EGL_TRUE; -} - -EGLBoolean eglTerminate(EGLDisplay dpy) { - std::lock_guard lock(g_globalMutex); - - if (!g_displays.count(dpy)) { - g_lastError = EGL_BAD_DISPLAY; - return EGL_FALSE; - } - - VulkanDisplay& disp = g_displays[dpy]; - - for (auto& [ctxId, ctx] : g_contexts) - eglDestroyContext(dpy, ctxId); - for (auto& [surfId, surf] : g_surfaces) - eglDestroySurface(dpy, surfId); - - vkDestroyDevice(disp.device, nullptr); - vkDestroyInstance(disp.instance, nullptr); - - g_displays.erase(dpy); - return EGL_TRUE; -} - -EGLBoolean eglReleaseThread(void) { - tls_currentContext = EGL_NO_CONTEXT; - tls_drawSurface = EGL_NO_SURFACE; - tls_readSurface = EGL_NO_SURFACE; - return EGL_TRUE; -} - -EGLContext eglGetCurrentContext(void) { - return tls_currentContext; -} - -EGLBoolean eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value) { - VulkanDisplay& disp = g_displays[dpy]; - if (!disp.configs.empty() && config == (EGLConfig)0) { - switch (attribute) { - case EGL_BUFFER_SIZE: *value = 32; break; - case EGL_RED_SIZE: *value = 8; break; - case EGL_GREEN_SIZE: *value = 8; break; - case EGL_BLUE_SIZE: *value = 8; break; - case EGL_ALPHA_SIZE: *value = 8; break; - case EGL_CONFIG_ID: *value = 1; break; - default: return EGL_FALSE; - } - return EGL_TRUE; - } - return EGL_FALSE; -} - -EGLBoolean eglBindAPI(EGLenum api) { - if (api == EGL_OPENGL_ES_API) { - g_currentAPI = api; - return EGL_TRUE; - } - return EGL_FALSE; -} - -EGLSurface eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list) { - VulkanDisplay& disp = g_displays[dpy]; - VulkanSurface surface{}; - surface.type = VulkanSurface::PBUFFER; - - VkImageCreateInfo imgInfo{}; - imgInfo.sType = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO; - imgInfo.imageType = VK_IMAGE_TYPE_2D; - imgInfo.format = VK_FORMAT_R8G8B8A8_SRGB; - imgInfo.extent = {512, 512, 1}; - imgInfo.mipLevels = 1; - imgInfo.arrayLayers = 1; - imgInfo.samples = VK_SAMPLE_COUNT_1_BIT; - imgInfo.tiling = VK_IMAGE_TILING_OPTIMAL; - imgInfo.usage = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT; - imgInfo.initialLayout = VK_IMAGE_LAYOUT_UNDEFINED; - - if (vkCreateImage(disp.device, &imgInfo, nullptr, &surface.pbufferImage) != VK_SUCCESS) { - g_lastError = EGL_BAD_ALLOC; - return EGL_NO_SURFACE; - } - - VkImageViewCreateInfo viewInfo{}; - viewInfo.sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO; - viewInfo.image = surface.pbufferImage; - viewInfo.viewType = VK_IMAGE_VIEW_TYPE_2D; - viewInfo.format = imgInfo.format; - viewInfo.subresourceRange = {VK_IMAGE_ASPECT_COLOR_BIT, 0, 1, 0, 1}; - - if (vkCreateImageView(disp.device, &viewInfo, nullptr, &surface.pbufferImageView) != VK_SUCCESS) { - vkDestroyImage(disp.device, surface.pbufferImage, nullptr); - g_lastError = EGL_BAD_ALLOC; - return EGL_NO_SURFACE; - } - - EGLSurface surfId = (EGLSurface)g_nextSurfaceId++; - g_surfaces[surfId] = surface; - return surfId; -} - -EGLBoolean eglSwapBuffers(EGLDisplay dpy, EGLSurface draw) { - VulkanSurface& surf = g_surfaces[draw]; - VulkanDisplay& disp = g_displays[dpy]; - VulkanContext& ctx = g_contexts[tls_currentContext]; - - if (!disp.presentQueue) { - g_lastError = EGL_BAD_DISPLAY; - return EGL_FALSE; - } - - if (surf.type != VulkanSurface::WINDOW) { - g_lastError = EGL_BAD_SURFACE; - return EGL_FALSE; - } - - vkEndCommandBuffer(ctx.currentCmdBuffer); - - VkSubmitInfo submitInfo{}; - submitInfo.sType = VK_STRUCTURE_TYPE_SUBMIT_INFO; - submitInfo.commandBufferCount = 1; - submitInfo.pCommandBuffers = &ctx.currentCmdBuffer; - - vkQueueSubmit(disp.graphicsQueue, 1, &submitInfo, VK_NULL_HANDLE); - - VkPresentInfoKHR presentInfo{}; - presentInfo.sType = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR; - presentInfo.swapchainCount = 1; - presentInfo.pSwapchains = &surf.swapchain; - presentInfo.pImageIndices = &ctx.frameIndex; - - VkResult result = disp.vkQueuePresentKHR(disp.presentQueue, &presentInfo); - if (result != VK_SUCCESS) { - g_lastError = EGL_BAD_ALLOC; - return EGL_FALSE; - } - - ctx.frameIndex = (ctx.frameIndex + 1) % surf.images.size(); - return EGL_TRUE; -} - -EGLBoolean eglSwapInterval(EGLDisplay dpy, EGLint interval) { - // TODO - return EGL_TRUE; -} - -EGLSurface eglGetCurrentSurface(EGLint readdraw) { - return (readdraw == EGL_READ) ? tls_readSurface : tls_drawSurface; -} - -EGLBoolean eglQuerySurface(EGLDisplay display, EGLSurface surface, EGLint attribute, EGLint *value) { - VulkanSurface& surf = g_surfaces[surface]; - switch (attribute) { - case EGL_WIDTH: *value = surf.extent.width; break; - case EGL_HEIGHT: *value = surf.extent.height; break; - case EGL_CONFIG_ID: *value = 1; break; - default: return EGL_FALSE; - } - return EGL_TRUE; -} - -#endif \ No newline at end of file diff --git a/MG/MG_GL/Implementations/EGL/VK/EGL_EMU.h b/MG/MG_GL/Implementations/EGL/VK/EGL_EMU.h deleted file mode 100644 index de0dc7db..00000000 --- a/MG/MG_GL/Implementations/EGL/VK/EGL_EMU.h +++ /dev/null @@ -1,101 +0,0 @@ -// -// Created by BZLZHH on 2025/3/30. -// - -#ifndef MOBILEGL_EGL_VK_EMU_H -#define MOBILEGL_EGL_VK_EMU_H - -#if BACKEND_TYPE == BACKEND_VULKAN - -struct EGLInternalConfig { - VkFormat format; - VkColorSpaceKHR colorSpace; - uint32_t samples; -}; - -struct VulkanDisplay { - VkInstance instance; - VkPhysicalDevice physicalDevice; - VkDevice device; - uint32_t graphicsQueueFamily; - VkQueue graphicsQueue; - std::vector configs; - bool initialized = false; - PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; - PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; - PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; - PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; - PFN_vkQueuePresentKHR vkQueuePresentKHR; - VkRenderPass defaultRenderPass; - VkQueue presentQueue = VK_NULL_HANDLE; -}; - -struct VulkanSurface { - enum Type { WINDOW, PBUFFER } type; - VkSurfaceKHR surface; - VkSwapchainKHR swapchain; - std::vector images; - std::vector imageViews; - VkExtent2D extent; - VkFormat format; - VkImage pbImage; - VkImageView pbImageView; - VkDeviceMemory pbMemory; - VkFramebuffer framebuffer; - VkImage pbufferImage; - VkImageView pbufferImageView; -}; - -struct VulkanContext { - VkCommandPool cmdPool; - std::vector cmdBuffers; - uint32_t currentFrame = 0; - VkRenderPass renderPass; - VkPipelineLayout pipelineLayout; - VkPipeline graphicsPipeline; - std::vector frameFences; - std::vector acquireSemaphores; - std::vector presentSemaphores; - VulkanSurface* boundSurface = nullptr; - VkCommandBuffer currentCmdBuffer; - uint32_t frameIndex; - VkClearColorValue clearColor; -}; - -extern std::atomic g_nextContextId; -extern std::atomic g_nextSurfaceId; -extern EGLenum g_currentAPI; - -extern std::mutex g_globalMutex; -extern MG_Global::unordered_map g_displays; -extern MG_Global::unordered_map g_surfaces; -extern MG_Global::unordered_map g_contexts; -extern EGLint g_lastError; - -extern thread_local EGLContext tls_currentContext; -extern thread_local EGLSurface tls_drawSurface; -extern thread_local EGLSurface tls_readSurface; - -MG_EXPORT EGLSurface eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, NativeWindowType window, const EGLint* attrib_list); -MG_EXPORT EGLBoolean eglChooseConfig(EGLDisplay dpy, const EGLint* attrib_list, EGLConfig* configs, EGLint config_size, EGLint* num_config); -MG_EXPORT EGLContext eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext shareCtx, const EGLint* attrib_list); -MG_EXPORT EGLBoolean eglInitialize(EGLDisplay dpy, EGLint* major, EGLint* minor); -MG_EXPORT EGLDisplay eglGetDisplay(NativeDisplayType display); -MG_EXPORT EGLint eglGetError(); -MG_EXPORT EGLBoolean eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx); -MG_EXPORT EGLBoolean eglDestroyContext(EGLDisplay dpy, EGLContext ctx); -MG_EXPORT EGLBoolean eglDestroySurface(EGLDisplay dpy, EGLSurface surface); -MG_EXPORT EGLBoolean eglTerminate(EGLDisplay dpy); -MG_EXPORT EGLBoolean eglReleaseThread(void); -MG_EXPORT EGLContext eglGetCurrentContext(void); -MG_EXPORT EGLBoolean eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value); -MG_EXPORT EGLBoolean eglBindAPI(EGLenum api); -MG_EXPORT EGLSurface eglGetCurrentSurface(EGLint readdraw); -MG_EXPORT EGLBoolean eglQuerySurface(EGLDisplay display, EGLSurface surface, EGLint attribute, EGLint *value); -MG_EXPORT EGLBoolean eglSwapInterval(EGLDisplay dpy, EGLint interval); -MG_EXPORT EGLBoolean eglSwapBuffers(EGLDisplay dpy, EGLSurface draw); -MG_EXPORT EGLSurface eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list); - -#endif - -#endif //MOBILEGL_EGL_VK_EMU_H diff --git a/MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.cpp b/MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.cpp deleted file mode 100644 index 8b49bf9b..00000000 --- a/MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.cpp +++ /dev/null @@ -1,379 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - Diligent::VALUE_TYPE ConvertGLIndexTypeToDiligent(GLenum type) { - switch (type) { - case GL_UNSIGNED_BYTE: return Diligent::VT_UINT8; - case GL_UNSIGNED_SHORT: return Diligent::VT_UINT16; - case GL_UNSIGNED_INT: return Diligent::VT_UINT32; - default: return Diligent::VT_UNDEFINED; - } - } - - void* MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, - GLbitfield access) { - MG_Util::Debug::LogD("glMapBufferRange, target: %s, offset: %lld, length: %lld, access: 0x%X", - MG_Util::Debug::GLEnumToString(target), - static_cast(offset), - static_cast(length), - access); - void* mappedPointer = nullptr; - GLenum result = MG_State::AcquireBufferMemoryRange(target, offset, length, access, &mappedPointer); - - if (result == GL_NO_ERROR) { - MG_Util::Debug::LogD("Mapped pointer: %p", mappedPointer); - return mappedPointer; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error mapping buffer range: %s", MG_Util::Debug::GLEnumToString(result)); - return nullptr; - } - - void FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) { - MG_Util::Debug::LogD("glFlushMappedBufferRange, target: %s, offset: %lld, length: %lld", - MG_Util::Debug::GLEnumToString(target), - static_cast(offset), - static_cast(length)); - GLenum result = MG_State::SyncBufferMemory(target, offset, length); - if (result == GL_NO_ERROR) { - GLuint buffer = MG_State_T::bufferState->GetCurrentBinding(target); - if (buffer == 0) return; - - auto& bufferObj = *MG_State_T::bufferState->GetBufferObject(buffer); - if (!bufferObj.isMapped) return; - - size_t start = static_cast(offset); - size_t end = start + static_cast(length); - - auto it = MG_Diligent::g_BufferMap.find(buffer); - if (it == MG_Diligent::g_BufferMap.end()) - return; - Diligent::IBuffer* pBuffer = it->second; - if (pBuffer && bufferObj.data.size() >= end) { - const auto& Desc = pBuffer->GetDesc(); - if (Desc.Usage == Diligent::USAGE_STAGING || Desc.Usage == Diligent::USAGE_DYNAMIC || Desc.Usage == Diligent::USAGE_UNIFIED) { - void * data; - MG_Diligent::g_pContext->MapBuffer(pBuffer, Diligent::MAP_WRITE, - Diligent::MAP_FLAG_DISCARD, data); - - if (data) { - void* dst = static_cast(data) + offset; - const void* src = bufferObj.data.data() + offset; - memcpy(dst, src, length); - - MG_Diligent::g_pContext->UnmapBuffer(pBuffer, Diligent::MAP_WRITE); - } - } else { - // For USAGE_DEFAULT or USAGE_IMMUTABLE, use UpdateBuffer - MG_Diligent::g_pContext->UpdateBuffer(pBuffer, static_cast(offset), static_cast(length), bufferObj.data.data() + offset, Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - } - } - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error flushing mapped buffer range: %s", - MG_Util::Debug::GLEnumToString(result)); - } - - void CopyBufferSubData(GLenum readTarget, GLenum writeTarget, - GLintptr readOffset, GLintptr writeOffset, - GLsizeiptr size) { - MG_Util::Debug::LogD("glCopyBufferSubData, readTarget: %s, writeTarget: %s, " - "readOffset: %lld, writeOffset: %lld, size: %lld", - MG_Util::Debug::GLEnumToString(readTarget), - MG_Util::Debug::GLEnumToString(writeTarget), - static_cast(readOffset), - static_cast(writeOffset), - static_cast(size)); - GLenum result = MG_State::CopyBufferRange(readTarget, writeTarget, readOffset, writeOffset, size); - if (result == GL_NO_ERROR) { - GLuint srcBuffer = MG_State_T::bufferState->GetCurrentBinding(readTarget); - GLuint dstBuffer = MG_State_T::bufferState->GetCurrentBinding(writeTarget); - - if (srcBuffer == 0 || dstBuffer == 0) return; - auto itsrc = MG_Diligent::g_BufferMap.find(srcBuffer); - auto itdst = MG_Diligent::g_BufferMap.find(dstBuffer); - if (itsrc == MG_Diligent::g_BufferMap.end() || itdst == MG_Diligent::g_BufferMap.end()) return; - - Diligent::IBuffer* pSrcBuffer = itsrc->second; - Diligent::IBuffer* pDstBuffer = itdst->second; - - if (pSrcBuffer && pDstBuffer) { - MG_Diligent::g_pContext->CopyBuffer(pSrcBuffer, static_cast(readOffset), - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION, - pDstBuffer, static_cast(writeOffset), - static_cast(size), - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - } - - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error copying buffer subdata: %s", - MG_Util::Debug::GLEnumToString(result)); - } - - void* MapBuffer(GLenum target, GLenum access) { - MG_Util::Debug::LogD("glMapBuffer(target=0x%x, access=0x%x)", target, access); - void* mappedPtr = nullptr; - GLenum err = MG_State::AcquireBufferMemory(target, access, &mappedPtr); - if (err != GL_NO_ERROR) { - MG_State::SetError(err); - MG_Util::Debug::LogE("glMapBuffer failed: %s", MG_Util::Debug::GLEnumToString(err)); - return nullptr; - } - MG_Util::Debug::LogD("glMapBuffer returns %p", mappedPtr); - return mappedPtr; - } - - GLboolean UnmapBuffer(GLenum target) { - MG_Util::Debug::LogD("glUnmapBuffer(target=0x%x)", target); - GLenum err = MG_State::ReleaseBufferMemory(target); - if (err != GL_NO_ERROR) { - MG_State::SetError(err); - MG_Util::Debug::LogE("glUnmapBuffer failed: %s", MG_Util::Debug::GLEnumToString(err)); - return GL_FALSE; - } - - GLuint buffer = MG_State_T::bufferState->currentBindings_[target]; - auto& bufferObj = *MG_State_T::bufferState->GetBufferObject(buffer); - - auto it = MG_Diligent::g_BufferMap.find(buffer); - if (it == MG_Diligent::g_BufferMap.end()) - return GL_FALSE; - Diligent::IBuffer* pBuffer = it->second; - if (pBuffer) { - const auto& Desc = pBuffer->GetDesc(); - if (Desc.Usage == Diligent::USAGE_STAGING || Desc.Usage == Diligent::USAGE_DYNAMIC || Desc.Usage == Diligent::USAGE_UNIFIED) { - void * data; - MG_Diligent::g_pContext->MapBuffer(pBuffer, Diligent::MAP_WRITE, - Diligent::MAP_FLAG_DISCARD, data); - - if (data) { - memcpy(data, bufferObj.data.data(), bufferObj.data.size()); - MG_Diligent::g_pContext->UnmapBuffer(pBuffer, Diligent::MAP_WRITE); - } - } else { - // For USAGE_DEFAULT or USAGE_IMMUTABLE, use UpdateBuffer - MG_Diligent::g_pContext->UpdateBuffer(pBuffer, 0, bufferObj.data.size(), bufferObj.data.data(), Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - } - } - - MG_Util::Debug::LogD("glUnmapBuffer succeeded"); - return GL_TRUE; - } - - void BindBuffer(GLenum target, GLuint buffer) { - MG_Util::Debug::LogD("glBindBuffer, target: %s, buffer: %d", MG_Util::Debug::GLEnumToString(target), buffer); - if (buffer != 0 && - MG_State::ValidateGeneratedName(buffer) && - !MG_State::ValidateAllocatedBufferHandle(buffer)) { - MG_Util::Debug::LogD("Actually creating buffer: %u", buffer); - GLenum result = MG_State::CreateBuffer(buffer); - if (result != GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - return; - } - } - - if (buffer != 0 && !MG_State::ValidateAllocatedBufferHandle(buffer)) { - MG_State::SetError(GL_INVALID_VALUE); - MG_Util::Debug::LogE("Invalid buffer handle: %u", buffer); - return; - } - GLenum result = MG_State::BindBuffer(target, buffer); - if (result == GL_NO_ERROR) - return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void BufferData(GLenum target, GLsizeiptr size, const void* data, GLenum usage) { - MG_Util::Debug::LogD("glBufferData, target: %s, size: %zd, data: %p, usage: %s", - MG_Util::Debug::GLEnumToString(target), size, data, MG_Util::Debug::GLEnumToString(usage)); - GLenum result = MG_State::CommitBufferStorage(target, size, data, usage); - if (result == GL_NO_ERROR) { - GLuint buffer = MG_State_T::bufferState->GetCurrentBinding(target); - if (buffer == 0) return; - auto& bufferObj = *MG_State_T::bufferState->GetBufferObject(buffer); - if (bufferObj.isDynamic) return; // Dynamic buffer should be created by glDraw* - if (size <= 0) return; // ignore 0-sized reallocation - - bufferObj.dirty = false; - - auto it = MG_Diligent::g_BufferMap.find(buffer); - if (it == MG_Diligent::g_BufferMap.end()) - return; - - Diligent::IBuffer*& pBuffer = it->second; - - Diligent::BufferDesc BuffDesc; - std::string name; - BuffDesc.Size = static_cast(size); - - switch (target) { - case GL_ARRAY_BUFFER: -// BuffDesc.BindFlags = Diligent::BIND_VERTEX_BUFFER; - name += std::format("VBO {}", buffer); - break; - case GL_ELEMENT_ARRAY_BUFFER: -// BuffDesc.BindFlags = Diligent::BIND_INDEX_BUFFER; - name += std::format("IBO {}", buffer); - break; - case GL_UNIFORM_BUFFER: -// BuffDesc.BindFlags = Diligent::BIND_UNIFORM_BUFFER; - name += std::format("UBO {}", buffer); - break; - default: - BuffDesc.BindFlags = Diligent::BIND_SHADER_RESOURCE; - name += std::format("SRV {}", buffer); - break; - } - - BuffDesc.BindFlags |= Diligent::BIND_VERTEX_BUFFER | - Diligent::BIND_INDEX_BUFFER | - Diligent::BIND_UNIFORM_BUFFER; - BuffDesc.Name = name.c_str(); - BuffDesc.Usage = Diligent::USAGE_DEFAULT; - - if (!pBuffer || (pBuffer && pBuffer->GetDesc().Size != bufferObj.data.size()) ) { - if (pBuffer) { - pBuffer->Release(); - pBuffer = nullptr; - } - Diligent::BufferData BuffData; - // Initial data must not be null for immutable buffers - BuffData.pData = BuffDesc.Usage != Diligent::USAGE_IMMUTABLE ? nullptr : bufferObj.data.data(); - BuffData.DataSize = static_cast(size); - MG_Diligent::g_pDevice->CreateBuffer(BuffDesc, &BuffData, &pBuffer); - } - - if (data != nullptr && BuffDesc.Usage != Diligent::USAGE_IMMUTABLE) { - MG_Diligent::g_pContext->UpdateBuffer(pBuffer, 0, - static_cast(size), data, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - } - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void GetBufferParameteriv(GLenum target, GLenum pname, GLint* params) { - MG_Util::Debug::LogD("glGetBufferParameteriv, target: %d, pname: %d, params: %p", - target, pname, params); - GLenum result = MG_State::QueryBufferPropertyIntVector(target, pname, params); - if (result == GL_NO_ERROR) - return; - MG_State::SetError(result); - MG_Util::Debug::LogE("GetBufferParameteriv not implemented"); - } - - void GenBuffers(GLsizei n, GLuint* buffers) { - MG_Util::Debug::LogD("glGenBuffers, n: %d, buffers: %p", n, buffers); - - if (n < 0) { - MG_State::SetError(GL_INVALID_VALUE); - MG_Util::Debug::LogE("Invalid buffer count: %d", n); - return; - } - - GLenum result = MG_State::GenBufferNames(n, buffers); - if (result == GL_NO_ERROR) { - MG_Util::Debug::LogD("Generated buffer names:"); - for (GLsizei i = 0; i < n; ++i) { - MG_Util::Debug::LogD(" Buffer[%d] = %u", i, buffers[i]); - MG_Diligent::g_BufferMap[buffers[i]] = nullptr; - } - return; - } - - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - GLboolean IsBuffer(GLuint buffer) { - MG_Util::Debug::LogD("glIsBuffer, buffer: %u", buffer); - - if (buffer == 0) { - return GL_FALSE; - } - - bool isValid = MG_State::ValidateAllocatedBufferHandle(buffer); - // Should we report gl error here or in MG_State? - MG_Util::Debug::LogD("Buffer %u is %s", buffer, isValid ? "valid" : "invalid"); - return isValid ? GL_TRUE : GL_FALSE; - } - - void BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void* data) { - MG_Util::Debug::LogD("glBufferSubData, target: %s, offset: %lld, size: %lld, data: %p", - MG_Util::Debug::GLEnumToString(target), - static_cast(offset), - static_cast(size), - data); - GLenum result = MG_State::CommitBufferStorageRegion(target, offset, size, data); - if (result != GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - GLuint buffer = MG_State_T::bufferState->GetCurrentBinding(target); - if (buffer == 0) return; - - auto& bufferObj = *MG_State_T::bufferState->GetBufferObject(buffer); - if (bufferObj.isDynamic) return; // Dynamic buffer should be created by glDraw* - - auto it = MG_Diligent::g_BufferMap.find(buffer); - if (it == MG_Diligent::g_BufferMap.end()) - return; - Diligent::IBuffer* pBuffer = it->second; - if (pBuffer) { - const auto& Desc = pBuffer->GetDesc(); - if (Desc.Usage == Diligent::USAGE_STAGING || Desc.Usage == Diligent::USAGE_DYNAMIC || Desc.Usage == Diligent::USAGE_UNIFIED) { - void* pMappedData = nullptr; - MG_Diligent::g_pContext->MapBuffer(pBuffer, Diligent::MAP_WRITE, Diligent::MAP_FLAG_DISCARD, pMappedData); - if (pMappedData) - { - memcpy(static_cast(pMappedData) + offset, data, size); - MG_Diligent::g_pContext->UnmapBuffer(pBuffer, Diligent::MAP_WRITE); - } else { - MG_Util::Debug::LogE("Failed to map buffer for BufferSubData"); - } - } else { - // For USAGE_DEFAULT or USAGE_IMMUTABLE, use UpdateBuffer - MG_Diligent::g_pContext->UpdateBuffer(pBuffer, static_cast(offset), - static_cast(size), data, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - } - } - } - void DeleteBuffers(GLsizei n, const GLuint *buffers) { - MG_Util::Debug::LogD("glDeleteBuffers, n: %d, buffers: %p", n, buffers); - - GLenum result = MG_State::DeleteBuffers(n, buffers); - if (result == GL_NO_ERROR) { - for (GLsizei i = 0; i < n; ++i) { - GLuint buffer = buffers[i]; - if (buffer != 0) { - auto it = MG_Diligent::g_BufferMap.find(buffer); - if (it != MG_Diligent::g_BufferMap.end()) { - if (it->second) { - it->second->Release(); - } - MG_Diligent::g_BufferMap.erase(it); - } - - } - } - return; - } - - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.h b/MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.h deleted file mode 100644 index 4b2d1a8b..00000000 --- a/MG/MG_GL/Implementations/GL/Buffer/GL_Buffer.h +++ /dev/null @@ -1,23 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_BUFFER_H -#define MOBILEGL_GL_BUFFER_H - -namespace MG_GL::GL { - void* MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); - void FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length); - void CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); - void* MapBuffer(GLenum target, GLenum access); - GLboolean UnmapBuffer(GLenum target); - void BindBuffer(GLenum target, GLuint buffer); - void BufferData(GLenum target, GLsizeiptr size, const void* data, GLenum usage); - void BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void* data); - void GetBufferParameteriv(GLenum target, GLenum pname, GLint* params); - void GenBuffers(GLsizei n, GLuint* buffers); - void DeleteBuffers(GLsizei n, const GLuint *buffers); - GLboolean IsBuffer(GLuint buffer); -} - -#endif //MOBILEGL_GL_BUFFER_H diff --git a/MG/MG_GL/Implementations/GL/Common/GL_Common.cpp b/MG/MG_GL/Implementations/GL/Common/GL_Common.cpp deleted file mode 100644 index 46feb169..00000000 --- a/MG/MG_GL/Implementations/GL/Common/GL_Common.cpp +++ /dev/null @@ -1,218 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - void CreateRenderPassAndFramebuffer(GLuint framebuffer, - const FramebufferObject& fbo, - MG_Diligent::GLFramebufferInfo& fbInfo); - - void Clear(GLbitfield mask) { - GLuint drawFramebuffer = MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]; - if (drawFramebuffer == 0) { - drawFramebuffer = 0; - } - - auto it = MG_Diligent::g_FramebufferMap.find(drawFramebuffer); - if (it == MG_Diligent::g_FramebufferMap.end()) { - MG_Util::Debug::LogE("Framebuffer not found: %u", drawFramebuffer); - return; - } - - MG_Diligent::GLFramebufferInfo& fbInfo = it->second; - auto& commonState = *MG_State_T::commonState; - - MG_Util::Debug::LogD("Setting render targets: %zu color attachments", fbInfo.ColorRTVs.size()); - MG_Diligent::g_pContext->SetRenderTargets( - static_cast(fbInfo.ColorRTVs.size()), - fbInfo.ColorRTVs.data(), - fbInfo.pDepthStencilRTV, - ::Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - -// if (MG_Diligent::IsInRenderPass) { -// MG_Util::Debug::LogD("Ending render pass before clear operation"); -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; -// } - -// MG_Util::Debug::LogD("Beginning render pass for clear operation"); - -// if (!fbInfo.pRenderPass) { -// MG_GL::GL::CreateRenderPassAndFramebuffer(drawFramebuffer, -// *MG_State_T::framebufferState->GetCurrentFBO(GL_DRAW_FRAMEBUFFER), fbInfo); -// } -// Diligent::BeginRenderPassAttribs beginAttribs; -// beginAttribs.pRenderPass = fbInfo.pRenderPass; -// beginAttribs.pFramebuffer = fbInfo.pFramebuffer; -// beginAttribs.StateTransitionMode = Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION; -// beginAttribs.ClearValueCount = 0; -// beginAttribs.pClearValues = nullptr; - -// MG_Diligent::g_pContext->BeginRenderPass(beginAttribs); -// MG_Diligent::IsInRenderPass = true; - - if (mask & GL_COLOR_BUFFER_BIT) { - for (size_t i = 0; i < fbInfo.ColorRTVs.size(); ++i) { - if (fbInfo.ColorRTVs[i]) { - MG_Util::Debug::LogD("Clearing color attachment %zu", i); - MG_Diligent::g_pContext->ClearRenderTarget( - fbInfo.ColorRTVs[i], - commonState.clearColor, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - } - } - } - - if (mask & (GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT)) { - if (fbInfo.pDepthStencilRTV) { - Diligent::Uint32 clearFlags = 0; - if (mask & GL_DEPTH_BUFFER_BIT) clearFlags |= Diligent::CLEAR_DEPTH_FLAG; - if (mask & GL_STENCIL_BUFFER_BIT) clearFlags |= Diligent::CLEAR_STENCIL_FLAG; - - MG_Util::Debug::LogD("Clearing depth/stencil (flags: %u)", clearFlags); - MG_Diligent::g_pContext->ClearDepthStencil( - fbInfo.pDepthStencilRTV, - static_cast(clearFlags), - commonState.clearDepth, - 0, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - } - } - -// MG_Util::Debug::LogD("Ending render pass after clear operation"); -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; - } - - void Enable(GLenum cap) { - MG_Util::Debug::LogD("glEnable, cap: %s", MG_Util::Debug::GLEnumToString(cap)); - GLenum result = MG_State::glEnable(cap); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error enabling capability: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void Disable(GLenum cap) { - MG_Util::Debug::LogD("glDisable, cap: %s", MG_Util::Debug::GLEnumToString(cap)); - GLenum result = MG_State::glDisable(cap); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error disabling capability: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void BlendFunc(GLenum sfactor, GLenum dfactor) { - MG_Util::Debug::LogD("glBlendFunc, sfactor: %s, dfactor: %s", - MG_Util::Debug::GLEnumToString(sfactor), - MG_Util::Debug::GLEnumToString(dfactor)); - GLenum result = MG_State::glBlendFunc(sfactor, dfactor); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting blend func: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void BlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) { - MG_Util::Debug::LogD("glBlendFuncSeparate, srcRGB: %s, dstRGB: %s, srcAlpha: %s, dstAlpha: %s", - MG_Util::Debug::GLEnumToString(srcRGB), - MG_Util::Debug::GLEnumToString(dstRGB), - MG_Util::Debug::GLEnumToString(srcAlpha), - MG_Util::Debug::GLEnumToString(dstAlpha)); - GLenum result = MG_State::glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting separate blend func: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) { - MG_Util::Debug::LogD("glClearColor, rgba: [%.2f, %.2f, %.2f, %.2f]", red, green, blue, alpha); - GLenum result = MG_State::glClearColor(red, green, blue, alpha); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting clear color: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void ClearDepth(GLdouble depth) { - MG_Util::Debug::LogD("glClearDepth, depth: %.3f", depth); - GLenum result = MG_State::glClearDepth(depth); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting clear depth: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { - MG_Util::Debug::LogD("glColorMask, rgba: [%d, %d, %d, %d]", red, green, blue, alpha); - GLenum result = MG_State::glColorMask(red, green, blue, alpha); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting color mask: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void DepthFunc(GLenum func) { - MG_Util::Debug::LogD("glDepthFunc, func: %s", MG_Util::Debug::GLEnumToString(func)); - GLenum result = MG_State::glDepthFunc(func); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting depth func: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void DepthMask(GLboolean flag) { - MG_Util::Debug::LogD("glDepthMask, flag: %d", flag); - GLenum result = MG_State::glDepthMask(flag); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting depth mask: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void Viewport(GLint x, GLint y, GLsizei width, GLsizei height) { - MG_Util::Debug::LogD("glViewport, x: %d, y: %d, width: %d, height: %d", - x, y, width, height); - GLenum result = MG_State::glViewport(x, y, width, height); - if (result == GL_NO_ERROR) { - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting viewport: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void PixelStorei(GLenum pname, GLint param) { - MG_Util::Debug::LogD("glPixelStorei, pname: %s, param: %d", MG_Util::Debug::GLEnumToString(pname), param); - GLenum result = MG_State::SetPixelStoreInt(pname,param); - if (result == GL_NO_ERROR) { - MG_Diligent::g_PSOManager.MarkPSODirty(MG_State_T::programState->currentProgram_); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GL/Common/GL_Common.h b/MG/MG_GL/Implementations/GL/Common/GL_Common.h deleted file mode 100644 index c1a2b518..00000000 --- a/MG/MG_GL/Implementations/GL/Common/GL_Common.h +++ /dev/null @@ -1,23 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_COMMON_H -#define MOBILEGL_GL_COMMON_H - -namespace MG_GL::GL { - void ClearDepth(GLdouble depth); - void ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); - void Clear(GLbitfield mask); - void PixelStorei(GLenum pname, GLint param); - void Enable(GLenum cap); - void Disable(GLenum cap); - void BlendFunc(GLenum sfactor, GLenum dfactor); - void BlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); - void ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); - void DepthFunc(GLenum func); - void DepthMask(GLboolean flag); - void Viewport(GLint x, GLint y, GLsizei width, GLsizei height); -} - -#endif //MOBILEGL_GL_COMMON_H diff --git a/MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.cpp b/MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.cpp deleted file mode 100644 index a8c3f968..00000000 --- a/MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.cpp +++ /dev/null @@ -1,1123 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - bool IsSamplerType(GLenum type) { - switch (type) { - case GL_SAMPLER_2D: - case GL_SAMPLER_3D: - case GL_SAMPLER_CUBE: - case GL_SAMPLER_2D_SHADOW: - case GL_SAMPLER_2D_ARRAY: - case GL_SAMPLER_2D_ARRAY_SHADOW: - case GL_SAMPLER_CUBE_SHADOW: - return true; - default: - return false; - } - } - - inline size_t GetUniformSize(GLenum type) { - switch (type) { - case GL_FLOAT: return sizeof(float); - case GL_FLOAT_VEC2: return 2 * sizeof(float); - case GL_FLOAT_VEC3: return 3 * sizeof(float); - case GL_FLOAT_VEC4: - case GL_FLOAT_MAT2: return 4 * sizeof(float); - case GL_FLOAT_MAT3: return 9 * sizeof(float); - case GL_FLOAT_MAT4: return 16 * sizeof(float); - case GL_INT: - case GL_BOOL: - return sizeof(int); - case GL_INT_VEC2: return 2 * sizeof(int); - case GL_INT_VEC3: return 3 * sizeof(int); - case GL_INT_VEC4: return 4 * sizeof(int); - case GL_UNSIGNED_INT: return sizeof(uint32_t); - case GL_UNSIGNED_INT_VEC2: return 2 * sizeof(uint32_t); - case GL_UNSIGNED_INT_VEC3: return 3 * sizeof(uint32_t); - case GL_UNSIGNED_INT_VEC4: return 4 * sizeof(uint32_t); - default: return 0; - } - } - - inline size_t AlignSize(size_t size, size_t alignment) { - return (size + alignment - 1) & ~(alignment - 1); - } - - inline Diligent::SHADER_TYPE GetDiligentShaderType(GLenum shaderType) { - switch (shaderType) { - case GL_VERTEX_SHADER: - return Diligent::SHADER_TYPE_VERTEX; - case GL_FRAGMENT_SHADER: - return Diligent::SHADER_TYPE_PIXEL; - case GL_GEOMETRY_SHADER: - return Diligent::SHADER_TYPE_GEOMETRY; - case GL_COMPUTE_SHADER: - return Diligent::SHADER_TYPE_COMPUTE; - case GL_TESS_CONTROL_SHADER: - return Diligent::SHADER_TYPE_DOMAIN; - case GL_TESS_EVALUATION_SHADER: - return Diligent::SHADER_TYPE_HULL; - default: - return Diligent::SHADER_TYPE_UNKNOWN; - } - } - - Diligent::SHADER_TYPE GetShaderStageForUniform(GLuint program, const std::string& name, - Diligent::PipelineResourceLayoutDesc desc) { - auto& programInfo = MG_Diligent::g_ProgramMap[program]; - auto& programObj = MG_State_T::programState->programs_[program]; - - auto it = programInfo.uniformStages.find(name); - if (it != programInfo.uniformStages.end()) { - return it->second; - } - - Diligent::SHADER_TYPE stage = Diligent::SHADER_TYPE_ALL; - - // Try to get it from the PipelineResourceLayoutDesc first. - if (desc.DefaultVariableType != Diligent::SHADER_RESOURCE_VARIABLE_TYPE_STATIC) { - for (Diligent::Uint32 i = 0; i < desc.NumVariables; ++i) { - if (desc.Variables[i].Name == name) { - stage = desc.Variables[i].ShaderStages; - programInfo.uniformStages[name] = stage; - return stage; - } - } - } - - for (Diligent::Uint32 i = 0; i < desc.NumImmutableSamplers; ++i) { - if (desc.ImmutableSamplers[i].ShaderStages != Diligent::SHADER_TYPE_UNKNOWN && - strcmp(desc.ImmutableSamplers[i].SamplerOrTextureName, name.c_str()) == 0) { - stage = desc.ImmutableSamplers[i].ShaderStages; - programInfo.uniformStages[name] = stage; - return stage; - } - } - - // The code below is useless, we should remove it. - for (auto shader : programInfo.AttachedShadersID) { - auto& shaderObj = MG_State_T::programState->shaders_[shader]; - if (shaderObj.compiledSpirv.empty()) continue; - - spvc_context context = nullptr; - spvc_parsed_ir parsed_ir = nullptr; - spvc_compiler compiler = nullptr; - spvc_resources resources = nullptr; - - spvc_result result = spvc_context_create(&context); - if (result != SPVC_SUCCESS) continue; - - result = spvc_context_parse_spirv(context, - reinterpret_cast(shaderObj.compiledSpirv.data()), - shaderObj.compiledSpirv.size() / sizeof(SpvId), - &parsed_ir); - - if (result != SPVC_SUCCESS) { - spvc_context_destroy(context); - continue; - } - - result = spvc_context_create_compiler(context, SPVC_BACKEND_GLSL, - parsed_ir, SPVC_CAPTURE_MODE_TAKE_OWNERSHIP, &compiler); - - if (result != SPVC_SUCCESS) { - spvc_context_destroy(context); - continue; - } - - result = spvc_compiler_create_shader_resources(compiler, &resources); - if (result != SPVC_SUCCESS) { - spvc_context_destroy(context); - continue; - } - - const spvc_reflected_resource* resourceList = nullptr; - size_t resourceCount = 0; - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_UNIFORM_BUFFER, - &resourceList, &resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - if (strcmp(resourceList[i].name, name.c_str()) == 0) { - stage = GetDiligentShaderType(shaderObj.type); - break; - } - } - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_SAMPLED_IMAGE, - &resourceList, &resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - if (strcmp(resourceList[i].name, name.c_str()) == 0) { - stage = GetDiligentShaderType(shaderObj.type); - break; - } - } - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_STORAGE_IMAGE, - &resourceList, &resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - if (strcmp(resourceList[i].name, name.c_str()) == 0) { - stage = GetDiligentShaderType(shaderObj.type); - break; - } - } - - spvc_resources_get_resource_list_for_type( - resources, SPVC_RESOURCE_TYPE_SEPARATE_SAMPLERS, - &resourceList, &resourceCount); - - for (size_t i = 0; i < resourceCount; i++) { - if (strcmp(resourceList[i].name, name.c_str()) == 0) { - stage = GetDiligentShaderType(shaderObj.type); - break; - } - } - - spvc_context_destroy(context); - } - if (stage == Diligent::SHADER_TYPE_ALL) - stage = Diligent::SHADER_TYPE_PIXEL; - programInfo.uniformStages[name] = stage; - - return stage; - } - - - size_t HashPipelineResourceLayoutDesc(const Diligent::PipelineResourceLayoutDesc& desc) - { - size_t seed = 0; - auto hash_combine = [&](auto v) { - seed ^= std::hash()(v) + 0x9e3779b9 + (seed << 6) + (seed >> 2); - }; - - hash_combine(static_cast(desc.DefaultVariableType)); - hash_combine(static_cast(desc.DefaultVariableMergeStages)); - hash_combine(desc.NumVariables); - hash_combine(desc.NumImmutableSamplers); - - for (Diligent::Uint32 i = 0; i < desc.NumVariables; ++i) - { - const auto& var = desc.Variables[i]; - if (var.Name) - hash_combine(std::string_view(var.Name)); - else - hash_combine(0); - - hash_combine(static_cast(var.ShaderStages)); - hash_combine(static_cast(var.Type)); - } - - for (Diligent::Uint32 i = 0; i < desc.NumImmutableSamplers; ++i) - { - const auto& sampler = desc.ImmutableSamplers[i]; - if (sampler.SamplerOrTextureName) - hash_combine(std::string_view(sampler.SamplerOrTextureName)); - else - hash_combine(0); - - hash_combine(static_cast(sampler.ShaderStages)); - - const auto& desc = sampler.Desc; - - hash_combine(static_cast(desc.MinFilter)); - hash_combine(static_cast(desc.MagFilter)); - hash_combine(static_cast(desc.MipFilter)); - - hash_combine(static_cast(desc.AddressU)); - hash_combine(static_cast(desc.AddressV)); - hash_combine(static_cast(desc.AddressW)); - - hash_combine(desc.MipLODBias); - hash_combine(desc.MaxAnisotropy); - hash_combine(static_cast(desc.ComparisonFunc)); - - hash_combine(desc.BorderColor[0]); - hash_combine(desc.BorderColor[1]); - hash_combine(desc.BorderColor[2]); - hash_combine(desc.BorderColor[3]); - - hash_combine(desc.MinLOD); - hash_combine(desc.MaxLOD); - hash_combine(static_cast(desc.UnnormalizedCoords)); - } - - return seed; - } - - void UpdateSamplerAndTextureUniforms(GLuint program, Diligent::IShaderResourceBinding& pSRB, - Diligent::PipelineResourceLayoutDesc desc) { - MG_Util::Debug::LogD("Updating sampler and texture uniforms for program %u", program); - auto& programObj = MG_State_T::programState->programs_[program]; - - for (auto& [name, uniform] : programObj.uniformValues) { - if (!IsSamplerType(uniform.type)) continue; - - GLuint textureID = 0; - if (!uniform.intData.empty()) { - auto textureUnit = static_cast(uniform.intData[0]); - auto unitState = &MG_State_T::textureState->textureUnits_[textureUnit]; - textureID = unitState->GetBoundTexture(unitState->activeTarget); - MG_Util::Debug::LogD("Sampler '%s' (type: %X) uses texture ID: %u", name.c_str(), uniform.type, textureID); - } - - Diligent::ITextureView* pTextureView = nullptr; - if (textureID != 0) { - auto it = MG_Diligent::g_TextureViewMap.find(textureID); - if (it != MG_Diligent::g_TextureViewMap.end()) { - pTextureView = it->second; - MG_Util::Debug::LogD("Found ITextureView for texture ID %u.", textureID); - } else { - MG_Util::Debug::LogW("ITextureView not found for texture ID %u (sampler '%s').", textureID, name.c_str()); - } - } - - if (pTextureView) { - static MG_Global::unordered_map, Diligent::SHADER_TYPE> g_UniformStageCache; - - size_t descKey = HashPipelineResourceLayoutDesc(desc); - auto key = std::make_tuple(program, name, descKey); - - Diligent::SHADER_TYPE stage; - auto itStage = g_UniformStageCache.find(key); - if (itStage != g_UniformStageCache.end()) { - stage = itStage->second; - } - else { - stage = GetShaderStageForUniform(program, name, desc); - g_UniformStageCache[key] = stage; - } - - MG_Util::Debug::LogD("Setting texture view for sampler '%s' in stage %d.", name.c_str(), stage); - auto* pVar = pSRB.GetVariableByName(stage, name.c_str()); - if (pVar) { - pTextureView->SetSampler(MG_Diligent::g_SamplerMap[textureID]); - pVar->Set(pTextureView, Diligent::SET_SHADER_RESOURCE_FLAG_ALLOW_OVERWRITE); - } else { - MG_Util::Debug::LogE("Failed to get shader variable for sampler '%s' in stage %d. Skipping.", name.c_str(), stage); - } - - } else { - MG_Util::Debug::LogW("No ITextureView available for sampler '%s' (texture ID: %u). Skipping.", name.c_str(), textureID); - } - } - MG_Util::Debug::LogD("Finished updating sampler and texture uniforms for program %u.", program); - } - - void UpdateUniformsToDefaultUBO(GLuint program, Diligent::IShaderResourceBinding& pSRB) { - MG_Util::Debug::LogD("Updating uniforms to default UBO for program %u", program); - auto& programInfo = MG_Diligent::g_ProgramMap[program]; - auto& programObj = MG_State_T::programState->programs_[program]; - - if (!programInfo.pDefaultUBO) { - MG_Util::Debug::LogE("Program %u does not have a default UBO. Skipping uniform update.", program); - return; - } - if (programObj.uniformValues.empty()) { - MG_Util::Debug::LogE("Program %u has no uniforms. Skipping uniform update.", program); - return; - } - - void * mapped; - MG_Util::Debug::LogD("Mapping UBO for program %u", program); - MG_Diligent::g_pContext->MapBuffer(programInfo.pDefaultUBO, Diligent::MAP_WRITE, - Diligent::MAP_FLAG_DISCARD, mapped); - - if (mapped) { - MG_Util::Debug::LogD("UBO mapped successfully for program %u. Updating uniform values.", program); - auto* uboData = static_cast(mapped); - - for (auto& name: programInfo.uniformBufferNames) { - MG_Util::Debug::LogW("Attempting to update uniform '%s' for program %u", name.c_str(), program); - auto& uniform = programObj.uniformValues[name]; - if (IsSamplerType(uniform.type)) continue; - - auto it = programInfo.uniformOffsets.find(name); - if (it != programInfo.uniformOffsets.end()) { - size_t offset = it->second; - MG_Util::Debug::LogD("Updating uniform '%s' at offset %zu for program %u", name.c_str(), offset, program); - - size_t dataSize = 0; - const void* dataPtr = nullptr; - - if (!uniform.floatData.empty()) { - dataSize = uniform.floatData.size() * sizeof(float); - dataPtr = uniform.floatData.data(); - } else if (!uniform.intData.empty()) { - dataSize = uniform.intData.size() * sizeof(int); - dataPtr = uniform.intData.data(); - } else if (!uniform.uintData.empty()) { - dataSize = uniform.uintData.size() * sizeof(uint32_t); - dataPtr = uniform.uintData.data(); - } - - if (dataPtr && dataSize > 0 && dataSize <= GetUniformSize(uniform.type)) { - memcpy(uboData + offset, dataPtr, dataSize); - } else { - if (!dataPtr || dataSize == 0) { - MG_Util::Debug::LogW("Cannot copy data for uniform '%s': data is null or size is zero.", name.c_str()); - } else if (dataSize > GetUniformSize(uniform.type)) { - MG_Util::Debug::LogW("Cannot copy data for uniform '%s': provided data size (%zu) exceeds uniform size (%zu).", name.c_str(), dataSize, GetUniformSize(uniform.type)); - } - // Fallback to individual assignments if memcpy is not suitable or data is malformed - switch (uniform.type) { - case GL_FLOAT: - if (!uniform.floatData.empty()) *reinterpret_cast(uboData + offset) = uniform.floatData[0]; - break; - case GL_FLOAT_VEC2: - case GL_FLOAT_VEC3: - case GL_FLOAT_VEC4: - case GL_FLOAT_MAT2: - case GL_FLOAT_MAT3: - case GL_FLOAT_MAT4: - // memcpy handled above if data is valid - break; - case GL_INT: - case GL_BOOL: - if (!uniform.intData.empty()) *reinterpret_cast(uboData + offset) = uniform.intData[0]; - break; - case GL_INT_VEC2: - case GL_INT_VEC3: - case GL_INT_VEC4: - // memcpy handled above if data is valid - break; - case GL_UNSIGNED_INT: - if (!uniform.uintData.empty()) *reinterpret_cast(uboData + offset) = uniform.uintData[0]; - break; - case GL_UNSIGNED_INT_VEC2: - case GL_UNSIGNED_INT_VEC3: - case GL_UNSIGNED_INT_VEC4: - // memcpy handled above if data is valid - break; - } - } - } else { - MG_Util::Debug::LogW("Cannot update uniform '%s' for program %u, offset not found", name.c_str(), program); - } - } - MG_Util::Debug::LogD("Finished updating uniform values in UBO for program %u.", program); - } else { - MG_Util::Debug::LogE("Failed to map UBO for program %u.", program); - } - - MG_Util::Debug::LogD("Unmapping UBO for program %u", program); - if (programInfo.pDefaultUBO) { - MG_Diligent::g_pContext->UnmapBuffer(programInfo.pDefaultUBO, Diligent::MAP_WRITE); - auto* pVarVertex = pSRB.GetVariableByName(Diligent::SHADER_TYPE_VERTEX, "MG_DEFAULT_UBO"); - if (pVarVertex) { - pVarVertex->Set(programInfo.pDefaultUBO, Diligent::SET_SHADER_RESOURCE_FLAG_ALLOW_OVERWRITE); - } else { - MG_Util::Debug::LogE("Failed to get vertex shader variable 'MG_DEFAULT_UBO' for program %u.", program); - } - auto* pVarPixel = pSRB.GetVariableByName(Diligent::SHADER_TYPE_PIXEL, "MG_DEFAULT_UBO"); - if (pVarPixel) { - pVarPixel->Set(programInfo.pDefaultUBO, Diligent::SET_SHADER_RESOURCE_FLAG_ALLOW_OVERWRITE); - } else { - MG_Util::Debug::LogE("Failed to get pixel shader variable 'MG_DEFAULT_UBO' for program %u.", program); - } - } else { - MG_Util::Debug::LogW("Default UBO is null for program %u. Skipping setting shader variables.", program); - } - } - - template - void generate_triangle_fan_indices(std::vector& out_data, const void* in_indices, size_t count) { - const auto* pIn = static_cast(in_indices); - std::vector new_indices; - new_indices.reserve((count - 2) * 3); - T i0 = pIn[0]; - for (size_t i = 1; i < count - 1; ++i) { - new_indices.push_back(i0); - new_indices.push_back(pIn[i]); - new_indices.push_back(pIn[i+1]); - } - out_data.resize(new_indices.size() * sizeof(T)); - memcpy(out_data.data(), new_indices.data(), out_data.size()); - } - - static Diligent::IBuffer* g_ConvertedIndexBuffer = nullptr; - static std::vector g_ConvertedIndices; - - const void* ConvertUint8IndicesToUint16(const uint8_t* src, GLsizei count) - { - g_ConvertedIndices.resize(count); - for (GLsizei i = 0; i < count; ++i) - { - g_ConvertedIndices[i] = static_cast(src[i]); - } - return g_ConvertedIndices.data(); - } - - static bool isConvertedIBO = false; - void PrepareForDraw(GLenum mode, GLsizei* pCount, GLenum& type, const void*& pIndices) - { - auto* pVAO = MG_State_T::vertexArrayState->GetCurrentVAO(); - if (!pVAO) - { - MG_Util::Debug::LogE("No current VAO found. A VAO must be bound before drawing."); - return; - } - - isConvertedIBO = false; - - if (type == GL_UNSIGNED_BYTE) - { - isConvertedIBO = true; - GLsizei count = *pCount; - const uint8_t* src = nullptr; - - if (pVAO->elementBuffer != 0) - { - auto* bufObj = MG_State_T::bufferState->GetBufferObject(pVAO->elementBuffer); - if (!bufObj) - { - MG_Util::Debug::LogE("EBO not found for VAO"); - return; - } - size_t offset = reinterpret_cast(pIndices); - if (offset + count > bufObj->data.size()) - { - MG_Util::Debug::LogE("Index offset out of bounds in EBO"); - return; - } - src = bufObj->data.data() + offset; - } - else - { - src = static_cast(pIndices); - } - - if (!src) - { - MG_Util::Debug::LogE("No valid index data for GL_UNSIGNED_BYTE indices"); - return; - } - - // ת»»Ë÷ÒýÊý¾Ý - const void* convertedIndices = ConvertUint8IndicesToUint16(src, count); - type = GL_UNSIGNED_SHORT; - - if (!g_ConvertedIndexBuffer || - g_ConvertedIndexBuffer->GetDesc().Size < g_ConvertedIndices.size() * sizeof(uint16_t)) - { - if (g_ConvertedIndexBuffer) { - g_ConvertedIndexBuffer->Release(); - g_ConvertedIndexBuffer = nullptr; - } - - Diligent::BufferDesc BuffDesc; - BuffDesc.Name = "Converted U8 to U16 Temp Index Buffer"; - BuffDesc.Size = g_ConvertedIndices.size() * sizeof(uint16_t); - BuffDesc.Usage = Diligent::USAGE_DYNAMIC; - BuffDesc.BindFlags = Diligent::BIND_INDEX_BUFFER; - //BuffDesc.CPUAccessFlags = Diligent::CPU_ACCESS_WRITE; // Ìí¼ÓCPU·ÃÎʱêÖ¾ - MG_Diligent::g_pDevice->CreateBuffer(BuffDesc, nullptr, &g_ConvertedIndexBuffer); - } - - if (g_ConvertedIndexBuffer) { - void* pMappedData = nullptr; - MG_Diligent::g_pContext->MapBuffer(g_ConvertedIndexBuffer, Diligent::MAP_WRITE, - Diligent::MAP_FLAG_DISCARD, pMappedData); - if (pMappedData) { - memcpy(pMappedData, g_ConvertedIndices.data(), - g_ConvertedIndices.size() * sizeof(uint16_t)); - MG_Diligent::g_pContext->UnmapBuffer(g_ConvertedIndexBuffer, Diligent::MAP_WRITE); - } - - // ¹Ø¼üÐ޸ģºÕýÈ·ÉèÖÃË÷Òý»º³åÇø - MG_Diligent::g_pContext->SetIndexBuffer(g_ConvertedIndexBuffer, 0, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - - // ÉèÖà pIndices Ϊ nullptr ±íʾʹÓÃÕû¸ö»º³åÇø - pIndices = nullptr; - } - else { - MG_Util::Debug::LogE("Failed to create converted index buffer for GL_UNSIGNED_BYTE indices"); - // ÉèÖà pIndices Ϊ nullptr ±ÜÃâºóÐø´íÎó´¦Àí - pIndices = nullptr; - } - } - - GLuint program = MG_State::GetCurrentProgram(); - - if (program == 0) { - MG_Util::Debug::LogE("No active program for DrawElements"); - return; - } - - auto& programInfo = MG_Diligent::g_ProgramMap[program]; - - GLuint drawFB = MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]; - - auto itFB = MG_Diligent::g_FramebufferMap.find(drawFB); - if (itFB == MG_Diligent::g_FramebufferMap.end()) { - MG_Util::Debug::LogE("Framebuffer not found: %u", drawFB); - return; - } - MG_Diligent::GLFramebufferInfo& fbInfo = itFB->second; - - MG_Util::Debug::LogD("Fetching PSO for program %u", program); - programInfo.pPipelineState = MG_Diligent::g_PSOManager.GetOrCreatePSO( - program, - programInfo, - *MG_State_T::commonState, - *MG_State_T::vertexArrayState, - fbInfo, - mode - ); - - if (!programInfo.pPipelineState) { - MG_Util::Debug::LogE("Failed to get or create PSO for program %u", program); - return; - } - MG_Util::Debug::LogD("Successfully obtained PSO for program %u", program); - - if (!programInfo.pResourceBinding) { - MG_Util::Debug::LogD("Creating ShaderResourceBinding for program %u", program); - programInfo.pPipelineState->CreateShaderResourceBinding( - &programInfo.pResourceBinding, true); - if (!programInfo.pResourceBinding) { - MG_Util::Debug::LogE("Failed to create ShaderResourceBinding for program %u", program); - return; - } - - MG_Util::Debug::LogD("Successfully created ShaderResourceBinding for program %u", program); - } - - MG_Diligent::g_pContext->SetPipelineState(programInfo.pPipelineState); - - for (uint32_t attribIndex = 0; attribIndex < MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS; ++attribIndex) { - const auto& attrib = pVAO->attribs[attribIndex]; - if (!attrib.enabled || attrib.buffer == 0) continue; - - GLuint buffer = attrib.buffer; - auto* pBufferObj = MG_State_T::bufferState->GetBufferObject(buffer); - assert(pBufferObj != nullptr); - auto& bufferObj = *pBufferObj; - - Diligent::IBuffer *&pBuffer = MG_Diligent::g_BufferMap[buffer]; - if (bufferObj.isDynamic && (!pBuffer || (pBuffer && pBuffer->GetDesc().Size != bufferObj.data.size()))) { - if (pBuffer) { - pBuffer->Release(); - pBuffer = nullptr; - } - - Diligent::BufferDesc BuffDesc; - std::string bufferName = "Dynamic VBO " + std::to_string(buffer); - BuffDesc.Name = bufferName.c_str(); - BuffDesc.Size = bufferObj.data.size(); - BuffDesc.Usage = Diligent::USAGE_DYNAMIC; - BuffDesc.BindFlags = Diligent::BIND_VERTEX_BUFFER | - Diligent::BIND_INDEX_BUFFER | - Diligent::BIND_UNIFORM_BUFFER; - BuffDesc.CPUAccessFlags = Diligent::CPU_ACCESS_WRITE; - - MG_Diligent::g_pDevice->CreateBuffer(BuffDesc, nullptr, &pBuffer); - - if (!pBuffer) { - MG_Util::Debug::LogE("Failed to create dynamic vertex buffer %u", buffer); - continue; - } - } - } - - if (mode == GL_TRIANGLE_FAN) - { - if (*pCount < 3) return; - - const void* pOriginalIndices = nullptr; - if (pVAO->elementBuffer != 0) - { - auto* pBufferObj = MG_State_T::bufferState->GetBufferObject(pVAO->elementBuffer); - assert(pBufferObj != nullptr); - auto& bufferObj = *pBufferObj; - pOriginalIndices = bufferObj.data.data() + reinterpret_cast(pIndices); - } - else - { - pOriginalIndices = pIndices; - } - - std::vector newIndexData; - switch(type) { - case GL_UNSIGNED_BYTE: - generate_triangle_fan_indices(newIndexData, pOriginalIndices, *pCount); - break; - case GL_UNSIGNED_SHORT: - generate_triangle_fan_indices(newIndexData, pOriginalIndices, *pCount); - break; - case GL_UNSIGNED_INT: - generate_triangle_fan_indices(newIndexData, pOriginalIndices, *pCount); - break; - default: - MG_Util::Debug::LogE("Unsupported index type for triangle fan conversion: %X", type); - return; - } - - *pCount = (static_cast(*pCount) - 2) * 3; - pIndices = nullptr; - - if (!MG_Diligent::g_TriangleFanIndexBuffer || MG_Diligent::g_TriangleFanIndexBuffer->GetDesc().Size < newIndexData.size()) - { - if (MG_Diligent::g_TriangleFanIndexBuffer) { - MG_Diligent::g_TriangleFanIndexBuffer->Release(); - MG_Diligent::g_TriangleFanIndexBuffer = nullptr; - } - - Diligent::BufferDesc BuffDesc; - BuffDesc.Name = "Triangle Fan Temp Index Buffer"; - BuffDesc.Size = newIndexData.size(); - BuffDesc.Usage = Diligent::USAGE_DYNAMIC; - BuffDesc.BindFlags = Diligent::BIND_INDEX_BUFFER; - BuffDesc.CPUAccessFlags = Diligent::CPU_ACCESS_WRITE; - MG_Diligent::g_pDevice->CreateBuffer(BuffDesc, nullptr, &MG_Diligent::g_TriangleFanIndexBuffer); - } - - if (MG_Diligent::g_TriangleFanIndexBuffer) - { - void* pMappedData = nullptr; - MG_Diligent::g_pContext->MapBuffer(MG_Diligent::g_TriangleFanIndexBuffer, Diligent::MAP_WRITE, Diligent::MAP_FLAG_DISCARD, pMappedData); - if (pMappedData) - { - memcpy(pMappedData, newIndexData.data(), newIndexData.size()); - MG_Diligent::g_pContext->UnmapBuffer(MG_Diligent::g_TriangleFanIndexBuffer, Diligent::MAP_WRITE); - } - MG_Diligent::g_pContext->SetIndexBuffer(MG_Diligent::g_TriangleFanIndexBuffer, 0, Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - } - } else if (pVAO->elementBuffer != 0) { - GLuint buffer = pVAO->elementBuffer; - auto* pBufferObj = MG_State_T::bufferState->GetBufferObject(buffer); - assert(pBufferObj != nullptr); - auto& bufferObj = *pBufferObj; - - Diligent::IBuffer*& pBuffer = MG_Diligent::g_BufferMap[buffer]; - if (bufferObj.isDynamic || (!pBuffer || (pBuffer && pBuffer->GetDesc().Size != bufferObj.data.size()))) { - if (pBuffer) { - pBuffer->Release(); - pBuffer = nullptr; - } - - Diligent::BufferDesc BuffDesc; - std::string bufferName = "Dynamic IBO " + std::to_string(buffer); - BuffDesc.Name = bufferName.c_str(); - BuffDesc.Size = bufferObj.data.size(); - BuffDesc.Usage = Diligent::USAGE_DYNAMIC; - BuffDesc.BindFlags = Diligent::BIND_VERTEX_BUFFER | - Diligent::BIND_INDEX_BUFFER | - Diligent::BIND_UNIFORM_BUFFER; - BuffDesc.CPUAccessFlags = Diligent::CPU_ACCESS_WRITE; - - MG_Diligent::g_pDevice->CreateBuffer(BuffDesc, nullptr, &pBuffer); - - if (!pBuffer) { - MG_Util::Debug::LogE("Failed to create dynamic index buffer %u", buffer); - } - } - if (pBuffer && !isConvertedIBO) - { - MG_Diligent::g_pContext->SetIndexBuffer(pBuffer, 0, Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION); - } - } - - // Update data for all dynamic buffers - MG_Util::Debug::LogD("g_BufferMap size: %d", MG_Diligent::g_BufferMap.size()); // Moved out of loop - - for (auto& [bufferID, pBuffer] : MG_Diligent::g_BufferMap) { - auto* pBufferObject = MG_State_T::bufferState->GetBufferObject(bufferID); - if (!pBufferObject || !pBuffer) { - if (!pBufferObject) { - MG_Util::Debug::LogW("Buffer ID %u not found in bufferState. Skipping update.", bufferID); - } - continue; - } - - auto& bufferObj = *pBufferObject; - if (!bufferObj.isDynamic) continue; - - MG_Util::Debug::LogD("Mapping dynamic buffer %u for data update.", bufferID); - void* pMappedData = nullptr; - MG_Diligent::g_pContext->MapBuffer( - pBuffer, - Diligent::MAP_WRITE, - Diligent::MAP_FLAG_DISCARD, - pMappedData); - - if (!pMappedData) { - MG_Util::Debug::LogE("Failed to map dynamic buffer %u for data update.", bufferID); - continue; - } - - memcpy(pMappedData, bufferObj.data.data(), bufferObj.data.size()); - MG_Diligent::g_pContext->UnmapBuffer(pBuffer, Diligent::MAP_WRITE); - bufferObj.dirty = false; - MG_Util::Debug::LogD("Successfully updated data for dynamic buffer %u.", bufferID); - } - - std::vector vertexBuffers; - std::vector offsets; - - for (uint32_t attribIndex = 0; attribIndex < MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS; ++attribIndex) { - const auto& attrib = pVAO->attribs[attribIndex]; - if (!attrib.enabled || attrib.buffer == 0) continue; - - GLuint buffer = attrib.buffer; - auto it = MG_Diligent::g_BufferMap.find(buffer); - if (it == MG_Diligent::g_BufferMap.end() || !it->second) continue; - - vertexBuffers.push_back(it->second); - offsets.push_back(static_cast(reinterpret_cast(attrib.pointer))); - } - - if (!vertexBuffers.empty()) { - MG_Util::Debug::LogD("Setting Vertex Buffers:"); - MG_Util::Debug::LogD(" NumBuffers: %u", static_cast(vertexBuffers.size())); - for (size_t i = 0; i < vertexBuffers.size(); ++i) { - MG_Util::Debug::LogD(" Buffer %zu:", i); - if (vertexBuffers[i]) { - const auto& desc = vertexBuffers[i]->GetDesc(); - MG_Util::Debug::LogD(" Name: %s", desc.Name ? desc.Name : "N/A"); - MG_Util::Debug::LogD(" Size: %llu", desc.Size); - MG_Util::Debug::LogD(" Usage: %d", desc.Usage); - MG_Util::Debug::LogD(" BindFlags: %u", desc.BindFlags); - MG_Util::Debug::LogD(" CPUAccessFlags: %u", desc.CPUAccessFlags); - } else { - MG_Util::Debug::LogD(" "); - } - MG_Util::Debug::LogD(" Offset: %llu", offsets[i]); - } - - MG_Diligent::g_pContext->SetVertexBuffers( - 0, - static_cast(vertexBuffers.size()), - vertexBuffers.data(), - offsets.data(), - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION, - Diligent::SET_VERTEX_BUFFERS_FLAG_NONE - ); - } - - MG_Util::Debug::LogD("Updating uniforms for program %u", program); - UpdateUniformsToDefaultUBO(program, *programInfo.pResourceBinding); - UpdateSamplerAndTextureUniforms(program, *programInfo.pResourceBinding, - programInfo.pPipelineState->GetDesc().ResourceLayout); - - MG_Util::Debug::LogD("Committing shader resources for program %u", program); - MG_Diligent::g_pContext->CommitShaderResources( - programInfo.pResourceBinding, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - } - - void DrawElements(GLenum mode, GLsizei count, GLenum type, const void* indices) { - GLenum actualType = type; - const void* pIndices = indices; - PrepareForDraw(mode, &count, actualType, pIndices); - - Diligent::DrawIndexedAttribs drawAttrs; - drawAttrs.NumIndices = count; - drawAttrs.Flags = Diligent::DRAW_FLAG_VERIFY_ALL; - Diligent::VALUE_TYPE indexType = ConvertGLTypeToDiligent(actualType); - drawAttrs.IndexType = indexType; - auto* pVAO = MG_State_T::vertexArrayState->GetCurrentVAO(); - if (pIndices != nullptr && pVAO != nullptr && pVAO->elementBuffer != 0) { - size_t indexSize = 1; - if (drawAttrs.IndexType == Diligent::VT_UINT16) indexSize = 2; - else if (drawAttrs.IndexType == Diligent::VT_UINT32) indexSize = 4; - if (isConvertedIBO) - drawAttrs.FirstIndexLocation = 0; - else - drawAttrs.FirstIndexLocation = static_cast(reinterpret_cast(pIndices) / indexSize); - } - - MG_Util::Debug::LogD("DrawIndexedAttribs Dump:"); - MG_Util::Debug::LogD(" NumIndices: %u", drawAttrs.NumIndices); - MG_Util::Debug::LogD(" IndexType: %d", drawAttrs.IndexType); - MG_Util::Debug::LogD(" Flags: %u", drawAttrs.Flags); - MG_Util::Debug::LogD(" NumInstances: %u", drawAttrs.NumInstances); - MG_Util::Debug::LogD(" BaseVertex: %u", drawAttrs.BaseVertex); - MG_Util::Debug::LogD(" FirstIndexLocation: %u", drawAttrs.FirstIndexLocation); - MG_Util::Debug::LogD(" FirstInstanceLocation: %u", drawAttrs.FirstInstanceLocation); - -// EnsureRenderPassActive(); - MG_Diligent::g_pContext->DrawIndexed(drawAttrs); -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; - MG_Util::Debug::LogD("DrawIndexed completed."); - } - - void DrawArrays(GLenum mode, GLint first, GLsizei count) { - // TODO - } - - void DrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) { - GLenum actualType = type; - const void* pIndices = indices; - PrepareForDraw(mode, &count, actualType, pIndices); - - auto* pVAO = MG_State_T::vertexArrayState->GetCurrentVAO(); - if (pVAO->elementBuffer != 0) { - GLuint buffer = pVAO->elementBuffer; - auto it = MG_Diligent::g_BufferMap.find(buffer); - if (it != MG_Diligent::g_BufferMap.end() && it->second) { - auto offset = reinterpret_cast(indices); - - MG_Diligent::g_pContext->SetIndexBuffer( - it->second, - offset, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - } - } - - Diligent::DrawIndexedAttribs drawAttrs; - drawAttrs.NumIndices = count; - drawAttrs.Flags = Diligent::DRAW_FLAG_VERIFY_ALL; - drawAttrs.IndexType = ConvertGLTypeToDiligent(type); - drawAttrs.BaseVertex = basevertex; // Apply basevertex - MG_Util::Debug::LogD("DrawIndexedAttribs Dump (BaseVertex):"); - MG_Util::Debug::LogD(" NumIndices: %u", drawAttrs.NumIndices); - MG_Util::Debug::LogD(" IndexType: %d", drawAttrs.IndexType); - MG_Util::Debug::LogD(" Flags: %u", drawAttrs.Flags); - MG_Util::Debug::LogD(" NumInstances: %u", drawAttrs.NumInstances); - MG_Util::Debug::LogD(" BaseVertex: %u", drawAttrs.BaseVertex); - MG_Util::Debug::LogD(" FirstIndexLocation: %u", drawAttrs.FirstIndexLocation); - MG_Util::Debug::LogD(" FirstInstanceLocation: %u", drawAttrs.FirstInstanceLocation); - - MG_Diligent::g_pContext->DrawIndexed(drawAttrs); - MG_Util::Debug::LogD("DrawIndexed (BaseVertex) completed."); - } - - struct DrawIndexedArguments - { - Diligent::Uint32 IndexCount; - Diligent::Uint32 InstanceCount; - Diligent::Uint32 FirstIndex; - Diligent::Uint32 BaseVertex; - Diligent::Uint32 FirstInstance; - }; - - void MultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid *const *indices, GLsizei drawcount) { - return; - // PrepareForDraw(); - - /* - if (MG_Diligent::IsInRenderPass) { - MG_Util::Debug::LogD("Ending current render pass."); - MG_Diligent::g_pContext->EndRenderPass(); - MG_Diligent::IsInRenderPass = false; - MG_Util::Debug::LogD("Current render pass ended."); - } else { - MG_Util::Debug::LogD("No active render pass to end."); - } - - auto* pVAO = MG_State_T::vertexArrayState->GetCurrentVAO(); - Diligent::IBuffer* pIndexBuffer = nullptr; - if (pVAO->elementBuffer != 0) { - auto it = MG_Diligent::g_BufferMap.find(pVAO->elementBuffer); - if (it != MG_Diligent::g_BufferMap.end()) - pIndexBuffer = it->second; - } - if (!pIndexBuffer) { - MG_Util::Debug::LogE("No valid index buffer bound for multi-draw"); - return; - } - - MG_Diligent::g_pContext->SetIndexBuffer( - pIndexBuffer, - 0, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - - Diligent::VALUE_TYPE indexType = ConvertGLTypeToDiligent(type); - Diligent::Uint32 indexSize = 0; - switch (indexType) { - case Diligent::VT_UINT16: indexSize = 2; break; - case Diligent::VT_UINT32: indexSize = 4; break; - default: - MG_Util::Debug::LogE("Unsupported index type for multi-draw: %d", type); - return; - } - - std::vector indirectCmds; - indirectCmds.reserve(drawcount); - indirectCmds.clear(); - for (GLsizei i = 0; i < drawcount; ++i) { - if (count[i] <= 0) continue; - - DrawIndexedArguments cmd{}; - cmd.IndexCount = static_cast(count[i]); - cmd.InstanceCount = 1; - cmd.FirstIndex = static_cast(reinterpret_cast(indices[i]) / indexSize); - cmd.BaseVertex = 0; - cmd.FirstInstance = 0; - - indirectCmds.push_back(cmd); - } - - if (indirectCmds.empty()) { - MG_Util::Debug::LogW("No valid draw items in multi-draw"); - return; - } - - static GLuint indirectBufId = 0; - Diligent::IBuffer* pIndirectBuffer = nullptr; - if (indirectBufId == 0) { - bool isIdFree = false; - while (!isIdFree) { - MG_Diligent::g_NextResourceId++; - bool isIdAlreadyExist = false; - for (auto& [id, bufferObj] : MG_State_T::bufferState->buffers_) { - if (MG_Diligent::g_NextResourceId == id) { - isIdAlreadyExist = true; - break; - } - } - isIdFree = !isIdAlreadyExist; - } - indirectBufId = MG_Diligent::g_NextResourceId; - MG_Diligent::g_NextResourceId++; - } - - auto& bufEntry = MG_Diligent::g_BufferMap[indirectBufId]; - const auto requiredSize = indirectCmds.size() * sizeof(DrawIndexedArguments); - - bool recreateBuffer = !bufEntry || bufEntry->GetDesc().Size != requiredSize; - - if (recreateBuffer) { - if (bufEntry) { - bufEntry->Release(); - bufEntry = nullptr; - } - - Diligent::BufferDesc desc; - desc.Name = "MultiDrawIndirectArgs"; - desc.Usage = Diligent::USAGE_DYNAMIC; - desc.BindFlags = Diligent::BIND_INDIRECT_DRAW_ARGS; - desc.Size = static_cast(requiredSize); - desc.CPUAccessFlags = Diligent::CPU_ACCESS_WRITE; - MG_Diligent::g_pDevice->CreateBuffer(desc, nullptr, &bufEntry); - } - pIndirectBuffer = bufEntry; - - void* pMappedData = nullptr; - - MG_Util::Debug::LogD("Mapping indirect draw buffer for multi-draw."); - MG_Diligent::g_pContext->MapBuffer( - pIndirectBuffer, - Diligent::MAP_WRITE, - Diligent::MAP_FLAG_DISCARD, - pMappedData - ); - - if (pMappedData) { - memcpy(pMappedData, indirectCmds.data(), requiredSize); - MG_Diligent::g_pContext->UnmapBuffer(pIndirectBuffer, Diligent::MAP_WRITE); - MG_Util::Debug::LogD("Successfully updated indirect draw buffer."); - } else { - MG_Util::Debug::LogE("Failed to map indirect draw buffer for multi-draw."); - return; - } - - // Execute multi-draw indirect! - EnsureRenderPassActive(); - Diligent::DrawIndexedIndirectAttribs mdAttribs; - mdAttribs.IndexType = indexType; - mdAttribs.pAttribsBuffer = pIndirectBuffer; - mdAttribs.DrawCount = static_cast(indirectCmds.size()); - - MG_Diligent::g_pContext->DrawIndexedIndirect(mdAttribs); - - MG_Diligent::g_pContext->EndRenderPass(); - MG_Diligent::IsInRenderPass = false; - - MG_Util::Debug::LogD("MultiDrawElements completed with %d draws.", indirectCmds.size()); - */ - } - - void MultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid *const *indices, GLsizei drawcount, const GLint *basevertex) { - GLenum actualType = type; - PrepareForDraw(mode, (GLsizei *)count, actualType, (const void*&)indices[0]); - - auto* pVAO = MG_State_T::vertexArrayState->GetCurrentVAO(); - Diligent::IBuffer* pIndexBuffer = nullptr; - if (pVAO->elementBuffer != 0) { - auto it = MG_Diligent::g_BufferMap.find(pVAO->elementBuffer); - if (it != MG_Diligent::g_BufferMap.end() && it->second) { - pIndexBuffer = it->second; - } - } - - if (!pIndexBuffer) { - MG_Util::Debug::LogE("No valid index buffer bound for multi-draw"); - return; - } - - MG_Diligent::g_pContext->SetIndexBuffer( - pIndexBuffer, - 0, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - - std::vector drawItems; - drawItems.reserve(drawcount); - - Diligent::VALUE_TYPE indexType = ConvertGLTypeToDiligent(actualType); - Diligent::Uint32 indexSize = 0; - switch (indexType) { - case Diligent::VT_UINT16: indexSize = 2; break; - case Diligent::VT_UINT32: indexSize = 4; break; - default: - MG_Util::Debug::LogE("Unsupported index type for multi-draw: %d", actualType); - return; - } - - for (GLsizei i = 0; i < drawcount; i++) { - if (count[i] <= 0) continue; - Diligent::MultiDrawIndexedItem item; - item.NumIndices = static_cast(count[i]); - auto byteOffset = reinterpret_cast(indices[i]); - item.FirstIndexLocation = static_cast(byteOffset / indexSize); - item.BaseVertex = static_cast(basevertex[i]); - drawItems.push_back(item); - } - - if (drawItems.empty()) { - MG_Util::Debug::LogW("No valid draw items in multi-draw"); - return; - } - - Diligent::MultiDrawIndexedAttribs drawAttrs; - drawAttrs.DrawCount = static_cast(drawItems.size()); - drawAttrs.pDrawItems = drawItems.data(); - drawAttrs.IndexType = indexType; - drawAttrs.Flags = Diligent::DRAW_FLAG_VERIFY_ALL; - drawAttrs.NumInstances = 1; - drawAttrs.FirstInstanceLocation = 0; - - MG_Util::Debug::LogD("MultiDrawIndexedAttribs Dump:"); - MG_Util::Debug::LogD(" DrawCount: %u", drawAttrs.DrawCount); - MG_Util::Debug::LogD(" IndexType: %d", drawAttrs.IndexType); - MG_Util::Debug::LogD(" Flags: %u", drawAttrs.Flags); - MG_Util::Debug::LogD(" NumInstances: %u", drawAttrs.NumInstances); - MG_Util::Debug::LogD(" FirstInstanceLocation: %u", drawAttrs.FirstInstanceLocation); - - for (Diligent::Uint32 i = 0; i < drawAttrs.DrawCount; i++) { - const auto& item = drawAttrs.pDrawItems[i]; - MG_Util::Debug::LogD(" DrawItem[%u]:", i); - MG_Util::Debug::LogD(" NumIndices: %u", item.NumIndices); - MG_Util::Debug::LogD(" FirstIndexLocation: %u", item.FirstIndexLocation); - MG_Util::Debug::LogD(" BaseVertex: %d", item.BaseVertex); - } - - MG_Diligent::g_pContext->MultiDrawIndexed(drawAttrs); - MG_Util::Debug::LogD("MultiDrawIndexed completed."); - } -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.h b/MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.h deleted file mode 100644 index f6d1c39a..00000000 --- a/MG/MG_GL/Implementations/GL/Drawing/GL_Drawing.h +++ /dev/null @@ -1,20 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_DRAWING_H -#define MOBILEGL_GL_DRAWING_H - -namespace MG_GL::GL { - bool IsSamplerType(GLenum type); - Diligent::VALUE_TYPE ConvertGLTypeToDiligent(GLenum type); - void PrepareForDraw(GLenum mode, GLsizei* pCount, GLenum& type, const void*& pIndices); - - void DrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices); - void DrawArrays(GLenum mode, GLint first, GLsizei count); - void DrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex); - void MultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid *const *indices, GLsizei drawcount); - void MultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid *const *indices, GLsizei drawcount, const GLint *basevertex); -} - -#endif //MOBILEGL_GL_DRAWING_H diff --git a/MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.cpp b/MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.cpp deleted file mode 100644 index d75e0cba..00000000 --- a/MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.cpp +++ /dev/null @@ -1,606 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - void ReleaseFramebufferResources(MG_Diligent::GLFramebufferInfo& fbInfo) { -// if (fbInfo.pFramebuffer) { -// fbInfo.pFramebuffer->Release(); -// fbInfo.pFramebuffer = nullptr; -// } - -// if (fbInfo.pRenderPass) { -// fbInfo.pRenderPass->Release(); -// fbInfo.pRenderPass = nullptr; -// } - } - - void CreateRenderPassAndFramebuffer(GLuint framebuffer, - const FramebufferObject& fbo, - MG_Diligent::GLFramebufferInfo& fbInfo) { - Diligent::Uint32 width = 0; - Diligent::Uint32 height = 0; - - if (framebuffer == 0) { - if (MG_Diligent::g_pSwapChain) { - width = MG_Diligent::g_pSwapChain->GetDesc().Width; - height = MG_Diligent::g_pSwapChain->GetDesc().Height; - MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Using swap chain dimensions: %ux%u", width, height); - } else { - MG_Util::Debug::LogE("CreateRenderPassAndFramebuffer: Swap chain not initialized for default framebuffer"); - return; - } - } else if (!fbInfo.ColorRTVs.empty() && fbInfo.ColorRTVs[0]) { - const auto& desc = fbInfo.ColorRTVs[0]->GetTexture()->GetDesc(); - width = desc.Width; - height = desc.Height; - MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Using color attachment 0 for dimensions: %ux%u", width, height); - } else if (fbInfo.pDepthStencilRTV) { - const auto& desc = fbInfo.pDepthStencilRTV->GetTexture()->GetDesc(); - width = desc.Width; - height = desc.Height; - MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Using depth/stencil attachment for dimensions: %ux%u", width, height); - } else { - MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Failed to determine framebuffer dimensions. No attachments."); - return; - } - - if (width == 0 || height == 0) { - MG_Util::Debug::LogE("CreateRenderPassAndFramebuffer: Failed to determine framebuffer dimensions. Width or Height is 0."); - return; - } - -// Diligent::RenderPassDesc RPDesc; -// std::vector Attachments; -// std::vector Subpasses; -// std::vector ColorRefs; -// -// for (size_t i = 0; i < fbInfo.ColorRTVs.size(); ++i) { -// if (fbInfo.ColorRTVs[i]) { -// Diligent::RenderPassAttachmentDesc ColorAttachment; -// ColorAttachment.Format = framebuffer != 0 ? fbInfo.ColorRTVs[i]->GetDesc().Format: -// MG_Diligent::g_pSwapChain->GetDesc().ColorBufferFormat; -// ColorAttachment.SampleCount = 1; -// ColorAttachment.InitialState = Diligent::RESOURCE_STATE_RENDER_TARGET; -// ColorAttachment.FinalState = Diligent::RESOURCE_STATE_RENDER_TARGET; -// ColorAttachment.LoadOp = Diligent::ATTACHMENT_LOAD_OP_LOAD; -// ColorAttachment.StoreOp = Diligent::ATTACHMENT_STORE_OP_STORE; -// Attachments.push_back(ColorAttachment); -// -// Diligent::AttachmentReference ColorRef; -// ColorRef.AttachmentIndex = static_cast(Attachments.size() - 1); -// ColorRef.State = Diligent::RESOURCE_STATE_RENDER_TARGET; -// ColorRefs.push_back(ColorRef); -// MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Added color attachment %zu", i); -// } -// } - -// Diligent::AttachmentReference DepthRef; -// if (fbInfo.pDepthStencilRTV) { -// Diligent::RenderPassAttachmentDesc DepthAttachment; -// DepthAttachment.Format = fbInfo.DepthStencilFormat; -// DepthAttachment.SampleCount = 1; -// DepthAttachment.InitialState = Diligent::RESOURCE_STATE_DEPTH_WRITE; -// DepthAttachment.FinalState = Diligent::RESOURCE_STATE_DEPTH_WRITE; -// DepthAttachment.LoadOp = Diligent::ATTACHMENT_LOAD_OP_LOAD; -// DepthAttachment.StoreOp = Diligent::ATTACHMENT_STORE_OP_STORE; -// DepthAttachment.StencilLoadOp = Diligent::ATTACHMENT_LOAD_OP_LOAD; -// DepthAttachment.StencilStoreOp = Diligent::ATTACHMENT_STORE_OP_STORE; -// Attachments.push_back(DepthAttachment); -// -// DepthRef.AttachmentIndex = static_cast(Attachments.size() - 1); -// DepthRef.State = Diligent::RESOURCE_STATE_DEPTH_WRITE; -// MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Added depth/stencil attachment"); -// } - -// Diligent::SubpassDesc Subpass; -// Subpass.RenderTargetAttachmentCount = static_cast(ColorRefs.size()); -// Subpass.pRenderTargetAttachments = ColorRefs.empty() ? nullptr : ColorRefs.data(); -// Subpass.pDepthStencilAttachment = fbInfo.pDepthStencilRTV ? &DepthRef : nullptr; -// Subpasses.push_back(Subpass); -// -// RPDesc.AttachmentCount = static_cast(Attachments.size()); -// RPDesc.pAttachments = Attachments.empty() ? nullptr : Attachments.data(); -// RPDesc.SubpassCount = static_cast(Subpasses.size()); -// RPDesc.pSubpasses = Subpasses.data(); -// -// MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Creating RenderPass with %u attachments and %u subpasses.", -// RPDesc.AttachmentCount, RPDesc.SubpassCount); -// -// MG_Diligent::g_pDevice->CreateRenderPass(RPDesc, &fbInfo.pRenderPass); -// if (!fbInfo.pRenderPass) { -// MG_Util::Debug::LogE("CreateRenderPassAndFramebuffer: Failed to create RenderPass."); -// return; -// } -// MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: RenderPass created successfully."); - -// Diligent::FramebufferDesc FBDesc; -// FBDesc.Name = "Framebuffer"; -//// FBDesc.pRenderPass = fbInfo.pRenderPass; -// FBDesc.AttachmentCount = static_cast(Attachments.size()); -// -// std::vector FBAtachments(Attachments.size()); -// for (size_t i = 0; i < ColorRefs.size(); ++i) { -// if (i < fbInfo.ColorRTVs.size() && fbInfo.ColorRTVs[i]) { -// FBAtachments[i] = fbInfo.ColorRTVs[i]; -// } -// } -// -// if (fbInfo.pDepthStencilRTV) { -// FBAtachments[ColorRefs.size()] = fbInfo.pDepthStencilRTV; -// } - -// FBDesc.ppAttachments = FBAtachments.data(); -// FBDesc.Width = width; -// FBDesc.Height = height; -// FBDesc.NumArraySlices = 1; -// -// MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: FramebufferDesc Details:"); -// MG_Util::Debug::LogD(" Name: %s", FBDesc.Name ? FBDesc.Name : "N/A"); -// MG_Util::Debug::LogD(" pRenderPass: %p", FBDesc.pRenderPass); -// MG_Util::Debug::LogD(" AttachmentCount: %u", FBDesc.AttachmentCount); -// for (Diligent::Uint32 i = 0; i < FBDesc.AttachmentCount; ++i) { -// if (FBDesc.ppAttachments && FBDesc.ppAttachments[i]) { -// Diligent::ITexture* pTexture = FBDesc.ppAttachments[i]->GetTexture(); -// if (pTexture) { -// const auto& texDesc = pTexture->GetDesc(); -// MG_Util::Debug::LogD(" Attachment %u: Texture '%s', Dim: %ux%u", -// i, texDesc.Name ? texDesc.Name : "N/A", texDesc.Width, texDesc.Height); -// } else { -// MG_Util::Debug::LogW(" Attachment %u: TextureView's texture is nullptr", i); -// } -// } else if (!FBDesc.ppAttachments) { -// MG_Util::Debug::LogW(" FBDesc.ppAttachments is nullptr. Cannot access attachment %u.", i); -// } else { -// MG_Util::Debug::LogD(" Attachment %u: nullptr", i); -// } -// } -// MG_Util::Debug::LogD(" Width: %u", FBDesc.Width); -// MG_Util::Debug::LogD(" Height: %u", FBDesc.Height); -// MG_Util::Debug::LogD(" NumArraySlices: %u", FBDesc.NumArraySlices); -// MG_Util::Debug::LogD(" fbInfo.pFramebuffer: %p", fbInfo.pFramebuffer); - - fbInfo.ClearValues.clear(); - for (size_t i = 0; i < fbInfo.ColorRTVs.size(); ++i) { - Diligent::OptimizedClearValue clearValue; - clearValue.Color[0] = 0.0f; - clearValue.Color[1] = 0.0f; - clearValue.Color[2] = 0.0f; - clearValue.Color[3] = 1.0f; - fbInfo.ClearValues.push_back(clearValue); - } - - if (fbInfo.pDepthStencilRTV) { - Diligent::OptimizedClearValue clearValue; - clearValue.DepthStencil.Depth = 1.0f; - clearValue.DepthStencil.Stencil = 0; - fbInfo.ClearValues.push_back(clearValue); - } - -// MG_Diligent::g_pDevice->CreateFramebuffer(FBDesc, &fbInfo.pFramebuffer); -// if (!fbInfo.pFramebuffer) { -// MG_Util::Debug::LogE("CreateRenderPassAndFramebuffer: Failed to create Framebuffer."); -// return; -// } -// MG_Util::Debug::LogD("CreateRenderPassAndFramebuffer: Framebuffer created successfully."); - } - - void UpdateDefaultFramebuffer() { - auto it = MG_Diligent::g_FramebufferMap.find(0); - if (it == MG_Diligent::g_FramebufferMap.end()) { - MG_Diligent::g_FramebufferMap[0] = MG_Diligent::GLFramebufferInfo(); - } - - MG_Diligent::GLFramebufferInfo& fbInfo = MG_Diligent::g_FramebufferMap[0]; - - ReleaseFramebufferResources(fbInfo); - - if (MG_Diligent::g_pSwapChain) { - Diligent::ITextureView* pRTV = MG_Diligent::g_pSwapChain->GetCurrentBackBufferRTV(); - Diligent::ITextureView* pDSV = MG_Diligent::g_pSwapChain->GetDepthBufferDSV(); - - if (pRTV) { - fbInfo.ColorRTVs = { pRTV }; - } else { - MG_Util::Debug::LogE("Failed to get swap chain back buffer RTV"); - } - - if (pDSV) { - fbInfo.pDepthStencilRTV = pDSV; - fbInfo.DepthStencilFormat = MG_Diligent::g_pSwapChain->GetDesc().DepthBufferFormat; - fbInfo.HasDepthStencil = true; - } else { - MG_Util::Debug::LogE("Failed to get swap chain depth buffer DSV"); - } - - CreateRenderPassAndFramebuffer(0, FramebufferObject(), fbInfo); - } else { - MG_Util::Debug::LogE("Swap chain not initialized for default framebuffer"); - } - } - - void GenFramebuffers(GLsizei n, GLuint* framebuffers) { - MG_Util::Debug::LogD("glGenFramebuffers, n: %d, framebuffers: %p", n, framebuffers); - GLenum result = MG_State::CreateFramebuffers(n, framebuffers); - if (result == GL_NO_ERROR) { - for (GLsizei i = 0; i < n; ++i) { - MG_Diligent::GLFramebufferInfo fbInfo; - MG_Diligent::g_FramebufferMap[framebuffers[i]] = fbInfo; - } - return; - }; - MG_State::SetError(result); - MG_Util::Debug::LogE("Framebuffer generation failed: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void DeleteFramebuffers(GLsizei n, const GLuint* framebuffers) { - MG_Util::Debug::LogD("glDeleteFramebuffers, n: %d, framebuffers: %p", n, framebuffers); - for (GLsizei i = 0; i < n; ++i) { - GLenum result = MG_State::DeleteFramebuffer(framebuffers[i]); - if (result != GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Failed to delete framebuffer %u: %s", - framebuffers[i], MG_Util::Debug::GLEnumToString(result)); - } else { - GLuint fb = framebuffers[i]; - auto it = MG_Diligent::g_FramebufferMap.find(fb); - if (it != MG_Diligent::g_FramebufferMap.end()) { - MG_Diligent::GLFramebufferInfo& fbInfo = it->second; - -// if (fbInfo.pFramebuffer) { -// fbInfo.pFramebuffer->Release(); -// } - -// if (fbInfo.pRenderPass) { -// fbInfo.pRenderPass->Release(); -// } - - for (auto& rtv : fbInfo.ColorRTVs) { - if (rtv) rtv->Release(); - } - - if (fbInfo.pDepthStencilRTV) { - fbInfo.pDepthStencilRTV->Release(); - } - - MG_Diligent::g_FramebufferMap.erase(it); - } - } - } - } - - void BindFramebuffer(GLenum target, GLuint framebuffer) { - MG_Util::Debug::LogD("BindFramebuffer: Start. Target: %s, Framebuffer: %u", - MG_Util::Debug::GLEnumToString(target), framebuffer); - - GLenum result = MG_State::BindFramebuffer(target, framebuffer); - if (result == GL_NO_ERROR) { - MG_Util::Debug::LogD("BindFramebuffer: MG_State::BindFramebuffer successful."); - -// if (MG_Diligent::IsInRenderPass) { -// MG_Util::Debug::LogD("BindFramebuffer: Ending current render pass."); -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; -// MG_Util::Debug::LogD("BindFramebuffer: Current render pass ended."); -// } else { -// MG_Util::Debug::LogD("BindFramebuffer: No active render pass to end."); -// } - - - if (framebuffer == 0) { - MG_Util::Debug::LogD("BindFramebuffer: Framebuffer is 0 (default framebuffer). Updating default framebuffer."); - UpdateDefaultFramebuffer(); - MG_Util::Debug::LogD("BindFramebuffer: Default framebuffer updated."); - } - - - FramebufferObject* pFBO = MG_State_T::framebufferState->GetCurrentFBO(target); - MG_Util::Debug::LogD("BindFramebuffer: Retrieved FBO from state: %p", pFBO); - - auto it = MG_Diligent::g_FramebufferMap.find(framebuffer); - - if (it == MG_Diligent::g_FramebufferMap.end()) { - MG_Util::Debug::LogE("BindFramebuffer: Framebuffer %u not found in g_FramebufferMap. Aborting.", framebuffer); - return; - } - MG_Util::Debug::LogD("BindFramebuffer: Framebuffer %u found in g_FramebufferMap.", framebuffer); - - MG_Diligent::GLFramebufferInfo& fbInfo = it->second; - -// if (/*!fbInfo.pRenderPass || */!fbInfo.pFramebuffer) { -// MG_Util::Debug::LogD("BindFramebuffer: RenderPass or Framebuffer not yet created for framebuffer %u. Creating now.", framebuffer); -// CreateRenderPassAndFramebuffer(framebuffer, pFBO ? *pFBO : FramebufferObject(), fbInfo); -// MG_Util::Debug::LogD("BindFramebuffer: RenderPass and Framebuffer creation attempted for framebuffer %u.", framebuffer); -// } else { -// MG_Util::Debug::LogD("BindFramebuffer: RenderPass and Framebuffer already exist for framebuffer %u.", framebuffer); -// } - - MG_Util::Debug::LogD("BindFramebuffer: Setting render targets. ColorRTVs count: %zu, DepthStencilRTV: %p", - fbInfo.ColorRTVs.size(), fbInfo.pDepthStencilRTV); - - MG_Diligent::g_pContext->SetRenderTargets( - static_cast(fbInfo.ColorRTVs.size()), - fbInfo.ColorRTVs.empty() ? nullptr : fbInfo.ColorRTVs.data(), - fbInfo.pDepthStencilRTV, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - MG_Util::Debug::LogD("BindFramebuffer: SetRenderTargets called."); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Framebuffer bind error: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void AttachTexture2DToFramebuffer(GLuint fbo, GLuint texture, GLenum attachment, GLint level) { - auto it = MG_Diligent::g_FramebufferMap.find(fbo); - if (it == MG_Diligent::g_FramebufferMap.end()) { - MG_Util::Debug::LogE("Framebuffer %u not found in map", fbo); - return; - } - - MG_Diligent::GLFramebufferInfo& fbInfo = it->second; - -// if (fbInfo.pFramebuffer) { -// fbInfo.pFramebuffer->Release(); -// fbInfo.pFramebuffer = nullptr; -// MG_Util::Debug::LogD("Released existing framebuffer"); -// } -// if (fbInfo.pRenderPass) { -// fbInfo.pRenderPass->Release(); -// fbInfo.pRenderPass = nullptr; -// MG_Util::Debug::LogD("Released existing render pass"); -// } - - if (texture == 0) { - MG_Util::Debug::LogD("Unbinding attachment: %s", MG_Util::Debug::GLEnumToString(attachment)); - - if (attachment == GL_DEPTH_ATTACHMENT || - attachment == GL_STENCIL_ATTACHMENT || - attachment == GL_DEPTH_STENCIL_ATTACHMENT) { - if (fbInfo.pDepthStencilRTV) { - fbInfo.pDepthStencilRTV->Release(); - fbInfo.pDepthStencilRTV = nullptr; - MG_Util::Debug::LogD("Released depth/stencil attachment"); - } - } else { - size_t index = attachment - GL_COLOR_ATTACHMENT0; - if (index < fbInfo.ColorRTVs.size() && fbInfo.ColorRTVs[index]) { - fbInfo.ColorRTVs[index]->Release(); - fbInfo.ColorRTVs[index] = nullptr; - bool allNull = true; - for (const auto& rtv : fbInfo.ColorRTVs) { - if (rtv != nullptr) { - allNull = false; - break; - } - } - if (allNull) fbInfo.ColorRTVs.clear(); - MG_Util::Debug::LogD("Released color attachment %zu", index); - } - } - } else { - Diligent::ITexture* pTexture = MG_Diligent::g_TextureMap[texture]; - if (!pTexture) { - MG_Util::Debug::LogE("Texture %u exists in map but pointer is null", texture); - return; - } - const auto& texDesc = pTexture->GetDesc(); - MG_Util::Debug::LogD("Attaching texture: %s (size: %ux%u)", - texDesc.Name, - texDesc.Width, texDesc.Height); - Diligent::TextureViewDesc ViewDesc; - ViewDesc.TextureDim = Diligent::RESOURCE_DIM_TEX_2D; - ViewDesc.MostDetailedMip = level; - ViewDesc.NumMipLevels = 1; - - if (attachment == GL_DEPTH_ATTACHMENT || - attachment == GL_STENCIL_ATTACHMENT || - attachment == GL_DEPTH_STENCIL_ATTACHMENT) { - MG_Util::Debug::LogD("Creating depth/stencil attachment"); - - if (fbInfo.pDepthStencilRTV) { - fbInfo.pDepthStencilRTV->Release(); - fbInfo.pDepthStencilRTV = nullptr; - MG_Util::Debug::LogD("Released existing depth/stencil attachment"); - } - - ViewDesc.ViewType = Diligent::TEXTURE_VIEW_DEPTH_STENCIL; - fbInfo.DepthStencilFormat = texDesc.Format; - pTexture->CreateView(ViewDesc, &fbInfo.pDepthStencilRTV); - - if (fbInfo.pDepthStencilRTV) { - fbInfo.HasDepthStencil = true; - MG_Util::Debug::LogD("Created new depth/stencil RTV"); - } else { - MG_Util::Debug::LogE("Failed to create depth/stencil RTV"); - } - } else { - size_t index = attachment - GL_COLOR_ATTACHMENT0; - MG_Util::Debug::LogD("Creating color attachment at index %zu", index); - - if (index >= fbInfo.ColorRTVs.size()) { - fbInfo.ColorRTVs.resize(index + 1, nullptr); - MG_Util::Debug::LogD("Resized color attachments to %zu", fbInfo.ColorRTVs.size()); - } - - if (fbInfo.ColorRTVs[index]) { - fbInfo.ColorRTVs[index]->Release(); - fbInfo.ColorRTVs[index] = nullptr; - MG_Util::Debug::LogD("Released existing color attachment %zu", index); - } - - ViewDesc.ViewType = Diligent::TEXTURE_VIEW_RENDER_TARGET; - pTexture->CreateView(ViewDesc, &fbInfo.ColorRTVs[index]); - - if (fbInfo.ColorRTVs[index]) { - MG_Util::Debug::LogD("Created new color RTV at index %zu", index); - } else { - MG_Util::Debug::LogE("Failed to create color RTV at index %zu", index); - } - } - } - } - - void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, - GLuint texture, GLint level) { - MG_Util::Debug::LogD("glFramebufferTexture2D, target: %s, attach: %s, textarget: %s, tex: %u, level: %d", - MG_Util::Debug::GLEnumToString(target), - MG_Util::Debug::GLEnumToString(attachment), - MG_Util::Debug::GLEnumToString(textarget), - texture, - level); - - if (target == GL_FRAMEBUFFER) { - MG_Util::Debug::LogD("Got target == GL_FRAMEBUFFER, treating as GL_DRAW_FRAMEBUFFER"); - target = GL_DRAW_FRAMEBUFFER; - } - - MG_Util::Debug::LogD(" Current READ_FRAMEBUFFER binding: %u", MG_State_T::framebufferState->currentBindings_[GL_READ_FRAMEBUFFER]); - MG_Util::Debug::LogD(" Current DRAW_FRAMEBUFFER binding: %u", MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]); - - GLenum result = MG_State::AttachTexture2DToFramebuffer( - target, attachment, textarget, texture, level - ); - - if (result == GL_NO_ERROR) { -// if (target == GL_FRAMEBUFFER) { -// if (MG_State_T::framebufferState->currentBindings_[GL_READ_FRAMEBUFFER] == MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]) { -// MG_Util::Debug::LogD(" Target is GL_FRAMEBUFFER and READ/DRAW bindings are the same (%u). Applying to GL_DRAW_FRAMEBUFFER.", -// MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]); -// target = GL_DRAW_FRAMEBUFFER; -// } else { -// MG_Util::Debug::LogD(" Target is GL_FRAMEBUFFER and READ/DRAW bindings differ. Applying to both if non-zero."); -// if (MG_State_T::framebufferState->currentBindings_[GL_READ_FRAMEBUFFER] != 0) { -// MG_Util::Debug::LogD(" Attaching to READ_FRAMEBUFFER: %u", MG_State_T::framebufferState->currentBindings_[GL_READ_FRAMEBUFFER]); -// AttachTexture2DToFramebuffer(MG_State_T::framebufferState->currentBindings_[GL_READ_FRAMEBUFFER], -// texture, attachment, level); -// } -// if (MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER] != 0) { -// MG_Util::Debug::LogD(" Attaching to DRAW_FRAMEBUFFER: %u", MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]); -// AttachTexture2DToFramebuffer(MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER], -// texture, attachment, level); -// } -// MG_Util::Debug::LogD("FramebufferTexture2D completed successfully after separate READ/DRAW attachments."); -// return; -// } -// } - GLuint fboToModify = MG_State_T::framebufferState->currentBindings_[target]; - MG_Util::Debug::LogD(" Target is %s. Applying to bound FBO: %u", - MG_Util::Debug::GLEnumToString(target), fboToModify); - AttachTexture2DToFramebuffer(fboToModify, - texture, attachment, level); - - MG_Util::Debug::LogD("FramebufferTexture2D completed successfully for target %s (FBO %u).", MG_Util::Debug::GLEnumToString(target), fboToModify); - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Texture attachment failed: %s", MG_Util::Debug::GLEnumToString(result)); - } - - GLenum CheckFramebufferStatus(GLenum target) { - MG_Util::Debug::LogD("glCheckFramebufferStatus, target: %s", - MG_Util::Debug::GLEnumToString(target)); - GLenum result = MG_State::ValidateFramebufferCompleteness(target); - if (result >= GL_FRAMEBUFFER_COMPLETE) { - MG_Util::Debug::LogD("Framebuffer status: %s", MG_Util::Debug::GLEnumToString(result)); - return result; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Framebuffer incomplete: %s", - MG_Util::Debug::GLEnumToString(result)); - return result; - } - - void BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, - GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { -// if (MG_Diligent::IsInRenderPass) { -// MG_Util::Debug::LogD("Ending current render pass."); -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; -// MG_Util::Debug::LogD("Current render pass ended."); -// } - - // explicitly unbind the texture - MG_Diligent::g_pContext->SetRenderTargets(0, nullptr, nullptr, Diligent::RESOURCE_STATE_TRANSITION_MODE_NONE); - - GLuint readFB = MG_State_T::framebufferState->currentBindings_[GL_READ_FRAMEBUFFER]; - GLuint drawFB = MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]; - - MG_Diligent::GLFramebufferInfo* pSrcFB = nullptr; - MG_Diligent::GLFramebufferInfo* pDstFB = nullptr; - - if (readFB != 0) pSrcFB = &MG_Diligent::g_FramebufferMap[readFB]; - if (drawFB != 0) pDstFB = &MG_Diligent::g_FramebufferMap[drawFB]; - - if (!pSrcFB) pSrcFB = &MG_Diligent::g_FramebufferMap[0]; - if (!pDstFB) pDstFB = &MG_Diligent::g_FramebufferMap[0]; - - bool copyColor = (mask & GL_COLOR_BUFFER_BIT) != 0; - bool copyDepth = (mask & GL_DEPTH_BUFFER_BIT) != 0; - bool copyStencil = (mask & GL_STENCIL_BUFFER_BIT) != 0; - - if (copyColor && !pSrcFB->ColorRTVs.empty() && !pDstFB->ColorRTVs.empty()) { - for (size_t i = 0; i < pSrcFB->ColorRTVs.size() && i < pDstFB->ColorRTVs.size(); ++i) { - if (pSrcFB->ColorRTVs[i] && pDstFB->ColorRTVs[i]) { - Diligent::CopyTextureAttribs CopyAttribs; - CopyAttribs.pSrcTexture = pSrcFB->ColorRTVs[i]->GetTexture(); - CopyAttribs.pDstTexture = pDstFB->ColorRTVs[i]->GetTexture(); - CopyAttribs.SrcTextureTransitionMode = Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION; - CopyAttribs.DstTextureTransitionMode = Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION; - - Diligent::Box SrcBox; - SrcBox.MinX = srcX0; - SrcBox.MinY = srcY0; - SrcBox.MaxX = srcX1; - SrcBox.MaxY = srcY1; - CopyAttribs.pSrcBox = &SrcBox; - - CopyAttribs.DstX = dstX0; - CopyAttribs.DstY = dstY0; - - MG_Diligent::g_pContext->CopyTexture(CopyAttribs); - } - } - } - - if ((copyDepth || copyStencil) && pSrcFB->pDepthStencilRTV && pDstFB->pDepthStencilRTV) { - Diligent::CopyTextureAttribs CopyAttribs; - CopyAttribs.pSrcTexture = pSrcFB->pDepthStencilRTV->GetTexture(); - CopyAttribs.pDstTexture = pDstFB->pDepthStencilRTV->GetTexture(); - CopyAttribs.SrcTextureTransitionMode = Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION; - CopyAttribs.DstTextureTransitionMode = Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION; - - Diligent::Box SrcBox; - SrcBox.MinX = srcX0; - SrcBox.MinY = srcY0; - SrcBox.MaxX = srcX1; - SrcBox.MaxY = srcY1; - CopyAttribs.pSrcBox = &SrcBox; - - CopyAttribs.DstX = dstX0; - CopyAttribs.DstY = dstY0; - - MG_Diligent::g_pContext->CopyTexture(CopyAttribs); - } - } - - void DrawBuffer(GLenum buf) { - MG_Util::Debug::LogD("glDrawBuffer, buf: %s", MG_Util::Debug::GLEnumToString(buf)); - } - - void DrawBuffers(GLsizei n, const GLenum *bufs) { - MG_Util::Debug::LogD("glDrawBuffers, n: %d, bufs: [", n); - for (int i = 0; i < n; ++i) { - MG_Util::Debug::LogD("%s,", MG_Util::Debug::GLEnumToString(bufs[i])); - } - MG_Util::Debug::LogD("]"); - - } - - void ReadBuffer(GLenum buf) { - MG_Util::Debug::LogD("glReadBuffer, buf: %s", MG_Util::Debug::GLEnumToString(buf)); - - } -} diff --git a/MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.h b/MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.h deleted file mode 100644 index d3809022..00000000 --- a/MG/MG_GL/Implementations/GL/Framebuffer/GL_Framebuffer.h +++ /dev/null @@ -1,22 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_FRAMEBUFFER_H -#define MOBILEGL_GL_FRAMEBUFFER_H - -namespace MG_GL::GL { - void UpdateDefaultFramebuffer(); - - void GenFramebuffers(GLsizei n, GLuint* framebuffers); - void DeleteFramebuffers(GLsizei n, const GLuint* framebuffers); - void BindFramebuffer(GLenum target, GLuint framebuffer); - void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); - GLenum CheckFramebufferStatus(GLenum target); - void BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); - void DrawBuffer(GLenum buf); - void DrawBuffers(GLsizei n, const GLenum *bufs); - void ReadBuffer(GLenum mode); -} - -#endif //MOBILEGL_GL_FRAMEBUFFER_H diff --git a/MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.cpp b/MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.cpp deleted file mode 100644 index 2c409b3c..00000000 --- a/MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.cpp +++ /dev/null @@ -1,2799 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -#define DECLARE_GL_FUNCTION_STUB_HEAD(type,name,...) \ -MG_EXPORT type gl##name(__VA_ARGS__) { - -#define DECLARE_GL_FUNCTION_STUB_END(type,name,...) \ - MG_Util::Debug::LogW("Stub function: %s(...)", __FUNCTION__); \ - return (type)1; \ -} - -#define DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(type,name,...) \ - MG_Util::Debug::LogW("Stub function: %s(...)", __FUNCTION__); \ -} - -#define DECLARE_GL_FUNCTION_HEAD(type,name,...) \ -MG_EXPORT type gl##name(__VA_ARGS__) { - -#define DECLARE_GL_FUNCTION_END(type,name,...) \ - MG_Util::Debug::LogD("Implementing function: %s(...)", __FUNCTION__); \ - return MG_GL::GL::name(__VA_ARGS__); \ -} - -#define DECLARE_GL_FUNCTION_END_NO_RETURN(type,name,...) \ - MG_Util::Debug::LogD("Implementing function: %s(...)", __FUNCTION__); \ - MG_GL::GL::name(__VA_ARGS__); \ -} - -DECLARE_GL_FUNCTION_HEAD(const GLubyte*, GetStringi, GLenum name, GLuint index) DECLARE_GL_FUNCTION_END(const GLubyte*, GetStringi, name, index) -DECLARE_GL_FUNCTION_HEAD(const GLubyte*, GetString, GLenum name) DECLARE_GL_FUNCTION_END(const GLubyte*, GetString, name) -DECLARE_GL_FUNCTION_HEAD(void*, MapBuffer, GLenum target, GLenum access) DECLARE_GL_FUNCTION_END(void*, MapBuffer, target, access) -DECLARE_GL_FUNCTION_HEAD(void, ClearDepth, GLclampd depth) DECLARE_GL_FUNCTION_END_NO_RETURN(void, ClearDepth, depth) -DECLARE_GL_FUNCTION_HEAD(void, ActiveTexture, GLenum texture) DECLARE_GL_FUNCTION_END_NO_RETURN(void, ActiveTexture, texture) -DECLARE_GL_FUNCTION_HEAD(void, AttachShader, GLuint program, GLuint shader) DECLARE_GL_FUNCTION_END_NO_RETURN(void, AttachShader, program,shader) -DECLARE_GL_FUNCTION_HEAD(void, BindAttribLocation, GLuint program, GLuint index, const GLchar *name) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BindAttribLocation, program,index,name) -DECLARE_GL_FUNCTION_HEAD(void, BindBuffer, GLenum target, GLuint buffer) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BindBuffer, target,buffer) -DECLARE_GL_FUNCTION_HEAD(void, BindFramebuffer, GLenum target, GLuint framebuffer) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BindFramebuffer, target,framebuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindRenderbuffer, GLenum target, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindRenderbuffer, target,renderbuffer) -DECLARE_GL_FUNCTION_HEAD(void, BindTexture, GLenum target, GLuint texture) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BindTexture, target,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendColor, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendColor, red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendEquation, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendEquation, mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendEquationSeparate, GLenum modeRGB, GLenum modeAlpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendEquationSeparate, modeRGB,modeAlpha) -DECLARE_GL_FUNCTION_HEAD(void, BlendFunc, GLenum sfactor, GLenum dfactor) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BlendFunc, sfactor,dfactor) -DECLARE_GL_FUNCTION_HEAD(void, BlendFuncSeparate, GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BlendFuncSeparate, sfactorRGB,dfactorRGB,sfactorAlpha,dfactorAlpha) -DECLARE_GL_FUNCTION_HEAD(void, BufferData, GLenum target, GLsizeiptr size, const void *data, GLenum usage) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BufferData, target,size,data,usage) -DECLARE_GL_FUNCTION_HEAD(void, BufferSubData, GLenum target, GLintptr offset, GLsizeiptr size, const void *data) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BufferSubData, target,offset,size,data) -DECLARE_GL_FUNCTION_HEAD(GLenum, CheckFramebufferStatus, GLenum target) DECLARE_GL_FUNCTION_END(GLenum, CheckFramebufferStatus, target) -DECLARE_GL_FUNCTION_HEAD(void, Clear, GLbitfield mask) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Clear, mask) -DECLARE_GL_FUNCTION_HEAD(void, ClearColor, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) DECLARE_GL_FUNCTION_END_NO_RETURN(void, ClearColor, red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearDepthf, GLfloat d) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearDepthf, d) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearStencil, GLint s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearStencil, s) -DECLARE_GL_FUNCTION_HEAD(void, ColorMask, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) DECLARE_GL_FUNCTION_END_NO_RETURN(void, ColorMask, red,green,blue,alpha) -DECLARE_GL_FUNCTION_HEAD(void, CompileShader, GLuint shader) DECLARE_GL_FUNCTION_END_NO_RETURN(void, CompileShader, shader) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexImage2D, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexImage2D, target,level,internalformat,width,height,border,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexSubImage2D, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexSubImage2D, target,level,xoffset,yoffset,width,height,format,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTexImage2D, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTexImage2D, target,level,internalformat,x,y,width,height,border) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTexSubImage2D, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_END_NO_RETURN(void, CopyTexSubImage2D, target,level,xoffset,yoffset,x,y,width,height) -DECLARE_GL_FUNCTION_HEAD(GLuint, CreateProgram) DECLARE_GL_FUNCTION_END(GLuint, CreateProgram) -DECLARE_GL_FUNCTION_HEAD(GLuint, CreateShader, GLenum type) DECLARE_GL_FUNCTION_END(GLuint, CreateShader, type) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CullFace, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CullFace, mode) -DECLARE_GL_FUNCTION_HEAD(void, DeleteBuffers, GLsizei n, const GLuint *buffers) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DeleteBuffers, n,buffers) -DECLARE_GL_FUNCTION_HEAD(void, DeleteFramebuffers, GLsizei n, const GLuint *framebuffers) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DeleteFramebuffers, n,framebuffers) -DECLARE_GL_FUNCTION_HEAD(void, DeleteProgram, GLuint program) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DeleteProgram, program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteRenderbuffers, GLsizei n, const GLuint *renderbuffers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteRenderbuffers, n,renderbuffers) -DECLARE_GL_FUNCTION_HEAD(void, DeleteShader, GLuint shader) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DeleteShader, shader) -DECLARE_GL_FUNCTION_HEAD(void, DeleteTextures, GLsizei n, const GLuint *textures) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DeleteTextures, n,textures) -DECLARE_GL_FUNCTION_HEAD(void, DepthFunc, GLenum func) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DepthFunc, func) -DECLARE_GL_FUNCTION_HEAD(void, DepthMask, GLboolean flag) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DepthMask, flag) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangef, GLfloat n, GLfloat f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangef, n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DetachShader, GLuint program, GLuint shader) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DetachShader, program,shader) -DECLARE_GL_FUNCTION_HEAD(void, Disable, GLenum cap) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Disable, cap) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableVertexAttribArray, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableVertexAttribArray, index) -DECLARE_GL_FUNCTION_HEAD(void, DrawArrays, GLenum mode, GLint first, GLsizei count) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DrawArrays, mode,first,count) -DECLARE_GL_FUNCTION_HEAD(void, DrawElements, GLenum mode, GLsizei count, GLenum type, const void *indices) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DrawElements, mode,count,type,indices) -DECLARE_GL_FUNCTION_HEAD(void, Enable, GLenum cap) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Enable, cap) -DECLARE_GL_FUNCTION_HEAD(void, EnableVertexAttribArray, GLuint index) DECLARE_GL_FUNCTION_END_NO_RETURN(void, EnableVertexAttribArray, index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Finish) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Finish) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Flush) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Flush) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferRenderbuffer, GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferRenderbuffer, target,attachment,renderbuffertarget,renderbuffer) -DECLARE_GL_FUNCTION_HEAD(void, FramebufferTexture2D, GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) DECLARE_GL_FUNCTION_END_NO_RETURN(void, FramebufferTexture2D, target,attachment,textarget,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FrontFace, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FrontFace, mode) -DECLARE_GL_FUNCTION_HEAD(void, GenBuffers, GLsizei n, GLuint *buffers) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GenBuffers, n,buffers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenerateMipmap, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenerateMipmap, target) -DECLARE_GL_FUNCTION_HEAD(void, GenFramebuffers, GLsizei n, GLuint *framebuffers) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GenFramebuffers, n,framebuffers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenRenderbuffers, GLsizei n, GLuint *renderbuffers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenRenderbuffers, n,renderbuffers) -DECLARE_GL_FUNCTION_HEAD(void, GenTextures, GLsizei n, GLuint *textures) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GenTextures, n,textures) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveAttrib, GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveAttrib, program,index,bufSize,length,size,type,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveUniform, GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveUniform, program,index,bufSize,length,size,type,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetAttachedShaders, GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetAttachedShaders, program,maxCount,count,shaders) -DECLARE_GL_FUNCTION_HEAD(GLint, GetAttribLocation, GLuint program, const GLchar *name) DECLARE_GL_FUNCTION_END(GLint, GetAttribLocation, program,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBooleanv, GLenum pname, GLboolean *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBooleanv, pname,data) -DECLARE_GL_FUNCTION_HEAD(void, GetBufferParameteriv, GLenum target, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GetBufferParameteriv, target,pname,params) -DECLARE_GL_FUNCTION_HEAD(GLenum, GetError) DECLARE_GL_FUNCTION_END(GLenum, GetError) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFloatv, GLenum pname, GLfloat *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFloatv, pname,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFramebufferAttachmentParameteriv, GLenum target, GLenum attachment, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFramebufferAttachmentParameteriv, target,attachment,pname,params) -DECLARE_GL_FUNCTION_HEAD(void, GetIntegerv, GLenum pname, GLint *data) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GetIntegerv, pname,data) -DECLARE_GL_FUNCTION_HEAD(void, GetProgramiv, GLuint program, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GetProgramiv, program,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramInfoLog, GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramInfoLog, program,bufSize,length,infoLog) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetRenderbufferParameteriv, GLenum target, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetRenderbufferParameteriv, target,pname,params) -DECLARE_GL_FUNCTION_HEAD(void, GetShaderiv, GLuint shader, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GetShaderiv, shader,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetShaderInfoLog, GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetShaderInfoLog, shader,bufSize,length,infoLog) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetShaderPrecisionFormat, GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetShaderPrecisionFormat, shadertype,precisiontype,range,precision) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetShaderSource, GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetShaderSource, shader,bufSize,length,source) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexParameterfv, GLenum target, GLenum pname, GLfloat *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexParameterfv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexParameteriv, GLenum target, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexParameteriv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformfv, GLuint program, GLint location, GLfloat *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformfv, program,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformiv, GLuint program, GLint location, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformiv, program,location,params) -DECLARE_GL_FUNCTION_HEAD(GLint, GetUniformLocation, GLuint program, const GLchar *name) DECLARE_GL_FUNCTION_END(GLint, GetUniformLocation, program,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribfv, GLuint index, GLenum pname, GLfloat *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribfv, index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribiv, GLuint index, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribiv, index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribPointerv, GLuint index, GLenum pname, void **pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribPointerv, index,pname,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Hint, GLenum target, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Hint, target,mode) -DECLARE_GL_FUNCTION_HEAD(GLboolean, IsBuffer, GLuint buffer) DECLARE_GL_FUNCTION_END(GLboolean, IsBuffer, buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsEnabled, GLenum cap) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsEnabled, cap) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsFramebuffer, GLuint framebuffer) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsFramebuffer, framebuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsProgram, GLuint program) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsProgram, program) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsRenderbuffer, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsRenderbuffer, renderbuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsShader, GLuint shader) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsShader, shader) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsTexture, GLuint texture) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsTexture, texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LineWidth, GLfloat width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LineWidth, width) -DECLARE_GL_FUNCTION_HEAD(void, LinkProgram, GLuint program) DECLARE_GL_FUNCTION_END_NO_RETURN(void, LinkProgram, program) -DECLARE_GL_FUNCTION_HEAD(void, PixelStorei, GLenum pname, GLint param) DECLARE_GL_FUNCTION_END_NO_RETURN(void, PixelStorei, pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PolygonOffset, GLfloat factor, GLfloat units) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PolygonOffset, factor,units) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReadPixels, GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReadPixels, x,y,width,height,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReleaseShaderCompiler) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReleaseShaderCompiler) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RenderbufferStorage, GLenum target, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RenderbufferStorage, target,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SampleCoverage, GLfloat value, GLboolean invert) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SampleCoverage, value,invert) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Scissor, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Scissor, x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShaderBinary, GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShaderBinary, count,shaders,binaryformat,binary,length) -DECLARE_GL_FUNCTION_HEAD(void, ShaderSource, GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length) DECLARE_GL_FUNCTION_END_NO_RETURN(void, ShaderSource, shader,count,string,length) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilFunc, GLenum func, GLint ref, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilFunc, func,ref,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilFuncSeparate, GLenum face, GLenum func, GLint ref, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilFuncSeparate, face,func,ref,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilMask, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilMask, mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilMaskSeparate, GLenum face, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilMaskSeparate, face,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilOp, GLenum fail, GLenum zfail, GLenum zpass) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilOp, fail,zfail,zpass) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilOpSeparate, GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilOpSeparate, face,sfail,dpfail,dppass) -DECLARE_GL_FUNCTION_HEAD(void, TexImage2D, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels) DECLARE_GL_FUNCTION_END_NO_RETURN(void, TexImage2D, target,level,internalformat,width,height,border,format,type,pixels) -DECLARE_GL_FUNCTION_HEAD(void, TexParameterf, GLenum target, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_END_NO_RETURN(void, TexParameterf, target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexParameterfv, GLenum target, GLenum pname, const GLfloat *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexParameterfv, target,pname,params) -DECLARE_GL_FUNCTION_HEAD(void, TexParameteri, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_END_NO_RETURN(void, TexParameteri, target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexParameteriv, GLenum target, GLenum pname, const GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexParameteriv, target,pname,params) -DECLARE_GL_FUNCTION_HEAD(void, TexSubImage2D, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels) DECLARE_GL_FUNCTION_END_NO_RETURN(void, TexSubImage2D, target,level,xoffset,yoffset,width,height,format,type,pixels) -DECLARE_GL_FUNCTION_HEAD(void, Uniform1f, GLint location, GLfloat v0) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform1f, location,v0) -DECLARE_GL_FUNCTION_HEAD(void, Uniform1fv, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform1fv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform1i, GLint location, GLint v0) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform1i, location,v0) -DECLARE_GL_FUNCTION_HEAD(void, Uniform1iv, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform1iv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform2f, GLint location, GLfloat v0, GLfloat v1) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform2f, location,v0,v1) -DECLARE_GL_FUNCTION_HEAD(void, Uniform2fv, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform2fv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform2i, GLint location, GLint v0, GLint v1) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform2i, location,v0,v1) -DECLARE_GL_FUNCTION_HEAD(void, Uniform2iv, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform2iv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform3f, GLint location, GLfloat v0, GLfloat v1, GLfloat v2) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform3f, location,v0,v1,v2) -DECLARE_GL_FUNCTION_HEAD(void, Uniform3fv, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform3fv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform3i, GLint location, GLint v0, GLint v1, GLint v2) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform3i, location,v0,v1,v2) -DECLARE_GL_FUNCTION_HEAD(void, Uniform3iv, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform3iv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform4f, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform4f, location,v0,v1,v2,v3) -DECLARE_GL_FUNCTION_HEAD(void, Uniform4fv, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform4fv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform4i, GLint location, GLint v0, GLint v1, GLint v2, GLint v3) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform4i, location,v0,v1,v2,v3) -DECLARE_GL_FUNCTION_HEAD(void, Uniform4iv, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform4iv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix2fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix2fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix3fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix3fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix4fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix4fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UseProgram, GLuint program) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UseProgram, program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ValidateProgram, GLuint program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ValidateProgram, program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1f, GLuint index, GLfloat x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1f, index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1fv, GLuint index, const GLfloat *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1fv, index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2f, GLuint index, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2f, index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2fv, GLuint index, const GLfloat *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2fv, index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3f, GLuint index, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3f, index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3fv, GLuint index, const GLfloat *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3fv, index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4f, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4f, index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4fv, GLuint index, const GLfloat *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4fv, index,v) -DECLARE_GL_FUNCTION_HEAD(void, VertexAttribPointer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer) DECLARE_GL_FUNCTION_END_NO_RETURN(void, VertexAttribPointer, index,size,type,normalized,stride,pointer) -DECLARE_GL_FUNCTION_HEAD(void, Viewport, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Viewport, x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReadBuffer, GLenum src) DECLARE_GL_FUNCTION_END_NO_RETURN(void, ReadBuffer, src) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawRangeElements, GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawRangeElements, mode,start,end,count,type,indices) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexImage3D, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexImage3D, target,level,internalformat,width,height,depth,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexSubImage3D, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexSubImage3D, target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTexSubImage3D, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTexSubImage3D, target,level,xoffset,yoffset,zoffset,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexImage3D, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexImage3D, target,level,internalformat,width,height,depth,border,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexSubImage3D, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexSubImage3D, target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenQueries, GLsizei n, GLuint *ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenQueries, n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteQueries, GLsizei n, const GLuint *ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteQueries, n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsQuery, GLuint id) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsQuery, id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginQuery, GLenum target, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginQuery, target,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndQuery, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndQuery, target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryiv, GLenum target, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryiv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryObjectuiv, GLuint id, GLenum pname, GLuint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryObjectuiv, id,pname,params) -DECLARE_GL_FUNCTION_HEAD(GLboolean, UnmapBuffer, GLenum target) DECLARE_GL_FUNCTION_END(GLboolean, UnmapBuffer, target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBufferPointerv, GLenum target, GLenum pname, void **params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBufferPointerv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawBuffers, GLsizei n, const GLenum *bufs) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DrawBuffers, n,bufs) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix2x3fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix2x3fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix3x2fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix3x2fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix2x4fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix2x4fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix4x2fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix4x2fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix3x4fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix3x4fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, UniformMatrix4x3fv, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, UniformMatrix4x3fv, location,count,transpose,value) -DECLARE_GL_FUNCTION_HEAD(void, BlitFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BlitFramebuffer, srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter) -//DECLARE_GL_FUNCTION_STUB_HEAD(void, BlitFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlitFramebuffer, srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RenderbufferStorageMultisample, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RenderbufferStorageMultisample, target,samples,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTextureLayer, GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTextureLayer, target,attachment,texture,level,layer) -DECLARE_GL_FUNCTION_HEAD(void, FlushMappedBufferRange, GLenum target, GLintptr offset, GLsizeiptr length) DECLARE_GL_FUNCTION_END_NO_RETURN(void, FlushMappedBufferRange, target,offset,length) -DECLARE_GL_FUNCTION_HEAD(void, BindVertexArray, GLuint array) DECLARE_GL_FUNCTION_END_NO_RETURN(void, BindVertexArray, array) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteVertexArrays, GLsizei n, const GLuint *arrays) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteVertexArrays, n,arrays) -DECLARE_GL_FUNCTION_HEAD(void, GenVertexArrays, GLsizei n, GLuint *arrays) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GenVertexArrays, n,arrays) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsVertexArray, GLuint array) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsVertexArray, array) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetIntegeri_v, GLenum target, GLuint index, GLint *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetIntegeri_v, target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginTransformFeedback, GLenum primitiveMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginTransformFeedback, primitiveMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndTransformFeedback) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndTransformFeedback) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBufferRange, GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBufferRange, target,index,buffer,offset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBufferBase, GLenum target, GLuint index, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBufferBase, target,index,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TransformFeedbackVaryings, GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TransformFeedbackVaryings, program,count,varyings,bufferMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTransformFeedbackVarying, GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTransformFeedbackVarying, program,index,bufSize,length,size,type,name) -DECLARE_GL_FUNCTION_HEAD(void, VertexAttribIPointer, GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer) DECLARE_GL_FUNCTION_END_NO_RETURN(void, VertexAttribIPointer, index,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribIiv, GLuint index, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribIiv, index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribIuiv, GLuint index, GLenum pname, GLuint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribIuiv, index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4i, GLuint index, GLint x, GLint y, GLint z, GLint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4i, index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4ui, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4ui, index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4iv, GLuint index, const GLint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4iv, index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4uiv, GLuint index, const GLuint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4uiv, index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformuiv, GLuint program, GLint location, GLuint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformuiv, program,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetFragDataLocation, GLuint program, const GLchar *name) DECLARE_GL_FUNCTION_STUB_END(GLint, GetFragDataLocation, program,name) -DECLARE_GL_FUNCTION_HEAD(void, Uniform1ui, GLint location, GLuint v0) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform1ui, location,v0) -DECLARE_GL_FUNCTION_HEAD(void, Uniform2ui, GLint location, GLuint v0, GLuint v1) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform2ui, location,v0,v1) -DECLARE_GL_FUNCTION_HEAD(void, Uniform3ui, GLint location, GLuint v0, GLuint v1, GLuint v2) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform3ui, location,v0,v1,v2) -DECLARE_GL_FUNCTION_HEAD(void, Uniform4ui, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform4ui, location,v0,v1,v2,v3) -DECLARE_GL_FUNCTION_HEAD(void, Uniform1uiv, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform1uiv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform2uiv, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform2uiv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform3uiv, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform3uiv, location,count,value) -DECLARE_GL_FUNCTION_HEAD(void, Uniform4uiv, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_END_NO_RETURN(void, Uniform4uiv, location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearBufferiv, GLenum buffer, GLint drawbuffer, const GLint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearBufferiv, buffer,drawbuffer,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearBufferuiv, GLenum buffer, GLint drawbuffer, const GLuint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearBufferuiv, buffer,drawbuffer,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearBufferfv, GLenum buffer, GLint drawbuffer, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearBufferfv, buffer,drawbuffer,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearBufferfi, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearBufferfi, buffer,drawbuffer,depth,stencil) -DECLARE_GL_FUNCTION_HEAD(void, CopyBufferSubData, GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) DECLARE_GL_FUNCTION_END_NO_RETURN(void, CopyBufferSubData, readTarget,writeTarget,readOffset,writeOffset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformIndices, GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformIndices, program,uniformCount,uniformNames,uniformIndices) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveUniformsiv, GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveUniformsiv, program,uniformCount,uniformIndices,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GetUniformBlockIndex, GLuint program, const GLchar *uniformBlockName) DECLARE_GL_FUNCTION_STUB_END(GLuint, GetUniformBlockIndex, program,uniformBlockName) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveUniformBlockiv, GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveUniformBlockiv, program,uniformBlockIndex,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveUniformBlockName, GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveUniformBlockName, program,uniformBlockIndex,bufSize,length,uniformBlockName) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformBlockBinding, GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformBlockBinding, program,uniformBlockIndex,uniformBlockBinding) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawArraysInstanced, GLenum mode, GLint first, GLsizei count, GLsizei instancecount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawArraysInstanced, mode,first,count,instancecount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawElementsInstanced, GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawElementsInstanced, mode,count,type,indices,instancecount) -DECLARE_GL_FUNCTION_STUB_HEAD(GLsync, FenceSync, GLenum condition, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END(GLsync, FenceSync, condition,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsSync, GLsync sync) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsSync, sync) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteSync, GLsync sync) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteSync, sync) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, ClientWaitSync, GLsync sync, GLbitfield flags, GLuint64 timeout) DECLARE_GL_FUNCTION_STUB_END(GLenum, ClientWaitSync, sync,flags,timeout) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WaitSync, GLsync sync, GLbitfield flags, GLuint64 timeout) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WaitSync, sync,flags,timeout) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInteger64v, GLenum pname, GLint64 *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInteger64v, pname,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSynciv, GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSynciv, sync,pname,bufSize,length,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInteger64i_v, GLenum target, GLuint index, GLint64 *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInteger64i_v, target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBufferParameteri64v, GLenum target, GLenum pname, GLint64 *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBufferParameteri64v, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenSamplers, GLsizei count, GLuint *samplers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenSamplers, count,samplers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteSamplers, GLsizei count, const GLuint *samplers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteSamplers, count,samplers) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsSampler, GLuint sampler) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsSampler, sampler) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindSampler, GLuint unit, GLuint sampler) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindSampler, unit,sampler) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplerParameteri, GLuint sampler, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplerParameteri, sampler,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplerParameteriv, GLuint sampler, GLenum pname, const GLint *param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplerParameteriv, sampler,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplerParameterf, GLuint sampler, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplerParameterf, sampler,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplerParameterfv, GLuint sampler, GLenum pname, const GLfloat *param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplerParameterfv, sampler,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSamplerParameteriv, GLuint sampler, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSamplerParameteriv, sampler,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSamplerParameterfv, GLuint sampler, GLenum pname, GLfloat *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSamplerParameterfv, sampler,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribDivisor, GLuint index, GLuint divisor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribDivisor, index,divisor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindTransformFeedback, GLenum target, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindTransformFeedback, target,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteTransformFeedbacks, GLsizei n, const GLuint *ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteTransformFeedbacks, n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenTransformFeedbacks, GLsizei n, GLuint *ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenTransformFeedbacks, n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsTransformFeedback, GLuint id) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsTransformFeedback, id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PauseTransformFeedback) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PauseTransformFeedback) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResumeTransformFeedback) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResumeTransformFeedback) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramBinary, GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramBinary, program,bufSize,length,binaryFormat,binary) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramBinary, GLuint program, GLenum binaryFormat, const void *binary, GLsizei length) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramBinary, program,binaryFormat,binary,length) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramParameteri, GLuint program, GLenum pname, GLint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramParameteri, program,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateFramebuffer, GLenum target, GLsizei numAttachments, const GLenum *attachments) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateFramebuffer, target,numAttachments,attachments) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateSubFramebuffer, GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateSubFramebuffer, target,numAttachments,attachments,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorage2D, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorage2D, target,levels,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorage3D, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorage3D, target,levels,internalformat,width,height,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInternalformativ, GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInternalformativ, target,internalformat,pname,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DispatchCompute, GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DispatchCompute, num_groups_x,num_groups_y,num_groups_z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DispatchComputeIndirect, GLintptr indirect) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DispatchComputeIndirect, indirect) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawArraysIndirect, GLenum mode, const void *indirect) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawArraysIndirect, mode,indirect) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawElementsIndirect, GLenum mode, GLenum type, const void *indirect) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawElementsIndirect, mode,type,indirect) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferParameteri, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferParameteri, target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFramebufferParameteriv, GLenum target, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFramebufferParameteriv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramInterfaceiv, GLuint program, GLenum programInterface, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramInterfaceiv, program,programInterface,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GetProgramResourceIndex, GLuint program, GLenum programInterface, const GLchar *name) DECLARE_GL_FUNCTION_STUB_END(GLuint, GetProgramResourceIndex, program,programInterface,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramResourceName, GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramResourceName, program,programInterface,index,bufSize,length,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramResourceiv, GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramResourceiv, program,programInterface,index,propCount,props,bufSize,length,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetProgramResourceLocation, GLuint program, GLenum programInterface, const GLchar *name) DECLARE_GL_FUNCTION_STUB_END(GLint, GetProgramResourceLocation, program,programInterface,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UseProgramStages, GLuint pipeline, GLbitfield stages, GLuint program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UseProgramStages, pipeline,stages,program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ActiveShaderProgram, GLuint pipeline, GLuint program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ActiveShaderProgram, pipeline,program) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, CreateShaderProgramv, GLenum type, GLsizei count, const GLchar *const*strings) DECLARE_GL_FUNCTION_STUB_END(GLuint, CreateShaderProgramv, type,count,strings) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindProgramPipeline, GLuint pipeline) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindProgramPipeline, pipeline) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteProgramPipelines, GLsizei n, const GLuint *pipelines) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteProgramPipelines, n,pipelines) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenProgramPipelines, GLsizei n, GLuint *pipelines) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenProgramPipelines, n,pipelines) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsProgramPipeline, GLuint pipeline) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsProgramPipeline, pipeline) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramPipelineiv, GLuint pipeline, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramPipelineiv, pipeline,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1i, GLuint program, GLint location, GLint v0) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1i, program,location,v0) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2i, GLuint program, GLint location, GLint v0, GLint v1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2i, program,location,v0,v1) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3i, GLuint program, GLint location, GLint v0, GLint v1, GLint v2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3i, program,location,v0,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4i, GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4i, program,location,v0,v1,v2,v3) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1ui, GLuint program, GLint location, GLuint v0) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1ui, program,location,v0) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2ui, GLuint program, GLint location, GLuint v0, GLuint v1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2ui, program,location,v0,v1) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3ui, GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3ui, program,location,v0,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4ui, GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4ui, program,location,v0,v1,v2,v3) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1f, GLuint program, GLint location, GLfloat v0) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1f, program,location,v0) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2f, GLuint program, GLint location, GLfloat v0, GLfloat v1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2f, program,location,v0,v1) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3f, GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3f, program,location,v0,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4f, GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4f, program,location,v0,v1,v2,v3) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1iv, GLuint program, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1iv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2iv, GLuint program, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2iv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3iv, GLuint program, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3iv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4iv, GLuint program, GLint location, GLsizei count, const GLint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4iv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1uiv, GLuint program, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1uiv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2uiv, GLuint program, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2uiv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3uiv, GLuint program, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3uiv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4uiv, GLuint program, GLint location, GLsizei count, const GLuint *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4uiv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1fv, GLuint program, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1fv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2fv, GLuint program, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2fv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3fv, GLuint program, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3fv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4fv, GLuint program, GLint location, GLsizei count, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4fv, program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2x3fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2x3fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3x2fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3x2fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2x4fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2x4fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4x2fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4x2fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3x4fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3x4fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4x3fv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4x3fv, program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ValidateProgramPipeline, GLuint pipeline) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ValidateProgramPipeline, pipeline) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramPipelineInfoLog, GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramPipelineInfoLog, pipeline,bufSize,length,infoLog) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindImageTexture, GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindImageTexture, unit,texture,level,layered,layer,access,format) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBooleani_v, GLenum target, GLuint index, GLboolean *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBooleani_v, target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MemoryBarrier, GLbitfield barriers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MemoryBarrier, barriers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MemoryBarrierByRegion, GLbitfield barriers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MemoryBarrierByRegion, barriers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorage2DMultisample, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorage2DMultisample, target,samples,internalformat,width,height,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultisamplefv, GLenum pname, GLuint index, GLfloat *val) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultisamplefv, pname,index,val) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SampleMaski, GLuint maskNumber, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SampleMaski, maskNumber,mask) -DECLARE_GL_FUNCTION_HEAD(void, GetTexLevelParameteriv, GLenum target, GLint level, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_END_NO_RETURN(void, GetTexLevelParameteriv, target,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexLevelParameterfv, GLenum target, GLint level, GLenum pname, GLfloat *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexLevelParameterfv, target,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindVertexBuffer, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindVertexBuffer, bindingindex,buffer,offset,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribFormat, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribFormat, attribindex,size,type,normalized,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribIFormat, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribIFormat, attribindex,size,type,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribBinding, GLuint attribindex, GLuint bindingindex) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribBinding, attribindex,bindingindex) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexBindingDivisor, GLuint bindingindex, GLuint divisor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexBindingDivisor, bindingindex,divisor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendBarrier) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendBarrier) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyImageSubData, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyImageSubData, srcName,srcTarget,srcLevel,srcX,srcY,srcZ,dstName,dstTarget,dstLevel,dstX,dstY,dstZ,srcWidth,srcHeight,srcDepth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DebugMessageControl, GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DebugMessageControl, source,type,severity,count,ids,enabled) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DebugMessageInsert, GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DebugMessageInsert, source,type,id,severity,length,buf) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DebugMessageCallback, GLDEBUGPROC callback, const void *userParam) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DebugMessageCallback, callback,userParam) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GetDebugMessageLog, GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog) DECLARE_GL_FUNCTION_STUB_END(GLuint, GetDebugMessageLog, count,bufSize,sources,types,ids,severities,lengths,messageLog) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PushDebugGroup, GLenum source, GLuint id, GLsizei length, const GLchar *message) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PushDebugGroup, source,id,length,message) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PopDebugGroup) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PopDebugGroup) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ObjectLabel, GLenum identifier, GLuint name, GLsizei length, const GLchar *label) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ObjectLabel, identifier,name,length,label) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetObjectLabel, GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetObjectLabel, identifier,name,bufSize,length,label) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ObjectPtrLabel, const void *ptr, GLsizei length, const GLchar *label) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ObjectPtrLabel, ptr,length,label) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetObjectPtrLabel, const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetObjectPtrLabel, ptr,bufSize,length,label) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPointerv, GLenum pname, void **params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPointerv, pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Enablei, GLenum target, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Enablei, target,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Disablei, GLenum target, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Disablei, target,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendEquationi, GLuint buf, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendEquationi, buf,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendEquationSeparatei, GLuint buf, GLenum modeRGB, GLenum modeAlpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendEquationSeparatei, buf,modeRGB,modeAlpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendFunci, GLuint buf, GLenum src, GLenum dst) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendFunci, buf,src,dst) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendFuncSeparatei, GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendFuncSeparatei, buf,srcRGB,dstRGB,srcAlpha,dstAlpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorMaski, GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorMaski, index,r,g,b,a) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsEnabledi, GLenum target, GLuint index) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsEnabledi, target,index) -DECLARE_GL_FUNCTION_HEAD(void, DrawElementsBaseVertex, GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DrawElementsBaseVertex, mode,count,type,indices,basevertex) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawRangeElementsBaseVertex, GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawRangeElementsBaseVertex, mode,start,end,count,type,indices,basevertex) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawElementsInstancedBaseVertex, GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawElementsInstancedBaseVertex, mode,count,type,indices,instancecount,basevertex) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTexture, GLenum target, GLenum attachment, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTexture, target,attachment,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PrimitiveBoundingBox, GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PrimitiveBoundingBox, minX,minY,minZ,minW,maxX,maxY,maxZ,maxW) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, GetGraphicsResetStatus) DECLARE_GL_FUNCTION_STUB_END(GLenum, GetGraphicsResetStatus) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReadnPixels, GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReadnPixels, x,y,width,height,format,type,bufSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnUniformfv, GLuint program, GLint location, GLsizei bufSize, GLfloat *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnUniformfv, program,location,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnUniformiv, GLuint program, GLint location, GLsizei bufSize, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnUniformiv, program,location,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnUniformuiv, GLuint program, GLint location, GLsizei bufSize, GLuint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnUniformuiv, program,location,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MinSampleShading, GLfloat value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MinSampleShading, value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PatchParameteri, GLenum pname, GLint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PatchParameteri, pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexParameterIiv, GLenum target, GLenum pname, const GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexParameterIiv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexParameterIuiv, GLenum target, GLenum pname, const GLuint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexParameterIuiv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexParameterIiv, GLenum target, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexParameterIiv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexParameterIuiv, GLenum target, GLenum pname, GLuint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexParameterIuiv, target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplerParameterIiv, GLuint sampler, GLenum pname, const GLint *param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplerParameterIiv, sampler,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplerParameterIuiv, GLuint sampler, GLenum pname, const GLuint *param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplerParameterIuiv, sampler,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSamplerParameterIiv, GLuint sampler, GLenum pname, GLint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSamplerParameterIiv, sampler,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSamplerParameterIuiv, GLuint sampler, GLenum pname, GLuint *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSamplerParameterIuiv, sampler,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexBuffer, GLenum target, GLenum internalformat, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexBuffer, target,internalformat,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexBufferRange, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexBufferRange, target,internalformat,buffer,offset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorage3DMultisample, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorage3DMultisample, target,samples,internalformat,width,height,depth,fixedsamplelocations) -DECLARE_GL_FUNCTION_HEAD(void*, MapBufferRange, GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) DECLARE_GL_FUNCTION_END(void*, MapBufferRange, target,offset,length,access) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearIndex, GLfloat c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearIndex,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexMask, GLuint mask ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexMask,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AlphaFunc, GLenum func, GLclampf ref ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AlphaFunc,func,ref) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LogicOp, GLenum opcode ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LogicOp,opcode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointSize, GLfloat size ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointSize,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LineStipple, GLint factor, GLushort pattern ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LineStipple,factor,pattern) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PolygonMode, GLenum face, GLenum mode ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PolygonMode,face,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PolygonStipple, const GLubyte *mask ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PolygonStipple,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPolygonStipple, GLubyte *mask ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPolygonStipple,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EdgeFlag, GLboolean flag ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EdgeFlag,flag) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EdgeFlagv, const GLboolean *flag ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EdgeFlagv,flag) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClipPlane, GLenum plane, const GLdouble *equation ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClipPlane,plane,equation) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetClipPlane, GLenum plane, GLdouble *equation ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetClipPlane,plane,equation) -DECLARE_GL_FUNCTION_HEAD(void, DrawBuffer, GLenum mode ) DECLARE_GL_FUNCTION_END_NO_RETURN(void, DrawBuffer,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableClientState, GLenum cap ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableClientState,cap) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableClientState, GLenum cap ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableClientState,cap) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetDoublev, GLenum pname, GLdouble *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetDoublev,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PushAttrib, GLbitfield mask ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PushAttrib,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PopAttrib) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PopAttrib) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PushClientAttrib, GLbitfield mask ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PushClientAttrib,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PopClientAttrib) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PopClientAttrib) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, RenderMode, GLenum mode) DECLARE_GL_FUNCTION_STUB_END(GLint, RenderMode,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRange, GLclampd near_val, GLclampd far_val ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRange, near_val, far_val) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearAccum, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearAccum,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Accum, GLenum op, GLfloat value ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Accum,op,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMode, GLenum mode ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMode,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Ortho, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Ortho,left,right,bottom,top,near_val,far_val) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Frustum, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Frustum,left,right,bottom,top,near_val,far_val) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PushMatrix) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PushMatrix) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PopMatrix) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PopMatrix) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadIdentity) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadIdentity) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadMatrixd, const GLdouble *m ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadMatrixd,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadMatrixf, const GLfloat *m ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadMatrixf,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultMatrixd, const GLdouble *m ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultMatrixd,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultMatrixf, const GLfloat *m ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultMatrixf,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rotated, GLdouble ane, GLdouble x, GLdouble y, GLdouble z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rotated,ane,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rotatef, GLfloat ane, GLfloat x, GLfloat y, GLfloat z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rotatef,ane,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Scaled, GLdouble x, GLdouble y, GLdouble z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Scaled,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Scalef, GLfloat x, GLfloat y, GLfloat z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Scalef,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Translated, GLdouble x, GLdouble y, GLdouble z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Translated,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Translatef, GLfloat x, GLfloat y, GLfloat z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Translatef,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsList, GLuint list ) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsList,list) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteLists, GLuint list, GLsizei range ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteLists,list,range) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GenLists, GLsizei range ) DECLARE_GL_FUNCTION_STUB_END(GLuint, GenLists,range) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NewList, GLuint list, GLenum mode ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NewList,list,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndList) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndList) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CallList, GLuint list ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CallList,list) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CallLists, GLsizei n, GLenum type,const GLvoid* lists ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CallLists,n,type,lists) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ListBase, GLuint base ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ListBase,base) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Begin, GLenum mode ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Begin,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, End) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, End) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2d, GLdouble x, GLdouble y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2d,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2f, GLfloat x, GLfloat y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2f,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2i, GLint x, GLint y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2i,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2s, GLshort x, GLshort y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2s,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3d, GLdouble x, GLdouble y, GLdouble z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3d,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3f, GLfloat x, GLfloat y, GLfloat z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3f,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3i, GLint x, GLint y, GLint z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3i,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3s, GLshort x, GLshort y, GLshort z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3s,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4d, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4d,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4f, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4f,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4i, GLint x, GLint y, GLint z, GLint w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4i,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4s, GLshort x, GLshort y, GLshort z, GLshort w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4s,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3b, GLbyte nx, GLbyte ny, GLbyte nz ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3b,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3d, GLdouble nx, GLdouble ny, GLdouble nz ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3d,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3f, GLfloat nx, GLfloat ny, GLfloat nz ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3f,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3i, GLint nx, GLint ny, GLint nz ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3i,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3s, GLshort nx, GLshort ny, GLshort nz ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3s,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3bv, const GLbyte *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3bv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexd, GLdouble c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexd,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexf, GLfloat c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexf,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexi, GLint c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexi,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexs, GLshort c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexs,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexub, GLubyte c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexub,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexdv, const GLdouble *c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexdv,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexfv, const GLfloat *c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexfv,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexiv, const GLint *c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexiv,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexsv, const GLshort *c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexsv,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Indexubv, const GLubyte *c ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Indexubv,c) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3b, GLbyte red, GLbyte green, GLbyte blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3b,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3d, GLdouble red, GLdouble green, GLdouble blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3d,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3f, GLfloat red, GLfloat green, GLfloat blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3f,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3i, GLint red, GLint green, GLint blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3i,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3s, GLshort red, GLshort green, GLshort blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3s,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3ub, GLubyte red, GLubyte green, GLubyte blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3ub,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3ui, GLuint red, GLuint green, GLuint blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3ui,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3us, GLushort red, GLushort green, GLushort blue ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3us,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4b, GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4b,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4d, GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4d,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4f, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4f,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4i, GLint red, GLint green, GLint blue, GLint alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4i,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4s, GLshort red, GLshort green, GLshort blue, GLshort alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4s,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4ub, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4ub,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4ui, GLuint red, GLuint green, GLuint blue, GLuint alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4ui,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4us, GLushort red, GLushort green, GLushort blue, GLushort alpha ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4us,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3bv, const GLbyte *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3bv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3ubv, const GLubyte *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3ubv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3uiv, const GLuint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3uiv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3usv, const GLushort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3usv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4bv, const GLbyte *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4bv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4ubv, const GLubyte *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4ubv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4uiv, const GLuint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4uiv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4usv, const GLushort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4usv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1d, GLdouble s ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1d,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1f, GLfloat s ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1f,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1i, GLint s ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1i,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1s, GLshort s ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1s,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2d, GLdouble s, GLdouble t ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2d,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2f, GLfloat s, GLfloat t ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2f,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2i, GLint s, GLint t ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2i,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2s, GLshort s, GLshort t ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2s,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3d, GLdouble s, GLdouble t, GLdouble r ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3d,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3f, GLfloat s, GLfloat t, GLfloat r ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3f,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3i, GLint s, GLint t, GLint r ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3i,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3s, GLshort s, GLshort t, GLshort r ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3s,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4d, GLdouble s, GLdouble t, GLdouble r, GLdouble q ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4d,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4f, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4f,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4i, GLint s, GLint t, GLint r, GLint q ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4i,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4s, GLshort s, GLshort t, GLshort r, GLshort q ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4s,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2d, GLdouble x, GLdouble y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2d,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2f, GLfloat x, GLfloat y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2f,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2i, GLint x, GLint y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2i,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2s, GLshort x, GLshort y ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2s,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3d, GLdouble x, GLdouble y, GLdouble z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3d,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3f, GLfloat x, GLfloat y, GLfloat z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3f,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3i, GLint x, GLint y, GLint z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3i,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3s, GLshort x, GLshort y, GLshort z ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3s,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4d, GLdouble x, GLdouble y, GLdouble z, GLdouble w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4d,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4f, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4f,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4i, GLint x, GLint y, GLint z, GLint w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4i,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4s, GLshort x, GLshort y, GLshort z, GLshort w ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4s,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4dv, const GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4fv, const GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4iv, const GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4sv, const GLshort *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rectd, GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rectd,x1,y1,x2,y2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rectf, GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rectf,x1,y1,x2,y2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Recti, GLint x1, GLint y1, GLint x2, GLint y2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Recti,x1,y1,x2,y2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rects, GLshort x1, GLshort y1, GLshort x2, GLshort y2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rects,x1,y1,x2,y2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rectdv, const GLdouble *v1, const GLdouble *v2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rectdv,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rectfv, const GLfloat *v1, const GLfloat *v2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rectfv,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rectiv, const GLint *v1, const GLint *v2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rectiv,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Rectsv, const GLshort *v1, const GLshort *v2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Rectsv,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexPointer, GLint size, GLenum type, GLsizei stride, const GLvoid* ptr ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexPointer,size,type,stride,ptr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalPointer, GLenum type, GLsizei stride,const GLvoid* ptr ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalPointer,type,stride,ptr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorPointer, GLint size, GLenum type, GLsizei stride, const GLvoid* ptr ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorPointer,size,type,stride,ptr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexPointer, GLenum type, GLsizei stride,const GLvoid* ptr ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexPointer,type,stride,ptr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordPointer, GLint size, GLenum type, GLsizei stride, const GLvoid* ptr ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordPointer,size,type,stride,ptr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EdgeFlagPointer, GLsizei stride, const GLvoid* ptr ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EdgeFlagPointer,stride,ptr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ArrayElement, GLint i ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ArrayElement,i) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InterleavedArrays, GLenum format, GLsizei stride,const GLvoid* pointer ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InterleavedArrays,format,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShadeModel, GLenum mode ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShadeModel,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Lightf, GLenum light, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Lightf,light,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Lighti, GLenum light, GLenum pname, GLint param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Lighti,light,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Lightfv, GLenum light, GLenum pname,const GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Lightfv,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Lightiv, GLenum light, GLenum pname,const GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Lightiv,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetLightfv, GLenum light, GLenum pname, GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetLightfv,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetLightiv, GLenum light, GLenum pname, GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetLightiv,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightModelf, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightModelf,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightModeli, GLenum pname, GLint param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightModeli,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightModelfv, GLenum pname, const GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightModelfv,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightModeliv, GLenum pname, const GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightModeliv,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Materialf, GLenum face, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Materialf,face,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Materiali, GLenum face, GLenum pname, GLint param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Materiali,face,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Materialfv, GLenum face, GLenum pname, const GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Materialfv,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Materialiv, GLenum face, GLenum pname, const GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Materialiv,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMaterialfv, GLenum face, GLenum pname, GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMaterialfv,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMaterialiv, GLenum face, GLenum pname, GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMaterialiv,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorMaterial, GLenum face, GLenum mode ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorMaterial,face,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelZoom, GLfloat xfactor, GLfloat yfactor ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelZoom,xfactor,yfactor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelStoref, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelStoref,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTransferf, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTransferf,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTransferi, GLenum pname, GLint param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTransferi,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelMapfv, GLenum map, GLsizei mapsize,const GLfloat *values ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelMapfv,map,mapsize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelMapuiv, GLenum map, GLsizei mapsize,const GLuint *values ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelMapuiv,map,mapsize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelMapusv, GLenum map, GLsizei mapsize,const GLushort *values ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelMapusv,map,mapsize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelMapfv, GLenum map, GLfloat *values ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelMapfv,map,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelMapuiv, GLenum map, GLuint *values ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelMapuiv,map,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelMapusv, GLenum map, GLushort *values ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelMapusv,map,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Bitmap, GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove,const GLubyte *bitmap ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Bitmap,width,height,xorig,yorig,xmove,ymove,bitmap) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawPixels, GLsizei width, GLsizei height, GLenum format, GLenum type,const GLvoid* pixels ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawPixels,width,height,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyPixels, GLint x, GLint y, GLsizei width, GLsizei height, GLenum type ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyPixels,x,y,width,height,type) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGend, GLenum coord, GLenum pname, GLdouble param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGend,coord,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGenf, GLenum coord, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGenf,coord,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGeni, GLenum coord, GLenum pname, GLint param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGeni,coord,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGendv, GLenum coord, GLenum pname, const GLdouble *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGendv,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGenfv, GLenum coord, GLenum pname, const GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGenfv,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGeniv, GLenum coord, GLenum pname, const GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGeniv,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexGendv, GLenum coord, GLenum pname, GLdouble *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexGendv,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexGenfv, GLenum coord, GLenum pname, GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexGenfv,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexGeniv, GLenum coord, GLenum pname, GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexGeniv,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexEnvf, GLenum target, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexEnvf,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexEnvi, GLenum target, GLenum pname, GLint param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexEnvi,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexEnvfv, GLenum target, GLenum pname, const GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexEnvfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexEnviv, GLenum target, GLenum pname, const GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexEnviv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexEnvfv, GLenum target, GLenum pname, GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexEnvfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexEnviv, GLenum target, GLenum pname, GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexEnviv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexImage1D, GLenum target, GLint level, GLint internalFormat, GLsizei width, GLint border, GLenum format, GLenum type,const GLvoid* pixels ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexImage1D,target,level,internalFormat,width,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexImage, GLenum target, GLint level, GLenum format, GLenum type, GLvoid* pixels ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexImage,target,level,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PrioritizeTextures, GLsizei n,const GLuint *textures,const GLclampf *priorities ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PrioritizeTextures,n,textures,priorities) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, AreTexturesResident, GLsizei n,const GLuint *textures, GLboolean *residences ) DECLARE_GL_FUNCTION_STUB_END(GLboolean, AreTexturesResident,n,textures,residences) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexSubImage1D, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid* pixels ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexSubImage1D,target,level,xoffset,width,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTexImage1D, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTexImage1D,target,level,internalformat,x,y,width,border) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTexSubImage1D, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTexSubImage1D,target,level,xoffset,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Map1d, GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Map1d,target,u1,u2,stride,order,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Map1f, GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Map1f,target,u1,u2,stride,order,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Map2d, GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder,const GLdouble *points ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Map2d,target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Map2f, GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,const GLfloat *points ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Map2f,target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapdv, GLenum target, GLenum query, GLdouble *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapdv,target,query,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapfv, GLenum target, GLenum query, GLfloat *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapfv,target,query,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapiv, GLenum target, GLenum query, GLint *v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapiv,target,query,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord1d, GLdouble u ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord1d,u) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord1f, GLfloat u ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord1f,u) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord1dv, const GLdouble *u ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord1dv,u) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord1fv, const GLfloat *u ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord1fv,u) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord2d, GLdouble u, GLdouble v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord2d,u,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord2f, GLfloat u, GLfloat v ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord2f,u,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord2dv, const GLdouble *u ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord2dv,u) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord2fv, const GLfloat *u ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord2fv,u) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapGrid1d, GLint un, GLdouble u1, GLdouble u2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapGrid1d,un,u1,u2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapGrid1f, GLint un, GLfloat u1, GLfloat u2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapGrid1f,un,u1,u2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapGrid2d, GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapGrid2d,un,u1,u2,vn,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapGrid2f, GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapGrid2f,un,u1,u2,vn,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalPoint1, GLint i ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalPoint1,i) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalPoint2, GLint i, GLint j ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalPoint2,i,j) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalMesh1, GLenum mode, GLint i1, GLint i2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalMesh1,mode,i1,i2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalMesh2, GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalMesh2,mode,i1,i2,j1,j2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Fogf, GLenum pname, GLfloat param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Fogf,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Fogi, GLenum pname, GLint param ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Fogi,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Fogfv, GLenum pname, const GLfloat *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Fogfv,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Fogiv, GLenum pname, const GLint *params ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Fogiv,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FeedbackBuffer, GLsizei size, GLenum type, GLfloat *buffer ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FeedbackBuffer,size,type,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PassThrough, GLfloat token ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PassThrough,token) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SelectBuffer, GLsizei size, GLuint *buffer ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SelectBuffer,size,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InitNames) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InitNames) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadName, GLuint name ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadName,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PushName, GLuint name ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PushName,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PopName) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PopName) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClampColor, GLenum target, GLenum clamp) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClampColor,target,clamp) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginConditionalRender, GLuint id, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginConditionalRender,id,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndConditionalRender,void ) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndConditionalRender) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1i, GLuint index, GLint x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1i,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2i, GLuint index, GLint x, GLint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2i,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3i, GLuint index, GLint x, GLint y, GLint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3i,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1ui, GLuint index, GLuint x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1ui,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2ui, GLuint index, GLuint x, GLuint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2ui,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3ui, GLuint index, GLuint x, GLuint y, GLuint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3ui,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1iv, GLuint index, const GLint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1iv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2iv, GLuint index, const GLint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2iv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3iv, GLuint index, const GLint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3iv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1uiv, GLuint index, const GLuint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1uiv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2uiv, GLuint index, const GLuint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2uiv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3uiv, GLuint index, const GLuint *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3uiv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4bv, GLuint index, const GLbyte *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4bv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4sv, GLuint index, const GLshort *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4sv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4ubv, GLuint index, const GLubyte *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4ubv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4usv, GLuint index, const GLushort *v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4usv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindFragDataLocation, GLuint program, GLuint color, const GLchar *name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindFragDataLocation,program,color,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTexture1D, GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTexture1D,target,attachment,textarget,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTexture3D, GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTexture3D,target,attachment,textarget,texture,level,zoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexImage1D, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexImage1D,target,level,internalformat,width,border,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexSubImage1D, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexSubImage1D,target,level,xoffset,width,format,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCompressedTexImage, GLenum target, GLint level, void* img) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCompressedTexImage,target,level,img) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClientActiveTexture, GLenum texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClientActiveTexture,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1d, GLenum target, GLdouble s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1d,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1dv, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1dv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1f, GLenum target, GLfloat s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1f,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1fv, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1fv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1i, GLenum target, GLint s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1i,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1iv, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1iv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1s, GLenum target, GLshort s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1s,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1sv, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1sv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2d, GLenum target, GLdouble s, GLdouble t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2d,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2dv, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2dv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2f, GLenum target, GLfloat s, GLfloat t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2f,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2fv, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2fv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2i, GLenum target, GLint s, GLint t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2i,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2iv, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2iv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2s, GLenum target, GLshort s, GLshort t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2s,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2sv, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2sv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3d, GLenum target, GLdouble s, GLdouble t, GLdouble r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3d,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3dv, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3dv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3f, GLenum target, GLfloat s, GLfloat t, GLfloat r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3f,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3fv, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3fv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3i, GLenum target, GLint s, GLint t, GLint r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3i,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3iv, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3iv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3s, GLenum target, GLshort s, GLshort t, GLshort r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3s,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3sv, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3sv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4d, GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4d,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4dv, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4dv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4f, GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4f,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4fv, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4fv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4i, GLenum target, GLint s, GLint t, GLint r, GLint q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4i,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4iv, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4iv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4s, GLenum target, GLshort s, GLshort t, GLshort r, GLshort q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4s,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4sv, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4sv,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadTransposeMatrixf,const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadTransposeMatrixf,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadTransposeMatrixd,const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadTransposeMatrixd,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultTransposeMatrixf,const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultTransposeMatrixf,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultTransposeMatrixd,const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultTransposeMatrixd,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArrays, GLenum mode, const GLint* first, const GLsizei* count, GLsizei drawcount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArrays,mode,first,count,drawcount) -DECLARE_GL_FUNCTION_HEAD(void, MultiDrawElements, GLenum mode, const GLsizei* count, GLenum type, const void* const*indices, GLsizei drawcount) DECLARE_GL_FUNCTION_END_NO_RETURN(void, MultiDrawElements,mode,count,type,indices,drawcount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterf, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterf,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterfv, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterfv,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameteri, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameteri,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameteriv, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameteriv,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordf, GLfloat coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordf,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordfv,const GLfloat* coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordfv,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordd, GLdouble coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordd,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoorddv,const GLdouble* coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoorddv,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordPointer, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordPointer,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3b, GLbyte red, GLbyte green, GLbyte blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3b,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3bv,const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3bv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3d, GLdouble red, GLdouble green, GLdouble blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3d,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3dv,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3f, GLfloat red, GLfloat green, GLfloat blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3f,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3fv,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3i, GLint red, GLint green, GLint blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3i,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3iv,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3s, GLshort red, GLshort green, GLshort blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3s,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3sv,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3ub, GLubyte red, GLubyte green, GLubyte blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3ub,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3ubv,const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3ubv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3ui, GLuint red, GLuint green, GLuint blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3ui,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3uiv,const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3uiv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3us, GLushort red, GLushort green, GLushort blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3us,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3usv,const GLushort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3usv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColorPointer, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColorPointer,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2d, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2d,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2dv,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2f, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2f,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2fv,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2i, GLint x, GLint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2i,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2iv,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2s, GLshort x, GLshort y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2s,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2sv,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3d, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3d,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3dv,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3dv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3f, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3f,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3fv,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3fv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3i, GLint x, GLint y, GLint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3i,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3iv,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3iv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3s, GLshort x, GLshort y, GLshort z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3s,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3sv,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3sv,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryObjectiv, GLuint id, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryObjectiv,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBufferSubData, GLenum target, GLintptr offset, GLsizeiptr size, void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBufferSubData,target,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribdv, GLuint index, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribdv,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1d, GLuint index, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1d,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1s, GLuint index, GLshort x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1s,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1sv, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1sv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2d, GLuint index, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2d,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2s, GLuint index, GLshort x, GLshort y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2s,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2sv, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2sv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3d, GLuint index, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3d,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3s, GLuint index, GLshort x, GLshort y, GLshort z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3s,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3sv, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3sv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4Nbv, GLuint index, const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4Nbv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4Niv, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4Niv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4Nsv, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4Nsv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4Nub, GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4Nub,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4Nubv, GLuint index, const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4Nubv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4Nuiv, GLuint index, const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4Nuiv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4Nusv, GLuint index, const GLushort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4Nusv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4bv, GLuint index, const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4bv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4d, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4d,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4iv, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4iv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4s, GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4s,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4sv, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4sv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4ubv, GLuint index, const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4ubv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4uiv, GLuint index, const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4uiv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4usv, GLuint index, const GLushort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4usv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PrimitiveRestartIndex, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PrimitiveRestartIndex,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveUniformName, GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformName) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveUniformName,program,uniformIndex,bufSize,length,uniformName) -DECLARE_GL_FUNCTION_HEAD(void, MultiDrawElementsBaseVertex, GLenum mode, const GLsizei* count, GLenum type, const void* const*indices, GLsizei drawcount, const GLint* basevertex) DECLARE_GL_FUNCTION_END_NO_RETURN(void, MultiDrawElementsBaseVertex,mode,count,type,indices,drawcount,basevertex) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProvokingVertex, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProvokingVertex,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexImage2DMultisample, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexImage2DMultisample,target,samples,internalformat,width,height,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexImage3DMultisample, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexImage3DMultisample,target,samples,internalformat,width,height,depth,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindFragDataLocationIndexed, GLuint program, GLuint colorNumber, GLuint index, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindFragDataLocationIndexed,program,colorNumber,index,name) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetFragDataIndex, GLuint program, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END(GLint, GetFragDataIndex,program,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, QueryCounter, GLuint id, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, QueryCounter,id,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryObjecti64v, GLuint id, GLenum pname, GLint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryObjecti64v,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryObjectui64v, GLuint id, GLenum pname, GLuint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryObjectui64v,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP1ui, GLuint index, GLenum type, GLboolean normalized, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP1ui,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP1uiv, GLuint index, GLenum type, GLboolean normalized, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP1uiv,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP2ui, GLuint index, GLenum type, GLboolean normalized, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP2ui,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP2uiv, GLuint index, GLenum type, GLboolean normalized, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP2uiv,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP3ui, GLuint index, GLenum type, GLboolean normalized, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP3ui,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP3uiv, GLuint index, GLenum type, GLboolean normalized, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP3uiv,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP4ui, GLuint index, GLenum type, GLboolean normalized, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP4ui,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribP4uiv, GLuint index, GLenum type, GLboolean normalized, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribP4uiv,index,type,normalized,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexP2ui, GLenum type, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexP2ui,type,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexP2uiv, GLenum type, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexP2uiv,type,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexP3ui, GLenum type, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexP3ui,type,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexP3uiv, GLenum type, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexP3uiv,type,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexP4ui, GLenum type, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexP4ui,type,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexP4uiv, GLenum type, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexP4uiv,type,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP1ui, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP1ui,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP1uiv, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP1uiv,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP2ui, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP2ui,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP2uiv, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP2uiv,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP3ui, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP3ui,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP3uiv, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP3uiv,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP4ui, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP4ui,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordP4uiv, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordP4uiv,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP1ui, GLenum texture, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP1ui,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP1uiv, GLenum texture, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP1uiv,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP2ui, GLenum texture, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP2ui,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP2uiv, GLenum texture, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP2uiv,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP3ui, GLenum texture, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP3ui,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP3uiv, GLenum texture, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP3uiv,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP4ui, GLenum texture, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP4ui,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordP4uiv, GLenum texture, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordP4uiv,texture,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalP3ui, GLenum type, GLuint coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalP3ui,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalP3uiv, GLenum type, const GLuint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalP3uiv,type,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorP3ui, GLenum type, GLuint color) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorP3ui,type,color) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorP3uiv, GLenum type, const GLuint* color) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorP3uiv,type,color) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorP4ui, GLenum type, GLuint color) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorP4ui,type,color) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorP4uiv, GLenum type, const GLuint* color) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorP4uiv,type,color) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColorP3ui, GLenum type, GLuint color) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColorP3ui,type,color) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColorP3uiv, GLenum type, const GLuint* color) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColorP3uiv,type,color) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1d, GLint location, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1d,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2d, GLint location, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2d,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3d, GLint location, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3d,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4d, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4d,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1dv, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1dv,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2dv, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2dv,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3dv, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3dv,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4dv, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4dv,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix2dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix2dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix3dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix3dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix4dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix4dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix2x3dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix2x3dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix2x4dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix2x4dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix3x2dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix3x2dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix3x4dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix3x4dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix4x2dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix4x2dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformMatrix4x3dv, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformMatrix4x3dv,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformdv, GLuint program, GLint location, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformdv,program,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetSubroutineUniformLocation, GLuint program, GLenum shadertype, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END(GLint, GetSubroutineUniformLocation,program,shadertype,name) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GetSubroutineIndex, GLuint program, GLenum shadertype, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END(GLuint, GetSubroutineIndex,program,shadertype,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveSubroutineUniformiv, GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveSubroutineUniformiv,program,shadertype,index,pname,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveSubroutineUniformName, GLuint program, GLenum shadertype, GLuint index, GLsizei bufSize, GLsizei* length, GLchar* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveSubroutineUniformName,program,shadertype,index,bufSize,length,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveSubroutineName, GLuint program, GLenum shadertype, GLuint index, GLsizei bufSize, GLsizei* length, GLchar* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveSubroutineName,program,shadertype,index,bufSize,length,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformSubroutinesuiv, GLenum shadertype, GLsizei count, const GLuint* indices) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformSubroutinesuiv,shadertype,count,indices) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformSubroutineuiv, GLenum shadertype, GLint location, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformSubroutineuiv,shadertype,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramStageiv, GLuint program, GLenum shadertype, GLenum pname, GLint* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramStageiv,program,shadertype,pname,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PatchParameterfv, GLenum pname, const GLfloat* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PatchParameterfv,pname,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawTransformFeedback, GLenum mode, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawTransformFeedback,mode,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawTransformFeedbackStream, GLenum mode, GLuint id, GLuint stream) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawTransformFeedbackStream,mode,id,stream) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginQueryIndexed, GLenum target, GLuint index, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginQueryIndexed,target,index,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndQueryIndexed, GLenum target, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndQueryIndexed,target,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryIndexediv, GLenum target, GLuint index, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryIndexediv,target,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1d, GLuint program, GLint location, GLdouble v0) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1d,program,location,v0) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1dv, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1dv,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2d, GLuint program, GLint location, GLdouble v0, GLdouble v1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2d,program,location,v0,v1) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2dv, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2dv,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3d, GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3d,program,location,v0,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3dv, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3dv,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4d, GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4d,program,location,v0,v1,v2,v3) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4dv, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4dv,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2x3dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2x3dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3x2dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3x2dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2x4dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2x4dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4x2dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4x2dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3x4dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3x4dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4x3dv, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4x3dv,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1d, GLuint index, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1d,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2d, GLuint index, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2d,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3d, GLuint index, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3d,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4d, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4d,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4dv, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4dv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribLPointer, GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribLPointer,index,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribLdv, GLuint index, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribLdv,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ViewportArrayv, GLuint first, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ViewportArrayv,first,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ViewportIndexedf, GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ViewportIndexedf,index,x,y,w,h) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ViewportIndexedfv, GLuint index, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ViewportIndexedfv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ScissorArrayv, GLuint first, GLsizei count, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ScissorArrayv,first,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ScissorIndexed, GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ScissorIndexed,index,left,bottom,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ScissorIndexedv, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ScissorIndexedv,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangeArrayv, GLuint first, GLsizei count, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangeArrayv,first,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangeIndexed, GLuint index, GLdouble n, GLdouble f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangeIndexed,index,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFloati_v, GLenum target, GLuint index, GLfloat* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFloati_v,target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetDoublei_v, GLenum target, GLuint index, GLdouble* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetDoublei_v,target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawArraysInstancedBaseInstance, GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawArraysInstancedBaseInstance,mode,first,count,instancecount,baseinstance) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawElementsInstancedBaseInstance, GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei instancecount, GLuint baseinstance) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawElementsInstancedBaseInstance,mode,count,type,indices,instancecount,baseinstance) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawElementsInstancedBaseVertexBaseInstance, GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawElementsInstancedBaseVertexBaseInstance,mode,count,type,indices,instancecount,basevertex,baseinstance) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveAtomicCounterBufferiv, GLuint program, GLuint bufferIndex, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveAtomicCounterBufferiv,program,bufferIndex,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawTransformFeedbackInstanced, GLenum mode, GLuint id, GLsizei instancecount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawTransformFeedbackInstanced,mode,id,instancecount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawTransformFeedbackStreamInstanced, GLenum mode, GLuint id, GLuint stream, GLsizei instancecount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawTransformFeedbackStreamInstanced,mode,id,stream,instancecount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearBufferData, GLenum target, GLenum internalformat, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearBufferData,target,internalformat,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearBufferSubData, GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearBufferSubData,target,internalformat,offset,size,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInternalformati64v, GLenum target, GLenum internalformat, GLenum pname, GLsizei count, GLint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInternalformati64v,target,internalformat,pname,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateTexSubImage, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateTexSubImage,texture,level,xoffset,yoffset,zoffset,width,height,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateTexImage, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateTexImage,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateBufferSubData, GLuint buffer, GLintptr offset, GLsizeiptr length) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateBufferSubData,buffer,offset,length) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateBufferData, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateBufferData,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArraysIndirect, GLenum mode, const void* indirect, GLsizei drawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArraysIndirect,mode,indirect,drawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementsIndirect, GLenum mode, GLenum type, const void* indirect, GLsizei drawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementsIndirect,mode,type,indirect,drawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetProgramResourceLocationIndex, GLuint program, GLenum programInterface, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END(GLint, GetProgramResourceLocationIndex,program,programInterface,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShaderStorageBlockBinding, GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShaderStorageBlockBinding,program,storageBlockIndex,storageBlockBinding) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureView, GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureView,texture,target,origtexture,internalformat,minlevel,numlevels,minlayer,numlayers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribLFormat, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribLFormat,attribindex,size,type,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferStorage, GLenum target, GLsizeiptr size, const void* data, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferStorage,target,size,data,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearTexImage, GLuint texture, GLint level, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearTexImage,texture,level,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearTexSubImage, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearTexSubImage,texture,level,xoffset,yoffset,zoffset,width,height,depth,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBuffersBase, GLenum target, GLuint first, GLsizei count, const GLuint* buffers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBuffersBase,target,first,count,buffers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBuffersRange, GLenum target, GLuint first, GLsizei count, const GLuint* buffers, const GLintptr* offsets, const GLsizeiptr* sizes) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBuffersRange,target,first,count,buffers,offsets,sizes) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindTextures, GLuint first, GLsizei count, const GLuint* textures) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindTextures,first,count,textures) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindSamplers, GLuint first, GLsizei count, const GLuint* samplers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindSamplers,first,count,samplers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindImageTextures, GLuint first, GLsizei count, const GLuint* textures) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindImageTextures,first,count,textures) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindVertexBuffers, GLuint first, GLsizei count, const GLuint* buffers, const GLintptr* offsets, const GLsizei* strides) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindVertexBuffers,first,count,buffers,offsets,strides) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClipControl, GLenum origin, GLenum depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClipControl,origin,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateTransformFeedbacks, GLsizei n, GLuint* ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateTransformFeedbacks,n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TransformFeedbackBufferBase, GLuint xfb, GLuint index, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TransformFeedbackBufferBase,xfb,index,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TransformFeedbackBufferRange, GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TransformFeedbackBufferRange,xfb,index,buffer,offset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTransformFeedbackiv, GLuint xfb, GLenum pname, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTransformFeedbackiv,xfb,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTransformFeedbacki_v, GLuint xfb, GLenum pname, GLuint index, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTransformFeedbacki_v,xfb,pname,index,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTransformFeedbacki64_v, GLuint xfb, GLenum pname, GLuint index, GLint64* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTransformFeedbacki64_v,xfb,pname,index,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateBuffers, GLsizei n, GLuint* buffers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateBuffers,n,buffers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferStorage, GLuint buffer, GLsizeiptr size, const void* data, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferStorage,buffer,size,data,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferData, GLuint buffer, GLsizeiptr size, const void* data, GLenum usage) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferData,buffer,size,data,usage) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferSubData, GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferSubData,buffer,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyNamedBufferSubData, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyNamedBufferSubData,readBuffer,writeBuffer,readOffset,writeOffset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedBufferData, GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedBufferData,buffer,internalformat,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedBufferSubData, GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedBufferSubData,buffer,internalformat,offset,size,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, UnmapNamedBuffer, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END(GLboolean, UnmapNamedBuffer,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushMappedNamedBufferRange, GLuint buffer, GLintptr offset, GLsizeiptr length) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushMappedNamedBufferRange,buffer,offset,length) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferParameteriv, GLuint buffer, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferParameteriv,buffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferParameteri64v, GLuint buffer, GLenum pname, GLint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferParameteri64v,buffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferPointerv, GLuint buffer, GLenum pname, void* *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferPointerv,buffer,pname,*params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferSubData, GLuint buffer, GLintptr offset, GLsizeiptr size, void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferSubData,buffer,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateFramebuffers, GLsizei n, GLuint* framebuffers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateFramebuffers,n,framebuffers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferRenderbuffer, GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferRenderbuffer,framebuffer,attachment,renderbuffertarget,renderbuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferParameteri, GLuint framebuffer, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferParameteri,framebuffer,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTexture, GLuint framebuffer, GLenum attachment, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTexture,framebuffer,attachment,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTextureLayer, GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTextureLayer,framebuffer,attachment,texture,level,layer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferDrawBuffer, GLuint framebuffer, GLenum buf) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferDrawBuffer,framebuffer,buf) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferDrawBuffers, GLuint framebuffer, GLsizei n, const GLenum* bufs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferDrawBuffers,framebuffer,n,bufs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferReadBuffer, GLuint framebuffer, GLenum src) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferReadBuffer,framebuffer,src) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateNamedFramebufferData, GLuint framebuffer, GLsizei numAttachments, const GLenum* attachments) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateNamedFramebufferData,framebuffer,numAttachments,attachments) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InvalidateNamedFramebufferSubData, GLuint framebuffer, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InvalidateNamedFramebufferSubData,framebuffer,numAttachments,attachments,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedFramebufferiv, GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedFramebufferiv,framebuffer,buffer,drawbuffer,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedFramebufferuiv, GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedFramebufferuiv,framebuffer,buffer,drawbuffer,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedFramebufferfv, GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedFramebufferfv,framebuffer,buffer,drawbuffer,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedFramebufferfi, GLuint framebuffer, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedFramebufferfi,framebuffer,buffer,drawbuffer,depth,stencil) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlitNamedFramebuffer, GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlitNamedFramebuffer,readFramebuffer,drawFramebuffer,srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, CheckNamedFramebufferStatus, GLuint framebuffer, GLenum target) DECLARE_GL_FUNCTION_STUB_END(GLenum, CheckNamedFramebufferStatus,framebuffer,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedFramebufferParameteriv, GLuint framebuffer, GLenum pname, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedFramebufferParameteriv,framebuffer,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedFramebufferAttachmentParameteriv, GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedFramebufferAttachmentParameteriv,framebuffer,attachment,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateRenderbuffers, GLsizei n, GLuint* renderbuffers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateRenderbuffers,n,renderbuffers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedRenderbufferStorage, GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedRenderbufferStorage,renderbuffer,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedRenderbufferStorageMultisample, GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedRenderbufferStorageMultisample,renderbuffer,samples,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedRenderbufferParameteriv, GLuint renderbuffer, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedRenderbufferParameteriv,renderbuffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateTextures, GLenum target, GLsizei n, GLuint* textures) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateTextures,target,n,textures) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureBuffer, GLuint texture, GLenum internalformat, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureBuffer,texture,internalformat,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureBufferRange, GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureBufferRange,texture,internalformat,buffer,offset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage1D, GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage1D,texture,levels,internalformat,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage2D, GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage2D,texture,levels,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage3D, GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage3D,texture,levels,internalformat,width,height,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage2DMultisample, GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage2DMultisample,texture,samples,internalformat,width,height,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage3DMultisample, GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage3DMultisample,texture,samples,internalformat,width,height,depth,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureSubImage1D, GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureSubImage1D,texture,level,xoffset,width,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureSubImage2D, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureSubImage2D,texture,level,xoffset,yoffset,width,height,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureSubImage3D, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureSubImage3D,texture,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureSubImage1D, GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureSubImage1D,texture,level,xoffset,width,format,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureSubImage2D, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureSubImage2D,texture,level,xoffset,yoffset,width,height,format,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureSubImage3D, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureSubImage3D,texture,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureSubImage1D, GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureSubImage1D,texture,level,xoffset,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureSubImage2D, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureSubImage2D,texture,level,xoffset,yoffset,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureSubImage3D, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureSubImage3D,texture,level,xoffset,yoffset,zoffset,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterf, GLuint texture, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterf,texture,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterfv, GLuint texture, GLenum pname, const GLfloat* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterfv,texture,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameteri, GLuint texture, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameteri,texture,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterIiv, GLuint texture, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterIiv,texture,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterIuiv, GLuint texture, GLenum pname, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterIuiv,texture,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameteriv, GLuint texture, GLenum pname, const GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameteriv,texture,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenerateTextureMipmap, GLuint texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenerateTextureMipmap,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindTextureUnit, GLuint unit, GLuint texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindTextureUnit,unit,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureImage, GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureImage,texture,level,format,type,bufSize,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCompressedTextureImage, GLuint texture, GLint level, GLsizei bufSize, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCompressedTextureImage,texture,level,bufSize,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureLevelParameterfv, GLuint texture, GLint level, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureLevelParameterfv,texture,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureLevelParameteriv, GLuint texture, GLint level, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureLevelParameteriv,texture,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameterfv, GLuint texture, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameterfv,texture,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameterIiv, GLuint texture, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameterIiv,texture,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameterIuiv, GLuint texture, GLenum pname, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameterIuiv,texture,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameteriv, GLuint texture, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameteriv,texture,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateVertexArrays, GLsizei n, GLuint* arrays) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateVertexArrays,n,arrays) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableVertexArrayAttrib, GLuint vaobj, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableVertexArrayAttrib,vaobj,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableVertexArrayAttrib, GLuint vaobj, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableVertexArrayAttrib,vaobj,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayElementBuffer, GLuint vaobj, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayElementBuffer,vaobj,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexBuffer, GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexBuffer,vaobj,bindingindex,buffer,offset,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexBuffers, GLuint vaobj, GLuint first, GLsizei count, const GLuint* buffers, const GLintptr* offsets, const GLsizei* strides) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexBuffers,vaobj,first,count,buffers,offsets,strides) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayAttribBinding, GLuint vaobj, GLuint attribindex, GLuint bindingindex) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayAttribBinding,vaobj,attribindex,bindingindex) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayAttribFormat, GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayAttribFormat,vaobj,attribindex,size,type,normalized,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayAttribIFormat, GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayAttribIFormat,vaobj,attribindex,size,type,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayAttribLFormat, GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayAttribLFormat,vaobj,attribindex,size,type,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayBindingDivisor, GLuint vaobj, GLuint bindingindex, GLuint divisor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayBindingDivisor,vaobj,bindingindex,divisor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexArrayiv, GLuint vaobj, GLenum pname, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexArrayiv,vaobj,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexArrayIndexediv, GLuint vaobj, GLuint index, GLenum pname, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexArrayIndexediv,vaobj,index,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexArrayIndexed64iv, GLuint vaobj, GLuint index, GLenum pname, GLint64* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexArrayIndexed64iv,vaobj,index,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateSamplers, GLsizei n, GLuint* samplers) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateSamplers,n,samplers) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateProgramPipelines, GLsizei n, GLuint* pipelines) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateProgramPipelines,n,pipelines) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateQueries, GLenum target, GLsizei n, GLuint* ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateQueries,target,n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryBufferObjecti64v, GLuint id, GLuint buffer, GLenum pname, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryBufferObjecti64v,id,buffer,pname,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryBufferObjectiv, GLuint id, GLuint buffer, GLenum pname, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryBufferObjectiv,id,buffer,pname,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryBufferObjectui64v, GLuint id, GLuint buffer, GLenum pname, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryBufferObjectui64v,id,buffer,pname,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryBufferObjectuiv, GLuint id, GLuint buffer, GLenum pname, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryBufferObjectuiv,id,buffer,pname,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureSubImage, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureSubImage,texture,level,xoffset,yoffset,zoffset,width,height,depth,format,type,bufSize,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCompressedTextureSubImage, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCompressedTextureSubImage,texture,level,xoffset,yoffset,zoffset,width,height,depth,bufSize,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnCompressedTexImage, GLenum target, GLint lod, GLsizei bufSize, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnCompressedTexImage,target,lod,bufSize,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnTexImage, GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnTexImage,target,level,format,type,bufSize,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnUniformdv, GLuint program, GLint location, GLsizei bufSize, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnUniformdv,program,location,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMapdv, GLenum target, GLenum query, GLsizei bufSize, GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMapdv,target,query,bufSize,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMapfv, GLenum target, GLenum query, GLsizei bufSize, GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMapfv,target,query,bufSize,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMapiv, GLenum target, GLenum query, GLsizei bufSize, GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMapiv,target,query,bufSize,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPixelMapfv, GLenum map, GLsizei bufSize, GLfloat* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPixelMapfv,map,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPixelMapuiv, GLenum map, GLsizei bufSize, GLuint* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPixelMapuiv,map,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPixelMapusv, GLenum map, GLsizei bufSize, GLushort* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPixelMapusv,map,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPolygonStipple, GLsizei bufSize, GLubyte* pattern) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPolygonStipple,bufSize,pattern) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnColorTable, GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnColorTable,target,format,type,bufSize,table) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnConvolutionFilter, GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnConvolutionFilter,target,format,type,bufSize,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnSeparableFilter, GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, void* row, GLsizei columnBufSize, void* column, void* span) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnSeparableFilter,target,format,type,rowBufSize,row,columnBufSize,column,span) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnHistogram, GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnHistogram,target,reset,format,type,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMinmax, GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMinmax,target,reset,format,type,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureBarrier,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureBarrier,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SpecializeShader, GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SpecializeShader,shader,pEntryPoint,numSpecializationConstants,pConstantIndex,pConstantValue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArraysIndirectCount, GLenum mode, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArraysIndirectCount,mode,indirect,drawcount,maxdrawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementsIndirectCount, GLenum mode, GLenum type, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementsIndirectCount,mode,type,indirect,drawcount,maxdrawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PolygonOffsetClamp, GLfloat factor, GLfloat units, GLfloat clamp) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PolygonOffsetClamp,factor,units,clamp) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint64, GetTextureHandleARB, GLuint texture) DECLARE_GL_FUNCTION_STUB_END(GLuint64, GetTextureHandleARB,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint64, GetTextureSamplerHandleARB, GLuint texture, GLuint sampler) DECLARE_GL_FUNCTION_STUB_END(GLuint64, GetTextureSamplerHandleARB,texture,sampler) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeTextureHandleResidentARB, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeTextureHandleResidentARB,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeTextureHandleNonResidentARB, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeTextureHandleNonResidentARB,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint64, GetImageHandleARB, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format) DECLARE_GL_FUNCTION_STUB_END(GLuint64, GetImageHandleARB,texture,level,layered,layer,format) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeImageHandleResidentARB, GLuint64 handle, GLenum access) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeImageHandleResidentARB,handle,access) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeImageHandleNonResidentARB, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeImageHandleNonResidentARB,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformHandleui64ARB, GLint location, GLuint64 value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformHandleui64ARB,location,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformHandleui64vARB, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformHandleui64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformHandleui64ARB, GLuint program, GLint location, GLuint64 value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformHandleui64ARB,program,location,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformHandleui64vARB, GLuint program, GLint location, GLsizei count, const GLuint64* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformHandleui64vARB,program,location,count,values) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsTextureHandleResidentARB, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsTextureHandleResidentARB,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsImageHandleResidentARB, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsImageHandleResidentARB,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1ui64ARB, GLuint index, GLuint64EXT x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1ui64ARB,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1ui64vARB, GLuint index, const GLuint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1ui64vARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribLui64vARB, GLuint index, GLenum pname, GLuint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribLui64vARB,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLsync, CreateSyncFromCLeventARB,struct _cl_context *context, struct _cl_event *event, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END(GLsync, CreateSyncFromCLeventARB,context,event,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClampColorARB, GLenum target, GLenum clamp) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClampColorARB,target,clamp) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DispatchComputeGroupSizeARB, GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z, GLuint group_size_x, GLuint group_size_y, GLuint group_size_z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DispatchComputeGroupSizeARB,num_groups_x,num_groups_y,num_groups_z,group_size_x,group_size_y,group_size_z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramStringARB, GLenum target, GLenum format, GLsizei len, const void* string) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramStringARB,target,format,len,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindProgramARB, GLenum target, GLuint program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindProgramARB,target,program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteProgramsARB, GLsizei n, const GLuint* programs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteProgramsARB,n,programs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenProgramsARB, GLsizei n, GLuint* programs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenProgramsARB,n,programs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameter4dARB, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameter4dARB,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameter4dvARB, GLenum target, GLuint index, const GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameter4dvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameter4fARB, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameter4fARB,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameter4fvARB, GLenum target, GLuint index, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameter4fvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameter4dARB, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameter4dARB,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameter4dvARB, GLenum target, GLuint index, const GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameter4dvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameter4fARB, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameter4fARB,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameter4fvARB, GLenum target, GLuint index, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameter4fvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramEnvParameterdvARB, GLenum target, GLuint index, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramEnvParameterdvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramEnvParameterfvARB, GLenum target, GLuint index, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramEnvParameterfvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramLocalParameterdvARB, GLenum target, GLuint index, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramLocalParameterdvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramLocalParameterfvARB, GLenum target, GLuint index, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramLocalParameterfvARB,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramStringARB, GLenum target, GLenum pname, void* string) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramStringARB,target,pname,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTextureFaceARB, GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTextureFaceARB,target,attachment,texture,level,face) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SpecializeShaderARB, GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SpecializeShaderARB,shader,pEntryPoint,numSpecializationConstants,pConstantIndex,pConstantValue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1i64ARB, GLint location, GLint64 x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1i64ARB,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2i64ARB, GLint location, GLint64 x, GLint64 y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2i64ARB,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3i64ARB, GLint location, GLint64 x, GLint64 y, GLint64 z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3i64ARB,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4i64ARB, GLint location, GLint64 x, GLint64 y, GLint64 z, GLint64 w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4i64ARB,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1i64vARB, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1i64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2i64vARB, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2i64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3i64vARB, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3i64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4i64vARB, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4i64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1ui64ARB, GLint location, GLuint64 x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1ui64ARB,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2ui64ARB, GLint location, GLuint64 x, GLuint64 y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2ui64ARB,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3ui64ARB, GLint location, GLuint64 x, GLuint64 y, GLuint64 z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3ui64ARB,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4ui64ARB, GLint location, GLuint64 x, GLuint64 y, GLuint64 z, GLuint64 w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4ui64ARB,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1ui64vARB, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1ui64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2ui64vARB, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2ui64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3ui64vARB, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3ui64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4ui64vARB, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4ui64vARB,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformi64vARB, GLuint program, GLint location, GLint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformi64vARB,program,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformui64vARB, GLuint program, GLint location, GLuint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformui64vARB,program,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnUniformi64vARB, GLuint program, GLint location, GLsizei bufSize, GLint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnUniformi64vARB,program,location,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnUniformui64vARB, GLuint program, GLint location, GLsizei bufSize, GLuint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnUniformui64vARB,program,location,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1i64ARB, GLuint program, GLint location, GLint64 x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1i64ARB,program,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2i64ARB, GLuint program, GLint location, GLint64 x, GLint64 y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2i64ARB,program,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3i64ARB, GLuint program, GLint location, GLint64 x, GLint64 y, GLint64 z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3i64ARB,program,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4i64ARB, GLuint program, GLint location, GLint64 x, GLint64 y, GLint64 z, GLint64 w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4i64ARB,program,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1i64vARB, GLuint program, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1i64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2i64vARB, GLuint program, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2i64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3i64vARB, GLuint program, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3i64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4i64vARB, GLuint program, GLint location, GLsizei count, const GLint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4i64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1ui64ARB, GLuint program, GLint location, GLuint64 x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1ui64ARB,program,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2ui64ARB, GLuint program, GLint location, GLuint64 x, GLuint64 y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2ui64ARB,program,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3ui64ARB, GLuint program, GLint location, GLuint64 x, GLuint64 y, GLuint64 z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3ui64ARB,program,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4ui64ARB, GLuint program, GLint location, GLuint64 x, GLuint64 y, GLuint64 z, GLuint64 w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4ui64ARB,program,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1ui64vARB, GLuint program, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1ui64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2ui64vARB, GLuint program, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2ui64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3ui64vARB, GLuint program, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3ui64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4ui64vARB, GLuint program, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4ui64vARB,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorTable, GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* table) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorTable,target,internalformat,width,format,type,table) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorTableParameterfv, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorTableParameterfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorTableParameteriv, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorTableParameteriv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyColorTable, GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyColorTable,target,internalformat,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTable, GLenum target, GLenum format, GLenum type, void* table) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTable,target,format,type,table) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableParameterfv, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableParameterfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableParameteriv, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableParameteriv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorSubTable, GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorSubTable,target,start,count,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyColorSubTable, GLenum target, GLsizei start, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyColorSubTable,target,start,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionFilter1D, GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionFilter1D,target,internalformat,width,format,type,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionFilter2D, GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionFilter2D,target,internalformat,width,height,format,type,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameterf, GLenum target, GLenum pname, GLfloat params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameterf,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameterfv, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameterfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameteri, GLenum target, GLenum pname, GLint params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameteri,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameteriv, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameteriv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyConvolutionFilter1D, GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyConvolutionFilter1D,target,internalformat,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyConvolutionFilter2D, GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyConvolutionFilter2D,target,internalformat,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetConvolutionFilter, GLenum target, GLenum format, GLenum type, void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetConvolutionFilter,target,format,type,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetConvolutionParameterfv, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetConvolutionParameterfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetConvolutionParameteriv, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetConvolutionParameteriv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSeparableFilter, GLenum target, GLenum format, GLenum type, void* row, void* column, void* span) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSeparableFilter,target,format,type,row,column,span) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SeparableFilter2D, GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SeparableFilter2D,target,internalformat,width,height,format,type,row,column) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetHistogram, GLenum target, GLboolean reset, GLenum format, GLenum type, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetHistogram,target,reset,format,type,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetHistogramParameterfv, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetHistogramParameterfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetHistogramParameteriv, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetHistogramParameteriv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMinmax, GLenum target, GLboolean reset, GLenum format, GLenum type, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMinmax,target,reset,format,type,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMinmaxParameterfv, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMinmaxParameterfv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMinmaxParameteriv, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMinmaxParameteriv,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Histogram, GLenum target, GLsizei width, GLenum internalformat, GLboolean sink) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Histogram,target,width,internalformat,sink) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Minmax, GLenum target, GLenum internalformat, GLboolean sink) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Minmax,target,internalformat,sink) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResetHistogram, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResetHistogram,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResetMinmax, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResetMinmax,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArraysIndirectCountARB, GLenum mode, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArraysIndirectCountARB,mode,indirect,drawcount,maxdrawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementsIndirectCountARB, GLenum mode, GLenum type, const void* indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementsIndirectCountARB,mode,type,indirect,drawcount,maxdrawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CurrentPaletteMatrixARB, GLint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CurrentPaletteMatrixARB,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixIndexubvARB, GLint size, const GLubyte* indices) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixIndexubvARB,size,indices) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixIndexusvARB, GLint size, const GLushort* indices) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixIndexusvARB,size,indices) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixIndexuivARB, GLint size, const GLuint* indices) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixIndexuivARB,size,indices) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixIndexPointerARB, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixIndexPointerARB,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClientActiveTextureARB, GLenum texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClientActiveTextureARB,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1dARB, GLenum target, GLdouble s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1dARB,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1dvARB, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1dvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1fARB, GLenum target, GLfloat s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1fARB,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1fvARB, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1fvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1iARB, GLenum target, GLint s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1iARB,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1ivARB, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1ivARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1sARB, GLenum target, GLshort s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1sARB,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1svARB, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1svARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2dARB, GLenum target, GLdouble s, GLdouble t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2dARB,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2dvARB, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2dvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2fARB, GLenum target, GLfloat s, GLfloat t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2fARB,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2fvARB, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2fvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2iARB, GLenum target, GLint s, GLint t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2iARB,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2ivARB, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2ivARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2sARB, GLenum target, GLshort s, GLshort t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2sARB,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2svARB, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2svARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3dARB, GLenum target, GLdouble s, GLdouble t, GLdouble r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3dARB,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3dvARB, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3dvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3fARB, GLenum target, GLfloat s, GLfloat t, GLfloat r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3fARB,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3fvARB, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3fvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3iARB, GLenum target, GLint s, GLint t, GLint r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3iARB,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3ivARB, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3ivARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3sARB, GLenum target, GLshort s, GLshort t, GLshort r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3sARB,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3svARB, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3svARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4dARB, GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4dARB,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4dvARB, GLenum target, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4dvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4fARB, GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4fARB,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4fvARB, GLenum target, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4fvARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4iARB, GLenum target, GLint s, GLint t, GLint r, GLint q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4iARB,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4ivARB, GLenum target, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4ivARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4sARB, GLenum target, GLshort s, GLshort t, GLshort r, GLshort q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4sARB,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4svARB, GLenum target, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4svARB,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryObjectivARB, GLuint id, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryObjectivARB,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MaxShaderCompilerThreadsARB, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MaxShaderCompilerThreadsARB,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterfARB, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterfARB,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterfvARB, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterfvARB,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnTexImageARB, GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void* img) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnTexImageARB,target,level,format,type,bufSize,img) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnCompressedTexImageARB, GLenum target, GLint lod, GLsizei bufSize, void* img) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnCompressedTexImageARB,target,lod,bufSize,img) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnUniformdvARB, GLuint program, GLint location, GLsizei bufSize, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnUniformdvARB,program,location,bufSize,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMapdvARB, GLenum target, GLenum query, GLsizei bufSize, GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMapdvARB,target,query,bufSize,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMapfvARB, GLenum target, GLenum query, GLsizei bufSize, GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMapfvARB,target,query,bufSize,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMapivARB, GLenum target, GLenum query, GLsizei bufSize, GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMapivARB,target,query,bufSize,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPixelMapfvARB, GLenum map, GLsizei bufSize, GLfloat* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPixelMapfvARB,map,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPixelMapuivARB, GLenum map, GLsizei bufSize, GLuint* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPixelMapuivARB,map,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPixelMapusvARB, GLenum map, GLsizei bufSize, GLushort* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPixelMapusvARB,map,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnPolygonStippleARB, GLsizei bufSize, GLubyte* pattern) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnPolygonStippleARB,bufSize,pattern) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnColorTableARB, GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnColorTableARB,target,format,type,bufSize,table) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnConvolutionFilterARB, GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnConvolutionFilterARB,target,format,type,bufSize,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnSeparableFilterARB, GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, void* row, GLsizei columnBufSize, void* column, void* span) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnSeparableFilterARB,target,format,type,rowBufSize,row,columnBufSize,column,span) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnHistogramARB, GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnHistogramARB,target,reset,format,type,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetnMinmaxARB, GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetnMinmaxARB,target,reset,format,type,bufSize,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferSampleLocationsfvARB, GLenum target, GLuint start, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferSampleLocationsfvARB,target,start,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferSampleLocationsfvARB, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferSampleLocationsfvARB,framebuffer,start,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvaluateDepthValuesARB,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvaluateDepthValuesARB,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteObjectARB, GLhandleARB obj) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteObjectARB,obj) -DECLARE_GL_FUNCTION_STUB_HEAD(GLhandleARB, GetHandleARB, GLenum pname) DECLARE_GL_FUNCTION_STUB_END(GLhandleARB, GetHandleARB,pname) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DetachObjectARB, GLhandleARB containerObj, GLhandleARB attachedObj) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DetachObjectARB,containerObj,attachedObj) -DECLARE_GL_FUNCTION_STUB_HEAD(GLhandleARB, CreateShaderObjectARB, GLenum shaderType) DECLARE_GL_FUNCTION_STUB_END(GLhandleARB, CreateShaderObjectARB,shaderType) -DECLARE_GL_FUNCTION_STUB_HEAD(GLhandleARB, CreateProgramObjectARB,void) DECLARE_GL_FUNCTION_STUB_END(GLhandleARB, CreateProgramObjectARB,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AttachObjectARB, GLhandleARB containerObj, GLhandleARB obj) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AttachObjectARB,containerObj,obj) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UseProgramObjectARB, GLhandleARB programObj) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UseProgramObjectARB,programObj) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetObjectParameterfvARB, GLhandleARB obj, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetObjectParameterfvARB,obj,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetObjectParameterivARB, GLhandleARB obj, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetObjectParameterivARB,obj,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInfoLogARB, GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB* infoLog) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInfoLogARB,obj,maxLength,length,infoLog) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetAttachedObjectsARB, GLhandleARB containerObj, GLsizei maxCount, GLsizei* count, GLhandleARB* obj) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetAttachedObjectsARB,containerObj,maxCount,count,obj) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedStringARB, GLenum type, GLint namelen, const GLchar* name, GLint strinen, const GLchar* string) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedStringARB,type,namelen,name,strinen,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteNamedStringARB, GLint namelen, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteNamedStringARB,namelen,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompileShaderIncludeARB, GLuint shader, GLsizei count, const GLchar* const*path, const GLint* length) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompileShaderIncludeARB,shader,count,path,length) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsNamedStringARB, GLint namelen, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsNamedStringARB,namelen,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedStringARB, GLint namelen, const GLchar* name, GLsizei bufSize, GLint* strinen, GLchar* string) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedStringARB,namelen,name,bufSize,strinen,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedStringivARB, GLint namelen, const GLchar* name, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedStringivARB,namelen,name,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferPageCommitmentARB, GLenum target, GLintptr offset, GLsizeiptr size, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferPageCommitmentARB,target,offset,size,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferPageCommitmentEXT, GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferPageCommitmentEXT,buffer,offset,size,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferPageCommitmentARB, GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferPageCommitmentARB,buffer,offset,size,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexPageCommitmentARB, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexPageCommitmentARB,target,level,xoffset,yoffset,zoffset,width,height,depth,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexImage1DARB, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexImage1DARB,target,level,internalformat,width,border,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTexSubImage1DARB, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTexSubImage1DARB,target,level,xoffset,width,format,imageSize,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCompressedTexImageARB, GLenum target, GLint level, void* img) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCompressedTexImageARB,target,level,img) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadTransposeMatrixfARB,const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadTransposeMatrixfARB,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadTransposeMatrixdARB,const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadTransposeMatrixdARB,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultTransposeMatrixfARB,const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultTransposeMatrixfARB,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultTransposeMatrixdARB,const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultTransposeMatrixdARB,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightbvARB, GLint size, const GLbyte* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightbvARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightsvARB, GLint size, const GLshort* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightsvARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightivARB, GLint size, const GLint* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightivARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightfvARB, GLint size, const GLfloat* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightfvARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightdvARB, GLint size, const GLdouble* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightdvARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightubvARB, GLint size, const GLubyte* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightubvARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightusvARB, GLint size, const GLushort* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightusvARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightuivARB, GLint size, const GLuint* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightuivARB,size,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightPointerARB, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightPointerARB,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexBlendARB, GLint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexBlendARB,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBufferSubDataARB, GLenum target, GLintptrARB offset, GLsizeiptrARB size, void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBufferSubDataARB,target,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1dARB, GLuint index, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1dARB,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1dvARB, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1dvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1sARB, GLuint index, GLshort x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1sARB,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1svARB, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1svARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2dARB, GLuint index, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2dARB,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2dvARB, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2dvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2sARB, GLuint index, GLshort x, GLshort y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2sARB,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2svARB, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2svARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3dARB, GLuint index, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3dARB,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3dvARB, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3dvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3sARB, GLuint index, GLshort x, GLshort y, GLshort z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3sARB,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3svARB, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3svARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4NbvARB, GLuint index, const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4NbvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4NivARB, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4NivARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4NsvARB, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4NsvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4NubARB, GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4NubARB,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4NubvARB, GLuint index, const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4NubvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4NuivARB, GLuint index, const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4NuivARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4NusvARB, GLuint index, const GLushort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4NusvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4bvARB, GLuint index, const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4bvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4dARB, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4dARB,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4dvARB, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4dvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4ivARB, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4ivARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4sARB, GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4sARB,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4svARB, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4svARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4ubvARB, GLuint index, const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4ubvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4uivARB, GLuint index, const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4uivARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4usvARB, GLuint index, const GLushort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4usvARB,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribdvARB, GLuint index, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribdvARB,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangeArraydvNV, GLuint first, GLsizei count, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangeArraydvNV,first,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangeIndexeddNV, GLuint index, GLdouble n, GLdouble f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangeIndexeddNV,index,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2dARB, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2dARB,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2dvARB,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2dvARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2fARB, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2fARB,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2fvARB,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2fvARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2iARB, GLint x, GLint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2iARB,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2ivARB,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2ivARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2sARB, GLshort x, GLshort y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2sARB,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2svARB,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2svARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3dARB, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3dARB,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3dvARB,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3dvARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3fARB, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3fARB,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3fvARB,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3fvARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3iARB, GLint x, GLint y, GLint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3iARB,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3ivARB,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3ivARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3sARB, GLshort x, GLshort y, GLshort z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3sARB,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3svARB,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3svARB,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendBarrierKHR,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendBarrierKHR,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MaxShaderCompilerThreadsKHR, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MaxShaderCompilerThreadsKHR,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1bOES, GLenum texture, GLbyte s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1bOES,texture,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1bvOES, GLenum texture, const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1bvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2bOES, GLenum texture, GLbyte s, GLbyte t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2bOES,texture,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2bvOES, GLenum texture, const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2bvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3bOES, GLenum texture, GLbyte s, GLbyte t, GLbyte r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3bOES,texture,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3bvOES, GLenum texture, const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3bvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4bOES, GLenum texture, GLbyte s, GLbyte t, GLbyte r, GLbyte q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4bOES,texture,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4bvOES, GLenum texture, const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4bvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1bOES, GLbyte s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1bOES,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1bvOES,const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1bvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2bOES, GLbyte s, GLbyte t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2bOES,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2bvOES,const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2bvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3bOES, GLbyte s, GLbyte t, GLbyte r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3bOES,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3bvOES,const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3bvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4bOES, GLbyte s, GLbyte t, GLbyte r, GLbyte q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4bOES,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4bvOES,const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4bvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2bOES, GLbyte x, GLbyte y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2bOES,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2bvOES,const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2bvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3bOES, GLbyte x, GLbyte y, GLbyte z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3bOES,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3bvOES,const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3bvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4bOES, GLbyte x, GLbyte y, GLbyte z, GLbyte w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4bOES,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4bvOES,const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4bvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AlphaFuncxOES, GLenum func, GLfixed ref) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AlphaFuncxOES,func,ref) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearColorxOES, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearColorxOES,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearDepthxOES, GLfixed depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearDepthxOES,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClipPlanexOES, GLenum plane, const GLfixed* equation) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClipPlanexOES,plane,equation) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4xOES, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4xOES,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangexOES, GLfixed n, GLfixed f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangexOES,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogxOES, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogxOES,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogxvOES, GLenum pname, const GLfixed* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogxvOES,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FrustumxOES, GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FrustumxOES,l,r,b,t,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetClipPlanexOES, GLenum plane, GLfixed* equation) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetClipPlanexOES,plane,equation) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFixedvOES, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFixedvOES,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexEnvxvOES, GLenum target, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexEnvxvOES,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexParameterxvOES, GLenum target, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexParameterxvOES,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightModelxOES, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightModelxOES,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightModelxvOES, GLenum pname, const GLfixed* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightModelxvOES,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightxOES, GLenum light, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightxOES,light,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightxvOES, GLenum light, GLenum pname, const GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightxvOES,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LineWidthxOES, GLfixed width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LineWidthxOES,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadMatrixxOES,const GLfixed* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadMatrixxOES,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MaterialxOES, GLenum face, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MaterialxOES,face,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MaterialxvOES, GLenum face, GLenum pname, const GLfixed* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MaterialxvOES,face,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultMatrixxOES,const GLfixed* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultMatrixxOES,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4xOES, GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4xOES,texture,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3xOES, GLfixed nx, GLfixed ny, GLfixed nz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3xOES,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, OrthoxOES, GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, OrthoxOES,l,r,b,t,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterxvOES, GLenum pname, const GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterxvOES,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointSizexOES, GLfixed size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointSizexOES,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PolygonOffsetxOES, GLfixed factor, GLfixed units) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PolygonOffsetxOES,factor,units) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RotatexOES, GLfixed ane, GLfixed x, GLfixed y, GLfixed z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RotatexOES,ane,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ScalexOES, GLfixed x, GLfixed y, GLfixed z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ScalexOES,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexEnvxOES, GLenum target, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexEnvxOES,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexEnvxvOES, GLenum target, GLenum pname, const GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexEnvxvOES,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexParameterxOES, GLenum target, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexParameterxOES,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexParameterxvOES, GLenum target, GLenum pname, const GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexParameterxvOES,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TranslatexOES, GLfixed x, GLfixed y, GLfixed z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TranslatexOES,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AccumxOES, GLenum op, GLfixed value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AccumxOES,op,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BitmapxOES, GLsizei width, GLsizei height, GLfixed xorig, GLfixed yorig, GLfixed xmove, GLfixed ymove, const GLubyte* bitmap) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BitmapxOES,width,height,xorig,yorig,xmove,ymove,bitmap) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendColorxOES, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendColorxOES,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearAccumxOES, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearAccumxOES,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3xOES, GLfixed red, GLfixed green, GLfixed blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3xOES,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3xvOES,const GLfixed* components) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3xvOES,components) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4xvOES,const GLfixed* components) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4xvOES,components) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameterxOES, GLenum target, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameterxOES,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameterxvOES, GLenum target, GLenum pname, const GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameterxvOES,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord1xOES, GLfixed u) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord1xOES,u) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord1xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord1xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord2xOES, GLfixed u, GLfixed v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord2xOES,u,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalCoord2xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalCoord2xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FeedbackBufferxOES, GLsizei n, GLenum type, const GLfixed* buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FeedbackBufferxOES,n,type,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetConvolutionParameterxvOES, GLenum target, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetConvolutionParameterxvOES,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetHistogramParameterxvOES, GLenum target, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetHistogramParameterxvOES,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetLightxOES, GLenum light, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetLightxOES,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapxvOES, GLenum target, GLenum query, GLfixed* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapxvOES,target,query,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMaterialxOES, GLenum face, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMaterialxOES,face,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelMapxv, GLenum map, GLint size, GLfixed* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelMapxv,map,size,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexGenxvOES, GLenum coord, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexGenxvOES,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexLevelParameterxvOES, GLenum target, GLint level, GLenum pname, GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexLevelParameterxvOES,target,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexxOES, GLfixed component) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexxOES,component) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexxvOES,const GLfixed* component) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexxvOES,component) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadTransposeMatrixxOES,const GLfixed* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadTransposeMatrixxOES,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Map1xOES, GLenum target, GLfixed u1, GLfixed u2, GLint stride, GLint order, GLfixed points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Map1xOES,target,u1,u2,stride,order,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Map2xOES, GLenum target, GLfixed u1, GLfixed u2, GLint ustride, GLint uorder, GLfixed v1, GLfixed v2, GLint vstride, GLint vorder, GLfixed points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Map2xOES,target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapGrid1xOES, GLint n, GLfixed u1, GLfixed u2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapGrid1xOES,n,u1,u2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapGrid2xOES, GLint n, GLfixed u1, GLfixed u2, GLfixed v1, GLfixed v2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapGrid2xOES,n,u1,u2,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultTransposeMatrixxOES,const GLfixed* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultTransposeMatrixxOES,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1xOES, GLenum texture, GLfixed s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1xOES,texture,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1xvOES, GLenum texture, const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1xvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2xOES, GLenum texture, GLfixed s, GLfixed t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2xOES,texture,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2xvOES, GLenum texture, const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2xvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3xOES, GLenum texture, GLfixed s, GLfixed t, GLfixed r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3xOES,texture,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3xvOES, GLenum texture, const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3xvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4xvOES, GLenum texture, const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4xvOES,texture,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PassThroughxOES, GLfixed token) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PassThroughxOES,token) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelMapx, GLenum map, GLint size, const GLfixed* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelMapx,map,size,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelStorex, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelStorex,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTransferxOES, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTransferxOES,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelZoomxOES, GLfixed xfactor, GLfixed yfactor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelZoomxOES,xfactor,yfactor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PrioritizeTexturesxOES, GLsizei n, const GLuint* textures, const GLfixed* priorities) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PrioritizeTexturesxOES,n,textures,priorities) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2xOES, GLfixed x, GLfixed y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2xOES,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos2xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos2xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3xOES, GLfixed x, GLfixed y, GLfixed z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3xOES,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos3xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos3xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4xOES, GLfixed x, GLfixed y, GLfixed z, GLfixed w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4xOES,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterPos4xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterPos4xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RectxOES, GLfixed x1, GLfixed y1, GLfixed x2, GLfixed y2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RectxOES,x1,y1,x2,y2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RectxvOES,const GLfixed* v1, const GLfixed* v2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RectxvOES,v1,v2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1xOES, GLfixed s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1xOES,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2xOES, GLfixed s, GLfixed t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2xOES,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3xOES, GLfixed s, GLfixed t, GLfixed r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3xOES,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4xOES, GLfixed s, GLfixed t, GLfixed r, GLfixed q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4xOES,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGenxOES, GLenum coord, GLenum pname, GLfixed param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGenxOES,coord,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexGenxvOES, GLenum coord, GLenum pname, const GLfixed* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexGenxvOES,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2xOES, GLfixed x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2xOES,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3xOES, GLfixed x, GLfixed y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3xOES,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4xOES, GLfixed x, GLfixed y, GLfixed z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4xOES,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4xvOES,const GLfixed* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4xvOES,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(GLbitfield, QueryMatrixxOES, GLfixed* mantissa, GLint* exponent) DECLARE_GL_FUNCTION_STUB_END(GLbitfield, QueryMatrixxOES,mantissa,exponent) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearDepthfOES, GLclampf depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearDepthfOES,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClipPlanefOES, GLenum plane, const GLfloat* equation) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClipPlanefOES,plane,equation) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangefOES, GLclampf n, GLclampf f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangefOES,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FrustumfOES, GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FrustumfOES,l,r,b,t,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetClipPlanefOES, GLenum plane, GLfloat* equation) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetClipPlanefOES,plane,equation) -DECLARE_GL_FUNCTION_STUB_HEAD(void, OrthofOES, GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, OrthofOES,l,r,b,t,n,f) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TbufferMask3DFX, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TbufferMask3DFX,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DebugMessageEnableAMD, GLenum category, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DebugMessageEnableAMD,category,severity,count,ids,enabled) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DebugMessageInsertAMD, GLenum category, GLenum severity, GLuint id, GLsizei length, const GLchar* buf) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DebugMessageInsertAMD,category,severity,id,length,buf) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DebugMessageCallbackAMD, GLDEBUGPROCAMD callback, void* userParam) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DebugMessageCallbackAMD,callback,userParam) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GetDebugMessageLogAMD, GLuint count, GLsizei bufSize, GLenum* categories, GLuint* severities, GLuint* ids, GLsizei* lengths, GLchar* message) DECLARE_GL_FUNCTION_STUB_END(GLuint, GetDebugMessageLogAMD,count,bufSize,categories,severities,ids,lengths,message) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendFuncIndexedAMD, GLuint buf, GLenum src, GLenum dst) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendFuncIndexedAMD,buf,src,dst) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendFuncSeparateIndexedAMD, GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendFuncSeparateIndexedAMD,buf,srcRGB,dstRGB,srcAlpha,dstAlpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendEquationIndexedAMD, GLuint buf, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendEquationIndexedAMD,buf,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendEquationSeparateIndexedAMD, GLuint buf, GLenum modeRGB, GLenum modeAlpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendEquationSeparateIndexedAMD,buf,modeRGB,modeAlpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RenderbufferStorageMultisampleAdvancedAMD, GLenum target, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RenderbufferStorageMultisampleAdvancedAMD,target,samples,storageSamples,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedRenderbufferStorageMultisampleAdvancedAMD, GLuint renderbuffer, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedRenderbufferStorageMultisampleAdvancedAMD,renderbuffer,samples,storageSamples,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferSamplePositionsfvAMD, GLenum target, GLuint numsamples, GLuint pixelindex, const GLfloat* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferSamplePositionsfvAMD,target,numsamples,pixelindex,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferSamplePositionsfvAMD, GLuint framebuffer, GLuint numsamples, GLuint pixelindex, const GLfloat* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferSamplePositionsfvAMD,framebuffer,numsamples,pixelindex,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFramebufferParameterfvAMD, GLenum target, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFramebufferParameterfvAMD,target,pname,numsamples,pixelindex,size,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedFramebufferParameterfvAMD, GLuint framebuffer, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedFramebufferParameterfvAMD,framebuffer,pname,numsamples,pixelindex,size,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1i64NV, GLint location, GLint64EXT x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1i64NV,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2i64NV, GLint location, GLint64EXT x, GLint64EXT y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2i64NV,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3i64NV, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3i64NV,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4i64NV, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4i64NV,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1i64vNV, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1i64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2i64vNV, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2i64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3i64vNV, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3i64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4i64vNV, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4i64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1ui64NV, GLint location, GLuint64EXT x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1ui64NV,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2ui64NV, GLint location, GLuint64EXT x, GLuint64EXT y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2ui64NV,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3ui64NV, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3ui64NV,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4ui64NV, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4ui64NV,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform1ui64vNV, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform1ui64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform2ui64vNV, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform2ui64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform3ui64vNV, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform3ui64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniform4ui64vNV, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniform4ui64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformi64vNV, GLuint program, GLint location, GLint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformi64vNV,program,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUniformui64vNV, GLuint program, GLint location, GLuint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUniformui64vNV,program,location,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1i64NV, GLuint program, GLint location, GLint64EXT x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1i64NV,program,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2i64NV, GLuint program, GLint location, GLint64EXT x, GLint64EXT y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2i64NV,program,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3i64NV, GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3i64NV,program,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4i64NV, GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4i64NV,program,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1i64vNV, GLuint program, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1i64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2i64vNV, GLuint program, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2i64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3i64vNV, GLuint program, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3i64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4i64vNV, GLuint program, GLint location, GLsizei count, const GLint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4i64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1ui64NV, GLuint program, GLint location, GLuint64EXT x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1ui64NV,program,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2ui64NV, GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2ui64NV,program,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3ui64NV, GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3ui64NV,program,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4ui64NV, GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4ui64NV,program,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1ui64vNV, GLuint program, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1ui64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2ui64vNV, GLuint program, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2ui64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3ui64vNV, GLuint program, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3ui64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4ui64vNV, GLuint program, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4ui64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribParameteriAMD, GLuint index, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribParameteriAMD,index,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArraysIndirectAMD, GLenum mode, const void* indirect, GLsizei primcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArraysIndirectAMD,mode,indirect,primcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementsIndirectAMD, GLenum mode, GLenum type, const void* indirect, GLsizei primcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementsIndirectAMD,mode,type,indirect,primcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenNamesAMD, GLenum identifier, GLuint num, GLuint* names) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenNamesAMD,identifier,num,names) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteNamesAMD, GLenum identifier, GLuint num, const GLuint* names) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteNamesAMD,identifier,num,names) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsNameAMD, GLenum identifier, GLuint name) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsNameAMD,identifier,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, QueryObjectParameteruiAMD, GLenum target, GLuint id, GLenum pname, GLuint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, QueryObjectParameteruiAMD,target,id,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfMonitorGroupsAMD, GLint* numGroups, GLsizei groupsSize, GLuint* groups) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfMonitorGroupsAMD,numGroups,groupsSize,groups) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfMonitorCountersAMD, GLuint group, GLint* numCounters, GLint* maxActiveCounters, GLsizei counterSize, GLuint* counters) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfMonitorCountersAMD,group,numCounters,maxActiveCounters,counterSize,counters) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfMonitorGroupStringAMD, GLuint group, GLsizei bufSize, GLsizei* length, GLchar* groupString) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfMonitorGroupStringAMD,group,bufSize,length,groupString) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfMonitorCounterStringAMD, GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, GLchar* counterString) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfMonitorCounterStringAMD,group,counter,bufSize,length,counterString) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfMonitorCounterInfoAMD, GLuint group, GLuint counter, GLenum pname, void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfMonitorCounterInfoAMD,group,counter,pname,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenPerfMonitorsAMD, GLsizei n, GLuint* monitors) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenPerfMonitorsAMD,n,monitors) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeletePerfMonitorsAMD, GLsizei n, GLuint* monitors) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeletePerfMonitorsAMD,n,monitors) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SelectPerfMonitorCountersAMD, GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SelectPerfMonitorCountersAMD,monitor,enable,group,numCounters,counterList) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginPerfMonitorAMD, GLuint monitor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginPerfMonitorAMD,monitor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndPerfMonitorAMD, GLuint monitor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndPerfMonitorAMD,monitor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfMonitorCounterDataAMD, GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint* bytesWritten) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfMonitorCounterDataAMD,monitor,pname,dataSize,data,bytesWritten) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SetMultisamplefvAMD, GLenum pname, GLuint index, const GLfloat* val) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SetMultisamplefvAMD,pname,index,val) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorageSparseAMD, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorageSparseAMD,target,internalFormat,width,height,depth,layers,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorageSparseAMD, GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorageSparseAMD,texture,target,internalFormat,width,height,depth,layers,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilOpValueAMD, GLenum face, GLuint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilOpValueAMD,face,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TessellationFactorAMD, GLfloat factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TessellationFactorAMD,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TessellationModeAMD, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TessellationModeAMD,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ElementPointerAPPLE, GLenum type, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ElementPointerAPPLE,type,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawElementArrayAPPLE, GLenum mode, GLint first, GLsizei count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawElementArrayAPPLE,mode,first,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawRangeElementArrayAPPLE, GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawRangeElementArrayAPPLE,mode,start,end,first,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementArrayAPPLE, GLenum mode, const GLint* first, const GLsizei* count, GLsizei primcount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementArrayAPPLE,mode,first,count,primcount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawRangeElementArrayAPPLE, GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei* count, GLsizei primcount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawRangeElementArrayAPPLE,mode,start,end,first,count,primcount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenFencesAPPLE, GLsizei n, GLuint* fences) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenFencesAPPLE,n,fences) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteFencesAPPLE, GLsizei n, const GLuint* fences) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteFencesAPPLE,n,fences) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SetFenceAPPLE, GLuint fence) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SetFenceAPPLE,fence) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsFenceAPPLE, GLuint fence) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsFenceAPPLE,fence) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, TestFenceAPPLE, GLuint fence) DECLARE_GL_FUNCTION_STUB_END(GLboolean, TestFenceAPPLE,fence) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FinishFenceAPPLE, GLuint fence) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FinishFenceAPPLE,fence) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, TestObjectAPPLE, GLenum object, GLuint name) DECLARE_GL_FUNCTION_STUB_END(GLboolean, TestObjectAPPLE,object,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FinishObjectAPPLE, GLenum object, GLint name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FinishObjectAPPLE,object,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferParameteriAPPLE, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferParameteriAPPLE,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushMappedBufferRangeAPPLE, GLenum target, GLintptr offset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushMappedBufferRangeAPPLE,target,offset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, ObjectPurgeableAPPLE, GLenum objectType, GLuint name, GLenum option) DECLARE_GL_FUNCTION_STUB_END(GLenum, ObjectPurgeableAPPLE,objectType,name,option) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, ObjectUnpurgeableAPPLE, GLenum objectType, GLuint name, GLenum option) DECLARE_GL_FUNCTION_STUB_END(GLenum, ObjectUnpurgeableAPPLE,objectType,name,option) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetObjectParameterivAPPLE, GLenum objectType, GLuint name, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetObjectParameterivAPPLE,objectType,name,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureRangeAPPLE, GLenum target, GLsizei length, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureRangeAPPLE,target,length,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexParameterPointervAPPLE, GLenum target, GLenum pname, void* *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexParameterPointervAPPLE,target,pname,*params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindVertexArrayAPPLE, GLuint array) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindVertexArrayAPPLE,array) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteVertexArraysAPPLE, GLsizei n, const GLuint* arrays) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteVertexArraysAPPLE,n,arrays) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenVertexArraysAPPLE, GLsizei n, GLuint* arrays) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenVertexArraysAPPLE,n,arrays) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsVertexArrayAPPLE, GLuint array) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsVertexArrayAPPLE,array) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayRangeAPPLE, GLsizei length, void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayRangeAPPLE,length,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushVertexArrayRangeAPPLE, GLsizei length, void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushVertexArrayRangeAPPLE,length,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayParameteriAPPLE, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayParameteriAPPLE,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableVertexAttribAPPLE, GLuint index, GLenum pname) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableVertexAttribAPPLE,index,pname) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableVertexAttribAPPLE, GLuint index, GLenum pname) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableVertexAttribAPPLE,index,pname) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsVertexAttribEnabledAPPLE, GLuint index, GLenum pname) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsVertexAttribEnabledAPPLE,index,pname) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapVertexAttrib1dAPPLE, GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapVertexAttrib1dAPPLE,index,size,u1,u2,stride,order,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapVertexAttrib1fAPPLE, GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapVertexAttrib1fAPPLE,index,size,u1,u2,stride,order,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapVertexAttrib2dAPPLE, GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapVertexAttrib2dAPPLE,index,size,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapVertexAttrib2fAPPLE, GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapVertexAttrib2fAPPLE,index,size,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawBuffersATI, GLsizei n, const GLenum* bufs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawBuffersATI,n,bufs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ElementPointerATI, GLenum type, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ElementPointerATI,type,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawElementArrayATI, GLenum mode, GLsizei count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawElementArrayATI,mode,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawRangeElementArrayATI, GLenum mode, GLuint start, GLuint end, GLsizei count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawRangeElementArrayATI,mode,start,end,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexBumpParameterivATI, GLenum pname, const GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexBumpParameterivATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexBumpParameterfvATI, GLenum pname, const GLfloat* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexBumpParameterfvATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexBumpParameterivATI, GLenum pname, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexBumpParameterivATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexBumpParameterfvATI, GLenum pname, GLfloat* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexBumpParameterfvATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GenFragmentShadersATI, GLuint range) DECLARE_GL_FUNCTION_STUB_END(GLuint, GenFragmentShadersATI,range) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindFragmentShaderATI, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindFragmentShaderATI,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteFragmentShaderATI, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteFragmentShaderATI,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginFragmentShaderATI,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginFragmentShaderATI,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndFragmentShaderATI,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndFragmentShaderATI,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PassTexCoordATI, GLuint dst, GLuint coord, GLenum swizzle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PassTexCoordATI,dst,coord,swizzle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SampleMapATI, GLuint dst, GLuint interp, GLenum swizzle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SampleMapATI,dst,interp,swizzle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorFragmentOp1ATI, GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorFragmentOp1ATI,op,dst,dstMask,dstMod,arg1,arg1Rep,arg1Mod) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorFragmentOp2ATI, GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorFragmentOp2ATI,op,dst,dstMask,dstMod,arg1,arg1Rep,arg1Mod,arg2,arg2Rep,arg2Mod) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorFragmentOp3ATI, GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorFragmentOp3ATI,op,dst,dstMask,dstMod,arg1,arg1Rep,arg1Mod,arg2,arg2Rep,arg2Mod,arg3,arg3Rep,arg3Mod) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AlphaFragmentOp1ATI, GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AlphaFragmentOp1ATI,op,dst,dstMod,arg1,arg1Rep,arg1Mod) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AlphaFragmentOp2ATI, GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AlphaFragmentOp2ATI,op,dst,dstMod,arg1,arg1Rep,arg1Mod,arg2,arg2Rep,arg2Mod) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AlphaFragmentOp3ATI, GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AlphaFragmentOp3ATI,op,dst,dstMod,arg1,arg1Rep,arg1Mod,arg2,arg2Rep,arg2Mod,arg3,arg3Rep,arg3Mod) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SetFragmentShaderConstantATI, GLuint dst, const GLfloat* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SetFragmentShaderConstantATI,dst,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UnmapObjectBufferATI, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UnmapObjectBufferATI,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PNTrianesiATI, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PNTrianesiATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PNTrianesfATI, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PNTrianesfATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilOpSeparateATI, GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilOpSeparateATI,face,sfail,dpfail,dppass) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilFuncSeparateATI, GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilFuncSeparateATI,frontfunc,backfunc,ref,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, NewObjectBufferATI, GLsizei size, const void* pointer, GLenum usage) DECLARE_GL_FUNCTION_STUB_END(GLuint, NewObjectBufferATI,size,pointer,usage) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsObjectBufferATI, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsObjectBufferATI,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UpdateObjectBufferATI, GLuint buffer, GLuint offset, GLsizei size, const void* pointer, GLenum preserve) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UpdateObjectBufferATI,buffer,offset,size,pointer,preserve) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetObjectBufferfvATI, GLuint buffer, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetObjectBufferfvATI,buffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetObjectBufferivATI, GLuint buffer, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetObjectBufferivATI,buffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FreeObjectBufferATI, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FreeObjectBufferATI,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ArrayObjectATI, GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ArrayObjectATI,array,size,type,stride,buffer,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetArrayObjectfvATI, GLenum array, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetArrayObjectfvATI,array,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetArrayObjectivATI, GLenum array, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetArrayObjectivATI,array,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantArrayObjectATI, GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantArrayObjectATI,id,type,stride,buffer,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVariantArrayObjectfvATI, GLuint id, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVariantArrayObjectfvATI,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVariantArrayObjectivATI, GLuint id, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVariantArrayObjectivATI,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribArrayObjectATI, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribArrayObjectATI,index,size,type,normalized,stride,buffer,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribArrayObjectfvATI, GLuint index, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribArrayObjectfvATI,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribArrayObjectivATI, GLuint index, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribArrayObjectivATI,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1sATI, GLenum stream, GLshort x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1sATI,stream,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1svATI, GLenum stream, const GLshort* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1svATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1iATI, GLenum stream, GLint x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1iATI,stream,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1ivATI, GLenum stream, const GLint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1ivATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1fATI, GLenum stream, GLfloat x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1fATI,stream,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1fvATI, GLenum stream, const GLfloat* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1fvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1dATI, GLenum stream, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1dATI,stream,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream1dvATI, GLenum stream, const GLdouble* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream1dvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2sATI, GLenum stream, GLshort x, GLshort y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2sATI,stream,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2svATI, GLenum stream, const GLshort* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2svATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2iATI, GLenum stream, GLint x, GLint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2iATI,stream,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2ivATI, GLenum stream, const GLint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2ivATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2fATI, GLenum stream, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2fATI,stream,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2fvATI, GLenum stream, const GLfloat* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2fvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2dATI, GLenum stream, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2dATI,stream,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream2dvATI, GLenum stream, const GLdouble* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream2dvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3sATI, GLenum stream, GLshort x, GLshort y, GLshort z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3sATI,stream,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3svATI, GLenum stream, const GLshort* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3svATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3iATI, GLenum stream, GLint x, GLint y, GLint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3iATI,stream,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3ivATI, GLenum stream, const GLint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3ivATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3fATI, GLenum stream, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3fATI,stream,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3fvATI, GLenum stream, const GLfloat* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3fvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3dATI, GLenum stream, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3dATI,stream,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream3dvATI, GLenum stream, const GLdouble* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream3dvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4sATI, GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4sATI,stream,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4svATI, GLenum stream, const GLshort* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4svATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4iATI, GLenum stream, GLint x, GLint y, GLint z, GLint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4iATI,stream,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4ivATI, GLenum stream, const GLint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4ivATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4fATI, GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4fATI,stream,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4fvATI, GLenum stream, const GLfloat* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4fvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4dATI, GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4dATI,stream,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexStream4dvATI, GLenum stream, const GLdouble* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexStream4dvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3bATI, GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3bATI,stream,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3bvATI, GLenum stream, const GLbyte* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3bvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3sATI, GLenum stream, GLshort nx, GLshort ny, GLshort nz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3sATI,stream,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3svATI, GLenum stream, const GLshort* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3svATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3iATI, GLenum stream, GLint nx, GLint ny, GLint nz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3iATI,stream,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3ivATI, GLenum stream, const GLint* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3ivATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3fATI, GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3fATI,stream,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3fvATI, GLenum stream, const GLfloat* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3fvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3dATI, GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3dATI,stream,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalStream3dvATI, GLenum stream, const GLdouble* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalStream3dvATI,stream,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClientActiveVertexStreamATI, GLenum stream) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClientActiveVertexStreamATI,stream) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexBlendEnviATI, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexBlendEnviATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexBlendEnvfATI, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexBlendEnvfATI,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EGLImageTargetTexStorageEXT, GLenum target, GLeglImageOES image, const GLint* attrib_list) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EGLImageTargetTexStorageEXT,target,image,attrib_list) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EGLImageTargetTextureStorageEXT, GLuint texture, GLeglImageOES image, const GLint* attrib_list) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EGLImageTargetTextureStorageEXT,texture,image,attrib_list) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformBufferEXT, GLuint program, GLint location, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformBufferEXT,program,location,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetUniformBufferSizeEXT, GLuint program, GLint location) DECLARE_GL_FUNCTION_STUB_END(GLint, GetUniformBufferSizeEXT,program,location) -DECLARE_GL_FUNCTION_STUB_HEAD(GLintptr, GetUniformOffsetEXT, GLuint program, GLint location) DECLARE_GL_FUNCTION_STUB_END(GLintptr, GetUniformOffsetEXT,program,location) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorSubTableEXT, GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorSubTableEXT,target,start,count,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyColorSubTableEXT, GLenum target, GLsizei start, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyColorSubTableEXT,target,start,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LockArraysEXT, GLint first, GLsizei count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LockArraysEXT,first,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UnlockArraysEXT,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UnlockArraysEXT,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionFilter1DEXT, GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionFilter1DEXT,target,internalformat,width,format,type,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionFilter2DEXT, GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionFilter2DEXT,target,internalformat,width,height,format,type,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameterfEXT, GLenum target, GLenum pname, GLfloat params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameterfEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameterfvEXT, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameterfvEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameteriEXT, GLenum target, GLenum pname, GLint params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameteriEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConvolutionParameterivEXT, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConvolutionParameterivEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyConvolutionFilter1DEXT, GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyConvolutionFilter1DEXT,target,internalformat,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyConvolutionFilter2DEXT, GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyConvolutionFilter2DEXT,target,internalformat,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetConvolutionFilterEXT, GLenum target, GLenum format, GLenum type, void* image) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetConvolutionFilterEXT,target,format,type,image) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetConvolutionParameterfvEXT, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetConvolutionParameterfvEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetConvolutionParameterivEXT, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetConvolutionParameterivEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSeparableFilterEXT, GLenum target, GLenum format, GLenum type, void* row, void* column, void* span) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSeparableFilterEXT,target,format,type,row,column,span) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SeparableFilter2DEXT, GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SeparableFilter2DEXT,target,internalformat,width,height,format,type,row,column) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3bEXT, GLbyte tx, GLbyte ty, GLbyte tz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3bEXT,tx,ty,tz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3bvEXT,const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3bvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3dEXT, GLdouble tx, GLdouble ty, GLdouble tz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3dEXT,tx,ty,tz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3dvEXT,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3dvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3fEXT, GLfloat tx, GLfloat ty, GLfloat tz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3fEXT,tx,ty,tz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3fvEXT,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3fvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3iEXT, GLint tx, GLint ty, GLint tz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3iEXT,tx,ty,tz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3ivEXT,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3ivEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3sEXT, GLshort tx, GLshort ty, GLshort tz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3sEXT,tx,ty,tz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Tangent3svEXT,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Tangent3svEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3bEXT, GLbyte bx, GLbyte by, GLbyte bz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3bEXT,bx,by,bz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3bvEXT,const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3bvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3dEXT, GLdouble bx, GLdouble by, GLdouble bz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3dEXT,bx,by,bz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3dvEXT,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3dvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3fEXT, GLfloat bx, GLfloat by, GLfloat bz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3fEXT,bx,by,bz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3fvEXT,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3fvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3iEXT, GLint bx, GLint by, GLint bz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3iEXT,bx,by,bz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3ivEXT,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3ivEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3sEXT, GLshort bx, GLshort by, GLshort bz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3sEXT,bx,by,bz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Binormal3svEXT,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Binormal3svEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TangentPointerEXT, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TangentPointerEXT,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BinormalPointerEXT, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BinormalPointerEXT,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTexImage1DEXT, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTexImage1DEXT,target,level,internalformat,x,y,width,border) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTexSubImage1DEXT, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTexSubImage1DEXT,target,level,xoffset,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CullParameterdvEXT, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CullParameterdvEXT,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CullParameterfvEXT, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CullParameterfvEXT,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LabelObjectEXT, GLenum type, GLuint object, GLsizei length, const GLchar* label) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LabelObjectEXT,type,object,length,label) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InsertEventMarkerEXT, GLsizei length, const GLchar* marker) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InsertEventMarkerEXT,length,marker) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PushGroupMarkerEXT, GLsizei length, const GLchar* marker) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PushGroupMarkerEXT,length,marker) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PopGroupMarkerEXT,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PopGroupMarkerEXT,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthBoundsEXT, GLclampd zmin, GLclampd zmax) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthBoundsEXT,zmin,zmax) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoadfEXT, GLenum mode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoadfEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoaddEXT, GLenum mode, const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoaddEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMultfEXT, GLenum mode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMultfEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMultdEXT, GLenum mode, const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMultdEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoadIdentityEXT, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoadIdentityEXT,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixRotatefEXT, GLenum mode, GLfloat ane, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixRotatefEXT,mode,ane,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixRotatedEXT, GLenum mode, GLdouble ane, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixRotatedEXT,mode,ane,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixScalefEXT, GLenum mode, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixScalefEXT,mode,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixScaledEXT, GLenum mode, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixScaledEXT,mode,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixTranslatefEXT, GLenum mode, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixTranslatefEXT,mode,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixTranslatedEXT, GLenum mode, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixTranslatedEXT,mode,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixFrustumEXT, GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixFrustumEXT,mode,left,right,bottom,top,zNear,zFar) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixOrthoEXT, GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixOrthoEXT,mode,left,right,bottom,top,zNear,zFar) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixPopEXT, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixPopEXT,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixPushEXT, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixPushEXT,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClientAttribDefaultEXT, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClientAttribDefaultEXT,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PushClientAttribDefaultEXT, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PushClientAttribDefaultEXT,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterfEXT, GLuint texture, GLenum target, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterfEXT,texture,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterfvEXT, GLuint texture, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterfvEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameteriEXT, GLuint texture, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameteriEXT,texture,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterivEXT, GLuint texture, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterivEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureImage1DEXT, GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureImage1DEXT,texture,target,level,internalformat,width,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureImage2DEXT, GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureImage2DEXT,texture,target,level,internalformat,width,height,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureSubImage1DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureSubImage1DEXT,texture,target,level,xoffset,width,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureSubImage2DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureSubImage2DEXT,texture,target,level,xoffset,yoffset,width,height,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureImage1DEXT, GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureImage1DEXT,texture,target,level,internalformat,x,y,width,border) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureImage2DEXT, GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureImage2DEXT,texture,target,level,internalformat,x,y,width,height,border) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureSubImage1DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureSubImage1DEXT,texture,target,level,xoffset,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureSubImage2DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureSubImage2DEXT,texture,target,level,xoffset,yoffset,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureImageEXT, GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureImageEXT,texture,target,level,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameterfvEXT, GLuint texture, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameterfvEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameterivEXT, GLuint texture, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameterivEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureLevelParameterfvEXT, GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureLevelParameterfvEXT,texture,target,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureLevelParameterivEXT, GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureLevelParameterivEXT,texture,target,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureImage3DEXT, GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureImage3DEXT,texture,target,level,internalformat,width,height,depth,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureSubImage3DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureSubImage3DEXT,texture,target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyTextureSubImage3DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyTextureSubImage3DEXT,texture,target,level,xoffset,yoffset,zoffset,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindMultiTextureEXT, GLenum texunit, GLenum target, GLuint texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindMultiTextureEXT,texunit,target,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoordPointerEXT, GLenum texunit, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoordPointerEXT,texunit,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexEnvfEXT, GLenum texunit, GLenum target, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexEnvfEXT,texunit,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexEnvfvEXT, GLenum texunit, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexEnvfvEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexEnviEXT, GLenum texunit, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexEnviEXT,texunit,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexEnvivEXT, GLenum texunit, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexEnvivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexGendEXT, GLenum texunit, GLenum coord, GLenum pname, GLdouble param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexGendEXT,texunit,coord,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexGendvEXT, GLenum texunit, GLenum coord, GLenum pname, const GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexGendvEXT,texunit,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexGenfEXT, GLenum texunit, GLenum coord, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexGenfEXT,texunit,coord,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexGenfvEXT, GLenum texunit, GLenum coord, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexGenfvEXT,texunit,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexGeniEXT, GLenum texunit, GLenum coord, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexGeniEXT,texunit,coord,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexGenivEXT, GLenum texunit, GLenum coord, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexGenivEXT,texunit,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexEnvfvEXT, GLenum texunit, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexEnvfvEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexEnvivEXT, GLenum texunit, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexEnvivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexGendvEXT, GLenum texunit, GLenum coord, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexGendvEXT,texunit,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexGenfvEXT, GLenum texunit, GLenum coord, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexGenfvEXT,texunit,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexGenivEXT, GLenum texunit, GLenum coord, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexGenivEXT,texunit,coord,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexParameteriEXT, GLenum texunit, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexParameteriEXT,texunit,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexParameterivEXT, GLenum texunit, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexParameterivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexParameterfEXT, GLenum texunit, GLenum target, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexParameterfEXT,texunit,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexParameterfvEXT, GLenum texunit, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexParameterfvEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexImage1DEXT, GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexImage1DEXT,texunit,target,level,internalformat,width,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexImage2DEXT, GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexImage2DEXT,texunit,target,level,internalformat,width,height,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexSubImage1DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexSubImage1DEXT,texunit,target,level,xoffset,width,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexSubImage2DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexSubImage2DEXT,texunit,target,level,xoffset,yoffset,width,height,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyMultiTexImage1DEXT, GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyMultiTexImage1DEXT,texunit,target,level,internalformat,x,y,width,border) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyMultiTexImage2DEXT, GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyMultiTexImage2DEXT,texunit,target,level,internalformat,x,y,width,height,border) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyMultiTexSubImage1DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyMultiTexSubImage1DEXT,texunit,target,level,xoffset,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyMultiTexSubImage2DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyMultiTexSubImage2DEXT,texunit,target,level,xoffset,yoffset,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexImageEXT, GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexImageEXT,texunit,target,level,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexParameterfvEXT, GLenum texunit, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexParameterfvEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexParameterivEXT, GLenum texunit, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexParameterivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexLevelParameterfvEXT, GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexLevelParameterfvEXT,texunit,target,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexLevelParameterivEXT, GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexLevelParameterivEXT,texunit,target,level,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexImage3DEXT, GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexImage3DEXT,texunit,target,level,internalformat,width,height,depth,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexSubImage3DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexSubImage3DEXT,texunit,target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyMultiTexSubImage3DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyMultiTexSubImage3DEXT,texunit,target,level,xoffset,yoffset,zoffset,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableClientStateIndexedEXT, GLenum array, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableClientStateIndexedEXT,array,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableClientStateIndexedEXT, GLenum array, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableClientStateIndexedEXT,array,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFloatIndexedvEXT, GLenum target, GLuint index, GLfloat* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFloatIndexedvEXT,target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetDoubleIndexedvEXT, GLenum target, GLuint index, GLdouble* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetDoubleIndexedvEXT,target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPointerIndexedvEXT, GLenum target, GLuint index, void* *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPointerIndexedvEXT,target,index,*data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableIndexedEXT, GLenum target, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableIndexedEXT,target,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableIndexedEXT, GLenum target, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableIndexedEXT,target,index) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsEnabledIndexedEXT, GLenum target, GLuint index) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsEnabledIndexedEXT,target,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetIntegerIndexedvEXT, GLenum target, GLuint index, GLint* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetIntegerIndexedvEXT,target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBooleanIndexedvEXT, GLenum target, GLuint index, GLboolean* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBooleanIndexedvEXT,target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureImage3DEXT, GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureImage3DEXT,texture,target,level,internalformat,width,height,depth,border,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureImage2DEXT, GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureImage2DEXT,texture,target,level,internalformat,width,height,border,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureImage1DEXT, GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureImage1DEXT,texture,target,level,internalformat,width,border,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureSubImage3DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureSubImage3DEXT,texture,target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureSubImage2DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureSubImage2DEXT,texture,target,level,xoffset,yoffset,width,height,format,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedTextureSubImage1DEXT, GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedTextureSubImage1DEXT,texture,target,level,xoffset,width,format,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCompressedTextureImageEXT, GLuint texture, GLenum target, GLint lod, void* img) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCompressedTextureImageEXT,texture,target,lod,img) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedMultiTexImage3DEXT, GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedMultiTexImage3DEXT,texunit,target,level,internalformat,width,height,depth,border,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedMultiTexImage2DEXT, GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedMultiTexImage2DEXT,texunit,target,level,internalformat,width,height,border,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedMultiTexImage1DEXT, GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedMultiTexImage1DEXT,texunit,target,level,internalformat,width,border,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedMultiTexSubImage3DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedMultiTexSubImage3DEXT,texunit,target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedMultiTexSubImage2DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedMultiTexSubImage2DEXT,texunit,target,level,xoffset,yoffset,width,height,format,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompressedMultiTexSubImage1DEXT, GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* bits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompressedMultiTexSubImage1DEXT,texunit,target,level,xoffset,width,format,imageSize,bits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCompressedMultiTexImageEXT, GLenum texunit, GLenum target, GLint lod, void* img) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCompressedMultiTexImageEXT,texunit,target,lod,img) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoadTransposefEXT, GLenum mode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoadTransposefEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoadTransposedEXT, GLenum mode, const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoadTransposedEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMultTransposefEXT, GLenum mode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMultTransposefEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMultTransposedEXT, GLenum mode, const GLdouble* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMultTransposedEXT,mode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferDataEXT, GLuint buffer, GLsizeiptr size, const void* data, GLenum usage) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferDataEXT,buffer,size,data,usage) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferSubDataEXT, GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferSubDataEXT,buffer,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, UnmapNamedBufferEXT, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END(GLboolean, UnmapNamedBufferEXT,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferParameterivEXT, GLuint buffer, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferParameterivEXT,buffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferPointervEXT, GLuint buffer, GLenum pname, void* *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferPointervEXT,buffer,pname,*params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferSubDataEXT, GLuint buffer, GLintptr offset, GLsizeiptr size, void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferSubDataEXT,buffer,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureBufferEXT, GLuint texture, GLenum target, GLenum internalformat, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureBufferEXT,texture,target,internalformat,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexBufferEXT, GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexBufferEXT,texunit,target,internalformat,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterIivEXT, GLuint texture, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterIivEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureParameterIuivEXT, GLuint texture, GLenum target, GLenum pname, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureParameterIuivEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameterIivEXT, GLuint texture, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameterIivEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTextureParameterIuivEXT, GLuint texture, GLenum target, GLenum pname, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTextureParameterIuivEXT,texture,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexParameterIivEXT, GLenum texunit, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexParameterIivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexParameterIuivEXT, GLenum texunit, GLenum target, GLenum pname, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexParameterIuivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexParameterIivEXT, GLenum texunit, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexParameterIivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultiTexParameterIuivEXT, GLenum texunit, GLenum target, GLenum pname, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultiTexParameterIuivEXT,texunit,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameters4fvEXT, GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameters4fvEXT,program,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameterI4iEXT, GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameterI4iEXT,program,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameterI4ivEXT, GLuint program, GLenum target, GLuint index, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameterI4ivEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParametersI4ivEXT, GLuint program, GLenum target, GLuint index, GLsizei count, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParametersI4ivEXT,program,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameterI4uiEXT, GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameterI4uiEXT,program,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameterI4uivEXT, GLuint program, GLenum target, GLuint index, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameterI4uivEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParametersI4uivEXT, GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParametersI4uivEXT,program,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedProgramLocalParameterIivEXT, GLuint program, GLenum target, GLuint index, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedProgramLocalParameterIivEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedProgramLocalParameterIuivEXT, GLuint program, GLenum target, GLuint index, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedProgramLocalParameterIuivEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableClientStateiEXT, GLenum array, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableClientStateiEXT,array,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableClientStateiEXT, GLenum array, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableClientStateiEXT,array,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFloati_vEXT, GLenum pname, GLuint index, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFloati_vEXT,pname,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetDoublei_vEXT, GLenum pname, GLuint index, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetDoublei_vEXT,pname,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPointeri_vEXT, GLenum pname, GLuint index, void* *params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPointeri_vEXT,pname,index,*params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramStringEXT, GLuint program, GLenum target, GLenum format, GLsizei len, const void* string) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramStringEXT,program,target,format,len,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameter4dEXT, GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameter4dEXT,program,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameter4dvEXT, GLuint program, GLenum target, GLuint index, const GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameter4dvEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameter4fEXT, GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameter4fEXT,program,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedProgramLocalParameter4fvEXT, GLuint program, GLenum target, GLuint index, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedProgramLocalParameter4fvEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedProgramLocalParameterdvEXT, GLuint program, GLenum target, GLuint index, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedProgramLocalParameterdvEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedProgramLocalParameterfvEXT, GLuint program, GLenum target, GLuint index, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedProgramLocalParameterfvEXT,program,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedProgramivEXT, GLuint program, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedProgramivEXT,program,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedProgramStringEXT, GLuint program, GLenum target, GLenum pname, void* string) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedProgramStringEXT,program,target,pname,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedRenderbufferStorageEXT, GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedRenderbufferStorageEXT,renderbuffer,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedRenderbufferParameterivEXT, GLuint renderbuffer, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedRenderbufferParameterivEXT,renderbuffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedRenderbufferStorageMultisampleEXT, GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedRenderbufferStorageMultisampleEXT,renderbuffer,samples,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedRenderbufferStorageMultisampleCoverageEXT, GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedRenderbufferStorageMultisampleCoverageEXT,renderbuffer,coverageSamples,colorSamples,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, CheckNamedFramebufferStatusEXT, GLuint framebuffer, GLenum target) DECLARE_GL_FUNCTION_STUB_END(GLenum, CheckNamedFramebufferStatusEXT,framebuffer,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTexture1DEXT, GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTexture1DEXT,framebuffer,attachment,textarget,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTexture2DEXT, GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTexture2DEXT,framebuffer,attachment,textarget,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTexture3DEXT, GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTexture3DEXT,framebuffer,attachment,textarget,texture,level,zoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferRenderbufferEXT, GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferRenderbufferEXT,framebuffer,attachment,renderbuffertarget,renderbuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedFramebufferAttachmentParameterivEXT, GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedFramebufferAttachmentParameterivEXT,framebuffer,attachment,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenerateTextureMipmapEXT, GLuint texture, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenerateTextureMipmapEXT,texture,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenerateMultiTexMipmapEXT, GLenum texunit, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenerateMultiTexMipmapEXT,texunit,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferDrawBufferEXT, GLuint framebuffer, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferDrawBufferEXT,framebuffer,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferDrawBuffersEXT, GLuint framebuffer, GLsizei n, const GLenum* bufs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferDrawBuffersEXT,framebuffer,n,bufs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferReadBufferEXT, GLuint framebuffer, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferReadBufferEXT,framebuffer,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedCopyBufferSubDataEXT, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedCopyBufferSubDataEXT,readBuffer,writeBuffer,readOffset,writeOffset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTextureEXT, GLuint framebuffer, GLenum attachment, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTextureEXT,framebuffer,attachment,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTextureLayerEXT, GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTextureLayerEXT,framebuffer,attachment,texture,level,layer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferTextureFaceEXT, GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferTextureFaceEXT,framebuffer,attachment,texture,level,face) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureRenderbufferEXT, GLuint texture, GLenum target, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureRenderbufferEXT,texture,target,renderbuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexRenderbufferEXT, GLenum texunit, GLenum target, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexRenderbufferEXT,texunit,target,renderbuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexOffsetEXT, GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexOffsetEXT,vaobj,buffer,size,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayColorOffsetEXT, GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayColorOffsetEXT,vaobj,buffer,size,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayEdgeFlagOffsetEXT, GLuint vaobj, GLuint buffer, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayEdgeFlagOffsetEXT,vaobj,buffer,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayIndexOffsetEXT, GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayIndexOffsetEXT,vaobj,buffer,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayNormalOffsetEXT, GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayNormalOffsetEXT,vaobj,buffer,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayTexCoordOffsetEXT, GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayTexCoordOffsetEXT,vaobj,buffer,size,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayMultiTexCoordOffsetEXT, GLuint vaobj, GLuint buffer, GLenum texunit, GLint size, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayMultiTexCoordOffsetEXT,vaobj,buffer,texunit,size,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayFogCoordOffsetEXT, GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayFogCoordOffsetEXT,vaobj,buffer,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArraySecondaryColorOffsetEXT, GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArraySecondaryColorOffsetEXT,vaobj,buffer,size,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribOffsetEXT, GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribOffsetEXT,vaobj,buffer,index,size,type,normalized,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribIOffsetEXT, GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribIOffsetEXT,vaobj,buffer,index,size,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableVertexArrayEXT, GLuint vaobj, GLenum array) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableVertexArrayEXT,vaobj,array) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableVertexArrayEXT, GLuint vaobj, GLenum array) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableVertexArrayEXT,vaobj,array) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableVertexArrayAttribEXT, GLuint vaobj, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableVertexArrayAttribEXT,vaobj,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableVertexArrayAttribEXT, GLuint vaobj, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableVertexArrayAttribEXT,vaobj,index) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexArrayIntegervEXT, GLuint vaobj, GLenum pname, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexArrayIntegervEXT,vaobj,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexArrayPointervEXT, GLuint vaobj, GLenum pname, void* *param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexArrayPointervEXT,vaobj,pname,*param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexArrayIntegeri_vEXT, GLuint vaobj, GLuint index, GLenum pname, GLint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexArrayIntegeri_vEXT,vaobj,index,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexArrayPointeri_vEXT, GLuint vaobj, GLuint index, GLenum pname, void* *param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexArrayPointeri_vEXT,vaobj,index,pname,*param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushMappedNamedBufferRangeEXT, GLuint buffer, GLintptr offset, GLsizeiptr length) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushMappedNamedBufferRangeEXT,buffer,offset,length) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferStorageEXT, GLuint buffer, GLsizeiptr size, const void* data, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferStorageEXT,buffer,size,data,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedBufferDataEXT, GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedBufferDataEXT,buffer,internalformat,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearNamedBufferSubDataEXT, GLuint buffer, GLenum internalformat, GLsizeiptr offset, GLsizeiptr size, GLenum format, GLenum type, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearNamedBufferSubDataEXT,buffer,internalformat,offset,size,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferParameteriEXT, GLuint framebuffer, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferParameteriEXT,framebuffer,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedFramebufferParameterivEXT, GLuint framebuffer, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedFramebufferParameterivEXT,framebuffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1dEXT, GLuint program, GLint location, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1dEXT,program,location,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2dEXT, GLuint program, GLint location, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2dEXT,program,location,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3dEXT, GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3dEXT,program,location,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4dEXT, GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4dEXT,program,location,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform1dvEXT, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform1dvEXT,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform2dvEXT, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform2dvEXT,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform3dvEXT, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform3dvEXT,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniform4dvEXT, GLuint program, GLint location, GLsizei count, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniform4dvEXT,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2x3dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2x3dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix2x4dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix2x4dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3x2dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3x2dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix3x4dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix3x4dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4x2dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4x2dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformMatrix4x3dvEXT, GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformMatrix4x3dvEXT,program,location,count,transpose,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureBufferRangeEXT, GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureBufferRangeEXT,texture,target,internalformat,buffer,offset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage1DEXT, GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage1DEXT,texture,target,levels,internalformat,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage2DEXT, GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage2DEXT,texture,target,levels,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage3DEXT, GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage3DEXT,texture,target,levels,internalformat,width,height,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage2DMultisampleEXT, GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage2DMultisampleEXT,texture,target,samples,internalformat,width,height,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorage3DMultisampleEXT, GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorage3DMultisampleEXT,texture,target,samples,internalformat,width,height,depth,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayBindVertexBufferEXT, GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayBindVertexBufferEXT,vaobj,bindingindex,buffer,offset,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribFormatEXT, GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribFormatEXT,vaobj,attribindex,size,type,normalized,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribIFormatEXT, GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribIFormatEXT,vaobj,attribindex,size,type,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribLFormatEXT, GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribLFormatEXT,vaobj,attribindex,size,type,relativeoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribBindingEXT, GLuint vaobj, GLuint attribindex, GLuint bindingindex) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribBindingEXT,vaobj,attribindex,bindingindex) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexBindingDivisorEXT, GLuint vaobj, GLuint bindingindex, GLuint divisor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexBindingDivisorEXT,vaobj,bindingindex,divisor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribLOffsetEXT, GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribLOffsetEXT,vaobj,buffer,index,size,type,stride,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexturePageCommitmentEXT, GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexturePageCommitmentEXT,texture,level,xoffset,yoffset,zoffset,width,height,depth,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayVertexAttribDivisorEXT, GLuint vaobj, GLuint index, GLuint divisor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayVertexAttribDivisorEXT,vaobj,index,divisor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorMaskIndexedEXT, GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorMaskIndexedEXT,index,r,g,b,a) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferStorageExternalEXT, GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferStorageExternalEXT,target,offset,size,clientBuffer,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferStorageExternalEXT, GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferStorageExternalEXT,buffer,offset,size,clientBuffer,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordfEXT, GLfloat coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordfEXT,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordfvEXT,const GLfloat* coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordfvEXT,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoorddEXT, GLdouble coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoorddEXT,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoorddvEXT,const GLdouble* coord) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoorddvEXT,coord) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordPointerEXT, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordPointerEXT,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTexture1DEXT, GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTexture1DEXT,target,attachment,textarget,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTexture3DEXT, GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTexture3DEXT,target,attachment,textarget,texture,level,zoffset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameters4fvEXT, GLenum target, GLuint index, GLsizei count, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameters4fvEXT,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameters4fvEXT, GLenum target, GLuint index, GLsizei count, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameters4fvEXT,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindFragDataLocationEXT, GLuint program, GLuint color, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindFragDataLocationEXT,program,color,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1iEXT, GLuint index, GLint x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1iEXT,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2iEXT, GLuint index, GLint x, GLint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2iEXT,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3iEXT, GLuint index, GLint x, GLint y, GLint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3iEXT,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1uiEXT, GLuint index, GLuint x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1uiEXT,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2uiEXT, GLuint index, GLuint x, GLuint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2uiEXT,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3uiEXT, GLuint index, GLuint x, GLuint y, GLuint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3uiEXT,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1ivEXT, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1ivEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2ivEXT, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2ivEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3ivEXT, GLuint index, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3ivEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI1uivEXT, GLuint index, const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI1uivEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI2uivEXT, GLuint index, const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI2uivEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI3uivEXT, GLuint index, const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI3uivEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4bvEXT, GLuint index, const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4bvEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4svEXT, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4svEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4ubvEXT, GLuint index, const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4ubvEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribI4usvEXT, GLuint index, const GLushort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribI4usvEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetHistogramEXT, GLenum target, GLboolean reset, GLenum format, GLenum type, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetHistogramEXT,target,reset,format,type,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetHistogramParameterfvEXT, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetHistogramParameterfvEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetHistogramParameterivEXT, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetHistogramParameterivEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMinmaxEXT, GLenum target, GLboolean reset, GLenum format, GLenum type, void* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMinmaxEXT,target,reset,format,type,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMinmaxParameterfvEXT, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMinmaxParameterfvEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMinmaxParameterivEXT, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMinmaxParameterivEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, HistogramEXT, GLenum target, GLsizei width, GLenum internalformat, GLboolean sink) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, HistogramEXT,target,width,internalformat,sink) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MinmaxEXT, GLenum target, GLenum internalformat, GLboolean sink) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MinmaxEXT,target,internalformat,sink) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResetHistogramEXT, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResetHistogramEXT,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResetMinmaxEXT, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResetMinmaxEXT,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexFuncEXT, GLenum func, GLclampf ref) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexFuncEXT,func,ref) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexMaterialEXT, GLenum face, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexMaterialEXT,face,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ApplyTextureEXT, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ApplyTextureEXT,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureLightEXT, GLenum pname) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureLightEXT,pname) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureMaterialEXT, GLenum face, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureMaterialEXT,face,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUnsignedBytevEXT, GLenum pname, GLubyte* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUnsignedBytevEXT,pname,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetUnsignedBytei_vEXT, GLenum target, GLuint index, GLubyte* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetUnsignedBytei_vEXT,target,index,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteMemoryObjectsEXT, GLsizei n, const GLuint* memoryObjects) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteMemoryObjectsEXT,n,memoryObjects) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsMemoryObjectEXT, GLuint memoryObject) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsMemoryObjectEXT,memoryObject) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateMemoryObjectsEXT, GLsizei n, GLuint* memoryObjects) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateMemoryObjectsEXT,n,memoryObjects) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MemoryObjectParameterivEXT, GLuint memoryObject, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MemoryObjectParameterivEXT,memoryObject,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMemoryObjectParameterivEXT, GLuint memoryObject, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMemoryObjectParameterivEXT,memoryObject,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorageMem2DEXT, GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorageMem2DEXT,target,levels,internalFormat,width,height,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorageMem2DMultisampleEXT, GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorageMem2DMultisampleEXT,target,samples,internalFormat,width,height,fixedSampleLocations,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorageMem3DEXT, GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorageMem3DEXT,target,levels,internalFormat,width,height,depth,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorageMem3DMultisampleEXT, GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorageMem3DMultisampleEXT,target,samples,internalFormat,width,height,depth,fixedSampleLocations,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferStorageMemEXT, GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferStorageMemEXT,target,size,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorageMem2DEXT, GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorageMem2DEXT,texture,levels,internalFormat,width,height,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorageMem2DMultisampleEXT, GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorageMem2DMultisampleEXT,texture,samples,internalFormat,width,height,fixedSampleLocations,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorageMem3DEXT, GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorageMem3DEXT,texture,levels,internalFormat,width,height,depth,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorageMem3DMultisampleEXT, GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorageMem3DMultisampleEXT,texture,samples,internalFormat,width,height,depth,fixedSampleLocations,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferStorageMemEXT, GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferStorageMemEXT,buffer,size,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorageMem1DEXT, GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorageMem1DEXT,target,levels,internalFormat,width,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureStorageMem1DEXT, GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureStorageMem1DEXT,texture,levels,internalFormat,width,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImportMemoryFdEXT, GLuint memory, GLuint64 size, GLenum handleType, GLint fd) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImportMemoryFdEXT,memory,size,handleType,fd) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImportMemoryWin32HandleEXT, GLuint memory, GLuint64 size, GLenum handleType, void* handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImportMemoryWin32HandleEXT,memory,size,handleType,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImportMemoryWin32NameEXT, GLuint memory, GLuint64 size, GLenum handleType, const void* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImportMemoryWin32NameEXT,memory,size,handleType,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArraysEXT, GLenum mode, const GLint* first, const GLsizei* count, GLsizei primcount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArraysEXT,mode,first,count,primcount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementsEXT, GLenum mode, const GLsizei* count, GLenum type, const void* const*indices, GLsizei primcount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementsEXT,mode,count,type,indices,primcount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SampleMaskEXT, GLclampf value, GLboolean invert) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SampleMaskEXT,value,invert) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplePatternEXT, GLenum pattern) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplePatternEXT,pattern) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorTableEXT, GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const void* table) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorTableEXT,target,internalFormat,width,format,type,table) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableEXT, GLenum target, GLenum format, GLenum type, void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableEXT,target,format,type,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableParameterivEXT, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableParameterivEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableParameterfvEXT, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableParameterfvEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTransformParameteriEXT, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTransformParameteriEXT,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTransformParameterfEXT, GLenum target, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTransformParameterfEXT,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTransformParameterivEXT, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTransformParameterivEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTransformParameterfvEXT, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTransformParameterfvEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelTransformParameterivEXT, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelTransformParameterivEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelTransformParameterfvEXT, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelTransformParameterfvEXT,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterfEXT, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterfEXT,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterfvEXT, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterfvEXT,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PolygonOffsetClampEXT, GLfloat factor, GLfloat units, GLfloat clamp) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PolygonOffsetClampEXT,factor,units,clamp) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProvokingVertexEXT, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProvokingVertexEXT,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RasterSamplesEXT, GLuint samples, GLboolean fixedsamplelocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RasterSamplesEXT,samples,fixedsamplelocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3bEXT, GLbyte red, GLbyte green, GLbyte blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3bEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3bvEXT,const GLbyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3bvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3dEXT, GLdouble red, GLdouble green, GLdouble blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3dEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3dvEXT,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3dvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3fEXT, GLfloat red, GLfloat green, GLfloat blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3fEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3fvEXT,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3fvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3iEXT, GLint red, GLint green, GLint blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3iEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3ivEXT,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3ivEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3sEXT, GLshort red, GLshort green, GLshort blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3sEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3svEXT,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3svEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3ubEXT, GLubyte red, GLubyte green, GLubyte blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3ubEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3ubvEXT,const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3ubvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3uiEXT, GLuint red, GLuint green, GLuint blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3uiEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3uivEXT,const GLuint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3uivEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3usEXT, GLushort red, GLushort green, GLushort blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3usEXT,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3usvEXT,const GLushort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3usvEXT,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColorPointerEXT, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColorPointerEXT,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenSemaphoresEXT, GLsizei n, GLuint* semaphores) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenSemaphoresEXT,n,semaphores) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteSemaphoresEXT, GLsizei n, const GLuint* semaphores) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteSemaphoresEXT,n,semaphores) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsSemaphoreEXT, GLuint semaphore) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsSemaphoreEXT,semaphore) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SemaphoreParameterui64vEXT, GLuint semaphore, GLenum pname, const GLuint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SemaphoreParameterui64vEXT,semaphore,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSemaphoreParameterui64vEXT, GLuint semaphore, GLenum pname, GLuint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSemaphoreParameterui64vEXT,semaphore,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WaitSemaphoreEXT, GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint* textures, const GLenum* srcLayouts) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WaitSemaphoreEXT,semaphore,numBufferBarriers,buffers,numTextureBarriers,textures,srcLayouts) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SignalSemaphoreEXT, GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint* textures, const GLenum* dstLayouts) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SignalSemaphoreEXT,semaphore,numBufferBarriers,buffers,numTextureBarriers,textures,dstLayouts) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImportSemaphoreFdEXT, GLuint semaphore, GLenum handleType, GLint fd) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImportSemaphoreFdEXT,semaphore,handleType,fd) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImportSemaphoreWin32HandleEXT, GLuint semaphore, GLenum handleType, void* handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImportSemaphoreWin32HandleEXT,semaphore,handleType,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImportSemaphoreWin32NameEXT, GLuint semaphore, GLenum handleType, const void* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImportSemaphoreWin32NameEXT,semaphore,handleType,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UseShaderProgramEXT, GLenum type, GLuint program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UseShaderProgramEXT,type,program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ActiveProgramEXT, GLuint program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ActiveProgramEXT,program) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, CreateShaderProgramEXT, GLenum type, const GLchar* string) DECLARE_GL_FUNCTION_STUB_END(GLuint, CreateShaderProgramEXT,type,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferFetchBarrierEXT,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferFetchBarrierEXT,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilClearTagEXT, GLsizei stencilTagBits, GLuint stencilClearTag) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilClearTagEXT,stencilTagBits,stencilClearTag) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ActiveStencilFaceEXT, GLenum face) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ActiveStencilFaceEXT,face) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexSubImage1DEXT, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexSubImage1DEXT,target,level,xoffset,width,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearColorIiEXT, GLint red, GLint green, GLint blue, GLint alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearColorIiEXT,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearColorIuiEXT, GLuint red, GLuint green, GLuint blue, GLuint alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearColorIuiEXT,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, AreTexturesResidentEXT, GLsizei n, const GLuint* textures, GLboolean* residences) DECLARE_GL_FUNCTION_STUB_END(GLboolean, AreTexturesResidentEXT,n,textures,residences) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PrioritizeTexturesEXT, GLsizei n, const GLuint* textures, const GLclampf* priorities) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PrioritizeTexturesEXT,n,textures,priorities) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureNormalEXT, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureNormalEXT,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexStorage1DEXT, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexStorage1DEXT,target,levels,internalformat,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryObjecti64vEXT, GLuint id, GLenum pname, GLint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryObjecti64vEXT,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetQueryObjectui64vEXT, GLuint id, GLenum pname, GLuint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetQueryObjectui64vEXT,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBufferOffsetEXT, GLenum target, GLuint index, GLuint buffer, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBufferOffsetEXT,target,index,buffer,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ArrayElementEXT, GLint i) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ArrayElementEXT,i) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorPointerEXT, GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorPointerEXT,size,type,stride,count,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EdgeFlagPointerEXT, GLsizei stride, GLsizei count, const GLboolean* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EdgeFlagPointerEXT,stride,count,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexPointerEXT, GLenum type, GLsizei stride, GLsizei count, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexPointerEXT,type,stride,count,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalPointerEXT, GLenum type, GLsizei stride, GLsizei count, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalPointerEXT,type,stride,count,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordPointerEXT, GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordPointerEXT,size,type,stride,count,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexPointerEXT, GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexPointerEXT,size,type,stride,count,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1dEXT, GLuint index, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1dEXT,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2dEXT, GLuint index, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2dEXT,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3dEXT, GLuint index, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3dEXT,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4dEXT, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4dEXT,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1dvEXT, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1dvEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2dvEXT, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2dvEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3dvEXT, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3dvEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4dvEXT, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4dvEXT,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribLPointerEXT, GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribLPointerEXT,index,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribLdvEXT, GLuint index, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribLdvEXT,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginVertexShaderEXT,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginVertexShaderEXT,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndVertexShaderEXT,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndVertexShaderEXT,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindVertexShaderEXT, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindVertexShaderEXT,id) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GenVertexShadersEXT, GLuint range) DECLARE_GL_FUNCTION_STUB_END(GLuint, GenVertexShadersEXT,range) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteVertexShaderEXT, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteVertexShaderEXT,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShaderOp1EXT, GLenum op, GLuint res, GLuint arg1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShaderOp1EXT,op,res,arg1) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShaderOp2EXT, GLenum op, GLuint res, GLuint arg1, GLuint arg2) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShaderOp2EXT,op,res,arg1,arg2) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShaderOp3EXT, GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShaderOp3EXT,op,res,arg1,arg2,arg3) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SwizzleEXT, GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SwizzleEXT,res,in,outX,outY,outZ,outW) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WriteMaskEXT, GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WriteMaskEXT,res,in,outX,outY,outZ,outW) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InsertComponentEXT, GLuint res, GLuint src, GLuint num) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InsertComponentEXT,res,src,num) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ExtractComponentEXT, GLuint res, GLuint src, GLuint num) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ExtractComponentEXT,res,src,num) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GenSymbolsEXT, GLenum datatype, GLenum storagetype, GLenum range, GLuint components) DECLARE_GL_FUNCTION_STUB_END(GLuint, GenSymbolsEXT,datatype,storagetype,range,components) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SetInvariantEXT, GLuint id, GLenum type, const void* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SetInvariantEXT,id,type,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SetLocalConstantEXT, GLuint id, GLenum type, const void* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SetLocalConstantEXT,id,type,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantbvEXT, GLuint id, const GLbyte* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantbvEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantsvEXT, GLuint id, const GLshort* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantsvEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantivEXT, GLuint id, const GLint* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantivEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantfvEXT, GLuint id, const GLfloat* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantfvEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantdvEXT, GLuint id, const GLdouble* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantdvEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantubvEXT, GLuint id, const GLubyte* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantubvEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantusvEXT, GLuint id, const GLushort* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantusvEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantuivEXT, GLuint id, const GLuint* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantuivEXT,id,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VariantPointerEXT, GLuint id, GLenum type, GLuint stride, const void* addr) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VariantPointerEXT,id,type,stride,addr) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EnableVariantClientStateEXT, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EnableVariantClientStateEXT,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DisableVariantClientStateEXT, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DisableVariantClientStateEXT,id) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, BindLightParameterEXT, GLenum light, GLenum value) DECLARE_GL_FUNCTION_STUB_END(GLuint, BindLightParameterEXT,light,value) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, BindMaterialParameterEXT, GLenum face, GLenum value) DECLARE_GL_FUNCTION_STUB_END(GLuint, BindMaterialParameterEXT,face,value) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, BindTexGenParameterEXT, GLenum unit, GLenum coord, GLenum value) DECLARE_GL_FUNCTION_STUB_END(GLuint, BindTexGenParameterEXT,unit,coord,value) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, BindTextureUnitParameterEXT, GLenum unit, GLenum value) DECLARE_GL_FUNCTION_STUB_END(GLuint, BindTextureUnitParameterEXT,unit,value) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, BindParameterEXT, GLenum value) DECLARE_GL_FUNCTION_STUB_END(GLuint, BindParameterEXT,value) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsVariantEnabledEXT, GLuint id, GLenum cap) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsVariantEnabledEXT,id,cap) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVariantBooleanvEXT, GLuint id, GLenum value, GLboolean* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVariantBooleanvEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVariantIntegervEXT, GLuint id, GLenum value, GLint* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVariantIntegervEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVariantFloatvEXT, GLuint id, GLenum value, GLfloat* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVariantFloatvEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVariantPointervEXT, GLuint id, GLenum value, void* *data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVariantPointervEXT,id,value,*data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInvariantBooleanvEXT, GLuint id, GLenum value, GLboolean* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInvariantBooleanvEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInvariantIntegervEXT, GLuint id, GLenum value, GLint* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInvariantIntegervEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInvariantFloatvEXT, GLuint id, GLenum value, GLfloat* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInvariantFloatvEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetLocalConstantBooleanvEXT, GLuint id, GLenum value, GLboolean* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetLocalConstantBooleanvEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetLocalConstantIntegervEXT, GLuint id, GLenum value, GLint* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetLocalConstantIntegervEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetLocalConstantFloatvEXT, GLuint id, GLenum value, GLfloat* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetLocalConstantFloatvEXT,id,value,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexWeightfEXT, GLfloat weight) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexWeightfEXT,weight) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexWeightfvEXT,const GLfloat* weight) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexWeightfvEXT,weight) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexWeightPointerEXT, GLint size, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexWeightPointerEXT,size,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, AcquireKeyedMutexWin32EXT, GLuint memory, GLuint64 key, GLuint timeout) DECLARE_GL_FUNCTION_STUB_END(GLboolean, AcquireKeyedMutexWin32EXT,memory,key,timeout) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, ReleaseKeyedMutexWin32EXT, GLuint memory, GLuint64 key) DECLARE_GL_FUNCTION_STUB_END(GLboolean, ReleaseKeyedMutexWin32EXT,memory,key) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowRectanesEXT, GLenum mode, GLsizei count, const GLint* box) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowRectanesEXT,mode,count,box) -DECLARE_GL_FUNCTION_STUB_HEAD(GLsync, ImportSyncEXT, GLenum external_sync_type, GLintptr external_sync, GLbitfield flags) DECLARE_GL_FUNCTION_STUB_END(GLsync, ImportSyncEXT,external_sync_type,external_sync,flags) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FrameTerminatorGREMEDY,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FrameTerminatorGREMEDY,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StringMarkerGREMEDY, GLsizei len, const void* string) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StringMarkerGREMEDY,len,string) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImageTransformParameteriHP, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImageTransformParameteriHP,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImageTransformParameterfHP, GLenum target, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImageTransformParameterfHP,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImageTransformParameterivHP, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImageTransformParameterivHP,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ImageTransformParameterfvHP, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ImageTransformParameterfvHP,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetImageTransformParameterivHP, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetImageTransformParameterivHP,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetImageTransformParameterfvHP, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetImageTransformParameterfvHP,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiModeDrawArraysIBM,const GLenum* mode, const GLint* first, const GLsizei* count, GLsizei primcount, GLint modestride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiModeDrawArraysIBM,mode,first,count,primcount,modestride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiModeDrawElementsIBM,const GLenum* mode, const GLsizei* count, GLenum type, const void* const*indices, GLsizei primcount, GLint modestride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiModeDrawElementsIBM,mode,count,type,indices,primcount,modestride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushStaticDataIBM, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushStaticDataIBM,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorPointerListIBM, GLint size, GLenum type, GLint stride, const void* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorPointerListIBM,size,type,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColorPointerListIBM, GLint size, GLenum type, GLint stride, const void* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColorPointerListIBM,size,type,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EdgeFlagPointerListIBM, GLint stride, const GLboolean* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EdgeFlagPointerListIBM,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordPointerListIBM, GLenum type, GLint stride, const void* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordPointerListIBM,type,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexPointerListIBM, GLenum type, GLint stride, const void* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexPointerListIBM,type,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalPointerListIBM, GLenum type, GLint stride, const void* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalPointerListIBM,type,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordPointerListIBM, GLint size, GLenum type, GLint stride, const void* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordPointerListIBM,size,type,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexPointerListIBM, GLint size, GLenum type, GLint stride, const void* *pointer, GLint ptrstride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexPointerListIBM,size,type,stride,pointer,ptrstride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendFuncSeparateINGR, GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendFuncSeparateINGR,sfactorRGB,dfactorRGB,sfactorAlpha,dfactorAlpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ApplyFramebufferAttachmentCMAAINTEL,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ApplyFramebufferAttachmentCMAAINTEL,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SyncTextureINTEL, GLuint texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SyncTextureINTEL,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UnmapTexture2DINTEL, GLuint texture, GLint level) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UnmapTexture2DINTEL,texture,level) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexPointervINTEL, GLint size, GLenum type, const void* *pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexPointervINTEL,size,type,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalPointervINTEL, GLenum type, const void* *pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalPointervINTEL,type,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorPointervINTEL, GLint size, GLenum type, const void* *pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorPointervINTEL,size,type,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordPointervINTEL, GLint size, GLenum type, const void* *pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordPointervINTEL,size,type,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginPerfQueryINTEL, GLuint queryHandle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginPerfQueryINTEL,queryHandle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreatePerfQueryINTEL, GLuint queryId, GLuint* queryHandle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreatePerfQueryINTEL,queryId,queryHandle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeletePerfQueryINTEL, GLuint queryHandle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeletePerfQueryINTEL,queryHandle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndPerfQueryINTEL, GLuint queryHandle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndPerfQueryINTEL,queryHandle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFirstPerfQueryIdINTEL, GLuint* queryId) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFirstPerfQueryIdINTEL,queryId) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNextPerfQueryIdINTEL, GLuint queryId, GLuint* nextQueryId) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNextPerfQueryIdINTEL,queryId,nextQueryId) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfCounterInfoINTEL, GLuint queryId, GLuint counterId, GLuint counterNameLength, GLchar* counterName, GLuint counterDescLength, GLchar* counterDesc, GLuint* counterOffset, GLuint* counterDataSize, GLuint* counterTypeEnum, GLuint* counterDataTypeEnum, GLuint64* rawCounterMaxValue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfCounterInfoINTEL,queryId,counterId,counterNameLength,counterName,counterDescLength,counterDesc,counterOffset,counterDataSize,counterTypeEnum,counterDataTypeEnum,rawCounterMaxValue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfQueryDataINTEL, GLuint queryHandle, GLuint flags, GLsizei dataSize, void* data, GLuint* bytesWritten) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfQueryDataINTEL,queryHandle,flags,dataSize,data,bytesWritten) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfQueryIdByNameINTEL, GLchar* queryName, GLuint* queryId) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfQueryIdByNameINTEL,queryName,queryId) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPerfQueryInfoINTEL, GLuint queryId, GLuint queryNameLength, GLchar* queryName, GLuint* dataSize, GLuint* noCounters, GLuint* noInstances, GLuint* capsMask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPerfQueryInfoINTEL,queryId,queryNameLength,queryName,dataSize,noCounters,noInstances,capsMask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferParameteriMESA, GLenum target, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferParameteriMESA,target,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFramebufferParameterivMESA, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFramebufferParameterivMESA,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResizeBuffersMESA,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResizeBuffersMESA,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2dMESA, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2dMESA,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2dvMESA,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2dvMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2fMESA, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2fMESA,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2fvMESA,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2fvMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2iMESA, GLint x, GLint y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2iMESA,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2ivMESA,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2ivMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2sMESA, GLshort x, GLshort y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2sMESA,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos2svMESA,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos2svMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3dMESA, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3dMESA,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3dvMESA,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3dvMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3fMESA, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3fMESA,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3fvMESA,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3fvMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3iMESA, GLint x, GLint y, GLint z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3iMESA,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3ivMESA,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3ivMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3sMESA, GLshort x, GLshort y, GLshort z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3sMESA,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos3svMESA,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos3svMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4dMESA, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4dMESA,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4dvMESA,const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4dvMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4fMESA, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4fMESA,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4fvMESA,const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4fvMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4iMESA, GLint x, GLint y, GLint z, GLint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4iMESA,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4ivMESA,const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4ivMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4sMESA, GLshort x, GLshort y, GLshort z, GLshort w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4sMESA,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WindowPos4svMESA,const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WindowPos4svMESA,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginConditionalRenderNVX, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginConditionalRenderNVX,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndConditionalRenderNVX,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndConditionalRenderNVX,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UploadGpuMaskNVX, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UploadGpuMaskNVX,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastViewportArrayvNVX, GLuint gpu, GLuint first, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastViewportArrayvNVX,gpu,first,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastViewportPositionWScaleNVX, GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastViewportPositionWScaleNVX,gpu,index,xcoeff,ycoeff) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastScissorArrayvNVX, GLuint gpu, GLuint first, GLsizei count, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastScissorArrayvNVX,gpu,first,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, AsyncCopyBufferSubDataNVX, GLsizei waitSemaphoreCount, const GLuint* waitSemaphoreArray, const GLuint64* fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint* signalSemaphoreArray, const GLuint64* signalValueArray) DECLARE_GL_FUNCTION_STUB_END(GLuint, AsyncCopyBufferSubDataNVX,waitSemaphoreCount,waitSemaphoreArray,fenceValueArray,readGpu,writeGpuMask,readBuffer,writeBuffer,readOffset,writeOffset,size,signalSemaphoreCount,signalSemaphoreArray,signalValueArray) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, AsyncCopyImageSubDataNVX, GLsizei waitSemaphoreCount, const GLuint* waitSemaphoreArray, const GLuint64* waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint* signalSemaphoreArray, const GLuint64* signalValueArray) DECLARE_GL_FUNCTION_STUB_END(GLuint, AsyncCopyImageSubDataNVX,waitSemaphoreCount,waitSemaphoreArray,waitValueArray,srcGpu,dstGpuMask,srcName,srcTarget,srcLevel,srcX,srcY,srcZ,dstName,dstTarget,dstLevel,dstX,dstY,dstZ,srcWidth,srcHeight,srcDepth,signalSemaphoreCount,signalSemaphoreArray,signalValueArray) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LGPUNamedBufferSubDataNVX, GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LGPUNamedBufferSubDataNVX,gpuMask,buffer,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LGPUCopyImageSubDataNVX, GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LGPUCopyImageSubDataNVX,sourceGpu,destinationGpuMask,srcName,srcTarget,srcLevel,srcX,srxY,srcZ,dstName,dstTarget,dstLevel,dstX,dstY,dstZ,width,height,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LGPUInterlockNVX,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LGPUInterlockNVX,) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, CreateProgressFenceNVX,void) DECLARE_GL_FUNCTION_STUB_END(GLuint, CreateProgressFenceNVX,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SignalSemaphoreui64NVX, GLuint signalGpu, GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64* fenceValueArray) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SignalSemaphoreui64NVX,signalGpu,fenceObjectCount,semaphoreArray,fenceValueArray) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WaitSemaphoreui64NVX, GLuint waitGpu, GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64* fenceValueArray) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WaitSemaphoreui64NVX,waitGpu,fenceObjectCount,semaphoreArray,fenceValueArray) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClientWaitSemaphoreui64NVX, GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64* fenceValueArray) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClientWaitSemaphoreui64NVX,fenceObjectCount,semaphoreArray,fenceValueArray) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AlphaToCoverageDitherControlNV, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AlphaToCoverageDitherControlNV,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArraysIndirectBindlessNV, GLenum mode, const void* indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArraysIndirectBindlessNV,mode,indirect,drawCount,stride,vertexBufferCount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementsIndirectBindlessNV, GLenum mode, GLenum type, const void* indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementsIndirectBindlessNV,mode,type,indirect,drawCount,stride,vertexBufferCount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawArraysIndirectBindlessCountNV, GLenum mode, const void* indirect, GLsizei drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawArraysIndirectBindlessCountNV,mode,indirect,drawCount,maxDrawCount,stride,vertexBufferCount) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawElementsIndirectBindlessCountNV, GLenum mode, GLenum type, const void* indirect, GLsizei drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawElementsIndirectBindlessCountNV,mode,type,indirect,drawCount,maxDrawCount,stride,vertexBufferCount) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint64, GetTextureHandleNV, GLuint texture) DECLARE_GL_FUNCTION_STUB_END(GLuint64, GetTextureHandleNV,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint64, GetTextureSamplerHandleNV, GLuint texture, GLuint sampler) DECLARE_GL_FUNCTION_STUB_END(GLuint64, GetTextureSamplerHandleNV,texture,sampler) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeTextureHandleResidentNV, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeTextureHandleResidentNV,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeTextureHandleNonResidentNV, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeTextureHandleNonResidentNV,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint64, GetImageHandleNV, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format) DECLARE_GL_FUNCTION_STUB_END(GLuint64, GetImageHandleNV,texture,level,layered,layer,format) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeImageHandleResidentNV, GLuint64 handle, GLenum access) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeImageHandleResidentNV,handle,access) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeImageHandleNonResidentNV, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeImageHandleNonResidentNV,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformHandleui64NV, GLint location, GLuint64 value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformHandleui64NV,location,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, UniformHandleui64vNV, GLint location, GLsizei count, const GLuint64* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, UniformHandleui64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformHandleui64NV, GLuint program, GLint location, GLuint64 value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformHandleui64NV,program,location,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformHandleui64vNV, GLuint program, GLint location, GLsizei count, const GLuint64* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformHandleui64vNV,program,location,count,values) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsTextureHandleResidentNV, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsTextureHandleResidentNV,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsImageHandleResidentNV, GLuint64 handle) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsImageHandleResidentNV,handle) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendParameteriNV, GLenum pname, GLint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendParameteriNV,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BlendBarrierNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BlendBarrierNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ViewportPositionWScaleNV, GLuint index, GLfloat xcoeff, GLfloat ycoeff) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ViewportPositionWScaleNV,index,xcoeff,ycoeff) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateStatesNV, GLsizei n, GLuint* states) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateStatesNV,n,states) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteStatesNV, GLsizei n, const GLuint* states) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteStatesNV,n,states) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsStateNV, GLuint state) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsStateNV,state) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StateCaptureNV, GLuint state, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StateCaptureNV,state,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GetCommandHeaderNV, GLenum tokenID, GLuint size) DECLARE_GL_FUNCTION_STUB_END(GLuint, GetCommandHeaderNV,tokenID,size) -DECLARE_GL_FUNCTION_STUB_HEAD(GLushort, GetStageIndexNV, GLenum shadertype) DECLARE_GL_FUNCTION_STUB_END(GLushort, GetStageIndexNV,shadertype) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawCommandsNV, GLenum primitiveMode, GLuint buffer, const GLintptr* indirects, const GLsizei* sizes, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawCommandsNV,primitiveMode,buffer,indirects,sizes,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawCommandsAddressNV, GLenum primitiveMode, const GLuint64* indirects, const GLsizei* sizes, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawCommandsAddressNV,primitiveMode,indirects,sizes,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawCommandsStatesNV, GLuint buffer, const GLintptr* indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawCommandsStatesNV,buffer,indirects,sizes,states,fbos,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawCommandsStatesAddressNV,const GLuint64* indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawCommandsStatesAddressNV,indirects,sizes,states,fbos,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateCommandListsNV, GLsizei n, GLuint* lists) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateCommandListsNV,n,lists) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteCommandListsNV, GLsizei n, const GLuint* lists) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteCommandListsNV,n,lists) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsCommandListNV, GLuint list) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsCommandListNV,list) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ListDrawCommandsStatesClientNV, GLuint list, GLuint segment, const void* *indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ListDrawCommandsStatesClientNV,list,segment,indirects,sizes,states,fbos,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CommandListSegmentsNV, GLuint list, GLuint segments) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CommandListSegmentsNV,list,segments) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CompileCommandListNV, GLuint list) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CompileCommandListNV,list) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CallCommandListNV, GLuint list) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CallCommandListNV,list) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginConditionalRenderNV, GLuint id, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginConditionalRenderNV,id,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndConditionalRenderNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndConditionalRenderNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SubpixelPrecisionBiasNV, GLuint xbits, GLuint ybits) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SubpixelPrecisionBiasNV,xbits,ybits) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConservativeRasterParameterfNV, GLenum pname, GLfloat value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConservativeRasterParameterfNV,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ConservativeRasterParameteriNV, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ConservativeRasterParameteriNV,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyImageSubDataNV, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyImageSubDataNV,srcName,srcTarget,srcLevel,srcX,srcY,srcZ,dstName,dstTarget,dstLevel,dstX,dstY,dstZ,width,height,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthRangedNV, GLdouble zNear, GLdouble zFar) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthRangedNV,zNear,zFar) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ClearDepthdNV, GLdouble depth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ClearDepthdNV,depth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DepthBoundsdNV, GLdouble zmin, GLdouble zmax) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DepthBoundsdNV,zmin,zmax) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawTextureNV, GLuint texture, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawTextureNV,texture,sampler,x0,y0,x1,y1,z,s0,t0,s1,t1) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawVkImageNV, GLuint64 vkImage, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawVkImageNV,vkImage,sampler,x0,y0,x1,y1,z,s0,t0,s1,t1) -DECLARE_GL_FUNCTION_STUB_HEAD(GLVULKANPROCNV, GetVkProcAddrNV,const GLchar* name) DECLARE_GL_FUNCTION_STUB_END(GLVULKANPROCNV, GetVkProcAddrNV,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WaitVkSemaphoreNV, GLuint64 vkSemaphore) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WaitVkSemaphoreNV,vkSemaphore) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SignalVkSemaphoreNV, GLuint64 vkSemaphore) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SignalVkSemaphoreNV,vkSemaphore) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SignalVkFenceNV, GLuint64 vkFence) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SignalVkFenceNV,vkFence) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapControlPointsNV, GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const void* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapControlPointsNV,target,index,type,ustride,vstride,uorder,vorder,packed,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapParameterivNV, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapParameterivNV,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MapParameterfvNV, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MapParameterfvNV,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapControlPointsNV, GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, void* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapControlPointsNV,target,index,type,ustride,vstride,packed,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapParameterivNV, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapParameterivNV,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapParameterfvNV, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapParameterfvNV,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapAttribParameterivNV, GLenum target, GLuint index, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapAttribParameterivNV,target,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMapAttribParameterfvNV, GLenum target, GLuint index, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMapAttribParameterfvNV,target,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EvalMapsNV, GLenum target, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EvalMapsNV,target,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMultisamplefvNV, GLenum pname, GLuint index, GLfloat* val) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMultisamplefvNV,pname,index,val) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SampleMaskIndexedNV, GLuint index, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SampleMaskIndexedNV,index,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexRenderbufferNV, GLenum target, GLuint renderbuffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexRenderbufferNV,target,renderbuffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteFencesNV, GLsizei n, const GLuint* fences) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteFencesNV,n,fences) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenFencesNV, GLsizei n, GLuint* fences) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenFencesNV,n,fences) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsFenceNV, GLuint fence) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsFenceNV,fence) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, TestFenceNV, GLuint fence) DECLARE_GL_FUNCTION_STUB_END(GLboolean, TestFenceNV,fence) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFenceivNV, GLuint fence, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFenceivNV,fence,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FinishFenceNV, GLuint fence) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FinishFenceNV,fence) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SetFenceNV, GLuint fence, GLenum condition) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SetFenceNV,fence,condition) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentCoverageColorNV, GLuint color) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentCoverageColorNV,color) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramNamedParameter4fNV, GLuint id, GLsizei len, const GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramNamedParameter4fNV,id,len,name,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramNamedParameter4fvNV, GLuint id, GLsizei len, const GLubyte* name, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramNamedParameter4fvNV,id,len,name,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramNamedParameter4dNV, GLuint id, GLsizei len, const GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramNamedParameter4dNV,id,len,name,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramNamedParameter4dvNV, GLuint id, GLsizei len, const GLubyte* name, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramNamedParameter4dvNV,id,len,name,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramNamedParameterfvNV, GLuint id, GLsizei len, const GLubyte* name, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramNamedParameterfvNV,id,len,name,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramNamedParameterdvNV, GLuint id, GLsizei len, const GLubyte* name, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramNamedParameterdvNV,id,len,name,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CoverageModulationTableNV, GLsizei n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CoverageModulationTableNV,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCoverageModulationTableNV, GLsizei bufSize, GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCoverageModulationTableNV,bufSize,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CoverageModulationNV, GLenum components) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CoverageModulationNV,components) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RenderbufferStorageMultisampleCoverageNV, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RenderbufferStorageMultisampleCoverageNV,target,coverageSamples,colorSamples,internalformat,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramVertexLimitNV, GLenum target, GLint limit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramVertexLimitNV,target,limit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTextureFaceEXT, GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTextureFaceEXT,target,attachment,texture,level,face) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RenderGpuMaskNV, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RenderGpuMaskNV,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastBufferSubDataNV, GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastBufferSubDataNV,gpuMask,buffer,offset,size,data) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastCopyBufferSubDataNV, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastCopyBufferSubDataNV,readGpu,writeGpuMask,readBuffer,writeBuffer,readOffset,writeOffset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastCopyImageSubDataNV, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastCopyImageSubDataNV,srcGpu,dstGpuMask,srcName,srcTarget,srcLevel,srcX,srcY,srcZ,dstName,dstTarget,dstLevel,dstX,dstY,dstZ,srcWidth,srcHeight,srcDepth) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastBlitFramebufferNV, GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastBlitFramebufferNV,srcGpu,dstGpu,srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastFramebufferSampleLocationsfvNV, GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastFramebufferSampleLocationsfvNV,gpu,framebuffer,start,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastBarrierNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastBarrierNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastWaitSyncNV, GLuint signalGpu, GLbitfield waitGpuMask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastWaitSyncNV,signalGpu,waitGpuMask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastGetQueryObjectivNV, GLuint gpu, GLuint id, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastGetQueryObjectivNV,gpu,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastGetQueryObjectuivNV, GLuint gpu, GLuint id, GLenum pname, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastGetQueryObjectuivNV,gpu,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastGetQueryObjecti64vNV, GLuint gpu, GLuint id, GLenum pname, GLint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastGetQueryObjecti64vNV,gpu,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MulticastGetQueryObjectui64vNV, GLuint gpu, GLuint id, GLenum pname, GLuint64* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MulticastGetQueryObjectui64vNV,gpu,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameterI4iNV, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameterI4iNV,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameterI4ivNV, GLenum target, GLuint index, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameterI4ivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParametersI4ivNV, GLenum target, GLuint index, GLsizei count, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParametersI4ivNV,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameterI4uiNV, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameterI4uiNV,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParameterI4uivNV, GLenum target, GLuint index, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParameterI4uivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramLocalParametersI4uivNV, GLenum target, GLuint index, GLsizei count, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramLocalParametersI4uivNV,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameterI4iNV, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameterI4iNV,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameterI4ivNV, GLenum target, GLuint index, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameterI4ivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParametersI4ivNV, GLenum target, GLuint index, GLsizei count, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParametersI4ivNV,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameterI4uiNV, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameterI4uiNV,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParameterI4uivNV, GLenum target, GLuint index, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParameterI4uivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramEnvParametersI4uivNV, GLenum target, GLuint index, GLsizei count, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramEnvParametersI4uivNV,target,index,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramLocalParameterIivNV, GLenum target, GLuint index, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramLocalParameterIivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramLocalParameterIuivNV, GLenum target, GLuint index, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramLocalParameterIuivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramEnvParameterIivNV, GLenum target, GLuint index, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramEnvParameterIivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramEnvParameterIuivNV, GLenum target, GLuint index, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramEnvParameterIuivNV,target,index,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramSubroutineParametersuivNV, GLenum target, GLsizei count, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramSubroutineParametersuivNV,target,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramSubroutineParameteruivNV, GLenum target, GLuint index, GLuint* param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramSubroutineParameteruivNV,target,index,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2hNV, GLhalfNV x, GLhalfNV y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2hNV,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex2hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex2hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3hNV, GLhalfNV x, GLhalfNV y, GLhalfNV z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3hNV,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex3hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex3hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4hNV, GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4hNV,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Vertex4hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Vertex4hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3hNV, GLhalfNV nx, GLhalfNV ny, GLhalfNV nz) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3hNV,nx,ny,nz) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3hNV, GLhalfNV red, GLhalfNV green, GLhalfNV blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3hNV,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4hNV, GLhalfNV red, GLhalfNV green, GLhalfNV blue, GLhalfNV alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4hNV,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1hNV, GLhalfNV s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1hNV,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord1hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord1hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2hNV, GLhalfNV s, GLhalfNV t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2hNV,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3hNV, GLhalfNV s, GLhalfNV t, GLhalfNV r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3hNV,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord3hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord3hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4hNV, GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4hNV,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1hNV, GLenum target, GLhalfNV s) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1hNV,target,s) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord1hvNV, GLenum target, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord1hvNV,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2hNV, GLenum target, GLhalfNV s, GLhalfNV t) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2hNV,target,s,t) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord2hvNV, GLenum target, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord2hvNV,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3hNV, GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3hNV,target,s,t,r) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord3hvNV, GLenum target, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord3hvNV,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4hNV, GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4hNV,target,s,t,r,q) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiTexCoord4hvNV, GLenum target, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiTexCoord4hvNV,target,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordhNV, GLhalfNV fog) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordhNV,fog) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordhvNV,const GLhalfNV* fog) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordhvNV,fog) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3hNV, GLhalfNV red, GLhalfNV green, GLhalfNV blue) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3hNV,red,green,blue) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColor3hvNV,const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColor3hvNV,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexWeighthNV, GLhalfNV weight) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexWeighthNV,weight) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexWeighthvNV,const GLhalfNV* weight) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexWeighthvNV,weight) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1hNV, GLuint index, GLhalfNV x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1hNV,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1hvNV, GLuint index, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1hvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2hNV, GLuint index, GLhalfNV x, GLhalfNV y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2hNV,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2hvNV, GLuint index, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2hvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3hNV, GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3hNV,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3hvNV, GLuint index, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3hvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4hNV, GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4hNV,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4hvNV, GLuint index, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4hvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs1hvNV, GLuint index, GLsizei n, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs1hvNV,index,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs2hvNV, GLuint index, GLsizei n, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs2hvNV,index,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs3hvNV, GLuint index, GLsizei n, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs3hvNV,index,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs4hvNV, GLuint index, GLsizei n, const GLhalfNV* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs4hvNV,index,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetInternalformatSampleivNV, GLenum target, GLenum internalformat, GLsizei samples, GLenum pname, GLsizei count, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetInternalformatSampleivNV,target,internalformat,samples,pname,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetMemoryObjectDetachedResourcesuivNV, GLuint memory, GLenum pname, GLint first, GLsizei count, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetMemoryObjectDetachedResourcesuivNV,memory,pname,first,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResetMemoryObjectParameterNV, GLuint memory, GLenum pname) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResetMemoryObjectParameterNV,memory,pname) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexAttachMemoryNV, GLenum target, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexAttachMemoryNV,target,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferAttachMemoryNV, GLenum target, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferAttachMemoryNV,target,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureAttachMemoryNV, GLuint texture, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureAttachMemoryNV,texture,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferAttachMemoryNV, GLuint buffer, GLuint memory, GLuint64 offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferAttachMemoryNV,buffer,memory,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferPageCommitmentMemNV, GLenum target, GLintptr offset, GLsizeiptr size, GLuint memory, GLuint64 memOffset, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferPageCommitmentMemNV,target,offset,size,memory,memOffset,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexPageCommitmentMemNV, GLenum target, GLint layer, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexPageCommitmentMemNV,target,layer,level,xoffset,yoffset,zoffset,width,height,depth,memory,offset,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedBufferPageCommitmentMemNV, GLuint buffer, GLintptr offset, GLsizeiptr size, GLuint memory, GLuint64 memOffset, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedBufferPageCommitmentMemNV,buffer,offset,size,memory,memOffset,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexturePageCommitmentMemNV, GLuint texture, GLint layer, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset, GLboolean commit) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexturePageCommitmentMemNV,texture,layer,level,xoffset,yoffset,zoffset,width,height,depth,memory,offset,commit) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawMeshTasksNV, GLuint first, GLuint count) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawMeshTasksNV,first,count) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawMeshTasksIndirectNV, GLintptr indirect) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawMeshTasksIndirectNV,indirect) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawMeshTasksIndirectNV, GLintptr indirect, GLsizei drawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawMeshTasksIndirectNV,indirect,drawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MultiDrawMeshTasksIndirectCountNV, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MultiDrawMeshTasksIndirectCountNV,indirect,drawcount,maxdrawcount,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenOcclusionQueriesNV, GLsizei n, GLuint* ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenOcclusionQueriesNV,n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteOcclusionQueriesNV, GLsizei n, const GLuint* ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteOcclusionQueriesNV,n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsOcclusionQueryNV, GLuint id) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsOcclusionQueryNV,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginOcclusionQueryNV, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginOcclusionQueryNV,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndOcclusionQueryNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndOcclusionQueryNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetOcclusionQueryivNV, GLuint id, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetOcclusionQueryivNV,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetOcclusionQueryuivNV, GLuint id, GLenum pname, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetOcclusionQueryuivNV,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramBufferParametersfvNV, GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramBufferParametersfvNV,target,bindingIndex,wordIndex,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramBufferParametersIivNV, GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramBufferParametersIivNV,target,bindingIndex,wordIndex,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramBufferParametersIuivNV, GLenum target, GLuint bindingIndex, GLuint wordIndex, GLsizei count, const GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramBufferParametersIuivNV,target,bindingIndex,wordIndex,count,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GenPathsNV, GLsizei range) DECLARE_GL_FUNCTION_STUB_END(GLuint, GenPathsNV,range) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeletePathsNV, GLuint path, GLsizei range) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeletePathsNV,path,range) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsPathNV, GLuint path) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsPathNV,path) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathCommandsNV, GLuint path, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const void* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathCommandsNV,path,numCommands,commands,numCoords,coordType,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathCoordsNV, GLuint path, GLsizei numCoords, GLenum coordType, const void* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathCoordsNV,path,numCoords,coordType,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathSubCommandsNV, GLuint path, GLsizei commandStart, GLsizei commandsToDelete, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const void* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathSubCommandsNV,path,commandStart,commandsToDelete,numCommands,commands,numCoords,coordType,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathSubCoordsNV, GLuint path, GLsizei coordStart, GLsizei numCoords, GLenum coordType, const void* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathSubCoordsNV,path,coordStart,numCoords,coordType,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathStringNV, GLuint path, GLenum format, GLsizei length, const void* pathString) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathStringNV,path,format,length,pathString) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathGlyphsNV, GLuint firstPathName, GLenum fontTarget, const void* fontName, GLbitfield fontStyle, GLsizei numGlyphs, GLenum type, const void* charcodes, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathGlyphsNV,firstPathName,fontTarget,fontName,fontStyle,numGlyphs,type,charcodes,handleMissingGlyphs,pathParameterTemplate,emScale) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathGlyphRangeNV, GLuint firstPathName, GLenum fontTarget, const void* fontName, GLbitfield fontStyle, GLuint firstGlyph, GLsizei numGlyphs, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathGlyphRangeNV,firstPathName,fontTarget,fontName,fontStyle,firstGlyph,numGlyphs,handleMissingGlyphs,pathParameterTemplate,emScale) -DECLARE_GL_FUNCTION_STUB_HEAD(void, WeightPathsNV, GLuint resultPath, GLsizei numPaths, const GLuint* paths, const GLfloat* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, WeightPathsNV,resultPath,numPaths,paths,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyPathNV, GLuint resultPath, GLuint srcPath) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyPathNV,resultPath,srcPath) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InterpolatePathsNV, GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InterpolatePathsNV,resultPath,pathA,pathB,weight) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TransformPathNV, GLuint resultPath, GLuint srcPath, GLenum transformType, const GLfloat* transformValues) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TransformPathNV,resultPath,srcPath,transformType,transformValues) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathParameterivNV, GLuint path, GLenum pname, const GLint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathParameterivNV,path,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathParameteriNV, GLuint path, GLenum pname, GLint value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathParameteriNV,path,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathParameterfvNV, GLuint path, GLenum pname, const GLfloat* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathParameterfvNV,path,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathParameterfNV, GLuint path, GLenum pname, GLfloat value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathParameterfNV,path,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathDashArrayNV, GLuint path, GLsizei dashCount, const GLfloat* dashArray) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathDashArrayNV,path,dashCount,dashArray) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathStencilFuncNV, GLenum func, GLint ref, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathStencilFuncNV,func,ref,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathStencilDepthOffsetNV, GLfloat factor, GLfloat units) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathStencilDepthOffsetNV,factor,units) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilFillPathNV, GLuint path, GLenum fillMode, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilFillPathNV,path,fillMode,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilStrokePathNV, GLuint path, GLint reference, GLuint mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilStrokePathNV,path,reference,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilFillPathInstancedNV, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum transformType, const GLfloat* transformValues) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilFillPathInstancedNV,numPaths,pathNameType,paths,pathBase,fillMode,mask,transformType,transformValues) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilStrokePathInstancedNV, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLint reference, GLuint mask, GLenum transformType, const GLfloat* transformValues) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilStrokePathInstancedNV,numPaths,pathNameType,paths,pathBase,reference,mask,transformType,transformValues) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathCoverDepthFuncNV, GLenum func) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathCoverDepthFuncNV,func) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CoverFillPathNV, GLuint path, GLenum coverMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CoverFillPathNV,path,coverMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CoverStrokePathNV, GLuint path, GLenum coverMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CoverStrokePathNV,path,coverMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CoverFillPathInstancedNV, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat* transformValues) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CoverFillPathInstancedNV,numPaths,pathNameType,paths,pathBase,coverMode,transformType,transformValues) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CoverStrokePathInstancedNV, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat* transformValues) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CoverStrokePathInstancedNV,numPaths,pathNameType,paths,pathBase,coverMode,transformType,transformValues) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathParameterivNV, GLuint path, GLenum pname, GLint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathParameterivNV,path,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathParameterfvNV, GLuint path, GLenum pname, GLfloat* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathParameterfvNV,path,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathCommandsNV, GLuint path, GLubyte* commands) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathCommandsNV,path,commands) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathCoordsNV, GLuint path, GLfloat* coords) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathCoordsNV,path,coords) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathDashArrayNV, GLuint path, GLfloat* dashArray) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathDashArrayNV,path,dashArray) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathMetricsNV, GLbitfield metricQueryMask, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLsizei stride, GLfloat* metrics) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathMetricsNV,metricQueryMask,numPaths,pathNameType,paths,pathBase,stride,metrics) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathMetricRangeNV, GLbitfield metricQueryMask, GLuint firstPathName, GLsizei numPaths, GLsizei stride, GLfloat* metrics) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathMetricRangeNV,metricQueryMask,firstPathName,numPaths,stride,metrics) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathSpacingNV, GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat* returnedSpacing) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathSpacingNV,pathListMode,numPaths,pathNameType,paths,pathBase,advanceScale,kerningScale,transformType,returnedSpacing) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsPointInFillPathNV, GLuint path, GLuint mask, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsPointInFillPathNV,path,mask,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsPointInStrokePathNV, GLuint path, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsPointInStrokePathNV,path,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(GLfloat, GetPathLengthNV, GLuint path, GLsizei startSegment, GLsizei numSegments) DECLARE_GL_FUNCTION_STUB_END(GLfloat, GetPathLengthNV,path,startSegment,numSegments) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, PointAlongPathNV, GLuint path, GLsizei startSegment, GLsizei numSegments, GLfloat distance, GLfloat* x, GLfloat* y, GLfloat* tangentX, GLfloat* tangentY) DECLARE_GL_FUNCTION_STUB_END(GLboolean, PointAlongPathNV,path,startSegment,numSegments,distance,x,y,tangentX,tangentY) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoad3x2fNV, GLenum matrixMode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoad3x2fNV,matrixMode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoad3x3fNV, GLenum matrixMode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoad3x3fNV,matrixMode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixLoadTranspose3x3fNV, GLenum matrixMode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixLoadTranspose3x3fNV,matrixMode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMult3x2fNV, GLenum matrixMode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMult3x2fNV,matrixMode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMult3x3fNV, GLenum matrixMode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMult3x3fNV,matrixMode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MatrixMultTranspose3x3fNV, GLenum matrixMode, const GLfloat* m) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MatrixMultTranspose3x3fNV,matrixMode,m) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilThenCoverFillPathNV, GLuint path, GLenum fillMode, GLuint mask, GLenum coverMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilThenCoverFillPathNV,path,fillMode,mask,coverMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilThenCoverStrokePathNV, GLuint path, GLint reference, GLuint mask, GLenum coverMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilThenCoverStrokePathNV,path,reference,mask,coverMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilThenCoverFillPathInstancedNV, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat* transformValues) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilThenCoverFillPathInstancedNV,numPaths,pathNameType,paths,pathBase,fillMode,mask,coverMode,transformType,transformValues) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StencilThenCoverStrokePathInstancedNV, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLint reference, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat* transformValues) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StencilThenCoverStrokePathInstancedNV,numPaths,pathNameType,paths,pathBase,reference,mask,coverMode,transformType,transformValues) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, PathGlyphIndexRangeNV, GLenum fontTarget, const void* fontName, GLbitfield fontStyle, GLuint pathParameterTemplate, GLfloat emScale, GLuint* baseAndCount) DECLARE_GL_FUNCTION_STUB_END(GLenum, PathGlyphIndexRangeNV,fontTarget,fontName,fontStyle,pathParameterTemplate,emScale,baseAndCount) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, PathGlyphIndexArrayNV, GLuint firstPathName, GLenum fontTarget, const void* fontName, GLbitfield fontStyle, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale) DECLARE_GL_FUNCTION_STUB_END(GLenum, PathGlyphIndexArrayNV,firstPathName,fontTarget,fontName,fontStyle,firstGlyphIndex,numGlyphs,pathParameterTemplate,emScale) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, PathMemoryGlyphIndexArrayNV, GLuint firstPathName, GLenum fontTarget, GLsizeiptr fontSize, const void* fontData, GLsizei faceIndex, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale) DECLARE_GL_FUNCTION_STUB_END(GLenum, PathMemoryGlyphIndexArrayNV,firstPathName,fontTarget,fontSize,fontData,faceIndex,firstGlyphIndex,numGlyphs,pathParameterTemplate,emScale) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramPathFragmentInputGenNV, GLuint program, GLint location, GLenum genMode, GLint components, const GLfloat* coeffs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramPathFragmentInputGenNV,program,location,genMode,components,coeffs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramResourcefvNV, GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei count, GLsizei* length, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramResourcefvNV,program,programInterface,index,propCount,props,count,length,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathColorGenNV, GLenum color, GLenum genMode, GLenum colorFormat, const GLfloat* coeffs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathColorGenNV,color,genMode,colorFormat,coeffs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathTexGenNV, GLenum texCoordSet, GLenum genMode, GLint components, const GLfloat* coeffs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathTexGenNV,texCoordSet,genMode,components,coeffs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PathFogGenNV, GLenum genMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PathFogGenNV,genMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathColorGenivNV, GLenum color, GLenum pname, GLint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathColorGenivNV,color,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathColorGenfvNV, GLenum color, GLenum pname, GLfloat* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathColorGenfvNV,color,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathTexGenivNV, GLenum texCoordSet, GLenum pname, GLint* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathTexGenivNV,texCoordSet,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPathTexGenfvNV, GLenum texCoordSet, GLenum pname, GLfloat* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPathTexGenfvNV,texCoordSet,pname,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelDataRangeNV, GLenum target, GLsizei length, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelDataRangeNV,target,length,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushPixelDataRangeNV, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushPixelDataRangeNV,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameteriNV, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameteriNV,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterivNV, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterivNV,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PresentFrameKeyedNV, GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PresentFrameKeyedNV,video_slot,minPresentTime,beginPresentTimeId,presentDurationId,type,target0,fill0,key0,target1,fill1,key1) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PresentFrameDualFillNV, GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PresentFrameDualFillNV,video_slot,minPresentTime,beginPresentTimeId,presentDurationId,type,target0,fill0,target1,fill1,target2,fill2,target3,fill3) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideoivNV, GLuint video_slot, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideoivNV,video_slot,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideouivNV, GLuint video_slot, GLenum pname, GLuint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideouivNV,video_slot,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideoi64vNV, GLuint video_slot, GLenum pname, GLint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideoi64vNV,video_slot,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideoui64vNV, GLuint video_slot, GLenum pname, GLuint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideoui64vNV,video_slot,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PrimitiveRestartNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PrimitiveRestartNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PrimitiveRestartIndexNV, GLuint index) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PrimitiveRestartIndexNV,index) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, QueryResourceNV, GLenum queryType, GLint tagId, GLuint count, GLint* buffer) DECLARE_GL_FUNCTION_STUB_END(GLint, QueryResourceNV,queryType,tagId,count,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenQueryResourceTagNV, GLsizei n, GLint* tagIds) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenQueryResourceTagNV,n,tagIds) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteQueryResourceTagNV, GLsizei n, const GLint* tagIds) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteQueryResourceTagNV,n,tagIds) -DECLARE_GL_FUNCTION_STUB_HEAD(void, QueryResourceTagNV, GLint tagId, const GLchar* tagString) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, QueryResourceTagNV,tagId,tagString) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CombinerParameterfvNV, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CombinerParameterfvNV,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CombinerParameterfNV, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CombinerParameterfNV,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CombinerParameterivNV, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CombinerParameterivNV,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CombinerParameteriNV, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CombinerParameteriNV,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CombinerInputNV, GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CombinerInputNV,stage,portion,variable,input,mapping,componentUsage) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CombinerOutputNV, GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CombinerOutputNV,stage,portion,abOutput,cdOutput,sumOutput,scale,bias,abDotProduct,cdDotProduct,muxSum) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FinalCombinerInputNV, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FinalCombinerInputNV,variable,input,mapping,componentUsage) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCombinerInputParameterfvNV, GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCombinerInputParameterfvNV,stage,portion,variable,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCombinerInputParameterivNV, GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCombinerInputParameterivNV,stage,portion,variable,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCombinerOutputParameterfvNV, GLenum stage, GLenum portion, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCombinerOutputParameterfvNV,stage,portion,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCombinerOutputParameterivNV, GLenum stage, GLenum portion, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCombinerOutputParameterivNV,stage,portion,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFinalCombinerInputParameterfvNV, GLenum variable, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFinalCombinerInputParameterfvNV,variable,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFinalCombinerInputParameterivNV, GLenum variable, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFinalCombinerInputParameterivNV,variable,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CombinerStageParameterfvNV, GLenum stage, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CombinerStageParameterfvNV,stage,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetCombinerStageParameterfvNV, GLenum stage, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetCombinerStageParameterfvNV,stage,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferSampleLocationsfvNV, GLenum target, GLuint start, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferSampleLocationsfvNV,target,start,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NamedFramebufferSampleLocationsfvNV, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NamedFramebufferSampleLocationsfvNV,framebuffer,start,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResolveDepthValuesNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResolveDepthValuesNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ScissorExclusiveNV, GLint x, GLint y, GLsizei width, GLsizei height) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ScissorExclusiveNV,x,y,width,height) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ScissorExclusiveArrayvNV, GLuint first, GLsizei count, const GLint* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ScissorExclusiveArrayvNV,first,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeBufferResidentNV, GLenum target, GLenum access) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeBufferResidentNV,target,access) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeBufferNonResidentNV, GLenum target) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeBufferNonResidentNV,target) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsBufferResidentNV, GLenum target) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsBufferResidentNV,target) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeNamedBufferResidentNV, GLuint buffer, GLenum access) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeNamedBufferResidentNV,buffer,access) -DECLARE_GL_FUNCTION_STUB_HEAD(void, MakeNamedBufferNonResidentNV, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, MakeNamedBufferNonResidentNV,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsNamedBufferResidentNV, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsNamedBufferResidentNV,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetBufferParameterui64vNV, GLenum target, GLenum pname, GLuint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetBufferParameterui64vNV,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetNamedBufferParameterui64vNV, GLuint buffer, GLenum pname, GLuint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetNamedBufferParameterui64vNV,buffer,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetIntegerui64vNV, GLenum value, GLuint64EXT* result) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetIntegerui64vNV,value,result) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniformui64NV, GLint location, GLuint64EXT value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniformui64NV,location,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Uniformui64vNV, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Uniformui64vNV,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformui64NV, GLuint program, GLint location, GLuint64EXT value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformui64NV,program,location,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramUniformui64vNV, GLuint program, GLint location, GLsizei count, const GLuint64EXT* value) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramUniformui64vNV,program,location,count,value) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindShadingRateImageNV, GLuint texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindShadingRateImageNV,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetShadingRateImagePaletteNV, GLuint viewport, GLuint entry, GLenum* rate) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetShadingRateImagePaletteNV,viewport,entry,rate) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetShadingRateSampleLocationivNV, GLenum rate, GLuint samples, GLuint index, GLint* location) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetShadingRateSampleLocationivNV,rate,samples,index,location) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShadingRateImageBarrierNV, GLboolean synchronize) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShadingRateImageBarrierNV,synchronize) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShadingRateImagePaletteNV, GLuint viewport, GLuint first, GLsizei count, const GLenum* rates) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShadingRateImagePaletteNV,viewport,first,count,rates) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShadingRateSampleOrderNV, GLenum order) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShadingRateSampleOrderNV,order) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ShadingRateSampleOrderCustomNV, GLenum rate, GLuint samples, const GLint* locations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ShadingRateSampleOrderCustomNV,rate,samples,locations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureBarrierNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureBarrierNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexImage2DMultisampleCoverageNV, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexImage2DMultisampleCoverageNV,target,coverageSamples,colorSamples,internalFormat,width,height,fixedSampleLocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexImage3DMultisampleCoverageNV, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexImage3DMultisampleCoverageNV,target,coverageSamples,colorSamples,internalFormat,width,height,depth,fixedSampleLocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureImage2DMultisampleNV, GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureImage2DMultisampleNV,texture,target,samples,internalFormat,width,height,fixedSampleLocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureImage3DMultisampleNV, GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureImage3DMultisampleNV,texture,target,samples,internalFormat,width,height,depth,fixedSampleLocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureImage2DMultisampleCoverageNV, GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureImage2DMultisampleCoverageNV,texture,target,coverageSamples,colorSamples,internalFormat,width,height,fixedSampleLocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureImage3DMultisampleCoverageNV, GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureImage3DMultisampleCoverageNV,texture,target,coverageSamples,colorSamples,internalFormat,width,height,depth,fixedSampleLocations) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CreateSemaphoresNV, GLsizei n, GLuint* semaphores) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CreateSemaphoresNV,n,semaphores) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SemaphoreParameterivNV, GLuint semaphore, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SemaphoreParameterivNV,semaphore,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSemaphoreParameterivNV, GLuint semaphore, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSemaphoreParameterivNV,semaphore,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginTransformFeedbackNV, GLenum primitiveMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginTransformFeedbackNV,primitiveMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndTransformFeedbackNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndTransformFeedbackNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TransformFeedbackAttribsNV, GLsizei count, const GLint* attribs, GLenum bufferMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TransformFeedbackAttribsNV,count,attribs,bufferMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBufferRangeNV, GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBufferRangeNV,target,index,buffer,offset,size) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBufferOffsetNV, GLenum target, GLuint index, GLuint buffer, GLintptr offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBufferOffsetNV,target,index,buffer,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindBufferBaseNV, GLenum target, GLuint index, GLuint buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindBufferBaseNV,target,index,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TransformFeedbackVaryingsNV, GLuint program, GLsizei count, const GLint* locations, GLenum bufferMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TransformFeedbackVaryingsNV,program,count,locations,bufferMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ActiveVaryingNV, GLuint program, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ActiveVaryingNV,program,name) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetVaryingLocationNV, GLuint program, const GLchar* name) DECLARE_GL_FUNCTION_STUB_END(GLint, GetVaryingLocationNV,program,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetActiveVaryingNV, GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetActiveVaryingNV,program,index,bufSize,length,size,type,name) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTransformFeedbackVaryingNV, GLuint program, GLuint index, GLint* location) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTransformFeedbackVaryingNV,program,index,location) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TransformFeedbackStreamAttribsNV, GLsizei count, const GLint* attribs, GLsizei nbuffers, const GLint* bufstreams, GLenum bufferMode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TransformFeedbackStreamAttribsNV,count,attribs,nbuffers,bufstreams,bufferMode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindTransformFeedbackNV, GLenum target, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindTransformFeedbackNV,target,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteTransformFeedbacksNV, GLsizei n, const GLuint* ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteTransformFeedbacksNV,n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenTransformFeedbacksNV, GLsizei n, GLuint* ids) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenTransformFeedbacksNV,n,ids) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsTransformFeedbackNV, GLuint id) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsTransformFeedbackNV,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PauseTransformFeedbackNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PauseTransformFeedbackNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ResumeTransformFeedbackNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ResumeTransformFeedbackNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawTransformFeedbackNV, GLenum mode, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawTransformFeedbackNV,mode,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VDPAUInitNV,const void* vdpDevice, const void* getProcAddress) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VDPAUInitNV,vdpDevice,getProcAddress) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VDPAUFiniNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VDPAUFiniNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(GLvdpauSurfaceNV, VDPAURegisterVideoSurfaceNV,const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint* textureNames) DECLARE_GL_FUNCTION_STUB_END(GLvdpauSurfaceNV, VDPAURegisterVideoSurfaceNV,vdpSurface,target,numTextureNames,textureNames) -DECLARE_GL_FUNCTION_STUB_HEAD(GLvdpauSurfaceNV, VDPAURegisterOutputSurfaceNV,const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint* textureNames) DECLARE_GL_FUNCTION_STUB_END(GLvdpauSurfaceNV, VDPAURegisterOutputSurfaceNV,vdpSurface,target,numTextureNames,textureNames) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, VDPAUIsSurfaceNV, GLvdpauSurfaceNV surface) DECLARE_GL_FUNCTION_STUB_END(GLboolean, VDPAUIsSurfaceNV,surface) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VDPAUUnregisterSurfaceNV, GLvdpauSurfaceNV surface) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VDPAUUnregisterSurfaceNV,surface) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VDPAUGetSurfaceivNV, GLvdpauSurfaceNV surface, GLenum pname, GLsizei count, GLsizei* length, GLint* values) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VDPAUGetSurfaceivNV,surface,pname,count,length,values) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VDPAUSurfaceAccessNV, GLvdpauSurfaceNV surface, GLenum access) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VDPAUSurfaceAccessNV,surface,access) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VDPAUMapSurfacesNV, GLsizei numSurfaces, const GLvdpauSurfaceNV* surfaces) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VDPAUMapSurfacesNV,numSurfaces,surfaces) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VDPAUUnmapSurfacesNV, GLsizei numSurface, const GLvdpauSurfaceNV* surfaces) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VDPAUUnmapSurfacesNV,numSurface,surfaces) -DECLARE_GL_FUNCTION_STUB_HEAD(GLvdpauSurfaceNV, VDPAURegisterVideoSurfaceWithPictureStructureNV,const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint* textureNames, GLboolean isFrameStructure) DECLARE_GL_FUNCTION_STUB_END(GLvdpauSurfaceNV, VDPAURegisterVideoSurfaceWithPictureStructureNV,vdpSurface,target,numTextureNames,textureNames,isFrameStructure) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushVertexArrayRangeNV,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushVertexArrayRangeNV,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexArrayRangeNV, GLsizei length, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexArrayRangeNV,length,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1i64NV, GLuint index, GLint64EXT x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1i64NV,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2i64NV, GLuint index, GLint64EXT x, GLint64EXT y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2i64NV,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3i64NV, GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3i64NV,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4i64NV, GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4i64NV,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1i64vNV, GLuint index, const GLint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1i64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2i64vNV, GLuint index, const GLint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2i64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3i64vNV, GLuint index, const GLint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3i64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4i64vNV, GLuint index, const GLint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4i64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1ui64NV, GLuint index, GLuint64EXT x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1ui64NV,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2ui64NV, GLuint index, GLuint64EXT x, GLuint64EXT y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2ui64NV,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3ui64NV, GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3ui64NV,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4ui64NV, GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4ui64NV,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL1ui64vNV, GLuint index, const GLuint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL1ui64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL2ui64vNV, GLuint index, const GLuint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL2ui64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL3ui64vNV, GLuint index, const GLuint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL3ui64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribL4ui64vNV, GLuint index, const GLuint64EXT* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribL4ui64vNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribLi64vNV, GLuint index, GLenum pname, GLint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribLi64vNV,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribLui64vNV, GLuint index, GLenum pname, GLuint64EXT* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribLui64vNV,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribLFormatNV, GLuint index, GLint size, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribLFormatNV,index,size,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BufferAddressRangeNV, GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BufferAddressRangeNV,pname,index,address,length) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexFormatNV, GLint size, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexFormatNV,size,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, NormalFormatNV, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, NormalFormatNV,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorFormatNV, GLint size, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorFormatNV,size,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IndexFormatNV, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IndexFormatNV,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoordFormatNV, GLint size, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoordFormatNV,size,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EdgeFlagFormatNV, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EdgeFlagFormatNV,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SecondaryColorFormatNV, GLint size, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SecondaryColorFormatNV,size,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogCoordFormatNV, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogCoordFormatNV,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribFormatNV, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribFormatNV,index,size,type,normalized,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribIFormatNV, GLuint index, GLint size, GLenum type, GLsizei stride) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribIFormatNV,index,size,type,stride) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetIntegerui64i_vNV, GLenum value, GLuint index, GLuint64EXT* result) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetIntegerui64i_vNV,value,index,result) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, AreProgramsResidentNV, GLsizei n, const GLuint* programs, GLboolean* residences) DECLARE_GL_FUNCTION_STUB_END(GLboolean, AreProgramsResidentNV,n,programs,residences) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindProgramNV, GLenum target, GLuint id) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindProgramNV,target,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteProgramsNV, GLsizei n, const GLuint* programs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteProgramsNV,n,programs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ExecuteProgramNV, GLenum target, GLuint id, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ExecuteProgramNV,target,id,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GenProgramsNV, GLsizei n, GLuint* programs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GenProgramsNV,n,programs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramParameterdvNV, GLenum target, GLuint index, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramParameterdvNV,target,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramParameterfvNV, GLenum target, GLuint index, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramParameterfvNV,target,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramivNV, GLuint id, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramivNV,id,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetProgramStringNV, GLuint id, GLenum pname, GLubyte* program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetProgramStringNV,id,pname,program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTrackMatrixivNV, GLenum target, GLuint address, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTrackMatrixivNV,target,address,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribdvNV, GLuint index, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribdvNV,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribfvNV, GLuint index, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribfvNV,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribivNV, GLuint index, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribivNV,index,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVertexAttribPointervNV, GLuint index, GLenum pname, void* *pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVertexAttribPointervNV,index,pname,*pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsProgramNV, GLuint id) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsProgramNV,id) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadProgramNV, GLenum target, GLuint id, GLsizei len, const GLubyte* program) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadProgramNV,target,id,len,program) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramParameter4dNV, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramParameter4dNV,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramParameter4dvNV, GLenum target, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramParameter4dvNV,target,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramParameter4fNV, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramParameter4fNV,target,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramParameter4fvNV, GLenum target, GLuint index, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramParameter4fvNV,target,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramParameters4dvNV, GLenum target, GLuint index, GLsizei count, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramParameters4dvNV,target,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ProgramParameters4fvNV, GLenum target, GLuint index, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ProgramParameters4fvNV,target,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, RequestResidentProgramsNV, GLsizei n, const GLuint* programs) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, RequestResidentProgramsNV,n,programs) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TrackMatrixNV, GLenum target, GLuint address, GLenum matrix, GLenum transform) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TrackMatrixNV,target,address,matrix,transform) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribPointerNV, GLuint index, GLint fsize, GLenum type, GLsizei stride, const void* pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribPointerNV,index,fsize,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1dNV, GLuint index, GLdouble x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1dNV,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1dvNV, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1dvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1fNV, GLuint index, GLfloat x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1fNV,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1fvNV, GLuint index, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1fvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1sNV, GLuint index, GLshort x) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1sNV,index,x) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib1svNV, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib1svNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2dNV, GLuint index, GLdouble x, GLdouble y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2dNV,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2dvNV, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2dvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2fNV, GLuint index, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2fNV,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2fvNV, GLuint index, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2fvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2sNV, GLuint index, GLshort x, GLshort y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2sNV,index,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib2svNV, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib2svNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3dNV, GLuint index, GLdouble x, GLdouble y, GLdouble z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3dNV,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3dvNV, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3dvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3fNV, GLuint index, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3fNV,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3fvNV, GLuint index, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3fvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3sNV, GLuint index, GLshort x, GLshort y, GLshort z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3sNV,index,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib3svNV, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib3svNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4dNV, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4dNV,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4dvNV, GLuint index, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4dvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4fNV, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4fNV,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4fvNV, GLuint index, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4fvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4sNV, GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4sNV,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4svNV, GLuint index, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4svNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4ubNV, GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4ubNV,index,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttrib4ubvNV, GLuint index, const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttrib4ubvNV,index,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs1dvNV, GLuint index, GLsizei count, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs1dvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs1fvNV, GLuint index, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs1fvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs1svNV, GLuint index, GLsizei count, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs1svNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs2dvNV, GLuint index, GLsizei count, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs2dvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs2fvNV, GLuint index, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs2fvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs2svNV, GLuint index, GLsizei count, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs2svNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs3dvNV, GLuint index, GLsizei count, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs3dvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs3fvNV, GLuint index, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs3fvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs3svNV, GLuint index, GLsizei count, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs3svNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs4dvNV, GLuint index, GLsizei count, const GLdouble* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs4dvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs4fvNV, GLuint index, GLsizei count, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs4fvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs4svNV, GLuint index, GLsizei count, const GLshort* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs4svNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VertexAttribs4ubvNV, GLuint index, GLsizei count, const GLubyte* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VertexAttribs4ubvNV,index,count,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BeginVideoCaptureNV, GLuint video_capture_slot) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BeginVideoCaptureNV,video_capture_slot) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindVideoCaptureStreamBufferNV, GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindVideoCaptureStreamBufferNV,video_capture_slot,stream,frame_region,offset) -DECLARE_GL_FUNCTION_STUB_HEAD(void, BindVideoCaptureStreamTextureNV, GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, BindVideoCaptureStreamTextureNV,video_capture_slot,stream,frame_region,target,texture) -DECLARE_GL_FUNCTION_STUB_HEAD(void, EndVideoCaptureNV, GLuint video_capture_slot) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, EndVideoCaptureNV,video_capture_slot) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideoCaptureivNV, GLuint video_capture_slot, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideoCaptureivNV,video_capture_slot,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideoCaptureStreamivNV, GLuint video_capture_slot, GLuint stream, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideoCaptureStreamivNV,video_capture_slot,stream,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideoCaptureStreamfvNV, GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideoCaptureStreamfvNV,video_capture_slot,stream,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetVideoCaptureStreamdvNV, GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetVideoCaptureStreamdvNV,video_capture_slot,stream,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLenum, VideoCaptureNV, GLuint video_capture_slot, GLuint* sequence_num, GLuint64EXT* capture_time) DECLARE_GL_FUNCTION_STUB_END(GLenum, VideoCaptureNV,video_capture_slot,sequence_num,capture_time) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VideoCaptureStreamParameterivNV, GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VideoCaptureStreamParameterivNV,video_capture_slot,stream,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VideoCaptureStreamParameterfvNV, GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VideoCaptureStreamParameterfvNV,video_capture_slot,stream,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, VideoCaptureStreamParameterdvNV, GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, VideoCaptureStreamParameterdvNV,video_capture_slot,stream,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ViewportSwizzleNV, GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ViewportSwizzleNV,index,swizzlex,swizzley,swizzlez,swizzlew) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FramebufferTextureMultiviewOVR, GLenum target, GLenum attachment, GLuint texture, GLint level, GLint baseViewIndex, GLsizei numViews) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FramebufferTextureMultiviewOVR,target,attachment,texture,level,baseViewIndex,numViews) -DECLARE_GL_FUNCTION_STUB_HEAD(void, HintPGI, GLenum target, GLint mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, HintPGI,target,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DetailTexFuncSGIS, GLenum target, GLsizei n, const GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DetailTexFuncSGIS,target,n,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetDetailTexFuncSGIS, GLenum target, GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetDetailTexFuncSGIS,target,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FogFuncSGIS, GLsizei n, const GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FogFuncSGIS,n,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFogFuncSGIS, GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFogFuncSGIS,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SampleMaskSGIS, GLclampf value, GLboolean invert) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SampleMaskSGIS,value,invert) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SamplePatternSGIS, GLenum pattern) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SamplePatternSGIS,pattern) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTexGenParameteriSGIS, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTexGenParameteriSGIS,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTexGenParameterivSGIS, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTexGenParameterivSGIS,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTexGenParameterfSGIS, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTexGenParameterfSGIS,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTexGenParameterfvSGIS, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTexGenParameterfvSGIS,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelTexGenParameterivSGIS, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelTexGenParameterivSGIS,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetPixelTexGenParameterfvSGIS, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetPixelTexGenParameterfvSGIS,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterfSGIS, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterfSGIS,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PointParameterfvSGIS, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PointParameterfvSGIS,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SharpenTexFuncSGIS, GLenum target, GLsizei n, const GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SharpenTexFuncSGIS,target,n,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetSharpenTexFuncSGIS, GLenum target, GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetSharpenTexFuncSGIS,target,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexImage4DSGIS, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLint border, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexImage4DSGIS,target,level,internalformat,width,height,depth,size4d,border,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexSubImage4DSGIS, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLenum format, GLenum type, const void* pixels) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexSubImage4DSGIS,target,level,xoffset,yoffset,zoffset,woffset,width,height,depth,size4d,format,type,pixels) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TextureColorMaskSGIS, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TextureColorMaskSGIS,red,green,blue,alpha) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetTexFilterFuncSGIS, GLenum target, GLenum filter, GLfloat* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetTexFilterFuncSGIS,target,filter,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexFilterFuncSGIS, GLenum target, GLenum filter, GLsizei n, const GLfloat* weights) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexFilterFuncSGIS,target,filter,n,weights) -DECLARE_GL_FUNCTION_STUB_HEAD(void, AsyncMarkerSGIX, GLuint marker) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, AsyncMarkerSGIX,marker) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, FinishAsyncSGIX, GLuint* markerp) DECLARE_GL_FUNCTION_STUB_END(GLint, FinishAsyncSGIX,markerp) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, PollAsyncSGIX, GLuint* markerp) DECLARE_GL_FUNCTION_STUB_END(GLint, PollAsyncSGIX,markerp) -DECLARE_GL_FUNCTION_STUB_HEAD(GLuint, GenAsyncMarkersSGIX, GLsizei range) DECLARE_GL_FUNCTION_STUB_END(GLuint, GenAsyncMarkersSGIX,range) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeleteAsyncMarkersSGIX, GLuint marker, GLsizei range) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeleteAsyncMarkersSGIX,marker,range) -DECLARE_GL_FUNCTION_STUB_HEAD(GLboolean, IsAsyncMarkerSGIX, GLuint marker) DECLARE_GL_FUNCTION_STUB_END(GLboolean, IsAsyncMarkerSGIX,marker) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FlushRasterSGIX,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FlushRasterSGIX,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentColorMaterialSGIX, GLenum face, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentColorMaterialSGIX,face,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightfSGIX, GLenum light, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightfSGIX,light,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightfvSGIX, GLenum light, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightfvSGIX,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightiSGIX, GLenum light, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightiSGIX,light,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightivSGIX, GLenum light, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightivSGIX,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightModelfSGIX, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightModelfSGIX,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightModelfvSGIX, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightModelfvSGIX,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightModeliSGIX, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightModeliSGIX,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentLightModelivSGIX, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentLightModelivSGIX,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentMaterialfSGIX, GLenum face, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentMaterialfSGIX,face,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentMaterialfvSGIX, GLenum face, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentMaterialfvSGIX,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentMaterialiSGIX, GLenum face, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentMaterialiSGIX,face,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FragmentMaterialivSGIX, GLenum face, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FragmentMaterialivSGIX,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFragmentLightfvSGIX, GLenum light, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFragmentLightfvSGIX,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFragmentLightivSGIX, GLenum light, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFragmentLightivSGIX,light,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFragmentMaterialfvSGIX, GLenum face, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFragmentMaterialfvSGIX,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetFragmentMaterialivSGIX, GLenum face, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetFragmentMaterialivSGIX,face,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LightEnviSGIX, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LightEnviSGIX,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FrameZoomSGIX, GLint factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FrameZoomSGIX,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, IooInterfaceSGIX, GLenum pname, const void* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, IooInterfaceSGIX,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, GetInstrumentsSGIX,void) DECLARE_GL_FUNCTION_STUB_END(GLint, GetInstrumentsSGIX,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, InstrumentsBufferSGIX, GLsizei size, GLint* buffer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, InstrumentsBufferSGIX,size,buffer) -DECLARE_GL_FUNCTION_STUB_HEAD(GLint, PollInstrumentsSGIX, GLint* marker_p) DECLARE_GL_FUNCTION_STUB_END(GLint, PollInstrumentsSGIX,marker_p) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReadInstrumentsSGIX, GLint marker) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReadInstrumentsSGIX,marker) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StartInstrumentsSGIX,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StartInstrumentsSGIX,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, StopInstrumentsSGIX, GLint marker) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, StopInstrumentsSGIX,marker) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetListParameterfvSGIX, GLuint list, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetListParameterfvSGIX,list,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetListParameterivSGIX, GLuint list, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetListParameterivSGIX,list,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ListParameterfSGIX, GLuint list, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ListParameterfSGIX,list,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ListParameterfvSGIX, GLuint list, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ListParameterfvSGIX,list,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ListParameteriSGIX, GLuint list, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ListParameteriSGIX,list,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ListParameterivSGIX, GLuint list, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ListParameterivSGIX,list,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, PixelTexGenSGIX, GLenum mode) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, PixelTexGenSGIX,mode) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeformationMap3dSGIX, GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, GLdouble w1, GLdouble w2, GLint wstride, GLint worder, const GLdouble* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeformationMap3dSGIX,target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,w1,w2,wstride,worder,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeformationMap3fSGIX, GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, GLfloat w1, GLfloat w2, GLint wstride, GLint worder, const GLfloat* points) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeformationMap3fSGIX,target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,w1,w2,wstride,worder,points) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DeformSGIX, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DeformSGIX,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, LoadIdentityDeformationMapSGIX, GLbitfield mask) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, LoadIdentityDeformationMapSGIX,mask) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReferencePlaneSGIX,const GLdouble* equation) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReferencePlaneSGIX,equation) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SpriteParameterfSGIX, GLenum pname, GLfloat param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SpriteParameterfSGIX,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SpriteParameterfvSGIX, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SpriteParameterfvSGIX,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SpriteParameteriSGIX, GLenum pname, GLint param) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SpriteParameteriSGIX,pname,param) -DECLARE_GL_FUNCTION_STUB_HEAD(void, SpriteParameterivSGIX, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, SpriteParameterivSGIX,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TagSampleBufferSGIX,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TagSampleBufferSGIX,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorTableSGI, GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* table) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorTableSGI,target,internalformat,width,format,type,table) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorTableParameterfvSGI, GLenum target, GLenum pname, const GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorTableParameterfvSGI,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ColorTableParameterivSGI, GLenum target, GLenum pname, const GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ColorTableParameterivSGI,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, CopyColorTableSGI, GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, CopyColorTableSGI,target,internalformat,x,y,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableSGI, GLenum target, GLenum format, GLenum type, void* table) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableSGI,target,format,type,table) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableParameterfvSGI, GLenum target, GLenum pname, GLfloat* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableParameterfvSGI,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GetColorTableParameterivSGI, GLenum target, GLenum pname, GLint* params) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GetColorTableParameterivSGI,target,pname,params) -DECLARE_GL_FUNCTION_STUB_HEAD(void, FinishTextureSUNX,void) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, FinishTextureSUNX,) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactorbSUN, GLbyte factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactorbSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactorsSUN, GLshort factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactorsSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactoriSUN, GLint factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactoriSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactorfSUN, GLfloat factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactorfSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactordSUN, GLdouble factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactordSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactorubSUN, GLubyte factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactorubSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactorusSUN, GLushort factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactorusSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, GlobalAlphaFactoruiSUN, GLuint factor) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, GlobalAlphaFactoruiSUN,factor) -DECLARE_GL_FUNCTION_STUB_HEAD(void, DrawMeshArraysSUN, GLenum mode, GLint first, GLsizei count, GLsizei width) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, DrawMeshArraysSUN,mode,first,count,width) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiSUN, GLuint code) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiSUN,code) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeusSUN, GLushort code) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeusSUN,code) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeubSUN, GLubyte code) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeubSUN,code) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuivSUN,const GLuint* code) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuivSUN,code) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeusvSUN,const GLushort* code) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeusvSUN,code) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeubvSUN,const GLubyte* code) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeubvSUN,code) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodePointerSUN, GLenum type, GLsizei stride, const void* *pointer) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodePointerSUN,type,stride,pointer) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4ubVertex2fSUN, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4ubVertex2fSUN,r,g,b,a,x,y) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4ubVertex2fvSUN,const GLubyte* c, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4ubVertex2fvSUN,c,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4ubVertex3fSUN, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4ubVertex3fSUN,r,g,b,a,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4ubVertex3fvSUN,const GLubyte* c, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4ubVertex3fvSUN,c,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3fVertex3fSUN, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3fVertex3fSUN,r,g,b,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color3fVertex3fvSUN,const GLfloat* c, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color3fVertex3fvSUN,c,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3fVertex3fSUN, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3fVertex3fSUN,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Normal3fVertex3fvSUN,const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Normal3fVertex3fvSUN,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4fNormal3fVertex3fSUN, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4fNormal3fVertex3fSUN,r,g,b,a,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, Color4fNormal3fVertex3fvSUN,const GLfloat* c, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, Color4fNormal3fVertex3fvSUN,c,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fVertex3fSUN, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fVertex3fSUN,s,t,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fVertex3fvSUN,const GLfloat* tc, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fVertex3fvSUN,tc,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4fVertex4fSUN, GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4fVertex4fSUN,s,t,p,q,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4fVertex4fvSUN,const GLfloat* tc, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4fVertex4fvSUN,tc,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fColor4ubVertex3fSUN, GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fColor4ubVertex3fSUN,s,t,r,g,b,a,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fColor4ubVertex3fvSUN,const GLfloat* tc, const GLubyte* c, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fColor4ubVertex3fvSUN,tc,c,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fColor3fVertex3fSUN, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fColor3fVertex3fSUN,s,t,r,g,b,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fColor3fVertex3fvSUN,const GLfloat* tc, const GLfloat* c, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fColor3fVertex3fvSUN,tc,c,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fNormal3fVertex3fSUN, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fNormal3fVertex3fSUN,s,t,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fNormal3fVertex3fvSUN,const GLfloat* tc, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fNormal3fVertex3fvSUN,tc,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fColor4fNormal3fVertex3fSUN, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fColor4fNormal3fVertex3fSUN,s,t,r,g,b,a,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord2fColor4fNormal3fVertex3fvSUN,const GLfloat* tc, const GLfloat* c, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord2fColor4fNormal3fVertex3fvSUN,tc,c,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4fColor4fNormal3fVertex4fSUN, GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4fColor4fNormal3fVertex4fSUN,s,t,p,q,r,g,b,a,nx,ny,nz,x,y,z,w) -DECLARE_GL_FUNCTION_STUB_HEAD(void, TexCoord4fColor4fNormal3fVertex4fvSUN,const GLfloat* tc, const GLfloat* c, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, TexCoord4fColor4fNormal3fVertex4fvSUN,tc,c,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiVertex3fSUN, GLuint rc, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiVertex3fSUN,rc,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiVertex3fvSUN,const GLuint* rc, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiVertex3fvSUN,rc,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiColor4ubVertex3fSUN, GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiColor4ubVertex3fSUN,rc,r,g,b,a,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiColor4ubVertex3fvSUN,const GLuint* rc, const GLubyte* c, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiColor4ubVertex3fvSUN,rc,c,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiColor3fVertex3fSUN, GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiColor3fVertex3fSUN,rc,r,g,b,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiColor3fVertex3fvSUN,const GLuint* rc, const GLfloat* c, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiColor3fVertex3fvSUN,rc,c,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiNormal3fVertex3fSUN, GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiNormal3fVertex3fSUN,rc,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiNormal3fVertex3fvSUN,const GLuint* rc, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiNormal3fVertex3fvSUN,rc,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiColor4fNormal3fVertex3fSUN, GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiColor4fNormal3fVertex3fSUN,rc,r,g,b,a,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiColor4fNormal3fVertex3fvSUN,const GLuint* rc, const GLfloat* c, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiColor4fNormal3fVertex3fvSUN,rc,c,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiTexCoord2fVertex3fSUN, GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiTexCoord2fVertex3fSUN,rc,s,t,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiTexCoord2fVertex3fvSUN,const GLuint* rc, const GLfloat* tc, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiTexCoord2fVertex3fvSUN,rc,tc,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN,rc,s,t,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN,const GLuint* rc, const GLfloat* tc, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN,rc,tc,n,v) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN,rc,s,t,r,g,b,a,nx,ny,nz,x,y,z) -DECLARE_GL_FUNCTION_STUB_HEAD(void, ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN,const GLuint* rc, const GLfloat* tc, const GLfloat* c, const GLfloat* n, const GLfloat* v) DECLARE_GL_FUNCTION_STUB_END_NO_RETURN(void, ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN,rc,tc,c,n,v) diff --git a/MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.h b/MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.h deleted file mode 100644 index 2fe14a25..00000000 --- a/MG/MG_GL/Implementations/GL/GLFuncsDefinitions/GLFuncsDefinitions.h +++ /dev/null @@ -1,8 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_FUNCS_DEFINITIONS_H -#define MOBILEGL_GL_FUNCS_DEFINITIONS_H - -#endif //MOBILEGL_GL_FUNCS_DEFINITIONS_H diff --git a/MG/MG_GL/Implementations/GL/Getter/BackendInfo.cpp b/MG/MG_GL/Implementations/GL/Getter/BackendInfo.cpp deleted file mode 100644 index 84dd8052..00000000 --- a/MG/MG_GL/Implementations/GL/Getter/BackendInfo.cpp +++ /dev/null @@ -1,173 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::Getter { - const std::string GetBackendName() { -#if BACKEND_TYPE == BACKEND_VULKAN - return "Vulkan"; -#elif BACKEND_TYPE == BACKEND_METAL - return "Metal"; -#elif BACKEND_TYPE == BACKEND_GLES - return "OpenGL ES"; -#elif BACKEND_TYPE == BACKEND_DILIGENT - switch (MG_Diligent::DILIGENT_BACKEND_TYPE) { - case MG_Constants::Backend::BACKEND_DILIGENT_VULKAN: - return "DiligentEngine (Vulkan)"; - case MG_Constants::Backend::BACKEND_DILIGENT_METAL: - return "DiligentEngine (Metal)"; - case MG_Constants::Backend::BACKEND_DILIGENT_OPENGL: - return "DiligentEngine (OpenGL)"; - default: - return "DiligentEngine (Unknown Backend)"; - } -#else - return ""; -#endif - } - - const std::string GetMGName() { -#if BACKEND_TYPE == BACKEND_VULKAN - return "MobileGluvk"; -#elif BACKEND_TYPE == BACKEND_METAL - return "MobileGlumtl"; -#elif BACKEND_TYPE == BACKEND_GLES - return "MobileGlues"; -#elif BACKEND_TYPE == BACKEND_DILIGENT - switch (MG_Diligent::DILIGENT_BACKEND_TYPE) { - case MG_Constants::Backend::BACKEND_DILIGENT_VULKAN: - return "MobileGlued-vk"; - case MG_Constants::Backend::BACKEND_DILIGENT_METAL: - return "MobileGlued-mtl"; - case MG_Constants::Backend::BACKEND_DILIGENT_OPENGL: - return "MobileGlued-gl"; - default: - return "MobileGlued-unknown"; - } -#else - return ""; -#endif - } - - const std::string GetBackendGfxAPIName() { -#if BACKEND_TYPE == BACKEND_VULKAN - return "Vulkan"; -#elif BACKEND_TYPE == BACKEND_METAL - return "Metal"; -#elif BACKEND_TYPE == BACKEND_GLES - return "OpenGL ES"; -#elif BACKEND_TYPE == BACKEND_DILIGENT - switch (MG_Diligent::DILIGENT_BACKEND_TYPE) { - case MG_Constants::Backend::BACKEND_DILIGENT_VULKAN: - return "Vulkan"; - case MG_Constants::Backend::BACKEND_DILIGENT_METAL: - return "Metal"; - case MG_Constants::Backend::BACKEND_DILIGENT_OPENGL: - return "OpenGL"; - default: - return ""; - } -#else - return ""; -#endif - } - - const std::string GetGPUName() { -#if BACKEND_TYPE == BACKEND_DILIGENT - if (MG_Diligent::g_pDevice) - return MG_Diligent::g_pDevice->GetAdapterInfo().Description; - - return ""; -#else - return ""; -#endif - } - - const uint32_t GetBackendGfxAPIVersionMajor() { -#if BACKEND_TYPE == BACKEND_DILIGENT - if (MG_Diligent::g_pDevice) - return MG_Diligent::g_pDevice->GetDeviceInfo().APIVersion.Major; - - return 0; -#else - return 0; -#endif - } - - const uint32_t GetBackendGfxAPIVersionMinor() { -#if BACKEND_TYPE == BACKEND_DILIGENT - if (MG_Diligent::g_pDevice) - return MG_Diligent::g_pDevice->GetDeviceInfo().APIVersion.Minor; - - return 0; -#else - return 0; -#endif - } - - void LogMGInfo() { - std::string MGName = MG_GL::Getter::GetMGName() + " (MobileGL Core)"; - - std::string MGVersion = std::to_string(MG_Global::MG::VersionMajor) + "." - + std::to_string(MG_Global::MG::VersionMinor) + "." - + std::to_string(MG_Global::MG::VersionRevision); - if (MG_Global::MG::VersionPatch != 0) - MGVersion += "." + std::to_string(MG_Global::MG::VersionPatch); - MGVersion += MG_Global::MG::VersionSuffix; - - std::string GLVersion = std::to_string(MG_Global::GL::GLVersionMajor) + "." - + std::to_string(MG_Global::GL::GLVersionMinor) + "." - + std::to_string(MG_Global::GL::GLVersionRevision); - - std::string backendName = MG_GL::Getter::GetBackendName(); - - std::string backendVersion; -#if BACKEND_TYPE == BACKEND_VULKAN - VkApplicationInfo appInfo = {}; - appInfo.sType = VK_STRUCTURE_TYPE_APPLICATION_INFO; - appInfo.pApplicationName = "Vulkan Version Query"; - appInfo.applicationVersion = VK_MAKE_VERSION(1, 0, 0); - appInfo.pEngineName = "No Engine"; - appInfo.engineVersion = VK_MAKE_VERSION(1, 0, 0); - appInfo.apiVersion = VK_API_VERSION_1_0; - VkInstanceCreateInfo createInfo = {}; - createInfo.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO; - createInfo.pApplicationInfo = &appInfo; - VkInstance instance; - if (vkCreateInstance(&createInfo, nullptr, &instance) != VK_SUCCESS) { - throw std::runtime_error("Failed to create Vulkan instance!"); - } - uint32_t deviceCount = 0; - vkEnumeratePhysicalDevices(instance, &deviceCount, nullptr); - if (deviceCount == 0) { - throw std::runtime_error("No Vulkan devices found!"); - } - VkPhysicalDevice physicalDevice; - vkEnumeratePhysicalDevices(instance, &deviceCount, &physicalDevice); - VkPhysicalDeviceProperties deviceProperties; - vkGetPhysicalDeviceProperties(physicalDevice, &deviceProperties); - uint32_t major = VK_VERSION_MAJOR(deviceProperties.apiVersion); - uint32_t minor = VK_VERSION_MINOR(deviceProperties.apiVersion); - uint32_t patch = VK_VERSION_PATCH(deviceProperties.apiVersion); - vkDestroyInstance(instance, nullptr); - - backendVersion = "Vulkan " + std::to_string(major) + "." + - std::to_string(minor)+"." + std::to_string(patch); -#elif BACKEND_TYPE == BACKEND_GLES - backendVersion = std::string((const char*)::GLES::glGetString(GL_VERSION)); -#elif BACKEND_TYPE == BACKEND_DILIGENT - backendVersion = "Diligent"; -#else - backendVersion = ""; -#endif - - MG_Util::Debug::LogI("MobileGL Renderer Info:"); - MG_Util::Debug::LogI("----%s:", MGName.c_str()); - MG_Util::Debug::LogI("--------MobileGL Version: %s", MGVersion.c_str()); - MG_Util::Debug::LogI("--------Target OpenGL Implementation Version: %s", GLVersion.c_str()); - MG_Util::Debug::LogI("--------Backend: %s", backendName.c_str()); - MG_Util::Debug::LogI("--------Backend Version: %s", backendVersion.c_str()); - } -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GL/Getter/BackendInfo.h b/MG/MG_GL/Implementations/GL/Getter/BackendInfo.h deleted file mode 100644 index 9004d82b..00000000 --- a/MG/MG_GL/Implementations/GL/Getter/BackendInfo.h +++ /dev/null @@ -1,18 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_BACKENDINFO_H -#define MOBILEGL_BACKENDINFO_H - -namespace MG_GL::Getter { - const std::string GetGPUName(); - const std::string GetBackendName(); - const std::string GetBackendGfxAPIName(); - const uint32_t GetBackendGfxAPIVersionMajor(); - const uint32_t GetBackendGfxAPIVersionMinor(); - const std::string GetMGName(); - void LogMGInfo(); -} - -#endif //MOBILEGL_BACKENDINFO_H diff --git a/MG/MG_GL/Implementations/GL/Getter/GL_Getter.cpp b/MG/MG_GL/Implementations/GL/Getter/GL_Getter.cpp deleted file mode 100644 index 247bb4d5..00000000 --- a/MG/MG_GL/Implementations/GL/Getter/GL_Getter.cpp +++ /dev/null @@ -1,324 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - static std::string rendererString; - static bool loggedMGInfo; - const GLubyte* GetString(GLenum name) { - if (!loggedMGInfo) { - loggedMGInfo = true; - MG_GL::Getter::LogMGInfo(); - } - MG_Util::Debug::LogD("glGetString, name: %s", MG_Util::Debug::GLEnumToString(name)); - switch (name) { - case GL_VENDOR: - return (const GLubyte *)"MobileGL-Dev (BZLZHH, Swung0x48, Tungsten)"; - case GL_VERSION: { - static std::string versionStr; - if (versionStr.empty()) { - versionStr = std::to_string(MG_Global::GL::GLVersionMajor) + "." - + std::to_string(MG_Global::GL::GLVersionMinor) + "." - + std::to_string(MG_Global::GL::GLVersionRevision) - + " "+ MG_GL::Getter::GetMGName() + - ", MobileGL Core, " + MG_GL::Getter::GetBackendName() + " Backend, Version " - + std::to_string(MG_Global::MG::VersionMajor) + "." - + std::to_string(MG_Global::MG::VersionMinor) + "." - + std::to_string(MG_Global::MG::VersionRevision); - if (MG_Global::MG::VersionPatch != 0) - versionStr += "." + std::to_string(MG_Global::MG::VersionPatch); - versionStr += MG_Global::MG::VersionSuffix; - } - return (const GLubyte *)versionStr.c_str(); - } - - case GL_RENDERER: - { - /* - if (rendererString == std::string("")) { - const char* gpuName = getGpuName(); - const char* glesName = getGLESName(); - rendererString = std::string(gpuName) + " | " + std::string(glesName); - } - return (const GLubyte *)rendererString.c_str(); - */ - return (const GLubyte *)std::format("{} | {} {}.{}", - MG_GL::Getter::GetGPUName(), - MG_GL::Getter::GetBackendGfxAPIName(), - MG_GL::Getter::GetBackendGfxAPIVersionMajor(), - MG_GL::Getter::GetBackendGfxAPIVersionMinor()).c_str(); - } - case GL_SHADING_LANGUAGE_VERSION: - return (const GLubyte *) "4.50 MobileGL with glslang"; - case GL_EXTENSIONS: - return (const GLubyte *) "OpenGL11 " - "OpenGL12 " - "OpenGL13 " - "OpenGL14 " - "OpenGL15 " - "OpenGL20 " - "OpenGL21 " - "OpenGL30 "; - default: - return (const GLubyte *) "Unknown enum"; - } - } - - const GLubyte* GetStringi(GLenum name, GLuint index) { - MG_Util::Debug::LogD("glGetStringi, name: %s, index: %d", MG_Util::Debug::GLEnumToString(name), index); - if (name != GL_EXTENSIONS) - return (const GLubyte*)""; - typedef struct { - GLenum name; - const char** parts; - GLuint count; - } StringCache; - static StringCache caches[] = { - {GL_EXTENSIONS, nullptr, 0}, - }; - static int initialized = 0; - if (!initialized) { - for (auto & cache : caches) { - GLenum target = cache.name; - const GLubyte* str = nullptr; - const char* delimiter = " "; - str = GetString(GL_EXTENSIONS); - - char* copy = strdup((const char*)str); - char* token = strtok(copy, delimiter); - while (token) { - cache.parts = (const char**)realloc(cache.parts, (cache.count + 1) * sizeof(char*)); - cache.parts[cache.count++] = strdup(token); - token = strtok(nullptr, delimiter); - } - free(copy); - } - initialized = 1; - } - - for (auto & cache : caches) { - if (cache.name == name) { - if (index >= cache.count) { - return nullptr; - } - return (const GLubyte*)cache.parts[index]; - } - } - - return nullptr; - } - - GLenum GetError() { - GLenum error = MG_State::GetError(); - MG_Util::Debug::LogD("glGetError -> %s", MG_Util::Debug::GLEnumToString(error)); - return error; - } - - void GetIntegerv(GLenum pname, GLint *params) { - MG_Util::Debug::LogD("glGetIntegerv, pname: %s", MG_Util::Debug::GLEnumToString(pname)); - if (!params) { - MG_State::SetError(GL_INVALID_VALUE); - return; - } - - switch (pname) { - // General - case GL_CONTEXT_PROFILE_MASK: - params[0] = GL_CONTEXT_CORE_PROFILE_BIT; - break; - case GL_NUM_EXTENSIONS: - static GLint num_extensions = -1; - if (num_extensions == -1) { - const GLubyte* ext_str = MG_GL::GL::GetString(GL_EXTENSIONS); - char *copy = strdup((const char *) ext_str); - char *token = strtok(copy, " "); - num_extensions = 0; - while (token) { - num_extensions++; - token = strtok(nullptr, " "); - } - free(copy); - } - params[0] = num_extensions; - break; - case GL_MAJOR_VERSION: - params[0] = MG_Global::GL::GLVersionMajor; - break; - case GL_MINOR_VERSION: - params[0] = MG_Global::GL::GLVersionMinor; - break; - - // Viewport and scissor - case GL_VIEWPORT: - memcpy(params, MG_State_T::commonState->viewport, 4 * sizeof(GLint)); - break; - case GL_SCISSOR_BOX: - // TODO: memcpy(params, MG_State_T::commonState->scissorBox, 4 * sizeof(GLint)); - break; - case GL_MAX_VIEWPORT_DIMS: { - static const GLint maxDims[2] = {16384, 16384}; - memcpy(params, maxDims, sizeof(maxDims)); - break; - } - - // Buffer bindings - case GL_ARRAY_BUFFER_BINDING: - params[0] = static_cast(MG_State_T::bufferState->GetCurrentBinding(GL_ARRAY_BUFFER)); - break; - - case GL_ELEMENT_ARRAY_BUFFER_BINDING: - params[0] = static_cast(MG_State_T::vertexArrayState->GetBoundElementBuffer()); - break; - case GL_DRAW_FRAMEBUFFER_BINDING: - params[0] = static_cast(MG_State_T::framebufferState->currentBindings_[GL_DRAW_FRAMEBUFFER]); - break; - case GL_READ_FRAMEBUFFER_BINDING: - params[0] = static_cast(MG_State_T::framebufferState->currentBindings_[GL_READ_FRAMEBUFFER]); - break; - case GL_RENDERBUFFER_BINDING: - // TODO: params[0] = static_cast(MG_State_T::framebufferState->currentRenderbuffer_); - break; - - // Program state - case GL_CURRENT_PROGRAM: - params[0] = static_cast(MG_State_T::programState->currentProgram_); - break; - case GL_MAX_VERTEX_ATTRIBS: - // TODO: Check the real value - params[0] = MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS; - break; - - // Texture state - case GL_TEXTURE_BINDING_2D: { - GLuint unit = MG_State_T::textureState->activeTextureUnit_; - auto& textures = MG_State_T::textureState->textureUnits_[unit].boundTextures; - params[0] = textures.count(GL_TEXTURE_2D) ? static_cast(textures[GL_TEXTURE_2D]) : 0; - break; - } - case GL_ACTIVE_TEXTURE: - params[0] = GL_TEXTURE0 + MG_State_T::textureState->activeTextureUnit_; - break; - case GL_MAX_TEXTURE_SIZE: - params[0] = 8192; - break; - - // Blend state - case GL_BLEND_SRC_RGB: - params[0] = static_cast(MG_State_T::commonState->blendSrcRGB); - break; - case GL_BLEND_DST_RGB: - params[0] = static_cast(MG_State_T::commonState->blendDstRGB); - break; - case GL_BLEND_SRC_ALPHA: - params[0] = static_cast(MG_State_T::commonState->blendSrcAlpha); - break; - case GL_BLEND_DST_ALPHA: - params[0] = static_cast(MG_State_T::commonState->blendDstAlpha); - break; - - // Depth and stencil - case GL_DEPTH_FUNC: - params[0] = static_cast(MG_State_T::commonState->depthFunc); - break; - case GL_DEPTH_WRITEMASK: - params[0] = static_cast(MG_State_T::commonState->depthMask); - break; - case GL_STENCIL_REF: - // TODO: params[0] = MG_State_T::commonState->stencilRef; - break; - - // Capability enables - case GL_BLEND: - params[0] = MG_State_T::commonState->capabilities[GL_BLEND] ? GL_TRUE : GL_FALSE; - break; - case GL_DEPTH_TEST: - params[0] = MG_State_T::commonState->capabilities[GL_DEPTH_TEST] ? GL_TRUE : GL_FALSE; - break; - case GL_SCISSOR_TEST: - params[0] = MG_State_T::commonState->capabilities[GL_SCISSOR_TEST] ? GL_TRUE : GL_FALSE; - break; - - // Pixel operations - case GL_PACK_ALIGNMENT: - params[0] = MG_State_T::commonState->QueryPixelStoreInt(GL_PACK_ALIGNMENT); - break; - case GL_UNPACK_ALIGNMENT: - params[0] = MG_State_T::commonState->QueryPixelStoreInt(GL_UNPACK_ALIGNMENT); - break; - - // Hardware limits, TODO: Check the real values - case GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS: - params[0] = 32; - break; - case GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS: - params[0] = 32; - break; - case GL_MAX_TEXTURE_IMAGE_UNITS: - params[0] = 32; - break; - case GL_MAX_RENDERBUFFER_SIZE: - params[0] = 65537; - break; - case GL_MAX_DRAW_BUFFERS: - params[0] = 32; - break; - case GL_MAX_COLOR_ATTACHMENTS: - params[0] = 32; - break; - - // Color state - case GL_COLOR_CLEAR_VALUE: { - const auto& c = MG_State_T::commonState->clearColor; - params[0] = static_cast(c[0] * 0x7FFF); - params[1] = static_cast(c[1] * 0x7FFF); - params[2] = static_cast(c[2] * 0x7FFF); - params[3] = static_cast(c[3] * 0x7FFF); - break; - } - case GL_COLOR_WRITEMASK: - params[0] = MG_State_T::commonState->colorMask[0]; - params[1] = MG_State_T::commonState->colorMask[1]; - params[2] = MG_State_T::commonState->colorMask[2]; - params[3] = MG_State_T::commonState->colorMask[3]; - break; - - // Stencil operations - case GL_STENCIL_CLEAR_VALUE: - // TODO: params[0] = MG_State_T::commonState->stencilClearValue; - break; - case GL_STENCIL_BITS: - // TODO: Check the real value - params[0] = 8; - break; - - // Implementation limits - case GL_SUBPIXEL_BITS: - // TODO: Check the real value - params[0] = 4; - break; - case GL_NUM_COMPRESSED_TEXTURE_FORMATS: - // TODO: params[0] = static_cast(MG_State_T::textureState->compressedFormats_.size()); - break; - case GL_COMPRESSED_TEXTURE_FORMATS: - // TODO: Implement GL_COMPRESSED_TEXTURE_FORMATS - break; - - // Polygon state - case GL_POLYGON_OFFSET_FACTOR: - // TODO: params[0] = static_cast(MG_State_T::commonState->polygonOffsetFactor); - break; - case GL_POLYGON_OFFSET_UNITS: - // TODO: params[0] = static_cast(MG_State_T::commonState->polygonOffsetUnits); - break; - - // Others... - default: - MG_Util::Debug::LogE("glGetIntegerv: Invalid enum %s (0x%X)", MG_Util::Debug::GLEnumToString(pname), pname); - MG_State::SetError(GL_INVALID_ENUM); - break; - } - } - -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GL/Getter/GL_Getter.h b/MG/MG_GL/Implementations/GL/Getter/GL_Getter.h deleted file mode 100644 index b7d22dc4..00000000 --- a/MG/MG_GL/Implementations/GL/Getter/GL_Getter.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_GETTER_H -#define MOBILEGL_GL_GETTER_H - -namespace MG_GL::GL { - const GLubyte* GetString(GLenum name); - const GLubyte* GetStringi(GLenum name, GLuint index); - GLenum GetError(); - void GetIntegerv(GLenum pname, GLint *params); -} - -#endif //MOBILEGL_GL_GETTER_H diff --git a/MG/MG_GL/Implementations/GL/Program/GL_Program.cpp b/MG/MG_GL/Implementations/GL/Program/GL_Program.cpp deleted file mode 100644 index c740d10e..00000000 --- a/MG/MG_GL/Implementations/GL/Program/GL_Program.cpp +++ /dev/null @@ -1,676 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - void CreateDefaultUBO(MG_Diligent::GLProgramInfo& programInfo, size_t uboSize) { - MG_Util::Debug::LogD("CreateDefaultUBO for program, size = %zu", uboSize); - if (uboSize > 0) { - Diligent::BufferDesc BuffDesc; - BuffDesc.Name = "MG_DEFAULT_UBO"; - BuffDesc.Size = uboSize; - BuffDesc.Usage = Diligent::USAGE_DYNAMIC; - BuffDesc.BindFlags = Diligent::BIND_UNIFORM_BUFFER; - BuffDesc.CPUAccessFlags = Diligent::CPU_ACCESS_WRITE; - MG_Diligent::g_pDevice->CreateBuffer(BuffDesc, nullptr, &programInfo.pDefaultUBO); - MG_Util::Debug::LogD("Created default UBO: size = %zu", uboSize); - } else { - MG_Util::Debug::LogD("UBO size is 0, default UBO not created."); - } - } - - size_t RecordUniformOffsets(MG_Diligent::GLProgramInfo& programInfo, const MG_Global::unordered_map& shaderSources) { - MG_Util::Debug::LogD("RecordUniformOffsets for program %u using SPIRV-Cross", programInfo.id); - size_t uboTotalSize = 0; - programInfo.uniformOffsets.clear(); - - GLuint reflectionShaderId = 0; - for (auto shaderId : programInfo.AttachedShadersID) { - auto& shaderObj = MG_State_T::programState->shaders_[shaderId]; - MG_Util::Debug::LogD(" Checking attached shader %u, type: %s", shaderId, MG_Util::Debug::GLEnumToString(shaderObj.type)); - if (shaderObj.type == GL_VERTEX_SHADER) { - reflectionShaderId = shaderId; - MG_Util::Debug::LogD(" Found vertex shader %u for reflection.", reflectionShaderId); - break; - } - } - if (!reflectionShaderId && !programInfo.AttachedShadersID.empty()) { - reflectionShaderId = programInfo.AttachedShadersID[0]; - MG_Util::Debug::LogD(" No vertex shader found, using first attached shader %u for reflection.", reflectionShaderId); - } - if (!reflectionShaderId) { - MG_Util::Debug::LogW(" No suitable shader found for UBO reflection."); - return uboTotalSize; - } - - MG_Util::Debug::LogD(" Using shader %u for UBO reflection.", reflectionShaderId); - auto itSource = shaderSources.find(reflectionShaderId); - if (itSource == shaderSources.end()) { - MG_Util::Debug::LogE(" Could not find source for reflection shader %u.", reflectionShaderId); - return uboTotalSize; - } - - MG_Util::Debug::LogD(" Found source for shader %u.", reflectionShaderId); - MG_Util::Debug::LogD(" Shader source for reflection:\n%s", itSource->second.c_str()); - std::string infoLog; - auto spirv = MG_Util::Program::CompileGLSLToSPIRV( - MG_State_T::programState->shaders_[reflectionShaderId].type, - itSource->second, - infoLog, - true - ); - if (spirv.empty()) { - MG_Util::Debug::LogE("GLSL to SPIR-V compilation failed for shader %u: %s", reflectionShaderId, infoLog.c_str()); - return uboTotalSize; - } - - MG_Util::Debug::LogD(" Successfully compiled GLSL to SPIR-V for shader %u.", reflectionShaderId); - - spvc_context context = nullptr; - spvc_parsed_ir ir = nullptr; - spvc_compiler compiler = nullptr; - spvc_resources resources = nullptr; - - if (spvc_context_create(&context) != SPVC_SUCCESS) { - MG_Util::Debug::LogE("SPIRV-Cross: Failed to create context: %s", spvc_context_get_last_error_string(context)); - return uboTotalSize; - } - - if (spvc_context_parse_spirv(context, spirv.data(), spirv.size(), &ir) != SPVC_SUCCESS) { - MG_Util::Debug::LogE("SPIRV-Cross: Failed to parse SPIR-V: %s", spvc_context_get_last_error_string(context)); - spvc_context_destroy(context); - return uboTotalSize; - } - - if (spvc_context_create_compiler(context, SPVC_BACKEND_GLSL, ir, SPVC_CAPTURE_MODE_TAKE_OWNERSHIP, &compiler) != SPVC_SUCCESS) { - MG_Util::Debug::LogE("SPIRV-Cross: Failed to create compiler: %s", spvc_context_get_last_error_string(context)); - spvc_context_destroy(context); - return uboTotalSize; - } - - MG_Util::Debug::LogD(" spvc_context_create_compiler successful."); - - if (spvc_compiler_create_shader_resources(compiler, &resources) != SPVC_SUCCESS) { - MG_Util::Debug::LogE("SPIRV-Cross: Failed to create shader resources: %s", spvc_context_get_last_error_string(context)); - spvc_context_destroy(context); - return uboTotalSize; - } - - MG_Util::Debug::LogD(" spvc_compiler_create_shader_resources successful."); - - const spvc_reflected_resource* ubo_list = nullptr; - size_t ubo_count = 0; - if (spvc_resources_get_resource_list_for_type(resources, SPVC_RESOURCE_TYPE_UNIFORM_BUFFER, &ubo_list, &ubo_count) != SPVC_SUCCESS) { - MG_Util::Debug::LogE("SPIRV-Cross: Failed to get resource list for UBO: %s", spvc_context_get_last_error_string(context)); - spvc_context_destroy(context); - return uboTotalSize; - } - - MG_Util::Debug::LogD(" Found %zu UBO resources.", ubo_count); - - for (size_t i = 0; i < ubo_count; i++) { - const char* name = ubo_list[i].name; - if (!name || strcmp(name, "MG_DEFAULT_UBO") != 0) { - MG_Util::Debug::LogD(" Skipping UBO '%s'.", name ? name : ""); - continue; - } - - MG_Util::Debug::LogD(" Found UBO 'MG_DEFAULT_UBO'."); - spvc_type_id ubo_type_id = ubo_list[i].type_id; - spvc_type ubo_type = spvc_compiler_get_type_handle(compiler, ubo_type_id); - - size_t currentUboSize = 0; - if (spvc_compiler_get_declared_struct_size(compiler, ubo_type, ¤tUboSize) != SPVC_SUCCESS) { - MG_Util::Debug::LogE("SPIRV-Cross: Failed to get declared struct size: %s", spvc_context_get_last_error_string(context)); - spvc_context_destroy(context); - return uboTotalSize; - } - - uboTotalSize = currentUboSize; - MG_Util::Debug::LogD(" UBO 'MG_DEFAULT_UBO' total size: %zu", uboTotalSize); - - size_t member_count = spvc_type_get_num_member_types(ubo_type); - for (size_t member_index = 0; member_index < member_count; member_index++) { - const char* member_name = programInfo.uniformBufferNames[member_index].c_str(); - - unsigned offset; - spvc_compiler_type_struct_member_offset(compiler, ubo_type, member_index, &offset); - - if (member_name) { - programInfo.uniformOffsets[member_name] = offset; - MG_Util::Debug::LogD( - " Uniform '%s' offset = %u (via SPIRV-Cross)", - member_name, - offset - ); - } - } - break; - } - - spvc_context_destroy(context); - MG_Util::Debug::LogD("RecordUniformOffsets completed for program %u, UBO total size: %zu", programInfo.id, uboTotalSize); - return uboTotalSize; - } - - Diligent::VALUE_TYPE ConvertGLTypeToDiligent(GLenum type) { - switch (type) { - case GL_FLOAT: return Diligent::VT_FLOAT32; - case GL_FLOAT_VEC2: return Diligent::VT_FLOAT32; - case GL_FLOAT_VEC3: return Diligent::VT_FLOAT32; - case GL_FLOAT_VEC4: return Diligent::VT_FLOAT32; - case GL_SHORT: return Diligent::VT_INT16; - case GL_UNSIGNED_SHORT: return Diligent::VT_UINT16; - case GL_BYTE: return Diligent::VT_INT8; - case GL_UNSIGNED_BYTE: return Diligent::VT_UINT8; - case GL_INT: return Diligent::VT_INT32; - case GL_INT_VEC2: return Diligent::VT_INT32; - case GL_INT_VEC3: return Diligent::VT_INT32; - case GL_INT_VEC4: return Diligent::VT_INT32; - case GL_UNSIGNED_INT: return Diligent::VT_UINT32; - case GL_UNSIGNED_INT_VEC2: return Diligent::VT_UINT32; - case GL_UNSIGNED_INT_VEC3: return Diligent::VT_UINT32; - case GL_UNSIGNED_INT_VEC4: return Diligent::VT_UINT32; - case GL_FLOAT_MAT2: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT3: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT4: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT2x3: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT2x4: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT3x2: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT3x4: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT4x2: return Diligent::VT_FLOAT32; - case GL_FLOAT_MAT4x3: return Diligent::VT_FLOAT32; - default: return Diligent::VT_UNDEFINED; - } - } - - GLuint CreateShader(GLenum type) { - MG_Util::Debug::LogD("glCreateShader, type: %s", MG_Util::Debug::GLEnumToString(type)); - GLuint shader; - GLenum result = MG_State::CreateShader(type, &shader); - if (result == GL_NO_ERROR) { - MG_Util::Debug::LogD("Created shader ID: %u", shader); - MG_Diligent::g_ShaderMap[shader] = nullptr; - return shader; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error creating shader: %s", MG_Util::Debug::GLEnumToString(result)); - return 0; - } - - GLuint CreateProgram() { - MG_Util::Debug::LogD("glCreateProgram"); - GLuint program; - GLenum result = MG_State::CreateProgram(&program); - if (result == GL_NO_ERROR) { - MG_Util::Debug::LogD("Created program ID: %u", program); - return program; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error creating program: %s", MG_Util::Debug::GLEnumToString(result)); - return 0; - } - - void DeleteShader(GLuint shader) { - MG_Util::Debug::LogD("glDeleteShader, shader: %u", shader); - GLenum result = MG_State::DeleteShader(shader); - if (result == GL_NO_ERROR) { - // Do not delete the shader object since it may be used in glDraw*. - /* - auto it = MG_Diligent::g_ShaderMap.find(shader); - if (it != MG_Diligent::g_ShaderMap.end()) { - if (it->second) { - it->second->Release(); - } - MG_Diligent::g_ShaderMap.erase(it); - } - return; - */ - } - MG_State::SetError(result); - MG_Util::Debug::LogW("Error deleting shader: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void DeleteProgram(GLuint program) { - MG_Util::Debug::LogD("glDeleteProgram, program: %u", program); - GLenum result = MG_State::DeleteProgram(program); - if (result == GL_NO_ERROR) { - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error deleting program: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void AttachShader(GLuint program, GLuint shader) { - MG_Util::Debug::LogD("glAttachShader, program: %u, shader: %u", program, shader); - GLenum result = MG_State::LinkShaderToProgram(program, shader); - if (result == GL_NO_ERROR) { - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error attaching shader: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void ShaderSource(GLuint shader, GLsizei count, const GLchar *const*string, const GLint* length) { - MG_Util::Debug::LogD("glShaderSource, shader: %u, count: %d", shader, count); - if (count > 0 && string != nullptr && string[0] != nullptr) { - MG_Util::Debug::LogD("Shader source for shader %u:\n%s", shader, string[0]); - } else { - MG_Util::Debug::LogD("Shader source for shader %u is empty or null.", shader); - } - GLenum result = MG_State::UploadShaderSource(shader, count, (const GLchar **)string, length); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error setting shader source: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void CompileShader(GLuint shader) { - MG_Util::Debug::LogD("glCompileShader, shader: %u", shader); - // Defer actual compilation to LinkProgram - GLenum result = MG_State::BuildShaderStage(shader); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error marking shader for compilation: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void LinkProgram(GLuint program) { - MG_Util::Debug::LogD("glLinkProgram, program: %u", program); - GLenum result = MG_State::FinalizeProgramPipeline(program); - if (result != GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Error linking program: %s", MG_Util::Debug::GLEnumToString(result)); - return; - } - auto& programInfo = MG_Diligent::g_ProgramMap[program]; - auto& programObj = MG_State_T::programState->programs_[program]; - - programInfo.id = program; - - for (const auto& shaderId : programObj.attachedShaders) { - programInfo.AttachedShadersID.push_back(shaderId); - } - - MG_Global::unordered_map shaderSources; - MG_Global::unordered_map finalShaderSources; - for (GLuint shaderId : programObj.attachedShaders) { - auto it = MG_State_T::programState->shaders_.find(shaderId); - if (it != MG_State_T::programState->shaders_.end() && !it->second.markedForDeletion) { - shaderSources[it->first] = it->second.source; -// MG_Util::Program::RenameGLSLBuiltinsForVulkan(shaderSources[it->first]); - } - } - - MG_Util::Program::GenerateDefaultUBOForGLSL_Multi(shaderSources, programInfo.uniformBufferNames); - MG_Util::Debug::LogD("LinkProgram: uniformBufferNames for %u:", program); - for (auto& name: programInfo.uniformBufferNames) { - MG_Util::Debug::LogD(" %s", name.c_str()); - } - - for (GLuint shaderId : programObj.attachedShaders) { - auto it = MG_State_T::programState->shaders_.find(shaderId); - if (it != MG_State_T::programState->shaders_.end() && !it->second.markedForDeletion) { - std::string shaderSource; - if (it->second.type == GL_VERTEX_SHADER) { - std::string infoLog; - - const char* fragmentShaderSource = nullptr; - for (GLuint otherShaderId : programObj.attachedShaders) { - if (otherShaderId != shaderId && MG_State_T::programState->shaders_[otherShaderId].type == GL_FRAGMENT_SHADER) { - fragmentShaderSource = shaderSources[otherShaderId].c_str(); - break; - } - } - auto spirv = MG_Util::Program::CompileGLSLToSPIRV(it->second.type, - shaderSources[shaderId], - infoLog, true, GL_FRAGMENT_SHADER, fragmentShaderSource); - if (spirv.empty()) { - MG_Util::Debug::LogE("Failed to compile vertex shader %u: %s", shaderId, - infoLog.c_str()); - continue; - } - - shaderSource = MG_Util::Program::BindInputLayoutLocationsForGLSL(spirv, - programObj.attribLocations); - } else if (it->second.type == GL_FRAGMENT_SHADER) { - std::string infoLog; - - const char* vertexShaderSource = nullptr; - for (GLuint otherShaderId : programObj.attachedShaders) { - if (otherShaderId != shaderId && MG_State_T::programState->shaders_[otherShaderId].type == GL_VERTEX_SHADER) { - vertexShaderSource = shaderSources[otherShaderId].c_str(); - break; - } - } - - auto spirv = MG_Util::Program::CompileGLSLToSPIRV(it->second.type, - shaderSources[shaderId], - infoLog, true, - GL_VERTEX_SHADER, vertexShaderSource); - if (spirv.empty()) { - MG_Util::Debug::LogE("Failed to compile fragment shader %u to SPIRV: %s", shaderId, - infoLog.c_str()); - continue; - } - - shaderSource = MG_Util::Program::CompileSPIRVToGLSL(spirv, 450, false, true); - } else { - shaderSource = it->second.source; - } - finalShaderSources[it->first] = shaderSource; - } - } - - - MG_Util::Debug::LogD("Shader sources after UBO generation for program %u:", program); - for (const auto& [shaderId, source] : finalShaderSources) { - MG_Util::Debug::LogD(" Program %u Shader %u:\n%s", program, shaderId, source.c_str()); - } - - size_t uboTotalSize = RecordUniformOffsets(programInfo, finalShaderSources); - CreateDefaultUBO(programInfo, uboTotalSize); - - // Compile attached shaders - for (GLuint shaderId : programInfo.AttachedShadersID) { - auto& shaderObj = MG_State_T::programState->shaders_[shaderId]; - // Compile only if not already compiled in Diligent - if (MG_Diligent::g_ShaderMap.find(shaderId) == MG_Diligent::g_ShaderMap.end() || MG_Diligent::g_ShaderMap[shaderId] == nullptr) { - GLenum shaderType = shaderObj.type; - std::string sourceStr = finalShaderSources[shaderId]; - MG_Util::Program::RenameGLSLBuiltinsForVulkan(sourceStr); - MG_Util::Debug::LogD("Shader ID: %u, type: %s\nConverted source:\n%s", - shaderId, MG_Util::Debug::GLEnumToString(shaderType), sourceStr.c_str()); - - Diligent::ShaderCreateInfo ShaderCI; - ShaderCI.Source = sourceStr.c_str(); - ShaderCI.EntryPoint = "main"; - - switch (shaderType) { - case GL_VERTEX_SHADER: ShaderCI.Desc.ShaderType = Diligent::SHADER_TYPE_VERTEX; break; - case GL_FRAGMENT_SHADER: ShaderCI.Desc.ShaderType = Diligent::SHADER_TYPE_PIXEL; break; - case GL_GEOMETRY_SHADER: ShaderCI.Desc.ShaderType = Diligent::SHADER_TYPE_GEOMETRY; break; - case GL_TESS_CONTROL_SHADER: ShaderCI.Desc.ShaderType = Diligent::SHADER_TYPE_HULL; break; - case GL_TESS_EVALUATION_SHADER: ShaderCI.Desc.ShaderType = Diligent::SHADER_TYPE_DOMAIN; break; - case GL_COMPUTE_SHADER: ShaderCI.Desc.ShaderType = Diligent::SHADER_TYPE_COMPUTE; break; - default: MG_Util::Debug::LogW("Unsupported shader type for compilation: %u", shaderType); continue; - } - - ShaderCI.Desc.Name = ("Shader_" + std::to_string(shaderId)).c_str(); - ShaderCI.SourceLanguage = Diligent::SHADER_SOURCE_LANGUAGE_GLSL_VERBATIM; - - Diligent::IShader* pShader = nullptr; - Diligent::RefCntAutoPtr pMsg; - MG_Diligent::g_pDevice->CreateShader(ShaderCI, &pShader, &pMsg); - - if (pShader) { - MG_Diligent::g_ShaderMap[shaderId] = pShader; - programInfo.AttachedShaders.push_back(pShader); - shaderObj.compiled = UncertainBool::True; - shaderObj.compileStatus = GL_TRUE; - MG_Util::Debug::LogD("Successfully compiled shader ID: %u for program %u", shaderId, program); - } else { - shaderObj.compiled = UncertainBool::False; - shaderObj.compileStatus = GL_FALSE; - MG_Util::Debug::LogE("Failed to compile shader ID: %u for program %u. \ncompiler info:\n%s", shaderId, program, pMsg->GetConstDataPtr()); - } - } else { - // Shader already compiled, just add to programInfo - programInfo.AttachedShaders.push_back(MG_Diligent::g_ShaderMap[shaderId]); - } - } - - programInfo.inputLayout.clear(); - - auto* pVAO = MG_State_T::vertexArrayState->GetCurrentVAO(); - if (!pVAO) return; - -// for (const auto& [index, attrib] : pVAO->attribs) { - for (uint32_t index = 0; index < MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS; ++index) { - const auto& attrib = pVAO->attribs[index]; - if (attrib.enabled) { - Diligent::LayoutElement elem; - elem.InputIndex = index; - elem.BufferSlot = 0; - elem.NumComponents = attrib.size; - elem.ValueType = ConvertGLTypeToDiligent(attrib.type); - elem.IsNormalized = attrib.normalized; - elem.RelativeOffset = static_cast(reinterpret_cast(attrib.pointer)); - - programInfo.inputLayout.push_back(elem); - } - } - - programInfo.psoDirty = true; - programInfo.psoStateHash = 0; - programInfo.uniformStages.clear(); - programInfo.programObj = MG_State_T::programState->programs_[program]; - - if (programInfo.pResourceBinding) { - programInfo.pResourceBinding->Release(); - programInfo.pResourceBinding = nullptr; - } - - programObj.linked = true; - programObj.linkStatus = GL_TRUE; - } - - void UseProgram(GLuint program) { - MG_Util::Debug::LogD("glUseProgram, program: %u", program); - GLenum result = MG_State::ActivateRenderProgram(program); - if (result == GL_NO_ERROR) { - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error using program: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void BindAttribLocation(GLuint program, GLuint index, const GLchar* name) { - MG_Util::Debug::LogD("glBindAttribLocation, program: %u, index: %u, name: %s", program, index, name); - GLenum result = MG_State::DefineProgramAttributeLocation(program, index, name); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error binding attribute: %s", MG_Util::Debug::GLEnumToString(result)); - } - - GLint GetAttribLocation(GLuint program, const GLchar* name) { - MG_Util::Debug::LogD("glGetAttribLocation, program: %u, name: %s", program, name); - GLint location = MG_State::QueryProgramAttributeLocation(program, name); - if (location != -1) return location; - MG_State::SetError(GL_INVALID_OPERATION); - MG_Util::Debug::LogE("Attribute not found: %s", name); - return -1; - } - - GLint GetUniformLocation(GLuint program, const GLchar* name) { - MG_Util::Debug::LogD("glGetUniformLocation, program: %u, name: %s", program, name); - GLint location = MG_State::QueryProgramUniformLocation(program, name); - if (location != -1) return location; - MG_State::SetError(GL_INVALID_OPERATION); - MG_Util::Debug::LogE("Uniform not found: %s", name); - return -1; - } - - void GetProgramiv(GLuint program, GLenum pname, GLint* params) { - MG_Util::Debug::LogD("glGetProgramiv, program: %u, pname: %s", - program, MG_Util::Debug::GLEnumToString(pname)); - GLenum result = MG_State::QueryProgramStateIntVector(program, pname, params); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogW("Error getting program param: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void GetShaderiv(GLuint shader, GLenum pname, GLint* params) { - MG_Util::Debug::LogD("glGetShaderiv, shader: %u, pname: %s", - shader, MG_Util::Debug::GLEnumToString(pname)); - GLenum result = MG_State::QueryShaderStateIntVector(shader, pname, params); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error getting shader param: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void Uniform1f(GLint location, GLfloat v0) { - MG_Util::Debug::LogD("glUniform1f, location: %d, v0: %f", location, v0); - MG_State::UpdateProgramUniformFloat1(location, v0); - } - - void Uniform2f(GLint location, GLfloat v0, GLfloat v1) { - MG_Util::Debug::LogD("glUniform2f, location: %d, v0: %f, v1: %f", location, v0, v1); - MG_State::UpdateProgramUniformFloat2(location, v0, v1); - } - - void Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2) { - MG_Util::Debug::LogD("glUniform3f, location: %d, v0: %f, v1: %f, v2: %f", location, v0, v1, v2); - MG_State::UpdateProgramUniformFloat3(location, v0, v1, v2); - } - - void Uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) { - MG_Util::Debug::LogD("glUniform4f, location: %d, v0: %f, v1: %f, v2: %f, v3: %f", location, v0, v1, v2, v3); - MG_State::UpdateProgramUniformFloat4(location, v0, v1, v2, v3); - } - - void Uniform1fv(GLint location, GLsizei count, const GLfloat* value) { - MG_Util::Debug::LogD("glUniform1fv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformFloatVector1(location, count, value); - } - - void Uniform2fv(GLint location, GLsizei count, const GLfloat* value) { - MG_Util::Debug::LogD("glUniform2fv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformFloatVector2(location, count, value); - } - - void Uniform3fv(GLint location, GLsizei count, const GLfloat* value) { - MG_Util::Debug::LogD("glUniform3fv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformFloatVector3(location, count, value); - } - - void Uniform4fv(GLint location, GLsizei count, const GLfloat* value) { - MG_Util::Debug::LogD("glUniform4fv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformFloatVector4(location, count, value); - } - - void Uniform1i(GLint location, GLint v0) { - MG_Util::Debug::LogD("glUniform1i, location: %d, v0: %d", location, v0); - MG_State::UpdateProgramUniformInt1(location, v0); - } - - void Uniform2i(GLint location, GLint v0, GLint v1) { - MG_Util::Debug::LogD("glUniform2i, location: %d, v0: %d, v1: %d", location, v0, v1); - MG_State::UpdateProgramUniformInt2(location, v0, v1); - } - - void Uniform3i(GLint location, GLint v0, GLint v1, GLint v2) { - MG_Util::Debug::LogD("glUniform3i, location: %d, v0: %d, v1: %d, v2: %d", location, v0, v1, v2); - MG_State::UpdateProgramUniformInt3(location, v0, v1, v2); - } - - void Uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3) { - MG_Util::Debug::LogD("glUniform4i, location: %d, v0: %d, v1: %d, v2: %d, v3: %d", location, v0, v1, v2, v3); - MG_State::UpdateProgramUniformInt4(location, v0, v1, v2, v3); - } - - void Uniform1iv(GLint location, GLsizei count, const GLint* value) { - MG_Util::Debug::LogD("glUniform1iv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformIntVector1(location, count, value); - } - - void Uniform2iv(GLint location, GLsizei count, const GLint* value) { - MG_Util::Debug::LogD("glUniform2iv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformIntVector2(location, count, value); - } - - void Uniform3iv(GLint location, GLsizei count, const GLint* value) { - MG_Util::Debug::LogD("glUniform3iv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformIntVector3(location, count, value); - } - - void Uniform4iv(GLint location, GLsizei count, const GLint* value) { - MG_Util::Debug::LogD("glUniform4iv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformIntVector4(location, count, value); - } - - void Uniform1ui(GLint location, GLuint v0) { - MG_Util::Debug::LogD("glUniform1ui, location: %d, v0: %u", location, v0); - MG_State::UpdateProgramUniformUInt1(location, v0); - } - - void Uniform2ui(GLint location, GLuint v0, GLuint v1) { - MG_Util::Debug::LogD("glUniform2ui, location: %d, v0: %u, v1: %u", location, v0, v1); - MG_State::UpdateProgramUniformUInt2(location, v0, v1); - } - - void Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) { - MG_Util::Debug::LogD("glUniform3ui, location: %d, v0: %u, v1: %u, v2: %u", location, v0, v1, v2); - MG_State::UpdateProgramUniformUInt3(location, v0, v1, v2); - } - - void Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) { - MG_Util::Debug::LogD("glUniform4ui, location: %d, v0: %u, v1: %u, v2: %u, v3: %u", location, v0, v1, v2, v3); - MG_State::UpdateProgramUniformUInt4(location, v0, v1, v2, v3); - } - - void Uniform1uiv(GLint location, GLsizei count, const GLuint* value) { - MG_Util::Debug::LogD("glUniform1uiv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformUIntVector1(location, count, value); - } - - void Uniform2uiv(GLint location, GLsizei count, const GLuint* value) { - MG_Util::Debug::LogD("glUniform2uiv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformUIntVector2(location, count, value); - } - - void Uniform3uiv(GLint location, GLsizei count, const GLuint* value) { - MG_Util::Debug::LogD("glUniform3uiv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformUIntVector3(location, count, value); - } - - void Uniform4uiv(GLint location, GLsizei count, const GLuint* value) { - MG_Util::Debug::LogD("glUniform4uiv, location: %d, count: %d", location, count); - MG_State::UpdateProgramUniformUIntVector4(location, count, value); - } - - void UniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix2fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix2x2Vector(location, count, transpose, value); - } - - void UniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix3fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix3x3Vector(location, count, transpose, value); - } - - void UniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix4fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix4x4Vector(location, count, transpose, value); - } - - void UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix2x3fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix2x3Vector(location, count, transpose, value); - } - - void UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix2x4fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix2x4Vector(location, count, transpose, value); - } - - void UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix3x2fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix3x2Vector(location, count, transpose, value); - } - - void UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix3x4fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix3x4Vector(location, count, transpose, value); - } - - void UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix4x2fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix4x2Vector(location, count, transpose, value); - } - - void UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { - MG_Util::Debug::LogD("glUniformMatrix4x3fv, location: %d, count: %d, transpose: %d", location, count, transpose); - MG_State::UpdateProgramUniformMatrix4x3Vector(location, count, transpose, value); - } -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GL/Program/GL_Program.h b/MG/MG_GL/Implementations/GL/Program/GL_Program.h deleted file mode 100644 index ba942f87..00000000 --- a/MG/MG_GL/Implementations/GL/Program/GL_Program.h +++ /dev/null @@ -1,60 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_PROGRAM_H -#define MOBILEGL_GL_PROGRAM_H - -namespace MG_GL::GL { - Diligent::VALUE_TYPE ConvertGLTypeToDiligent(GLenum type); - - GLuint CreateShader(GLenum type); - GLuint CreateProgram(); - void DeleteShader(GLuint shader); - void DeleteProgram(GLuint program); - void AttachShader(GLuint program, GLuint shader); - void ShaderSource(GLuint shader, GLsizei count, const GLchar *const*string, const GLint* length); - void CompileShader(GLuint shader); - void LinkProgram(GLuint program); - void UseProgram(GLuint program); - void BindAttribLocation(GLuint program, GLuint index, const GLchar* name); - GLint GetAttribLocation(GLuint program, const GLchar* name); - GLint GetUniformLocation(GLuint program, const GLchar* name); - void GetProgramiv(GLuint program, GLenum pname, GLint* params); - void GetShaderiv(GLuint shader, GLenum pname, GLint* params); - void Uniform1f(GLint location, GLfloat v0); - void Uniform2f(GLint location, GLfloat v0, GLfloat v1); - void Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2); - void Uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); - void Uniform1fv(GLint location, GLsizei count, const GLfloat* value); - void Uniform2fv(GLint location, GLsizei count, const GLfloat* value); - void Uniform3fv(GLint location, GLsizei count, const GLfloat* value); - void Uniform4fv(GLint location, GLsizei count, const GLfloat* value); - void Uniform1i(GLint location, GLint v0); - void Uniform2i(GLint location, GLint v0, GLint v1); - void Uniform3i(GLint location, GLint v0, GLint v1, GLint v2); - void Uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3); - void Uniform1iv(GLint location, GLsizei count, const GLint* value); - void Uniform2iv(GLint location, GLsizei count, const GLint* value); - void Uniform3iv(GLint location, GLsizei count, const GLint* value); - void Uniform4iv(GLint location, GLsizei count, const GLint* value); - void Uniform1ui(GLint location, GLuint v0); - void Uniform2ui(GLint location, GLuint v0, GLuint v1); - void Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2); - void Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); - void Uniform1uiv(GLint location, GLsizei count, const GLuint* value); - void Uniform2uiv(GLint location, GLsizei count, const GLuint* value); - void Uniform3uiv(GLint location, GLsizei count, const GLuint* value); - void Uniform4uiv(GLint location, GLsizei count, const GLuint* value); - void UniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - void UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -} - -#endif //MOBILEGL_GL_PROGRAM_H diff --git a/MG/MG_GL/Implementations/GL/Texture/GL_Texture.cpp b/MG/MG_GL/Implementations/GL/Texture/GL_Texture.cpp deleted file mode 100644 index d2348aac..00000000 --- a/MG/MG_GL/Implementations/GL/Texture/GL_Texture.cpp +++ /dev/null @@ -1,698 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - - Diligent::TEXTURE_FORMAT ConvertInternalFormat(GLint internalFormat) { - switch (internalFormat) { - case GL_RGBA: return Diligent::TEX_FORMAT_RGBA8_UNORM; - case GL_RGBA8: return Diligent::TEX_FORMAT_RGBA8_UNORM; - case GL_RGBA8_SNORM: return Diligent::TEX_FORMAT_RGBA8_SNORM; - case GL_RGBA16F: return Diligent::TEX_FORMAT_RGBA16_FLOAT; - case GL_RGBA32F: return Diligent::TEX_FORMAT_RGBA32_FLOAT; - - case GL_RGB: return Diligent::TEX_FORMAT_RGBA8_UNORM; - case GL_RGB8: return Diligent::TEX_FORMAT_RGBA8_UNORM; // Diligent doesn't have RGB8, promote to RGBA8 - case GL_RGB16F: return Diligent::TEX_FORMAT_RGBA16_FLOAT; // Promote - case GL_RGB32F: return Diligent::TEX_FORMAT_RGBA32_FLOAT; // Promote - - case GL_DEPTH_COMPONENT: return Diligent::TEX_FORMAT_D32_FLOAT; - case GL_DEPTH_COMPONENT16: return Diligent::TEX_FORMAT_D16_UNORM; - case GL_DEPTH_COMPONENT24: return Diligent::TEX_FORMAT_D24_UNORM_S8_UINT; // No D24_UNORM, use with stencil - case GL_DEPTH_COMPONENT32: return Diligent::TEX_FORMAT_D32_FLOAT; - case GL_DEPTH_COMPONENT32F: return Diligent::TEX_FORMAT_D32_FLOAT; - - case GL_DEPTH_STENCIL: return Diligent::TEX_FORMAT_D24_UNORM_S8_UINT; - case GL_DEPTH24_STENCIL8: return Diligent::TEX_FORMAT_D24_UNORM_S8_UINT; - case GL_DEPTH32F_STENCIL8: return Diligent::TEX_FORMAT_D32_FLOAT_S8X24_UINT; - - case GL_RED: return Diligent::TEX_FORMAT_R8_UNORM; - case GL_R8: return Diligent::TEX_FORMAT_R8_UNORM; - case GL_R16F: return Diligent::TEX_FORMAT_R16_FLOAT; - case GL_R32F: return Diligent::TEX_FORMAT_R32_FLOAT; - - case GL_RG: return Diligent::TEX_FORMAT_RG8_UNORM; - case GL_RG8: return Diligent::TEX_FORMAT_RG8_UNORM; - case GL_RG16F: return Diligent::TEX_FORMAT_RG16_FLOAT; - case GL_RG32F: return Diligent::TEX_FORMAT_RG32_FLOAT; - - default: return Diligent::TEX_FORMAT_RGBA8_UNORM; - } - } - - size_t GetBytesPerPixel(GLenum format, GLenum type) { - int components = 0; - switch (format) { - case GL_RED: components = 1; break; - case GL_RG: components = 2; break; - case GL_RGB: components = 3; break; - case GL_RGBA: components = 4; break; - case GL_DEPTH_COMPONENT: components = 1; break; - case GL_DEPTH_STENCIL: components = 2; break; - default: components = 4; break; - } - - size_t typeSize = 0; - switch (type) { - case GL_UNSIGNED_BYTE: - case GL_BYTE: typeSize = 1; break; - case GL_UNSIGNED_SHORT: - case GL_SHORT: typeSize = 2; break; - case GL_UNSIGNED_INT: - case GL_INT: - case GL_FLOAT: typeSize = 4; break; - default: typeSize = 1; break; - } - - return components * typeSize; - } - - Diligent::FILTER_TYPE ConvertCompareFilter(Diligent::FILTER_TYPE& filter, bool compare) { - if (compare) { - switch (filter) { - case Diligent::FILTER_TYPE_POINT: return Diligent::FILTER_TYPE_COMPARISON_POINT; - case Diligent::FILTER_TYPE_LINEAR: return Diligent::FILTER_TYPE_COMPARISON_LINEAR; - case Diligent::FILTER_TYPE_ANISOTROPIC: return Diligent::FILTER_TYPE_COMPARISON_ANISOTROPIC; - default: return filter; - } - } else { - switch (filter) { - case Diligent::FILTER_TYPE_COMPARISON_POINT: return Diligent::FILTER_TYPE_POINT; - case Diligent::FILTER_TYPE_COMPARISON_LINEAR: return Diligent::FILTER_TYPE_LINEAR; - case Diligent::FILTER_TYPE_COMPARISON_ANISOTROPIC: return Diligent::FILTER_TYPE_ANISOTROPIC; - default: return filter; - } - } - } - - bool IsCompareFilter(Diligent::FILTER_TYPE filter) { - switch (filter) { - case Diligent::FILTER_TYPE_COMPARISON_POINT: return true; - case Diligent::FILTER_TYPE_COMPARISON_LINEAR: return true; - case Diligent::FILTER_TYPE_COMPARISON_ANISOTROPIC: return true; - default: return false; - } - } - - void FillFilterTypeFromGLEnum(GLenum pname, GLenum param, Diligent::FILTER_TYPE& minFilter, Diligent::FILTER_TYPE& magFilter, Diligent::FILTER_TYPE& mipFilter) { - if (pname == GL_TEXTURE_COMPARE_MODE) { - bool compare = (param == GL_COMPARE_REF_TO_TEXTURE); - minFilter = ConvertCompareFilter(minFilter, compare); - magFilter = ConvertCompareFilter(magFilter, compare); - mipFilter = ConvertCompareFilter(mipFilter, compare); - return; - } - - Diligent::FILTER_TYPE* pFilter = nullptr; - if (pname == GL_TEXTURE_MIN_FILTER) { - pFilter = &minFilter; - } else if (pname == GL_TEXTURE_MAG_FILTER) { - pFilter = &magFilter; - } else { - MG_Util::Debug::LogD("FillFilterTypeFromGLEnum: not allowed pname!"); - return; - } - - Diligent::FILTER_TYPE& filter = *pFilter; - - bool filterIsCompare = IsCompareFilter(filter); - bool mipFilterIsCompare = IsCompareFilter(mipFilter); - - switch (param) { - case GL_NEAREST: - filter = Diligent::FILTER_TYPE_POINT; - if (pname == GL_TEXTURE_MIN_FILTER) - mipFilter = Diligent::FILTER_TYPE_POINT; - break; - case GL_LINEAR: - filter = Diligent::FILTER_TYPE_LINEAR; - if (pname == GL_TEXTURE_MIN_FILTER) - mipFilter = Diligent::FILTER_TYPE_POINT; - break; - case GL_NEAREST_MIPMAP_NEAREST: - filter = Diligent::FILTER_TYPE_POINT; - mipFilter = Diligent::FILTER_TYPE_POINT; - break; - case GL_LINEAR_MIPMAP_NEAREST: - filter = Diligent::FILTER_TYPE_LINEAR; - mipFilter = Diligent::FILTER_TYPE_POINT; - break; - case GL_NEAREST_MIPMAP_LINEAR: - filter = Diligent::FILTER_TYPE_POINT; - mipFilter = Diligent::FILTER_TYPE_LINEAR; - break; - case GL_LINEAR_MIPMAP_LINEAR: - filter = Diligent::FILTER_TYPE_LINEAR; - mipFilter = Diligent::FILTER_TYPE_LINEAR; - break; - default: - break; - } - - filter = ConvertCompareFilter(filter, filterIsCompare); - mipFilter = ConvertCompareFilter(mipFilter, mipFilterIsCompare); - } - - Diligent::COMPARISON_FUNCTION ConvertComparsionFunc(GLint param) { - switch (param) { - case GL_LEQUAL: return Diligent::COMPARISON_FUNC_LESS_EQUAL; - case GL_GEQUAL: return Diligent::COMPARISON_FUNC_GREATER_EQUAL; - case GL_LESS: return Diligent::COMPARISON_FUNC_LESS; - case GL_GREATER: return Diligent::COMPARISON_FUNC_GREATER; - case GL_EQUAL: return Diligent::COMPARISON_FUNC_EQUAL; - case GL_NOTEQUAL: return Diligent::COMPARISON_FUNC_NOT_EQUAL; - case GL_ALWAYS: return Diligent::COMPARISON_FUNC_ALWAYS; - case GL_NEVER: return Diligent::COMPARISON_FUNC_NEVER; - default: - MG_Util::Debug::LogE("%s: not handled param: %s", __func__, MG_Util::Debug::GLEnumToString(param)); - return Diligent::COMPARISON_FUNC_NEVER; - } - } - - Diligent::TEXTURE_ADDRESS_MODE ConvertAddressMode(GLint param) { - switch (param) { - case GL_REPEAT: return Diligent::TEXTURE_ADDRESS_WRAP; - case GL_CLAMP_TO_EDGE: return Diligent::TEXTURE_ADDRESS_CLAMP; - case GL_MIRRORED_REPEAT: return Diligent::TEXTURE_ADDRESS_MIRROR; - default: - MG_Util::Debug::LogE("%s: not handled param: %s", __func__, MG_Util::Debug::GLEnumToString(param)); - return Diligent::TEXTURE_ADDRESS_WRAP; - } - } - - void ActiveTexture(GLenum texture) { - MG_Util::Debug::LogD("glActiveTexture, texture: %d", texture); - GLenum result = MG_State::BindTextureUnit(texture); - if (result == GL_NO_ERROR) - return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void BindTexture(GLenum target, GLuint texture) { - MG_Util::Debug::LogD("glBindTexture, target: %d, texture: %d", target, texture); - GLenum result = MG_State::BindTexture(target, texture); - if (result == GL_NO_ERROR) { - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void DeleteTextures(GLsizei n, const GLuint* textures) { - MG_Util::Debug::LogD("glDeleteTextures, n: %d, textures: %p", n, textures); - GLenum result = MG_State::DeleteTextures(n, textures); - if (result == GL_NO_ERROR) { - for (GLsizei i = 0; i < n; ++i) { - GLuint tex = textures[i]; - auto texIt = MG_Diligent::g_TextureMap.find(tex); - if (texIt != MG_Diligent::g_TextureMap.end()) { - if (texIt->second) { - texIt->second->Release(); - } - MG_Diligent::g_TextureMap.erase(texIt); - } - - auto srvIt = MG_Diligent::g_TextureViewMap.find(tex); - if (srvIt != MG_Diligent::g_TextureViewMap.end()) { - if (srvIt->second) { - srvIt->second->Release(); - } - MG_Diligent::g_TextureViewMap.erase(srvIt); - } - } - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void GenTextures(GLsizei n, GLuint* textures) { - MG_Util::Debug::LogD("glGenTextures, n: %d, textures: %p", n, textures); - GLenum result = MG_State::CreateTextures(n, textures); - if (result == GL_NO_ERROR) { - for (GLsizei i = 0; i < n; ++i) { - MG_Diligent::g_TextureMap[textures[i]] = nullptr; - MG_Diligent::g_TextureViewMap[textures[i]] = nullptr; - } - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - Diligent::Uint32 CalculateMipLevels(GLsizei width, GLsizei height) { - Diligent::Uint32 levels = 1; - GLsizei size = std::max(width, height); - - while (size > 1) { - size >>= 1; - levels++; - } - - return levels; - } - - void TexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, - GLenum format, GLenum type, const void* data) { - MG_Util::Debug::LogD("glTexImage2D, target: %d, level: %d, internalFormat: %d, width: %d, height: %d, format: %d, type: %d, data: %p", - target, level, internalFormat, width, height, format, type, data); - - GLenum result = MG_State::UploadTexture2D(target, level, internalFormat, width, height, - border, format, type, data); - if (result != GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - return; - } - - MG_Util::Debug::LogD("TexImage2D: MG_State::UploadTexture2D successful."); - - auto& texState = *MG_State_T::textureState; - auto activeUnit = texState.activeTextureUnit_; - auto unitState = &texState.textureUnits_[activeUnit]; - GLuint boundTextureID = unitState->GetBoundTexture(target); - - if (boundTextureID == 0) { - MG_Util::Debug::LogD("TexImage2D: No texture bound to active unit. Returning."); - return; - } - - Diligent::ITexture* pTexture = nullptr; - Diligent::ITextureView* pSRV = nullptr; - - auto texIt = MG_Diligent::g_TextureMap.find(boundTextureID); - if (texIt != MG_Diligent::g_TextureMap.end()) { - pTexture = texIt->second; - } - auto srvIt = MG_Diligent::g_TextureViewMap.find(boundTextureID); - if (srvIt != MG_Diligent::g_TextureViewMap.end()) { - pSRV = srvIt->second; - } - - Diligent::TEXTURE_FORMAT newFormat = ConvertInternalFormat(internalFormat); - MG_Util::Debug::LogD("TexImage2D: New internalFormat: %d maps to Diligent format: %d", - internalFormat, newFormat); - - bool needCreateTexture = false; - bool isBaseLevel = (level == 0); - - if (!pTexture) { - MG_Util::Debug::LogD("TexImage2D: No existing Diligent texture found for GL name %u. Creating new.", boundTextureID); - needCreateTexture = true; - } else { - Diligent::TextureDesc existingDesc = pTexture->GetDesc(); - - if (isBaseLevel && - (existingDesc.Width != static_cast(width) || - existingDesc.Height != static_cast(height) || - existingDesc.Format != newFormat)) { - - MG_Util::Debug::LogD("TexImage2D: Base level properties changed. Recreating texture."); - MG_Util::Debug::LogD("TexImage2D: Old (W:%u, H:%u, F:%d), New (W:%d, H:%d, F:%d)", - existingDesc.Width, existingDesc.Height, existingDesc.Format, - width, height, newFormat); - - needCreateTexture = true; - } else if (level >= static_cast(existingDesc.MipLevels)) { - MG_Util::Debug::LogD("TexImage2D: Level %d exceeds current mip levels (%d). Recreating texture.", - level, existingDesc.MipLevels); - needCreateTexture = true; - } - } - - if (needCreateTexture) { - if (pSRV) { - MG_Util::Debug::LogD("TexImage2D: Releasing existing SRV %p", (void*)pSRV); - pSRV->Release(); - MG_Diligent::g_TextureViewMap[boundTextureID] = nullptr; - pSRV = nullptr; - } - - if (pTexture) { - MG_Util::Debug::LogD("TexImage2D: Releasing existing texture %p", (void*)pTexture); - pTexture->Release(); - MG_Diligent::g_TextureMap[boundTextureID] = nullptr; - pTexture = nullptr; - } - - Diligent::Uint32 mipLevels = 1; - if (isBaseLevel) { - mipLevels = CalculateMipLevels(width, height); - } else if (pTexture) { - mipLevels = pTexture->GetDesc().MipLevels; - } - - Diligent::TextureDesc TexDesc; - if constexpr (MG_Global::Common::LogLevel <= MG_Constants::Common::LOG_LEVEL_DEBUG) { - TexDesc.Name = std::format("GL Texture {}", boundTextureID).c_str(); - } - TexDesc.Type = Diligent::RESOURCE_DIM_TEX_2D; - TexDesc.Width = width; - TexDesc.Height = height; - TexDesc.Format = newFormat; - TexDesc.MipLevels = mipLevels; - - bool isDepthStencil = false; - switch (internalFormat) { - case GL_DEPTH_COMPONENT: - case GL_DEPTH_COMPONENT16: - case GL_DEPTH_COMPONENT24: - case GL_DEPTH_COMPONENT32: - case GL_DEPTH_COMPONENT32F: - case GL_DEPTH_STENCIL: - case GL_DEPTH24_STENCIL8: - case GL_DEPTH32F_STENCIL8: - isDepthStencil = true; - break; - default: - isDepthStencil = false; - } - - if (isDepthStencil) { - TexDesc.BindFlags = Diligent::BIND_SHADER_RESOURCE | Diligent::BIND_DEPTH_STENCIL; - } else { - TexDesc.BindFlags = Diligent::BIND_SHADER_RESOURCE | Diligent::BIND_RENDER_TARGET; - } - - MG_Util::Debug::LogD("TexImage2D: Creating new Diligent texture with Width: %d, Height: %d, Format: %d, MipLevels: %u", - width, height, newFormat, mipLevels); - - Diligent::ITexture* newTexture = nullptr; - MG_Diligent::g_pDevice->CreateTexture(TexDesc, nullptr, &newTexture); - - if (newTexture) { - MG_Util::Debug::LogD("TexImage2D: Created new Diligent texture %p for GL name %u.", - (void*)newTexture, boundTextureID); - - Diligent::TextureViewDesc SRVDesc; - SRVDesc.ViewType = Diligent::TEXTURE_VIEW_SHADER_RESOURCE; - SRVDesc.TextureDim = Diligent::RESOURCE_DIM_TEX_2D; - SRVDesc.MostDetailedMip = 0; - SRVDesc.NumMipLevels = TexDesc.MipLevels; - - Diligent::ITextureView* newSRV = nullptr; - newTexture->CreateView(SRVDesc, &newSRV); - MG_Util::Debug::LogD("TexImage2D: Created new SRV %p for texture.", (void*)newSRV); - - MG_Diligent::g_TextureMap[boundTextureID] = newTexture; - MG_Diligent::g_TextureViewMap[boundTextureID] = newSRV; - - pTexture = newTexture; - pSRV = newSRV; - } else { - MG_Util::Debug::LogE("TexImage2D: Failed to create new texture!"); - return; - } - } - - if (pTexture && data) { - Diligent::TextureSubResData SubResData; - SubResData.pData = data; - SubResData.Stride = width * GetBytesPerPixel(format, type); - - Diligent::Box UpdateBox; - UpdateBox.MinX = 0; - UpdateBox.MaxX = width; - UpdateBox.MinY = 0; - UpdateBox.MaxY = height; - UpdateBox.MinZ = 0; - UpdateBox.MaxZ = 1; - - MG_Util::Debug::LogD("TexImage2D: Updating texture. Level: %d, Box: [%u,%u]x[%u,%u], Stride: %llu", - level, UpdateBox.MinX, UpdateBox.MaxX, UpdateBox.MinY, UpdateBox.MaxY, SubResData.Stride); - - MG_Diligent::g_pContext->UpdateTexture( - pTexture, - level, - 0, - UpdateBox, - SubResData, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - MG_Util::Debug::LogD("TexImage2D: UpdateTexture completed for level %d.", level); - } - } - - void TexParameterf(GLenum target, GLenum pname, GLfloat param) { - MG_Util::Debug::LogD("glTexParameterf, target: %d, pname: %d, param: %f", target, pname, param); - GLenum result = MG_State::SetTexturePropertyFloat(target, pname, param); - if (result == GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - return; - } - - // TODO: Fix sampler - auto& texState = *MG_State_T::textureState; - auto activeUnit = texState.activeTextureUnit_; - auto unitState = &texState.textureUnits_[activeUnit]; - GLuint boundTextureID = unitState->GetBoundTexture(target); - - if (boundTextureID == 0) { - MG_Util::Debug::LogD("TexParameterf: No texture bound. Skipping sampler update."); - return; - } - - Diligent::SamplerDesc SamDesc; - auto it = MG_Diligent::g_SamplerMap.find(boundTextureID); - if (it != MG_Diligent::g_SamplerMap.end() && it->second) { - SamDesc = it->second->GetDesc(); - } else { - SamDesc.MinFilter = Diligent::FILTER_TYPE_LINEAR; - SamDesc.MagFilter = Diligent::FILTER_TYPE_LINEAR; - SamDesc.AddressU = Diligent::TEXTURE_ADDRESS_WRAP; - SamDesc.AddressV = Diligent::TEXTURE_ADDRESS_WRAP; - SamDesc.AddressW = Diligent::TEXTURE_ADDRESS_WRAP; - } - - switch (pname) { - case GL_TEXTURE_MIN_FILTER: - FillFilterTypeFromGLEnum(pname, param, SamDesc.MinFilter, SamDesc.MagFilter, SamDesc.MipFilter); - break; - case GL_TEXTURE_MAG_FILTER: - FillFilterTypeFromGLEnum(pname, param, SamDesc.MinFilter, SamDesc.MagFilter, SamDesc.MipFilter); - break; - case GL_TEXTURE_WRAP_S: - SamDesc.AddressU = ConvertAddressMode(param); - break; - case GL_TEXTURE_WRAP_T: - SamDesc.AddressV = ConvertAddressMode(param); - break; - case GL_TEXTURE_WRAP_R: - SamDesc.AddressW = ConvertAddressMode(param); - break; - case GL_TEXTURE_MIN_LOD: - SamDesc.MinLOD = (float)param; - break; - case GL_TEXTURE_MAX_LOD: - SamDesc.MaxLOD = param; - break; - case GL_TEXTURE_COMPARE_FUNC: - SamDesc.ComparisonFunc = ConvertComparsionFunc(param); - break; - case GL_TEXTURE_COMPARE_MODE: - FillFilterTypeFromGLEnum(pname, param, SamDesc.MinFilter, SamDesc.MagFilter, SamDesc.MipFilter); - break; - default: - MG_Util::Debug::LogE("%s: not handled pname: %s", __func__, MG_Util::Debug::GLEnumToString(pname)); - } - - Diligent::ISampler* pNewSampler = nullptr; - MG_Diligent::g_pDevice->CreateSampler(SamDesc, &pNewSampler); - - if (it != MG_Diligent::g_SamplerMap.end()) { - if (it->second) { - it->second->Release(); - } - it->second = pNewSampler; - } else { - MG_Diligent::g_SamplerMap[boundTextureID] = pNewSampler; - } - - MG_Util::Debug::LogD("TexParameterf: Updated sampler for texture %u", boundTextureID); - } - - void TexParameteri(GLenum target, GLenum pname, GLint param) { - MG_Util::Debug::LogD("glTexParameteri, target: %d, pname: %d, param: %d", target, pname, param); - GLenum result = MG_State::SetTexturePropertyInt(target, pname, param); - if (result != GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - return; - } - - // TODO: Fix sampler - auto& texState = *MG_State_T::textureState; - auto activeUnit = texState.activeTextureUnit_; - auto unitState = &texState.textureUnits_[activeUnit]; - GLuint boundTextureID = unitState->GetBoundTexture(target); - - if (boundTextureID == 0) { - MG_Util::Debug::LogD("TexParameteri: No texture bound. Skipping sampler update."); - return; - } - - Diligent::SamplerDesc SamDesc; - auto it = MG_Diligent::g_SamplerMap.find(boundTextureID); - if (it != MG_Diligent::g_SamplerMap.end() && it->second) { - SamDesc = it->second->GetDesc(); - } else { - SamDesc.MinFilter = Diligent::FILTER_TYPE_LINEAR; - SamDesc.MagFilter = Diligent::FILTER_TYPE_LINEAR; - SamDesc.AddressU = Diligent::TEXTURE_ADDRESS_WRAP; - SamDesc.AddressV = Diligent::TEXTURE_ADDRESS_WRAP; - SamDesc.AddressW = Diligent::TEXTURE_ADDRESS_WRAP; - } - - switch (pname) { - case GL_TEXTURE_MIN_FILTER: - FillFilterTypeFromGLEnum(pname, param, SamDesc.MinFilter, SamDesc.MagFilter, SamDesc.MipFilter); - break; - case GL_TEXTURE_MAG_FILTER: - FillFilterTypeFromGLEnum(pname, param, SamDesc.MagFilter, SamDesc.MagFilter, SamDesc.MipFilter); - break; - case GL_TEXTURE_WRAP_S: - SamDesc.AddressU = ConvertAddressMode(param); - break; - case GL_TEXTURE_WRAP_T: - SamDesc.AddressV = ConvertAddressMode(param); - break; - case GL_TEXTURE_WRAP_R: - SamDesc.AddressW = ConvertAddressMode(param); - break; - case GL_TEXTURE_MIN_LOD: - SamDesc.MinLOD = (float)param; - break; - case GL_TEXTURE_MAX_LOD: - SamDesc.MaxLOD = (float)param; - break; - case GL_TEXTURE_COMPARE_FUNC: - SamDesc.ComparisonFunc = ConvertComparsionFunc(param); - break; - case GL_TEXTURE_COMPARE_MODE: - FillFilterTypeFromGLEnum(pname, param, SamDesc.MinFilter, SamDesc.MagFilter, SamDesc.MipFilter); - break; - default: - MG_Util::Debug::LogE("%s: not handled pname: %s", __func__, MG_Util::Debug::GLEnumToString(pname)); - } - - Diligent::ISampler* pNewSampler = nullptr; - MG_Diligent::g_pDevice->CreateSampler(SamDesc, &pNewSampler); - - if (it != MG_Diligent::g_SamplerMap.end()) { - if (it->second) { - it->second->Release(); - } - it->second = pNewSampler; - } else { - MG_Diligent::g_SamplerMap[boundTextureID] = pNewSampler; - } - - MG_Util::Debug::LogD("TexParameteri: Updated sampler for texture %u", boundTextureID); - } - - void TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, - GLsizei height, GLenum format, GLenum type, const void* pixels) { - MG_Util::Debug::LogD("glTexSubImage2D, target: %d, level: %d, xoffset: %d, yoffset: %d, width: %d, height: %d, format: %d, type: %d, pixels: %p", - target, level, xoffset, yoffset, width, height, format, type, pixels); - - GLenum result = MG_State::UpdateTextureRegion2D(target, level, xoffset, yoffset, width, height, format, type, pixels); - if (result != GL_NO_ERROR) { - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - return; - } - - auto& texState = *MG_State_T::textureState; - auto activeUnit = texState.activeTextureUnit_; - auto unitState = &texState.textureUnits_[activeUnit]; - GLuint boundTextureID = unitState->GetBoundTexture(target); - - MG_Util::Debug::LogD("TexSubImage2D: bound texture: GL name %u", boundTextureID); - - if (boundTextureID == 0) { - MG_Util::Debug::LogD("TexSubImage2D: No texture bound to active unit. Skipping update."); - return; - } - - Diligent::ITexture* pTexture = nullptr; - auto texIt = MG_Diligent::g_TextureMap.find(boundTextureID); - if (texIt != MG_Diligent::g_TextureMap.end()) { - pTexture = texIt->second; - } - - if (!pTexture) { - MG_Util::Debug::LogW("TexSubImage2D: Diligent texture not found for GL name %u", boundTextureID); - return; - } - - const auto& texDesc = pTexture->GetDesc(); - if (!(texDesc.BindFlags & Diligent::BIND_SHADER_RESOURCE)) { - MG_Util::Debug::LogE("TexSubImage2D: Texture %u does not have BIND_SHADER_RESOURCE flag", boundTextureID); - return; - } - - auto rowLength = MG_State::QueryPixelStoreInt(GL_UNPACK_ROW_LENGTH); - rowLength = ((rowLength > 0) ? rowLength : width); - auto skipRows = MG_State::QueryPixelStoreInt(GL_UNPACK_SKIP_ROWS); - auto skipPixels = MG_State::QueryPixelStoreInt(GL_UNPACK_SKIP_PIXELS); - auto bpp = GetBytesPerPixel(format, type); - char* pixelStart = (char*)pixels + bpp * (rowLength * skipRows + skipPixels); - - Diligent::TextureSubResData SubResData; - SubResData.Stride = rowLength * bpp; - SubResData.pData = pixelStart; - - Diligent::Box UpdateBox; - UpdateBox.MinX = xoffset; - UpdateBox.MaxX = xoffset + width; - UpdateBox.MinY = yoffset; - UpdateBox.MaxY = yoffset + height; - UpdateBox.MinZ = 0; - UpdateBox.MaxZ = 1; - - MG_Util::Debug::LogD("TexSubImage2D: Got GL_UNPACK_ROW_LENGTH = %d", rowLength); - - MG_Util::Debug::LogD("TexSubImage2D: Updating region [%d,%d]-[%d,%d] at level %d, %d bytes", - xoffset, yoffset, xoffset+width, yoffset+height, level, width * height * GetBytesPerPixel(format, type)); - -// if (MG_Diligent::IsInRenderPass) { -// MG_Diligent::g_pContext->EndRenderPass(); -// MG_Diligent::IsInRenderPass = false; -// } - - MG_Diligent::g_pContext->UpdateTexture( - pTexture, - level, - 0, - UpdateBox, - SubResData, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION, - Diligent::RESOURCE_STATE_TRANSITION_MODE_TRANSITION - ); - - MG_Util::Debug::LogD("TexSubImage2D: Update completed successfully"); - } - - - void GetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint* params) { - MG_Util::Debug::LogD("glGetTexLevelParameteriv, target: %d, level: %d, pname: %d, params: %p", - target, level, pname, params); - GLenum result = MG_State::QueryTextureLevelPropertyIntVector(target, level, pname, params); - if (result == GL_NO_ERROR) - return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) { - MG_Util::Debug::LogD("glCopyTexSubImage2D, target: %d, level: %d, xoffset: %d, yoffset: %d, x: %d, y: %d, width: %d, height: %d", - target, level, xoffset, yoffset, x, y, width, height); - - } -} diff --git a/MG/MG_GL/Implementations/GL/Texture/GL_Texture.h b/MG/MG_GL/Implementations/GL/Texture/GL_Texture.h deleted file mode 100644 index 27077812..00000000 --- a/MG/MG_GL/Implementations/GL/Texture/GL_Texture.h +++ /dev/null @@ -1,21 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_TEXTURE_H -#define MOBILEGL_GL_TEXTURE_H - -namespace MG_GL::GL { - void ActiveTexture(GLenum texture); - void BindTexture(GLenum target, GLuint texture); - void DeleteTextures(GLsizei n, const GLuint* textures); - void GenTextures(GLsizei n, GLuint* textures); - void TexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* data); - void TexParameterf(GLenum target, GLenum pname, GLfloat param); - void TexParameteri(GLenum target, GLenum pname, GLint param); - void TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels); - void GetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint* params); - void CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -} - -#endif //MOBILEGL_GL_TEXTURE_H diff --git a/MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.cpp b/MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.cpp deleted file mode 100644 index 7a2ace90..00000000 --- a/MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.cpp +++ /dev/null @@ -1,55 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../../../Includes.h" - -namespace MG_GL::GL { - void GenVertexArrays(GLsizei n, GLuint* arrays) { - MG_Util::Debug::LogD("glGenVertexArrays, n: %d, arrays: %p", n, arrays); - GLenum result = MG_State::GenVertexArraysNames(n, arrays); - if (result == GL_NO_ERROR) { - return; - } - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void BindVertexArray(GLuint array) { - MG_Util::Debug::LogD("glBindVertexArray, array: %u", array); - GLenum result = MG_State::BindVertexArray(array); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void EnableVertexAttribArray(GLuint index) { - MG_Util::Debug::LogD("glEnableVertexAttribArray, index: %u", index); - GLenum result = MG_State::EnableVertexAttribArray(index); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void VertexAttribPointer(GLuint index, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, const void* pointer) { - MG_Util::Debug::LogD("glVertexAttribPointer, index: %u, size: %d, type: %s, norm: %d, stride: %d, ptr: %p", - index, size, MG_Util::Debug::GLEnumToString(type), normalized, stride, pointer); - - GLenum result = MG_State::SetVertexAttributeLayout(index, size, type, normalized, stride, pointer); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } - - void VertexAttribIPointer(GLuint index, GLint size, GLenum type, - GLsizei stride, const void* pointer) { - MG_Util::Debug::LogD("glVertexAttribIPointer, index: %u, size: %d, type: %s, stride: %d, ptr: %p", - index, size, MG_Util::Debug::GLEnumToString(type), stride, pointer); - - GLenum result = MG_State::SetVertexAttributeLayoutInt(index, size, type, stride, pointer); - if (result == GL_NO_ERROR) return; - MG_State::SetError(result); - MG_Util::Debug::LogE("Error from MG State: %s", MG_Util::Debug::GLEnumToString(result)); - } -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.h b/MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.h deleted file mode 100644 index 23f193bd..00000000 --- a/MG/MG_GL/Implementations/GL/VertexArray/GL_VertexArray.h +++ /dev/null @@ -1,16 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_GL_VERTEXARRAY_H -#define MOBILEGL_GL_VERTEXARRAY_H - -namespace MG_GL::GL { - void GenVertexArrays(GLsizei n, GLuint* arrays); - void BindVertexArray(GLuint array); - void EnableVertexAttribArray(GLuint index); - void VertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* pointer); - void VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer); -} - -#endif //MOBILEGL_GL_VERTEXARRAY_H diff --git a/MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.cpp b/MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.cpp deleted file mode 100644 index 21aa8021..00000000 --- a/MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.cpp +++ /dev/null @@ -1,13 +0,0 @@ -// -// Created by Swung 0x48 on 2025/6/20. -// - -#include "../../../../Includes.h" - -MG_EXPORT void* glXGetProcAddress(const char *name) { - return MG_GL::GLX::GetProcAddress(name); -} - -MG_EXPORT void* glXGetProcAddressARB(const char *name) { - return MG_GL::GLX::GetProcAddressARB(name); -} diff --git a/MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.h b/MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.h deleted file mode 100644 index dc140231..00000000 --- a/MG/MG_GL/Implementations/GLX/GLXFuncsDefinitions/GLXFuncsDefinitions.h +++ /dev/null @@ -1,8 +0,0 @@ -// -// Created by Swung 0x48 on 2025/6/20. -// - -#ifndef MOBILEGL_GLX_FUNCS_DEFINITIONS_H -#define MOBILEGL_GLX_FUNCS_DEFINITIONS_H - -#endif //MOBILEGL_GLX_FUNCS_DEFINITIONS_H diff --git a/MG/MG_GL/Implementations/GLX/LookUp/LookUp.cpp b/MG/MG_GL/Implementations/GLX/LookUp/LookUp.cpp deleted file mode 100644 index 603a462d..00000000 --- a/MG/MG_GL/Implementations/GLX/LookUp/LookUp.cpp +++ /dev/null @@ -1,25 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "LookUp.h" - -#include "../../../../Includes.h" - -namespace MG_GL::GLX { - void* GetProcAddress(const char *name) { - MG_Util::Debug::LogD("glXGetProcAddress(\"%s\")", name); - void* proc = dlsym(RTLD_DEFAULT, (const char*)name); - - if (!proc) { - MG_Util::Debug::LogW("Failed to get function: %s", (const char*)name); - return nullptr; - } - - return proc; - } - - void* GetProcAddressARB(const char *name) { - return GetProcAddress(name); - } -} \ No newline at end of file diff --git a/MG/MG_GL/Implementations/GLX/LookUp/LookUp.h b/MG/MG_GL/Implementations/GLX/LookUp/LookUp.h deleted file mode 100644 index 0f4ce39a..00000000 --- a/MG/MG_GL/Implementations/GLX/LookUp/LookUp.h +++ /dev/null @@ -1,12 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#ifndef MOBILEGL_LOOKUP_H -#define MOBILEGL_LOOKUP_H - -namespace MG_GL::GLX { - void* GetProcAddress(const char *name); - void* GetProcAddressARB(const char *name); -} -#endif //MOBILEGL_LOOKUP_H diff --git a/MG/MG_GL/State/Buffer/BufferState.cpp b/MG/MG_GL/State/Buffer/BufferState.cpp deleted file mode 100644 index 04d50869..00000000 --- a/MG/MG_GL/State/Buffer/BufferState.cpp +++ /dev/null @@ -1,345 +0,0 @@ -// -// Created by BZLZHH on 2025/5/1. -// - -// TODO: Add more gl error check for buffer state manager. - -#include "../../../Includes.h" - -//GLenum BufferState::GenName(GLuint *buffer) { -// MG_Util::Debug::LogD("MG_State: Buffer: GenName"); -// if (!buffer) -// return GL_INVALID_VALUE; -// -// GLuint id = 0; -// if (freeId_.empty()) { -// id = lastId_++; -// } else { -// id = freeId_.back(); -// freeId_.pop_back(); -// } -// -// *buffer = id; -// MG_Util::Debug::LogD("MG_State: Buffer: Gen new name %d", id); -// -// return GL_NO_ERROR; -//} - -GLenum BufferState::GenNameN(GLsizei n, GLuint* buffers) { - MG_Util::Debug::LogD("MG_State: Buffer: GenNameN called with n=%d", n); - if (n < 0 || buffers == nullptr) return GL_INVALID_VALUE; - - indexGenerator_.Generate(n, buffers); - - MG_Util::Debug::LogD("MG_State: Buffer: GenNameN created buffers successfully"); - return GL_NO_ERROR; -} - -GLenum BufferState::Create(GLuint buffer) { - MG_Util::Debug::LogD("MG_State: Buffer: Create called"); - if (!buffer) - return GL_INVALID_VALUE; - - if (ValidateAllocatedHandle(buffer)) - return GL_INVALID_VALUE; - - if (bufferObjects_.size() <= buffer) { - bufferObjects_.resize(buffer + 1); - } - if (bufferObjects_[buffer] == nullptr) { - bufferObjects_[buffer] = std::make_unique(); - } - - BufferObject& obj = *GetBufferObject(buffer); - MG_Util::Debug::LogD("MG_State: Buffer: Create created buffer %d", buffer); - obj.generated = true; - obj.dirty = true; - - return GL_NO_ERROR; -} - -GLenum BufferState::Bind(GLenum target, GLuint buffer) { - // We don't handle unallocated buffer names here, just plain bind - if (!IsValidTarget_(target)) return GL_INVALID_ENUM; - MG_Util::Debug::LogD("MG_State: Buffer: Bind called with target=%s, buffer=%u", MG_Util::Debug::GLEnumToString(target), buffer); - currentBindings_[target] = buffer; - MG_Util::Debug::LogD("MG_State: Buffer: Bind succeed bind buffer %u to target 0x%x", buffer, target); - return GL_NO_ERROR; -} - -GLenum BufferState::CommitStorage(GLenum target, GLsizeiptr size, const void* data, GLenum usage) { - MG_Util::Debug::LogD("MG_State: Buffer: CommitStorage called on target 0x%x",target); - auto it = currentBindings_.find(target); - if (it == currentBindings_.end() || it->second == 0) - return GL_INVALID_OPERATION; - - BufferObject& obj = *GetBufferObject(it->second); - MG_Util::Debug::LogD("MG_State: Buffer: CommitStorage get buffer object %u at target 0x%x",it->second,target); - obj.usage = usage; - obj.isDynamic = (usage == GL_DYNAMIC_DRAW || usage == GL_DYNAMIC_READ || - usage == GL_DYNAMIC_COPY || usage == GL_STREAM_DRAW); - obj.data.reserve(std::bit_ceil((size_t)size)); - obj.data.resize(size); - if (data) { - memcpy(obj.data.data(), data, size); - obj.dataValid = true; - } - obj.dirty = true; - MG_Util::Debug::LogD("MG_State: Buffer: CommitStorage buffer at target 0x%x committed storage, size = %zu, usage=0x%x", target, size, usage); - - return GL_NO_ERROR; -} - -GLenum BufferState::CommitStorageRegion(GLenum target, GLintptr offset, GLsizeiptr size, const void* data) { - MG_Util::Debug::LogD("MG_State: Buffer: BufferSubData called on target 0x%x, offset=%ld, size=%ld", target, offset, size); - if (!IsValidTarget_(target)) return GL_INVALID_ENUM; - if (offset < 0 || size < 0) return GL_INVALID_VALUE; - - auto it = currentBindings_.find(target); - if (it == currentBindings_.end() || it->second == 0) - return GL_INVALID_OPERATION; - - BufferObject& obj = *GetBufferObject(it->second); - MG_Util::Debug::LogD("MG_State: Buffer: BufferSubData get buffer object %u at target 0x%x", it->second, target); - - if (static_cast(offset + size) > obj.data.size()) return GL_INVALID_VALUE; - - if (data) { - memcpy(obj.data.data() + offset, data, size); - obj.dirty = true; - } - return GL_NO_ERROR; -} - -GLenum BufferState::AcquireBufferMemoryRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void** mappedPointer) { - MG_Util::Debug::LogD("MG_State: Buffer: AcquireBufferMemoryRange called with target=0x%x, offset=%ld, length=%ld, access=0x%x", target, offset, length, access); - if (!IsValidTarget_(target)) { - MG_Util::Debug::LogE("MG_State: Buffer: AcquireBufferMemoryRange failed: invalid target 0x%x", target); - return GL_INVALID_ENUM; - } - if (offset < 0 || length <= 0) { - MG_Util::Debug::LogE("MG_State: Buffer: AcquireBufferMemoryRange failed: invalid offset %ld or length %ld", offset, length); - return GL_INVALID_VALUE; - } - - auto it = currentBindings_.find(target); - if (it == currentBindings_.end() || it->second == 0) { - MG_Util::Debug::LogE("MG_State: Buffer: AcquireBufferMemoryRange failed: no buffer bound to target 0x%x", target); - return GL_INVALID_OPERATION; - } - - BufferObject& obj = *GetBufferObject(it->second); - MG_Util::Debug::LogD("MG_State: Buffer: AcquireBufferMemoryRange operating on buffer %u", it->second); - if (obj.isMapped) { - MG_Util::Debug::LogE("MG_State: Buffer: AcquireBufferMemoryRange failed: buffer %u is already mapped", it->second); - return GL_INVALID_OPERATION; - } - - const GLbitfield validFlags = GL_MAP_READ_BIT | GL_MAP_WRITE_BIT | GL_MAP_INVALIDATE_RANGE_BIT | GL_MAP_FLUSH_EXPLICIT_BIT | GL_MAP_UNSYNCHRONIZED_BIT | GL_MAP_INVALIDATE_BUFFER_BIT ; - if ((access & ~validFlags) != 0) { - MG_Util::Debug::LogE("MG_State: Buffer: AcquireBufferMemoryRange failed: invalid access flags 0x%x", access); - return GL_INVALID_VALUE; - } - - if (static_cast(offset + length) > obj.data.size()) { - MG_Util::Debug::LogE("MG_State: Buffer: AcquireBufferMemoryRange failed: requested range [%ld, %ld) exceeds buffer size %zu", offset, offset + length, obj.data.size()); - return GL_INVALID_VALUE; - } - - obj.isMapped = true; - obj.mapOffset = offset; - obj.mapLength = length; - obj.mapAccessFlags = access; - obj.dirty = true; - *mappedPointer = obj.data.data() + offset; - MG_Util::Debug::LogD("MG_State: Buffer: AcquireBufferMemoryRange succeeded for buffer %u. Mapped pointer: %p", it->second, *mappedPointer); - return GL_NO_ERROR; -} - -GLenum BufferState::SyncBufferMemory(GLenum target, GLintptr offset, GLsizeiptr length) { - if (!IsValidTarget_(target)) return GL_INVALID_ENUM; - if (offset < 0 || length <= 0) return GL_INVALID_VALUE; - - auto it = currentBindings_.find(target); - if (it == currentBindings_.end() || it->second == 0) - return GL_INVALID_OPERATION; - - BufferObject& obj = *GetBufferObject(it->second); - if (!obj.isMapped || !(obj.mapAccessFlags & GL_MAP_FLUSH_EXPLICIT_BIT)) - return GL_INVALID_OPERATION; - - if (offset < obj.mapOffset || offset + length > obj.mapOffset + obj.mapLength) - return GL_INVALID_VALUE; - - // TODO: Add support for flush range. - // Now only mark it as dirty. - obj.dirty = true; - return GL_NO_ERROR; -} - -GLenum BufferState::CopyBufferRange(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) { - if (!IsValidTarget_(readTarget) || !IsValidTarget_(writeTarget)) - return GL_INVALID_ENUM; - if (readOffset < 0 || writeOffset < 0 || size < 0) - return GL_INVALID_VALUE; - - GLuint readBuffer = currentBindings_[readTarget]; - GLuint writeBuffer = currentBindings_[writeTarget]; - if (readBuffer == 0 || writeBuffer == 0 || readBuffer == writeBuffer) - return GL_INVALID_OPERATION; - - BufferObject& src = *GetBufferObject(readBuffer); - BufferObject& dst = *GetBufferObject(writeBuffer); - - if (static_cast(readOffset + size) > src.data.size() || - static_cast(writeOffset + size) > dst.data.size()) - return GL_INVALID_VALUE; - - memcpy(dst.data.data() + writeOffset, src.data.data() + readOffset, size); - dst.dirty = true; - return GL_NO_ERROR; -} - -GLenum BufferState::AcquireBufferMemory(GLenum target, GLenum access, void** mappedPointer) { - GLbitfield flags = 0; - switch (access) { - case GL_READ_ONLY: flags = GL_MAP_READ_BIT; break; - case GL_WRITE_ONLY: flags = GL_MAP_WRITE_BIT; break; - case GL_READ_WRITE: flags = GL_MAP_READ_BIT | GL_MAP_WRITE_BIT; break; - default: - flags = access; - } - return AcquireBufferMemoryRange(target, 0, GetBufferObject(currentBindings_[target])->data.size(), flags, mappedPointer); -} - -GLenum BufferState::ReleaseBufferMemory(GLenum target) { - if (!IsValidTarget_(target)) - return GL_INVALID_ENUM; - - auto it = currentBindings_.find(target); - if (it == currentBindings_.end() || it->second == 0) - return GL_INVALID_OPERATION; - - BufferObject& obj = *GetBufferObject(it->second); - if (!obj.isMapped) - return GL_INVALID_OPERATION; - - if ((obj.mapAccessFlags & GL_MAP_FLUSH_EXPLICIT_BIT) == 0) { - obj.dirty = true; - } - - obj.isMapped = false; - obj.mapOffset = 0; - obj.mapLength = 0; - obj.mapAccessFlags = 0; - obj.accessMode = GL_READ_WRITE; - - return GL_NO_ERROR; -} - -bool BufferState::ValidateAllocatedHandle(GLuint buffer) const { - bool isValid = buffer != 0 && bufferObjects_.size() > buffer && bufferObjects_[buffer] != nullptr; - MG_Util::Debug::LogD("MG_State: Buffer: ValidateAllocatedHandle called on buffer %u returns %d", buffer, isValid); - return isValid; -} - -bool BufferState::ValidateGeneratedName(GLuint buffer) const { - bool isValid = indexGenerator_.IsValid(buffer); - MG_Util::Debug::LogD("MG_State: Buffer: ValidateGeneratedName called on buffer %u returns %s", buffer, isValid ? "true" : "false"); - return isValid; -} - -void BufferState::Delete(GLuint buffer) { - MG_Util::Debug::LogD("MG_State: Buffer: Delete buffer %u", buffer); - if (bufferObjects_.size() > buffer) - bufferObjects_[buffer].reset(); - indexGenerator_.Delete(buffer); - - for (auto& [target, id] : currentBindings_) { - if (id == buffer) id = 0; - } - MG_Util::Debug::LogD("MG_State: Buffer: Delete buffer %u successfully", buffer); -} - -GLenum BufferState::DeleteN(GLsizei n, const GLuint* buffers) { - MG_Util::Debug::LogD("MG_State: Buffer: DeleteN called with n=%d", n); - if (n < 0) return GL_INVALID_VALUE; - - for (GLsizei i = 0; i < n; ++i) { - Delete(buffers[i]); - } - MG_Util::Debug::LogD("MG_State: Buffer: DeleteN deleted buffers successfully"); - return GL_NO_ERROR; -} - -bool BufferState::IsValidTarget_(GLenum target) { - bool ret = MG_Constants::Common::Contains(target, MG_Constants::Buffer::VALID_TARGETS); - MG_Util::Debug::LogD("MG_State: Buffer: IsValidTarget_ called with target=0x%x,result=%d", target, ret); - return ret; -} - -GLenum BufferState::QueryPropertyIntVector(GLenum target, GLenum pname, GLint* params) const { - MG_Util::Debug::LogD("MG_State: Buffer: QueryPropertyIntVector called at target 0x%x,param name = 0x%x",target,pname); - static const std::set validTargets = { - GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, - GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER - }; - if (validTargets.find(target) == validTargets.end()) { - return GL_INVALID_ENUM; - } - - if (!MG_Constants::Common::Contains(pname, MG_Constants::Buffer::VALID_PARAM_NAMES)) { - return GL_INVALID_ENUM; - } - - auto bindingIt = currentBindings_.find(target); - if (bindingIt == currentBindings_.end() || bindingIt->second == 0) { - return GL_INVALID_OPERATION; - } - GLuint bufferId = bindingIt->second; - - if (!ValidateAllocatedHandle(bufferId)) { - return GL_INVALID_OPERATION; - } - - const BufferObject& buffer = *bufferObjects_[bufferId]; - - switch (pname) { - case GL_BUFFER_ACCESS: - *params = static_cast(buffer.accessMode); - break; - case GL_BUFFER_MAPPED: - *params = buffer.isMapped ? GL_TRUE : GL_FALSE; - break; - case GL_BUFFER_SIZE: - *params = static_cast(buffer.data.size()); - break; - case GL_BUFFER_USAGE: - *params = static_cast(buffer.usage); - break; - MG_Util::Debug::LogD("MG_State: Buffer: QueryPropertyIntVector Query info about buffer %u succeed", target); - default: - return GL_INVALID_ENUM; - } - return GL_NO_ERROR; -} - - -GLuint BufferState::GetCurrentBinding(GLenum target) const { - auto it = currentBindings_.find(target); - if (it != currentBindings_.end()) { - return it->second; - } - return 0; -} - -BufferState::BufferObject* BufferState::GetBufferObject(GLuint buffer) { - if (bufferObjects_.size() <= buffer) { - return nullptr; - } -// if (bufferObjects_[buffer] == nullptr) { -// raise(SIGTRAP); -//// bufferObjects_[buffer] = std::make_unique(); -// } - return bufferObjects_[buffer].get(); -} diff --git a/MG/MG_GL/State/Buffer/BufferState.h b/MG/MG_GL/State/Buffer/BufferState.h deleted file mode 100644 index 98f14aa6..00000000 --- a/MG/MG_GL/State/Buffer/BufferState.h +++ /dev/null @@ -1,57 +0,0 @@ -// -// Created by BZLZHH on 2025/5/1. -// - -#ifndef MOBILEGL_BUFFERSTATE_H -#define MOBILEGL_BUFFERSTATE_H - -class BufferState { -public: - struct BufferObject { - GLenum usage = GL_STATIC_DRAW; - std::vector data; - bool dataValid = false; - bool dirty = false; // TODO: encapsulate this with an public API to RHI - bool isMapped = false; - bool generated = false; - bool isDynamic = false; - GLenum accessMode = GL_READ_WRITE; - GLintptr mapOffset = 0; - GLsizeiptr mapLength = 0; - GLbitfield mapAccessFlags = 0; - }; - - // Return: the validity of the operation, according to OpenGL 3 standard -// GLenum GenName(GLuint* buffer); - GLenum GenNameN(GLsizei n, GLuint* buffers); - GLenum Create(GLuint buffer); - GLenum Bind(GLenum target, GLuint buffer); - GLenum CommitStorage(GLenum target, GLsizeiptr size, const void* data, GLenum usage); - GLenum CommitStorageRegion(GLenum target, GLintptr offset, GLsizeiptr size, const void* data); - GLenum AcquireBufferMemoryRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void** mappedPointer); - GLenum SyncBufferMemory(GLenum target, GLintptr offset, GLsizeiptr length); - GLenum CopyBufferRange(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); - GLenum AcquireBufferMemory(GLenum target, GLenum access, void** mappedPointer); - GLenum ReleaseBufferMemory(GLenum target); - GLenum QueryPropertyIntVector(GLenum target, GLenum pname, GLint* params) const; - GLenum DeleteN(GLsizei n, const GLuint* buffers); - - bool ValidateAllocatedHandle(GLuint buffer) const; - bool ValidateGeneratedName(GLuint buffer) const; - void Delete(GLuint buffer); - GLuint GetCurrentBinding(GLenum target) const; - - BufferObject* GetBufferObject(GLuint buffer); - - MG_Global::unordered_map currentBindings_; -// MG_Global::unordered_map buffers_; -private: -// std::vector freeId_; -// GLuint lastId_ = 1; - IndexGenerator indexGenerator_; - std::vector> bufferObjects_; - - static bool IsValidTarget_(GLenum target); -}; - -#endif //MOBILEGL_BUFFERSTATE_H diff --git a/MG/MG_GL/State/Common/CommonState.cpp b/MG/MG_GL/State/Common/CommonState.cpp deleted file mode 100644 index 64051849..00000000 --- a/MG/MG_GL/State/Common/CommonState.cpp +++ /dev/null @@ -1,159 +0,0 @@ -// -// Created by BZLZHH on 2025/4/30. -// - -#include "../../../Includes.h" - -CommonState::CommonState() { - pixelStoreParams[GL_PACK_ALIGNMENT] = 4; - pixelStoreParams[GL_UNPACK_ALIGNMENT] = 4; -} - -GLenum CommonState::SetPixelStoreInt(GLenum pname, GLint param) { - if (!MG_Constants::Common::Contains(pname, MG_Constants::PixelStore::VALID_PARAM_NAMES)) { - return GL_INVALID_ENUM; - } - - switch (pname) { - case GL_PACK_SWAP_BYTES: - case GL_PACK_LSB_FIRST: - case GL_UNPACK_SWAP_BYTES: - case GL_UNPACK_LSB_FIRST: - break; - case GL_PACK_ROW_LENGTH: - case GL_PACK_IMAGE_HEIGHT: - case GL_PACK_SKIP_ROWS: - case GL_PACK_SKIP_PIXELS: - case GL_PACK_SKIP_IMAGES: - case GL_UNPACK_ROW_LENGTH: - case GL_UNPACK_IMAGE_HEIGHT: - case GL_UNPACK_SKIP_ROWS: - case GL_UNPACK_SKIP_PIXELS: - case GL_UNPACK_SKIP_IMAGES: - if (param < 0) { - return GL_INVALID_VALUE; - } - break; - - case GL_PACK_ALIGNMENT: - case GL_UNPACK_ALIGNMENT: - if (param != 1 && param != 2 && param != 4 && param != 8) { - return GL_INVALID_VALUE; - } - break; - - default: - return GL_INVALID_ENUM; - } - - pixelStoreParams[pname] = param; - return GL_NO_ERROR; -} - -GLint CommonState::QueryPixelStoreInt(GLenum pname) { - auto it = pixelStoreParams.find(pname); - if (it != pixelStoreParams.end()) { - return it->second; - } - - auto defaultIt = MG_Constants::PixelStore::DEFAULT_VALUES_MAP.find(pname); - return (defaultIt != MG_Constants::PixelStore::DEFAULT_VALUES_MAP.end()) ? defaultIt->second : 0; -} - -GLenum CommonState::Enable(GLenum cap) { - if (!MG_Constants::Common::Contains(cap, MG_Constants::CommonState::VALID_CAPS)) { - return GL_INVALID_ENUM; - } - capabilities[cap] = true; - return GL_NO_ERROR; -} - -GLenum CommonState::Disable(GLenum cap) { - if (!MG_Constants::Common::Contains(cap, MG_Constants::CommonState::VALID_CAPS)) { - return GL_INVALID_ENUM; - } - capabilities[cap] = false; - return GL_NO_ERROR; -} - -GLenum CommonState::BlendFunc(GLenum sfactor, GLenum dfactor) { - if (!MG_Constants::Common::Contains(sfactor, MG_Constants::Blend::VALID_FACTORS) || - !MG_Constants::Common::Contains(dfactor, MG_Constants::Blend::VALID_FACTORS)) { - return GL_INVALID_ENUM; - } - - blendSrcRGB = blendSrcAlpha = sfactor; - blendDstRGB = blendDstAlpha = dfactor; - return GL_NO_ERROR; -} - -GLenum CommonState::BlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, - GLenum srcAlpha, GLenum dstAlpha) { - if (!MG_Constants::Common::Contains(srcRGB, MG_Constants::Blend::VALID_FACTORS) || - !MG_Constants::Common::Contains(dstRGB, MG_Constants::Blend::VALID_FACTORS) || - !MG_Constants::Common::Contains(srcAlpha, MG_Constants::Blend::VALID_FACTORS) || - !MG_Constants::Common::Contains(dstAlpha, MG_Constants::Blend::VALID_FACTORS)) { - return GL_INVALID_ENUM; - } - blendSrcRGB = srcRGB; - blendDstRGB = dstRGB; - blendSrcAlpha = srcAlpha; - blendDstAlpha = dstAlpha; - return GL_NO_ERROR; -} - -GLenum CommonState::Clear(GLbitfield mask) { - const GLbitfield validBits = GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT; - if ((mask & ~validBits) != 0) { - return GL_INVALID_VALUE; - } - clearMask = mask; - return GL_NO_ERROR; -} - -GLenum CommonState::ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) { - clearColor[0] = red; - clearColor[1] = green; - clearColor[2] = blue; - clearColor[3] = alpha; - return GL_NO_ERROR; -} - -GLenum CommonState::ClearDepth(GLfloat depth) { - clearDepth = depth; - return GL_NO_ERROR; -} - -GLenum CommonState::ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { - colorMask[0] = red; - colorMask[1] = green; - colorMask[2] = blue; - colorMask[3] = alpha; - return GL_NO_ERROR; -} - -GLenum CommonState::DepthFunc(GLenum func) { - if (!MG_Constants::Common::Contains(func, MG_Constants::Depth::VALID_FUNCS)) { - return GL_INVALID_ENUM; - } - depthFunc = func; - MG_Util::Debug::LogD("%s(%s)", __func__, MG_Util::Debug::GLEnumToString(func)); - return GL_NO_ERROR; -} - -GLenum CommonState::DepthMask(GLboolean flag) { - depthMask = flag; - return GL_NO_ERROR; -} - -GLenum CommonState::Viewport(GLint x, GLint y, GLsizei width, GLsizei height) { - if (width < 0 || height < 0) { - return GL_INVALID_VALUE; - } - - viewport[0] = x; - viewport[1] = y; - viewport[2] = width; - viewport[3] = height; - return GL_NO_ERROR; -} \ No newline at end of file diff --git a/MG/MG_GL/State/Common/CommonState.h b/MG/MG_GL/State/Common/CommonState.h deleted file mode 100644 index 004b5653..00000000 --- a/MG/MG_GL/State/Common/CommonState.h +++ /dev/null @@ -1,60 +0,0 @@ -// -// Created by BZLZHH on 2025/4/30. -// - -#ifndef MOBILEGL_COMMONSTATE_H -#define MOBILEGL_COMMONSTATE_H - -class CommonState { -public: - // Viewport - GLint viewport[4] = {0, 0, 0, 0}; - - // Color mask - GLboolean colorMask[4] = {GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE}; - - // Pixel storage parameters - MG_Global::unordered_map pixelStoreParams; - - // Blend state - GLenum blendSrcRGB = GL_ONE; - GLenum blendDstRGB = GL_ZERO; - GLenum blendSrcAlpha = GL_ONE; - GLenum blendDstAlpha = GL_ZERO; - - // Clear state - GLfloat clearColor[4] = {0.0f, 0.0f, 0.0f, 0.0f}; - GLfloat clearDepth = 1.0f; - GLenum clearMask; - - // Depth state - GLenum depthFunc = GL_LESS; - GLboolean depthMask = GL_TRUE; - - // Capability enables - MG_Global::unordered_map capabilities; - - CommonState(); - - // Return: the validity of the operation, according to OpenGL 3 standard - GLenum SetPixelStoreInt(GLenum pname, GLint param); - - GLenum Enable(GLenum cap); - GLenum Disable(GLenum cap); - GLenum BlendFunc(GLenum sfactor, GLenum dfactor); - GLenum BlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, - GLenum srcAlpha, GLenum dstAlpha); - GLenum Clear(GLbitfield mask); - GLenum ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); - GLenum ClearDepth(GLfloat depth); - GLenum ColorMask(GLboolean red, GLboolean green, - GLboolean blue, GLboolean alpha); - GLenum DepthFunc(GLenum func); - GLenum DepthMask(GLboolean flag); - GLenum Viewport(GLint x, GLint y, GLsizei width, GLsizei height); - - GLint QueryPixelStoreInt(GLenum pname); - -}; - -#endif //MOBILEGL_COMMONSTATE_H diff --git a/MG/MG_GL/State/Core/GLState.cpp b/MG/MG_GL/State/Core/GLState.cpp deleted file mode 100644 index ece59583..00000000 --- a/MG/MG_GL/State/Core/GLState.cpp +++ /dev/null @@ -1,407 +0,0 @@ -// -// Created by BZLZHH on 2025/4/4. -// - -#include "../../../Includes.h" - -std::queue MG_State_T::glErrorQueue; -TextureState* MG_State_T::textureState = nullptr; -CommonState* MG_State_T::commonState = nullptr; -BufferState* MG_State_T::bufferState = nullptr; -VertexArrayState* MG_State_T::vertexArrayState = nullptr; -ProgramState* MG_State_T::programState = nullptr; -FramebufferState* MG_State_T::framebufferState = nullptr; - -namespace MG_State { - void Init() { - MG_State_T::textureState = new TextureState(); - MG_State_T::commonState = new CommonState(); - MG_State_T::bufferState = new BufferState(); - MG_State_T::vertexArrayState = new VertexArrayState(); - MG_State_T::programState = new ProgramState(); - MG_State_T::framebufferState = new FramebufferState(); - } - - void Destroy() { - delete MG_State_T::textureState; - delete MG_State_T::commonState; - delete MG_State_T::bufferState; - delete MG_State_T::vertexArrayState; - delete MG_State_T::programState; - delete MG_State_T::framebufferState; - } - - void SetError(GLenum error) { - if (error == GL_NO_ERROR) { - return; - } - MG_State_T::glErrorQueue.push(error); - } - - GLenum GetError() { - if (MG_State_T::glErrorQueue.empty()) { - return GL_NO_ERROR; - } - GLenum error = MG_State_T::glErrorQueue.front(); - MG_State_T::glErrorQueue.pop(); - return error; - } - -// TODO: Take these functions apart into multiple files. - - // Texture - GLenum BindTextureUnit(GLenum textureUnit) { - return MG_State_T::textureState->BindUnit(textureUnit); - } - - GLenum CreateTexture(GLuint* texture) { - return MG_State_T::textureState->Create(texture); - } - - GLenum CreateTextures(GLsizei n, GLuint* textures) { - return MG_State_T::textureState->CreateN(n, textures); - } - - GLenum BindTexture(GLenum target, GLuint texture) { - return MG_State_T::textureState->Bind(target, texture); - } - - GLenum UploadTexture2D(GLenum target, GLint level, GLint internalFormat, - GLsizei width, GLsizei height, GLint border, GLenum format, - GLenum type, const void* data) { - return MG_State_T::textureState->Upload2D(target, level, internalFormat, width, height, border, format, type, data); - } - - GLenum UpdateTextureRegion2D(GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid* data) { - return MG_State_T::textureState->UpdateRegion2D(target, level, xoffset, yoffset, width, height, format, type, data); - } - - GLenum SetTexturePropertyInt(GLenum target, GLenum pname, GLint param) { - return MG_State_T::textureState->SetTexturePropertyInt(target, pname, param); - } - - GLenum SetTexturePropertyFloat(GLenum target, GLenum pname, GLfloat param) { - return MG_State_T::textureState->SetTexturePropertyFloat(target, pname, param); - } - - GLenum DeleteTexture(GLuint texture) { - return MG_State_T::textureState->Delete(texture); - } - - GLenum DeleteTextures(GLsizei n, const GLuint* textures) { - return MG_State_T::textureState->DeleteN(n, textures); - } - - GLenum QueryTextureLevelPropertyIntVector(GLenum target, GLint level, GLenum pname, GLint* params) { - return MG_State_T::textureState->QueryLevelPropertyIntVector(target, level, pname, params); - } - - // Common - GLenum SetPixelStoreInt(GLenum pname, GLint param) { - return MG_State_T::commonState->SetPixelStoreInt(pname, param); - } - - GLint QueryPixelStoreInt(GLenum pname) { - return MG_State_T::commonState->QueryPixelStoreInt(pname); - } - - GLenum glEnable(GLenum cap) { - return MG_State_T::commonState->Enable(cap); - } - - GLenum glDisable(GLenum cap) { - return MG_State_T::commonState->Disable(cap); - } - - GLenum glBlendFunc(GLenum sfactor, GLenum dfactor) { - return MG_State_T::commonState->BlendFunc(sfactor, dfactor); - } - - GLenum glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) { - return MG_State_T::commonState->BlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); - } - - GLenum glClear(GLbitfield mask) { - return MG_State_T::commonState->Clear(mask); - } - - GLenum glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) { - return MG_State_T::commonState->ClearColor(red, green, blue, alpha); - } - - GLenum glClearDepth(GLdouble depth) { - return MG_State_T::commonState->ClearDepth(static_cast(depth)); - } - - GLenum glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { - return MG_State_T::commonState->ColorMask(red, green, blue, alpha); - } - - GLenum glDepthFunc(GLenum func) { - return MG_State_T::commonState->DepthFunc(func); - } - - GLenum glDepthMask(GLboolean flag) { - return MG_State_T::commonState->DepthMask(flag); - } - - GLenum glViewport(GLint x, GLint y, GLsizei width, GLsizei height) { - return MG_State_T::commonState->Viewport(x, y, width, height); - } - - // Buffer - GLenum AcquireBufferMemory(GLenum target, GLenum access, void** mappedPtr) { - return MG_State_T::bufferState->AcquireBufferMemory(target, access, mappedPtr); - } - - GLenum AcquireBufferMemoryRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void** mappedPointer) { - return MG_State_T::bufferState->AcquireBufferMemoryRange(target, offset, length, access, mappedPointer); - } - - GLenum SyncBufferMemory(GLenum target, GLintptr offset, GLsizeiptr length) { - return MG_State_T::bufferState->SyncBufferMemory(target, offset, length); - } - - GLenum CopyBufferRange(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) { - return MG_State_T::bufferState->CopyBufferRange(readTarget, writeTarget, readOffset, - writeOffset, size); - } - - GLenum ReleaseBufferMemory(GLenum target) { - return MG_State_T::bufferState->ReleaseBufferMemory(target); - } - - GLenum CreateBuffer(GLuint buffer) { - return MG_State_T::bufferState->Create(buffer); - } - - GLenum GenBufferNames(GLsizei n, GLuint* buffers) { - return MG_State_T::bufferState->GenNameN(n, buffers); - } - - GLenum BindBuffer(GLenum target, GLuint buffer) { - if (target == GL_ELEMENT_ARRAY_BUFFER) { - auto* vao = MG_State_T::vertexArrayState->GetCurrentVAO(); - if (!vao) return GL_INVALID_OPERATION; - vao->elementBuffer = (GLuint)buffer; - vao->eboDirty = true; - } - return MG_State_T::bufferState->Bind(target, buffer); - } - - GLenum CommitBufferStorage(GLenum target, GLsizeiptr size, const void* data, GLenum usage) { - return MG_State_T::bufferState->CommitStorage(target, size, data, usage); - } - - GLenum CommitBufferStorageRegion(GLenum target, GLintptr offset, GLsizeiptr size, const void* data) { - return MG_State_T::bufferState->CommitStorageRegion(target, offset, size, data); - } - - bool ValidateAllocatedBufferHandle(GLuint buffer) { - return MG_State_T::bufferState->ValidateAllocatedHandle(buffer); - } - - bool ValidateGeneratedName(GLuint buffer) { - return MG_State_T::bufferState->ValidateGeneratedName(buffer); - } - - void DeleteBuffer(GLuint buffer) { - return MG_State_T::bufferState->Delete(buffer); - } - - GLenum DeleteBuffers(GLsizei n, const GLuint* buffers) { - return MG_State_T::bufferState->DeleteN(n, buffers); - } - - GLenum QueryBufferPropertyIntVector(GLenum target, GLenum pname, GLint* params) { - return MG_State_T::bufferState->QueryPropertyIntVector(target, pname, params); - } - - // VertexArray - GLenum BindVertexArray(GLuint array) { - return MG_State_T::vertexArrayState->Bind(array); - } - - GLenum CreateVertexArray(GLuint* array) { - return MG_State_T::vertexArrayState->Create(array); - } - - GLenum CreateVertexArrays(GLsizei n, GLuint* arrays) { - return MG_State_T::vertexArrayState->CreateN(n, arrays); - } - - GLenum GenVertexArraysNames(GLsizei n, GLuint* arrays) { - return MG_State_T::vertexArrayState->GenNameN(n, arrays); - } - - GLenum EnableVertexAttribArray(GLuint index) { - return MG_State_T::vertexArrayState->EnableAttrib(index); - } - - GLenum DisableVertexAttribArray(GLuint index) { - return MG_State_T::vertexArrayState->DisableAttrib(index); - } - - GLenum SetVertexAttributeLayout(GLuint index, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, - const void* pointer) { - GLuint currentBuffer = MG_State_T::bufferState->GetCurrentBinding(GL_ARRAY_BUFFER); - return MG_State_T::vertexArrayState->SetAttribPointer( - index, size, type, normalized, stride, pointer, false, currentBuffer - ); - } - - GLenum SetVertexAttributeLayoutInt(GLuint index, GLint size, GLenum type, - GLsizei stride, const void* pointer) { - GLuint currentBuffer = MG_State_T::bufferState->GetCurrentBinding(GL_ARRAY_BUFFER); - return MG_State_T::vertexArrayState->SetAttribPointer( - index, size, type, GL_FALSE, stride, pointer, true, currentBuffer - ); - } - - // Program - GLenum CreateShader(GLenum type, GLuint* shader) { - return MG_State_T::programState->CreateShader(type, shader); - } - - GLenum CreateProgram(GLuint* program) { - return MG_State_T::programState->CreateProgram(program); - } - - GLenum DeleteShader(GLuint shader) { - return MG_State_T::programState->DeleteShader(shader); - } - - GLenum DeleteProgram(GLuint program) { - return MG_State_T::programState->DeleteProgram(program); - } - - GLenum LinkShaderToProgram(GLuint program, GLuint shader) { - return MG_State_T::programState->LinkShaderToProgram(program, shader); - } - - GLenum UploadShaderSource(GLuint shader, GLsizei count, const GLchar** string, const GLint* length) { - return MG_State_T::programState->UploadShaderSource(shader, count, string, length); - } - - GLenum BuildShaderStage(GLuint shader) { - return MG_State_T::programState->BuildShaderStage(shader); - } - - GLenum FinalizeProgramPipeline(GLuint program) { - return MG_State_T::programState->FinalizeProgramPipeline(program); - } - - GLenum ActivateRenderProgram(GLuint program) { - return MG_State_T::programState->ActivateRenderProgram(program); - } - - GLenum DefineProgramAttributeLocation(GLuint program, GLuint index, const GLchar* name) { - return MG_State_T::programState->DefineProgramAttributeLocation(program, index, name); - } - - GLint QueryProgramAttributeLocation(GLuint program, const GLchar* name) { - return MG_State_T::programState->QueryProgramAttributeLocation(program, name); - } - - GLint QueryProgramUniformLocation(GLuint program, const GLchar* name) { - return MG_State_T::programState->QueryProgramUniformLocation(program, name); - } - - GLenum QueryProgramStateIntVector(GLuint program, GLenum pname, GLint* params) { - return MG_State_T::programState->QueryProgramStateIntVector(program, pname, params); - } - - GLenum QueryShaderStateIntVector(GLuint shader, GLenum pname, GLint* params) { - return MG_State_T::programState->QueryShaderStateIntVector(shader, pname, params); - } - -#define IMPLEMENT_UNIFORM_FUNCTIONS(type, suffix, vecType) \ -void UpdateProgramUniform##suffix##1(GLint location, type v0) { \ - MG_State_T::programState->UpdateUniform##suffix##1(location, v0); \ -} \ -void UpdateProgramUniform##suffix##2(GLint location, type v0, type v1) { \ - MG_State_T::programState->UpdateUniform##suffix##2(location, v0, v1); \ -} \ -void UpdateProgramUniform##suffix##3(GLint location, type v0, type v1, type v2) { \ - MG_State_T::programState->UpdateUniform##suffix##3(location, v0, v1, v2); \ -} \ -void UpdateProgramUniform##suffix##4(GLint location, type v0, type v1, type v2, type v3) { \ - MG_State_T::programState->UpdateUniform##suffix##4(location, v0, v1, v2, v3); \ - } \ -void UpdateProgramUniform##suffix##Vector1(GLint location, GLsizei count, const type* value) { \ - MG_State_T::programState->UpdateUniform##suffix##Vector1(location, count,value); \ - } \ -void UpdateProgramUniform##suffix##Vector2(GLint location, GLsizei count, const type* value) { \ - MG_State_T::programState->UpdateUniform##suffix##Vector2(location, count, value); \ - } \ -void UpdateProgramUniform##suffix##Vector3(GLint location, GLsizei count, const type* value) { \ - MG_State_T::programState->UpdateUniform##suffix##Vector3(location, count, value); \ - } \ -void UpdateProgramUniform##suffix##Vector4(GLint location, GLsizei count, const type* value) { \ - MG_State_T::programState->UpdateUniform##suffix##Vector4(location, count, value); \ - } - - IMPLEMENT_UNIFORM_FUNCTIONS(GLfloat, Float, GL_FLOAT_VEC4) - IMPLEMENT_UNIFORM_FUNCTIONS(GLint, Int, GL_INT_VEC4) - IMPLEMENT_UNIFORM_FUNCTIONS(GLuint, UInt, GL_UNSIGNED_INT_VEC4) - IMPLEMENT_UNIFORM_FUNCTIONS(GLboolean, Bool, GL_BOOL_VEC4) -#undef IMPLEMENT_UNIFORM_FUNCTIONS - -#define IMPLEMENT_MATRIX_FUNCTIONS(suffix, matrixType) \ -void UpdateProgramUniformMatrix##suffix##Vector(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { \ - MG_State_T::programState->UpdateUniformMatrix##suffix##Vector(location, count, transpose, value); \ -} - - IMPLEMENT_MATRIX_FUNCTIONS(2x2, GL_FLOAT_MAT2) - IMPLEMENT_MATRIX_FUNCTIONS(3x3, GL_FLOAT_MAT3) - IMPLEMENT_MATRIX_FUNCTIONS(4x4, GL_FLOAT_MAT4) - IMPLEMENT_MATRIX_FUNCTIONS(2x3, GL_FLOAT_MAT2x3) - IMPLEMENT_MATRIX_FUNCTIONS(2x4, GL_FLOAT_MAT2x4) - IMPLEMENT_MATRIX_FUNCTIONS(3x2, GL_FLOAT_MAT3x2) - IMPLEMENT_MATRIX_FUNCTIONS(3x4, GL_FLOAT_MAT3x4) - IMPLEMENT_MATRIX_FUNCTIONS(4x2, GL_FLOAT_MAT4x2) - IMPLEMENT_MATRIX_FUNCTIONS(4x3, GL_FLOAT_MAT4x3) -#undef IMPLEMENT_MATRIX_FUNCTIONS - - GLuint GetCurrentProgram() { - return MG_State_T::programState->GetCurrentProgram(); - } - - bool SetProgramStatus(GLuint program, GLboolean status) { - return MG_State_T::programState->SetProgramStatus(program, status); - } - - bool SetShaderStatus(GLuint shader, GLboolean status) { - return MG_State_T::programState->SetShaderStatus(shader, status); - } - - // Framebuffer - GLenum MG_State::CreateFramebuffer(GLuint* framebuffer) { - return MG_State_T::framebufferState->Create(framebuffer); - } - - GLenum MG_State::CreateFramebuffers(GLsizei n, GLuint* framebuffers) { - return MG_State_T::framebufferState->CreateN(n, framebuffers); - } - - GLenum MG_State::DeleteFramebuffer(GLuint framebuffer) { - return MG_State_T::framebufferState->Delete(framebuffer); - } - - GLenum MG_State::BindFramebuffer(GLenum target, GLuint framebuffer) { - return MG_State_T::framebufferState->Bind(target, framebuffer); - } - - GLenum MG_State::AttachTexture2DToFramebuffer(GLenum target, GLenum attachment, GLenum textarget, - GLuint texture, GLint level) { - return MG_State_T::framebufferState->AttachTexture2D(target, attachment, textarget, - texture, level); - } - - GLenum MG_State::ValidateFramebufferCompleteness(GLenum target) { - return MG_State_T::framebufferState->ValidateCompleteness(target); - } -} \ No newline at end of file diff --git a/MG/MG_GL/State/Core/GLState.h b/MG/MG_GL/State/Core/GLState.h deleted file mode 100644 index 31017df7..00000000 --- a/MG/MG_GL/State/Core/GLState.h +++ /dev/null @@ -1,149 +0,0 @@ -// -// Created by BZLZHH on 2025/4/4. -// - -#ifndef MOBILEGL_GLSTATE_H -#define MOBILEGL_GLSTATE_H - -struct MG_State_T { - static std::queue glErrorQueue; - static TextureState* textureState; - static CommonState* commonState; - static BufferState* bufferState; - static VertexArrayState* vertexArrayState; - static ProgramState* programState; - static FramebufferState* framebufferState; -}; - -namespace MG_State { - void Init(); - void Destroy(); - void SetError(GLenum error); - GLenum GetError(); - - //Texture - GLenum BindTextureUnit(GLenum textureUnit); - GLenum CreateTexture(GLuint* texture); - GLenum CreateTextures(GLsizei n, GLuint* textures); - GLenum BindTexture(GLenum target, GLuint texture); - GLenum UploadTexture2D(GLenum target, GLint level, GLint internalFormat, - GLsizei width, GLsizei height, GLint border, GLenum format, - GLenum type, const void* data); - GLenum UpdateTextureRegion2D(GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid* data); - GLenum SetTexturePropertyInt(GLenum target, GLenum pname, GLint param); - GLenum SetTexturePropertyFloat(GLenum target, GLenum pname, GLfloat param); - GLenum DeleteTexture(GLuint texture); - GLenum DeleteTextures(GLsizei n, const GLuint* textures); - GLenum QueryTextureLevelPropertyIntVector(GLenum target, GLint level, GLenum pname, GLint* params); - - // Common - GLenum SetPixelStoreInt(GLenum pname, GLint param); - GLint QueryPixelStoreInt(GLenum pname); - GLenum glEnable(GLenum cap); - GLenum glDisable(GLenum cap); - GLenum glBlendFunc(GLenum sfactor, GLenum dfactor); - GLenum glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); - GLenum glClear(GLbitfield mask); - GLenum glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); - GLenum glClearDepth(GLdouble depth); - GLenum glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); - GLenum glDepthFunc(GLenum func); - GLenum glDepthMask(GLboolean flag); - GLenum glViewport(GLint x, GLint y, GLsizei width, GLsizei height); - - // Buffer - GLenum AcquireBufferMemory(GLenum target, GLenum access, void** mappedPtr); - GLenum AcquireBufferMemoryRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void** mappedPointer); - GLenum SyncBufferMemory(GLenum target, GLintptr offset, GLsizeiptr length); - GLenum CopyBufferRange(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); - GLenum ReleaseBufferMemory(GLenum target); - GLenum CreateBuffer(GLuint buffer); - GLenum GenBufferNames(GLsizei n, GLuint* buffers); - GLenum BindBuffer(GLenum target, GLuint buffer); - GLenum CommitBufferStorage(GLenum target, GLsizeiptr size, const void* data, GLenum usage); - GLenum CommitBufferStorageRegion(GLenum target, GLintptr offset, GLsizeiptr size, const void* data); - bool ValidateAllocatedBufferHandle(GLuint buffer); - bool ValidateGeneratedName(GLuint buffer); - void DeleteBuffer(GLuint buffer); - GLenum DeleteBuffers(GLsizei n, const GLuint* buffers); - GLenum QueryBufferPropertyIntVector(GLenum target, GLenum pname, GLint* params); - - // VertexArray - GLenum CreateVertexArray(GLuint* array); - GLenum CreateVertexArrays(GLsizei n, GLuint* arrays); - GLenum GenVertexArraysNames(GLsizei n, GLuint* arrays); - GLenum BindVertexArray(GLuint array); - GLenum EnableVertexAttribArray(GLuint index); - GLenum DisableVertexAttribArray(GLuint index); - GLenum SetVertexAttributeLayout(GLuint index, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, - const void* pointer); - GLenum SetVertexAttributeLayoutInt(GLuint index, GLint size, GLenum type, - GLsizei stride, const void* pointer); - - // Program - GLenum CreateShader(GLenum type, GLuint* shader); - GLenum CreateProgram(GLuint* program); - GLenum DeleteShader(GLuint shader); - GLenum DeleteProgram(GLuint program); - GLenum LinkShaderToProgram(GLuint program, GLuint shader); - GLenum UploadShaderSource(GLuint shader, GLsizei count, const GLchar** string, const GLint* length); - GLenum BuildShaderStage(GLuint shader); - GLenum FinalizeProgramPipeline(GLuint program); - GLenum ActivateRenderProgram(GLuint program); - GLenum DefineProgramAttributeLocation(GLuint program, GLuint index, const GLchar* name); - GLint QueryProgramAttributeLocation(GLuint program, const GLchar* name); - GLint QueryProgramUniformLocation(GLuint program, const GLchar* name); - GLenum QueryProgramStateIntVector(GLuint program, GLenum pname, GLint* params); - GLenum QueryShaderStateIntVector(GLuint shader, GLenum pname, GLint* params); - template - GLenum SetUniform(GLuint program, GLint location, GLsizei count, const T* value, GLenum type); - - template - GLenum SetUniformMatrix(GLuint program, GLint location, GLsizei count, GLboolean transpose, const T* value, GLenum matrixType); - -#define DECLARE_UNIFORM_FUNCTIONS(type, suffix, vecType) \ - void UpdateProgramUniform##suffix##1(GLint location, type v0); \ - void UpdateProgramUniform##suffix##2(GLint location, type v0, type v1); \ - void UpdateProgramUniform##suffix##3(GLint location, type v0, type v1, type v2); \ - void UpdateProgramUniform##suffix##4(GLint location, type v0, type v1, type v2, type v3); \ - void UpdateProgramUniform##suffix##Vector1(GLint location, GLsizei count, const type* value); \ - void UpdateProgramUniform##suffix##Vector2(GLint location, GLsizei count, const type* value); \ - void UpdateProgramUniform##suffix##Vector3(GLint location, GLsizei count, const type* value); \ - void UpdateProgramUniform##suffix##Vector4(GLint location, GLsizei count, const type* value); - DECLARE_UNIFORM_FUNCTIONS(GLfloat, Float, GL_FLOAT) - DECLARE_UNIFORM_FUNCTIONS(GLint, Int, GL_INT) - DECLARE_UNIFORM_FUNCTIONS(GLuint, UInt, GL_UNSIGNED_INT) - DECLARE_UNIFORM_FUNCTIONS(GLboolean, Bool, GL_BOOL) -#undef DECLARE_UNIFORM_FUNCTIONS -#define DECLARE_MATRIX_FUNCTIONS(suffix, matrixType) \ - void UpdateProgramUniformMatrix##suffix##Vector(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - DECLARE_MATRIX_FUNCTIONS(2x2, GL_FLOAT_MAT2) - DECLARE_MATRIX_FUNCTIONS(3x3, GL_FLOAT_MAT3) - DECLARE_MATRIX_FUNCTIONS(4x4, GL_FLOAT_MAT4) - DECLARE_MATRIX_FUNCTIONS(2x3, GL_FLOAT_MAT2x3) - DECLARE_MATRIX_FUNCTIONS(2x4, GL_FLOAT_MAT2x4) - DECLARE_MATRIX_FUNCTIONS(3x2, GL_FLOAT_MAT3x2) - DECLARE_MATRIX_FUNCTIONS(3x4, GL_FLOAT_MAT3x4) - DECLARE_MATRIX_FUNCTIONS(4x2, GL_FLOAT_MAT4x2) - DECLARE_MATRIX_FUNCTIONS(4x3, GL_FLOAT_MAT4x3) -#undef DECLARE_MATRIX_FUNCTIONS - - GLuint GetCurrentProgram(); - bool SetProgramStatus(GLuint program, GLboolean status); - bool SetShaderStatus(GLuint shader, GLboolean status); - - // Framebuffer - GLenum CreateFramebuffer(GLuint* framebuffer); - GLenum CreateFramebuffers(GLsizei n, GLuint* framebuffers); - GLenum DeleteFramebuffer(GLuint framebuffer); - GLenum BindFramebuffer(GLenum target, GLuint framebuffer); - GLenum AttachTexture2DToFramebuffer(GLenum target, GLenum attachment, GLenum textarget, - GLuint texture, GLint level); - GLenum ValidateFramebufferCompleteness(GLenum target); -} - - -#endif //MOBILEGL_GLSTATE_H diff --git a/MG/MG_GL/State/Framebuffer/FramebufferState.cpp b/MG/MG_GL/State/Framebuffer/FramebufferState.cpp deleted file mode 100644 index 3bbce11c..00000000 --- a/MG/MG_GL/State/Framebuffer/FramebufferState.cpp +++ /dev/null @@ -1,179 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -// TODO: Add more gl error check for framebuffer state manager. -// TODO: Check if the state machine really meets up to OpenGL 3 standard. - -#include "../../../Includes.h" - -GLenum FramebufferState::Create(GLuint* framebuffer) { - if (!framebuffer) return GL_INVALID_VALUE; - GLuint id = freeIds_.empty() ? ++lastId_ : *freeIds_.begin(); - if (!freeIds_.empty()) freeIds_.erase(freeIds_.begin()); - *framebuffer = id; - framebuffers_[id].generated = true; - return GL_NO_ERROR; -} - -GLenum FramebufferState::CreateN(GLsizei n, GLuint* framebuffers) { - if (n < 0) return GL_INVALID_VALUE; - for (GLsizei i = 0; i < n; ++i) { - if (GLenum err = Create(&framebuffers[i])) return err; - } - return GL_NO_ERROR; -} - -GLenum FramebufferState::Delete(GLuint framebuffer) { - if (framebuffer == 0) return GL_INVALID_VALUE; - - if (framebuffers_.erase(framebuffer)) { - // TODO: Prevent the object that uses a freeId from conflicting with legacy object in the backend. - //freeIds_.insert(framebuffer); - for (auto& [target, id] : currentBindings_) { - if (id == framebuffer) id = 0; - } - } - return GL_NO_ERROR; -} - -GLenum FramebufferState::Bind(GLenum target, GLuint framebuffer) { - if (!MG_Constants::Common::Contains(target, MG_Constants::Framebuffer::VALID_TARGETS)) - return GL_INVALID_ENUM; - if (framebuffer != 0 && !ValidateHandle(framebuffer)) - return GL_INVALID_OPERATION; - if (target == GL_FRAMEBUFFER) { - currentBindings_[GL_READ_FRAMEBUFFER] = framebuffer; - currentBindings_[GL_DRAW_FRAMEBUFFER] = framebuffer; - } else { - currentBindings_[target] = framebuffer; - } - return GL_NO_ERROR; -} - -GLenum FramebufferState::AttachTexture2D(GLenum target, GLenum attachment, - GLenum textarget, GLuint texture, GLint level) { - if (!MG_Constants::Common::Contains(attachment, MG_Constants::Framebuffer::VALID_ATTACHMENTS) || - !MG_Constants::Common::Contains(textarget, MG_Constants::Texture::VALID_TARGETS)) - return GL_INVALID_ENUM; - if (target == GL_FRAMEBUFFER) { - target = GL_DRAW_FRAMEBUFFER; - -// if (currentBindings_[GL_READ_FRAMEBUFFER] == currentBindings_[GL_DRAW_FRAMEBUFFER]) { -// target = GL_DRAW_FRAMEBUFFER; -// } else { -// if (currentBindings_[GL_READ_FRAMEBUFFER] != 0) { -// GLenum err = AttachTexture2D(GL_READ_FRAMEBUFFER, attachment, textarget, texture, level); -// if (err != GL_NO_ERROR) -// return err; -// } -// if (currentBindings_[GL_DRAW_FRAMEBUFFER] != 0) { -// GLenum err = AttachTexture2D(GL_DRAW_FRAMEBUFFER, attachment, textarget, texture, level); -// if (err != GL_NO_ERROR) -// return err; -// } -// return GL_NO_ERROR; -// } - } - FramebufferObject* fbo = GetCurrentFBO(target); - if (!fbo) return GL_INVALID_OPERATION; - if (texture != 0 && !MG_State_T::textureState->IsTexture(texture)) - return GL_INVALID_VALUE; - FramebufferAttachment att; - att.type = GL_TEXTURE_2D; - att.handle = texture; - att.mipLevel = level; - fbo->attachments[attachment] = att; - - if (texture != 0) { - GLint params = 0; - MG_State_T::textureState->QueryLevelPropertyIntVector( - textarget, level, GL_TEXTURE_WIDTH, ¶ms); - fbo->width = params; - MG_State_T::textureState->QueryLevelPropertyIntVector( - textarget, level, GL_TEXTURE_HEIGHT, ¶ms); - fbo->height = params; - } - UpdateCompleteness(*fbo); - return GL_NO_ERROR; -} - -GLenum FramebufferState::ValidateCompleteness(GLenum target) { - if (target == GL_FRAMEBUFFER) target = GL_DRAW_FRAMEBUFFER; - FramebufferObject* fbo = GetCurrentFBO(target); - if (!fbo) return GL_INVALID_OPERATION; - return fbo->status; -} - -void FramebufferState::UpdateCompleteness(FramebufferObject& fbo) { - if (fbo.attachments.empty()) { - fbo.status = GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT; - return; - } - bool hasColor = false; - bool hasDepth = false; - bool hasStencil = false; - GLsizei width = 0, height = 0; - for (const auto& [attach, att] : fbo.attachments) { - GLsizei attWidth = 0, attHeight = 0; - if (att.handle != 0) { - GLint params = 0; - MG_State_T::textureState->QueryLevelPropertyIntVector( - GL_TEXTURE_2D, att.mipLevel, GL_TEXTURE_WIDTH, ¶ms); - attWidth = params; - MG_State_T::textureState->QueryLevelPropertyIntVector( - GL_TEXTURE_2D, att.mipLevel, GL_TEXTURE_HEIGHT, ¶ms); - attHeight = params; - } - if (width == 0) { - width = attWidth; - height = attHeight; - } else if (attWidth != width || attHeight != height) { - fbo.status = GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS; - return; - } - - if (attach == GL_DEPTH_ATTACHMENT) hasDepth = true; - if (attach == GL_STENCIL_ATTACHMENT) hasStencil = true; - if (attach >= GL_COLOR_ATTACHMENT0 && - attach <= GL_COLOR_ATTACHMENT31) hasColor = true; - } - - if (!ValidateAttachmentCombination(fbo)) { - fbo.status = GL_FRAMEBUFFER_UNSUPPORTED; - return; - } - fbo.status = GL_FRAMEBUFFER_COMPLETE; -} - -bool FramebufferState::ValidateAttachmentCombination(const FramebufferObject& fbo) { - bool depthStencilConflict = false; - for (const auto& [attach, att] : fbo.attachments) { - if (attach == GL_DEPTH_STENCIL_ATTACHMENT) { - GLint internalFormat = 0; - MG_State_T::textureState->QueryLevelPropertyIntVector( - GL_TEXTURE_2D, att.mipLevel, GL_TEXTURE_INTERNAL_FORMAT, &internalFormat); - if (internalFormat != GL_DEPTH24_STENCIL8 && - internalFormat != GL_DEPTH32F_STENCIL8) { - return false; - } - } - } - return true; -} - -FramebufferObject* FramebufferState::GetCurrentFBO(GLenum target) { - auto it = currentBindings_.find(target); - if (it == currentBindings_.end()) return nullptr; - - GLuint id = it->second; - if (id == 0) return nullptr; - - auto fboIt = framebuffers_.find(id); - return (fboIt != framebuffers_.end()) ? &fboIt->second : nullptr; -} - -bool FramebufferState::ValidateHandle(GLuint framebuffer) { - return framebuffers_.count(framebuffer) && - framebuffers_[framebuffer].generated; -} \ No newline at end of file diff --git a/MG/MG_GL/State/Framebuffer/FramebufferState.h b/MG/MG_GL/State/Framebuffer/FramebufferState.h deleted file mode 100644 index 0ca281ad..00000000 --- a/MG/MG_GL/State/Framebuffer/FramebufferState.h +++ /dev/null @@ -1,46 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#ifndef MOBILEGL_FRAMEBUFFERSTATE_H -#define MOBILEGL_FRAMEBUFFERSTATE_H - -struct FramebufferAttachment { - GLenum type = GL_NONE; - GLuint handle = 0; - GLint mipLevel = 0; - GLint zoffset = 0; -}; - -struct FramebufferObject { - bool generated = false; - MG_Global::unordered_map attachments; - GLenum status = GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT; - GLsizei width = 0; - GLsizei height = 0; -}; - -class FramebufferState { -public: - // Return: the validity of the operation - GLenum Create(GLuint* framebuffer); - GLenum CreateN(GLsizei n, GLuint* framebuffers); - GLenum Delete(GLuint framebuffer); - GLenum Bind(GLenum target, GLuint framebuffer); - GLenum AttachTexture2D(GLenum target, GLenum attachment, - GLenum textarget, GLuint texture, GLint level); - GLenum ValidateCompleteness(GLenum target); - FramebufferObject* GetCurrentFBO(GLenum target); - - MG_Global::unordered_map currentBindings_; // READ/DRAW - -private: - MG_Global::unordered_map framebuffers_; - std::set freeIds_; - GLuint lastId_ = 0; - bool ValidateHandle(GLuint framebuffer); - static void UpdateCompleteness(FramebufferObject& fbo); - static bool ValidateAttachmentCombination(const FramebufferObject& fbo); -}; - -#endif //MOBILEGL_FRAMEBUFFERSTATE_H diff --git a/MG/MG_GL/State/Program/ProgramState.cpp b/MG/MG_GL/State/Program/ProgramState.cpp deleted file mode 100644 index ee27e8cc..00000000 --- a/MG/MG_GL/State/Program/ProgramState.cpp +++ /dev/null @@ -1,600 +0,0 @@ -// -// Created by BZLZHH on 2025/5/1. - -// TODO: Add more gl error check for buffer state manager. -// TODO: Check if the state machine really meets up to OpenGL 3 standard. - -#include "../../../Includes.h" - -ProgramState::ProgramState() { - glslang::InitializeProcess(); -} - -ProgramState::~ProgramState() { - glslang::FinalizeProcess(); -} - -GLenum ProgramState::CreateProgram(GLuint* program) { - MG_Util::Debug::LogD("MG_State: Program: CreateProgram called, program ptr=%p", program); - if (!program) { - MG_Util::Debug::LogE("MG_State: Program: CreateProgram error: program pointer is null"); - return GL_INVALID_VALUE; - } - - GLuint id = freeProgramIds_.empty() ? ++lastProgramId_ : *freeProgramIds_.begin(); - if (!freeProgramIds_.empty()) - freeProgramIds_.erase(freeProgramIds_.begin()); - - ProgramObject obj; - obj.linked = {UncertainBool::Unknown, UncertainBool::False}; - obj.linkStatus = GL_FALSE; - obj.markedForDeletion = false; - programs_[id] = obj; - *program = id; - MG_Util::Debug::LogD("MG_State: Program: CreateProgram success, new id=%u", id); - return GL_NO_ERROR; -} - -GLenum ProgramState::DeleteProgram(GLuint program) { - MG_Util::Debug::LogD("MG_State: Program: DeleteProgram called, id=%u", program); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: DeleteProgram error: invalid program id %u", program); - return GL_INVALID_VALUE; - } - - programs_.erase(program); - //freeProgramIds_.insert(program); - if (currentProgram_ == program) - currentProgram_ = 0; - MG_Util::Debug::LogD("MG_State: Program: DeleteProgram success, id=%u", program); - return GL_NO_ERROR; -} - -GLenum ProgramState::LinkShaderToProgram(GLuint program, GLuint shader) { - MG_Util::Debug::LogD("MG_State: Program: LinkShaderToProgram called, program=%u, shader=%u", - program, shader); - if (!ValidateProgram_(program) || !ValidateShader_(shader)) { - MG_Util::Debug::LogE("MG_State: Program: LinkShaderToProgram error: invalid ids program=%u shader=%u", - program, shader); - return GL_INVALID_VALUE; - } - - auto& prog = programs_[program]; - if (std::find(prog.attachedShaders.begin(), - prog.attachedShaders.end(), shader) != prog.attachedShaders.end()) { - MG_Util::Debug::LogW("MG_State: Program: LinkShaderToProgram warning: shader %u already attached to program %u", - shader, program); - return GL_INVALID_OPERATION; - } - - prog.attachedShaders.push_back(shader); - MG_Util::Debug::LogD("MG_State: Program: LinkShaderToProgram success: shader %u attached to program %u", - shader, program); - return GL_NO_ERROR; -} - -GLenum ProgramState::FinalizeProgramPipeline(GLuint program) { - MG_Util::Debug::LogD("MG_State: Program: FinalizeProgramPipeline called, id=%u", program); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: FinalizeProgramPipeline error: invalid program id %u", program); - return GL_INVALID_VALUE; - } - auto& prog = programs_[program]; - - for (GLuint shader : prog.attachedShaders) { - if (!shaders_[shader].compiled.toBool()) { - MG_Util::Debug::LogE("MG_State: Program: FinalizeProgramPipeline error: shader %u not compiled", shader); - return GL_INVALID_OPERATION; - } - } - - prog.infoLog.clear(); - - for (GLuint shaderId : prog.attachedShaders) { - auto& shader = shaders_[shaderId]; - if (!shader.compiled.toBool() || shader.compiledSpirv.empty()) { - prog.infoLog = "Program linking failed: \n" + - MG_Util::Program::GetShaderTypeName(shader.type) + " is not compiled."; - prog.linked = UncertainBool::False; - prog.linkStatus = GL_FALSE; - MG_Util::Debug::LogE("MG_State: Program: FinalizeProgramPipeline error: %s", prog.infoLog.c_str()); - return GL_INVALID_OPERATION; - } - } - - std::vector> allSpirv = - MG_Util::Program::CompileMultipleShadersToSPIRV(*this, prog, prog.infoLog); - - if (!prog.infoLog.empty() || allSpirv.empty()) { - prog.linked = UncertainBool::False; - prog.linkStatus = GL_FALSE; - prog.infoLog = "Program linking failed during SPIR-V compilation: " + prog.infoLog; - MG_Util::Debug::LogE("MG_State: Program: FinalizeProgramPipeline error: %s", prog.infoLog.c_str()); - return GL_INVALID_OPERATION; - } - - MG_Util::Program::ReflectSPIRVUniforms(allSpirv, prog, prog.infoLog); - - for (size_t i = 0; i < prog.attachedShaders.size(); ++i) { - GLuint shaderId = prog.attachedShaders[i]; - shaders_[shaderId].source = MG_Util::Program::CompileSPIRVToGLSL(allSpirv[i], 450, false, false); - } - - if (!prog.infoLog.empty()) { - prog.linked = UncertainBool::False; - prog.linkStatus = GL_FALSE; - prog.infoLog = "Program linking failed: " + prog.infoLog; - MG_Util::Debug::LogE("MG_State: Program: FinalizeProgramPipeline error: %s", prog.infoLog.c_str()); - return GL_INVALID_OPERATION; - } - - // TODO: Support explicitly assign attrib locations in the shaders. - - prog.linked = {UncertainBool::Unknown, UncertainBool::True}; - prog.linkStatus = GL_TRUE; - - CleanupShaders_(); - - MG_Util::Program::DumpUniforms(*this, program); - MG_Util::Debug::LogD("MG_State: Program: FinalizeProgramPipeline success, id=%u", program); - return GL_NO_ERROR; -} - -GLenum ProgramState::ActivateRenderProgram(GLuint program) { - MG_Util::Debug::LogD("MG_State: Program: ActivateRenderProgram called, id=%u", program); - if (program != 0 && !ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: ActivateRenderProgram error: invalid program id %u", program); - return GL_INVALID_VALUE; - } - - MG_Util::Program::DumpCurrentUniforms(*this); - currentProgram_ = program; - MG_Util::Program::DumpCurrentUniforms(*this); - MG_Util::Debug::LogD("MG_State: Program: ActivateRenderProgram success, current program=%u", currentProgram_); - return GL_NO_ERROR; -} - -GLenum ProgramState::DefineProgramAttributeLocation(GLuint program, GLuint index, const GLchar* name) { - MG_Util::Debug::LogD("MG_State: Program: DefineProgramAttributeLocation called, program=%u, index=%u, name=%s", - program, index, name); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: DefineProgramAttributeLocation error: invalid program id %u", program); - return GL_INVALID_VALUE; - } - if (index >= GL_MAX_VERTEX_ATTRIBS) { - MG_Util::Debug::LogE("MG_State: Program: DefineProgramAttributeLocation error: index %u out of range", index); - return GL_INVALID_VALUE; - } - - programs_[program].attribLocations[name] = index; - MG_Util::Debug::LogD("MG_State: Program: DefineProgramAttributeLocation success: %s -> %u", name, index); - return GL_NO_ERROR; -} - -GLint ProgramState::QueryProgramAttributeLocation(GLuint program, const GLchar* name) { - MG_Util::Debug::LogD("MG_State: Program: QueryProgramAttributeLocation called, program=%u, name=%s", - program, name); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: QueryProgramAttributeLocation error: invalid program id %u", program); - return -1; - } - - auto& prog = programs_[program]; - auto it = prog.attribLocations.find(name); - if (it != prog.attribLocations.end()) { - GLint loc = it->second; - MG_Util::Debug::LogD("MG_State: Program: QueryProgramAttributeLocation success: %s -> %d", name, loc); - return loc; - } else { - MG_Util::Debug::LogW("MG_State: Program: QueryProgramAttributeLocation warning: name '%s' not found, generating new one...", name); - // Find the next available location - GLint loc = (GLint)prog.attribLocations.size(); - bool locInUse; - do { - locInUse = false; - for (const auto& pair : prog.attribLocations) { - if (pair.second == loc) { - locInUse = true; - loc++; - break; - } - } - } while (locInUse); - prog.attribLocations[name] = loc; - MG_Util::Debug::LogD("MG_State: Program: QueryProgramAttributeLocation success: %s -> %d", name, loc); - return prog.attribLocations[name]; - } -} - -GLenum ProgramState::QueryProgramStateIntVector(GLuint program, GLenum pname, GLint* params) { - MG_Util::Debug::LogD("MG_State: Program: QueryProgramStateIntVector called, program=%u, pname=0x%X", - program, pname); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: QueryProgramStateIntVector error: invalid program id %u", program); - return GL_INVALID_VALUE; - } - auto& prog = programs_[program]; - - switch (pname) { - case GL_LINK_STATUS: *params = prog.linkStatus; break; - case GL_DELETE_STATUS: *params = prog.markedForDeletion; break; - case GL_ATTACHED_SHADERS:*params = (GLint)prog.attachedShaders.size(); break; - default: - MG_Util::Debug::LogE("MG_State: Program: QueryProgramStateIntVector error: invalid pname 0x%X", pname); - return GL_INVALID_ENUM; - } - MG_Util::Debug::LogD("MG_State: Program: QueryProgramStateIntVector success: value=%d", *params); - return GL_NO_ERROR; -} - -GLenum ProgramState::QueryShaderStateIntVector(GLuint shader, GLenum pname, GLint* params) { - MG_Util::Debug::LogD("MG_State: Program: QueryShaderStateIntVector called, shader=%u, pname=0x%X", - shader, pname); - if (!ValidateShader_(shader)) { - MG_Util::Debug::LogE("MG_State: Program: QueryShaderStateIntVector error: invalid shader id %u", shader); - return GL_INVALID_VALUE; - } - auto& obj = shaders_[shader]; - - switch (pname) { - case GL_COMPILE_STATUS: *params = obj.compileStatus; break; - case GL_DELETE_STATUS: *params = obj.markedForDeletion; break; - case GL_SHADER_TYPE: *params = obj.type; break; - default: - MG_Util::Debug::LogE("MG_State: Program: QueryShaderStateIntVector error: invalid pname 0x%X", pname); - return GL_INVALID_ENUM; - } - MG_Util::Debug::LogD("MG_State: Program: QueryShaderStateIntVector success: value=%d", *params); - return GL_NO_ERROR; -} - -template -GLenum ProgramState::SetUniform(GLuint program, GLint location, GLsizei count, const T* value, GLenum type) { - MG_Util::Debug::LogD("MG_State: Program: SetUniform called, program=%u, location=%d, count=%d, type=0x%X", - program, location, count, type); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: SetUniform error: invalid program id %u", program); - return GL_INVALID_VALUE; - } - if (location < -1) { - MG_Util::Debug::LogE("MG_State: Program: SetUniform error: invalid location %d", location); - return GL_INVALID_VALUE; - } - if (count < 0) { - MG_Util::Debug::LogE("MG_State: Program: SetUniform error: invalid count %d", count); - return GL_INVALID_VALUE; - } - if (location == -1) { - MG_Util::Debug::LogW("MG_State: Program: SetUniform warning: location -1, no-op"); - return GL_NO_ERROR; - } - - ProgramObject& prog = programs_[program]; - std::string uniformName; - for (const auto& pair : prog.uniformLocations) { - if (pair.second == location) { - uniformName = pair.first; - break; - } - } - if (uniformName.empty()) { - MG_Util::Debug::LogE("MG_State: Program: SetUniform error: no uniform at location %d in program %u", - location, program); - return GL_INVALID_OPERATION; - } - - UniformValue& uniform = prog.uniformValues[uniformName]; - - uniform.setData(type, count, value); - MG_Util::Debug::LogD("MG_State: Program: SetUniform success: %s set", uniformName.c_str()); - return GL_NO_ERROR; -} - -template -GLenum ProgramState::SetUniformMatrix(GLuint program, GLint location, GLsizei count, GLboolean transpose, const T* value, GLenum matrixType) { - MG_Util::Debug::LogD("MG_State: Program: SetUniformMatrix called, program=%u, location=%d, count=%d, matrixType=0x%X", - program, location, count, matrixType); - (void)transpose; - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: SetUniformMatrix error: invalid program id %u", program); - return GL_INVALID_VALUE; - } - if (location < -1) { - MG_Util::Debug::LogE("MG_State: Program: SetUniformMatrix error: invalid location %d", location); - return GL_INVALID_VALUE; - } - if (count < 0) { - MG_Util::Debug::LogE("MG_State: Program: SetUniformMatrix error: invalid count %d", count); - return GL_INVALID_VALUE; - } - if (location == -1) { - MG_Util::Debug::LogW("MG_State: Program: SetUniformMatrix warning: location -1, no-op"); - return GL_NO_ERROR; - } - - ProgramObject& prog = programs_[program]; - std::string uniformName; - for (const auto& pair : prog.uniformLocations) { - if (pair.second == location) { - uniformName = pair.first; - break; - } - } - if (uniformName.empty()) { - MG_Util::Debug::LogE("MG_State: Program: SetUniformMatrix error: no uniform at location %d in program %u", - location, program); - return GL_INVALID_OPERATION; - } - - UniformValue& uniform = prog.uniformValues[uniformName]; - uniform.setData(matrixType, count, value); - MG_Util::Debug::LogD("MG_State: Program: SetUniformMatrix success: %s set", uniformName.c_str()); - return GL_NO_ERROR; -} - -#define IMPLEMENT_UNIFORM_FUNCTIONS(type, suffix, vecType) \ -void ProgramState::UpdateUniform##suffix##1(GLint location, type v0) { \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "1 called, location=%d", location); \ - SetUniform(currentProgram_, location, 1, &v0, vecType); \ -} \ -void ProgramState::UpdateUniform##suffix##2(GLint location, type v0, type v1) { \ - type values[2] = {v0, v1}; \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "2 called, location=%d", location); \ - SetUniform(currentProgram_, location, 1, values, vecType); \ -} \ -void ProgramState::UpdateUniform##suffix##3(GLint location, type v0, type v1, type v2) { \ - type values[3] = {v0, v1, v2}; \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "3 called, location=%d", location); \ - SetUniform(currentProgram_, location, 1, values, vecType); \ -} \ -void ProgramState::UpdateUniform##suffix##4(GLint location, type v0, type v1, type v2, type v3) { \ - type values[4] = {v0, v1, v2, v3}; \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "4 called, location=%d", location); \ - SetUniform(currentProgram_, location, 1, values, vecType); \ - } \ -void ProgramState::UpdateUniform##suffix##Vector1(GLint location, GLsizei count, const type* value) { \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "Vector1 called, location=%d, count=%d", location, count); \ - SetUniform(currentProgram_, location, count, value, vecType); \ - } \ -void ProgramState::UpdateUniform##suffix##Vector2(GLint location, GLsizei count, const type* value) { \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "Vector2 called, location=%d, count=%d", location, count); \ - SetUniform(currentProgram_, location, count, value, vecType); \ - } \ -void ProgramState::UpdateUniform##suffix##Vector3(GLint location, GLsizei count, const type* value) { \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "Vector3 called, location=%d, count=%d", location, count); \ - SetUniform(currentProgram_, location, count, value, vecType); \ - } \ -void ProgramState::UpdateUniform##suffix##Vector4(GLint location, GLsizei count, const type* value) { \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniform" #suffix "Vector4 called, location=%d, count=%d", location, count); \ - SetUniform(currentProgram_, location, count, value, vecType); \ - } - -IMPLEMENT_UNIFORM_FUNCTIONS(GLfloat, Float, GL_FLOAT_VEC4) -IMPLEMENT_UNIFORM_FUNCTIONS(GLint, Int, GL_INT_VEC4) -IMPLEMENT_UNIFORM_FUNCTIONS(GLuint, UInt, GL_UNSIGNED_INT_VEC4) -IMPLEMENT_UNIFORM_FUNCTIONS(GLboolean, Bool, GL_BOOL_VEC4) -#undef IMPLEMENT_UNIFORM_FUNCTIONS - -#define IMPLEMENT_MATRIX_FUNCTIONS(suffix, matrixType) \ -void ProgramState::UpdateUniformMatrix##suffix##Vector(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) { \ - MG_Util::Debug::LogD("MG_State: Program: UpdateUniformMatrix" #suffix "Vector called, location=%d, count=%d", location, count); \ - SetUniformMatrix(currentProgram_, location, count, transpose, value, matrixType); \ -} - -IMPLEMENT_MATRIX_FUNCTIONS(2x2, GL_FLOAT_MAT2) -IMPLEMENT_MATRIX_FUNCTIONS(3x3, GL_FLOAT_MAT3) -IMPLEMENT_MATRIX_FUNCTIONS(4x4, GL_FLOAT_MAT4) -IMPLEMENT_MATRIX_FUNCTIONS(2x3, GL_FLOAT_MAT2x3) -IMPLEMENT_MATRIX_FUNCTIONS(2x4, GL_FLOAT_MAT2x4) -IMPLEMENT_MATRIX_FUNCTIONS(3x2, GL_FLOAT_MAT3x2) -IMPLEMENT_MATRIX_FUNCTIONS(3x4, GL_FLOAT_MAT3x4) -IMPLEMENT_MATRIX_FUNCTIONS(4x2, GL_FLOAT_MAT4x2) -IMPLEMENT_MATRIX_FUNCTIONS(4x3, GL_FLOAT_MAT4x3) -#undef IMPLEMENT_MATRIX_FUNCTIONS - -GLint ProgramState::QueryProgramUniformLocation(GLuint program, const GLchar* name) { - MG_Util::Debug::LogD("MG_State: Program: QueryProgramUniformLocation called, program=%u, name=%s", program, name); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: QueryProgramUniformLocation error: invalid program id %u", program); - return -1; - } - auto& prog = programs_[program]; - auto it = prog.uniformLocations.find(name); - if (it != prog.uniformLocations.end()) { - GLint loc = it->second; - MG_Util::Debug::LogD("MG_State: Program: QueryProgramUniformLocation success: %s -> %d", name, loc); - return loc; - } - MG_Util::Debug::LogW("MG_State: Program: QueryProgramUniformLocation warning: name '%s' not found", name); - return -1; -} - -bool ProgramState::SetProgramStatus(GLuint program, GLboolean status) { - MG_Util::Debug::LogD("MG_State: Program: SetProgramStatus called, program=%u, status=%d", program, status); - if (!ValidateProgram_(program)) { - MG_Util::Debug::LogE("MG_State: Program: SetProgramStatus error: invalid program id %u", program); - return false; - } - auto& prog = programs_[program]; - if (prog.linked.getValue() != UncertainBool::Unknown) { - MG_Util::Debug::LogW("MG_State: Program: SetProgramStatus warning: link state already known"); - return false; - } - prog.linked = (status == GL_TRUE) ? UncertainBool::True : UncertainBool::False; - prog.linkStatus = status; - MG_Util::Debug::LogD("MG_State: Program: SetProgramStatus success, status=%d", status); - return true; -} - -GLuint ProgramState::GetCurrentProgram() const { - MG_Util::Debug::LogD("MG_State: Program: GetCurrentProgram called, returning %u", currentProgram_); - return currentProgram_; -} - -const ShaderObject* ProgramState::GetShaderObject(GLuint shader) const { - MG_Util::Debug::LogD("MG_State: Program: GetShaderObject called, shader=%u", shader); - auto it = shaders_.find(shader); - if (it == shaders_.end()) { - MG_Util::Debug::LogW("MG_State: Program: GetShaderObject warning: invalid shader id %u", shader); - return nullptr; - } - MG_Util::Debug::LogD("MG_State: Program: GetShaderObject success, returning object"); - return &(it->second); -} - -const ProgramObject* ProgramState::GetProgramObject(GLuint program) const { - MG_Util::Debug::LogD("MG_State: Program: GetProgramObject called, program=%u", program); - auto it = programs_.find(program); - if (it == programs_.end()) { - MG_Util::Debug::LogW("MG_State: Program: GetProgramObject warning: invalid program id %u", program); - return nullptr; - } - MG_Util::Debug::LogD("MG_State: Program: GetProgramObject success, returning object"); - return &(it->second); -} - -bool ProgramState::ValidateProgram_(GLuint program) { - bool ok = programs_.count(program) && !programs_[program].markedForDeletion; - MG_Util::Debug::LogD("MG_State: Program: ValidateProgram_ called, program=%u, result=%d", program, ok); - return ok; -} - -void ProgramState::CleanupShaders_() { - MG_Util::Debug::LogD("MG_State: Program: CleanupShaders_ start"); - auto it = shaders_.begin(); - while (it != shaders_.end()) { - if (it->second.markedForDeletion) { - bool inUse = false; - for (auto& [progId, program] : programs_) { - if (std::find(program.attachedShaders.begin(), - program.attachedShaders.end(), it->first) != program.attachedShaders.end()) { - inUse = true; - break; - } - } - if (!inUse) { - MG_Util::Debug::LogD("MG_State: Program: CleanupShaders_ deleting shader %u", it->first); - // freeShaderIds_.insert(it->first); - it = shaders_.erase(it); - continue; - } - } - ++it; - } - MG_Util::Debug::LogD("MG_State: Program: CleanupShaders_ end"); -} - -// UniformValue -template -void UniformValue::setData(GLenum uniformType, GLsizei count_, const T* values) { - MG_Util::Debug::LogD("MG_State: Program: UniformValue::setData called, type=0x%X, count=%d", uniformType, count_); - //type = uniformType; - count = count_; - - floatData.clear(); - intData.clear(); - uintData.clear(); - boolData.clear(); - - switch (type) { - case GL_FLOAT: numElements = count_ * 1; break; - case GL_FLOAT_VEC2: numElements = count_ * 2; break; - case GL_FLOAT_VEC3: numElements = count_ * 3; break; - case GL_FLOAT_VEC4: numElements = count_ * 4; break; - case GL_INT: numElements = count_ * 1; break; - case GL_INT_VEC2: numElements = count_ * 2; break; - case GL_INT_VEC3: numElements = count_ * 3; break; - case GL_INT_VEC4: numElements = count_ * 4; break; - case GL_UNSIGNED_INT: numElements = count_ * 1; break; - case GL_UNSIGNED_INT_VEC2: numElements = count_ * 2; break; - case GL_UNSIGNED_INT_VEC3: numElements = count_ * 3; break; - case GL_UNSIGNED_INT_VEC4: numElements = count_ * 4; break; - case GL_BOOL: numElements = count_ * 1; break; - case GL_BOOL_VEC2: numElements = count_ * 2; break; - case GL_BOOL_VEC3: numElements = count_ * 3; break; - case GL_BOOL_VEC4: numElements = count_ * 4; break; - case GL_FLOAT_MAT2: numElements = count_ * 4; break; // 2x2 - case GL_FLOAT_MAT3: numElements = count_ * 9; break; // 3x3 - case GL_FLOAT_MAT4: numElements = count_ * 16; break; // 4x4 - case GL_FLOAT_MAT2x3: numElements = count_ * 6; break; // 2x3 - case GL_FLOAT_MAT2x4: numElements = count_ * 8; break; // 2x4 - case GL_FLOAT_MAT3x2: numElements = count_ * 6; break; // 3x2 - case GL_FLOAT_MAT3x4: numElements = count_ * 12; break; // 3x4 - case GL_FLOAT_MAT4x2: numElements = count_ * 8; break; // 4x2 - case GL_FLOAT_MAT4x3: numElements = count_ * 12; break; // 4x3 - case GL_SAMPLER_1D: - case GL_SAMPLER_2D: - case GL_SAMPLER_3D: - case GL_SAMPLER_CUBE: - case GL_SAMPLER_1D_SHADOW: - case GL_SAMPLER_2D_SHADOW: - case GL_SAMPLER_CUBE_SHADOW: - case GL_SAMPLER_1D_ARRAY: - case GL_SAMPLER_2D_ARRAY: - case GL_SAMPLER_1D_ARRAY_SHADOW: - case GL_SAMPLER_2D_ARRAY_SHADOW: - case GL_SAMPLER_BUFFER: - case GL_SAMPLER_2D_MULTISAMPLE: - case GL_SAMPLER_2D_MULTISAMPLE_ARRAY: numElements = count_ * 1; break; - default: - MG_Util::Debug::LogW("MG_State: Program: UniformValue::setData warning: unsupported type 0x%X for numElements", uniformType); - numElements = 1; - return; - } - - for (GLsizei i = 0; i < numElements; ++i) { - switch (uniformType) { - case GL_FLOAT: - case GL_FLOAT_VEC2: - case GL_FLOAT_VEC3: - case GL_FLOAT_VEC4: - case GL_FLOAT_MAT2: - case GL_FLOAT_MAT3: - case GL_FLOAT_MAT4: - case GL_FLOAT_MAT2x3: - case GL_FLOAT_MAT2x4: - case GL_FLOAT_MAT3x2: - case GL_FLOAT_MAT3x4: - case GL_FLOAT_MAT4x2: - case GL_FLOAT_MAT4x3: - floatData.push_back(static_cast(values[i])); - break; - case GL_INT: - case GL_INT_VEC2: - case GL_INT_VEC3: - case GL_INT_VEC4: - case GL_SAMPLER_1D: - case GL_SAMPLER_2D: - case GL_SAMPLER_3D: - case GL_SAMPLER_CUBE: - case GL_SAMPLER_1D_SHADOW: - case GL_SAMPLER_2D_SHADOW: - case GL_SAMPLER_CUBE_SHADOW: - case GL_SAMPLER_1D_ARRAY: - case GL_SAMPLER_2D_ARRAY: - case GL_SAMPLER_1D_ARRAY_SHADOW: - case GL_SAMPLER_2D_ARRAY_SHADOW: - case GL_SAMPLER_BUFFER: - case GL_SAMPLER_2D_MULTISAMPLE: - case GL_SAMPLER_2D_MULTISAMPLE_ARRAY: - intData.push_back(static_cast(values[i])); - break; - case GL_UNSIGNED_INT: - case GL_UNSIGNED_INT_VEC2: - case GL_UNSIGNED_INT_VEC3: - case GL_UNSIGNED_INT_VEC4: - uintData.push_back(static_cast(values[i])); - break; - case GL_BOOL: - case GL_BOOL_VEC2: - case GL_BOOL_VEC3: - case GL_BOOL_VEC4: - boolData.push_back(values[i] ? GL_TRUE : GL_FALSE); - break; - default: - MG_Util::Debug::LogW("MG_State: Program: UniformValue::setData warning: unsupported type 0x%X", uniformType); - break; - } - } - MG_Util::Debug::LogD("MG_State: Program: UniformValue::setData end"); -} diff --git a/MG/MG_GL/State/Program/ProgramState.h b/MG/MG_GL/State/Program/ProgramState.h deleted file mode 100644 index d08588c1..00000000 --- a/MG/MG_GL/State/Program/ProgramState.h +++ /dev/null @@ -1,120 +0,0 @@ -// -// Created by BZLZHH on 2025/5/1. -// - -#ifndef MOBILEGL_PROGRAMSTATE_H -#define MOBILEGL_PROGRAMSTATE_H - -struct ShaderObject { - GLenum type; - std::string source; - std::vector compiledSpirv; - UncertainBool compiled; - GLint compileStatus; - std::string infoLog; - bool markedForDeletion; -}; - -struct UniformValue { - GLenum type; - std::vector floatData; - std::vector intData; - std::vector uintData; - std::vector boolData; - GLsizei count; - GLsizei numElements; - - UniformValue() : type(0), count(0) {} - - template - void setData(GLenum uniformType, GLsizei count_, const T* values); -}; - -struct ProgramObject { - std::vector attachedShaders; - UncertainBool linked; - bool dirty; - GLint linkStatus; - std::string infoLog; - MG_Global::unordered_map attribLocations; - MG_Global::unordered_map uniformLocations; - MG_Global::unordered_map uniformValues; - bool markedForDeletion; -}; - -class ProgramState { -public: - MG_Global::unordered_map shaders_; - MG_Global::unordered_map programs_; - std::set freeShaderIds_; - std::set freeProgramIds_; - GLuint lastShaderId_ = 0; - GLuint lastProgramId_ = 0; - GLuint currentProgram_ = 0; - - ProgramState(); - ~ProgramState(); - - // Return: the validity of the operation, according to OpenGL 3 standard - GLenum CreateShader(GLenum type, GLuint* shader); - GLenum CreateProgram(GLuint* program); - GLenum DeleteShader(GLuint shader); - GLenum DeleteProgram(GLuint program); - GLenum LinkShaderToProgram(GLuint program, GLuint shader); - GLenum UploadShaderSource(GLuint shader, GLsizei count, const GLchar** string, const GLint* length); - GLenum BuildShaderStage(GLuint shader); - GLenum FinalizeProgramPipeline(GLuint program); - GLenum ActivateRenderProgram(GLuint program); - GLenum DefineProgramAttributeLocation(GLuint program, GLuint index, const GLchar* name); - GLint QueryProgramAttributeLocation(GLuint program, const GLchar* name); - GLint QueryProgramUniformLocation(GLuint program, const GLchar* name); - GLenum QueryProgramStateIntVector(GLuint program, GLenum pname, GLint* params); - GLenum QueryShaderStateIntVector(GLuint shader, GLenum pname, GLint* params); - - template - GLenum SetUniform(GLuint program, GLint location, GLsizei count, const T* value, GLenum type); - - template - GLenum SetUniformMatrix(GLuint program, GLint location, GLsizei count, GLboolean transpose, const T* value, GLenum matrixType); - -#define DECLARE_UNIFORM_FUNCTIONS(type, suffix, vecType) \ - void UpdateUniform##suffix##1(GLint location, type v0); \ - void UpdateUniform##suffix##2(GLint location, type v0, type v1); \ - void UpdateUniform##suffix##3(GLint location, type v0, type v1, type v2); \ - void UpdateUniform##suffix##4(GLint location, type v0, type v1, type v2, type v3); \ - void UpdateUniform##suffix##Vector1(GLint location, GLsizei count, const type* value); \ - void UpdateUniform##suffix##Vector2(GLint location, GLsizei count, const type* value); \ - void UpdateUniform##suffix##Vector3(GLint location, GLsizei count, const type* value); \ - void UpdateUniform##suffix##Vector4(GLint location, GLsizei count, const type* value); - DECLARE_UNIFORM_FUNCTIONS(GLfloat, Float, GL_FLOAT) - DECLARE_UNIFORM_FUNCTIONS(GLint, Int, GL_INT) - DECLARE_UNIFORM_FUNCTIONS(GLuint, UInt, GL_UNSIGNED_INT) - DECLARE_UNIFORM_FUNCTIONS(GLboolean, Bool, GL_BOOL) -#undef DECLARE_UNIFORM_FUNCTIONS -#define DECLARE_MATRIX_FUNCTIONS(suffix, matrixType) \ - void UpdateUniformMatrix##suffix##Vector(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - DECLARE_MATRIX_FUNCTIONS(2x2, GL_FLOAT_MAT2) - DECLARE_MATRIX_FUNCTIONS(3x3, GL_FLOAT_MAT3) - DECLARE_MATRIX_FUNCTIONS(4x4, GL_FLOAT_MAT4) - DECLARE_MATRIX_FUNCTIONS(2x3, GL_FLOAT_MAT2x3) - DECLARE_MATRIX_FUNCTIONS(2x4, GL_FLOAT_MAT2x4) - DECLARE_MATRIX_FUNCTIONS(3x2, GL_FLOAT_MAT3x2) - DECLARE_MATRIX_FUNCTIONS(3x4, GL_FLOAT_MAT3x4) - DECLARE_MATRIX_FUNCTIONS(4x2, GL_FLOAT_MAT4x2) - DECLARE_MATRIX_FUNCTIONS(4x3, GL_FLOAT_MAT4x3) -#undef DECLARE_MATRIX_FUNCTIONS - - const ProgramObject* GetProgramObject(GLuint program) const; - const ShaderObject* GetShaderObject(GLuint program) const; - GLuint GetCurrentProgram() const; - bool SetProgramStatus(GLuint program, GLboolean status); - bool SetShaderStatus(GLuint shader, GLboolean status); - -private: - bool ValidateShader_(GLuint shader); - bool ValidateProgram_(GLuint program); - void CleanupShaders_(); - GLint GetUniformLocation_(GLuint program, GLint location, const GLchar* name); -}; - -#endif // MOBILEGL_PROGRAMSTATE_H diff --git a/MG/MG_GL/State/Program/ShaderObject.cpp b/MG/MG_GL/State/Program/ShaderObject.cpp deleted file mode 100644 index d0681ed2..00000000 --- a/MG/MG_GL/State/Program/ShaderObject.cpp +++ /dev/null @@ -1,130 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#include "../../../Includes.h" - -GLenum ProgramState::CreateShader(GLenum type, GLuint* shader) { - MG_Util::Debug::LogD("MG_State: Program: CreateShader called, type=0x%X, shader ptr=%p", type, shader); - if (!shader) { - MG_Util::Debug::LogE("MG_State: Program: CreateShader error: shader pointer is null"); - return GL_INVALID_VALUE; - } - if (type != GL_VERTEX_SHADER && type != GL_FRAGMENT_SHADER) { - MG_Util::Debug::LogE("MG_State: Program: CreateShader error: invalid shader type 0x%X", type); - return GL_INVALID_ENUM; - } - - GLuint id = freeShaderIds_.empty() ? ++lastShaderId_ : *freeShaderIds_.begin(); - if (!freeShaderIds_.empty()) - freeShaderIds_.erase(freeShaderIds_.begin()); - - ShaderObject obj; - obj.type = type; - obj.compiled = {UncertainBool::Unknown, UncertainBool::False}; - obj.compiledSpirv = {}; - obj.markedForDeletion = false; - obj.compileStatus = GL_FALSE; - shaders_[id] = obj; - *shader = id; - MG_Util::Debug::LogD("MG_State: Program: CreateShader success, new shader id=%u", id); - return GL_NO_ERROR; -} - -GLenum ProgramState::DeleteShader(GLuint shader) { - MG_Util::Debug::LogD("MG_State: Program: DeleteShader called, shader id=%u", shader); - if (!ValidateShader_(shader)) { - MG_Util::Debug::LogE("MG_State: Program: DeleteShader error: invalid shader id %u", shader); - return GL_INVALID_VALUE; - } - - bool inUse = false; - for (auto& [progId, program] : programs_) { - if (std::find(program.attachedShaders.begin(), - program.attachedShaders.end(), shader) != program.attachedShaders.end()) { - inUse = true; - break; - } - } - if (inUse) { - shaders_[shader].markedForDeletion = true; - MG_Util::Debug::LogD("MG_State: Program: DeleteShader info: shader %u marked for deferred deletion (in use)", shader); - } else { - shaders_.erase(shader); - // TODO: Prevent the object that uses a freeId from conflicting with legacy object in the backend. - //freeShaderIds_.insert(shader); - MG_Util::Debug::LogD("MG_State: Program: DeleteShader success: shader %u deleted immediately", shader); - } - return GL_NO_ERROR; -} - -GLenum ProgramState::UploadShaderSource(GLuint shader, GLsizei count, - const GLchar** string, const GLint* length) { - MG_Util::Debug::LogD("MG_State: Program: UploadShaderSource called, shader id=%u, count=%d", shader, count); - if (!ValidateShader_(shader)) { - MG_Util::Debug::LogE("MG_State: Program: UploadShaderSource error: invalid shader id %u", shader); - return GL_INVALID_VALUE; - } - if (count < 0) { - MG_Util::Debug::LogE("MG_State: Program: UploadShaderSource error: negative count %d", count); - return GL_INVALID_VALUE; - } - - std::string source; - for (GLsizei i = 0; i < count; ++i) { - const GLchar* str = string[i]; - GLint len = (length && length[i] >= 0) ? length[i] : strlen(str); - source.append(str, len); - } - shaders_[shader].source = std::move(source); - MG_Util::Debug::LogD("MG_State: Program: UploadShaderSource success: source uploaded (length=%zu)", shaders_[shader].source.size()); - return GL_NO_ERROR; -} - -GLenum ProgramState::BuildShaderStage(GLuint shader) { - MG_Util::Debug::LogD("MG_State: Program: BuildShaderStage called, shader id=%u", shader); - if (!ValidateShader_(shader)) { - MG_Util::Debug::LogE("MG_State: Program: BuildShaderStage error: invalid shader id %u", shader); - return GL_INVALID_VALUE; - } - auto& obj = shaders_[shader]; - - std::string compilationLog; - auto spirv = MG_Util::Program::CompileGLSLToSPIRV(obj.type, obj.source, compilationLog); - if (spirv.empty()) { - obj.infoLog = "Shader compilation failed: " + compilationLog; - obj.compiled = UncertainBool::False; - obj.compileStatus = GL_FALSE; - MG_Util::Debug::LogE("MG_State: Program: BuildShaderStage error: %s", compilationLog.c_str()); - return GL_INVALID_OPERATION; - } - obj.compiledSpirv = spirv; - obj.compiled = {UncertainBool::Unknown, UncertainBool::True}; - obj.compileStatus = GL_TRUE; - obj.infoLog.clear(); - MG_Util::Debug::LogD("MG_State: Program: BuildShaderStage success: shader %u compiled to SPIR-V (size=%zu bytes)", shader, spirv.size() * sizeof(unsigned)); - return GL_NO_ERROR; -} - -bool ProgramState::SetShaderStatus(GLuint shader, GLboolean status) { - MG_Util::Debug::LogD("MG_State: Program: SetShaderStatus called, shader id=%u, status=%d", shader, status); - if (!ValidateShader_(shader)) { - MG_Util::Debug::LogE("MG_State: Program: SetShaderStatus error: invalid shader id %u", shader); - return false; - } - auto& obj = shaders_[shader]; - if (obj.compiled.getValue() != UncertainBool::Unknown) { - MG_Util::Debug::LogW("MG_State: Program: SetShaderStatus warning: shader %u status already set", shader); - return false; - } - obj.compiled = (status == GL_TRUE) ? UncertainBool::True : UncertainBool::False; - obj.compileStatus = status; - MG_Util::Debug::LogD("MG_State: Program: SetShaderStatus success: shader %u status=%d", shader, status); - return true; -} - -bool ProgramState::ValidateShader_(GLuint shader) { - bool valid = shaders_.count(shader) && !shaders_[shader].markedForDeletion; - MG_Util::Debug::LogD("MG_State: Program: ValidateShader_ called, shader id=%u, result=%d", shader, valid); - return valid; -} diff --git a/MG/MG_GL/State/Program/ShaderObject.h b/MG/MG_GL/State/Program/ShaderObject.h deleted file mode 100644 index 835c573c..00000000 --- a/MG/MG_GL/State/Program/ShaderObject.h +++ /dev/null @@ -1,8 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#ifndef MOBILEGL_SHADEROBJECT_H -#define MOBILEGL_SHADEROBJECT_H - -#endif //MOBILEGL_SHADEROBJECT_H diff --git a/MG/MG_GL/State/Texture/TextureState.cpp b/MG/MG_GL/State/Texture/TextureState.cpp deleted file mode 100644 index afa00478..00000000 --- a/MG/MG_GL/State/Texture/TextureState.cpp +++ /dev/null @@ -1,1258 +0,0 @@ -// -// Created by BZLZHH on 2025/4/4. -// - -#include "../../../Includes.h" - -// TextureObject - -bool TextureObject::IsImmutable() const { - bool immutable = params.texPropertiesInt.find(GL_TEXTURE_IMMUTABLE_FORMAT) != params.texPropertiesInt.end(); - MG_Util::Debug::LogD("MG_State: Texture: TextureObject::IsImmutable returns %d", immutable); - return immutable; -} - -// TextureUnitState - -void TextureUnitState::Bind(GLenum target, GLuint texture) { - MG_Util::Debug::LogD("MG_State: Texture: TextureUnitState::Bind target=0x%x texture=%u", target, texture); - boundTextures[target] = texture; -} - -GLuint TextureUnitState::GetBoundTexture(GLenum target) { - auto it = boundTextures.find(target); - GLuint tex = (it != boundTextures.end()) ? it->second : 0; - MG_Util::Debug::LogD("MG_State: Texture: TextureUnitState::GetBoundTexture target=0x%x returns %u", target, tex); - return tex; -} - -// TextureState - -TextureState::TextureState() { - textureUnits_.resize(MG_Constants::Texture::MAX_TEXTURE_UNITS); - MG_Util::Debug::LogD("MG_State: Texture: TextureState constructor, textureUnits_=%zu", textureUnits_.size()); -} - -GLint TextureState::GetUnpackParam_(GLenum pname) { - GLint result = MG_State::QueryPixelStoreInt(pname); - MG_Util::Debug::LogD("MG_State: Texture: GetUnpackParam_ pname=0x%x, returns %d", pname, result); - return result; -} - -bool TextureState::IsTextureGenerated(GLuint texture) { - bool isValidTextureNumber = texture != 0; - bool isValidTexture; - bool generated = false; - if (!isValidTextureNumber) { - MG_Util::Debug::LogD("MG_State: Texture: IsTextureGenerated texture == 0"); - } else { - isValidTexture = textures.find(texture) != textures.end(); - if (!isValidTexture) { - MG_Util::Debug::LogD("MG_State: Texture: IsTextureGenerated invalid texture %d", texture); - } else { - generated = textures[texture].generated; - if (!generated) { - MG_Util::Debug::LogD("MG_State: Texture: IsTextureGenerated texture %d not generated", texture, generated); - } - } - } - MG_Util::Debug::LogD("MG_State: Texture: IsTextureGenerated texture=%u returns %d", texture, generated); - return generated; -} - -bool TextureState::IsTexture(GLuint texture) { - bool isTex = texture != 0 && textures.find(texture) != textures.end(); - MG_Util::Debug::LogD("MG_State: Texture: IsTexture texture=%u returns %d", texture, isTex); - return isTex; -} - -GLenum TextureState::BindUnit(GLenum textureUnit) { - MG_Util::Debug::LogD("MG_State: Texture: BindUnit textureUnit=0x%x", textureUnit); - GLuint unitIndex = textureUnit - GL_TEXTURE0; - if (unitIndex < textureUnits_.size()) { - activeTextureUnit_ = unitIndex; - MG_Util::Debug::LogD("MG_State: Texture: BindUnit set activeTextureUnit_=%u", activeTextureUnit_); - } else { - MG_Util::Debug::LogE("MG_State: Texture: BindUnit invalid texture unit 0x%x", textureUnit); - return GL_INVALID_ENUM; - } - return GL_NO_ERROR; -} - -GLenum TextureState::Create(GLuint* texture) { - MG_Util::Debug::LogD("MG_State: Texture: Create called"); - if (!texture) { - MG_Util::Debug::LogE("MG_State: Texture: Create received null pointer"); - return GL_INVALID_VALUE; - } - return CreateN(1, texture); -} - -GLenum TextureState::CreateN(GLsizei n, GLuint* textures) { - MG_Util::Debug::LogD("MG_State: Texture: CreateN called with n=%d", n); - if (n < 1) { - MG_Util::Debug::LogE("MG_State: Texture: CreateN invalid n=%d", n); - return GL_INVALID_VALUE; - } - - for (GLsizei i = 0; i < n; ++i) { - GLuint id = 0; - if (!freeID_.empty()) { - id = freeID_.back(); - freeID_.pop_back(); - MG_Util::Debug::LogD("MG_State: Texture: CreateN reusing free id=%u", id); - } else { - id = lastUsedID_++; - MG_Util::Debug::LogD("MG_State: Texture: CreateN new id=%u", id); - } - TextureObject obj; - obj.generated = true; - this->textures[id] = obj; - textures[i] = id; - static uint64_t counter = 0; - obj.createTimestamp = ++counter; - } - return GL_NO_ERROR; -} - -GLenum TextureState::Bind(GLenum target, GLuint texture) { - MG_Util::Debug::LogD("MG_State: Texture: Bind called with target=0x%x, texture=%u", target, texture); - if (!MG_Constants::Common::Contains(target, MG_Constants::Texture::VALID_TARGETS)) { - MG_Util::Debug::LogE("MG_State: Texture: Bind invalid target=0x%x", target); - return GL_INVALID_ENUM; - } - - if (texture == 0) { - TextureUnitState& unit = textureUnits_[activeTextureUnit_]; - unit.Bind(target, 0); - MG_Util::Debug::LogD("MG_State: Texture: Bind unbind succeeded for target=0x%x", target); - return GL_NO_ERROR; - } - - if (!IsTextureGenerated(texture)) { - MG_Util::Debug::LogE("MG_State: Texture: Bind texture %u not generated", texture); - return GL_INVALID_VALUE; - } - - auto texObjIt = textures.find(texture); - if (texObjIt != textures.end()){ - if (texObjIt->second.target != target && texObjIt->second.target != GL_NONE) { - MG_Util::Debug::LogE("MG_State: Texture: Bind texture %u bound to different target 0x%x", texture, texObjIt->second.target); - return GL_INVALID_OPERATION; - } - } - - TextureUnitState& unit = textureUnits_[activeTextureUnit_]; - TextureObject* texObj = nullptr; - auto it = this->textures.find(texture); - if (it == this->textures.end()) { - MG_Util::Debug::LogW("MG_State: Texture: Bind texture %u not found, creating new (non-generated)", texture); - TextureObject newObj; - newObj.generated = false; - this->textures[texture] = newObj; - texObj = &this->textures[texture]; - } else { - texObj = &it->second; - } - - if (texObj->target == GL_NONE) { - texObj->target = target; - MG_Util::Debug::LogD("MG_State: Texture: Bind setting target=0x%x for texture %u", target, texture); - } else if (texObj->target != target) { - MG_Util::Debug::LogE("MG_State: Texture: Bind mismatch target for texture %u, expected 0x%x, got 0x%x", texture, texObj->target, target); - return GL_INVALID_OPERATION; - } - - unit.Bind(target, texture); - MG_Util::Debug::LogD("MG_State: Texture: Bind succeeded for texture %u on target=0x%x", texture, target); - - return GL_NO_ERROR; -} - -size_t TextureState::CalculatePixelDataSize_(GLenum format, GLenum type, GLsizei width, GLsizei height) { - MG_Util::Debug::LogD("MG_State: Texture: CalculatePixelDataSize_ called format=0x%x, type=0x%x, width=%d, height=%d", format, type, width, height); - - // Unpack Param - GLint rowLength = TextureState::GetUnpackParam_(GL_UNPACK_ROW_LENGTH); - GLint alignment = TextureState::GetUnpackParam_(GL_UNPACK_ALIGNMENT); - GLsizei actualRowLength = (rowLength > 0) ? rowLength : width; - - size_t bytesPerPixel = 0; - switch (type) { - case GL_UNSIGNED_BYTE_3_3_2: - case GL_UNSIGNED_BYTE_2_3_3_REV: - bytesPerPixel = 1; - break; - case GL_UNSIGNED_SHORT_5_6_5: - case GL_UNSIGNED_SHORT_5_6_5_REV: - case GL_UNSIGNED_SHORT_4_4_4_4: - case GL_UNSIGNED_SHORT_4_4_4_4_REV: - case GL_UNSIGNED_SHORT_5_5_5_1: - case GL_UNSIGNED_SHORT_1_5_5_5_REV: - bytesPerPixel = 2; - break; - case GL_UNSIGNED_INT_8_8_8_8: - case GL_UNSIGNED_INT_8_8_8_8_REV: - case GL_UNSIGNED_INT_10_10_10_2: - case GL_UNSIGNED_INT_2_10_10_10_REV: - bytesPerPixel = 4; - default: { - int components = 0; - switch (format) { - case GL_RED: components = 1; break; - case GL_RG: components = 2; break; - case GL_RGB: - case GL_BGR: components = 3; break; - case GL_RGBA: - case GL_BGRA: components = 4; break; - case GL_DEPTH_COMPONENT: components = 1; break; - case GL_DEPTH_STENCIL: components = 2; break; - default: components = 0; break; - } - size_t typeSize = 0; - switch (type) { - case GL_BYTE: - case GL_UNSIGNED_BYTE: typeSize = 1; break; - case GL_SHORT: - case GL_UNSIGNED_SHORT: typeSize = 2; break; - case GL_INT: - case GL_UNSIGNED_INT: - case GL_FLOAT: typeSize = 4; break; - default: typeSize = 0; break; - } - bytesPerPixel = components * typeSize; - break; - } - } - - size_t rowSize = actualRowLength * bytesPerPixel; - size_t alignedRowSize = (rowSize + (alignment - 1)) & ~(alignment - 1); - - size_t totalSize = alignedRowSize * height; - MG_Util::Debug::LogD("MG_State: Texture: CalculatePixelDataSize_ returns %zu", totalSize); - return totalSize; -} - -GLenum TextureState::Upload2D(GLenum target, GLint level, GLint internalFormat, - GLsizei width, GLsizei height, GLint border, GLenum format, - GLenum type, const void* data) { - MG_Util::Debug::LogD("MG_State: Texture: Upload2D called target=0x%x, level=%d, width=%d, height=%d", - target, level, width, height); - GLenum validity = CheckUploadingTexture2DValidity_(target, level, internalFormat, - width, height, border, format, type, data); - if (validity != GL_NO_ERROR) { - MG_Util::Debug::LogE("MG_State: Texture: Upload2D validation failed with error 0x%x", validity); - return validity; - } - - bool isProxyTexture = (target == GL_PROXY_TEXTURE_1D || target == GL_PROXY_TEXTURE_2D || - target == GL_PROXY_TEXTURE_3D || target == GL_PROXY_TEXTURE_CUBE_MAP || - target == GL_PROXY_TEXTURE_1D_ARRAY || target == GL_PROXY_TEXTURE_2D_ARRAY || - target == GL_PROXY_TEXTURE_RECTANGLE || target == GL_PROXY_TEXTURE_2D_MULTISAMPLE || - target == GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY); - if (isProxyTexture) { - MG_Util::Debug::LogD("MG_State: Texture: Upload2D proxy texture detected"); - TextureObject& proxyTex = proxyTextures_[target]; - auto& mip = proxyTex.params.mipmapData[level]; - mip.width = width; - mip.height = height; - mip.internalFormat = internalFormat; - mip.format = format; - mip.type = type; - proxyTex.generated = true; - proxyTex.target = target; - return GL_NO_ERROR; - } - - GLuint boundTex = textureUnits_[activeTextureUnit_].GetBoundTexture(target); - TextureObject& tex = textures[boundTex]; -// TextureParams::MipmapLevel mip{}; - - auto& mip = tex.params.mipmapData[level]; - mip.width = width; - mip.height = height; - mip.internalFormat = internalFormat; - mip.format = format; - mip.type = type; - mip.dirty = true; - - if (data == nullptr) { - mip.hasData = false; - MG_Util::Debug::LogD("MG_State: Texture: Upload2D data pointer is null"); - } else { - GLint unpackSwapBytes = GetUnpackParam_(GL_UNPACK_SWAP_BYTES); - GLint unpackLSBFirst = GetUnpackParam_(GL_UNPACK_LSB_FIRST); - GLint unpackSkipPixels = GetUnpackParam_(GL_UNPACK_SKIP_PIXELS); - GLint unpackSkipRows = GetUnpackParam_(GL_UNPACK_SKIP_ROWS); - GLint unpackRowLength = GetUnpackParam_(GL_UNPACK_ROW_LENGTH); - GLint unpackAlignment = GetUnpackParam_(GL_UNPACK_ALIGNMENT); - GLint unpackImageHeight = GetUnpackParam_(GL_UNPACK_IMAGE_HEIGHT); - GLint unpackSkipImages = GetUnpackParam_(GL_UNPACK_SKIP_IMAGES); - - bool isDefaultUnpack = (unpackSwapBytes == 0) && (unpackLSBFirst == 0) && - (unpackSkipPixels == 0) && (unpackSkipRows == 0) && - (unpackRowLength == 0) && (unpackAlignment == 4) && - (unpackImageHeight == 0) && (unpackSkipImages == 0); - - size_t bytesPerPixel = CalculateBytesPerPixel_(format, type); - size_t componentSize = GetComponentSize_(type); - - size_t dstRowStride = width * bytesPerPixel; - size_t dstSize = dstRowStride * height; - mip.pixelData.resize(dstSize); - GLubyte *dstData = mip.pixelData.data(); - - if (isDefaultUnpack) { - const GLubyte *srcData = static_cast(data); - size_t srcRowSize = width * bytesPerPixel; - size_t srcRowStride = (srcRowSize + unpackAlignment - 1) & ~(unpackAlignment - 1); - - if (srcRowStride == dstRowStride) { - memcpy(dstData, srcData, dstSize); - MG_Util::Debug::LogD( - "MG_State: Texture: Upload2D uploaded %zu bytes with fast path - block memcpy", dstSize); - } else { - for (GLsizei y = 0; y < height; ++y) { - const GLubyte *srcRow = srcData + y * srcRowStride; - GLubyte *dstRow = dstData + y * dstRowStride; - memcpy(dstRow, srcRow, srcRowSize); - } - MG_Util::Debug::LogD( - "MG_State: Texture: Upload2D uploaded %zu bytes with fast path - row memcpy", dstSize); - } - } else { - GLsizei rowLength = (unpackRowLength > 0) ? unpackRowLength : width; - - size_t srcRowSize = rowLength * bytesPerPixel; - size_t srcRowStride = (srcRowSize + unpackAlignment - 1) & ~(unpackAlignment - 1); - size_t srcImageStride = (unpackImageHeight > 0) ? - srcRowStride * unpackImageHeight : - srcRowStride * height; - - const GLubyte *srcData = static_cast(data); - srcData += unpackSkipImages * srcImageStride; - srcData += unpackSkipRows * srcRowStride; - srcData += unpackSkipPixels * bytesPerPixel; - - for (GLsizei y = 0; y < height; ++y) { - const GLubyte *srcRow = srcData + y * srcRowStride; - GLubyte *dstRow = dstData + y * dstRowStride; - - if (unpackSwapBytes) { - SwapBytesForTexture_(format, type, srcRow, dstRow, width); - } else if (unpackLSBFirst && componentSize == 1) { - ReverseBitOrder_(srcRow, dstRow, width * bytesPerPixel); - } else { - memcpy(dstRow, srcRow, width * bytesPerPixel); - } - } - mip.hasData = true; - MG_Util::Debug::LogD( - "MG_State: Texture: Upload2D uploaded %zu bytes with unpack params", dstSize); - } - } -// tex.params.mipmapData[level] = mip; - return GL_NO_ERROR; -} - -GLenum TextureState::UpdateRegion2D(GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid* data) { - MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D called target=0x%x, level=%d, x=%d, y=%d, w=%d, h=%d", - target, level, xoffset, yoffset, width, height); - - GLenum validity = CheckUpdatingTextureRegion2DValidity_(target, level, xoffset, yoffset, width, height, format, type, data); - if (validity != GL_NO_ERROR) { - MG_Util::Debug::LogE("MG_State: Texture: UpdateRegion2D validation failed with error 0x%x", validity); - return validity; - } - - GLuint boundTex = textureUnits_[activeTextureUnit_].GetBoundTexture(target); - auto& tex = textures[boundTex]; - auto mipIt = tex.params.mipmapData.find(level); - if (mipIt == tex.params.mipmapData.end()) { - MG_Util::Debug::LogE("MG_State: Texture: UpdateRegion2D mipmap level %d not found", level); - return GL_INVALID_OPERATION; - } - TextureParams::MipmapLevel& mip = mipIt->second; - - GLint unpackSwapBytes = GetUnpackParam_(GL_UNPACK_SWAP_BYTES); - GLint unpackLSBFirst = GetUnpackParam_(GL_UNPACK_LSB_FIRST); - GLint unpackRowLength = GetUnpackParam_(GL_UNPACK_ROW_LENGTH); - GLint unpackAlignment = GetUnpackParam_(GL_UNPACK_ALIGNMENT); - GLint unpackSkipPixels = GetUnpackParam_(GL_UNPACK_SKIP_PIXELS); - GLint unpackSkipRows = GetUnpackParam_(GL_UNPACK_SKIP_ROWS); - GLint unpackImageHeight = GetUnpackParam_(GL_UNPACK_IMAGE_HEIGHT); - GLint unpackSkipImages = GetUnpackParam_(GL_UNPACK_SKIP_IMAGES); - - const size_t bytesPerPixel = CalculateBytesPerPixel_(format, type); - const size_t srcSize = CalculatePixelDataSize_(format, type, width, height); - - if (bytesPerPixel == 0) { - MG_Util::Debug::LogE("MG_State: Texture: Invalid format/type combination"); - return GL_INVALID_ENUM; - } - - if (xoffset + width > mip.width || yoffset + height > mip.height) { - MG_Util::Debug::LogE("MG_State: Texture: Update region out of bounds"); - return GL_INVALID_VALUE; - } - - const GLsizei srcRowLength = (unpackRowLength > 0) ? unpackRowLength : width; - const size_t srcRowSize = srcRowLength * bytesPerPixel; - const size_t srcRowStride = (srcRowSize + unpackAlignment - 1) & ~(unpackAlignment - 1); - const size_t srcImageStride = (unpackImageHeight > 0) - ? srcRowStride * unpackImageHeight - : srcRowStride * height; - - const GLubyte* srcData = static_cast(data); - srcData += unpackSkipImages * srcImageStride; - srcData += unpackSkipRows * srcRowStride; - srcData += unpackSkipPixels * bytesPerPixel; - - const size_t requiredSrcSize = (height - 1) * srcRowStride + width * bytesPerPixel; - // TODO: Check the buffer data size. - - const size_t dstRowStride = mip.width * bytesPerPixel; - size_t dstTotalSize = mip.width * mip.height * bytesPerPixel; - if (mip.pixelData.size() < dstTotalSize) { - mip.pixelData.resize(dstTotalSize); - MG_Util::Debug::LogD("MG_State: Texture: Resized pixelData to %zu bytes for mip level %d", dstTotalSize, level); - } - GLubyte* dstData = mip.pixelData.data() + yoffset * dstRowStride + xoffset * bytesPerPixel; - - MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D srcRowStride=%zu, dstRowStride=%zu", srcRowStride, dstRowStride); - MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D srcData=%p, dstData=%p", srcData, dstData); - MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D bytesPerPixel=%zu", bytesPerPixel); - - // Check if fast path is applicable - const bool isDefaultUnpack = (unpackSwapBytes == 0) && (unpackLSBFirst == 0) && - (unpackRowLength == 0) && (unpackAlignment == 4) && - (unpackSkipPixels == 0) && (unpackSkipRows == 0) && - (unpackImageHeight == 0) && (unpackSkipImages == 0); - - if (isDefaultUnpack) { - const size_t copySize = width * bytesPerPixel; - - if (srcRowStride == dstRowStride) { - MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D block memcpy(dst=%p, src=%p, size=%zu) called.", dstData, srcData, width * bytesPerPixel); - memcpy(dstData, srcData, copySize * height); - } else { - for (GLsizei y = 0; y < height; ++y) { - const GLubyte* srcRow = srcData + y * srcRowStride; - GLubyte* dstRow = dstData + y * dstRowStride; - memcpy(dstRow, srcRow, copySize); - MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D row memcpy(dst=%p, src=%p, size=%zu) called.", dstRow, srcRow, width * bytesPerPixel); - } - } - } else { - const size_t componentSize = GetComponentSize_(type); - for (GLsizei y = 0; y < height; ++y) { - const GLubyte* srcRow = srcData + y * srcRowStride; - GLubyte* dstRow = dstData + y * dstRowStride; - - if (unpackSwapBytes) { - for (GLsizei x = 0; x < width; ++x) { - SwapPixelBytes_(format, type, srcRow + x*bytesPerPixel, dstRow + x*bytesPerPixel); - } - } else if (unpackLSBFirst && componentSize == 1) { - for (size_t i = 0; i < width * bytesPerPixel; ++i) { - dstRow[i] = ReverseBits_(srcRow[i]); - } - } else { - memcpy(dstRow, srcRow, width * bytesPerPixel); - } - } - } - -// for (GLsizei y = 0; y < height; ++y) { -// const GLubyte* srcRow = srcData + y * srcRowStride; -// GLubyte* dstRow = dstData + y * dstRowStride; -// -// if (unpackSwapBytes) { -// for (GLsizei x = 0; x < width; ++x) { -// const GLubyte* srcPixel = srcRow + x * bytesPerPixel; -// GLubyte* dstPixel = dstRow + x * bytesPerPixel; -// SwapPixelBytes_(format, type, srcPixel, dstPixel); -// } -// } else if (unpackLSBFirst && GetComponentSize_(type) == 1) { -// for (size_t i = 0; i < width * bytesPerPixel; ++i) { -// dstRow[i] = ReverseBits_(srcRow[i]); -// } -// } else { -// MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D memcpy(dst=%p, src=%p, size=%zu) called.", dstRow, srcRow, width * bytesPerPixel); -// memcpy(dstRow, srcRow, width * bytesPerPixel); -// } -// } - - mip.hasData = true; - mip.dirty = true; - MG_Util::Debug::LogD("MG_State: Texture: UpdateRegion2D succeeded"); - return GL_NO_ERROR; -} - -GLenum TextureState::SetTexturePropertyFloat(GLenum target, GLenum pname, GLfloat param) { - MG_Util::Debug::LogD("MG_State: Texture: SetTexturePropertyFloat called target=0x%x, pname=0x%x, param=%f", target, pname, param); - if (!MG_Constants::Common::Contains(target, MG_Constants::Texture::VALID_TARGETS)) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyFloat invalid target=0x%x", target); - return GL_INVALID_ENUM; - } - - if (!MG_Constants::Common::Contains(pname, MG_Constants::Texture::VALID_TEXTURE_PARAM_NAMES)) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyFloat invalid pname=0x%x", pname); - return GL_INVALID_ENUM; - } - - switch (pname) { - case GL_TEXTURE_BORDER_COLOR: - break; - case GL_TEXTURE_MIN_LOD: - if (param < -1000.0f){ - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyFloat param for GL_TEXTURE_MIN_LOD too low: %f", param); - return GL_INVALID_VALUE; - } - break; - case GL_TEXTURE_MAX_LOD: - if (param > 1000.0f){ - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyFloat param for GL_TEXTURE_MAX_LOD too high: %f", param); - return GL_INVALID_VALUE; - } - break; - case GL_TEXTURE_LOD_BIAS: - if (param < -1000.0f || param > 1000.0f) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyFloat param for GL_TEXTURE_LOD_BIAS out of range: %f", param); - return GL_INVALID_VALUE; - } - break; - case GL_TEXTURE_SWIZZLE_R: - case GL_TEXTURE_SWIZZLE_G: - case GL_TEXTURE_SWIZZLE_B: - case GL_TEXTURE_SWIZZLE_A: - if (param != GL_ZERO && param != GL_ONE && param != GL_RED && param != GL_GREEN && param != GL_BLUE && param != GL_ALPHA) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyFloat invalid swizzle param=%f", param); - return GL_INVALID_ENUM; - } - break; - default: - break; - } - GLuint boundTex = textureUnits_[activeTextureUnit_].GetBoundTexture(target); - TextureObject& tex = textures[boundTex]; - tex.params.texPropertiesFloat[pname] = param; - MG_Util::Debug::LogD("MG_State: Texture: SetTexturePropertyFloat succeeded for texture %u", boundTex); - return GL_NO_ERROR; -} - -GLenum TextureState::SetTexturePropertyInt(GLenum target, GLenum pname, GLint param) { - MG_Util::Debug::LogD("MG_State: Texture: SetTexturePropertyInt called target=0x%x, pname=0x%x, param=%d", target, pname, param); - if (!MG_Constants::Common::Contains(target, MG_Constants::Texture::VALID_TARGETS)) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyInt invalid target=0x%x", target); - return GL_INVALID_ENUM; - } - - if (!MG_Constants::Common::Contains(pname, MG_Constants::Texture::VALID_TEXTURE_PARAM_NAMES)) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyInt invalid pname=0x%x", pname); - return GL_INVALID_ENUM; - } - - switch (pname) { - case GL_TEXTURE_MIN_FILTER: - case GL_TEXTURE_MAG_FILTER: - if (param != GL_NEAREST && param != GL_LINEAR && param != GL_NEAREST_MIPMAP_NEAREST && - param != GL_LINEAR_MIPMAP_NEAREST && param != GL_NEAREST_MIPMAP_LINEAR && - param != GL_LINEAR_MIPMAP_LINEAR) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyInt invalid filter param=%d", param); - return GL_INVALID_ENUM; - } - break; - case GL_TEXTURE_WRAP_S: - case GL_TEXTURE_WRAP_T: - case GL_TEXTURE_WRAP_R: - if (param != GL_CLAMP_TO_EDGE && param != GL_CLAMP_TO_BORDER && - param != GL_MIRRORED_REPEAT && param != GL_REPEAT) { - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyInt invalid wrap param=%d", param); - return GL_INVALID_ENUM; - } - break; - case GL_TEXTURE_SWIZZLE_R: - case GL_TEXTURE_SWIZZLE_G: - case GL_TEXTURE_SWIZZLE_B: - case GL_TEXTURE_SWIZZLE_A: - if (param != GL_ZERO && param != GL_ONE && param != GL_RED && param != GL_GREEN && param != GL_BLUE && param != GL_ALPHA){ - MG_Util::Debug::LogE("MG_State: Texture: SetTexturePropertyInt invalid swizzle param=%d", param); - return GL_INVALID_ENUM; - } - break; - default: - break; - } - - GLuint boundTex = textureUnits_[activeTextureUnit_].GetBoundTexture(target); - TextureObject& tex = textures[boundTex]; - tex.params.texPropertiesInt[pname] = param; - MG_Util::Debug::LogD("MG_State: Texture: SetTexturePropertyInt succeeded for texture %u", boundTex); - return GL_NO_ERROR; -} - -GLenum TextureState::Delete(GLuint texture) { - MG_Util::Debug::LogD("MG_State: Texture: Delete called for texture=%u", texture); - if (!texture) { - MG_Util::Debug::LogE("MG_State: Texture: Delete received texture 0"); - return GL_INVALID_VALUE; - } - - auto it = this->textures.find(texture); - if (it != this->textures.end()) { - InvalidateTextureInAllUnits_(texture); - this->textures.erase(it); - //freeID_.emplace_back(texture); - MG_Util::Debug::LogD("MG_State: Texture: Delete succeeded for texture=%u", texture); - } else { - MG_Util::Debug::LogW("MG_State: Texture: Delete texture %u not found", texture); - } - return GL_NO_ERROR; -} - -GLenum TextureState::DeleteN(GLsizei n, const GLuint* textures) { - MG_Util::Debug::LogD("MG_State: Texture: DeleteN called with n=%d", n); - if (n < 1) { - MG_Util::Debug::LogE("MG_State: Texture: DeleteN invalid n=%d", n); - return GL_INVALID_VALUE; - } - - for (GLsizei i = 0; i < n; ++i) { - GLuint id = textures[i]; - if (id == 0) continue; - auto it = this->textures.find(id); - if (it != this->textures.end()) { - InvalidateTextureInAllUnits_(id); - this->textures.erase(it); - // TODO: Prevent the object that uses a freeId from conflicting with legacy object in the backend. - //freeID_.emplace_back(id); - MG_Util::Debug::LogD("MG_State: Texture: DeleteN deleted texture=%u", id); - } else { - MG_Util::Debug::LogW("MG_State: Texture: DeleteN texture %u not found", id); - } - } - - return GL_NO_ERROR; -} - - -GLenum TextureState::QueryLevelPropertyIntVector(GLenum target, GLint level, GLenum pname, GLint* params) { - MG_Util::Debug::LogD("MG_State: Texture: QueryLevelPropertyIntVector called target=0x%x, level=%d, pname=0x%x", target, level, pname); - if (!MG_Constants::Common::Contains(target, MG_Constants::Texture::VALID_TARGETS)) { - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector invalid target=0x%x", target); - return GL_INVALID_ENUM; - } - - if (level < 0) { - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector invalid level=%d", level); - return GL_INVALID_VALUE; - } - - if (!MG_Constants::Common::Contains(pname, MG_Constants::Texture::VALID_TEXTURE_PARAM_NAMES)) { - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector invalid pname=0x%x", pname); - return GL_INVALID_ENUM; - } - - if ((target == GL_TEXTURE_RECTANGLE || target == GL_PROXY_TEXTURE_RECTANGLE) && level != 0) { - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector invalid level for rectangle texture"); - return GL_INVALID_VALUE; - } - - GLuint activeUnit = activeTextureUnit_; - if (activeUnit >= textureUnits_.size()) { - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector active texture unit out of range"); - return GL_INVALID_OPERATION; - } - - bool isProxyTexture = (target == GL_PROXY_TEXTURE_1D || target == GL_PROXY_TEXTURE_2D || - target == GL_PROXY_TEXTURE_3D || target == GL_PROXY_TEXTURE_CUBE_MAP || - target == GL_PROXY_TEXTURE_1D_ARRAY || target == GL_PROXY_TEXTURE_2D_ARRAY || - target == GL_PROXY_TEXTURE_RECTANGLE || target == GL_PROXY_TEXTURE_2D_MULTISAMPLE || - target == GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY); - - TextureUnitState& unit = textureUnits_[activeUnit]; - GLuint boundTexture = unit.GetBoundTexture(target); - - if (!isProxyTexture && boundTexture == 0) { - switch (pname) { - case GL_TEXTURE_COMPRESSED_IMAGE_SIZE: - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector no texture bound for compressed image size"); - return GL_INVALID_OPERATION; - case GL_TEXTURE_INTERNAL_FORMAT: - *params = GL_NONE; - break; - case GL_TEXTURE_COMPRESSED: - *params = GL_FALSE; - break; - default: - *params = 0; - break; - } - MG_Util::Debug::LogD("MG_State: Texture: QueryLevelPropertyIntVector returns default value for unbound texture"); - return GL_NO_ERROR; - } - - MG_Global::unordered_map::iterator texIt; - - if (!isProxyTexture) { - texIt = textures.find(boundTexture); - if (texIt == textures.end()) { - *params = 0; - MG_Util::Debug::LogW( - "MG_State: Texture: QueryLevelPropertyIntVector texture %u not found", - boundTexture); - return GL_NO_ERROR; - } - } - - TextureObject& tex = isProxyTexture ? proxyTextures_[target] : texIt->second; - - if (!isProxyTexture && tex.target != target && tex.target != GL_NONE) { - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector texture target mismatch: texture target=0x%x, expected=0x%x", tex.target, target); - return GL_INVALID_OPERATION; - } - - auto mipIt = tex.params.mipmapData.find(level); - if (mipIt == tex.params.mipmapData.end()) { - switch (pname) { - case GL_TEXTURE_COMPRESSED_IMAGE_SIZE: - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector no mipmap level %d for compressed image size", level); - return GL_INVALID_OPERATION; - case GL_TEXTURE_INTERNAL_FORMAT: - *params = GL_NONE; - break; - case GL_TEXTURE_COMPRESSED: - *params = GL_FALSE; - break; - default: - *params = 0; - break; - } - MG_Util::Debug::LogD("MG_State: Texture: QueryLevelPropertyIntVector returns default value for missing mipmap level"); - return GL_NO_ERROR; - } - - const TextureParams::MipmapLevel& mip = mipIt->second; - ComponentSizes sizes = GetComponentSize_s_(mip.internalFormat); - - switch (pname) { - case GL_TEXTURE_WIDTH: - *params = mip.width; - break; - case GL_TEXTURE_HEIGHT: - *params = mip.height; - break; - case GL_TEXTURE_DEPTH: - *params = 1; // Assuming 2D Texture - break; - case GL_TEXTURE_INTERNAL_FORMAT: - *params = mip.internalFormat; - break; - case GL_TEXTURE_RED_SIZE: - case GL_TEXTURE_GREEN_SIZE: - case GL_TEXTURE_BLUE_SIZE: - case GL_TEXTURE_ALPHA_SIZE: - case GL_TEXTURE_DEPTH_SIZE: - case GL_TEXTURE_STENCIL_SIZE: - switch (pname) { - case GL_TEXTURE_RED_SIZE: *params = sizes.red; break; - case GL_TEXTURE_GREEN_SIZE: *params = sizes.green; break; - case GL_TEXTURE_BLUE_SIZE: *params = sizes.blue; break; - case GL_TEXTURE_ALPHA_SIZE: *params = sizes.alpha; break; - case GL_TEXTURE_DEPTH_SIZE: *params = sizes.depth; break; - case GL_TEXTURE_STENCIL_SIZE: *params = sizes.stencil; break; - default: break; - } - break; - case GL_TEXTURE_COMPRESSED: - *params = sizes.isCompressed ? GL_TRUE : GL_FALSE; - break; - case GL_TEXTURE_COMPRESSED_IMAGE_SIZE: - if (!sizes.isCompressed) { - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector texture is not compressed"); - return GL_INVALID_OPERATION; - } - *params = static_cast(mip.pixelData.size()); - break; - default: - MG_Util::Debug::LogE("MG_State: Texture: QueryLevelPropertyIntVector invalid pname=0x%x", pname); - return GL_INVALID_ENUM; - } - MG_Util::Debug::LogD("MG_State: Texture: QueryLevelPropertyIntVector returns %d for pname=0x%x", *params, pname); - return GL_NO_ERROR; -} - -void TextureState::InvalidateTextureInAllUnits_(GLuint texture) { - MG_Util::Debug::LogD("MG_State: Texture: InvalidateTextureInAllUnits_ called for texture=%u", texture); - for (auto& unit : textureUnits_) { - for (auto& [target, tex] : unit.boundTextures) { - if (tex == texture) { - tex = 0; - MG_Util::Debug::LogD("MG_State: Texture: InvalidateTextureInAllUnits_ unset texture for target=0x%x", target); - } - } - } -} - -GLenum TextureState::CheckUploadingTexture2DValidity_(GLenum target, GLint level, GLint internalFormat, - GLsizei width, GLsizei height, GLint border, GLenum format, - GLenum type, const void* data) { - MG_Util::Debug::LogD("MG_State: Texture: CheckUploadingTexture2DValidity_ called target=0x%x, level=%d", target, level); - if (!MG_Constants::Common::Contains(target, MG_Constants::Texture::VALID_TARGETS)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid target=0x%x", target); - return GL_INVALID_ENUM; - } - - if (level < 0) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid level=%d", level); - return GL_INVALID_VALUE; - } - - if ((target == GL_TEXTURE_RECTANGLE || target == GL_PROXY_TEXTURE_RECTANGLE) && level != 0) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid level for rectangle texture"); - return GL_INVALID_VALUE; - } - - if (width < 0 || height < 0) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid dimensions width=%d, height=%d", width, height); - return GL_INVALID_VALUE; - } - - if ((target >= GL_TEXTURE_CUBE_MAP_POSITIVE_X && target <= GL_TEXTURE_CUBE_MAP_NEGATIVE_Z) && width != height) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ cube map requires equal width and height"); - return GL_INVALID_ENUM; - } - - if (width > MG_Constants::Texture::MAX_TEXTURE_SIZE) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ width exceeds maximum: %d", width); - return GL_INVALID_VALUE; - } - - if (target == GL_TEXTURE_1D_ARRAY || target == GL_PROXY_TEXTURE_1D_ARRAY) { - if (height > MG_Constants::Texture::MAX_ARRAY_LAYERS) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ height exceeds MAX_ARRAY_LAYERS: %d", height); - return GL_INVALID_VALUE; - } - } else if (height > MG_Constants::Texture::MAX_TEXTURE_SIZE) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ height exceeds maximum: %d", height); - return GL_INVALID_VALUE; - } - - if (!MG_Constants::Common::Contains((GLenum)internalFormat, MG_Constants::Texture::VALID_INTERNAL_FORMATS)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid internalFormat=0x%x", internalFormat); - return GL_INVALID_VALUE; - } - - if (!MG_Constants::Common::Contains((GLenum)format, MG_Constants::Texture::VALID_FORMATS)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid format=0x%x", format); - return GL_INVALID_ENUM; - } - - if (!MG_Constants::Common::Contains((GLenum)type, MG_Constants::Texture::VALID_TYPES)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid type=0x%x", type); - return GL_INVALID_ENUM; - } - - bool typeNeedsRGB = (type == GL_UNSIGNED_BYTE_3_3_2 || type == GL_UNSIGNED_SHORT_5_6_5); - if (typeNeedsRGB && format != GL_RGB) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ type requires RGB but format=0x%x", format); - return GL_INVALID_OPERATION; - } - - bool typeNeedsRGBA = (type == GL_UNSIGNED_SHORT_4_4_4_4 || type == GL_UNSIGNED_INT_8_8_8_8); - if (typeNeedsRGBA && format != GL_RGBA && format != GL_BGRA) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ type requires RGBA but format=0x%x", format); - return GL_INVALID_OPERATION; - } - - bool isDepthInternal = (internalFormat == GL_DEPTH_COMPONENT32 || internalFormat == GL_DEPTH_COMPONENT32F || - internalFormat == GL_DEPTH_COMPONENT24 || internalFormat == GL_DEPTH_COMPONENT16 || - internalFormat == GL_DEPTH32F_STENCIL8 || internalFormat == GL_DEPTH24_STENCIL8 || - internalFormat == GL_DEPTH_COMPONENT || internalFormat == GL_DEPTH_STENCIL); - bool isDepthFormat = (format == GL_DEPTH_COMPONENT || format == GL_DEPTH_STENCIL); - if (isDepthInternal != isDepthFormat) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ depth internal/format mismatch"); - return GL_INVALID_OPERATION; - } - - if (isDepthInternal && (target != GL_TEXTURE_2D && target != GL_PROXY_TEXTURE_2D && - target != GL_TEXTURE_RECTANGLE && target != GL_PROXY_TEXTURE_RECTANGLE)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUploadingTexture2DValidity_ invalid target for depth texture"); - return GL_INVALID_OPERATION; - } - - bool isProxyTexture = (target == GL_PROXY_TEXTURE_1D || target == GL_PROXY_TEXTURE_2D || - target == GL_PROXY_TEXTURE_3D || target == GL_PROXY_TEXTURE_CUBE_MAP || - target == GL_PROXY_TEXTURE_1D_ARRAY || target == GL_PROXY_TEXTURE_2D_ARRAY || - target == GL_PROXY_TEXTURE_RECTANGLE || target == GL_PROXY_TEXTURE_2D_MULTISAMPLE || - target == GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY); - if (!isProxyTexture) { - GLuint boundTex = textureUnits_[activeTextureUnit_].GetBoundTexture(target); - if (boundTex == 0) { - MG_Util::Debug::LogE( - "MG_State: Texture: CheckUploadingTexture2DValidity_ no texture bound for target=0x%x", - target); - return GL_INVALID_OPERATION; - } - - TextureObject &tex = textures[boundTex]; - if (tex.target != target) { - MG_Util::Debug::LogE( - "MG_State: Texture: CheckUploadingTexture2DValidity_ texture target mismatch: texture target=0x%x, expected=0x%x", - tex.target, target); - return GL_INVALID_OPERATION; - } - - if (tex.IsImmutable()) { - MG_Util::Debug::LogE( - "MG_State: Texture: CheckUploadingTexture2DValidity_ texture is immutable"); - return GL_INVALID_OPERATION; - } - } - - MG_Util::Debug::LogD("MG_State: Texture: CheckUploadingTexture2DValidity_ succeeded"); - return GL_NO_ERROR; -} - -GLenum TextureState::CheckUpdatingTextureRegion2DValidity_(GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid* data) { - MG_Util::Debug::LogD("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ called target=0x%x, level=%d, x=%d, y=%d, w=%d, h=%d", - target, level, xoffset, yoffset, width, height); - - if (!MG_Constants::Common::Contains(target, MG_Constants::Texture::VALID_TARGETS)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ invalid target=0x%x", target); - return GL_INVALID_ENUM; - } - - if (level < 0) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ invalid level=%d", level); - return GL_INVALID_VALUE; - } - - if (xoffset < 0 || yoffset < 0) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ negative offset x=%d, y=%d", xoffset, yoffset); - return GL_INVALID_VALUE; - } - - if (width < 0 || height < 0) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ negative dimensions w=%d, h=%d", width, height); - return GL_INVALID_VALUE; - } - - if (!data) { - // TODO: need to impl PBO and then impl here - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ data pointer is null"); - return GL_INVALID_OPERATION ; - } - - GLuint boundTex = textureUnits_[activeTextureUnit_].GetBoundTexture(target); - if (boundTex == 0) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ no texture bound for target=0x%x", target); - return GL_INVALID_OPERATION; - } - - if (!IsTextureGenerated(boundTex)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ texture %u not generated", boundTex); - return GL_INVALID_OPERATION; - } - - const auto& tex = textures[boundTex]; - - if (tex.IsImmutable()) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ texture is immutable"); - return GL_INVALID_OPERATION; - } - - auto mipIt = tex.params.mipmapData.find(level); - if (mipIt == tex.params.mipmapData.end()) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ no mipmap level %d", level); - return GL_INVALID_OPERATION; - } - - if (!MG_Constants::Common::Contains(format, MG_Constants::Texture::VALID_FORMATS)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ invalid format=0x%x", format); - return GL_INVALID_ENUM; - } - - if (!MG_Constants::Common::Contains(type, MG_Constants::Texture::VALID_TYPES)) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ invalid type=0x%x", type); - return GL_INVALID_ENUM; - } - - bool typeNeedsRGB = (type == GL_UNSIGNED_BYTE_3_3_2 || type == GL_UNSIGNED_BYTE_2_3_3_REV || - type == GL_UNSIGNED_SHORT_5_6_5 || type == GL_UNSIGNED_SHORT_5_6_5_REV); - if (typeNeedsRGB && format != GL_RGB) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ type requires RGB format"); - return GL_INVALID_OPERATION; - } - - bool typeNeedsRGBA = (type == GL_UNSIGNED_SHORT_4_4_4_4 || type == GL_UNSIGNED_SHORT_4_4_4_4_REV || - type == GL_UNSIGNED_SHORT_5_5_5_1 || type == GL_UNSIGNED_SHORT_1_5_5_5_REV || - type == GL_UNSIGNED_INT_8_8_8_8 || type == GL_UNSIGNED_INT_8_8_8_8_REV || - type == GL_UNSIGNED_INT_10_10_10_2 || type == GL_UNSIGNED_INT_2_10_10_10_REV); - if (typeNeedsRGBA && format != GL_RGBA && format != GL_BGRA) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ type requires RGBA/BGRA format"); - return GL_INVALID_OPERATION; - } - - const auto& mip = mipIt->second; - if (xoffset + width > mip.width || yoffset + height > mip.height) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ region out of bounds: " - "x=%d+%d > %d or y=%d+%d > %d", - xoffset, width, mip.width, yoffset, height, mip.height); - return GL_INVALID_VALUE; - } - - bool isDepthInternal = (mip.internalFormat == GL_DEPTH_COMPONENT || - mip.internalFormat == GL_DEPTH_COMPONENT16 || - mip.internalFormat == GL_DEPTH_COMPONENT24 || - mip.internalFormat == GL_DEPTH_COMPONENT32F || - mip.internalFormat == GL_DEPTH_STENCIL || - mip.internalFormat == GL_DEPTH24_STENCIL8 || - mip.internalFormat == GL_DEPTH32F_STENCIL8); - - bool isDepthFormat = (format == GL_DEPTH_COMPONENT || format == GL_DEPTH_STENCIL); - if (isDepthInternal != isDepthFormat) { - MG_Util::Debug::LogE("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ format mismatch with internal format"); - return GL_INVALID_OPERATION; - } - MG_Util::Debug::LogD("MG_State: Texture: CheckUpdatingTextureRegion2DValidity_ validated subimage update"); - return GL_NO_ERROR; -} - -ComponentSizes TextureState::GetComponentSize_s_(GLenum internalFormat) { - MG_Util::Debug::LogD("MG_State: Texture: GetComponentSize_s_ called for internalFormat=0x%x", internalFormat); - ComponentSizes sizes = {0}; - switch (internalFormat) { - // Base formats - case GL_R8: - case GL_R8_SNORM: sizes.red = 8; break; - case GL_R16: - case GL_R16_SNORM: - case GL_R16F: sizes.red = 16; break; - case GL_R32F: sizes.red = 32; break; - case GL_R8I: - case GL_R8UI: sizes.red = 8; break; - case GL_R16I: - case GL_R16UI: sizes.red = 16; break; - case GL_R32I: - case GL_R32UI: sizes.red = 32; break; - - case GL_RG8: - case GL_RG8_SNORM: sizes.red = 8; sizes.green = 8; break; - case GL_RG16: - case GL_RG16_SNORM: - case GL_RG16F: sizes.red = 16; sizes.green = 16; break; - case GL_RG32F: sizes.red = 32; sizes.green = 32; break; - case GL_RG8I: - case GL_RG8UI: sizes.red = 8; sizes.green = 8; break; - case GL_RG16I: - case GL_RG16UI: sizes.red = 16; sizes.green = 16; break; - case GL_RG32I: - case GL_RG32UI: sizes.red = 32; sizes.green = 32; break; - - case GL_RGB8: - case GL_RGB8_SNORM: sizes.red = 8; sizes.green = 8; sizes.blue = 8; break; - case GL_RGB16: - case GL_RGB16_SNORM: - case GL_RGB16F: sizes.red = 16; sizes.green = 16; sizes.blue = 16; break; - case GL_RGB32F: sizes.red = 32; sizes.green = 32; sizes.blue = 32; break; - case GL_RGB8I: - case GL_RGB8UI: sizes.red = 8; sizes.green = 8; sizes.blue = 8; break; - case GL_RGB16I: - case GL_RGB16UI: sizes.red = 16; sizes.green = 16; sizes.blue = 16; break; - case GL_RGB32I: - case GL_RGB32UI: sizes.red = 32; sizes.green = 32; sizes.blue = 32; break; - - case GL_RGBA8: - case GL_RGBA8_SNORM: sizes.red = 8; sizes.green = 8; sizes.blue = 8; sizes.alpha = 8; break; - case GL_RGBA16: - case GL_RGBA16_SNORM: - case GL_RGBA16F: sizes.red = 16; sizes.green = 16; sizes.blue = 16; sizes.alpha = 16; break; - case GL_RGBA32F: sizes.red = 32; sizes.green = 32; sizes.blue = 32; sizes.alpha = 32; break; - case GL_RGBA8I: - case GL_RGBA8UI: sizes.red = 8; sizes.green = 8; sizes.blue = 8; sizes.alpha = 8; break; - case GL_RGBA16I: - case GL_RGBA16UI: sizes.red = 16; sizes.green = 16; sizes.blue = 16; sizes.alpha = 16; break; - case GL_RGBA32I: - case GL_RGBA32UI: sizes.red = 32; sizes.green = 32; sizes.blue = 32; sizes.alpha = 32; break; - - // Packed formats - case GL_RGB565: sizes.red = 5; sizes.green = 6; sizes.blue = 5; break; - case GL_RGBA4: sizes.red = 4; sizes.green = 4; sizes.blue = 4; sizes.alpha = 4; break; - case GL_RGB5_A1: sizes.red = 5; sizes.green = 5; sizes.blue = 5; sizes.alpha = 1; break; - case GL_RGB10_A2: - case GL_RGB10_A2UI: sizes.red = 10; sizes.green = 10; sizes.blue = 10; sizes.alpha = 2; break; - case GL_R11F_G11F_B10F: sizes.red = 11; sizes.green = 11; sizes.blue = 10; break; - case GL_RGB9_E5: sizes.red = 9; sizes.green = 9; sizes.blue = 9; break; // shared exponent - - // sRGB formats - case GL_SRGB8: sizes.red = 8; sizes.green = 8; sizes.blue = 8; break; - case GL_SRGB8_ALPHA8: sizes.red = 8; sizes.green = 8; sizes.blue = 8; sizes.alpha = 8; break; - - // Depth/stencil formats - case GL_DEPTH_COMPONENT16: sizes.depth = 16; break; - case GL_DEPTH_COMPONENT24: sizes.depth = 24; break; - case GL_DEPTH_COMPONENT32: - case GL_DEPTH_COMPONENT32F: sizes.depth = 32; break; - case GL_DEPTH24_STENCIL8: sizes.depth = 24; sizes.stencil = 8; break; - case GL_DEPTH32F_STENCIL8: sizes.depth = 32; sizes.stencil = 8; break; - - // Compressed formats - case GL_COMPRESSED_RGB_S3TC_DXT1_EXT: - case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT: - sizes.isCompressed = true; - sizes.red = 5; sizes.green = 6; sizes.blue = 5; - if (internalFormat == GL_COMPRESSED_RGBA_S3TC_DXT1_EXT) sizes.alpha = 1; - break; - case GL_COMPRESSED_RGBA_S3TC_DXT3_EXT: - case GL_COMPRESSED_RGBA_S3TC_DXT5_EXT: - case GL_COMPRESSED_RG_RGTC2: - case GL_COMPRESSED_SIGNED_RG_RGTC2: - case GL_COMPRESSED_RED_RGTC1: - case GL_COMPRESSED_SIGNED_RED_RGTC1: - sizes.isCompressed = true; - break; - - default: - if (internalFormat == GL_RGBA || internalFormat == GL_BGRA || - internalFormat == GL_RGBA_INTEGER || internalFormat == GL_BGRA_INTEGER) { - // Typically matches RGBA8 when no size is specified - sizes.red = 8; sizes.green = 8; sizes.blue = 8; sizes.alpha = 8; - } else if (internalFormat == GL_RGB || internalFormat == GL_BGR || - internalFormat == GL_RGB_INTEGER || internalFormat == GL_BGR_INTEGER) { - sizes.red = 8; sizes.green = 8; sizes.blue = 8; - } else if (internalFormat == GL_RG || internalFormat == GL_RG_INTEGER) { - sizes.red = 8; sizes.green = 8; - } else if (internalFormat == GL_RED || internalFormat == GL_RED_INTEGER) { - sizes.red = 8; - } else if (internalFormat == GL_DEPTH_COMPONENT) { - sizes.depth = 32; // Common default - } else if (internalFormat == GL_DEPTH_STENCIL) { - sizes.depth = 32; sizes.stencil = 8; - } - break; - } - MG_Util::Debug::LogD("MG_State: Texture: GetComponentSize_s_ returns (red=%d, green=%d, blue=%d, alpha=%d, depth=%d, stencil=%d, isCompressed=%d)", - sizes.red, sizes.green, sizes.blue, sizes.alpha, sizes.depth, sizes.stencil, sizes.isCompressed); - return sizes; -} - -size_t TextureState::CalculateBytesPerPixel_(GLenum format, GLenum type) { - switch (type) { - case GL_UNSIGNED_BYTE_3_3_2: - case GL_UNSIGNED_BYTE_2_3_3_REV: - return 1; - case GL_UNSIGNED_SHORT_5_6_5: - case GL_UNSIGNED_SHORT_5_6_5_REV: - case GL_UNSIGNED_SHORT_4_4_4_4: - case GL_UNSIGNED_SHORT_4_4_4_4_REV: - case GL_UNSIGNED_SHORT_5_5_5_1: - case GL_UNSIGNED_SHORT_1_5_5_5_REV: - return 2; - case GL_UNSIGNED_INT_8_8_8_8: - case GL_UNSIGNED_INT_8_8_8_8_REV: - case GL_UNSIGNED_INT_10_10_10_2: - case GL_UNSIGNED_INT_2_10_10_10_REV: - return 4; - default: - break; - } - - int components = 0; - switch (format) { - case GL_RED: - case GL_DEPTH_COMPONENT: - components = 1; - break; - case GL_RG: - case GL_DEPTH_STENCIL: - components = 2; - break; - case GL_RGB: - case GL_BGR: - components = 3; - break; - case GL_RGBA: - case GL_BGRA: - components = 4; - break; - default: - components = 0; - break; - } - - size_t componentSize = GetComponentSize_(type); - return components * componentSize; -} - -size_t TextureState::GetComponentSize_(GLenum type) { - switch (type) { - case GL_BYTE: - case GL_UNSIGNED_BYTE: - return 1; - case GL_SHORT: - case GL_UNSIGNED_SHORT: - case GL_HALF_FLOAT: - return 2; - case GL_INT: - case GL_UNSIGNED_INT: - case GL_FLOAT: - return 4; - case GL_UNSIGNED_BYTE_3_3_2: - case GL_UNSIGNED_BYTE_2_3_3_REV: - return 1; - case GL_UNSIGNED_SHORT_5_6_5: - case GL_UNSIGNED_SHORT_5_6_5_REV: - case GL_UNSIGNED_SHORT_4_4_4_4: - case GL_UNSIGNED_SHORT_4_4_4_4_REV: - case GL_UNSIGNED_SHORT_5_5_5_1: - case GL_UNSIGNED_SHORT_1_5_5_5_REV: - return 2; - case GL_UNSIGNED_INT_8_8_8_8: - case GL_UNSIGNED_INT_8_8_8_8_REV: - case GL_UNSIGNED_INT_10_10_10_2: - case GL_UNSIGNED_INT_2_10_10_10_REV: - return 4; - default: - return 0; - } -} - -void TextureState::SwapBytesForTexture_(GLenum format, GLenum type, const GLubyte* src, GLubyte* dst, GLsizei width) { - size_t componentSize = GetComponentSize_(type); - if (componentSize <= 1) { - memcpy(dst, src, width * componentSize); - return; - } - - for (GLsizei i = 0; i < width; ++i) { - for (size_t j = 0; j < componentSize; ++j) { - dst[i * componentSize + j] = src[i * componentSize + (componentSize - 1 - j)]; - } - } -} - -GLubyte TextureState::ReverseBits_(GLubyte b) { - b = (b & 0xF0) >> 4 | (b & 0x0F) << 4; - b = (b & 0xCC) >> 2 | (b & 0x33) << 2; - b = (b & 0xAA) >> 1 | (b & 0x55) << 1; - return b; -} - -void TextureState::ReverseBitOrder_(const GLubyte* src, GLubyte* dst, size_t byteCount) { - for (size_t i = 0; i < byteCount; ++i) { - dst[i] = ReverseBits_(src[i]); - } -} - -void TextureState::SwapPixelBytes_(GLenum format, GLenum type, const GLubyte* src, GLubyte* dst) { - const size_t size = GetComponentSize_(type); - for (size_t i = 0; i < size; ++i) { - dst[i] = src[size - 1 - i]; - } -} diff --git a/MG/MG_GL/State/Texture/TextureState.h b/MG/MG_GL/State/Texture/TextureState.h deleted file mode 100644 index d186f85a..00000000 --- a/MG/MG_GL/State/Texture/TextureState.h +++ /dev/null @@ -1,108 +0,0 @@ -// -// Created by BZLZHH on 2025/4/4. -// - -#ifndef MOBILEGL_TEXTURESTATE_H -#define MOBILEGL_TEXTURESTATE_H - -struct ComponentSizes { - GLint red = 0; - GLint green = 0; - GLint blue = 0; - GLint alpha = 0; - GLint depth = 0; - GLint stencil = 0; - bool isCompressed = false; -}; - -struct TextureParams { - MG_Global::unordered_map texPropertiesFloat; - MG_Global::unordered_map texPropertiesInt; - struct MipmapLevel { - GLsizei width = 0; - GLsizei height = 0; - GLenum format = GL_RGBA; - GLenum internalFormat = GL_RGBA; - GLenum type = GL_UNSIGNED_BYTE; - std::vector pixelData; - bool hasData = false; - bool dirty = false; // TODO: encapsulate this with an public API to RHI - }; - MG_Global::unordered_map mipmapData; -}; - -class TextureObject { -public: - bool generated = false; - GLenum target = GL_NONE; - TextureParams params; - const void* data = nullptr; - bool IsImmutable() const; - uint64_t createTimestamp{}; -}; - -class TextureUnitState { -public: - void Bind(GLenum target, GLuint texture); - GLuint GetBoundTexture(GLenum target); - - GLenum activeTarget = GL_TEXTURE_2D; - MG_Global::unordered_map boundTextures; -}; - -class TextureState { -private: - - GLuint lastUsedID_ = 1; -// MG_Global::unordered_set freeIDs_; - std::vector freeID_; - - MG_Global::unordered_map proxyTextures_; - static GLint GetUnpackParam_(GLenum pname); - -public: - TextureState(); - - bool IsTextureGenerated(GLuint texture); - bool IsTexture(GLuint texture); - MG_Global::unordered_map textures; - - - // Return: the validity of the operation, according to OpenGL 3 standard - GLenum BindUnit(GLenum textureUnit); - GLenum Create(GLuint* texture); - GLenum CreateN(GLsizei n, GLuint* textures); - GLenum Bind(GLenum target, GLuint texture); - GLenum Upload2D(GLenum target, GLint level, GLint internalFormat, - GLsizei width, GLsizei height, GLint border, GLenum format, - GLenum type, const void* data); - GLenum UpdateRegion2D(GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid* data); - GLenum SetTexturePropertyInt(GLenum target, GLenum pname, GLint param); - GLenum SetTexturePropertyFloat(GLenum target, GLenum pname, GLfloat param); - GLenum Delete(GLuint texture); - GLenum DeleteN(GLsizei n, const GLuint* textures); - GLenum QueryLevelPropertyIntVector(GLenum target, GLint level, GLenum pname, GLint* params); - - std::vector textureUnits_; - GLuint activeTextureUnit_ = 0; -private: - size_t CalculatePixelDataSize_(GLenum format, GLenum type, GLsizei width, GLsizei height); - void InvalidateTextureInAllUnits_(GLuint texture); - static ComponentSizes GetComponentSize_s_(GLenum internalFormat); - size_t CalculateBytesPerPixel_(GLenum format, GLenum type); - static size_t GetComponentSize_(GLenum type); - void SwapBytesForTexture_(GLenum format, GLenum type, const GLubyte* src, GLubyte* dst, GLsizei width); - static void ReverseBitOrder_(const GLubyte* src, GLubyte* dst, size_t size); - static GLubyte ReverseBits_(GLubyte b); - void SwapPixelBytes_(GLenum format, GLenum type, const GLubyte* src, GLubyte* dst); - GLenum CheckUploadingTexture2DValidity_(GLenum target, GLint level, GLint internalFormat, - GLsizei width, GLsizei height, GLint border, GLenum format, - GLenum type, const void* data); - GLenum CheckUpdatingTextureRegion2DValidity_(GLenum target, GLint level, GLint xoffset, - GLint yoffset, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid* data); -}; - -#endif //MOBILEGL_TEXTURESTATE_H diff --git a/MG/MG_GL/State/VertexArray/VertexArrayState.cpp b/MG/MG_GL/State/VertexArray/VertexArrayState.cpp deleted file mode 100644 index 4c24372b..00000000 --- a/MG/MG_GL/State/VertexArray/VertexArrayState.cpp +++ /dev/null @@ -1,161 +0,0 @@ -// -// Created by BZLZHH on 2025/5/1. -// - -// TODO: Add more gl error check for vertex array state manager. - -#include "../../../Includes.h" - -VertexArrayState::VertexArrayState() { - vaos_[0]; -} - -GLenum VertexArrayState::GenName(GLuint *array) { - MG_Util::Debug::LogD("MG_State: VAO: GenName"); - if (!array) - return GL_INVALID_VALUE; - GLuint id; - if (freeIds_.empty()) { - id = ++lastId_; - } else { - id = *freeIds_.begin(); - freeIds_.erase(freeIds_.begin()); - } - *array = id; - MG_Util::Debug::LogD("MG_State: VAO: Generated new name %d", id); - return GL_NO_ERROR; -} - -GLenum VertexArrayState::GenNameN(GLsizei n, GLuint* arrays) { - MG_Util::Debug::LogD("MG_State: VAO: GenNameN called with n=%d", n); - if (n < 0) - return GL_INVALID_VALUE; - for (GLsizei i = 0; i < n; ++i) { - GLenum result = GenName(&arrays[i]); - if (result != GL_NO_ERROR) { - MG_Util::Debug::LogE("MG_State: VAO: GenNameN failed at index %d with error 0x%x", i, result); - return result; - } - } - MG_Util::Debug::LogD("MG_State: VAO: GenNameN created %d names", n); - return GL_NO_ERROR; -} - -GLenum VertexArrayState::Create(GLuint* array) { - if (array == nullptr) return GL_INVALID_VALUE; - - GLuint id = freeIds_.empty() ? ++lastId_ : *freeIds_.begin(); - if (!freeIds_.empty()) { - freeIds_.erase(freeIds_.begin()); - } - - *array = id; - vaos_[id].generated = true; - return GL_NO_ERROR; -} - -GLenum VertexArrayState::CreateN(GLsizei n, GLuint* arrays) { - if (n < 0) { - return GL_INVALID_VALUE; - } - - if (n > 0 && arrays == nullptr) { - return GL_INVALID_VALUE; - } - - for (GLsizei i = 0; i < n; ++i) { - if (GLenum error = Create(&arrays[i]); error != GL_NO_ERROR) { - return error; - } - } - return GL_NO_ERROR; -} - -GLenum VertexArrayState::Bind(GLuint array) { - MG_Util::Debug::LogD("MG_State: VAO: Bind called for %u", array); - if (array != 0) { - if (!ValidateGeneratedName(array)) { - MG_Util::Debug::LogE("MG_State: VAO: Bind invalid name %u", array); - return GL_INVALID_OPERATION; - } - auto& vao = vaos_[array]; - if (!vao.generated) { - MG_Util::Debug::LogD("MG_State: VAO: Creating VAO %u during bind", array); - vao.generated = true; - } - } - currentVao_ = array; - MG_Util::Debug::LogD("MG_State: VAO: Bound to %u", array); - return GL_NO_ERROR; -} - -bool VertexArrayState::ValidateGeneratedName(GLuint array) { - if (array == 0) - return true; - bool inFreeList = freeIds_.count(array) > 0; - bool valid = (array <= lastId_) && !inFreeList; - MG_Util::Debug::LogD("MG_State: VAO: ValidateGeneratedName %u: %d", array, valid); - return valid; -} - -bool VertexArrayState::ValidateAllocatedHandle(GLuint array) { - bool exists = vaos_.count(array) && vaos_[array].generated; - MG_Util::Debug::LogD("MG_State: VAO: ValidateAllocatedHandle %u: %d", array, exists); - return exists; -} - -GLenum VertexArrayState::EnableAttrib(GLuint index) { - if (!ValidateAllocatedHandle(currentVao_)) - return GL_INVALID_OPERATION; - if (index >= MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS) return GL_INVALID_VALUE; - GetCurrentVAO()->attribs[index].enabled = true; - MG_Util::Debug::LogD("Attrib vaos_[%u].attribs[%u].enabled = %d", currentVao_, index, vaos_[currentVao_].attribs[index].enabled); - - GetCurrentVAO()->attribDirty = true; - return GL_NO_ERROR; -} - -GLenum VertexArrayState::DisableAttrib(GLuint index) { - if (!ValidateAllocatedHandle(currentVao_)) - return GL_INVALID_OPERATION; - if (index >= MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS) return GL_INVALID_VALUE; - GetCurrentVAO()->attribs[index].enabled = false; - MG_Util::Debug::LogD("Attrib vaos_[%u].attribs[%u].enabled = %d", currentVao_, index, vaos_[currentVao_].attribs[index].enabled); - - GetCurrentVAO()->attribDirty = true; - return GL_NO_ERROR; -} - -GLenum VertexArrayState::SetAttribPointer(GLuint index, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, - const void* pointer, bool isInteger, - GLuint currentArrayBuffer) { - if (!ValidateAllocatedHandle(currentVao_)) - return GL_INVALID_OPERATION; - if (index >= MG_Constants::VertexArray::MAX_VERTEX_ATTRIBS) return GL_INVALID_VALUE; - - VertexAttribState state; - state.size = size; - state.type = type; - state.normalized = normalized; - state.stride = stride; - state.pointer = pointer; - state.buffer = currentArrayBuffer; - state.isInteger = isInteger; - state.enabled = vaos_[currentVao_].attribs[index].enabled; - - vaos_[currentVao_].attribs[index] = state; - - GetCurrentVAO()->attribDirty = true; - return GL_NO_ERROR; -} - -GLuint VertexArrayState::GetBoundElementBuffer() { - auto it = vaos_.find(currentVao_); - return (it != vaos_.end()) ? it->second.elementBuffer : 0; -} - -VertexArrayObject* VertexArrayState::GetCurrentVAO() { - auto it = vaos_.find(currentVao_); - return (it != vaos_.end()) ? &it->second : &vaos_.at(0); -} \ No newline at end of file diff --git a/MG/MG_GL/State/VertexArray/VertexArrayState.h b/MG/MG_GL/State/VertexArray/VertexArrayState.h deleted file mode 100644 index d925bb5c..00000000 --- a/MG/MG_GL/State/VertexArray/VertexArrayState.h +++ /dev/null @@ -1,56 +0,0 @@ -// -// Created by BZLZHH on 2025/5/1. -// - -#ifndef MOBILEGL_VERTEXARRAYSTATE_H -#define MOBILEGL_VERTEXARRAYSTATE_H - -struct VertexAttribState { - bool enabled = false; - GLint size = 4; - GLenum type = GL_FLOAT; - GLboolean normalized = GL_FALSE; - GLsizei stride = 0; - const GLvoid* pointer = nullptr; - GLuint buffer = 0; - bool isInteger = false; -}; - -struct VertexArrayObject { - bool generated = false; - bool attribDirty = false; - bool eboDirty = false; - GLuint elementBuffer = 0; - std::array attribs; -}; - -class VertexArrayState { -public: - VertexArrayState(); - - // Return: the validity of the operation, according to OpenGL 3 standard - GLenum GenName(GLuint* array); - GLenum GenNameN(GLsizei n, GLuint* arrays); - GLenum Create(GLuint* array); - GLenum CreateN(GLsizei n, GLuint* arrays); - GLenum Bind(GLuint array); - GLenum EnableAttrib(GLuint index); - GLenum DisableAttrib(GLuint index); - GLenum SetAttribPointer(GLuint index, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, - const void* pointer, bool isInteger, - GLuint currentArrayBuffer); - - GLuint GetBoundElementBuffer(); - VertexArrayObject* GetCurrentVAO(); - bool ValidateGeneratedName(GLuint array); - bool ValidateAllocatedHandle(GLuint array); - - GLuint currentVao_ = 0; - MG_Global::unordered_map vaos_; -private: - std::set freeIds_; - GLuint lastId_ = 0; -}; - -#endif //MOBILEGL_VERTEXARRAYSTATE_H diff --git a/MG/MG_Include/IndexGenerator.hpp b/MG/MG_Include/IndexGenerator.hpp deleted file mode 100644 index 3f62b116..00000000 --- a/MG/MG_Include/IndexGenerator.hpp +++ /dev/null @@ -1,73 +0,0 @@ -// -// Created by yello on 2025-06-27. -// - -#ifndef INDEXGENERATOR_H -#define INDEXGENERATOR_H - -#include -#include // For size_t -#include // For std::min -#include - -template -class IndexGenerator { -public: - // 构造函数 - IndexGenerator() : next_index_(1) {} - explicit IndexGenerator(IndexType n) : next_index_(1) { - is_valid_.reserve(n); - } - - // 生æˆn个新正整数 - void Generate(size_t n, IndexType *indices) { - if (n <= 0) { - return; - } - - // 优先给出被删除的索引 - size_t count_from_freed = std::min(n, freed_indices_.size()); - for (size_t i = 0; i < count_from_freed; ++i) { - indices[i] = freed_indices_.back(); - freed_indices_.pop_back(); - // 标记为有效,确ä¿is_valid_的大å°è¶³å¤Ÿ - if (indices[i] >= is_valid_.size()) { - is_valid_.resize(static_cast(indices[i]) + 1, false); // 0代表无效,1代表有效 - } - is_valid_[indices[i]] = true; // 标记为有效 - } - - // å¦‚æžœè¿˜éœ€è¦æ›´å¤šçš„ç´¢å¼•ï¼Œåˆ™ç”Ÿæˆæ–°çš„索引 - for (size_t i = count_from_freed; i < n; ++i) { - indices[i] = next_index_++; - // ç¡®ä¿is_valid_的大å°è¶³å¤Ÿ - if (indices[i] >= is_valid_.size()) { - is_valid_.resize(static_cast(indices[i]) + 1, false); - } - is_valid_[indices[i]] = true; // 标记为有效 - } - } - - // 删除一个已ç»ç»™å‡ºçš„æ­£æ•´æ•° - void Delete(IndexType index) { - // æ£€æŸ¥ç´¢å¼•æ˜¯å¦æœ‰æ•ˆä¸”未被删除 - // 这里的检查是为了é¿å…é‡å¤åˆ é™¤æˆ–删除未生æˆçš„索引 - if (index < is_valid_.size() && is_valid_[index] == true) { - is_valid_[index] = false; // 标记为无效 - freed_indices_.push_back(index); // 添加到已删除列表中 - } - } - - // 检查一个正整数是å¦ä¹‹å‰å·²ç»è¢«ç»™å‡ºï¼Œå¹¶ä¸”没有被删除 - bool IsValid(IndexType index) const { - // 如果索引超出is_valid_的范围,或者对应的ä½ç½®æ˜¯0,则认为无效 - return index < is_valid_.size() && is_valid_[index] == true; - } - -private: - IndexType next_index_; // 下一个将è¦ç”Ÿæˆçš„æ­£æ•´æ•° - std::vector freed_indices_; // 存储被删除的索引 - std::vector is_valid_; // æ ‡è®°ç´¢å¼•æ˜¯å¦æœ‰æ•ˆã€‚0代表无效,1代表有效。 -}; - -#endif //INDEXGENERATOR_H diff --git a/MG/MG_Include/UncertainBool.hpp b/MG/MG_Include/UncertainBool.hpp deleted file mode 100644 index b7a52d93..00000000 --- a/MG/MG_Include/UncertainBool.hpp +++ /dev/null @@ -1,127 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#pragma once -#include -#include -#include - -class UncertainBool { -public: - enum Value { False = 0, True = 1, Unknown = 2 }; - - UncertainBool() : value_(False), default_(false) {} - - explicit UncertainBool(bool b) : value_(b ? True : False), default_(false) {} - - UncertainBool(Value val, bool def) : value_(val), default_(def) { - validateValue(); - } - - UncertainBool(bool val, bool def) : value_(val ? True : False), default_(def) { - validateValue(); - } - - UncertainBool& operator=(Value val) { - value_ = val; - validateValue(); - return *this; - } - - UncertainBool& operator=(bool b) { - value_ = b ? True : False; - return *this; - } - - UncertainBool& operator=(std::initializer_list> init) { - if (init.size() != 1) throw std::invalid_argument("Invalid initializer"); - value_ = init.begin()->first ? True : False; - default_ = init.begin()->second; - return *this; - } - - explicit operator bool() const { - return toBool(); - } - - bool toBool() const { - if (value_ == True) return true; - else if (value_ == False) return false; - else return default_; - } - - UncertainBool operator!() const { - return {static_cast(*this) ? False : True, false}; - } - - bool operator==(const UncertainBool& rhs) const { - return static_cast(*this) == static_cast(rhs); - } - bool operator!=(const UncertainBool& rhs) const { return !(*this == rhs); } - - friend UncertainBool operator&&(const UncertainBool& lhs, const UncertainBool& rhs) { - bool actualDefault = lhs.default_ && rhs.default_; - if(lhs.value_ == False || rhs.value_ == False) return {False,actualDefault}; - else if(lhs.value_ == True && rhs.value_ == True) return {True,actualDefault}; - else return {Unknown, actualDefault}; - } - - friend UncertainBool operator||(const UncertainBool& lhs, const UncertainBool& rhs) { - bool actualDefault = lhs.default_ || rhs.default_; - if(lhs.value_ == True || rhs.value_ == True) return {True,actualDefault}; - else if(lhs.value_ == False && rhs.value_ == False) return {False,actualDefault}; - else return {Unknown, actualDefault}; - } - - friend UncertainBool operator&&(bool lhs,const UncertainBool& rhs){ - return UncertainBool(lhs, lhs) && rhs; - } - - friend UncertainBool operator||(bool lhs,const UncertainBool& rhs){ - return UncertainBool(lhs, lhs) || rhs; - } - - UncertainBool& operator&=(const UncertainBool& rhs) { - *this = *this && rhs; - return *this; - } - - UncertainBool& operator|=(const UncertainBool& rhs) { - *this = *this || rhs; - return *this; - } - - UncertainBool& operator=(std::initializer_list> init) { - if (init.size() != 1) throw std::invalid_argument("Invalid initializer"); - value_ = init.begin()->first; - default_ = init.begin()->second; - validateValue(); - return *this; - } - - Value getValue() const { return value_; } - bool getDefault() const { return default_; } - -private: - Value value_; - bool default_; - - void validateValue() { - if (value_ != False && value_ != True && value_ != Unknown) { - throw std::invalid_argument("Invalid value"); - } - } -}; - -inline UncertainBool operator!(const UncertainBool& lhs) { - return lhs.operator!(); -} - -inline bool operator==(bool lhs, const UncertainBool& rhs) { - return static_cast(rhs) == lhs; -} - -inline bool operator!=(bool lhs, const UncertainBool& rhs) { - return !(lhs == rhs); -} \ No newline at end of file diff --git a/MG/MG_RHI/GLES/Test/TestDrawing.cpp b/MG/MG_RHI/GLES/Test/TestDrawing.cpp deleted file mode 100644 index ead4cc37..00000000 --- a/MG/MG_RHI/GLES/Test/TestDrawing.cpp +++ /dev/null @@ -1,240 +0,0 @@ -// -// Created by BZLZHH on 2025/4/26. -// - -#include "../../../Includes.h" - -namespace MG_RHI::GLES::Test { - constexpr int DISPLAY_COLUMNS = 8; - constexpr int DISPLAY_ROWS = 10; - constexpr int MAX_DISPLAY_TEXTURES = DISPLAY_COLUMNS * DISPLAY_ROWS; - - bool IsTextureComplete(const TextureObject& tex) { - return !tex.params.mipmapData.empty(); - } - - bool CheckShaderCompileStatus(GLuint shader, const char* type) { -#if BACKEND_TYPE == BACKEND_GLES - GLint success; - ::GLES::glGetShaderiv(shader, GL_COMPILE_STATUS, &success); - if (!success) { - GLchar infoLog[512]; - ::GLES::glGetShaderInfoLog(shader, 512, NULL, infoLog); - MG_Util::Debug::LogE("Shader compilation error (%s): %s", type, infoLog); - return false; - } -#endif - return true; - } - - bool CheckProgramLinkStatus(GLuint program) { -#if BACKEND_TYPE == BACKEND_GLES - GLint success; - ::GLES::glGetProgramiv(program, GL_LINK_STATUS, &success); - if (!success) { - GLchar infoLog[512]; - ::GLES::glGetProgramInfoLog(program, 512, NULL, infoLog); - MG_Util::Debug::LogE("Program link error: %s", infoLog); - return false; - } -#endif - return true; - } - - // TODO: Use the textures state from MG_RHI(another state?) rather than directly from MG_State - void DrawAllTextures() { -#if BACKEND_TYPE == BACKEND_GLES - ::GLES::glClearColor(1,1,1,1); - ::GLES::glClear(GL_COLOR_BUFFER_BIT); - - struct ScreenResources { - GLuint program = 0; - GLuint quadVAO = 0; - GLuint quadVBO = 0; - GLint uTexLoc = -1; - GLint uMVPLoc = -1; - MG_Global::unordered_map textureCache; - MG_Global::unordered_map textureDirty; - }; - - static ScreenResources sRes; - static glm::ivec2 lastScreenSize{0, 0}; - - GLint viewport[4]; - ::GLES::glGetIntegerv(GL_VIEWPORT, viewport); - - const glm::ivec2 screenSize(viewport[2], viewport[3]); - - if (screenSize != lastScreenSize) { - if (sRes.quadVAO) { - ::GLES::glDeleteVertexArrays(1, &sRes.quadVAO); - ::GLES::glDeleteBuffers(1, &sRes.quadVBO); - sRes.quadVAO = sRes.quadVBO = 0; - } - lastScreenSize = screenSize; - } - - if (!sRes.program) { - const char* vsSrc = R"(#version 320 es - layout(location=0) in vec2 aPos; - layout(location=1) in vec2 aTexUV; - out vec2 vUV; - uniform mat4 uMVP; - void main() { - gl_Position = uMVP * vec4(aPos, 0.0, 1.0); - vUV = aTexUV; - })"; - - const char* fsSrc = R"(#version 320 es - precision mediump float; - in vec2 vUV; - uniform sampler2D uTex; - out vec4 FragColor; - void main() { - FragColor = texture(uTex, vUV); - })"; - - GLuint vs = ::GLES::glCreateShader(GL_VERTEX_SHADER); - ::GLES::glShaderSource(vs, 1, &vsSrc, NULL); - ::GLES::glCompileShader(vs); - if (!CheckShaderCompileStatus(vs, "vertex")) return; - - GLuint fs = ::GLES::glCreateShader(GL_FRAGMENT_SHADER); - ::GLES::glShaderSource(fs, 1, &fsSrc, NULL); - ::GLES::glCompileShader(fs); - if (!CheckShaderCompileStatus(fs, "fragment")) return; - - sRes.program = ::GLES::glCreateProgram(); - ::GLES::glAttachShader(sRes.program, vs); - ::GLES::glAttachShader(sRes.program, fs); - ::GLES::glLinkProgram(sRes.program); - if (!CheckProgramLinkStatus(sRes.program)) return; - - sRes.uTexLoc = ::GLES::glGetUniformLocation(sRes.program, "uTex"); - sRes.uMVPLoc = ::GLES::glGetUniformLocation(sRes.program, "uMVP"); - - ::GLES::glDeleteShader(vs); - ::GLES::glDeleteShader(fs); - } - - if (!sRes.quadVAO) { - const float margin = 0.01f; - const float gridWidth = (2.0f - 2*margin) / DISPLAY_COLUMNS; - const float gridHeight = (2.0f - 2*margin) / DISPLAY_ROWS; - - std::vector vertices; - vertices.reserve(MAX_DISPLAY_TEXTURES * 16); - - for (int col = 0; col < DISPLAY_COLUMNS; ++col) { - for (int row = 0; row < DISPLAY_ROWS; ++row) { - const float xStart = -1.0f + margin + col * gridWidth; - const float yStart = -1.0f + margin + row * gridHeight; - const float xEnd = xStart + gridWidth - margin; - const float yEnd = yStart + gridHeight - margin; - - vertices.insert(vertices.end(), { - xStart, yStart, 0.0f, 0.0f, - xEnd, yStart, 1.0f, 0.0f, - xEnd, yEnd, 1.0f, 1.0f, - xStart, yEnd, 0.0f, 1.0f - }); - } - } - - ::GLES::glGenVertexArrays(1, &sRes.quadVAO); - ::GLES::glGenBuffers(1, &sRes.quadVBO); - ::GLES::glBindVertexArray(sRes.quadVAO); - ::GLES::glBindBuffer(GL_ARRAY_BUFFER, sRes.quadVBO); - ::GLES::glBufferData(GL_ARRAY_BUFFER, - vertices.size() * sizeof(float), - vertices.data(), - GL_STATIC_DRAW - ); - - ::GLES::glEnableVertexAttribArray(0); - ::GLES::glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, - 4 * sizeof(float), (void*)0 - ); - ::GLES::glEnableVertexAttribArray(1); - ::GLES::glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, - 4 * sizeof(float), (void*)(2 * sizeof(float)) - ); - ::GLES::glBindVertexArray(0); - } - - std::vector> sortedTextures; - for (auto&& [stateID, texObj] : MG_State_T::textureState->textures) { - if (!texObj.generated || texObj.target != GL_TEXTURE_2D) continue; - if (texObj.params.mipmapData.empty()) continue; - sortedTextures.emplace_back(stateID, &texObj); - } - std::sort(sortedTextures.begin(), sortedTextures.end(), - [](auto& a, auto& b) { - return a.second->createTimestamp > b.second->createTimestamp; - } - ); - sortedTextures.resize(std::min(sortedTextures.size(), MAX_DISPLAY_TEXTURES)); - - for (auto&& [stateID, texObj] : sortedTextures) { - auto& dirtyFlag = sRes.textureDirty[stateID]; - bool needCreate = !sRes.textureCache.count(stateID); - - if (needCreate) { - GLuint glTexID; - ::GLES::glGenTextures(1, &glTexID); - sRes.textureCache[stateID] = glTexID; - dirtyFlag = true; - } - - if (dirtyFlag || needCreate) { - const auto& mip0 = texObj->params.mipmapData.begin()->second; - if (mip0.hasData) { - GLuint glTexID = sRes.textureCache[stateID]; - ::GLES::glBindTexture(GL_TEXTURE_2D, glTexID); - ::GLES::glTexImage2D(GL_TEXTURE_2D, 0, mip0.internalFormat, - mip0.width, mip0.height, 0, - mip0.format, mip0.type, mip0.pixelData.data() - ); - ::GLES::glTexParameteri(GL_TEXTURE_2D, - GL_TEXTURE_MIN_FILTER, GL_LINEAR); - ::GLES::glTexParameteri(GL_TEXTURE_2D, - GL_TEXTURE_MAG_FILTER, GL_LINEAR); - ::GLES::glTexParameteri(GL_TEXTURE_2D, - GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); - ::GLES::glTexParameteri(GL_TEXTURE_2D, - GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); - if (texObj->params.mipmapData.size() > 1) { - ::GLES::glGenerateMipmap(GL_TEXTURE_2D); - } - dirtyFlag = false; - } - } - } - - GLboolean origDepthTest = ::GLES::glIsEnabled(GL_DEPTH_TEST); - GLint origProgram, origViewport[4]; - ::GLES::glGetIntegerv(GL_VIEWPORT, origViewport); - ::GLES::glGetIntegerv(GL_CURRENT_PROGRAM, &origProgram); - - ::GLES::glDisable(GL_DEPTH_TEST); - ::GLES::glUseProgram(sRes.program); - ::GLES::glUniformMatrix4fv(sRes.uMVPLoc, 1, GL_FALSE, - &glm::mat4(1.0f)[0][0] - ); - ::GLES::glUniform1i(sRes.uTexLoc, 0); - ::GLES::glBindVertexArray(sRes.quadVAO); - - for (size_t i = 0; i < sortedTextures.size(); ++i) { - const GLuint glTexID = sRes.textureCache[sortedTextures[i].first]; - ::GLES::glActiveTexture(GL_TEXTURE0); - ::GLES::glBindTexture(GL_TEXTURE_2D, glTexID); - ::GLES::glDrawArrays(GL_TRIANGLE_FAN, static_cast(i*4), 4); - } - - if (origDepthTest) ::GLES::glEnable(GL_DEPTH_TEST); - ::GLES::glUseProgram(origProgram); - ::GLES::glViewport(origViewport[0], origViewport[1], - origViewport[2], origViewport[3]); -#endif - } -} \ No newline at end of file diff --git a/MG/MG_RHI/GLES/Test/TestDrawing.h b/MG/MG_RHI/GLES/Test/TestDrawing.h deleted file mode 100644 index 37f1ad1b..00000000 --- a/MG/MG_RHI/GLES/Test/TestDrawing.h +++ /dev/null @@ -1,12 +0,0 @@ -// -// Created by BZLZHH on 2025/4/26. -// - -#ifndef MOBILEGL_TESTDRAWING_H -#define MOBILEGL_TESTDRAWING_H - -namespace MG_RHI::GLES::Test { - void DrawAllTextures(); -} - -#endif //MOBILEGL_TESTDRAWING_H diff --git a/MG/MG_UTIL/Debug/Debug.cpp b/MG/MG_UTIL/Debug/Debug.cpp deleted file mode 100644 index 98238c3c..00000000 --- a/MG/MG_UTIL/Debug/Debug.cpp +++ /dev/null @@ -1,1996 +0,0 @@ -// -// Created by BZLZHH on 2025/3/15. -// - -#include "../../Includes.h" -#include "BlendState.h" - -namespace MG_Util::Debug { - static FILE* logFile; - - const char* GetOSName() { -#ifdef _WIN32 - return "Windows"; -#elif __ANDROID__ - return "Android"; -#elif __APPLE__ - return "macOS"; -#elif __linux__ - return "Linux"; -#else - return "Unknown"; -#endif - } - - std::string GetCurrentThreadName() { - char buffer[256] = {0}; - -#ifdef _WIN32 - PWSTR description = nullptr; - if (SUCCEEDED(GetThreadDescription(GetCurrentThread(), &description)) { - WideCharToMultiByte(CP_UTF8, 0, description, -1, buffer, sizeof(buffer), nullptr, nullptr); - LocalFree(description); - } -#elif defined(__ANDROID__) || defined(__linux__) - pthread_getname_np(pthread_self(), buffer, sizeof(buffer)); -#elif defined(__APPLE__) - pthread_getname_np(buffer, sizeof(buffer)); -#endif - - return buffer[0] ? buffer : "Unknown Thread"; - } - - std::string GetCurrentTime() { - auto now = std::chrono::system_clock::now(); - time_t tt = std::chrono::system_clock::to_time_t(now); - struct tm tm{}; - -#ifdef _WIN32 - localtime_s(&tm, &tt); -#else - localtime_r(&tt, &tm); -#endif - - char buffer[9]; // HH:MM:SS - strftime(buffer, sizeof(buffer), "%T", &tm); - return buffer; - } - - template - void LogImpl(LevelType logLevel, - const char* levelTag, - const char* format, - int androidLevel, - va_list args) { - if (MG_Global::Common::LogLevel > logLevel) return; - - std::string header = "[" + GetCurrentTime() + "] [" + - GetOSName() + " " + - GetCurrentThreadName() + "/" + levelTag + "]: "; - - std::string full_format = header + format + "\n"; - -#ifdef __ANDROID__ - if (MG_Global::Common::LogTarget & MG_Constants::Common::LOG_TARGET_ANDROID) { - __android_log_vprint(androidLevel, MG_Constants::RenderName, full_format.c_str(), args); - } -#endif - - if (MG_Global::Common::LogTarget & MG_Constants::Common::LOG_TARGET_CONSOLE) { - vprintf(full_format.c_str(), args); - } - - if ((MG_Global::Common::LogTarget & MG_Constants::Common::LOG_TARGET_FILE) && - MG_Global::Common::LOG_FILE_PATH != nullptr) { - va_list args_copy; - va_copy(args_copy, args); - LogWrite(full_format.c_str(), args_copy); - va_end(args_copy); - } - } - -#define DECLARE_LOG_FUNCTION(name, level) \ -void Log##name(const char* format, ...) { \ - if constexpr (MG_Global::Common::LogLevel <= MG_Constants::Common::LOG_LEVEL_##level) { \ - va_list args; \ - va_start(args, format); \ - LogImpl(MG_Constants::Common::LOG_LEVEL_##level, \ - #level, \ - format, \ - ANDROID_LOG_##level, \ - args); \ - va_end(args); \ - } \ -} - - DECLARE_LOG_FUNCTION(D, DEBUG) - DECLARE_LOG_FUNCTION(W, WARN) - DECLARE_LOG_FUNCTION(E, ERROR) - DECLARE_LOG_FUNCTION(I, INFO) - DECLARE_LOG_FUNCTION(F, FATAL) - -#undef DECLARE_LOG_FUNCTION - - void LogClear() { - if (!MG_Global::Common::LOG_FILE_PATH) - return; - - logFile = fopen(MG_Global::Common::LOG_FILE_PATH, "w"); - if (logFile == nullptr) { - return; - } - fclose(logFile); - } - - void LogInit() { - if (!MG_Global::Common::LOG_FILE_PATH) - return; - - LogClear(); - logFile = fopen(MG_Global::Common::LOG_FILE_PATH, "a"); - } - - void LogWrite(const char* format, va_list args) { - if (!MG_Global::Common::LOG_FILE_PATH || logFile == nullptr) - return; - - vfprintf(logFile, format, args); - va_end(args); - fflush(logFile); -#if FORCE_SYNC_WITH_LOG_FILE == 1 - int fd = fileno(logFile); - fsync(fd); -#endif - } - - const char* GLEnumToString(::GLenum value) { - static char str[128]; - switch (value) { -#define CASE(value) \ - case value: return #value; - //CASE(GL_VERSION_1_0) - //CASE(GL_VERSION_1_1) - CASE(GL_DEPTH_BUFFER_BIT) - CASE(GL_STENCIL_BUFFER_BIT) - CASE(GL_COLOR_BUFFER_BIT) - CASE(GL_FALSE) - CASE(GL_TRUE) - //CASE(GL_POINTS) - //CASE(GL_LINES) - CASE(GL_LINE_LOOP) - CASE(GL_LINE_STRIP) - CASE(GL_TRIANGLES) - CASE(GL_TRIANGLE_STRIP) - CASE(GL_TRIANGLE_FAN) - CASE(GL_QUADS) - CASE(GL_NEVER) - CASE(GL_LESS) - CASE(GL_EQUAL) - CASE(GL_LEQUAL) - CASE(GL_GREATER) - CASE(GL_NOTEQUAL) - CASE(GL_GEQUAL) - CASE(GL_ALWAYS) - //CASE(GL_ZERO) - //CASE(GL_ONE) - CASE(GL_SRC_COLOR) - CASE(GL_ONE_MINUS_SRC_COLOR) - CASE(GL_SRC_ALPHA) - CASE(GL_ONE_MINUS_SRC_ALPHA) - CASE(GL_DST_ALPHA) - CASE(GL_ONE_MINUS_DST_ALPHA) - CASE(GL_DST_COLOR) - CASE(GL_ONE_MINUS_DST_COLOR) - CASE(GL_SRC_ALPHA_SATURATE) - //CASE(GL_NONE) - //CASE(GL_FRONT_LEFT) - CASE(GL_FRONT_RIGHT) - CASE(GL_BACK_LEFT) - CASE(GL_BACK_RIGHT) - CASE(GL_FRONT) - CASE(GL_BACK) - CASE(GL_LEFT) - CASE(GL_RIGHT) - CASE(GL_FRONT_AND_BACK) - //CASE(GL_NO_ERROR) - CASE(GL_INVALID_ENUM) - CASE(GL_INVALID_VALUE) - CASE(GL_INVALID_OPERATION) - CASE(GL_OUT_OF_MEMORY) - CASE(GL_CW) - CASE(GL_CCW) - CASE(GL_POINT_SIZE) - CASE(GL_POINT_SIZE_RANGE) - CASE(GL_POINT_SIZE_GRANULARITY) - CASE(GL_LINE_SMOOTH) - CASE(GL_LINE_WIDTH) - CASE(GL_LINE_WIDTH_RANGE) - CASE(GL_LINE_WIDTH_GRANULARITY) - CASE(GL_POLYGON_MODE) - CASE(GL_POLYGON_SMOOTH) - CASE(GL_CULL_FACE) - CASE(GL_CULL_FACE_MODE) - CASE(GL_FRONT_FACE) - CASE(GL_DEPTH_RANGE) - CASE(GL_DEPTH_TEST) - CASE(GL_DEPTH_WRITEMASK) - CASE(GL_DEPTH_CLEAR_VALUE) - CASE(GL_DEPTH_FUNC) - CASE(GL_STENCIL_TEST) - CASE(GL_STENCIL_CLEAR_VALUE) - CASE(GL_STENCIL_FUNC) - CASE(GL_STENCIL_VALUE_MASK) - CASE(GL_STENCIL_FAIL) - CASE(GL_STENCIL_PASS_DEPTH_FAIL) - CASE(GL_STENCIL_PASS_DEPTH_PASS) - CASE(GL_STENCIL_REF) - CASE(GL_STENCIL_WRITEMASK) - CASE(GL_VIEWPORT) - CASE(GL_DITHER) - CASE(GL_BLEND_DST) - CASE(GL_BLEND_SRC) - CASE(GL_BLEND) - CASE(GL_LOGIC_OP_MODE) - CASE(GL_COLOR_LOGIC_OP) - CASE(GL_DRAW_BUFFER) - CASE(GL_READ_BUFFER) - CASE(GL_SCISSOR_BOX) - CASE(GL_SCISSOR_TEST) - CASE(GL_COLOR_CLEAR_VALUE) - CASE(GL_COLOR_WRITEMASK) - CASE(GL_DOUBLEBUFFER) - CASE(GL_STEREO) - CASE(GL_LINE_SMOOTH_HINT) - CASE(GL_POLYGON_SMOOTH_HINT) - CASE(GL_UNPACK_SWAP_BYTES) - CASE(GL_UNPACK_LSB_FIRST) - CASE(GL_UNPACK_ROW_LENGTH) - CASE(GL_UNPACK_SKIP_ROWS) - CASE(GL_UNPACK_SKIP_PIXELS) - CASE(GL_UNPACK_ALIGNMENT) - CASE(GL_PACK_SWAP_BYTES) - CASE(GL_PACK_LSB_FIRST) - CASE(GL_PACK_ROW_LENGTH) - CASE(GL_PACK_SKIP_ROWS) - CASE(GL_PACK_SKIP_PIXELS) - CASE(GL_PACK_ALIGNMENT) - CASE(GL_MAX_TEXTURE_SIZE) - CASE(GL_MAX_VIEWPORT_DIMS) - CASE(GL_SUBPIXEL_BITS) - CASE(GL_TEXTURE_1D) - CASE(GL_TEXTURE_2D) - CASE(GL_POLYGON_OFFSET_UNITS) - CASE(GL_POLYGON_OFFSET_POINT) - CASE(GL_POLYGON_OFFSET_LINE) - CASE(GL_POLYGON_OFFSET_FILL) - CASE(GL_POLYGON_OFFSET_FACTOR) - CASE(GL_TEXTURE_BINDING_1D) - CASE(GL_TEXTURE_BINDING_2D) - CASE(GL_TEXTURE_WIDTH) - CASE(GL_TEXTURE_HEIGHT) - CASE(GL_TEXTURE_INTERNAL_FORMAT) - CASE(GL_TEXTURE_BORDER_COLOR) - CASE(GL_TEXTURE_RED_SIZE) - CASE(GL_TEXTURE_GREEN_SIZE) - CASE(GL_TEXTURE_BLUE_SIZE) - CASE(GL_TEXTURE_ALPHA_SIZE) - CASE(GL_DONT_CARE) - CASE(GL_FASTEST) - CASE(GL_NICEST) - CASE(GL_BYTE) - CASE(GL_UNSIGNED_BYTE) - CASE(GL_SHORT) - CASE(GL_UNSIGNED_SHORT) - CASE(GL_INT) - CASE(GL_UNSIGNED_INT) - CASE(GL_FLOAT) - CASE(GL_DOUBLE) - CASE(GL_STACK_OVERFLOW) - CASE(GL_STACK_UNDERFLOW) - CASE(GL_CLEAR) - CASE(GL_AND) - CASE(GL_AND_REVERSE) - CASE(GL_COPY) - CASE(GL_AND_INVERTED) - CASE(GL_NOOP) - CASE(GL_XOR) - CASE(GL_OR) - CASE(GL_NOR) - CASE(GL_EQUIV) - CASE(GL_INVERT) - CASE(GL_OR_REVERSE) - CASE(GL_COPY_INVERTED) - CASE(GL_OR_INVERTED) - CASE(GL_NAND) - CASE(GL_SET) - CASE(GL_TEXTURE) - CASE(GL_COLOR) - CASE(GL_DEPTH) - CASE(GL_STENCIL) - CASE(GL_STENCIL_INDEX) - CASE(GL_DEPTH_COMPONENT) - CASE(GL_RED) - CASE(GL_GREEN) - CASE(GL_BLUE) - CASE(GL_ALPHA) - CASE(GL_RGB) - CASE(GL_RGBA) - CASE(GL_POINT) - CASE(GL_LINE) - CASE(GL_FILL) - CASE(GL_KEEP) - CASE(GL_REPLACE) - CASE(GL_INCR) - CASE(GL_DECR) - CASE(GL_VENDOR) - CASE(GL_RENDERER) - //CASE(GL_VERSION) - CASE(GL_EXTENSIONS) - CASE(GL_NEAREST) - CASE(GL_LINEAR) - CASE(GL_NEAREST_MIPMAP_NEAREST) - CASE(GL_LINEAR_MIPMAP_NEAREST) - CASE(GL_NEAREST_MIPMAP_LINEAR) - CASE(GL_LINEAR_MIPMAP_LINEAR) - CASE(GL_TEXTURE_MAG_FILTER) - CASE(GL_TEXTURE_MIN_FILTER) - CASE(GL_TEXTURE_WRAP_S) - CASE(GL_TEXTURE_WRAP_T) - CASE(GL_PROXY_TEXTURE_1D) - CASE(GL_PROXY_TEXTURE_2D) - CASE(GL_REPEAT) - CASE(GL_R3_G3_B2) - CASE(GL_RGB4) - CASE(GL_RGB5) - CASE(GL_RGB8) - CASE(GL_RGB10) - CASE(GL_RGB12) - CASE(GL_RGB16) - CASE(GL_RGBA2) - CASE(GL_RGBA4) - CASE(GL_RGB5_A1) - CASE(GL_RGBA8) - CASE(GL_RGB10_A2) - CASE(GL_RGBA12) - CASE(GL_RGBA16) - CASE(GL_VERTEX_ARRAY) - //CASE(GL_VERSION_1_2) - CASE(GL_UNSIGNED_BYTE_3_3_2) - CASE(GL_UNSIGNED_SHORT_4_4_4_4) - CASE(GL_UNSIGNED_SHORT_5_5_5_1) - CASE(GL_UNSIGNED_INT_8_8_8_8) - CASE(GL_UNSIGNED_INT_10_10_10_2) - CASE(GL_TEXTURE_BINDING_3D) - CASE(GL_PACK_SKIP_IMAGES) - CASE(GL_PACK_IMAGE_HEIGHT) - CASE(GL_UNPACK_SKIP_IMAGES) - CASE(GL_UNPACK_IMAGE_HEIGHT) - CASE(GL_TEXTURE_3D) - CASE(GL_PROXY_TEXTURE_3D) - CASE(GL_TEXTURE_DEPTH) - CASE(GL_TEXTURE_WRAP_R) - CASE(GL_MAX_3D_TEXTURE_SIZE) - CASE(GL_UNSIGNED_BYTE_2_3_3_REV) - CASE(GL_UNSIGNED_SHORT_5_6_5) - CASE(GL_UNSIGNED_SHORT_5_6_5_REV) - CASE(GL_UNSIGNED_SHORT_4_4_4_4_REV) - CASE(GL_UNSIGNED_SHORT_1_5_5_5_REV) - CASE(GL_UNSIGNED_INT_8_8_8_8_REV) - CASE(GL_UNSIGNED_INT_2_10_10_10_REV) - CASE(GL_BGR) - CASE(GL_BGRA) - CASE(GL_MAX_ELEMENTS_VERTICES) - CASE(GL_MAX_ELEMENTS_INDICES) - CASE(GL_CLAMP_TO_EDGE) - CASE(GL_TEXTURE_MIN_LOD) - CASE(GL_TEXTURE_MAX_LOD) - CASE(GL_TEXTURE_BASE_LEVEL) - CASE(GL_TEXTURE_MAX_LEVEL) - //CASE(GL_SMOOTH_POINT_SIZE_RANGE) - //CASE(GL_SMOOTH_POINT_SIZE_GRANULARITY) - //CASE(GL_SMOOTH_LINE_WIDTH_RANGE) - //CASE(GL_SMOOTH_LINE_WIDTH_GRANULARITY) - CASE(GL_ALIASED_LINE_WIDTH_RANGE) - //CASE(GL_VERSION_1_3) - CASE(GL_TEXTURE0) - CASE(GL_TEXTURE1) - CASE(GL_TEXTURE2) - CASE(GL_TEXTURE3) - CASE(GL_TEXTURE4) - CASE(GL_TEXTURE5) - CASE(GL_TEXTURE6) - CASE(GL_TEXTURE7) - CASE(GL_TEXTURE8) - CASE(GL_TEXTURE9) - CASE(GL_TEXTURE10) - CASE(GL_TEXTURE11) - CASE(GL_TEXTURE12) - CASE(GL_TEXTURE13) - CASE(GL_TEXTURE14) - CASE(GL_TEXTURE15) - CASE(GL_TEXTURE16) - CASE(GL_TEXTURE17) - CASE(GL_TEXTURE18) - CASE(GL_TEXTURE19) - CASE(GL_TEXTURE20) - CASE(GL_TEXTURE21) - CASE(GL_TEXTURE22) - CASE(GL_TEXTURE23) - CASE(GL_TEXTURE24) - CASE(GL_TEXTURE25) - CASE(GL_TEXTURE26) - CASE(GL_TEXTURE27) - CASE(GL_TEXTURE28) - CASE(GL_TEXTURE29) - CASE(GL_TEXTURE30) - CASE(GL_TEXTURE31) - CASE(GL_ACTIVE_TEXTURE) - CASE(GL_MULTISAMPLE) - CASE(GL_SAMPLE_ALPHA_TO_COVERAGE) - CASE(GL_SAMPLE_ALPHA_TO_ONE) - CASE(GL_SAMPLE_COVERAGE) - CASE(GL_SAMPLE_BUFFERS) - CASE(GL_SAMPLES) - CASE(GL_SAMPLE_COVERAGE_VALUE) - CASE(GL_SAMPLE_COVERAGE_INVERT) - CASE(GL_TEXTURE_CUBE_MAP) - CASE(GL_TEXTURE_BINDING_CUBE_MAP) - CASE(GL_TEXTURE_CUBE_MAP_POSITIVE_X) - CASE(GL_TEXTURE_CUBE_MAP_NEGATIVE_X) - CASE(GL_TEXTURE_CUBE_MAP_POSITIVE_Y) - CASE(GL_TEXTURE_CUBE_MAP_NEGATIVE_Y) - CASE(GL_TEXTURE_CUBE_MAP_POSITIVE_Z) - CASE(GL_TEXTURE_CUBE_MAP_NEGATIVE_Z) - CASE(GL_PROXY_TEXTURE_CUBE_MAP) - CASE(GL_MAX_CUBE_MAP_TEXTURE_SIZE) - CASE(GL_COMPRESSED_RGB) - CASE(GL_COMPRESSED_RGBA) - CASE(GL_TEXTURE_COMPRESSION_HINT) - CASE(GL_TEXTURE_COMPRESSED_IMAGE_SIZE) - CASE(GL_TEXTURE_COMPRESSED) - CASE(GL_NUM_COMPRESSED_TEXTURE_FORMATS) - CASE(GL_COMPRESSED_TEXTURE_FORMATS) - CASE(GL_CLAMP_TO_BORDER) - //CASE(GL_VERSION_1_4) - CASE(GL_BLEND_DST_RGB) - CASE(GL_BLEND_SRC_RGB) - CASE(GL_BLEND_DST_ALPHA) - CASE(GL_BLEND_SRC_ALPHA) - CASE(GL_POINT_FADE_THRESHOLD_SIZE) - CASE(GL_DEPTH_COMPONENT16) - CASE(GL_DEPTH_COMPONENT24) - CASE(GL_DEPTH_COMPONENT32) - CASE(GL_MIRRORED_REPEAT) - CASE(GL_MAX_TEXTURE_LOD_BIAS) - CASE(GL_TEXTURE_LOD_BIAS) - CASE(GL_INCR_WRAP) - CASE(GL_DECR_WRAP) - CASE(GL_TEXTURE_DEPTH_SIZE) - CASE(GL_TEXTURE_COMPARE_MODE) - CASE(GL_TEXTURE_COMPARE_FUNC) - CASE(GL_FUNC_ADD) - CASE(GL_FUNC_SUBTRACT) - CASE(GL_FUNC_REVERSE_SUBTRACT) - CASE(GL_MIN) - CASE(GL_MAX) - CASE(GL_CONSTANT_COLOR) - CASE(GL_ONE_MINUS_CONSTANT_COLOR) - CASE(GL_CONSTANT_ALPHA) - CASE(GL_ONE_MINUS_CONSTANT_ALPHA) - //CASE(GL_VERSION_1_5) - CASE(GL_BUFFER_SIZE) - CASE(GL_BUFFER_USAGE) - CASE(GL_QUERY_COUNTER_BITS) - CASE(GL_CURRENT_QUERY) - CASE(GL_QUERY_RESULT) - CASE(GL_QUERY_RESULT_AVAILABLE) - CASE(GL_ARRAY_BUFFER) - CASE(GL_ELEMENT_ARRAY_BUFFER) - CASE(GL_ARRAY_BUFFER_BINDING) - CASE(GL_ELEMENT_ARRAY_BUFFER_BINDING) - CASE(GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) - CASE(GL_READ_ONLY) - CASE(GL_WRITE_ONLY) - CASE(GL_READ_WRITE) - CASE(GL_BUFFER_ACCESS) - CASE(GL_BUFFER_MAPPED) - CASE(GL_BUFFER_MAP_POINTER) - CASE(GL_STREAM_DRAW) - CASE(GL_STREAM_READ) - CASE(GL_STREAM_COPY) - CASE(GL_STATIC_DRAW) - CASE(GL_STATIC_READ) - CASE(GL_STATIC_COPY) - CASE(GL_DYNAMIC_DRAW) - CASE(GL_DYNAMIC_READ) - CASE(GL_DYNAMIC_COPY) - CASE(GL_SAMPLES_PASSED) - CASE(GL_SRC1_ALPHA) - //CASE(GL_VERSION_2_0) - CASE(GL_BLEND_EQUATION_RGB) - CASE(GL_VERTEX_ATTRIB_ARRAY_ENABLED) - CASE(GL_VERTEX_ATTRIB_ARRAY_SIZE) - CASE(GL_VERTEX_ATTRIB_ARRAY_STRIDE) - CASE(GL_VERTEX_ATTRIB_ARRAY_TYPE) - CASE(GL_CURRENT_VERTEX_ATTRIB) - CASE(GL_VERTEX_PROGRAM_POINT_SIZE) - CASE(GL_VERTEX_ATTRIB_ARRAY_POINTER) - CASE(GL_STENCIL_BACK_FUNC) - CASE(GL_STENCIL_BACK_FAIL) - CASE(GL_STENCIL_BACK_PASS_DEPTH_FAIL) - CASE(GL_STENCIL_BACK_PASS_DEPTH_PASS) - CASE(GL_MAX_DRAW_BUFFERS) - CASE(GL_DRAW_BUFFER0) - CASE(GL_DRAW_BUFFER1) - CASE(GL_DRAW_BUFFER2) - CASE(GL_DRAW_BUFFER3) - CASE(GL_DRAW_BUFFER4) - CASE(GL_DRAW_BUFFER5) - CASE(GL_DRAW_BUFFER6) - CASE(GL_DRAW_BUFFER7) - CASE(GL_DRAW_BUFFER8) - CASE(GL_DRAW_BUFFER9) - CASE(GL_DRAW_BUFFER10) - CASE(GL_DRAW_BUFFER11) - CASE(GL_DRAW_BUFFER12) - CASE(GL_DRAW_BUFFER13) - CASE(GL_DRAW_BUFFER14) - CASE(GL_DRAW_BUFFER15) - CASE(GL_BLEND_EQUATION_ALPHA) - CASE(GL_MAX_VERTEX_ATTRIBS) - CASE(GL_VERTEX_ATTRIB_ARRAY_NORMALIZED) - CASE(GL_MAX_TEXTURE_IMAGE_UNITS) - CASE(GL_FRAGMENT_SHADER) - CASE(GL_VERTEX_SHADER) - CASE(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS) - CASE(GL_MAX_VERTEX_UNIFORM_COMPONENTS) - CASE(GL_MAX_VARYING_FLOATS) - CASE(GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS) - CASE(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS) - CASE(GL_SHADER_TYPE) - CASE(GL_FLOAT_VEC2) - CASE(GL_FLOAT_VEC3) - CASE(GL_FLOAT_VEC4) - CASE(GL_INT_VEC2) - CASE(GL_INT_VEC3) - CASE(GL_INT_VEC4) - CASE(GL_BOOL) - CASE(GL_BOOL_VEC2) - CASE(GL_BOOL_VEC3) - CASE(GL_BOOL_VEC4) - CASE(GL_FLOAT_MAT2) - CASE(GL_FLOAT_MAT3) - CASE(GL_FLOAT_MAT4) - CASE(GL_SAMPLER_1D) - CASE(GL_SAMPLER_2D) - CASE(GL_SAMPLER_3D) - CASE(GL_SAMPLER_CUBE) - CASE(GL_SAMPLER_1D_SHADOW) - CASE(GL_SAMPLER_2D_SHADOW) - CASE(GL_DELETE_STATUS) - CASE(GL_COMPILE_STATUS) - CASE(GL_LINK_STATUS) - CASE(GL_VALIDATE_STATUS) - CASE(GL_INFO_LOG_LENGTH) - CASE(GL_ATTACHED_SHADERS) - CASE(GL_ACTIVE_UNIFORMS) - CASE(GL_ACTIVE_UNIFORM_MAX_LENGTH) - CASE(GL_SHADER_SOURCE_LENGTH) - CASE(GL_ACTIVE_ATTRIBUTES) - CASE(GL_ACTIVE_ATTRIBUTE_MAX_LENGTH) - CASE(GL_FRAGMENT_SHADER_DERIVATIVE_HINT) - CASE(GL_SHADING_LANGUAGE_VERSION) - CASE(GL_CURRENT_PROGRAM) - CASE(GL_POINT_SPRITE_COORD_ORIGIN) - CASE(GL_LOWER_LEFT) - CASE(GL_UPPER_LEFT) - CASE(GL_STENCIL_BACK_REF) - CASE(GL_STENCIL_BACK_VALUE_MASK) - CASE(GL_STENCIL_BACK_WRITEMASK) - //CASE(GL_VERSION_2_1) - CASE(GL_PIXEL_PACK_BUFFER) - CASE(GL_PIXEL_UNPACK_BUFFER) - CASE(GL_PIXEL_PACK_BUFFER_BINDING) - CASE(GL_PIXEL_UNPACK_BUFFER_BINDING) - CASE(GL_SRGB) - CASE(GL_SRGB8) - CASE(GL_SRGB_ALPHA) - CASE(GL_SRGB8_ALPHA8) - CASE(GL_COMPRESSED_SRGB) - CASE(GL_COMPRESSED_SRGB_ALPHA) - //CASE(GL_VERSION_3_0) - CASE(GL_COMPARE_REF_TO_TEXTURE) - CASE(GL_CLIP_DISTANCE0) - CASE(GL_CLIP_DISTANCE1) - CASE(GL_CLIP_DISTANCE2) - CASE(GL_CLIP_DISTANCE3) - CASE(GL_CLIP_DISTANCE4) - CASE(GL_CLIP_DISTANCE5) - CASE(GL_CLIP_DISTANCE6) - CASE(GL_CLIP_DISTANCE7) - CASE(GL_MAX_CLIP_DISTANCES) - CASE(GL_MAJOR_VERSION) - CASE(GL_MINOR_VERSION) - CASE(GL_NUM_EXTENSIONS) - CASE(GL_CONTEXT_FLAGS) - CASE(GL_COMPRESSED_RED) - CASE(GL_COMPRESSED_RG) - //CASE(GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT) - CASE(GL_RGBA32F) - CASE(GL_RGB32F) - CASE(GL_RGBA16F) - CASE(GL_RGB16F) - CASE(GL_VERTEX_ATTRIB_ARRAY_INTEGER) - CASE(GL_MAX_ARRAY_TEXTURE_LAYERS) - CASE(GL_MIN_PROGRAM_TEXEL_OFFSET) - CASE(GL_MAX_PROGRAM_TEXEL_OFFSET) - CASE(GL_CLAMP_READ_COLOR) - CASE(GL_FIXED_ONLY) - //CASE(GL_MAX_VARYING_COMPONENTS) - CASE(GL_TEXTURE_1D_ARRAY) - CASE(GL_PROXY_TEXTURE_1D_ARRAY) - CASE(GL_TEXTURE_2D_ARRAY) - CASE(GL_PROXY_TEXTURE_2D_ARRAY) - CASE(GL_TEXTURE_BINDING_1D_ARRAY) - CASE(GL_TEXTURE_BINDING_2D_ARRAY) - CASE(GL_R11F_G11F_B10F) - CASE(GL_UNSIGNED_INT_10F_11F_11F_REV) - CASE(GL_RGB9_E5) - CASE(GL_UNSIGNED_INT_5_9_9_9_REV) - CASE(GL_TEXTURE_SHARED_SIZE) - CASE(GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_MODE) - CASE(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS) - CASE(GL_TRANSFORM_FEEDBACK_VARYINGS) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_START) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_SIZE) - CASE(GL_PRIMITIVES_GENERATED) - CASE(GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN) - CASE(GL_RASTERIZER_DISCARD) - CASE(GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS) - CASE(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS) - CASE(GL_INTERLEAVED_ATTRIBS) - CASE(GL_SEPARATE_ATTRIBS) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_BINDING) - CASE(GL_RGBA32UI) - CASE(GL_RGB32UI) - CASE(GL_RGBA16UI) - CASE(GL_RGB16UI) - CASE(GL_RGBA8UI) - CASE(GL_RGB8UI) - CASE(GL_RGBA32I) - CASE(GL_RGB32I) - CASE(GL_RGBA16I) - CASE(GL_RGB16I) - CASE(GL_RGBA8I) - CASE(GL_RGB8I) - CASE(GL_RED_INTEGER) - CASE(GL_GREEN_INTEGER) - CASE(GL_BLUE_INTEGER) - CASE(GL_RGB_INTEGER) - CASE(GL_RGBA_INTEGER) - CASE(GL_BGR_INTEGER) - CASE(GL_BGRA_INTEGER) - CASE(GL_SAMPLER_1D_ARRAY) - CASE(GL_SAMPLER_2D_ARRAY) - CASE(GL_SAMPLER_1D_ARRAY_SHADOW) - CASE(GL_SAMPLER_2D_ARRAY_SHADOW) - CASE(GL_SAMPLER_CUBE_SHADOW) - CASE(GL_UNSIGNED_INT_VEC2) - CASE(GL_UNSIGNED_INT_VEC3) - CASE(GL_UNSIGNED_INT_VEC4) - CASE(GL_INT_SAMPLER_1D) - CASE(GL_INT_SAMPLER_2D) - CASE(GL_INT_SAMPLER_3D) - CASE(GL_INT_SAMPLER_CUBE) - CASE(GL_INT_SAMPLER_1D_ARRAY) - CASE(GL_INT_SAMPLER_2D_ARRAY) - CASE(GL_UNSIGNED_INT_SAMPLER_1D) - CASE(GL_UNSIGNED_INT_SAMPLER_2D) - CASE(GL_UNSIGNED_INT_SAMPLER_3D) - CASE(GL_UNSIGNED_INT_SAMPLER_CUBE) - CASE(GL_UNSIGNED_INT_SAMPLER_1D_ARRAY) - CASE(GL_UNSIGNED_INT_SAMPLER_2D_ARRAY) - CASE(GL_QUERY_WAIT) - CASE(GL_QUERY_NO_WAIT) - CASE(GL_QUERY_BY_REGION_WAIT) - CASE(GL_QUERY_BY_REGION_NO_WAIT) - CASE(GL_BUFFER_ACCESS_FLAGS) - CASE(GL_BUFFER_MAP_LENGTH) - CASE(GL_BUFFER_MAP_OFFSET) - CASE(GL_DEPTH_COMPONENT32F) - CASE(GL_DEPTH32F_STENCIL8) - CASE(GL_FLOAT_32_UNSIGNED_INT_24_8_REV) - CASE(GL_INVALID_FRAMEBUFFER_OPERATION) - CASE(GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING) - CASE(GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE) - CASE(GL_FRAMEBUFFER_DEFAULT) - CASE(GL_FRAMEBUFFER_UNDEFINED) - CASE(GL_DEPTH_STENCIL_ATTACHMENT) - CASE(GL_MAX_RENDERBUFFER_SIZE) - CASE(GL_DEPTH_STENCIL) - CASE(GL_UNSIGNED_INT_24_8) - CASE(GL_DEPTH24_STENCIL8) - CASE(GL_TEXTURE_STENCIL_SIZE) - CASE(GL_TEXTURE_RED_TYPE) - CASE(GL_TEXTURE_GREEN_TYPE) - CASE(GL_TEXTURE_BLUE_TYPE) - CASE(GL_TEXTURE_ALPHA_TYPE) - CASE(GL_TEXTURE_DEPTH_TYPE) - CASE(GL_UNSIGNED_NORMALIZED) - CASE(GL_FRAMEBUFFER_BINDING) - //CASE(GL_DRAW_FRAMEBUFFER_BINDING) - CASE(GL_RENDERBUFFER_BINDING) - CASE(GL_READ_FRAMEBUFFER) - CASE(GL_DRAW_FRAMEBUFFER) - CASE(GL_READ_FRAMEBUFFER_BINDING) - CASE(GL_RENDERBUFFER_SAMPLES) - CASE(GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) - CASE(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL) - CASE(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE) - CASE(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) - CASE(GL_FRAMEBUFFER_COMPLETE) - CASE(GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT) - CASE(GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT) - CASE(GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER) - CASE(GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER) - CASE(GL_FRAMEBUFFER_UNSUPPORTED) - CASE(GL_MAX_COLOR_ATTACHMENTS) - CASE(GL_COLOR_ATTACHMENT0) - CASE(GL_COLOR_ATTACHMENT1) - CASE(GL_COLOR_ATTACHMENT2) - CASE(GL_COLOR_ATTACHMENT3) - CASE(GL_COLOR_ATTACHMENT4) - CASE(GL_COLOR_ATTACHMENT5) - CASE(GL_COLOR_ATTACHMENT6) - CASE(GL_COLOR_ATTACHMENT7) - CASE(GL_COLOR_ATTACHMENT8) - CASE(GL_COLOR_ATTACHMENT9) - CASE(GL_COLOR_ATTACHMENT10) - CASE(GL_COLOR_ATTACHMENT11) - CASE(GL_COLOR_ATTACHMENT12) - CASE(GL_COLOR_ATTACHMENT13) - CASE(GL_COLOR_ATTACHMENT14) - CASE(GL_COLOR_ATTACHMENT15) - CASE(GL_COLOR_ATTACHMENT16) - CASE(GL_COLOR_ATTACHMENT17) - CASE(GL_COLOR_ATTACHMENT18) - CASE(GL_COLOR_ATTACHMENT19) - CASE(GL_COLOR_ATTACHMENT20) - CASE(GL_COLOR_ATTACHMENT21) - CASE(GL_COLOR_ATTACHMENT22) - CASE(GL_COLOR_ATTACHMENT23) - CASE(GL_COLOR_ATTACHMENT24) - CASE(GL_COLOR_ATTACHMENT25) - CASE(GL_COLOR_ATTACHMENT26) - CASE(GL_COLOR_ATTACHMENT27) - CASE(GL_COLOR_ATTACHMENT28) - CASE(GL_COLOR_ATTACHMENT29) - CASE(GL_COLOR_ATTACHMENT30) - CASE(GL_COLOR_ATTACHMENT31) - CASE(GL_DEPTH_ATTACHMENT) - CASE(GL_STENCIL_ATTACHMENT) - CASE(GL_FRAMEBUFFER) - CASE(GL_RENDERBUFFER) - CASE(GL_RENDERBUFFER_WIDTH) - CASE(GL_RENDERBUFFER_HEIGHT) - CASE(GL_RENDERBUFFER_INTERNAL_FORMAT) - CASE(GL_STENCIL_INDEX1) - CASE(GL_STENCIL_INDEX4) - CASE(GL_STENCIL_INDEX8) - CASE(GL_STENCIL_INDEX16) - CASE(GL_RENDERBUFFER_RED_SIZE) - CASE(GL_RENDERBUFFER_GREEN_SIZE) - CASE(GL_RENDERBUFFER_BLUE_SIZE) - CASE(GL_RENDERBUFFER_ALPHA_SIZE) - CASE(GL_RENDERBUFFER_DEPTH_SIZE) - CASE(GL_RENDERBUFFER_STENCIL_SIZE) - CASE(GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE) - CASE(GL_MAX_SAMPLES) - CASE(GL_FRAMEBUFFER_SRGB) - CASE(GL_HALF_FLOAT) - //CASE(GL_MAP_READ_BIT) - //CASE(GL_MAP_WRITE_BIT) - //CASE(GL_MAP_INVALIDATE_RANGE_BIT) - CASE(GL_MAP_INVALIDATE_BUFFER_BIT) - CASE(GL_MAP_FLUSH_EXPLICIT_BIT) - CASE(GL_MAP_UNSYNCHRONIZED_BIT) - CASE(GL_COMPRESSED_RED_RGTC1) - CASE(GL_COMPRESSED_SIGNED_RED_RGTC1) - CASE(GL_COMPRESSED_RG_RGTC2) - CASE(GL_COMPRESSED_SIGNED_RG_RGTC2) - CASE(GL_RG) - CASE(GL_RG_INTEGER) - CASE(GL_R8) - CASE(GL_R16) - CASE(GL_RG8) - CASE(GL_RG16) - CASE(GL_R16F) - CASE(GL_R32F) - CASE(GL_RG16F) - CASE(GL_RG32F) - CASE(GL_R8I) - CASE(GL_R8UI) - CASE(GL_R16I) - CASE(GL_R16UI) - CASE(GL_R32I) - CASE(GL_R32UI) - CASE(GL_RG8I) - CASE(GL_RG8UI) - CASE(GL_RG16I) - CASE(GL_RG16UI) - CASE(GL_RG32I) - CASE(GL_RG32UI) - CASE(GL_VERTEX_ARRAY_BINDING) - //CASE(GL_VERSION_3_1) - CASE(GL_SAMPLER_2D_RECT) - CASE(GL_SAMPLER_2D_RECT_SHADOW) - CASE(GL_SAMPLER_BUFFER) - CASE(GL_INT_SAMPLER_2D_RECT) - CASE(GL_INT_SAMPLER_BUFFER) - CASE(GL_UNSIGNED_INT_SAMPLER_2D_RECT) - CASE(GL_UNSIGNED_INT_SAMPLER_BUFFER) - CASE(GL_TEXTURE_BUFFER) - CASE(GL_MAX_TEXTURE_BUFFER_SIZE) - CASE(GL_TEXTURE_BINDING_BUFFER) - CASE(GL_TEXTURE_BUFFER_DATA_STORE_BINDING) - CASE(GL_TEXTURE_RECTANGLE) - CASE(GL_TEXTURE_BINDING_RECTANGLE) - CASE(GL_PROXY_TEXTURE_RECTANGLE) - CASE(GL_MAX_RECTANGLE_TEXTURE_SIZE) - CASE(GL_R8_SNORM) - CASE(GL_RG8_SNORM) - CASE(GL_RGB8_SNORM) - CASE(GL_RGBA8_SNORM) - CASE(GL_R16_SNORM) - CASE(GL_RG16_SNORM) - CASE(GL_RGB16_SNORM) - CASE(GL_RGBA16_SNORM) - CASE(GL_SIGNED_NORMALIZED) - CASE(GL_PRIMITIVE_RESTART) - CASE(GL_PRIMITIVE_RESTART_INDEX) - CASE(GL_COPY_READ_BUFFER) - CASE(GL_COPY_WRITE_BUFFER) - CASE(GL_UNIFORM_BUFFER) - CASE(GL_UNIFORM_BUFFER_BINDING) - CASE(GL_UNIFORM_BUFFER_START) - CASE(GL_UNIFORM_BUFFER_SIZE) - CASE(GL_MAX_VERTEX_UNIFORM_BLOCKS) - CASE(GL_MAX_GEOMETRY_UNIFORM_BLOCKS) - CASE(GL_MAX_FRAGMENT_UNIFORM_BLOCKS) - CASE(GL_MAX_COMBINED_UNIFORM_BLOCKS) - CASE(GL_MAX_UNIFORM_BUFFER_BINDINGS) - CASE(GL_MAX_UNIFORM_BLOCK_SIZE) - CASE(GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS) - CASE(GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS) - CASE(GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS) - CASE(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT) - CASE(GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH) - CASE(GL_ACTIVE_UNIFORM_BLOCKS) - CASE(GL_UNIFORM_TYPE) - CASE(GL_UNIFORM_SIZE) - CASE(GL_UNIFORM_NAME_LENGTH) - CASE(GL_UNIFORM_BLOCK_INDEX) - CASE(GL_UNIFORM_OFFSET) - CASE(GL_UNIFORM_ARRAY_STRIDE) - CASE(GL_UNIFORM_MATRIX_STRIDE) - CASE(GL_UNIFORM_IS_ROW_MAJOR) - CASE(GL_UNIFORM_BLOCK_BINDING) - CASE(GL_UNIFORM_BLOCK_DATA_SIZE) - CASE(GL_UNIFORM_BLOCK_NAME_LENGTH) - CASE(GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS) - CASE(GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES) - CASE(GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER) - CASE(GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER) - CASE(GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER) - //CASE(GL_VERSION_3_2) - //CASE(GL_CONTEXT_CORE_PROFILE_BIT) - //CASE(GL_CONTEXT_COMPATIBILITY_PROFILE_BIT) - CASE(GL_LINES_ADJACENCY) - CASE(GL_LINE_STRIP_ADJACENCY) - CASE(GL_TRIANGLES_ADJACENCY) - CASE(GL_TRIANGLE_STRIP_ADJACENCY) - //CASE(GL_PROGRAM_POINT_SIZE) - CASE(GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS) - CASE(GL_FRAMEBUFFER_ATTACHMENT_LAYERED) - CASE(GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS) - CASE(GL_GEOMETRY_SHADER) - CASE(GL_GEOMETRY_VERTICES_OUT) - CASE(GL_GEOMETRY_INPUT_TYPE) - CASE(GL_GEOMETRY_OUTPUT_TYPE) - CASE(GL_MAX_GEOMETRY_UNIFORM_COMPONENTS) - CASE(GL_MAX_GEOMETRY_OUTPUT_VERTICES) - CASE(GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS) - CASE(GL_MAX_VERTEX_OUTPUT_COMPONENTS) - CASE(GL_MAX_GEOMETRY_INPUT_COMPONENTS) - CASE(GL_MAX_GEOMETRY_OUTPUT_COMPONENTS) - CASE(GL_MAX_FRAGMENT_INPUT_COMPONENTS) - CASE(GL_CONTEXT_PROFILE_MASK) - CASE(GL_DEPTH_CLAMP) - CASE(GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION) - CASE(GL_FIRST_VERTEX_CONVENTION) - CASE(GL_LAST_VERTEX_CONVENTION) - CASE(GL_PROVOKING_VERTEX) - CASE(GL_TEXTURE_CUBE_MAP_SEAMLESS) - CASE(GL_MAX_SERVER_WAIT_TIMEOUT) - CASE(GL_OBJECT_TYPE) - CASE(GL_SYNC_CONDITION) - CASE(GL_SYNC_STATUS) - CASE(GL_SYNC_FLAGS) - CASE(GL_SYNC_FENCE) - CASE(GL_SYNC_GPU_COMMANDS_COMPLETE) - CASE(GL_UNSIGNALED) - CASE(GL_SIGNALED) - CASE(GL_ALREADY_SIGNALED) - CASE(GL_TIMEOUT_EXPIRED) - CASE(GL_CONDITION_SATISFIED) - CASE(GL_WAIT_FAILED) - //CASE(GL_SYNC_FLUSH_COMMANDS_BIT) - CASE(GL_SAMPLE_POSITION) - CASE(GL_SAMPLE_MASK) - CASE(GL_SAMPLE_MASK_VALUE) - CASE(GL_MAX_SAMPLE_MASK_WORDS) - CASE(GL_TEXTURE_2D_MULTISAMPLE) - CASE(GL_PROXY_TEXTURE_2D_MULTISAMPLE) - CASE(GL_TEXTURE_2D_MULTISAMPLE_ARRAY) - CASE(GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY) - CASE(GL_TEXTURE_BINDING_2D_MULTISAMPLE) - CASE(GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY) - CASE(GL_TEXTURE_SAMPLES) - CASE(GL_TEXTURE_FIXED_SAMPLE_LOCATIONS) - CASE(GL_SAMPLER_2D_MULTISAMPLE) - CASE(GL_INT_SAMPLER_2D_MULTISAMPLE) - CASE(GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE) - CASE(GL_SAMPLER_2D_MULTISAMPLE_ARRAY) - CASE(GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY) - CASE(GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY) - CASE(GL_MAX_COLOR_TEXTURE_SAMPLES) - CASE(GL_MAX_DEPTH_TEXTURE_SAMPLES) - CASE(GL_MAX_INTEGER_SAMPLES) - //CASE(GL_VERSION_3_3) - CASE(GL_VERTEX_ATTRIB_ARRAY_DIVISOR) - CASE(GL_SRC1_COLOR) - CASE(GL_ONE_MINUS_SRC1_COLOR) - CASE(GL_ONE_MINUS_SRC1_ALPHA) - CASE(GL_MAX_DUAL_SOURCE_DRAW_BUFFERS) - CASE(GL_ANY_SAMPLES_PASSED) - CASE(GL_SAMPLER_BINDING) - CASE(GL_RGB10_A2UI) - CASE(GL_TEXTURE_SWIZZLE_R) - CASE(GL_TEXTURE_SWIZZLE_G) - CASE(GL_TEXTURE_SWIZZLE_B) - CASE(GL_TEXTURE_SWIZZLE_A) - CASE(GL_TEXTURE_SWIZZLE_RGBA) - CASE(GL_TIME_ELAPSED) - CASE(GL_TIMESTAMP) - CASE(GL_INT_2_10_10_10_REV) - //CASE(GL_VERSION_4_0) - CASE(GL_SAMPLE_SHADING) - CASE(GL_MIN_SAMPLE_SHADING_VALUE) - CASE(GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET) - CASE(GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET) - CASE(GL_TEXTURE_CUBE_MAP_ARRAY) - CASE(GL_TEXTURE_BINDING_CUBE_MAP_ARRAY) - CASE(GL_PROXY_TEXTURE_CUBE_MAP_ARRAY) - CASE(GL_SAMPLER_CUBE_MAP_ARRAY) - CASE(GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW) - CASE(GL_INT_SAMPLER_CUBE_MAP_ARRAY) - CASE(GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY) - CASE(GL_DRAW_INDIRECT_BUFFER) - CASE(GL_DRAW_INDIRECT_BUFFER_BINDING) - CASE(GL_GEOMETRY_SHADER_INVOCATIONS) - CASE(GL_MAX_GEOMETRY_SHADER_INVOCATIONS) - CASE(GL_MIN_FRAGMENT_INTERPOLATION_OFFSET) - CASE(GL_MAX_FRAGMENT_INTERPOLATION_OFFSET) - CASE(GL_FRAGMENT_INTERPOLATION_OFFSET_BITS) - CASE(GL_MAX_VERTEX_STREAMS) - CASE(GL_DOUBLE_VEC2) - CASE(GL_DOUBLE_VEC3) - CASE(GL_DOUBLE_VEC4) - CASE(GL_DOUBLE_MAT2) - CASE(GL_DOUBLE_MAT3) - CASE(GL_DOUBLE_MAT4) - CASE(GL_ACTIVE_SUBROUTINES) - CASE(GL_ACTIVE_SUBROUTINE_UNIFORMS) - CASE(GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS) - CASE(GL_ACTIVE_SUBROUTINE_MAX_LENGTH) - CASE(GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH) - CASE(GL_MAX_SUBROUTINES) - CASE(GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS) - CASE(GL_NUM_COMPATIBLE_SUBROUTINES) - CASE(GL_COMPATIBLE_SUBROUTINES) - CASE(GL_PATCHES) - CASE(GL_PATCH_VERTICES) - CASE(GL_PATCH_DEFAULT_INNER_LEVEL) - CASE(GL_PATCH_DEFAULT_OUTER_LEVEL) - CASE(GL_TESS_CONTROL_OUTPUT_VERTICES) - CASE(GL_TESS_GEN_MODE) - CASE(GL_TESS_GEN_SPACING) - CASE(GL_TESS_GEN_VERTEX_ORDER) - CASE(GL_TESS_GEN_POINT_MODE) - CASE(GL_ISOLINES) - CASE(GL_FRACTIONAL_ODD) - CASE(GL_FRACTIONAL_EVEN) - CASE(GL_MAX_PATCH_VERTICES) - CASE(GL_MAX_TESS_GEN_LEVEL) - CASE(GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS) - CASE(GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS) - CASE(GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS) - CASE(GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS) - CASE(GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS) - CASE(GL_MAX_TESS_PATCH_COMPONENTS) - CASE(GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS) - CASE(GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS) - CASE(GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS) - CASE(GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS) - CASE(GL_MAX_TESS_CONTROL_INPUT_COMPONENTS) - CASE(GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS) - CASE(GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS) - CASE(GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS) - CASE(GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER) - CASE(GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER) - CASE(GL_TESS_EVALUATION_SHADER) - CASE(GL_TESS_CONTROL_SHADER) - CASE(GL_TRANSFORM_FEEDBACK) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE) - CASE(GL_TRANSFORM_FEEDBACK_BINDING) - CASE(GL_MAX_TRANSFORM_FEEDBACK_BUFFERS) - //CASE(GL_VERSION_4_1) - CASE(GL_FIXED) - CASE(GL_IMPLEMENTATION_COLOR_READ_TYPE) - CASE(GL_IMPLEMENTATION_COLOR_READ_FORMAT) - CASE(GL_LOW_FLOAT) - CASE(GL_MEDIUM_FLOAT) - CASE(GL_HIGH_FLOAT) - CASE(GL_LOW_INT) - CASE(GL_MEDIUM_INT) - CASE(GL_HIGH_INT) - CASE(GL_SHADER_COMPILER) - CASE(GL_SHADER_BINARY_FORMATS) - CASE(GL_NUM_SHADER_BINARY_FORMATS) - CASE(GL_MAX_VERTEX_UNIFORM_VECTORS) - CASE(GL_MAX_VARYING_VECTORS) - CASE(GL_MAX_FRAGMENT_UNIFORM_VECTORS) - CASE(GL_RGB565) - CASE(GL_PROGRAM_BINARY_RETRIEVABLE_HINT) - CASE(GL_PROGRAM_BINARY_LENGTH) - CASE(GL_NUM_PROGRAM_BINARY_FORMATS) - CASE(GL_PROGRAM_BINARY_FORMATS) - //CASE(GL_VERTEX_SHADER_BIT) - //CASE(GL_FRAGMENT_SHADER_BIT) - //CASE(GL_GEOMETRY_SHADER_BIT) - //CASE(GL_TESS_CONTROL_SHADER_BIT) - //CASE(GL_TESS_EVALUATION_SHADER_BIT) - CASE(GL_PROGRAM_SEPARABLE) - CASE(GL_ACTIVE_PROGRAM) - CASE(GL_PROGRAM_PIPELINE_BINDING) - CASE(GL_MAX_VIEWPORTS) - CASE(GL_VIEWPORT_SUBPIXEL_BITS) - CASE(GL_VIEWPORT_BOUNDS_RANGE) - CASE(GL_LAYER_PROVOKING_VERTEX) - CASE(GL_VIEWPORT_INDEX_PROVOKING_VERTEX) - CASE(GL_UNDEFINED_VERTEX) - //CASE(GL_VERSION_4_2) - //CASE(GL_COPY_READ_BUFFER_BINDING) - //CASE(GL_COPY_WRITE_BUFFER_BINDING) - //CASE(GL_TRANSFORM_FEEDBACK_ACTIVE) - //CASE(GL_TRANSFORM_FEEDBACK_PAUSED) - CASE(GL_UNPACK_COMPRESSED_BLOCK_WIDTH) - CASE(GL_UNPACK_COMPRESSED_BLOCK_HEIGHT) - CASE(GL_UNPACK_COMPRESSED_BLOCK_DEPTH) - CASE(GL_UNPACK_COMPRESSED_BLOCK_SIZE) - CASE(GL_PACK_COMPRESSED_BLOCK_WIDTH) - CASE(GL_PACK_COMPRESSED_BLOCK_HEIGHT) - CASE(GL_PACK_COMPRESSED_BLOCK_DEPTH) - CASE(GL_PACK_COMPRESSED_BLOCK_SIZE) - CASE(GL_NUM_SAMPLE_COUNTS) - CASE(GL_MIN_MAP_BUFFER_ALIGNMENT) - CASE(GL_ATOMIC_COUNTER_BUFFER) - CASE(GL_ATOMIC_COUNTER_BUFFER_BINDING) - CASE(GL_ATOMIC_COUNTER_BUFFER_START) - CASE(GL_ATOMIC_COUNTER_BUFFER_SIZE) - CASE(GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE) - CASE(GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS) - CASE(GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES) - CASE(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER) - CASE(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER) - CASE(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER) - CASE(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER) - CASE(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER) - CASE(GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS) - CASE(GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS) - CASE(GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS) - CASE(GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS) - CASE(GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS) - CASE(GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS) - CASE(GL_MAX_VERTEX_ATOMIC_COUNTERS) - CASE(GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS) - CASE(GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS) - CASE(GL_MAX_GEOMETRY_ATOMIC_COUNTERS) - CASE(GL_MAX_FRAGMENT_ATOMIC_COUNTERS) - CASE(GL_MAX_COMBINED_ATOMIC_COUNTERS) - CASE(GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE) - CASE(GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS) - CASE(GL_ACTIVE_ATOMIC_COUNTER_BUFFERS) - CASE(GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX) - CASE(GL_UNSIGNED_INT_ATOMIC_COUNTER) - //CASE(GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT) - //CASE(GL_ELEMENT_ARRAY_BARRIER_BIT) - //CASE(GL_UNIFORM_BARRIER_BIT) - //CASE(GL_TEXTURE_FETCH_BARRIER_BIT) - //CASE(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT) - CASE(GL_COMMAND_BARRIER_BIT) - CASE(GL_PIXEL_BUFFER_BARRIER_BIT) - //CASE(GL_TEXTURE_UPDATE_BARRIER_BIT) - //CASE(GL_BUFFER_UPDATE_BARRIER_BIT) - //CASE(GL_FRAMEBUFFER_BARRIER_BIT) - CASE(GL_TRANSFORM_FEEDBACK_BARRIER_BIT) - //CASE(GL_ATOMIC_COUNTER_BARRIER_BIT) - CASE(GL_MAX_IMAGE_UNITS) - CASE(GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS) - CASE(GL_IMAGE_BINDING_NAME) - CASE(GL_IMAGE_BINDING_LEVEL) - CASE(GL_IMAGE_BINDING_LAYERED) - CASE(GL_IMAGE_BINDING_LAYER) - CASE(GL_IMAGE_BINDING_ACCESS) - CASE(GL_IMAGE_1D) - CASE(GL_IMAGE_2D) - CASE(GL_IMAGE_3D) - CASE(GL_IMAGE_2D_RECT) - CASE(GL_IMAGE_CUBE) - CASE(GL_IMAGE_BUFFER) - CASE(GL_IMAGE_1D_ARRAY) - CASE(GL_IMAGE_2D_ARRAY) - CASE(GL_IMAGE_CUBE_MAP_ARRAY) - CASE(GL_IMAGE_2D_MULTISAMPLE) - CASE(GL_IMAGE_2D_MULTISAMPLE_ARRAY) - CASE(GL_INT_IMAGE_1D) - CASE(GL_INT_IMAGE_2D) - CASE(GL_INT_IMAGE_3D) - CASE(GL_INT_IMAGE_2D_RECT) - CASE(GL_INT_IMAGE_CUBE) - CASE(GL_INT_IMAGE_BUFFER) - CASE(GL_INT_IMAGE_1D_ARRAY) - CASE(GL_INT_IMAGE_2D_ARRAY) - CASE(GL_INT_IMAGE_CUBE_MAP_ARRAY) - CASE(GL_INT_IMAGE_2D_MULTISAMPLE) - CASE(GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY) - CASE(GL_UNSIGNED_INT_IMAGE_1D) - CASE(GL_UNSIGNED_INT_IMAGE_2D) - CASE(GL_UNSIGNED_INT_IMAGE_3D) - CASE(GL_UNSIGNED_INT_IMAGE_2D_RECT) - CASE(GL_UNSIGNED_INT_IMAGE_CUBE) - CASE(GL_UNSIGNED_INT_IMAGE_BUFFER) - CASE(GL_UNSIGNED_INT_IMAGE_1D_ARRAY) - CASE(GL_UNSIGNED_INT_IMAGE_2D_ARRAY) - CASE(GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY) - CASE(GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE) - CASE(GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY) - CASE(GL_MAX_IMAGE_SAMPLES) - CASE(GL_IMAGE_BINDING_FORMAT) - CASE(GL_IMAGE_FORMAT_COMPATIBILITY_TYPE) - CASE(GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE) - CASE(GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS) - CASE(GL_MAX_VERTEX_IMAGE_UNIFORMS) - CASE(GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS) - CASE(GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS) - CASE(GL_MAX_GEOMETRY_IMAGE_UNIFORMS) - CASE(GL_MAX_FRAGMENT_IMAGE_UNIFORMS) - CASE(GL_MAX_COMBINED_IMAGE_UNIFORMS) - CASE(GL_COMPRESSED_RGBA_BPTC_UNORM) - CASE(GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM) - CASE(GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT) - CASE(GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT) - CASE(GL_TEXTURE_IMMUTABLE_FORMAT) - //CASE(GL_VERSION_4_3) - CASE(GL_NUM_SHADING_LANGUAGE_VERSIONS) - CASE(GL_VERTEX_ATTRIB_ARRAY_LONG) - CASE(GL_COMPRESSED_RGB8_ETC2) - CASE(GL_COMPRESSED_SRGB8_ETC2) - CASE(GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2) - CASE(GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2) - CASE(GL_COMPRESSED_RGBA8_ETC2_EAC) - CASE(GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC) - CASE(GL_COMPRESSED_R11_EAC) - CASE(GL_COMPRESSED_SIGNED_R11_EAC) - CASE(GL_COMPRESSED_RG11_EAC) - CASE(GL_COMPRESSED_SIGNED_RG11_EAC) - CASE(GL_PRIMITIVE_RESTART_FIXED_INDEX) - CASE(GL_ANY_SAMPLES_PASSED_CONSERVATIVE) - CASE(GL_MAX_ELEMENT_INDEX) - CASE(GL_COMPUTE_SHADER) - CASE(GL_MAX_COMPUTE_UNIFORM_BLOCKS) - CASE(GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS) - CASE(GL_MAX_COMPUTE_IMAGE_UNIFORMS) - CASE(GL_MAX_COMPUTE_SHARED_MEMORY_SIZE) - CASE(GL_MAX_COMPUTE_UNIFORM_COMPONENTS) - CASE(GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS) - CASE(GL_MAX_COMPUTE_ATOMIC_COUNTERS) - CASE(GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS) - CASE(GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS) - CASE(GL_MAX_COMPUTE_WORK_GROUP_COUNT) - CASE(GL_MAX_COMPUTE_WORK_GROUP_SIZE) - CASE(GL_COMPUTE_WORK_GROUP_SIZE) - CASE(GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER) - CASE(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER) - CASE(GL_DISPATCH_INDIRECT_BUFFER) - CASE(GL_DISPATCH_INDIRECT_BUFFER_BINDING) - //CASE(GL_COMPUTE_SHADER_BIT) - CASE(GL_DEBUG_OUTPUT_SYNCHRONOUS) - CASE(GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH) - CASE(GL_DEBUG_CALLBACK_FUNCTION) - CASE(GL_DEBUG_CALLBACK_USER_PARAM) - CASE(GL_DEBUG_SOURCE_API) - CASE(GL_DEBUG_SOURCE_WINDOW_SYSTEM) - CASE(GL_DEBUG_SOURCE_SHADER_COMPILER) - CASE(GL_DEBUG_SOURCE_THIRD_PARTY) - CASE(GL_DEBUG_SOURCE_APPLICATION) - CASE(GL_DEBUG_SOURCE_OTHER) - CASE(GL_DEBUG_TYPE_ERROR) - CASE(GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR) - CASE(GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR) - CASE(GL_DEBUG_TYPE_PORTABILITY) - CASE(GL_DEBUG_TYPE_PERFORMANCE) - CASE(GL_DEBUG_TYPE_OTHER) - CASE(GL_MAX_DEBUG_MESSAGE_LENGTH) - CASE(GL_MAX_DEBUG_LOGGED_MESSAGES) - CASE(GL_DEBUG_LOGGED_MESSAGES) - CASE(GL_DEBUG_SEVERITY_HIGH) - CASE(GL_DEBUG_SEVERITY_MEDIUM) - CASE(GL_DEBUG_SEVERITY_LOW) - CASE(GL_DEBUG_TYPE_MARKER) - CASE(GL_DEBUG_TYPE_PUSH_GROUP) - CASE(GL_DEBUG_TYPE_POP_GROUP) - CASE(GL_DEBUG_SEVERITY_NOTIFICATION) - CASE(GL_MAX_DEBUG_GROUP_STACK_DEPTH) - CASE(GL_DEBUG_GROUP_STACK_DEPTH) - CASE(GL_BUFFER) - CASE(GL_SHADER) - CASE(GL_PROGRAM) - CASE(GL_QUERY) - CASE(GL_PROGRAM_PIPELINE) - CASE(GL_SAMPLER) - CASE(GL_MAX_LABEL_LENGTH) - CASE(GL_DEBUG_OUTPUT) - //CASE(GL_CONTEXT_FLAG_DEBUG_BIT) - CASE(GL_MAX_UNIFORM_LOCATIONS) - CASE(GL_FRAMEBUFFER_DEFAULT_WIDTH) - CASE(GL_FRAMEBUFFER_DEFAULT_HEIGHT) - CASE(GL_FRAMEBUFFER_DEFAULT_LAYERS) - CASE(GL_FRAMEBUFFER_DEFAULT_SAMPLES) - CASE(GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS) - CASE(GL_MAX_FRAMEBUFFER_WIDTH) - CASE(GL_MAX_FRAMEBUFFER_HEIGHT) - CASE(GL_MAX_FRAMEBUFFER_LAYERS) - CASE(GL_MAX_FRAMEBUFFER_SAMPLES) - CASE(GL_INTERNALFORMAT_SUPPORTED) - CASE(GL_INTERNALFORMAT_PREFERRED) - CASE(GL_INTERNALFORMAT_RED_SIZE) - CASE(GL_INTERNALFORMAT_GREEN_SIZE) - CASE(GL_INTERNALFORMAT_BLUE_SIZE) - CASE(GL_INTERNALFORMAT_ALPHA_SIZE) - CASE(GL_INTERNALFORMAT_DEPTH_SIZE) - CASE(GL_INTERNALFORMAT_STENCIL_SIZE) - CASE(GL_INTERNALFORMAT_SHARED_SIZE) - CASE(GL_INTERNALFORMAT_RED_TYPE) - CASE(GL_INTERNALFORMAT_GREEN_TYPE) - CASE(GL_INTERNALFORMAT_BLUE_TYPE) - CASE(GL_INTERNALFORMAT_ALPHA_TYPE) - CASE(GL_INTERNALFORMAT_DEPTH_TYPE) - CASE(GL_INTERNALFORMAT_STENCIL_TYPE) - CASE(GL_MAX_WIDTH) - CASE(GL_MAX_HEIGHT) - CASE(GL_MAX_DEPTH) - CASE(GL_MAX_LAYERS) - CASE(GL_MAX_COMBINED_DIMENSIONS) - CASE(GL_COLOR_COMPONENTS) - CASE(GL_DEPTH_COMPONENTS) - CASE(GL_STENCIL_COMPONENTS) - CASE(GL_COLOR_RENDERABLE) - CASE(GL_DEPTH_RENDERABLE) - CASE(GL_STENCIL_RENDERABLE) - CASE(GL_FRAMEBUFFER_RENDERABLE) - CASE(GL_FRAMEBUFFER_RENDERABLE_LAYERED) - CASE(GL_FRAMEBUFFER_BLEND) - CASE(GL_READ_PIXELS) - CASE(GL_READ_PIXELS_FORMAT) - CASE(GL_READ_PIXELS_TYPE) - CASE(GL_TEXTURE_IMAGE_FORMAT) - CASE(GL_TEXTURE_IMAGE_TYPE) - CASE(GL_GET_TEXTURE_IMAGE_FORMAT) - CASE(GL_GET_TEXTURE_IMAGE_TYPE) - CASE(GL_MIPMAP) - CASE(GL_MANUAL_GENERATE_MIPMAP) - CASE(GL_AUTO_GENERATE_MIPMAP) - CASE(GL_COLOR_ENCODING) - CASE(GL_SRGB_READ) - CASE(GL_SRGB_WRITE) - CASE(GL_FILTER) - CASE(GL_VERTEX_TEXTURE) - CASE(GL_TESS_CONTROL_TEXTURE) - CASE(GL_TESS_EVALUATION_TEXTURE) - CASE(GL_GEOMETRY_TEXTURE) - CASE(GL_FRAGMENT_TEXTURE) - CASE(GL_COMPUTE_TEXTURE) - CASE(GL_TEXTURE_SHADOW) - CASE(GL_TEXTURE_GATHER) - CASE(GL_TEXTURE_GATHER_SHADOW) - CASE(GL_SHADER_IMAGE_LOAD) - CASE(GL_SHADER_IMAGE_STORE) - CASE(GL_SHADER_IMAGE_ATOMIC) - CASE(GL_IMAGE_TEXEL_SIZE) - CASE(GL_IMAGE_COMPATIBILITY_CLASS) - CASE(GL_IMAGE_PIXEL_FORMAT) - CASE(GL_IMAGE_PIXEL_TYPE) - CASE(GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST) - CASE(GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST) - CASE(GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE) - CASE(GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE) - CASE(GL_TEXTURE_COMPRESSED_BLOCK_WIDTH) - CASE(GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT) - CASE(GL_TEXTURE_COMPRESSED_BLOCK_SIZE) - CASE(GL_CLEAR_BUFFER) - CASE(GL_TEXTURE_VIEW) - CASE(GL_VIEW_COMPATIBILITY_CLASS) - CASE(GL_FULL_SUPPORT) - CASE(GL_CAVEAT_SUPPORT) - CASE(GL_IMAGE_CLASS_4_X_32) - CASE(GL_IMAGE_CLASS_2_X_32) - CASE(GL_IMAGE_CLASS_1_X_32) - CASE(GL_IMAGE_CLASS_4_X_16) - CASE(GL_IMAGE_CLASS_2_X_16) - CASE(GL_IMAGE_CLASS_1_X_16) - CASE(GL_IMAGE_CLASS_4_X_8) - CASE(GL_IMAGE_CLASS_2_X_8) - CASE(GL_IMAGE_CLASS_1_X_8) - CASE(GL_IMAGE_CLASS_11_11_10) - CASE(GL_IMAGE_CLASS_10_10_10_2) - CASE(GL_VIEW_CLASS_128_BITS) - CASE(GL_VIEW_CLASS_96_BITS) - CASE(GL_VIEW_CLASS_64_BITS) - CASE(GL_VIEW_CLASS_48_BITS) - CASE(GL_VIEW_CLASS_32_BITS) - CASE(GL_VIEW_CLASS_24_BITS) - CASE(GL_VIEW_CLASS_16_BITS) - CASE(GL_VIEW_CLASS_8_BITS) - CASE(GL_VIEW_CLASS_S3TC_DXT1_RGB) - CASE(GL_VIEW_CLASS_S3TC_DXT1_RGBA) - CASE(GL_VIEW_CLASS_S3TC_DXT3_RGBA) - CASE(GL_VIEW_CLASS_S3TC_DXT5_RGBA) - CASE(GL_VIEW_CLASS_RGTC1_RED) - CASE(GL_VIEW_CLASS_RGTC2_RG) - CASE(GL_VIEW_CLASS_BPTC_UNORM) - CASE(GL_VIEW_CLASS_BPTC_FLOAT) - CASE(GL_UNIFORM) - CASE(GL_UNIFORM_BLOCK) - CASE(GL_PROGRAM_INPUT) - CASE(GL_PROGRAM_OUTPUT) - CASE(GL_BUFFER_VARIABLE) - CASE(GL_SHADER_STORAGE_BLOCK) - CASE(GL_VERTEX_SUBROUTINE) - CASE(GL_TESS_CONTROL_SUBROUTINE) - CASE(GL_TESS_EVALUATION_SUBROUTINE) - CASE(GL_GEOMETRY_SUBROUTINE) - CASE(GL_FRAGMENT_SUBROUTINE) - CASE(GL_COMPUTE_SUBROUTINE) - CASE(GL_VERTEX_SUBROUTINE_UNIFORM) - CASE(GL_TESS_CONTROL_SUBROUTINE_UNIFORM) - CASE(GL_TESS_EVALUATION_SUBROUTINE_UNIFORM) - CASE(GL_GEOMETRY_SUBROUTINE_UNIFORM) - CASE(GL_FRAGMENT_SUBROUTINE_UNIFORM) - CASE(GL_COMPUTE_SUBROUTINE_UNIFORM) - CASE(GL_TRANSFORM_FEEDBACK_VARYING) - CASE(GL_ACTIVE_RESOURCES) - CASE(GL_MAX_NAME_LENGTH) - CASE(GL_MAX_NUM_ACTIVE_VARIABLES) - CASE(GL_MAX_NUM_COMPATIBLE_SUBROUTINES) - CASE(GL_NAME_LENGTH) - CASE(GL_TYPE) - CASE(GL_ARRAY_SIZE) - CASE(GL_OFFSET) - CASE(GL_BLOCK_INDEX) - CASE(GL_ARRAY_STRIDE) - CASE(GL_MATRIX_STRIDE) - CASE(GL_IS_ROW_MAJOR) - CASE(GL_ATOMIC_COUNTER_BUFFER_INDEX) - CASE(GL_BUFFER_BINDING) - CASE(GL_BUFFER_DATA_SIZE) - CASE(GL_NUM_ACTIVE_VARIABLES) - CASE(GL_ACTIVE_VARIABLES) - CASE(GL_REFERENCED_BY_VERTEX_SHADER) - CASE(GL_REFERENCED_BY_TESS_CONTROL_SHADER) - CASE(GL_REFERENCED_BY_TESS_EVALUATION_SHADER) - CASE(GL_REFERENCED_BY_GEOMETRY_SHADER) - CASE(GL_REFERENCED_BY_FRAGMENT_SHADER) - CASE(GL_REFERENCED_BY_COMPUTE_SHADER) - CASE(GL_TOP_LEVEL_ARRAY_SIZE) - CASE(GL_TOP_LEVEL_ARRAY_STRIDE) - CASE(GL_LOCATION) - CASE(GL_LOCATION_INDEX) - CASE(GL_IS_PER_PATCH) - CASE(GL_SHADER_STORAGE_BUFFER) - CASE(GL_SHADER_STORAGE_BUFFER_BINDING) - CASE(GL_SHADER_STORAGE_BUFFER_START) - CASE(GL_SHADER_STORAGE_BUFFER_SIZE) - CASE(GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS) - CASE(GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS) - CASE(GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS) - CASE(GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS) - CASE(GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS) - CASE(GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS) - CASE(GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS) - CASE(GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS) - CASE(GL_MAX_SHADER_STORAGE_BLOCK_SIZE) - CASE(GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT) - CASE(GL_SHADER_STORAGE_BARRIER_BIT) - //CASE(GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES) - CASE(GL_DEPTH_STENCIL_TEXTURE_MODE) - CASE(GL_TEXTURE_BUFFER_OFFSET) - CASE(GL_TEXTURE_BUFFER_SIZE) - CASE(GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT) - CASE(GL_TEXTURE_VIEW_MIN_LEVEL) - CASE(GL_TEXTURE_VIEW_NUM_LEVELS) - CASE(GL_TEXTURE_VIEW_MIN_LAYER) - CASE(GL_TEXTURE_VIEW_NUM_LAYERS) - CASE(GL_TEXTURE_IMMUTABLE_LEVELS) - CASE(GL_VERTEX_ATTRIB_BINDING) - CASE(GL_VERTEX_ATTRIB_RELATIVE_OFFSET) - CASE(GL_VERTEX_BINDING_DIVISOR) - CASE(GL_VERTEX_BINDING_OFFSET) - CASE(GL_VERTEX_BINDING_STRIDE) - CASE(GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET) - CASE(GL_MAX_VERTEX_ATTRIB_BINDINGS) - CASE(GL_VERTEX_BINDING_BUFFER) - //CASE(GL_VERSION_4_4) - CASE(GL_MAX_VERTEX_ATTRIB_STRIDE) - CASE(GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED) - //CASE(GL_TEXTURE_BUFFER_BINDING) - //CASE(GL_MAP_PERSISTENT_BIT) - //CASE(GL_MAP_COHERENT_BIT) - //CASE(GL_DYNAMIC_STORAGE_BIT) - //CASE(GL_CLIENT_STORAGE_BIT) - //CASE(GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT) - CASE(GL_BUFFER_IMMUTABLE_STORAGE) - CASE(GL_BUFFER_STORAGE_FLAGS) - CASE(GL_CLEAR_TEXTURE) - CASE(GL_LOCATION_COMPONENT) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_INDEX) - CASE(GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE) - CASE(GL_QUERY_BUFFER) - CASE(GL_QUERY_BUFFER_BARRIER_BIT) - CASE(GL_QUERY_BUFFER_BINDING) - CASE(GL_QUERY_RESULT_NO_WAIT) - CASE(GL_MIRROR_CLAMP_TO_EDGE) - //CASE(GL_VERSION_4_5) - CASE(GL_CONTEXT_LOST) - CASE(GL_NEGATIVE_ONE_TO_ONE) - CASE(GL_ZERO_TO_ONE) - CASE(GL_CLIP_ORIGIN) - CASE(GL_CLIP_DEPTH_MODE) - CASE(GL_QUERY_WAIT_INVERTED) - CASE(GL_QUERY_NO_WAIT_INVERTED) - CASE(GL_QUERY_BY_REGION_WAIT_INVERTED) - CASE(GL_QUERY_BY_REGION_NO_WAIT_INVERTED) - CASE(GL_MAX_CULL_DISTANCES) - CASE(GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES) - CASE(GL_TEXTURE_TARGET) - CASE(GL_QUERY_TARGET) - CASE(GL_GUILTY_CONTEXT_RESET) - CASE(GL_INNOCENT_CONTEXT_RESET) - CASE(GL_UNKNOWN_CONTEXT_RESET) - CASE(GL_RESET_NOTIFICATION_STRATEGY) - CASE(GL_LOSE_CONTEXT_ON_RESET) - CASE(GL_NO_RESET_NOTIFICATION) - //CASE(GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT) - CASE(GL_CONTEXT_RELEASE_BEHAVIOR) - CASE(GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH) - CASE(GL_UNSIGNED_INT64_ARB) - CASE(GL_SYNC_CL_EVENT_ARB) - CASE(GL_SYNC_CL_EVENT_COMPLETE_ARB) - CASE(GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB) - //CASE(GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB) - CASE(GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB) - //CASE(GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB) - //CASE(GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB) - //CASE(GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB) - //CASE(GL_DEBUG_CALLBACK_FUNCTION_ARB) - //CASE(GL_DEBUG_CALLBACK_USER_PARAM_ARB) - //CASE(GL_DEBUG_SOURCE_API_ARB) - //CASE(GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB) - //CASE(GL_DEBUG_SOURCE_SHADER_COMPILER_ARB) - //CASE(GL_DEBUG_SOURCE_THIRD_PARTY_ARB) - //CASE(GL_DEBUG_SOURCE_APPLICATION_ARB) - //CASE(GL_DEBUG_SOURCE_OTHER_ARB) - //CASE(GL_DEBUG_TYPE_ERROR_ARB) - //CASE(GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB) - //CASE(GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB) - //CASE(GL_DEBUG_TYPE_PORTABILITY_ARB) - //CASE(GL_DEBUG_TYPE_PERFORMANCE_ARB) - //CASE(GL_DEBUG_TYPE_OTHER_ARB) - //CASE(GL_MAX_DEBUG_MESSAGE_LENGTH_ARB) - //CASE(GL_MAX_DEBUG_LOGGED_MESSAGES_ARB) - //CASE(GL_DEBUG_LOGGED_MESSAGES_ARB) - //CASE(GL_DEBUG_SEVERITY_HIGH_ARB) - //CASE(GL_DEBUG_SEVERITY_MEDIUM_ARB) - //CASE(GL_DEBUG_SEVERITY_LOW_ARB) - CASE(GL_BLEND_COLOR) - //CASE(GL_BLEND_EQUATION) - CASE(GL_PARAMETER_BUFFER_ARB) - CASE(GL_PARAMETER_BUFFER_BINDING_ARB) - CASE(GL_SRGB_DECODE_ARB) - CASE(GL_VERTICES_SUBMITTED_ARB) - CASE(GL_PRIMITIVES_SUBMITTED_ARB) - CASE(GL_VERTEX_SHADER_INVOCATIONS_ARB) - CASE(GL_TESS_CONTROL_SHADER_PATCHES_ARB) - CASE(GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB) - CASE(GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB) - CASE(GL_FRAGMENT_SHADER_INVOCATIONS_ARB) - CASE(GL_COMPUTE_SHADER_INVOCATIONS_ARB) - CASE(GL_CLIPPING_INPUT_PRIMITIVES_ARB) - CASE(GL_CLIPPING_OUTPUT_PRIMITIVES_ARB) - //CASE(GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB) - //CASE(GL_LOSE_CONTEXT_ON_RESET_ARB) - //CASE(GL_GUILTY_CONTEXT_RESET_ARB) - //CASE(GL_INNOCENT_CONTEXT_RESET_ARB) - //CASE(GL_UNKNOWN_CONTEXT_RESET_ARB) - //CASE(GL_RESET_NOTIFICATION_STRATEGY_ARB) - //CASE(GL_NO_RESET_NOTIFICATION_ARB) - //CASE(GL_SAMPLE_SHADING_ARB) - //CASE(GL_MIN_SAMPLE_SHADING_VALUE_ARB) - CASE(GL_SHADER_INCLUDE_ARB) - CASE(GL_NAMED_STRING_LENGTH_ARB) - CASE(GL_NAMED_STRING_TYPE_ARB) - //CASE(GL_SPARSE_STORAGE_BIT_ARB) - CASE(GL_SPARSE_BUFFER_PAGE_SIZE_ARB) - CASE(GL_TEXTURE_SPARSE_ARB) - CASE(GL_VIRTUAL_PAGE_SIZE_INDEX_ARB) - CASE(GL_NUM_SPARSE_LEVELS_ARB) - CASE(GL_NUM_VIRTUAL_PAGE_SIZES_ARB) - CASE(GL_VIRTUAL_PAGE_SIZE_X_ARB) - CASE(GL_VIRTUAL_PAGE_SIZE_Y_ARB) - CASE(GL_VIRTUAL_PAGE_SIZE_Z_ARB) - CASE(GL_MAX_SPARSE_TEXTURE_SIZE_ARB) - CASE(GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB) - CASE(GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB) - CASE(GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB) - //CASE(GL_COMPRESSED_RGBA_BPTC_UNORM_ARB) - //CASE(GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB) - //CASE(GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB) - //CASE(GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB) - //CASE(GL_TEXTURE_CUBE_MAP_ARRAY_ARB) - //CASE(GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB) - //CASE(GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB) - //CASE(GL_SAMPLER_CUBE_MAP_ARRAY_ARB) - //CASE(GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB) - //CASE(GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB) - //CASE(GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB) - //CASE(GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB) - //CASE(GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB) - CASE(GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB) - CASE(GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB) - CASE(GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB) - //CASE(GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR) - CASE(GL_CONTEXT_ROBUST_ACCESS) - //CASE(GL_ACCUM) - CASE(GL_LOAD) - CASE(GL_RETURN) - CASE(GL_MULT) - CASE(GL_ADD) - //CASE(GL_CURRENT_BIT) - //CASE(GL_POINT_BIT) - //CASE(GL_LINE_BIT) - //CASE(GL_POLYGON_BIT) - //CASE(GL_POLYGON_STIPPLE_BIT) - //CASE(GL_PIXEL_MODE_BIT) - //CASE(GL_LIGHTING_BIT) - //CASE(GL_FOG_BIT) - //CASE(GL_ACCUM_BUFFER_BIT) - //CASE(GL_VIEWPORT_BIT) - //CASE(GL_TRANSFORM_BIT) - //CASE(GL_ENABLE_BIT) - //CASE(GL_HINT_BIT) - CASE(GL_EVAL_BIT) - CASE(GL_LIST_BIT) - CASE(GL_TEXTURE_BIT) - CASE(GL_SCISSOR_BIT) - CASE(GL_ALL_ATTRIB_BITS) - //CASE(GL_QUAD_STRIP) - CASE(GL_POLYGON) - //CASE(GL_CLIP_PLANE0) - //CASE(GL_CLIP_PLANE1) - //CASE(GL_CLIP_PLANE2) - //CASE(GL_CLIP_PLANE3) - //CASE(GL_CLIP_PLANE4) - //CASE(GL_CLIP_PLANE5) - CASE(GL_2_BYTES) - CASE(GL_3_BYTES) - CASE(GL_4_BYTES) - CASE(GL_AUX0) - CASE(GL_AUX1) - CASE(GL_AUX2) - CASE(GL_AUX3) - CASE(GL_2D) - CASE(GL_3D) - CASE(GL_3D_COLOR) - CASE(GL_3D_COLOR_TEXTURE) - CASE(GL_4D_COLOR_TEXTURE) - CASE(GL_PASS_THROUGH_TOKEN) - CASE(GL_POINT_TOKEN) - CASE(GL_LINE_TOKEN) - CASE(GL_POLYGON_TOKEN) - CASE(GL_BITMAP_TOKEN) - CASE(GL_DRAW_PIXEL_TOKEN) - CASE(GL_COPY_PIXEL_TOKEN) - CASE(GL_LINE_RESET_TOKEN) - //CASE(GL_EXP) - CASE(GL_EXP2) - CASE(GL_COEFF) - CASE(GL_ORDER) - CASE(GL_DOMAIN) - CASE(GL_CURRENT_COLOR) - CASE(GL_CURRENT_INDEX) - CASE(GL_CURRENT_NORMAL) - CASE(GL_CURRENT_TEXTURE_COORDS) - CASE(GL_CURRENT_RASTER_COLOR) - CASE(GL_CURRENT_RASTER_INDEX) - CASE(GL_CURRENT_RASTER_TEXTURE_COORDS) - CASE(GL_CURRENT_RASTER_POSITION) - CASE(GL_CURRENT_RASTER_POSITION_VALID) - CASE(GL_CURRENT_RASTER_DISTANCE) - CASE(GL_POINT_SMOOTH) - CASE(GL_LINE_STIPPLE) - CASE(GL_LINE_STIPPLE_PATTERN) - CASE(GL_LINE_STIPPLE_REPEAT) - CASE(GL_LIST_MODE) - CASE(GL_MAX_LIST_NESTING) - CASE(GL_LIST_BASE) - CASE(GL_LIST_INDEX) - CASE(GL_POLYGON_STIPPLE) - CASE(GL_EDGE_FLAG) - CASE(GL_LIGHTING) - CASE(GL_LIGHT_MODEL_LOCAL_VIEWER) - CASE(GL_LIGHT_MODEL_TWO_SIDE) - CASE(GL_LIGHT_MODEL_AMBIENT) - CASE(GL_SHADE_MODEL) - CASE(GL_COLOR_MATERIAL_FACE) - CASE(GL_COLOR_MATERIAL_PARAMETER) - CASE(GL_COLOR_MATERIAL) - CASE(GL_FOG) - CASE(GL_FOG_INDEX) - CASE(GL_FOG_DENSITY) - CASE(GL_FOG_START) - CASE(GL_FOG_END) - CASE(GL_FOG_MODE) - CASE(GL_FOG_COLOR) - CASE(GL_ACCUM_CLEAR_VALUE) - CASE(GL_MATRIX_MODE) - CASE(GL_NORMALIZE) - CASE(GL_MODELVIEW_STACK_DEPTH) - CASE(GL_PROJECTION_STACK_DEPTH) - CASE(GL_TEXTURE_STACK_DEPTH) - CASE(GL_MODELVIEW_MATRIX) - CASE(GL_PROJECTION_MATRIX) - CASE(GL_TEXTURE_MATRIX) - CASE(GL_ATTRIB_STACK_DEPTH) - CASE(GL_CLIENT_ATTRIB_STACK_DEPTH) - CASE(GL_ALPHA_TEST) - CASE(GL_ALPHA_TEST_FUNC) - CASE(GL_ALPHA_TEST_REF) - CASE(GL_INDEX_LOGIC_OP) - CASE(GL_AUX_BUFFERS) - CASE(GL_INDEX_CLEAR_VALUE) - CASE(GL_INDEX_WRITEMASK) - CASE(GL_INDEX_MODE) - CASE(GL_RGBA_MODE) - CASE(GL_RENDER_MODE) - CASE(GL_PERSPECTIVE_CORRECTION_HINT) - CASE(GL_POINT_SMOOTH_HINT) - CASE(GL_FOG_HINT) - CASE(GL_TEXTURE_GEN_S) - CASE(GL_TEXTURE_GEN_T) - CASE(GL_TEXTURE_GEN_R) - CASE(GL_TEXTURE_GEN_Q) - CASE(GL_PIXEL_MAP_I_TO_I) - CASE(GL_PIXEL_MAP_S_TO_S) - CASE(GL_PIXEL_MAP_I_TO_R) - CASE(GL_PIXEL_MAP_I_TO_G) - CASE(GL_PIXEL_MAP_I_TO_B) - CASE(GL_PIXEL_MAP_I_TO_A) - CASE(GL_PIXEL_MAP_R_TO_R) - CASE(GL_PIXEL_MAP_G_TO_G) - CASE(GL_PIXEL_MAP_B_TO_B) - CASE(GL_PIXEL_MAP_A_TO_A) - CASE(GL_PIXEL_MAP_I_TO_I_SIZE) - CASE(GL_PIXEL_MAP_S_TO_S_SIZE) - CASE(GL_PIXEL_MAP_I_TO_R_SIZE) - CASE(GL_PIXEL_MAP_I_TO_G_SIZE) - CASE(GL_PIXEL_MAP_I_TO_B_SIZE) - CASE(GL_PIXEL_MAP_I_TO_A_SIZE) - CASE(GL_PIXEL_MAP_R_TO_R_SIZE) - CASE(GL_PIXEL_MAP_G_TO_G_SIZE) - CASE(GL_PIXEL_MAP_B_TO_B_SIZE) - CASE(GL_PIXEL_MAP_A_TO_A_SIZE) - CASE(GL_MAP_COLOR) - CASE(GL_MAP_STENCIL) - CASE(GL_INDEX_SHIFT) - CASE(GL_INDEX_OFFSET) - CASE(GL_RED_SCALE) - CASE(GL_RED_BIAS) - CASE(GL_ZOOM_X) - CASE(GL_ZOOM_Y) - CASE(GL_GREEN_SCALE) - CASE(GL_GREEN_BIAS) - CASE(GL_BLUE_SCALE) - CASE(GL_BLUE_BIAS) - CASE(GL_ALPHA_SCALE) - CASE(GL_ALPHA_BIAS) - CASE(GL_DEPTH_SCALE) - CASE(GL_DEPTH_BIAS) - CASE(GL_MAX_EVAL_ORDER) - CASE(GL_MAX_LIGHTS) - //CASE(GL_MAX_CLIP_PLANES) - CASE(GL_MAX_PIXEL_MAP_TABLE) - CASE(GL_MAX_ATTRIB_STACK_DEPTH) - CASE(GL_MAX_MODELVIEW_STACK_DEPTH) - CASE(GL_MAX_NAME_STACK_DEPTH) - CASE(GL_MAX_PROJECTION_STACK_DEPTH) - CASE(GL_MAX_TEXTURE_STACK_DEPTH) - CASE(GL_MAX_CLIENT_ATTRIB_STACK_DEPTH) - CASE(GL_INDEX_BITS) - CASE(GL_RED_BITS) - CASE(GL_GREEN_BITS) - CASE(GL_BLUE_BITS) - CASE(GL_ALPHA_BITS) - CASE(GL_DEPTH_BITS) - CASE(GL_STENCIL_BITS) - CASE(GL_ACCUM_RED_BITS) - CASE(GL_ACCUM_GREEN_BITS) - CASE(GL_ACCUM_BLUE_BITS) - CASE(GL_ACCUM_ALPHA_BITS) - CASE(GL_NAME_STACK_DEPTH) - CASE(GL_AUTO_NORMAL) - CASE(GL_MAP1_COLOR_4) - CASE(GL_MAP1_INDEX) - CASE(GL_MAP1_NORMAL) - CASE(GL_MAP1_TEXTURE_COORD_1) - CASE(GL_MAP1_TEXTURE_COORD_2) - CASE(GL_MAP1_TEXTURE_COORD_3) - CASE(GL_MAP1_TEXTURE_COORD_4) - CASE(GL_MAP1_VERTEX_3) - CASE(GL_MAP1_VERTEX_4) - CASE(GL_MAP2_COLOR_4) - CASE(GL_MAP2_INDEX) - CASE(GL_MAP2_NORMAL) - CASE(GL_MAP2_TEXTURE_COORD_1) - CASE(GL_MAP2_TEXTURE_COORD_2) - CASE(GL_MAP2_TEXTURE_COORD_3) - CASE(GL_MAP2_TEXTURE_COORD_4) - CASE(GL_MAP2_VERTEX_3) - CASE(GL_MAP2_VERTEX_4) - CASE(GL_MAP1_GRID_DOMAIN) - CASE(GL_MAP1_GRID_SEGMENTS) - CASE(GL_MAP2_GRID_DOMAIN) - CASE(GL_MAP2_GRID_SEGMENTS) - CASE(GL_FEEDBACK_BUFFER_POINTER) - CASE(GL_FEEDBACK_BUFFER_SIZE) - CASE(GL_FEEDBACK_BUFFER_TYPE) - CASE(GL_SELECTION_BUFFER_POINTER) - CASE(GL_SELECTION_BUFFER_SIZE) - CASE(GL_TEXTURE_BORDER) - //CASE(GL_LIGHT0) - CASE(GL_LIGHT1) - CASE(GL_LIGHT2) - CASE(GL_LIGHT3) - CASE(GL_LIGHT4) - CASE(GL_LIGHT5) - CASE(GL_LIGHT6) - CASE(GL_LIGHT7) - CASE(GL_AMBIENT) - CASE(GL_DIFFUSE) - CASE(GL_SPECULAR) - CASE(GL_POSITION) - CASE(GL_SPOT_DIRECTION) - CASE(GL_SPOT_EXPONENT) - CASE(GL_SPOT_CUTOFF) - CASE(GL_CONSTANT_ATTENUATION) - CASE(GL_LINEAR_ATTENUATION) - CASE(GL_QUADRATIC_ATTENUATION) - CASE(GL_COMPILE) - CASE(GL_COMPILE_AND_EXECUTE) - CASE(GL_EMISSION) - CASE(GL_SHININESS) - CASE(GL_AMBIENT_AND_DIFFUSE) - CASE(GL_COLOR_INDEXES) - CASE(GL_MODELVIEW) - CASE(GL_PROJECTION) - CASE(GL_COLOR_INDEX) - CASE(GL_LUMINANCE) - CASE(GL_LUMINANCE_ALPHA) - CASE(GL_BITMAP) - CASE(GL_RENDER) - CASE(GL_FEEDBACK) - CASE(GL_SELECT) - CASE(GL_FLAT) - CASE(GL_SMOOTH) - //CASE(GL_S) - CASE(GL_T) - CASE(GL_R) - CASE(GL_Q) - CASE(GL_MODULATE) - CASE(GL_DECAL) - CASE(GL_TEXTURE_ENV_MODE) - CASE(GL_TEXTURE_ENV_COLOR) - CASE(GL_TEXTURE_ENV) - CASE(GL_EYE_LINEAR) - CASE(GL_OBJECT_LINEAR) - CASE(GL_SPHERE_MAP) - CASE(GL_TEXTURE_GEN_MODE) - CASE(GL_OBJECT_PLANE) - CASE(GL_EYE_PLANE) - CASE(GL_CLAMP) - //CASE(GL_CLIENT_PIXEL_STORE_BIT) - //CASE(GL_CLIENT_VERTEX_ARRAY_BIT) - CASE(GL_ALPHA4) - CASE(GL_ALPHA8) - CASE(GL_ALPHA12) - CASE(GL_ALPHA16) - CASE(GL_LUMINANCE4) - CASE(GL_LUMINANCE8) - CASE(GL_LUMINANCE12) - CASE(GL_LUMINANCE16) - CASE(GL_LUMINANCE4_ALPHA4) - CASE(GL_LUMINANCE6_ALPHA2) - CASE(GL_LUMINANCE8_ALPHA8) - CASE(GL_LUMINANCE12_ALPHA4) - CASE(GL_LUMINANCE12_ALPHA12) - CASE(GL_LUMINANCE16_ALPHA16) - CASE(GL_INTENSITY) - CASE(GL_INTENSITY4) - CASE(GL_INTENSITY8) - CASE(GL_INTENSITY12) - CASE(GL_INTENSITY16) - CASE(GL_TEXTURE_LUMINANCE_SIZE) - CASE(GL_TEXTURE_INTENSITY_SIZE) - CASE(GL_TEXTURE_PRIORITY) - CASE(GL_TEXTURE_RESIDENT) - CASE(GL_NORMAL_ARRAY) - CASE(GL_COLOR_ARRAY) - CASE(GL_INDEX_ARRAY) - CASE(GL_TEXTURE_COORD_ARRAY) - CASE(GL_EDGE_FLAG_ARRAY) - CASE(GL_VERTEX_ARRAY_SIZE) - CASE(GL_VERTEX_ARRAY_TYPE) - CASE(GL_VERTEX_ARRAY_STRIDE) - CASE(GL_NORMAL_ARRAY_TYPE) - CASE(GL_NORMAL_ARRAY_STRIDE) - CASE(GL_COLOR_ARRAY_SIZE) - CASE(GL_COLOR_ARRAY_TYPE) - CASE(GL_COLOR_ARRAY_STRIDE) - CASE(GL_INDEX_ARRAY_TYPE) - CASE(GL_INDEX_ARRAY_STRIDE) - CASE(GL_TEXTURE_COORD_ARRAY_SIZE) - CASE(GL_TEXTURE_COORD_ARRAY_TYPE) - CASE(GL_TEXTURE_COORD_ARRAY_STRIDE) - CASE(GL_EDGE_FLAG_ARRAY_STRIDE) - CASE(GL_VERTEX_ARRAY_POINTER) - CASE(GL_NORMAL_ARRAY_POINTER) - CASE(GL_COLOR_ARRAY_POINTER) - CASE(GL_INDEX_ARRAY_POINTER) - CASE(GL_TEXTURE_COORD_ARRAY_POINTER) - CASE(GL_EDGE_FLAG_ARRAY_POINTER) - CASE(GL_V2F) - CASE(GL_V3F) - CASE(GL_C4UB_V2F) - CASE(GL_C4UB_V3F) - CASE(GL_C3F_V3F) - CASE(GL_N3F_V3F) - CASE(GL_C4F_N3F_V3F) - CASE(GL_T2F_V3F) - CASE(GL_T4F_V4F) - CASE(GL_T2F_C4UB_V3F) - CASE(GL_T2F_C3F_V3F) - CASE(GL_T2F_N3F_V3F) - CASE(GL_T2F_C4F_N3F_V3F) - CASE(GL_T4F_C4F_N3F_V4F) - //CASE(GL_VERTEX_ARRAY_EXT) - //CASE(GL_NORMAL_ARRAY_EXT) - //CASE(GL_COLOR_ARRAY_EXT) - //CASE(GL_INDEX_ARRAY_EXT) - //CASE(GL_TEXTURE_COORD_ARRAY_EXT) - //CASE(GL_EDGE_FLAG_ARRAY_EXT) - //CASE(GL_VERTEX_ARRAY_SIZE_EXT) - //CASE(GL_VERTEX_ARRAY_TYPE_EXT) - //CASE(GL_VERTEX_ARRAY_STRIDE_EXT) - CASE(GL_VERTEX_ARRAY_COUNT_EXT) - //CASE(GL_NORMAL_ARRAY_TYPE_EXT) - //CASE(GL_NORMAL_ARRAY_STRIDE_EXT) - CASE(GL_NORMAL_ARRAY_COUNT_EXT) - //CASE(GL_COLOR_ARRAY_SIZE_EXT) - //CASE(GL_COLOR_ARRAY_TYPE_EXT) - //CASE(GL_COLOR_ARRAY_STRIDE_EXT) - CASE(GL_COLOR_ARRAY_COUNT_EXT) - //CASE(GL_INDEX_ARRAY_TYPE_EXT) - //CASE(GL_INDEX_ARRAY_STRIDE_EXT) - CASE(GL_INDEX_ARRAY_COUNT_EXT) - //CASE(GL_TEXTURE_COORD_ARRAY_SIZE_EXT) - //CASE(GL_TEXTURE_COORD_ARRAY_TYPE_EXT) - //CASE(GL_TEXTURE_COORD_ARRAY_STRIDE_EXT) - CASE(GL_TEXTURE_COORD_ARRAY_COUNT_EXT) - //CASE(GL_EDGE_FLAG_ARRAY_STRIDE_EXT) - CASE(GL_EDGE_FLAG_ARRAY_COUNT_EXT) - //CASE(GL_VERTEX_ARRAY_POINTER_EXT) - //CASE(GL_NORMAL_ARRAY_POINTER_EXT) - //CASE(GL_COLOR_ARRAY_POINTER_EXT) - //CASE(GL_INDEX_ARRAY_POINTER_EXT) - //CASE(GL_TEXTURE_COORD_ARRAY_POINTER_EXT) - //CASE(GL_EDGE_FLAG_ARRAY_POINTER_EXT) - //CASE(GL_BGR_EXT) - //CASE(GL_BGRA_EXT) - //CASE(GL_COLOR_TABLE_FORMAT_EXT) - //CASE(GL_COLOR_TABLE_WIDTH_EXT) - //CASE(GL_COLOR_TABLE_RED_SIZE_EXT) - //CASE(GL_COLOR_TABLE_GREEN_SIZE_EXT) - //CASE(GL_COLOR_TABLE_BLUE_SIZE_EXT) - //CASE(GL_COLOR_TABLE_ALPHA_SIZE_EXT) - //CASE(GL_COLOR_TABLE_LUMINANCE_SIZE_EXT) - //CASE(GL_COLOR_TABLE_INTENSITY_SIZE_EXT) - CASE(GL_COLOR_INDEX1_EXT) - CASE(GL_COLOR_INDEX2_EXT) - CASE(GL_COLOR_INDEX4_EXT) - CASE(GL_COLOR_INDEX8_EXT) - CASE(GL_COLOR_INDEX12_EXT) - CASE(GL_COLOR_INDEX16_EXT) - //CASE(GL_MAX_ELEMENTS_VERTICES_WIN) - //CASE(GL_MAX_ELEMENTS_INDICES_WIN) - CASE(GL_PHONG_WIN) - CASE(GL_PHONG_HINT_WIN) - CASE(GL_FOG_SPECULAR_TEXTURE_WIN) - - default: - sprintf(str, "0x%x", value); - return str; - } -#undef CASE - } - - const char* DiligentBlendFactorToString(Diligent::BLEND_FACTOR value) { - static char str[128]; - switch (value) { -#define CASE(value) \ - case value: return #value; - CASE(Diligent::BLEND_FACTOR_UNDEFINED) - CASE(Diligent::BLEND_FACTOR_ZERO) - CASE(Diligent::BLEND_FACTOR_ONE) - CASE(Diligent::BLEND_FACTOR_SRC_COLOR) - CASE(Diligent::BLEND_FACTOR_INV_SRC_COLOR) - CASE(Diligent::BLEND_FACTOR_SRC_ALPHA) - CASE(Diligent::BLEND_FACTOR_INV_SRC_ALPHA) - CASE(Diligent::BLEND_FACTOR_DEST_ALPHA) - CASE(Diligent::BLEND_FACTOR_DEST_COLOR) - CASE(Diligent::BLEND_FACTOR_INV_DEST_COLOR) - CASE(Diligent::BLEND_FACTOR_SRC_ALPHA_SAT) - CASE(Diligent::BLEND_FACTOR_BLEND_FACTOR) - CASE(Diligent::BLEND_FACTOR_INV_BLEND_FACTOR) - CASE(Diligent::BLEND_FACTOR_SRC1_COLOR) - CASE(Diligent::BLEND_FACTOR_INV_SRC1_COLOR) - CASE(Diligent::BLEND_FACTOR_SRC1_ALPHA) - CASE(Diligent::BLEND_FACTOR_INV_SRC1_ALPHA) - - default: - sprintf(str, "0x%x", value); - return str; - } -#undef CASE - } -} - - diff --git a/MG/MG_UTIL/Debug/Debug.h b/MG/MG_UTIL/Debug/Debug.h deleted file mode 100644 index eeb185de..00000000 --- a/MG/MG_UTIL/Debug/Debug.h +++ /dev/null @@ -1,30 +0,0 @@ -// -// Created by BZLZHH on 2025/1/26. -// - -#ifndef MOBILEGL_DEBUG_H -#define MOBILEGL_DEBUG_H - -#define FORCE_SYNC_WITH_LOG_FILE 0 - -namespace MG_Util { - namespace Debug { - const char* GetOSName(); - - void LogD (const char* format, ...); - void LogW (const char* format, ...); - void LogE (const char* format, ...); - void LogI (const char* format, ...); - void LogF (const char* format, ...); - void LogClear(); - void LogInit(); - void LogWrite(const char* format, va_list args); - - const char* GLEnumToString(::GLenum value); - const char* DiligentBlendFactorToString(Diligent::BLEND_FACTOR value); - } -} - -#define MOBILEGL_DEBUG_H - -#endif //MOBILEGL_DEBUG_H diff --git a/MG/MG_UTIL/Program/DebugTool.cpp b/MG/MG_UTIL/Program/DebugTool.cpp deleted file mode 100644 index 77a53c3f..00000000 --- a/MG/MG_UTIL/Program/DebugTool.cpp +++ /dev/null @@ -1,149 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#include "../../Includes.h" - -namespace MG_Util::Program { - std::string GLTypeToString(GLenum type) { - switch(type) { - case GL_FLOAT: return "float"; - case GL_FLOAT_VEC2: return "vec2"; - case GL_FLOAT_VEC3: return "vec3"; - case GL_FLOAT_VEC4: return "vec4"; - case GL_INT: return "int"; - case GL_INT_VEC2: return "ivec2"; - case GL_INT_VEC3: return "ivec3"; - case GL_INT_VEC4: return "ivec4"; - case GL_UNSIGNED_INT: return "uint"; - case GL_UNSIGNED_INT_VEC2: return "uvec2"; - case GL_UNSIGNED_INT_VEC3: return "uvec3"; - case GL_UNSIGNED_INT_VEC4: return "uvec4"; - case GL_BOOL: return "bool"; - case GL_BOOL_VEC2: return "bvec2"; - case GL_BOOL_VEC3: return "bvec3"; - case GL_BOOL_VEC4: return "bvec4"; - case GL_FLOAT_MAT2: return "mat2"; - case GL_FLOAT_MAT3: return "mat3"; - case GL_FLOAT_MAT4: return "mat4"; - case GL_FLOAT_MAT2x3: return "mat2x3"; - case GL_FLOAT_MAT2x4: return "mat2x4"; - case GL_FLOAT_MAT3x2: return "mat3x2"; - case GL_FLOAT_MAT3x4: return "mat3x4"; - case GL_FLOAT_MAT4x2: return "mat4x2"; - case GL_FLOAT_MAT4x3: return "mat4x3"; - case GL_SAMPLER_1D: return "sampler1D"; - case GL_SAMPLER_2D: return "sampler2D"; - case GL_SAMPLER_3D: return "sampler3D"; - case GL_SAMPLER_CUBE: return "samplerCube"; - case GL_SAMPLER_1D_SHADOW: return "sampler1DShadow"; - case GL_SAMPLER_2D_SHADOW: return "sampler2DShadow"; - case GL_SAMPLER_CUBE_SHADOW: return "samplerCubeShadow"; - case GL_SAMPLER_1D_ARRAY: return "sampler1DArray"; - case GL_SAMPLER_2D_ARRAY: return "sampler2DArray"; - case GL_SAMPLER_1D_ARRAY_SHADOW: return "sampler1DArrayShadow"; - case GL_SAMPLER_2D_ARRAY_SHADOW: return "sampler2DArrayShadow"; - case GL_SAMPLER_BUFFER: return "samplerBuffer"; - case GL_SAMPLER_2D_MULTISAMPLE: return "sampler2DMS"; - case GL_SAMPLER_2D_MULTISAMPLE_ARRAY: return "sampler2DMSArray"; - default: return "UnknownType(0x" + std::to_string(type) + ")"; - } - } - - std::string FormatUniformValue(const UniformValue& value) { - std::ostringstream ss; - ss << "["; - - const size_t elemCount = std::min(value.numElements, 16); - - switch(value.type) { - case GL_FLOAT: - case GL_FLOAT_VEC2: - case GL_FLOAT_VEC3: - case GL_FLOAT_VEC4: - case GL_FLOAT_MAT2: - case GL_FLOAT_MAT3: - case GL_FLOAT_MAT4: - case GL_FLOAT_MAT2x3: - case GL_FLOAT_MAT2x4: - case GL_FLOAT_MAT3x2: - case GL_FLOAT_MAT3x4: - case GL_FLOAT_MAT4x2: - case GL_FLOAT_MAT4x3: - for(size_t i=0; i 0) ss << ", "; - ss << (i < value.floatData.size() ? value.floatData[i] : 0.0f); - } - break; - - case GL_INT: - case GL_INT_VEC2: - case GL_INT_VEC3: - case GL_INT_VEC4: - for(size_t i=0; i 0) ss << ", "; - ss << (i < value.intData.size() ? value.intData[i] : 0); - } - break; - - case GL_UNSIGNED_INT: - case GL_UNSIGNED_INT_VEC2: - case GL_UNSIGNED_INT_VEC3: - case GL_UNSIGNED_INT_VEC4: - for(size_t i=0; i 0) ss << ", "; - ss << (i < value.uintData.size() ? value.uintData[i] : 0); - } - break; - - case GL_BOOL: - case GL_BOOL_VEC2: - case GL_BOOL_VEC3: - case GL_BOOL_VEC4: - for(size_t i=0; i 0) ss << ", "; - ss << (i < value.boolData.size() ? (value.boolData[i] ? "true" : "false") : "false"); - } - break; - - default: - ss << "N/A"; - } - - if (value.count > elemCount) ss << ", ..."; - ss << "]"; - return ss.str(); - } - - void DumpUniforms(const ProgramState& state, GLuint program) { - if constexpr (MG_Global::Common::LogLevel > MG_Constants::Common::LOG_LEVEL_DEBUG) - return; - - auto* prog = state.GetProgramObject(program); - if (!prog->linked.toBool()) { - MG_Util::Debug::LogE("Program %u not linked", program); - return; - } - MG_Util::Debug::LogD("=== Dumping uniforms for program %u ===", program); - for(const auto& [name, loc] : prog->uniformLocations) { - const auto& value = prog->uniformValues.at(name); - MG_Util::Debug::LogD("Uniform: %-24s Location: %-4d Type: %-16s Count: %-3d Value: %s", - name.c_str(), - loc, - GLTypeToString(value.type).c_str(), - value.count, - FormatUniformValue(value).c_str()); - } - } - - void DumpCurrentUniforms(const ProgramState& state) { - if (MG_Global::Common::LogLevel > MG_Constants::Common::LOG_LEVEL_DEBUG) - return; - - GLuint current = state.GetCurrentProgram(); - if (current == 0) { - return; - } - DumpUniforms(state, current); - } -} \ No newline at end of file diff --git a/MG/MG_UTIL/Program/DebugTool.h b/MG/MG_UTIL/Program/DebugTool.h deleted file mode 100644 index 74bcc9ff..00000000 --- a/MG/MG_UTIL/Program/DebugTool.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#ifndef MOBILEGL_PROGRAM_DEBUGTOOL_H -#define MOBILEGL_PROGRAM_DEBUGTOOL_H - -namespace MG_Util::Program { - std::string GLTypeToString(GLenum type); - std::string FormatUniformValue(const UniformValue& value); - void DumpUniforms(const ProgramState& state, GLuint program); - void DumpCurrentUniforms(const ProgramState& state); -} - -#endif //MOBILEGL_PROGRAM_DEBUGTOOL_H diff --git a/MG/MG_UTIL/Program/GLSLTool.cpp b/MG/MG_UTIL/Program/GLSLTool.cpp deleted file mode 100644 index 80841cf7..00000000 --- a/MG/MG_UTIL/Program/GLSLTool.cpp +++ /dev/null @@ -1,1162 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#include "../../Includes.h" - -namespace MG_Util::Program { - void RenameGLSLBuiltinsForVulkan(std::string &src) { -// static const std::vector> rules = { -// { std::regex(R"(gl_VertexID)"), "gl_VertexIndex" }, -// { std::regex(R"(gl_InstanceID)"), "gl_InstanceIndex" } -// }; -// -// for (auto &rule : rules) { -// src = std::regex_replace(src, rule.first, rule.second); -// } - size_t pos = src.find("gl_VertexID"); - if (pos != std::string::npos) { - src.replace(pos, strlen("gl_VertexID"), "gl_VertexIndex"); - } - - pos = src.find("gl_InstanceID"); - if (pos != std::string::npos) { - src.replace(pos, strlen("gl_InstanceID"), "gl_InstanceIndex"); - } - } - - std::string BindInputLayoutLocationsForGLSL( - std::vector& spirv, - MG_Global::unordered_map& name_location_map) - { - spvc_context context = nullptr; - spvc_parsed_ir ir = nullptr; - spvc_compiler compiler = nullptr; - spvc_resources resources = nullptr; - spvc_result result = SPVC_SUCCESS; - const char* glsl_source = nullptr; - std::string output_glsl; - - if ((result = spvc_context_create(&context)) != SPVC_SUCCESS) - { - MG_Util::Debug::LogE("[SPIRV-Cross] Failed to create context."); - return {}; - } - - if ((result = spvc_context_parse_spirv(context, - spirv.data(), - spirv.size(), - &ir)) != SPVC_SUCCESS) - { - spvc_context_destroy(context); - MG_Util::Debug::LogE("[SPIRV-Cross] Failed to parse SPIR-V."); - return {}; - } - - if ((result = spvc_context_create_compiler( - context, - SPVC_BACKEND_GLSL, - ir, - SPVC_CAPTURE_MODE_TAKE_OWNERSHIP, - &compiler)) != SPVC_SUCCESS) - { - spvc_context_destroy(context); - MG_Util::Debug::LogE("[SPIRV-Cross] Failed to create compiler."); - return {}; - } - - if ((result = spvc_compiler_create_shader_resources(compiler, &resources)) != SPVC_SUCCESS) - { - spvc_context_destroy(context); - MG_Util::Debug::LogE("[SPIRV-Cross] Failed to create shader resources."); - return {}; - } - - const spvc_reflected_resource* inputs = nullptr; - size_t num_inputs = 0; - if ((result = spvc_resources_get_resource_list_for_type( - resources, - SPVC_RESOURCE_TYPE_STAGE_INPUT, - &inputs, - &num_inputs)) != SPVC_SUCCESS) - { - spvc_context_destroy(context); - MG_Util::Debug::LogE("[SPIRV-Cross] Failed to get stage inputs."); - return {}; - } - - std::unordered_map name_to_id; - for (size_t i = 0; i < num_inputs; ++i) - { - name_to_id[inputs[i].name] = inputs[i].id; - } - - std::unordered_set used_locations; - - for (auto& kv : name_location_map) - { - const auto& name = kv.first; - GLint loc = kv.second; - auto it = name_to_id.find(name); - if (it == name_to_id.end()) - { - MG_Util::Debug::LogW("[SPIRV-Cross] Input name not found: %s", name.c_str()); - continue; - } - - spvc_compiler_set_decoration( - compiler, - it->second, - SpvDecorationLocation, - loc); - - used_locations.insert(loc); - } - - GLint next_free_loc = 0; - for (size_t i = 0; i < num_inputs; ++i) - { - auto& res = inputs[i]; - const auto& name = res.name; - auto var_id = res.id; - - if (name_location_map.find(name) != name_location_map.end()) - continue; - - uint32_t curr_loc = 0; - bool has_loc = false; - curr_loc = spvc_compiler_get_decoration(compiler, var_id, SpvDecorationLocation); - if (spvc_compiler_has_decoration(compiler, var_id, SpvDecorationLocation)) - has_loc = true; - - if (has_loc && !used_locations.contains(curr_loc)) - { - used_locations.insert((GLint)curr_loc); - continue; - } - - while (used_locations.count(next_free_loc)) - ++next_free_loc; - - spvc_compiler_set_decoration( - compiler, - var_id, - SpvDecorationLocation, - next_free_loc); - - MG_Util::Debug::LogI("[SPIRV-Cross] Auto assigned '%s' to location %d", name, next_free_loc); - used_locations.insert(next_free_loc); - } - - spvc_compiler_options options = nullptr; - spvc_compiler_create_compiler_options(compiler, &options); - spvc_compiler_options_set_uint(options, SPVC_COMPILER_OPTION_GLSL_VERSION, 450); - spvc_compiler_options_set_bool(options, SPVC_COMPILER_OPTION_GLSL_ES, SPVC_FALSE); - spvc_compiler_options_set_bool(options, SPVC_COMPILER_OPTION_FLIP_VERTEX_Y, SPVC_TRUE); - spvc_compiler_install_compiler_options(compiler, options); - - if ((result = spvc_compiler_compile(compiler, &glsl_source)) != SPVC_SUCCESS) - { - MG_Util::Debug::LogE("[SPIRV-Cross] Failed to compile: %s", - spvc_context_get_last_error_string(context)); - spvc_context_destroy(context); - return {}; - } - - output_glsl = glsl_source; - spvc_context_destroy(context); - MG_Util::Debug::LogI("[SPIRV-Cross] GLSL output:\n%s", output_glsl.c_str()); - - size_t pos = output_glsl.find("\n gl_Position.y = -gl_Position.y;\n}"); - if (pos != std::string::npos) - { - output_glsl.replace( - pos, - strlen("\n gl_Position.y = -gl_Position.y;\n}"), - "\n gl_Position.y = -gl_Position.y;\n gl_Position.z = (gl_Position.z + gl_Position.w) * 0.5;\n}"); - } - - return output_glsl; - } - - - static std::vector buildCommentMask(const std::string &src) { - enum State { - NORMAL, - LINE_COMMENT, - BLOCK_COMMENT, - STRING_LITERAL, - CHAR_LITERAL - }; - - std::vector isComment(src.size(), false); - State state = NORMAL; - - for (size_t i = 0; i < src.size(); ++i) { - switch (state) { - case NORMAL: - if (i + 1 < src.size() && src[i] == '/' && src[i + 1] == '/') { - state = LINE_COMMENT; - isComment[i] = true; - isComment[i + 1] = true; - ++i; - } - else if (i + 1 < src.size() && src[i] == '/' && src[i + 1] == '*') { - state = BLOCK_COMMENT; - isComment[i] = true; - isComment[i + 1] = true; - ++i; - } - else if (src[i] == '"') { - state = STRING_LITERAL; - } - else if (src[i] == '\'') { - state = CHAR_LITERAL; - } - break; - - case LINE_COMMENT: - isComment[i] = true; - if (src[i] == '\n') { - state = NORMAL; - } - break; - - case BLOCK_COMMENT: - isComment[i] = true; - if (i + 1 < src.size() && src[i] == '*' && src[i + 1] == '/') { - isComment[i + 1] = true; - state = NORMAL; - ++i; - } - break; - - case STRING_LITERAL: - if (src[i] == '\\' && (i + 1 < src.size())) { - i++; - } - else if (src[i] == '"') { - state = NORMAL; - } - break; - - case CHAR_LITERAL: - if (src[i] == '\\' && (i + 1 < src.size())) { - i++; - } - else if (src[i] == '\'') { - state = NORMAL; - } - break; - } - } - - return isComment; - } - - static bool isPreprocessorLine(const std::string &src, size_t pos) { - size_t lineStart = src.rfind('\n', pos); - if (lineStart == std::string::npos) { - lineStart = 0; - } else { - lineStart += 1; - } - size_t firstNonSpace = src.find_first_not_of(" \t\r\n", lineStart); - if (firstNonSpace != std::string::npos && src[firstNonSpace] == '#') { - return true; - } - return false; - } - - static inline bool isInComment(const std::vector &mask, size_t pos) { - if (pos >= mask.size()) return false; - return mask[pos]; - } - - static inline void leftTrim(std::string &s) { - s.erase(s.begin(), std::find_if(s.begin(), s.end(), [](unsigned char ch) { - return !std::isspace(ch); - })); - } - static inline void rightTrim(std::string &s) { - s.erase(std::find_if(s.rbegin(), s.rend(), [](unsigned char ch) { - return !std::isspace(ch); - }).base(), s.end()); - } - static inline void trim(std::string &s) { - leftTrim(s); - rightTrim(s); - } - static size_t findNextNonSpace(const std::string& str, size_t pos) { - return str.find_first_not_of(" \t\r\n", pos); - } - - static std::string extractVarNameFromUniformDecl(const std::string& decl) { - const std::regex layoutRegex(R"(\s*layout\s*\([^)]*\))"); - std::string declNoLayout = std::regex_replace(decl, layoutRegex, ""); - - size_t uniformPos = declNoLayout.find("uniform"); - if (uniformPos != std::string::npos) { - declNoLayout = declNoLayout.substr(uniformPos + 7); - } - trim(declNoLayout); - - size_t semiPos = declNoLayout.rfind(';'); - if (semiPos != std::string::npos) { - declNoLayout = declNoLayout.substr(0, semiPos); - } - trim(declNoLayout); - - size_t lastSpace = declNoLayout.find_last_of(" \t\r\n"); - if (lastSpace == std::string::npos) { - return declNoLayout; - } - - std::string candidate = declNoLayout.substr(lastSpace + 1); - size_t bracketPos = candidate.find('['); - if (bracketPos != std::string::npos) { - candidate = candidate.substr(0, bracketPos); - } - - return candidate; - } - - std::pair GenerateDefaultUBOForGLSL(const std::pair& glslSources) { - std::string source1 = glslSources.first; - std::string source2 = glslSources.second; - - std::vector commentMask1 = buildCommentMask(source1); - std::vector commentMask2 = buildCommentMask(source2); - - const std::regex layoutRegex(R"(\s*layout\s*\([^)]*\))"); - std::set allUniformNames; - std::vector mergedUniforms; - std::vector> removalSpans1; - std::vector> removalSpans2; - - auto processSource = [&](std::string& source, const std::vector& commentMask, - std::vector>& removalSpans, - bool isFirstSource) - { - size_t searchPos = 0; - while ((searchPos = source.find("uniform", searchPos)) != std::string::npos) { - if (isInComment(commentMask, searchPos)) { - searchPos++; - continue; - } - - if (isPreprocessorLine(source, searchPos)) { - searchPos++; - continue; - } - - if (searchPos > 0 && (std::isalnum(source[searchPos - 1]) || source[searchPos - 1] == '_')) { - searchPos++; - continue; - } - - size_t nextCharPos = findNextNonSpace(source, searchPos + 7); - if (nextCharPos == std::string::npos) break; - - if (source[nextCharPos] == '{') { - searchPos = nextCharPos + 1; - continue; - } - - size_t bracePos = source.find('{', nextCharPos); - size_t semicolonPos = source.find(';', nextCharPos); - if (bracePos != std::string::npos && (semicolonPos == std::string::npos || bracePos < semicolonPos)) { - searchPos = bracePos + 1; - continue; - } - - if (semicolonPos == std::string::npos) { - searchPos++; - continue; - } - - size_t declStart = searchPos; - size_t declLength = semicolonPos - searchPos + 1; - std::string declaration = source.substr(declStart, declLength); - - std::string declNoLayout = std::regex_replace(declaration, layoutRegex, ""); - std::string afterUniform = declNoLayout.substr(declNoLayout.find("uniform") + 7); - trim(afterUniform); - size_t sep = afterUniform.find_first_of(" \t\r\n["); - std::string typeToken = (sep == std::string::npos ? afterUniform : afterUniform.substr(0, sep)); - bool isSamplerOrImage = false; - if (typeToken.rfind("sampler", 0) == 0 || - typeToken.rfind("isampler", 0) == 0 || - typeToken.rfind("usampler", 0) == 0 || - typeToken.rfind("image", 0) == 0) - { - isSamplerOrImage = true; - } - if (isSamplerOrImage) { - searchPos = declStart + declLength; - continue; - } - - std::string varName = extractVarNameFromUniformDecl(declaration); - - if (isFirstSource) { - mergedUniforms.push_back(declaration); - allUniformNames.insert(varName); - } else { - if (allUniformNames.find(varName) == allUniformNames.end()) { - mergedUniforms.push_back(declaration); - allUniformNames.insert(varName); - } - } - - size_t removeStart = declStart; - { - size_t scanBack = declStart; - while (scanBack > 0 && std::isspace((unsigned char)source[scanBack - 1])) { - scanBack--; - } - if (scanBack >= 6) { - size_t maybeLayout = source.rfind("layout", scanBack - 6); - if (maybeLayout != std::string::npos) { - size_t parenOpen = source.find('(', maybeLayout + 6); - if (parenOpen != std::string::npos && parenOpen < scanBack) { - size_t parenClose = source.find(')', parenOpen); - if (parenClose != std::string::npos && parenClose < declStart) { - std::string between = source.substr(maybeLayout, declStart - maybeLayout); - const std::regex onlyLayout(R"(layout\s*\([^)]*\)\s*)"); - if (std::regex_match(between, onlyLayout)) { - removeStart = maybeLayout; - } - } - } - } - } - } - removalSpans.emplace_back(removeStart, (declStart + declLength) - removeStart); - - searchPos = declStart + declLength; - } - }; - - processSource(source1, commentMask1, removalSpans1, true); - processSource(source2, commentMask2, removalSpans2, false); - - if (mergedUniforms.empty()) { - return glslSources; - } - - std::sort(removalSpans1.rbegin(), removalSpans1.rend()); - for (auto &span : removalSpans1) { - source1.erase(span.first, span.second); - } - source1 = std::regex_replace(source1, std::regex(R"((\r\n|\n|\r){2,})"), "$1"); - - std::sort(removalSpans2.rbegin(), removalSpans2.rend()); - for (auto &span : removalSpans2) { - source2.erase(span.first, span.second); - } - source2 = std::regex_replace(source2, std::regex(R"((\r\n|\n|\r){2,})"), "$1"); - - std::string uboBlock = "\nlayout(std140) uniform MG_DEFAULT_UBO\n{\n"; - for (auto &decl : mergedUniforms) { - std::string cleaned = std::regex_replace(decl, layoutRegex, ""); - std::string memberDecl = cleaned.substr(cleaned.find("uniform") + 7); - size_t semiPos = memberDecl.rfind(';'); - if (semiPos != std::string::npos) { - memberDecl.erase(semiPos); - } - trim(memberDecl); - uboBlock += " " + memberDecl + ";\n"; - } - uboBlock += "};\n"; - - auto insertUBO = [&](std::string& source) { - size_t insertPos = 0, lastDirectivePos = 0; - size_t searchPos = 0; - while ((searchPos = source.find('#', searchPos)) != std::string::npos) { - if (isInComment(commentMask1, searchPos)) { - searchPos++; - continue; - } - - size_t eol = source.find('\n', searchPos); - if (eol == std::string::npos) break; - std::string line = source.substr(searchPos, eol - searchPos); - if (line.find("#version") != std::string::npos || line.find("#extension") != std::string::npos) { - lastDirectivePos = eol + 1; - } - searchPos = eol + 1; - } - insertPos = lastDirectivePos; - source.insert(insertPos, uboBlock); - }; - - insertUBO(source1); - insertUBO(source2); - - return {source1, source2}; - } - - void GenerateDefaultUBOForGLSL_Multi( - MG_Global::unordered_map &shaderSources, std::vector& outUniformBufferNames) { - if (shaderSources.empty()) return; - - outUniformBufferNames.clear(); - - std::unordered_map> commentMasks; - for (auto const& [id, source] : shaderSources) { - commentMasks[id] = buildCommentMask(source); - } - - const std::regex layoutRegex(R"(\s*layout\s*\([^)]*\))"); - std::set allUniformNames; - std::vector mergedUniforms; - std::unordered_map>> removalSpansPerShader; - - for (auto& [id, source] : shaderSources) { - std::vector& commentMask = commentMasks[id]; - // Ensure an entry exists for this shader ID, even if no uniforms are found - auto& removalSpans = removalSpansPerShader[id]; - - size_t searchPos = 0; - while ((searchPos = source.find("uniform", searchPos)) != std::string::npos) { - if (isInComment(commentMask, searchPos)) { - searchPos++; - continue; - } - - if (isPreprocessorLine(source, searchPos)) { - searchPos++; - continue; - } - - if (searchPos > 0 && (std::isalnum(source[searchPos - 1]) || - source[searchPos - 1] == '_')) { - searchPos++; - continue; - } - - size_t nextCharPos = findNextNonSpace(source, searchPos + 7); - if (nextCharPos == std::string::npos) break; - - if (source[nextCharPos] == '{') { - searchPos = nextCharPos + 1; - continue; - } - - size_t bracePos = source.find('{', nextCharPos); - size_t semicolonPos = source.find(';', nextCharPos); - if (bracePos != std::string::npos && - (semicolonPos == std::string::npos || bracePos < semicolonPos)) { - searchPos = bracePos + 1; - continue; - } - - if (semicolonPos == std::string::npos) { - searchPos++; - continue; - } - - size_t declStart = searchPos; - size_t declLength = semicolonPos - searchPos + 1; - std::string declaration = source.substr(declStart, declLength); - - std::string declNoLayout = std::regex_replace(declaration, layoutRegex, ""); - std::string afterUniform = declNoLayout.substr(declNoLayout.find("uniform") + 7); - trim(afterUniform); - size_t sep = afterUniform.find_first_of(" \t\r\n["); - std::string typeToken = (sep == std::string::npos ? afterUniform : afterUniform.substr(0, sep)); - bool isSamplerOrImage = - typeToken.rfind("sampler", 0) == 0 || - typeToken.rfind("isampler", 0) == 0 || - typeToken.rfind("usampler", 0) == 0 || - typeToken.rfind("image", 0) == 0; - - if (isSamplerOrImage) { - searchPos = declStart + declLength; - continue; - } - - std::string varName = extractVarNameFromUniformDecl(declaration); - if (allUniformNames.find(varName) == allUniformNames.end()) { - mergedUniforms.push_back(declaration); - allUniformNames.insert(varName); - // save the uniform names in order - outUniformBufferNames.emplace_back(varName); - } - - size_t removeStart = declStart; - size_t scanBack = declStart; - while (scanBack > 0 && std::isspace(static_cast(source[scanBack - 1]))) { - scanBack--; - } - if (scanBack >= 6) { - size_t maybeLayout = source.rfind("layout", scanBack - 6); - if (maybeLayout != std::string::npos) { - size_t parenOpen = source.find('(', maybeLayout + 6); - if (parenOpen != std::string::npos && parenOpen < scanBack) { - size_t parenClose = source.find(')', parenOpen); - if (parenClose != std::string::npos && parenClose < declStart) { - std::string between = source.substr(maybeLayout, declStart - maybeLayout); - const std::regex onlyLayout(R"(layout\s*\([^)]*\)\s*)"); - if (std::regex_match(between, onlyLayout)) { - removeStart = maybeLayout; - } - } - } - } - } - removalSpans.emplace_back(removeStart, (declStart + declLength) - removeStart); - searchPos = declStart + declLength; - } - } - - if (mergedUniforms.empty()) return; - - for (auto& [id, source] : shaderSources) { - auto& removalSpans = removalSpansPerShader[id]; - std::sort(removalSpans.rbegin(), removalSpans.rend()); - for (auto& span : removalSpans) { - source.erase(span.first, span.second); - } - } - - std::string uboBlock = "\nlayout(std140) uniform MG_DEFAULT_UBO\n{\n"; - for (auto& decl : mergedUniforms) { - std::string cleaned = std::regex_replace(decl, layoutRegex, ""); - std::string memberDecl = cleaned.substr(cleaned.find("uniform") + 7); - size_t semiPos = memberDecl.rfind(';'); - if (semiPos != std::string::npos) { - memberDecl.erase(semiPos); - } - trim(memberDecl); - uboBlock += " " + memberDecl + ";\n"; - } - uboBlock += "};\n"; - - MG_Util::Debug::LogD("UBO Generated:\n%s", uboBlock.c_str()); - - for (auto& [id, source] : shaderSources) { - size_t insertPos = 0, lastDirectivePos = 0; - size_t searchPos = 0; - while ((searchPos = source.find('#', searchPos)) != std::string::npos) { - if (isInComment(commentMasks[id], searchPos)) { - searchPos++; - continue; - } - - size_t eol = source.find('\n', searchPos); - if (eol == std::string::npos) break; - std::string line = source.substr(searchPos, eol - searchPos); - if (line.find("#version") != std::string::npos || - line.find("#extension") != std::string::npos) { - lastDirectivePos = eol + 1; - } - searchPos = eol + 1; - } - insertPos = lastDirectivePos; - source.insert(insertPos, uboBlock); - } - } - - std::string CompileGLSLToTShader(GLenum shaderType, const std::string& source, - glslang::TShader *&shader, bool isVkGLSL) { - std::string infoLog; - using namespace glslang; - - int glslVersion = QueryGLSLVersion(source); - EShLanguage language = GetEShLanguageByShaderType(shaderType); - if (language == EShLanguage::EShLangCount) { - infoLog += "Error: [Preprocess] Unsupported shader type: " + - std::to_string(shaderType); - TShader tmpShader(EShLanguage::EShLangVertex); - return infoLog; - } - - shader = new TShader(language); - const char *src = source.c_str(); - shader->setStrings(&src, 1); - if (isVkGLSL) { - shader->setPreamble("#define gl_VertexID gl_VertexIndex\n" - "#define gl_InstanceID gl_InstanceIndex\n"); - } - shader->setEnvInput(EShSourceGlsl, language, EShClientVulkan, glslVersion); - shader->setEnvClient(EShClientOpenGL, isVkGLSL ? EShTargetVulkan_1_3 : EShTargetOpenGL_450); - shader->setEnvTarget(EShTargetSpv, EShTargetSpv_1_6); - shader->setAutoMapLocations(true); - shader->setAutoMapBindings(true); - - // Is InitResources() really correct? - TBuiltInResource resources = InitResources(); - - if (!shader->parse(&resources, glslVersion, true, isVkGLSL ? EShMsgVulkanRules : EShMsgDefault)) { - infoLog += "Error: [glslang] Cannot compile the " + GetShaderTypeName(shaderType) + ":\n" - + std::to_string(shader->getInfoLog()); - return infoLog; - } - - return {}; - } - - std::vector> CompileMultipleShadersToSPIRV(const ProgramState& state, ProgramObject& prog, std::string& infoLog) { - using namespace glslang; - - std::vector usedShaderTypes; - TProgram program; - for (GLuint shaderId : prog.attachedShaders) { - auto* shaderObject = state.GetShaderObject(shaderId); - EShLanguage shLanguage = GetEShLanguageByShaderType(shaderObject->type); - TShader* shader = nullptr; - std::string infoLogOfShader = CompileGLSLToTShader(shaderObject->type, shaderObject->source, shader); - if (!infoLogOfShader.empty()) { - infoLog = "Error: [glslang] Cannot compile " + GetShaderTypeName(shaderObject->type) + - " :\n" + infoLogOfShader; - return {}; - } - program.addShader(shader); - usedShaderTypes.push_back(shLanguage); - } - if (!program.link(EShMsgDefault)) { - infoLog = "Error: [glslang] Cannot link the program:\n" + std::to_string(program.getInfoLog()); - return {}; - } - - std::unique_ptr resolver; - for (unsigned stage = 0; stage < EShLangCount; stage++) { - auto* pResolver = program.getGlslIoResolver((EShLanguage)stage); - if (pResolver) { - resolver = std::unique_ptr(pResolver); - break; - } - } - auto ioMapper = std::unique_ptr(glslang::GetGlslIoMapper()); - - if (!program.mapIO(resolver.get(), ioMapper.get())) { - infoLog = "Error: [glslang] Cannot mapIO:\n" + std::to_string(program.getInfoLog()); - return {}; - } - - SpvOptions spvOptions; - spvOptions.disableOptimizer = false; - - std::vector> allSpirv; - for(auto type : usedShaderTypes) { - std::vector spirv; - GlslangToSpv(*program.getIntermediate(type), spirv, &spvOptions); - allSpirv.push_back(spirv); - } - - return allSpirv; - } - - std::vector CompileGLSLToSPIRV(GLenum shaderType, const std::string &source, - std::string &infoLog, bool isVkGLSL, GLenum additionalShaderType, - const std::string& additionalShaderSource - ) { - using namespace glslang; - - TShader* shader = nullptr; - std::string infoLogOfShader = CompileGLSLToTShader(shaderType, source, shader, isVkGLSL); - if (!infoLogOfShader.empty()) { - infoLog = "Error: [glslang] Cannot compile " + GetShaderTypeName(shaderType) + ":\n" + infoLogOfShader; - return {}; - } - TProgram program; - - if (additionalShaderType == GL_VERTEX_SHADER) - program.addShader(shader); - if (additionalShaderType && !additionalShaderSource.empty()) { - TShader* additionalShader = nullptr; - std::string additionalInfoLog = CompileGLSLToTShader(additionalShaderType, additionalShaderSource, additionalShader, isVkGLSL); - if (!additionalInfoLog.empty()) { - infoLog = "Error: [glslang] Cannot compile additional " + GetShaderTypeName(additionalShaderType) + ":\n" + additionalInfoLog; - return {}; - } - program.addShader(additionalShader); - } - if (additionalShaderType != GL_VERTEX_SHADER) - program.addShader(shader); - - if (!program.link(isVkGLSL ? EShMsgVulkanRules : EShMsgDefault)) { - infoLog = "Error: [glslang] Cannot link the program of the single shader:\n" + std::to_string(program.getInfoLog()); - return {}; - } - program.mapIO(); - - std::vector spirv; - - SpvOptions spvOptions; - spvOptions.disableOptimizer = false; - EShLanguage language = GetEShLanguageByShaderType(shaderType); - GlslangToSpv(*program.getIntermediate(language), spirv, &spvOptions); - - return spirv; - } - - void ReflectSPIRVUniforms(const std::vector>& allSpirv, ProgramObject& prog, std::string& infoLog) { - spvc_context context = nullptr; - - if (spvc_context_create(&context) != SPVC_SUCCESS) { - infoLog = "Failed to create SPIRV-Cross context"; - return; - } - - MG_Global::unordered_set used_locations; - GLint auto_location = 0; - for (auto spirv: allSpirv) { - spvc_parsed_ir ir = nullptr; - spvc_compiler compiler = nullptr; - spvc_resources resources = nullptr; - - spvc_result result = spvc_context_parse_spirv(context, spirv.data(), spirv.size(), &ir); - if (result != SPVC_SUCCESS) { - infoLog = "SPIR-V parsing failed"; - spvc_context_destroy(context); - return; - } - - result = spvc_context_create_compiler(context, SPVC_BACKEND_GLSL, ir, - SPVC_CAPTURE_MODE_TAKE_OWNERSHIP, &compiler); - if (result != SPVC_SUCCESS) { - infoLog = "Failed to create SPIRV-Cross compiler"; - spvc_context_destroy(context); - return; - } - - result = spvc_compiler_create_shader_resources(compiler, &resources); - if (result != SPVC_SUCCESS) { - infoLog = "Failed to get shader resources"; - spvc_context_destroy(context); - return; - } - - const spvc_reflected_resource *uniform_buffers = nullptr; - const spvc_reflected_resource *uniform_vars = nullptr; - const spvc_reflected_resource *sampled_images = nullptr; - size_t uniform_buffer_count = 0; - size_t uniform_var_count = 0; - size_t sampled_image_count = 0; - - spvc_resources_get_resource_list_for_type(resources, SPVC_RESOURCE_TYPE_UNIFORM_BUFFER, - &uniform_buffers, &uniform_buffer_count); - spvc_resources_get_resource_list_for_type(resources, - SPVC_RESOURCE_TYPE_GL_PLAIN_UNIFORM, - &uniform_vars, &uniform_var_count); - spvc_resources_get_resource_list_for_type(resources, SPVC_RESOURCE_TYPE_SAMPLED_IMAGE, - &sampled_images, &sampled_image_count); - - std::vector all_resources; - for (size_t i = 0; i < uniform_buffer_count; ++i) - all_resources.push_back(&uniform_buffers[i]); - for (size_t i = 0; i < uniform_var_count; ++i) - all_resources.push_back(&uniform_vars[i]); - for (size_t i = 0; i < sampled_image_count; ++i) - all_resources.push_back(&sampled_images[i]); - - for (const auto res_ptr: all_resources) { - const spvc_reflected_resource &res = *res_ptr; - const char *name = res.name; - if (name[0] == '_') continue; - - unsigned spirv_location = spvc_compiler_get_decoration(compiler, res.id, - SpvDecorationLocation); - GLint final_location; - - spvc_type_id type_id = res.type_id; - spvc_type type = spvc_compiler_get_type_handle(compiler, type_id); - spvc_basetype base_type = spvc_type_get_basetype(type); - GLenum gl_type = GL_NONE; - - if (spirv_location >= 0 && base_type != SPVC_BASETYPE_SAMPLED_IMAGE) { - auto conflict_it = used_locations.find(spirv_location); - if (conflict_it != used_locations.end()) { - // Check if the conflicting uniform is a sampler - std::string conflicting_name; - for (const auto& entry : prog.uniformLocations) { - if (entry.second == spirv_location) { - conflicting_name = entry.first; - break; - } - } - if(conflicting_name == std::string(name)) { - continue; - } else if (!conflicting_name.empty() && prog.uniformValues.count(conflicting_name) && - MG_GL::GL::IsSamplerType(prog.uniformValues[conflicting_name].type)) { - // Reassign location for the sampler - GLint new_sampler_loc = auto_location++; - while (used_locations.find(new_sampler_loc) != used_locations.end()) new_sampler_loc++; - prog.uniformLocations[conflicting_name] = new_sampler_loc; - used_locations.erase(conflict_it); // Remove old sampler location - used_locations.insert(new_sampler_loc); // Add new sampler location - } else { - infoLog += "\nLocation conflict for uniform: " + std::string(name) + " at location " + std::to_string(spirv_location); - infoLog += "\nExisting uniforms and locations:"; - for (const auto& entry : prog.uniformLocations) { - infoLog += "\n " + entry.first + ": " + std::to_string(entry.second); - } - infoLog += "\nUsed locations set:"; - for (GLint loc : used_locations) infoLog += " " + std::to_string(loc); - continue; - } - } - final_location = spirv_location; - } else { - while (used_locations.find(auto_location) != used_locations.end()) { - auto_location++; - } - final_location = auto_location; - } - - used_locations.insert(final_location); - - if (base_type == SPVC_BASETYPE_SAMPLED_IMAGE) { - SpvDim dim = spvc_type_get_image_dimension(type); - bool is_array = spvc_type_get_image_arrayed(type); - bool is_shadow = spvc_type_get_image_is_depth(type); - bool is_ms = spvc_type_get_image_multisampled(type); - - switch (dim) { - case SpvDim1D: - gl_type = is_array ? GL_SAMPLER_1D_ARRAY : GL_SAMPLER_1D; - if (is_shadow) - gl_type = is_array ? GL_SAMPLER_1D_ARRAY_SHADOW - : GL_SAMPLER_1D_SHADOW; - break; - case SpvDim2D: - if (is_ms) { - gl_type = is_array ? GL_SAMPLER_2D_MULTISAMPLE_ARRAY - : GL_SAMPLER_2D_MULTISAMPLE; - } else { - gl_type = is_array ? GL_SAMPLER_2D_ARRAY : GL_SAMPLER_2D; - if (is_shadow) - gl_type = is_array ? GL_SAMPLER_2D_ARRAY_SHADOW - : GL_SAMPLER_2D_SHADOW; - } - break; - case SpvDim3D: - gl_type = GL_SAMPLER_3D; - break; - case SpvDimCube: - gl_type = is_array ? GL_SAMPLER_CUBE_MAP_ARRAY : GL_SAMPLER_CUBE; - if (is_shadow) - gl_type = is_array ? GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW - : GL_SAMPLER_CUBE_SHADOW; - break; - case SpvDimRect: - gl_type = is_shadow ? GL_SAMPLER_2D_RECT_SHADOW : GL_SAMPLER_2D_RECT; - break; - case SpvDimBuffer: - gl_type = GL_SAMPLER_BUFFER; - break; - default: - gl_type = GL_SAMPLER_2D; - } - - spvc_basetype sampled_base = spvc_type_get_basetype(type); - if (sampled_base == SPVC_BASETYPE_INT32) { - switch (gl_type) { - case GL_SAMPLER_1D: - gl_type = GL_INT_SAMPLER_1D; - break; - case GL_SAMPLER_2D: - gl_type = GL_INT_SAMPLER_2D; - break; - case GL_SAMPLER_3D: - gl_type = GL_INT_SAMPLER_3D; - break; - case GL_SAMPLER_CUBE: - gl_type = GL_INT_SAMPLER_CUBE; - break; - case GL_SAMPLER_1D_ARRAY: - gl_type = GL_INT_SAMPLER_1D_ARRAY; - break; - case GL_SAMPLER_2D_ARRAY: - gl_type = GL_INT_SAMPLER_2D_ARRAY; - break; - case GL_SAMPLER_CUBE_MAP_ARRAY: - gl_type = GL_INT_SAMPLER_CUBE_MAP_ARRAY; - break; - case GL_SAMPLER_2D_RECT: - gl_type = GL_INT_SAMPLER_2D_RECT; - break; - case GL_SAMPLER_BUFFER: - gl_type = GL_INT_SAMPLER_BUFFER; - break; - case GL_SAMPLER_2D_MULTISAMPLE: - gl_type = GL_INT_SAMPLER_2D_MULTISAMPLE; - break; - case GL_SAMPLER_2D_MULTISAMPLE_ARRAY: - gl_type = GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY; - break; - } - } else if (sampled_base == SPVC_BASETYPE_UINT32) { - switch (gl_type) { - case GL_SAMPLER_1D: - gl_type = GL_UNSIGNED_INT_SAMPLER_1D; - break; - case GL_SAMPLER_2D: - gl_type = GL_UNSIGNED_INT_SAMPLER_2D; - break; - case GL_SAMPLER_3D: - gl_type = GL_UNSIGNED_INT_SAMPLER_3D; - break; - case GL_SAMPLER_CUBE: - gl_type = GL_UNSIGNED_INT_SAMPLER_CUBE; - break; - case GL_SAMPLER_1D_ARRAY: - gl_type = GL_UNSIGNED_INT_SAMPLER_1D_ARRAY; - break; - case GL_SAMPLER_2D_ARRAY: - gl_type = GL_UNSIGNED_INT_SAMPLER_2D_ARRAY; - break; - case GL_SAMPLER_CUBE_MAP_ARRAY: - gl_type = GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY; - break; - case GL_SAMPLER_2D_RECT: - gl_type = GL_UNSIGNED_INT_SAMPLER_2D_RECT; - break; - case GL_SAMPLER_BUFFER: - gl_type = GL_UNSIGNED_INT_SAMPLER_BUFFER; - break; - case GL_SAMPLER_2D_MULTISAMPLE: - gl_type = GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE; - break; - case GL_SAMPLER_2D_MULTISAMPLE_ARRAY: - gl_type = GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY; - break; - } - } - } else { - unsigned vec_size = spvc_type_get_vector_size(type); - unsigned columns = spvc_type_get_columns(type); - - switch (base_type) { - case SPVC_BASETYPE_FP32: - if (columns > 1) { - if (vec_size == 2 && columns == 2) gl_type = GL_FLOAT_MAT2; - else if (vec_size == 3 && columns == 3) gl_type = GL_FLOAT_MAT3; - else if (vec_size == 4 && columns == 4) gl_type = GL_FLOAT_MAT4; - else if (vec_size == 3 && columns == 2) gl_type = GL_FLOAT_MAT2x3; - else if (vec_size == 4 && columns == 2) gl_type = GL_FLOAT_MAT2x4; - else if (vec_size == 2 && columns == 3) gl_type = GL_FLOAT_MAT3x2; - else if (vec_size == 4 && columns == 3) gl_type = GL_FLOAT_MAT3x4; - else if (vec_size == 2 && columns == 4) gl_type = GL_FLOAT_MAT4x2; - else if (vec_size == 3 && columns == 4) gl_type = GL_FLOAT_MAT4x3; - } else { - switch (vec_size) { - case 1: - gl_type = GL_FLOAT; - break; - case 2: - gl_type = GL_FLOAT_VEC2; - break; - case 3: - gl_type = GL_FLOAT_VEC3; - break; - case 4: - gl_type = GL_FLOAT_VEC4; - break; - } - } - break; - case SPVC_BASETYPE_INT32: - switch (vec_size) { - case 1: - gl_type = GL_INT; - break; - case 2: - gl_type = GL_INT_VEC2; - break; - case 3: - gl_type = GL_INT_VEC3; - break; - case 4: - gl_type = GL_INT_VEC4; - break; - } - break; - case SPVC_BASETYPE_UINT32: - switch (vec_size) { - case 1: - gl_type = GL_UNSIGNED_INT; - break; - case 2: - gl_type = GL_UNSIGNED_INT_VEC2; - break; - case 3: - gl_type = GL_UNSIGNED_INT_VEC3; - break; - case 4: - gl_type = GL_UNSIGNED_INT_VEC4; - break; - } - break; - case SPVC_BASETYPE_BOOLEAN: - switch (vec_size) { - case 1: - gl_type = GL_BOOL; - break; - case 2: - gl_type = GL_BOOL_VEC2; - break; - case 3: - gl_type = GL_BOOL_VEC3; - break; - case 4: - gl_type = GL_BOOL_VEC4; - break; - } - break; - default: - continue; - } - } - - prog.uniformLocations[name] = final_location; - UniformValue uniformValue; - uniformValue.type = gl_type; - prog.uniformValues[name] = uniformValue; - } - } - spvc_context_destroy(context); - } - - std::string CompileSPIRVToGLSL(std::vector spirv, uint glslVersion, bool isES, bool isVkGLSL) { - spvc_context context = nullptr; - spvc_parsed_ir ir = nullptr; - spvc_compiler compiler_glsl = nullptr; - spvc_compiler_options options = nullptr; - spvc_resources resources = nullptr; - const spvc_reflected_resource *list = nullptr; - const char *result = nullptr; - size_t count; - - const SpvId *p_spirv = spirv.data(); - size_t word_count = spirv.size(); - - spvc_context_create(&context); - spvc_context_parse_spirv(context, p_spirv, word_count, &ir); - spvc_context_create_compiler(context, SPVC_BACKEND_GLSL, ir, SPVC_CAPTURE_MODE_TAKE_OWNERSHIP, &compiler_glsl); - spvc_compiler_create_shader_resources(compiler_glsl, &resources); - spvc_resources_get_resource_list_for_type(resources, SPVC_RESOURCE_TYPE_UNIFORM_BUFFER, &list, &count); - spvc_compiler_create_compiler_options(compiler_glsl, &options); - - spvc_compiler_options_set_uint(options, SPVC_COMPILER_OPTION_GLSL_VERSION, glslVersion); - spvc_compiler_options_set_bool(options, SPVC_COMPILER_OPTION_GLSL_ES, isES ? SPVC_TRUE : SPVC_FALSE); - spvc_compiler_options_set_bool(options, SPVC_COMPILER_OPTION_GLSL_VULKAN_SEMANTICS, isVkGLSL ? SPVC_TRUE : SPVC_FALSE); - spvc_compiler_install_compiler_options(compiler_glsl, options); - spvc_compiler_compile(compiler_glsl, &result); - - if (!result) { - MG_Util::Debug::LogE("Failed to compile the shader to GLSL: %s", spvc_context_get_last_error_string(context)); - return{}; - } - - std::string essl = result; - - spvc_context_destroy(context); - - return essl; - } -} diff --git a/MG/MG_UTIL/Program/GLSLTool.h b/MG/MG_UTIL/Program/GLSLTool.h deleted file mode 100644 index 60404060..00000000 --- a/MG/MG_UTIL/Program/GLSLTool.h +++ /dev/null @@ -1,192 +0,0 @@ -// -// Created by BZLZHH on 2025/5/3. -// - -#ifndef MOBILEGL_GLSLTOOL_H -#define MOBILEGL_GLSLTOOL_H - -namespace MG_Util::Program { - inline static TBuiltInResource InitResources() - { - TBuiltInResource Resources{}; - Resources.maxLights = 32; - Resources.maxClipPlanes = 6; - Resources.maxTextureUnits = 32; - Resources.maxTextureCoords = 32; - Resources.maxVertexAttribs = 64; - Resources.maxVertexUniformComponents = 4096; - Resources.maxVaryingFloats = 64; - Resources.maxVertexTextureImageUnits = 32; - Resources.maxCombinedTextureImageUnits = 80; - Resources.maxTextureImageUnits = 32; - Resources.maxFragmentUniformComponents = 4096; - Resources.maxDrawBuffers = 32; - Resources.maxVertexUniformVectors = 128; - Resources.maxVaryingVectors = 8; - Resources.maxFragmentUniformVectors = 16; - Resources.maxVertexOutputVectors = 16; - Resources.maxFragmentInputVectors = 15; - Resources.minProgramTexelOffset = -8; - Resources.maxProgramTexelOffset = 7; - Resources.maxClipDistances = 8; - Resources.maxComputeWorkGroupCountX = 65535; - Resources.maxComputeWorkGroupCountY = 65535; - Resources.maxComputeWorkGroupCountZ = 65535; - Resources.maxComputeWorkGroupSizeX = 1024; - Resources.maxComputeWorkGroupSizeY = 1024; - Resources.maxComputeWorkGroupSizeZ = 64; - Resources.maxComputeUniformComponents = 1024; - Resources.maxComputeTextureImageUnits = 16; - Resources.maxComputeImageUniforms = 8; - Resources.maxComputeAtomicCounters = 8; - Resources.maxComputeAtomicCounterBuffers = 1; - Resources.maxVaryingComponents = 60; - Resources.maxVertexOutputComponents = 64; - Resources.maxGeometryInputComponents = 64; - Resources.maxGeometryOutputComponents = 128; - Resources.maxFragmentInputComponents = 128; - Resources.maxImageUnits = 8; - Resources.maxCombinedImageUnitsAndFragmentOutputs = 8; - Resources.maxCombinedShaderOutputResources = 8; - Resources.maxImageSamples = 0; - Resources.maxVertexImageUniforms = 0; - Resources.maxTessControlImageUniforms = 0; - Resources.maxTessEvaluationImageUniforms = 0; - Resources.maxGeometryImageUniforms = 0; - Resources.maxFragmentImageUniforms = 8; - Resources.maxCombinedImageUniforms = 8; - Resources.maxGeometryTextureImageUnits = 16; - Resources.maxGeometryOutputVertices = 256; - Resources.maxGeometryTotalOutputComponents = 1024; - Resources.maxGeometryUniformComponents = 1024; - Resources.maxGeometryVaryingComponents = 64; - Resources.maxTessControlInputComponents = 128; - Resources.maxTessControlOutputComponents = 128; - Resources.maxTessControlTextureImageUnits = 16; - Resources.maxTessControlUniformComponents = 1024; - Resources.maxTessControlTotalOutputComponents = 4096; - Resources.maxTessEvaluationInputComponents = 128; - Resources.maxTessEvaluationOutputComponents = 128; - Resources.maxTessEvaluationTextureImageUnits = 16; - Resources.maxTessEvaluationUniformComponents = 1024; - Resources.maxTessPatchComponents = 120; - Resources.maxPatchVertices = 32; - Resources.maxTessGenLevel = 64; - Resources.maxViewports = 16; - Resources.maxVertexAtomicCounters = 0; - Resources.maxTessControlAtomicCounters = 0; - Resources.maxTessEvaluationAtomicCounters = 0; - Resources.maxGeometryAtomicCounters = 0; - Resources.maxFragmentAtomicCounters = 8; - Resources.maxCombinedAtomicCounters = 8; - Resources.maxAtomicCounterBindings = 1; - Resources.maxVertexAtomicCounterBuffers = 0; - Resources.maxTessControlAtomicCounterBuffers = 0; - Resources.maxTessEvaluationAtomicCounterBuffers = 0; - Resources.maxGeometryAtomicCounterBuffers = 0; - Resources.maxFragmentAtomicCounterBuffers = 1; - Resources.maxCombinedAtomicCounterBuffers = 1; - Resources.maxAtomicCounterBufferSize = 16384; - Resources.maxTransformFeedbackBuffers = 4; - Resources.maxTransformFeedbackInterleavedComponents = 64; - Resources.maxCullDistances = 8; - Resources.maxCombinedClipAndCullDistances = 8; - Resources.maxSamples = 4; - Resources.maxMeshOutputVerticesNV = 256; - Resources.maxMeshOutputPrimitivesNV = 512; - Resources.maxMeshWorkGroupSizeX_NV = 32; - Resources.maxMeshWorkGroupSizeY_NV = 1; - Resources.maxMeshWorkGroupSizeZ_NV = 1; - Resources.maxTaskWorkGroupSizeX_NV = 32; - Resources.maxTaskWorkGroupSizeY_NV = 1; - Resources.maxTaskWorkGroupSizeZ_NV = 1; - Resources.maxMeshViewCountNV = 4; - - Resources.limits.nonInductiveForLoops = true; - Resources.limits.whileLoops = true; - Resources.limits.doWhileLoops = true; - Resources.limits.generalUniformIndexing = true; - Resources.limits.generalAttributeMatrixVectorIndexing = true; - Resources.limits.generalVaryingIndexing = true; - Resources.limits.generalSamplerIndexing = true; - Resources.limits.generalVariableIndexing = true; - Resources.limits.generalConstantMatrixVectorIndexing = true; - - return Resources; - } - - inline int QueryGLSLVersion(const std::string& code) { - static std::regex version_pattern(R"(#version\s+(\d{3}))"); - std::smatch match; - if (std::regex_search(code, match, version_pattern)) { - return std::stoi(match[1].str()); - } - - return -1; - } - - inline GLsizei GetMatrixElementCount(GLenum matrixType) { - switch(matrixType) { - case GL_FLOAT_MAT2: return 4; - case GL_FLOAT_MAT3: return 9; - case GL_FLOAT_MAT4: return 16; - case GL_FLOAT_MAT2x3: return 6; - case GL_FLOAT_MAT2x4: return 8; - case GL_FLOAT_MAT3x2: return 6; - case GL_FLOAT_MAT3x4: return 12; - case GL_FLOAT_MAT4x2: return 8; - case GL_FLOAT_MAT4x3: return 12; - default: return 0; - } - } - - inline std::string GetShaderTypeName(GLenum shaderType) { - switch(shaderType) { - case GL_VERTEX_SHADER: return "Vertex Shader"; - case GL_FRAGMENT_SHADER: return "Fragment Shader"; - case GL_GEOMETRY_SHADER: return "Geometry Shader"; - case GL_TESS_CONTROL_SHADER: return "Tessellation Control Shader"; - case GL_TESS_EVALUATION_SHADER: return "Tessellation Evaluation Shader"; - case GL_COMPUTE_SHADER: return "Compute Shader"; - default: return "Unknown Shader Type (" + std::to_string(shaderType) + ")"; - } - } - - inline EShLanguage GetEShLanguageByShaderType(GLenum shaderType) { - switch (shaderType) { - case GL_VERTEX_SHADER: - return EShLanguage::EShLangVertex; - case GL_FRAGMENT_SHADER: - return EShLanguage::EShLangFragment; - case GL_COMPUTE_SHADER: - return EShLanguage::EShLangCompute; - case GL_TESS_CONTROL_SHADER: - return EShLanguage::EShLangTessControl; - case GL_TESS_EVALUATION_SHADER: - return EShLanguage::EShLangTessEvaluation; - case GL_GEOMETRY_SHADER: - return EShLanguage::EShLangGeometry; - default: - return EShLanguage::EShLangCount; - } - } - - std::vector CompileGLSLToSPIRV(GLenum shaderType, const std::string& source, - std::string& infoLog, bool isVkGLSL = false, GLenum additionalShaderType = 0, - const std::string& additionalShaderSource = {}); - std::string CompileGLSLToTShader(GLenum shaderType, const std::string& source, - glslang::TShader *&shader, bool isVkGLSL = false); - std::vector> CompileMultipleShadersToSPIRV(const ProgramState& state, ProgramObject& prog, std::string& infoLog); - void ReflectSPIRVUniforms(const std::vector>& allSpirv, ProgramObject& prog, std::string& infoLog); - std::string CompileSPIRVToGLSL(std::vector spirv, uint glslVersion, bool isES, bool isVkGLSL = false); - std::pair GenerateDefaultUBOForGLSL(const std::pair& glslSources); - void GenerateDefaultUBOForGLSL_Multi( - MG_Global::unordered_map &shaderSources, std::vector& outUniformBufferNames); - std::string BindInputLayoutLocationsForGLSL(std::vector& spirv, - MG_Global::unordered_map& - name_location_map); - void RenameGLSLBuiltinsForVulkan(std::string &src); -} - -#endif //MOBILEGL_GLSLTOOL_H diff --git a/PlannedFunctions.md b/PlannedFunctions.md deleted file mode 100644 index 9a359fa3..00000000 --- a/PlannedFunctions.md +++ /dev/null @@ -1,204 +0,0 @@ -## OpenGL State Manager - -### **1. Initialization & Query Functions** -- [x] glGetAttribLocation -- [x] glGetBufferParameteriv -- [x] glGetError -- [x] glGetIntegerv -- [x] glGetProgramiv -- [x] glGetShaderiv -- [x] glGetString -- [x] glGetStringi -- [x] glGetTexLevelParameteriv -- [x] glGetUniformLocation - ---- - -### **2. Texture Operations** -- [x] glActiveTexture -- [x] glBindTexture -- [x] glDeleteTextures -- [x] glGenTextures -- [x] glTexImage2D -- [x] glTexParameterf -- [x] glTexParameteri -- [x] glTexSubImage2D - ---- - -### **3. Framebuffer Operations** -- [x] glBindFramebuffer -- [x] glCheckFramebufferStatus -- [x] glDeleteFramebuffers -- [x] glFramebufferTexture2D -- [x] glGenFramebuffers - -  ~~glBlitFramebuffer~~ - ---- - -### **4. Shader & Program Management** -- [x] glAttachShader -- [x] glBindAttribLocation -- [x] glCompileShader -- [x] glCreateProgram -- [x] glCreateShader -- [x] glDeleteProgram -- [x] glDeleteShader -- [x] glLinkProgram -- [x] glShaderSource -- [x] glUseProgram - ---- - -### **5. Buffer & Vertex Array Operations** -- [x] glBindBuffer -- [x] glBindVertexArray -- [x] glBufferData -- [x] glEnableVertexAttribArray -- [x] glGenBuffers -- [x] glGenVertexArrays -- [x] glMapBuffer -- [x] glUnmapBuffer -- [x] glVertexAttribIPointer -- [x] glVertexAttribPointer -- [x] glBufferSubData -- [x] glMapBufferRange -- [x] glFlushMappedBufferRange -- [x] glCopyBufferSubData - ---- - -### **6. State Management** -- [x] glBlendFunc -- [x] glBlendFuncSeparate -- [x] glClear -- [x] glClearColor -- [x] glClearDepth -- [x] glColorMask -- [x] glDepthFunc -- [x] glDepthMask -- [x] glDisable -- [x] glEnable -- [x] glPixelStorei -- [x] glViewport - ---- - -### **7. Uniforms & Attributes** -- [x] glUniform1fv -- [x] glUniform1i -- [x] glUniform1iv -- [x] glUniform4fv -- [x] glUniformMatrix4fv -- [x] All glUniform\* in OpenGL 3.3 - ---- - -### **8. Drawing Commands** -  ~~glDrawElements~~ - -## Abstraction Layer (MG_RHI) - -### **1. Initialization & Query Functions** - -  ~~glGetAttribLocation~~ - -  ~~glGetBufferParameteriv~~ - -  ~~glGetError~~ - -  ~~glGetIntegerv~~ -- [ ] glGetProgramiv -- [ ] glGetShaderiv -- [ ] glGetString -- [ ] glGetStringi - -  ~~glGetTexLevelParameteriv~~ - -  ~~glGetUniformLocation~~ - ---- - -### **2. Texture Operations** -- [ ] glActiveTexture -- [ ] glBindTexture -- [ ] glDeleteTextures -- [ ] glGenTextures -- [ ] glTexImage2D -- [ ] glTexParameterf -- [ ] glTexParameteri -- [ ] glTexSubImage2D - ---- - -### **3. Framebuffer Operations** -- [ ] glBindFramebuffer -- [ ] glCheckFramebufferStatus -- [ ] glDeleteFramebuffers -- [ ] glFramebufferTexture2D -- [ ] glGenFramebuffers -- [ ] glBlitFramebuffer - ---- - -### **4. Shader & Program Management** -- [ ] glAttachShader -- [ ] glBindAttribLocation -- [ ] glCompileShader -- [ ] glCreateProgram -- [ ] glCreateShader -- [ ] glDeleteProgram -- [ ] glDeleteShader -- [ ] glLinkProgram -- [ ] glShaderSource -- [ ] glUseProgram - ---- - -### **5. Buffer & Vertex Array Operations** -- [ ] glBindBuffer -- [ ] glBindVertexArray -- [ ] glBufferData -- [ ] glEnableVertexAttribArray -- [ ] glGenBuffers -- [ ] glGenVertexArrays -- [ ] glMapBuffer -- [ ] glUnmapBuffer -- [ ] glVertexAttribIPointer -- [ ] glVertexAttribPointer -- [ ] glBufferSubData -- [ ] glMapBufferRange -- [ ] glFlushMappedBufferRange -- [ ] glCopyBufferSubData - ---- - -### **6. State Management** -- [ ] glBlendFunc -- [ ] glBlendFuncSeparate -- [ ] glClear -- [ ] glClearColor -- [ ] glClearDepth -- [ ] glColorMask -- [ ] glDepthFunc -- [ ] glDepthMask -- [ ] glDisable -- [ ] glEnable -- [ ] glPixelStorei -- [ ] glViewport - ---- - -### **7. Uniforms & Attributes** -- [ ] glUniform1fv -- [ ] glUniform1i -- [ ] glUniform1iv -- [ ] glUniform4fv -- [ ] glUniformMatrix4fv -- [ ] All glUniform\* in OpenGL 3.3 - ---- - -### **8. Drawing Commands** -- [ ] glDrawElements \ No newline at end of file diff --git a/README.md b/README.md index bb667131..c99c8aac 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,6 @@ **glslang** by **KhronosGroup**: [github](https://github.com/KhronosGroup/glslang) -*(Unused Currently)* **GlslOptimizerV2** by **aiekick**: [github](https://github.com/aiekick/GlslOptimizerV2) - **unordered_dense** by **Martin Leitner-Ankerl**: [github](https://github.com/martinus/unordered_dense) **OpenGL Mathematics (*GLM*)** by **G-Truc Creation**: [github](https://github.com/g-truc/glm) @@ -18,10 +16,7 @@ | Component | Development Progress | |--------------------------------|----------------------| -| **OpenGL State Manager** | **60 ~ 70%** | -| **Abstraction Layer (MG_RHI)** | **0%** | -| **OpenGL ES Backend** | **N/A** (of MG_RHI) | -| **Vulkan Backend** | **planned** | +| **OpenGL State Manager** | **0%** | --- @@ -29,9 +24,6 @@ | Component | Development Progress\* | |--------------------------------|------------------------| -| **OpenGL State Manager** | **65 / 65** | -| **Abstraction Layer (MG_RHI)** | **0 / 61** | -| **OpenGL ES Backend** | **N/A** (of MG_RHI) | -| **Vulkan Backend** | **planned** | +| **OpenGL State Manager** | **0 / 65** | \* *The number of functions that have been implemented* \ No newline at end of file diff --git a/library/arm64-v8a/libshaderconv.so b/library/arm64-v8a/libshaderconv.so deleted file mode 100644 index 89af45064c9be8717bb09773fb7f8b43c5344aba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8017248 zcmeFae|**B|37}6)2U9GoNCpuc$US|)G##_o@H@j^Y#Ajy0!23`}y2%pZ{F-*xByqaUR#>dR&j| zas7UtnVN)H%H|tQ=?gs;!BSNZ`8ilws+*tzA)D`-uk94(y#~pr z;jaAsKrhzI{ax65RUvTc&*?lp+}cb&z6Os(hTg0Bxx~)~xPlV*b$m^Qcs1t~{=)qH z@~6(PaV_{8-|YBW!}58rUiqeeo0p~S^8cl0(+~)t7!~2?lDl_z6)|7aPj_MEz3M!4 znj)Xmdj9Vw{drBPx}XPm-3VBDuU>w-oP|PK?{V|8=3g}@OU23W^G`VGVtM&LPN^rK zIO@ccPy9dryw)#PsEg24~QXeapPo#64J=z;W^+6jJsC-~}4@Mk)~PZz@;DBp8C!52t{9Eks+ z9tXx39&}*5y%YSWUI*qsuit_33c-7eP0jRlC;YaAmjmg4W+!-hC-~G(@XSu|3p&9s z=>(tK3BI8deD>|;jc;miY=-GZ(M?FWx=z1KWn&La=o7G$6 zAr)QLk$=k+$WMA$1}c(LAYQf42Hy5Q^3Bx)UrFCyjeO$_JD<4%{Oyh4&z5nXPKQfD zv_4kfj`~!H8FjrR4nTPe!LCBmzi2%($3jn=_|sp4zx>0#F5=bixnBX#`v`b3`FC`O z9ZHVtnD5qkke_VWE$p`UUdlQr)|J3%np)jo`+qN0oB{htSay>m^`P;l^WhH-#J?T| zd{!##5FozvQTR{ZQNW>6s7rvCun{sZh;&iR`~Kd(8YqdjNJbW+

o(L# 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

^&-o|I6lq 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�>Mvo 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 (!bnqwSV2Lf7}mIfA@$_*mb|Nr}??d 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%0Av_zMB#C4;$R=`(z0E%2Q;IcRS9; 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 ckSgvnDqYxPQCmbWuNKxQS>F& z+I#s^`V#Bos;j*Y#dx=y@s4$xNhvxA5DCuea^tNe(xW{`uPD}Nx_H?9d?-FzXJmrMRZE6m&(@3?bk6dD6(bfGs6 za19I$bPdcjutS+AZO=1&+w<6KkXN#jeQj?Am!>rZm+p1fB5O{yZG(SISvM+R-RNQF z25V_6?Z?nO!XHk^GDnW>VIK1YzVfz@)4pumZ|9Csb!;!|DNly{%>&4TpIEpexn8#% zx$e5-;9Sn_C{~QQR9_}LAA1^*d$CUFq4#!Ta5sbk`^C@pJMrloLjJ9?H`?hp1dE>x zjj_*Yn7;Pk;3r@2{#a(XXB?|Pw$}CV(UJNia9&dT_Uey}zv9te{gE-%@o#qcpzW3( zy;*a`zP_G6z4h3>o+r|Ft5+SIn46+=sm<2Xp7Jx_$awHPWQ@Yf;cYWUK z>ke*~&0FpM0sT=v-fDZbyZq$swl%Zrm$R?Nd+ouwb)2np%`)qOeWcgE)Ct%SO0XNW zGB5YKa_e`wv)B_ekk|(qO>0f#%oy#E_UTQpw=P+*b;FW{Ti*#?Ztr(!51q7iA#th8 z46B~~_WN2{i%i2NaWiX{>vM^h0lc)2mnq+V^6e*|z1M<#`_=y&Ut#|S@}TAu<_+vK zlI@fA)mRnpYG?T;|G;@3Y#dm?vuDDxyY#Q=9sCp9+1J6Ig;MkFsl*E1w}5-$--@m- zO3S*;VEh}MHsrFxv{5``pHAOC)$onZU&y`eZ=r3Fyelns4*t!jF800) z_SOVscSxQ~=r=Ozn_L<7rRM~<7I7h?_jw7RxdNN4@GS;MU-9w;j@!YpRXAErrME4= zs-l$jVElgSgE~)&dIerJR2Jqj{Df;o*2iQk9$UDlL)8RH+@VQ^);aqadU;esr z_Cu#GNHYfPy4AgL*R3utbE7e;C}-EL#>S2TjKR~4{Z+)6LifJY1J4r=CA?=E^yd1I z>lObnd%T*(7(RZ@k8i{cmYh?J4eiN_L(BQd z=Xb#IQ}#{mBW?g=$PmTe68(C|9~jc~*`&>zI#fEOPKwmyGqi7`{v^(uQruWA3F@$L$7nk60t(GuUPTP z-Ru=n%pmRQN!@Fl-~kVD4qV|c<{0tMFV19-UzWYcPkX_ll=T@n2(QEOg6iE$91v&! zoyv9iWIb`P(nbWo6n;9Z^=j~21HBaIcm}dh@l>;tF;iC(mvlONRV$Et^RRWUVlVr0 zjTPLTGqt0{pc;z*hO;m2e&~{jzdn?>T}IP+w-85#GG?$BpFV%>FgvXkC#ooH5Aw>s%N}UOnP_Ue$r_ou&#>KXY$P6gaS6D%*^gIC**X_jF-{`v`&&&6 zwS;bkFO=!Ythdh>3U;5Z^EhdobAbHdr1)C9zF^OZjnj~(Jj!?4NbRH8ScX~hrs(bP zO*`d|C9lf!5Q|aetzkUa<7UqTWzM|h%H}JRv9O-7%gfp`4f!QIg7Sp$*X)}oc*&Jp zE0gC2rRH&HdNz2y1AOfX7EPzZ)2TSI=g;1gC_euD;u-Mr^vD-;*dLMP=h~YR{OrW< z6AZ}@yN)Tm(EvZsKRwvu#4LR6Cf5+>S^Hxh8Kq~%HF_5wbRmO@kI;0=Ev_Mnz0|}~ zrSHWD8}Zcr)T=oY_dCcjYdF68Cr^t<*?X*gs($wRN-ozDTi|oIyXgyHs_n(wo#0K} zgGnlPAcG8)p< z9SH)G!=o)?Qf)qRvrBl^ido4-hW*h zi4UfYlY6lHlZTjv-Fw;hFLJY=H;sM0>F`89Lg3&4w$vQBK=Cb^QWb#@Rpa zyCWF$jl8YXZb-ZTz8eAMS~ zaH}$n%~9f`(4GP7L}FC1Ud^|;5&Y@a)KpFJdot?1_|vr`yMo>Fawz)JkS3??+8O8M zr}f8G@W%fBliHKA{@pXwKWKwYBi_aMHIFzBl@{$l-&Mb{VWjYSZGUiiNB&>n&RMtb z3<$QkvyDN20PaqWC%`>izV>w56uw0^*k@*zB7=m_Aeo>bkETJ6jd- zHJ?;@@}v5}vLnY-aQeS^kM@Z#CzhZ|U(}v>#pC%LUQ^#MK)zQ(SItX;=nrk_#+eQF zcs7i7B<>S@sea|~g!;4E#9pgo94jGT27ABDJm)P9-XC1L4H)p7eMX0wY_IphQ}L}t z7scalfKQyg`Q^|Cny0kKu%?%Y?NzIO4XL(1X6KA{>-gC(A5j4UxHIReV~!@6;Hw^o@7k3 z#{=-(X-`9-9A!U(?rJf&?VE?nxk)HO{pJkp5aZHCK{af*==fycTA z8!co1G^3dRG2yp+A+Z6>@~8G7BVK0iHTJY=#eXE`)2S1`>tBz(=jE@}&i=q$oA(^g ze=u+3o>j9Fy68ND87p48+oG*AT@A18UT73&dfPkwW@gh2{?)A5ad!tWvxr5p$2}&n zdnB;~R^>Nm6Z7f0=ksH$O@BuHip({{7jAlD)n&0JGmx>TtMc^@#sT(xzqmUS-Pz2n zAnvdoH>GLSyjV$+Z?so&1vnhI;cWENM7)i)(7`g`EzfnG;w^hT=6!e9ldpNuoiePy zbXJ({otBxg#+M!ZPlpGcbgS=JHJdSacWT}O&yrrS3I<-%^Iipijk4o8?NjVauW4ln zR@bUD=$-}L6_X;H@g|4yW&q<&F5}I>$a^J5i`qkR4ffsmi`klwE>3T_HttRf5ZATo zJ^K6?(qY{NG3g}FxkokcSzr13bJIq}e(C;RtZSjs(lxDL>?7hrJ?B2Lxh?C8r#^VN zwD`GcC&r$0k8GCx<+*7iV}CT~Jk>QVJr;3a8ta;4w0yj8r`E}(J{gJ zGwBPT3Zz#*wf77oZn#FBZkhv|F1&F@@f|Dvc=r>lE}im>`@~q2dt_|aa3j8J4CC`c zvp9^d2Hvmbx^8?5ygLWRwsj69pOtS6`k4RLidXO6NBVuFcf%XGe79D%-5niZ#2ed# zEn5#%zW#Adu;sB;-)~k-!r!d=UURlfe&G0nbKQ^qWYceF6kpKKICBHMm^-<4_Cv;Z z{UyX09Z0%Ot1fLu&MppOb3|W1v%nZw^A7rF4fWbb++x-5Id^_@&59T9er{TRY=Uc8 zU^ToLaAgE8boURO=E@D!n45BmM)fIzk@J8(@#utmK2B=>+T zkl{CTGM*qt2)wu^(={&RBY3pN9FP$pe&=-f^hz@a9?fdnGs9@vJ=%z`M%I-Pi>~bE z(c$+w54od+GuRlbB9F{0-a-G0P^YyMi7o7-PV}iA^sm+C>b!Y8SDS0Nd+h!NjGbk~ zuzM325oG3S&UE_*-MPt#O{!TMY zxLJzd!##wavVeLC|FRo%(Q(q7;=>K%L#8)eeWn(<{4i?{HT>^Oie-`x@?zIfvrj&bWCc-@gj(+8g3GE1#-@b{Y#r zlPY3>*>#F{J*{{XesgZmf8bZ;7;)Lks;Wr`p3yI_*rNWUHdL(1#!qJySHVwB@RM~q z{B+WH{o)~uJ|w;h!Be}5hotx>4>NYFeL}8lwlpQ%slu$<64-FVT@^o=b617A^tCmn z@w6YA;oum#C!v1__|}2mrtj6@&NxUrgA;wUyL|fS;mUu}ohW}5G;{c4x~tB{p~9@) z64*%jmt2ri{srCTHzmvWn-@H_J6XPHhYdDfO^h~j6) zrB4Z8r5S_FlT2ztrbs5$yEAQ>vcu)c_z-y#LYB-h`)7vssk|{IM z0czc+@T|0&u7xdXJB_+k4+!_W$rlo@)PvqvB^IE1buuQeLRczvGnoV_?M|Z z9-)sztH$))XF}(5=L%WI=1Y>YBt!Q;@PqV&uL|GSZ^Sdh?EW~thi_>2s>>2>71{S# z58oIK&r~--TdsL#W{r6wwpnEBm+F@l2|jE5a`+bEUF9C}OlUTEb48f9+@F*q6}tDq z+n_&w6})XZaDJk^=>7t`yr|*b5=q!jCJzukvlIWTx=wkf3VbZ{drwJDD~<5mL42nw zo-NZjo&H4X%4M#uZa%(W%k8bF$^RZ*rBVVRD&b0+&13BBl&;9U zW^UuT{5zL_r$gIx8x(G!hMHv+9WG}!(Ab}y_a^6*->mG(l;aSc`@0SwhfStY$RvPT!?;p0eb2z^wsl; zcXl53vYE`k(rnu=?V)yvi$3LFte+%b&#FO*_vq)3*>f$k zS-tbgXPk5qqw$&QUm+*BBqyYUNlr)yD{^oe^|hno)V}n1ahlN^C(5k)RRSl^%UhCt zzrybOjoZtLtG2s}#SMOq#7z3wziikcF;q2Qwz4mHDwDeFSvHUk=9n4gx1RE^c=2xL zb;OlT{OcIl{u=9CP5Q5NQU3W?wB0>A*%#}~*kpYl!TU;E-y70Y_CY>$9Ncsd^pee3 zet)u8NTy3CEf|_O??Czd_yJkowmf*fdKYby;16ItGR20m3K+^OJUiyhf68yX-09#W zJcQ5V&`$GKd;a=-e(VWkQ-|9h*tqJlSe5C^2(9p}(VSona)|oqLZ4O zd2$o^WZ&J)y)NC@X?;knf5!7D{NILN8tun@5a&M*GFsY@;n88-k>Alg?$9Qh&pn5G zkfZTi}f1S*N2W^^J@4|UbW>}T5R%Uc*SFEdQE)b$!YJL0zK^KwAR-=wOyV1 ze+J*gr+U`EfO*4Hnc4H6n$CQ4H?|Kywh-A+uuTpT+&XsxZV~VB?k3rS%Y1|FwttWQ z=kP9Peh0kD1Mdp9`d0%ntre@dlKb>OhGmziF?jCgq1v--IIjao`Cmo$*}Oji-senc z!3nKgIXhaE;C(OO?D|kgkFov#8jlw--?Zx)oNVLwcoM&=l?i_9V6G~?U31oqCCE$a zY|BgZp()_(PiuHa|986^p2>*x=v|fY>;hYkLPJ}&)Bk}jxH_*#{4?F%_{?DFD4y>- z?}cu6iWfBJ)!a8>mml1;DhVT&gyG-+*cQb+??9eQW=gJG8-pzoWUSi21W(1$+CiU9 z*rPJ`6oQ+_Jv>A4+WqDU8J}PLt%z(vv3cj(eK-0(hY@Un0;HEF6Maq%Qvi+*xYh6Np_uJUq zRNrmj7Ns8W;v~_^f=)j8Qg&IBwF}ihP8-C?)66sdeUr8CocIaf;EWaeyya%hqt9E+ zsTuQIEXDwMyTxLzEuGC8$(=rL6>z7|TceGZ`{?tPl$Ef_YYk|)&a<#((*u+tJY>gJ zo9!@sTOwv`%WBuoEmh~vD)up7R9}#;5Gor`tTg`kcN4OLe0q-@?0Uxjf3EXC*z5m} z1Ak8ZuWQL+l18jO5NqRfH>Pi30mX7rHEj#)}x9l)J zPQd)G1G6*%^ZWr}13y0F5o^5Byg0{VUzTlC$1eOXvV5i8?ky-ExGK0Li>2}_~kT*fQg1|_JM&~>DoZX8Cp)cQ0 z;5*y-KdsmQ)$zTF|KE20m-YG|iG8tU2YeUGH(NyW63@KOAZr9R-(;{)8eFcYJ+uZE zaQNo4#5mDL`&%>6H?VJ5v$z*=XWg}pIlFkNjqyXg)W-NBUTS0f5HGbceu$UIXY&&I zT7IVSBiZi$ec$WGv0!@Qd%=0h`-MH}b{O77-4>uL+Wd2=ov)oSD309zbk^DQooVR0 zW%SSACB~Xn(uEGcMyvDGw61Kg%^JaYRpy<~Sn>1j@_4l#?`oorKNcO_C(%y~BVN`z zCG7DU#s3(bI4eMU)UUBYHF%6kjf{6@CjJ=xgDnk=w^sHE^&>bFWCQek6WfLCy>IfY zei*{v$hv4+JVRqI`cB3zX|cbsrn8&pdD&^P@)fKXJ!(Yiq3MhjqhiF;Y?)!6*jx`y zXOwb>rZZM>ho&>Oai@RIF!P(+Zg<6Ic!KelXosIL_Rm-`FZOK@>rTXct%dKh#$bEX zoSeICboI>FvqqcY8t}_x9KMo&RkZEAWyG+?)*{`Z>YzKa{FiBw)!-5WF0n0ILbUH{ za0$`AtHC8i`>qC;5baC4mJsbLT&jR8o)`w)pU8FtjYOBhoStBf2W+NOEOMtyucFlN9b z$o*kWWvwOj<)O$#&I3WFOZRj`Kh;U=P^s%-E6C^Qg0XpLQ`c$T`d}Kq88>4OR=%6b zC*QU*Tb@zIh=T4iUP_jswaBx<`M?doVQ!Z=*Y(RQT+py5wtLs}17H0%G?FeWomA@& zRh$Qz#W|AI7IrJ_O4+(I_YPqfdYn0T9r~}E*y;bVAHRgUbtUfQogRZTH{3UM{$sou$5;5{ z=zp4V;)C63-Cq*!c+#Yg)veR`?*IPyaEW_aGX0I6(Z}s{A6qBpgx@(Ok*?!0Gfvt& zOWZef`X`(a-m}Qv5`CC|!r|2+#7R+EOFI{S?3BNxvtzv(pDy@+$PW+X9(};%j7G{2 zosdj_edmOSh9>d-X=lgJ&G-)f`#;MI-%9< zkKn&IB>YSAMeEIY74@{1ot#Ynqs|w`%1=Y|xURF~Rx`d@>Cf|qcPjlV8=pyr3ybnw5rb5VEtn$C_zHcfZ>cZ?73Juo&Lt+DanWZnO@B>by7f7PA-%Fd1}lJ&iC zX!wf2Z|XelmS^=WU{wUEfe=$2=SU$9~UA;f?ot!_iA^_&co=1}4*2b&iG3 ziS$==c3hljV}I!h;k9o}4oBxC@&C-h|A(D(y3_xlvtyRYdW6};9@USp`==R>&anAr zlNA~lF1#`)Nyp1Oqu)w?U+uKr!p`WlB#-^BB$;kOXS5{wt<=dozcc!cWZsCAx3V)j zIa!bC0~2{O=XFNUFqxNAmkw7F-uF7AW0Lp}JuUg|($45;``ae#w)Et;?{-EDlJFk= zM)KPwozanYxjU_^yvc9h>5LAy+y7(h*C!{xUECQRoGkYQckvY9D(?Rud+#0}Wp(ZUKQjYlCIJN!NC@a8;3XNna!Hs9W-zU`W*WP>Wb=zyNy>{ik=K4#fxr}A}KY!oBtlStOnEWr_ zmtlPCF+XQa4KcpSb?Lt0#wxD&>>F(S2iLpz9dA6qcjxUp&iFRhS^I_=_j8@OZ>Vt} z*NT1F#zS1g`+|(wdVax*Y0-De#>K`Mk5c}wec)p6yA@+&-hZAPeczuS6OFbLFWi|` zo_s4~OzhL_Q8D(hM3WQzu|!6Bvg6cp=I!W%Gs~0jU3_9JQI#D_9ABP%=b7^4ze-Pt zz58@|a?ixPSmM-?vCi!BWFohmvqeY8{_$javTI%r&qu^M$MW3I@6_S3&Iw#6>i_Yv z&dFR$_5Zk7=Q&)<^nX~avx4jS`ad+*IhX6j`kxi+oX7P_{m+bbUd^>i|9!E}gJ=bsP|DagsO0Ey+zbDrD5Z5*O?~ZkT zm+M;ncf~p%=lX>H8!Ui5TIG}po@r(|nmVeSNuUIS9 zFI!Hycl=$JO*faZnZp>(W~?e1Pn~?;yWakmEBMYz zS8&$@uHah_xq{@+4$i>$_0a_Ed*+FPrI=GaFXefH=aKI2sSVKRR`#{1FNzrvjavS@ z*|h)s*hdwLL$v1o?|hB;xv#l%)F0EgWzwkCpCtWBrBBT_6z3`1S8<)9)1v92B>HM& z;pYpZ1~E-Hf|G^^UD3vGyP}GP*xh|I`vn>wTRyUN#5y^1q< zZ*c`>n}g2{oy4lVm1S(mv|~&^;*7Uu=%Io2lxFN;%~M5lUgi~|Z@u&Nd`mnk_ie-{ zwS8Ls$L|2UL9kgvFyjShvz`rotFA?yCsk9T_^`}931TlJ!1n@2XG9e*@sBLyd=ud~ z{d_H*G1CCNN5V$*QT9MoV#}Lx!uWqb2d-q(oA*QNE-T@F8Q*HoHV^t_uC=O@^G#Lv z9{S-;&Pr|tPtUTx5o69GKggo{jjm?RMQK|z@3LG*vbKbHn2gYdf(&DW)>U@Zmv1Nn zPj2F|HFge-yUck@FO7>flA;ZpzP|`NIfhd85UDvn!}MVNp&mKAm$wz2K(7 z#Jyr>Q_dy@*UDqo46bhj*B>$Gjeu{Rvw7&w?WUY`=t?+ha@hH`K3Xe0(I1kbOme9z~?mB7_l4LyZsDw2K_DOp0&D`rS!Q5IP4qV~TsY9?U@1NPV`&4MebHbKXz9?d?KMsuMiW8=- zI7%Jq?Gb;hfEJzlRR7OCuAK+!UC}wN3h3#CEoy_{vzKJmO3tdA4L(-jCn%9@J(GF& zc+M=Gz;yywWZ!IEk_K zy6}axdxiy&1Dl^l59)un;#~RmqLI2MUY&O*(XLhSr^*Q5wkQ5f64}E`i-+)Y zX`RLOLHGPMcix6=md%(GOXe|FNAP(i@UxjTLTrEh7F$O^A93jHN$B7P;CtaE&i_n$ zhZ={<&=1lRH`D~S)YS$!*9$$%Sb2G$053(*h3wJrGK+Npx?n9$yi2jpVG!kSpq2W}Yeg{?*t3_t0MKw7nf? zVy9g)Ho6eqCfcrs)~i{U7ms`$KijQ*XFk_6c;sg87XVv)bHDQ~JhF)Ah4fcEBL4ZA zY11igP&VrrlSgLoEaC|z6aT7<<LC z!(1@^!x^_cqlFl46RzOznLzvDcg55$g8l;FKZ|eme>QzW2PSv_$U4`vGtQO!?oW-F zWLFFx-@0^qY%4Olzq9qk=aL68{QDonA2H;B;_>f?uT^IZIj=cIGdx2+;Vq)ox$uhO zvx~sH^q!afnL2BJA~seT@?&jnQP%~WyDR_fT;89?^Odwo{V4N6GuUWV+&=}qst;?~ za~(L{;9S?<{-{lH>T9MwH{4Plj8$Aat%`WTxj$*(TsU7~?Fq&$wa9zfT=DJKPFsY$ zpPOM!odXa5oc7+%J$~e=FT!hjzXJZ1Zl20dF-vV3tZDGQ&aP{K?lYHWrqVcf+<8|ZNp_pRBZkWoIb}z!VIBgg{Xr8HG6NhmH#tp!D3SHSr9FQM8 z++pi|>EtrmBj^e3+c{7MuT2IIlUxtG`Cf2TM)%Ug?7h!jJskUr zdmr@`^I!ey&;G%W9d!C8`{#E0onQ>4!_*eR);Yo&ySa?lMCO@Az&Z`txR&+Wb>Q~2 zlaYlBT*S-`Gj(P$GB5(%0Oi3I?lyDc^_9bR)ba zI34Vb_$PJV0E{1F13e9n-*g?nryW^5u@GBZIE7};pv+6)cp}#`xPOV~XYl^aL+)7F zW>4%4Xi4-XJ+1d&wdw72{&%u(`$@jnT7b?#aQdyjHw>|5=&-uWzOdM_!QpXa&E?!n z*2o6G#pdHi_|vq%Yp`|liJ8C_ckJ*?+MeLP?0!$zR^p1{*y4%_^~3K=?;qSX`+j#< ze7yB+E3$3w{e!yVlZ@mF#!qdpMVDNF&1&)rbheT<&!){!j^{o75iV5zL;4U$M(v(} z&4Zmko3cf`ujG9M9g1xxd-Kv_ezGwW8Q7!Pn6g!4_`_xMNIxDao~m=g+#8*ks_L6R z+gBl*_<&?#Rh_?cVg5cA*t7VA2mD&_DT(Z2nK=~W)1rF>!Q z^iJmUdosXDeO1?-jI!A7J3~uC3+tv|nHvi3!QPvjP2AdP*vV&xmQ-=T!xhNHIcFM6 zs>T{ERbPV!hqHgGNj#EPBv=rmoy)(w0Yo6FDW64Axd8D@PzZj?%9N_Uk$QD#QjO9=s*t#fCyQZJ>QV z+YV42k{xDWsYiX)GoM|rPdE^MkRu(~HqFdCm8T#ET|0AV2cP?ePi((78=o%fZKK{c zWVz~PUwKcxZ7KD(+4bs~>eanjFMW+O2Z>>yr`KhU9d$Wb!b9qaSRB*q5c1Vs?BU2iXA)hd|#T7>MAht=8|0>&zJdylZ`hce^hU}1R8H>zl zhUfKMv>;hih8?eYzhq1qa>a)nkvwTemK0G}4f}QRYwt~^6KF2((8*ZYAJB^M@AFbd z<3t_PJO*cehfLqW7@j@K`f1WLE*=?O9=v+25pDCyo~BRq@wl`;W~z_JS$#Z}KB{l( zm->2;YZv^gwmbbQqmNF1gY+>*{p#=9l)m}tTan$j7=6n#{Uw(D^{<7$zdqU( zOiUm)@S#v}(RH5KB6LM1GPv1Obw`uu@6%^z8^PJq8xxEr3GBLRa@Z zdVNLx`9oj*s(bY|WbXgOH&ZkYS%K|UNx!_K8uHWqG>*^aNU=uJJ)?%oFX@U;9b#;* zW-K)aSzwQw8{PhaK?a)w(+t{prO;o@5X1w}!f!pktXv+ot z4izo&?sjO%2mBrD>tZFqX3ct;9mYd&Ob1L~9 zI^px=w~ej_;A_sLYc6otK!*<8M}X@APAaW;LmP@OP+jAIYksTzA3S&FaKgFPGAd0x zjyC7LifvH6FH!FscD;&^X|wBApT0xgOQ7-87#b&jMsWq7V52BDEj_Lv$7{(h;X>_s zjkbu699)?6j0{)17C=+2nva6}m-$Y-3hrMCH;n0-$2v6i6n#g3C0{?qFzL$2Sa;HP zpX^fFt!pXm&c%LhT~raf8eiCRz!YxGI-t2{xZg(IqN`VcXFdmC8+fig$IhJh5O}fX z4!v{UI-Y$(eUC39!=F zxtujFE1!fF7yIGGgZr$5w1a=yhEu7xh!`T>dtFv8hVI|uqeBl(;$7mmZ|NDzU*8X(K1C43hx5HhphsATbCaebV(1?v- z`T~85AIph946P3X7tP2|)>fbc^`E>B_TK$Et$j6xf(_)^Y2zEgs%CF^1N7dAES4M= zKdAlmG1lx6iVsRZ9h1f@R)cr5|qZq6yv_X8QF%j+UgNc2im}w#)??cfMOBNxrBkek}_BAV&3R|Aki1$&TRr;CQWhgbqz6N62%`MOfZrkE%gR^{Oq;9dTX7mzcvsDuqnViw~BaZ7dc}B<)M~2b<`z4^91lH86E#A_}ca_7eIjMIc>uShD`B>zi4q%I7Z*tYuS_%7mbn(mc#0mtNnk%$(N4Zi7dzl{Z(&yS#qqAF zzR`N1=%c%PF!6PRV!KQ6mu+V~>$liR%tv=aH&yEEcKlBL(8)Ga7R{l3T2HMc_RXS^ z2XCVn!?8S7rLMgYp;sp6AxTp!P>pn7|VO&6eB+>4>la^ z)|}kLRVtn;X>T)aSr5+$PvN{k4-U(DC%g&|%WXWg*?o}@`W^9(jk^^oIQR#B)cVbB zcA4kRGI{2@&l@UZU1GJl~=vv|G`Kgj;>DG_WA#dXNe@X~kDYBM-B@yhrPq3n3< z!GpA8OcAjXj9EtpzV<(z7R~0}Cp^F0uK&Ac{bSj0PJBJ}JM^>wcqTmoPwV9!%muq> zheZSV@yk=%_fxY^W8)zk<~LJdJ`PObC}_W1YQD>5&%P1=p7|~>KFNM}hxslqu694n zJJAYz|H#AhU-_#42PySOu?-!1e9*>EFvA!j9F=*zwe{o&`!c%byR}Y!tE1Z^BUB&$ z5z`)7rv3WFQ`q*%alAVgd*s1dYrTB`m6lBZ@M3pN>*K}kvO9cxT3OriF>b~DYS3T4 z5y<#*bO+CiPqOANfoc~yM>F>G!S84B^%`(>X3~v5uC|JC_ldLvh7^O zN12R`e4(;q{*3J}K9@bxhVE{FkJ@beSvIroN5exkrtS{gx?8f=T8D?$UNLjK9h#Li z>guL@u{n&oWz&t}%cncC?a-ZDk;R<3fgK&QV~g9-NgeQT0kk7~;Lx4h%ys?$`!)>^ z%vDXCK_CBCoc$kMizfdM5C4Y;b6#l6sQ;sf|KHMsZ27OH>H7~RqTA46^H`^fV8ct7 z6{E{EFDOEn`LLPW>z7S$&t5+Lt(C6W+qv?$8_6Q<$oBfW=^e~durt_0SN599J27+X zu>IwO_+X-9C@nw4>KZG*S26zIGGZjOE|N(d^5ta$&+#|=hFNn0#nh$R2=Y-#e;b1= z|C07gPF^HCCkI=ay_mMoc{IAe*^SSax%->M?a01!>QW4y>f3)MzQwdU9i85vkK_Z7 zC&1iWb8a(l$r5`qahVDdLQUr|XZ3r(ecWbGzOwSj2*m zv_b1QuOt|6#l&R~H{k+;UE`T&lP|&5I>YbEsm(cib$&Z*32TqTua7<3D0_5>acRJn^HNnIxxeA1PH5{m zY}WVSwYl%#{osARoRu}MoR#;{*MEAl;>NH+7u78*+pvM}?^|X>*WqU&9&L}}&{!9Z zR@%9H%SIUQ>z(@iCEB!$ce3T7T@xSO*z)o(IegqfdHG75J(q{>B&TDA#m`L<+3~+* z4r$r(vcWTKd|t>^aG84tpx1!2fB2j9O*CF(;xh-hqFHC0`oj7U_-g0pY*>uYKF#D5n{pmyWgbi2wY%IO#wP9am!X6Fm9-SDMtlx`lIhsyP z#et&>Ke*oNKM4z0cMPq&%xSN1karXu^arcmhINYC$vS;1tii_!>vuM+Y+!A}w~z{J zAN+NsvFWc}KeJ&O>SG$LH;)n46E>`WaxF~jyhV6_}0tYtQ=-*R1$ z2J1)12r&R&gyvUx`O0voE0hXUVg3 z?6Shox|Fgr22l1iyX-Aom!*_Fqu;W9Z6Mig4v&q-78zs1s^a?Q5b{Gohs8EN3SABP zk`dy$b4=K>2R_r@?6C*kHtb5S7JXZCLAK_pCcM${{FXJ1FpGKQrafx68WJ z@02n8#Q@4aWtZK@wIikMj|WipKkc$_>53ig^mpw5%6{7}`zNmJQu@1U0A-ijWq-|e zTT0nw11Nj5UG`b79VumR89>#~%3=MSK4g1^@imB2X`UE{Z5eVJ={8myVe2y3VfOZe$XlbvS| z5SIAcv30t>Y{`Igd*GS#5>xJ+@IQd}whb?!cA9*~Xr&4yAySL464WR6+ zcG*1Dn^N{q11P)QF6&d-l>YvD0A)AXWe?~|e6zz_&kmsM5ACvhxGqR(v*rh%g{$w_ zW&g&tBL&Zo44~|{?6SY(T9{IA;{eLuVVC_S*YcFI-xxsI8oTV%Tsu=g2T0wqgEN*AW_{zA*3pAHb}$Vg80|VLvb<{{xt{ zHq4)JE$;{Byd%Oqd@X}Do*rM8@HXFu{TSC5@ZB#1{#&fIDBq9Ho?vaj^lN>E@j9|! zE0xx)^__DC7kl|$uB>CMYCv9T@6sNAOIfcfX8)YlF{;?(v4}k$T8Hc8-6Gbra#-sy z_tf6SUR<8}^SCeK$G*BE_KNrlv{z)sV_9dh-wfY+5o=xE0xQl|dw=x4*WaGbpS?6S z%5LM;X>D9f`&QBpr;Ta@``{lNMZ3(l(^hkTF72sQduXTHo=LsxquMKfrS|5`rf+I{ zCT&&Uh~43v6_2UC;#*>C%sd@gl+`{I?^*2I;#nsDRmSmo9w}bd$@{3-POZT-v9@CQ zEtNyi!+M9CT+6Pw_@Dj$uMme5&#TXmcE4@}_n*UAB(HmmiD652Uu?8o2#>b2R;u_X z$G0wd@xkk%puTBmofG>v{v7lM9?W=b#TY5JCy}-AJyDT>z4lbRoHs^F1=hcdy762>{r>V_-*31ZMfR^ z)@H*cPJ30}1i{t52gUOD!kr0ReV1NNa3jA71>1&mmI-}|5Z4`fk-de#Cti>}(q5iN zesq5EBKk=DS*>@O@;hYKhRxjiIq}OF7sdTbCamExXI}Qz7El|*Aq$#KUPi->zq67 z9aFpjYmYq7k83XMqHj*$&o$vGJ~rR%yKpm#_u~%hyK)zh@5k=D@+~}K_r0R0@8pD_ zO^V46P)`x^qbDwZDSPQ(Q%wFWJFd^lNt&LMOlzFZIZj@F0v3dSaH9Td0^Lx%>dNmYmX8(QUTr&=QMC4p6AE@>#d+l5}I`i9% zH!ZYq7x^4;$Uop>kGPloI$q-G{i8zfhYohne~WKT*e@EvcK#o2Z%>5y4u@Zy{qqsd zvy@)anVQbpj%fdL+B*oHPlL`2P1y!*GtRFrfVSMq^{K2ktRq&Cs*<<>;z?InOb+AA80^>*xXYrg!F( z7Y!LvRtO&0M_}y_&Nbyr9p{=l_b)(CI`c6Ve;sC9v*Q;dGZM6|nKPW4lvhRkN}v97 zAbmovD~>z8PuHnWqsh$!?uD2BaMDhnxAQ)IkC65aIs1eT%PB>kyJp}u)6Q(-2y)o- z{I!yT=<3@iM~9f>krRKW+P!+S`Hd3`n;ri#&xnt1@&6FL1fH7K8#_&0FplCw<(`$k zOKutVZ@tSHJ_;feXo)@D0+>oZrg$y-mLqXCXdO90c`j48J`b-J$$I#LU=Z zY>iLfJxuN7k5PM(RY5=P>^Kvh!F?V%{Cu3n>7tzloEuQ)H5M-%NL^mT>o##!&cqnFi9eY|LCJmA^!>qzi@q4(DzCtn1<&Nq7r_~ahwbH3Rk;0V5ATm;{np91e>i#`jmC(J%;pA6%H zJ#(qf14YJhJ`a0ftFckQ$)CZ^AjW&G#)LgSWrM&ESLaOcHgMth460p$?yH9u7Dn9B zH;(HnLH9vB=!u-uP1^Y?<8-s|oYt?lUGNZN+%7oK)B@o2;Btg@Hu@WZaLXH<>zZD+ z=R0I{zhjbD9`rSYmiSH>K3U%uU0eN3B?A)9%?GLZcfj6~>c659gW1ulbPv(g3ofx9Y$TAOOHwZpjSaec!(7x^| z7Vk5DT?OX&eabf~Yw|91;)1s#=nCPifVOH37rx}5M z1?&kK658Nmzl7#{!Xxr(!^_O`?xsD8b2Rsz2@dkBlD+rJ9|G?s1JGv`buNIOi@84t z?lNaF-(j!9HqP*>X=GVwX>Fwpx~sBLL9>tnntp_@#8-rtRg&PkpT6}=Z@FNAL{ zh?XG(g!2kl17|yrjz4YV&J8TJp^rR4)^3CLO?iQgkh~ZQUrT1JbgfL07g@E-k?$|U z&vOQmTL^iPsVnm0Mb3wK@t(QC61G8vU56#rkcIiRr;gxXWw4Uc9p(VAsO*Eb&J2gh?qsFLg zs+E`04Q@m`Rg`}!2u=tqxM zn|6-{_vSRXPXSl5K(HkbywGv;NF(_!{r$-oojm)4*>mS2?r2EA`;fEgKRmm!o1BB* za&mclnCqs@fxA7f;1~HO;VBPR+BsF7KCA=3+Fy3)&RISC$sVF!wcU#?gKS~{W_d8P zF|-7pXbB+uDv^5)oE2y0%Ve))=9o}0%NJTQmv=S1D|Qu?%C_|y>;UjZ%;>E;6oBNTZ+s7L__3dlSomHQ{ zf0*xOC#J?37gLwjCTl;_c;JN$|7(Xm2bP}q-&V`#VD0b0POsLX{+KwXPqJ~b|E9L8Pkb|)9AD~-^bWqN#Rb@p4W`_*@~}E} zxjD~PKBj*A1Ka`k#~$aS_6OPjzwM9mwK@F}tVp1D?Eg3TX~NFv7e6QW;wOEsV$opQ zxE5Puk&cJdd55W6ZNHD&Ec$(zG1XX_V``6Q6XV&$c!yo28Qdxvc@69aNfq@ev@i)0j7_&ae!RiefYCH=AI!Oy+y{Gcjk^0e^Mt?oLa^W%1-=+U% z++E&_yU!fAFIaUOL%mCmUhiRjx;qti-!<8O<-)Qa z8ks6uPnS{Yw9`jt{Tu8I&9O{~LHAE1mUOXYF!&N?ZT_YCmm7o)5IGn+Mp|MNV4>A6r{Tq_p*!{@RMXx7uorgNa9C zX&#`Q@YF!P#lG|U*^_AHH{cu-_6_=&d%MYZlS%HCEavw^nOhBGKizRL<&D*znM8)> z+vL_7g&oU!br<8Mwe0`C%Dp;FJx%o|cDW3LbtofVST_Wphd&{?~l3^_(X1^Y{1tfAf9vukP4KfAGZGvsKRt zX1V7mXRcqL$~lVt)bj_*DSyca$J4KgMshy+rCab%%7)(09>id7E@w+|9)M{hkKPl) zf9oZ`dqX$A$kWm3u26C?@2$0+{P=^c^ND92xpROy!-uRJD#v5uQ1_yX>I3$c24vg_&nOlQF#}* zX(vyM*6SDRKmMMtbN%oS6|s*vGohWFP{4OVcvw79}xj+78^M7`{R#)KbSvCI? ztc97mi~HoCya+nF5PG@*x|&N)pE>woX5)jg&f}RxIptPAwDZ$72l;)%?*KoIn^*nq z=h_Yq-c|p=$=kYui(R@d1SedDmmzbN54m?gtnzfthmHlW0lj1HDaX%UZ2P&396z^f zRmn-0kW2e6V{sO9gZ9Zr^v7=2u9?Gj@IOp@$;Gx=`(KM@;uGe%vf%bptGOPU)?e^b8 z`|GX<#nk>xXugB;^8X3%#8M>d2G9q|-{a|r>UY||&76B!=bxtT#r*|+INCbz=fE3h zVg=-vm+aS=>__JNJ^6dEpP83xes=qVepkW!!f8Xwy+NPaeiROR$$c-mZ^d2Y$D`x` zuJ#zEOVAfZ&$k+?+{*e)t$Y)~LA_>zWD1)U+Xyy~0H|XHm<4qxnpN z|E>5Y79c;Db6>b+QuH_1TDr*KTpB%JZ$EG4xpX9jH?1-AA4^s$ZX`FpTQbRQlpu#+ z5#JTIo)XRDd&#MM+HbA-`s2s*KV61)a3)J?jMjnc&qIbfIW^s;@7;^6mM(Jij(n@q z6-A0iAiuiK|L7t%%SR5z9jqneqwdLnsP&*1(L-7IzK7!bz5(BM7XI&*__uFhU1lw7 zgxm0A#lA?45;%*&dpo$cFVxz$H~!~OyVro*|DiyvEKXz_hJupSOX82iHFf? zYw+FHep*%%MjpBxJlt@4^tEf;tA9z^Hqk46kj!rwTOMp&X{|ptpdYpVm^gk~sh4`3 zJ|3ixUFa|6m26{eupvdaHlSOHv)a@MoE5;4FTW8uvw;&(u1D4y*U_g=WaYi{ELph{ zzG#|f?3|1oS;tjl^4rgoV+~pV2{hMC|C{lBjH7-1$#{MLyuPR2vB-ISUxYud8GI!u z*9>mF;KmPb7D^uU(?_3;FVW$ZoJ&>Yn^t-bu_cevpKtIZUTjaR%F1R)k&ls-d*%}J ztvEL;W@#?87aDAoHbNu2bIA)&F3uH!-`bGS`?r+klZOA8IH&lz!{#$k271 zb)z#V(&eS(tVdRYjCuZcW0%%6EB+YE*TLm=Up-H#!`=XTk=r+ zAijR<51+0-N@at?@&0$QH3)B7LQpl2Obt zO8Dul760H9Z&`=j-n`z3zQ&J=->>Gr*vS_%r@OoQnHYTj zwrvy5wfQ^IQ#Fs#O4x>t);vp>sRwX^?Ys@?Mhu+J#f8!Mz_b3@e#h)I8KIsh4XfB zcCt;ob4}W{=6*i~|4!^}cf}y)b;ongr6+pu;^8syzah5WweyGH4aW9(>K^=oXH1uJ zxI9sx-&MTKi0(SxwIOTooBQ6*b#J)O<&M7V_iS)-F~za5U-+c^mB+D7!<&531;mNV z25qi4qE9`2Zmju<8L`md(1xaO&Dd~1ZH=VZiR+Lj2QR(^JNIJpwG1+K))c<^ta+z$ z*QDFL&(c3)6kGf)uEp{v$~N=4EMN4}Nv`CrC9dSs1Fj`Y#}5i_MW5c537s$}tHeiX z$wk|jaNo6@ZDRQnHuGNJcv-tq&Z)>%v&{I6c8`0*N_e;vT3+Rq9h@_OQH`V6PXOM%O{IvUtDg85JR>Jy*axm?31H_`qPH12)+?lJEqsJ@JRkP8f*Pv$<6Eqz?`n^xjFZlwpL3xQ}pI*awvL-Xd zvQ3?M#e_x@r?EQDV7}P*$va87xAo#XJ3#H*@M0MpRUCn;G`&n z|37h=>l;N`{J-0^xE)_y1RUwCwPo_l9e?YCoZHl*SX0??KH{fkKUHGya84oT>2Nk7 zcs+;ywQ)6VI=|8KYv=!1qvZwuce;(sA|B(i80Wz?@FQkpm2e(@WIA#wJ3b7&e^gab zydT*#5q#kvAYYU}P{jY;uZPX&AN$E8?J_Q#NIvB(mr=3@m{0M05_tFVBbI}+3`TOM zHMzZM<9Nk| z^9s$!mBZSKP3fu{fk~8suUD@_gw?=#+NWfkSMdS7iT; z2aotDHjieU(Gh#~uJE7{9mn$mVrg@k6Mt;VDkFMj5AK8q;$}vim;9jAX!+RBJ`iGE zOdNWQW!hKE`>Td>PJjqCPt(~Quz=`qjPExtj_;eUr8 z!1LJjSpC?phE1GvMVt2HZz(R$Wv`K$t6y_~;S-lc?wI4tS{ZWrU#lB$$?_gQJ7Xa~ zyY^|wPivhkksWtpbabX%f!=?PcwcOT!a^h3guhn4xF6KJcKSydiM{Kz()gAgI6E zV{$7xr>Xv0@SYuSpzq2X@1yUzG|(?R`5Hcr1^=vW3tUPXXP5?8q_=~@scsc;=7#a0{HyjNh@mGa_B&9OQmnofoLZ) z)1rauqtL)1#@wN~TxiXqg;NJe3-2S}kA)UGs|@+~Oj=0PyQ7`Y5JNn%ZpL>8S-9zs z7Cwv5kA{aGK4bL<;N77ChxWIo^t%xpj-u~Hr!((|1{yAfE*`(zoHsPO|Gi_DU|cj- zE_hk8NaLsR(*DH1!?ThP&KUe=eqY&hBz|0VtYdIf${2V&(at|I29xV%Og+jNd=@{l zmbbC^WJ_+f(Z^!&DZfJND0q;*R`I`@|B}b*Yaui%{y9XS(TkU8|=_nLl|36GTWBD8WZUg;ok@Eh_1}B5`Xbu<7MUP%#MG5NZ+x#x_7KL zN>3bVtWG}Gu{tw#tX$E~d5l$d-3;QxbL@EUSBhunN9TO`ZjzEblsleR~GDm46=l1UpUs8+?(gWA*Nx z36DEEt=x#_@)Mm(KW;s>G`5a+Tb7n!lOXq(dSl%ae6duzZXn)JcBUdt%VfXk-U8X{`^TyTHvxlkWbeJq+k#_C|{C z0%>%oHK9)VAvCXK?*wy(DQ!cT2S}f@C!+vZZpLuC?4VoE?6HHUr;MMY%Vg7-I2>cy zn$4ao@RMSDea)D!wsqk@)S6a@{G#Bll6jG{*QEox@-a`0X-+D7(|#;`Dn$!8BN03f z^jov9>^uG#Uq}UXa~(L!c;*~=%>_U9Nkoylc>Prig)_E5(-^RJP8phYet zi5-)iOnGGVsyKYG691U&IN4B&F;I>I?LE%QGg`ENTKN@-S4y4+ox%TcKj&=bk)xn& zn5PS0d-6Se;cFil+?6?;_!Zt?^T41kZ-J3qdi>z7{IfXoociO`p9u_nn#nl0dy+O( zxrXj3xY3yZWc`(0FS74bXIP7_Um9>`-0oDbHwpc)4Ai@7u#a zF7Xd>tPcPDgzp-**c*#HW!<1CVVX(x_6^!-n~=b zJ3Oa(Pnd5s=HeUS)z8{N-IqD{it%W_%%WMwV{h0yu4gQq^ZHt8<3Psb_rPgjEHo~{ zyT-zl&+LOw%^RUH(|NAKxz2JGt~GYW^i^Y^u^LB?2rszTb01^mANlwh^T>2NK(a_Oa>U@i`sga^9f&?U34BQxHA}{! zZ#CCMW|?z?{@N$~D_V^lMF;-_yrk-2={sa?lDTk80Qt9~%$QQlp4sA)$ydSJmZ!{; zh0?~ljl3k19P{;;O)fnUSGFjqjVnJ$H434 zSG>J@(-!2&e)eHY_AX;xRJ`i&=~w8p-fN$hY!1<>Ij+MjnSCTX~1B4sMzC+Pxn>IwHL$=vZF6~RBk3%P_-|=VE z(T**)EX}PrvMha0vUFi-tP4B%vt;T2o1rx? z<$Sh$i=oqWW~V9NpczxXadqUIZ-T+Ofyg)Hpz@8FdJUcTT$+5lfVMlbxQ6~ZviLln zOSXx3l-opfdjhh|k+qI|bY!mNZ7>Da6)CVL^E_3qpJ{&Ad)Dw$;HJxUH_r|r*Ed5G zW?krmLdw-$75asEO?2}SJoquZF5PR|ujt-%y?av{jil>l>D#aHjmFE-x1!e})Mbt- zws;)+P}`0$?D7vTTvlK$aq zFS7$*u%8EZ-T0X?^;zptmQO3UhxcR1GRd@o$R72vF2(Kk)AmC@eo4$c~u-P8=6Gl1*x&?S6VcSh)t!$aeEe@e>xO5Ug1xF2FKoXC5P zy)*8Pf4baj?SIY&->O$SG>30l;N2VBe$6!RG9x;NF(B58d=e`jbH*WuF*$>JR7O0c zd8+1{$~)!wdu0!71|Iys30tM7?n3lWGq4k^XW(1Lj>d+l);{p;cqcH0M{|$1$3E-* zR4eX>wF2VaXR+qffBqnJ+Qw9!_8PE?>>Lf7X``1mJN;L?92~rX{x|8Bd9AC^h^G2! zrVwA+BlqC>_b=|Dzg0)_(}+i(r|%B^^~?par?l?S!F$PYLCjB;<-b2I5JlU}gFALn~VN3}98=5yu?|0y_WI_g$nb=mWQ-NbV{`bq7# z<^-9h&g{GxyYUp}jl=@%U=GmfaYyr+7if;4`GEW#ng{N#;Qz%|yw2b3@BhO0PTTHE zY1^YIZM$7tUKE0BrkyWW$&2& zh`f{0Grj%@>8sY8GD<`f2IGDi`m@RQZR-9a?hA$*CGgBE;Z0+D{14-(=jKnkb46$6 zz^+I36h1ZHguU}3Yp;o9lIH#`v|l_cyZWcRyPSB4kD!_9Tceq%0 zv1208iNP{ECc^7uUZa=@;A7XB{Rw*mJ^j6dwlot1<*R$;)v{$pyUYJX?8Lbj1-*aj zo*H)S+E#0Q{m=B_G4K!0HVQA{wv&6{{GNB}_n)}R|K`X)$?`u^#*`g8+x7tQd)Nly zJH|u}{yXFI#kBFciu*cz&V0K!oO4F>5y=(gTx0?J>##vst2AYX>J(3DJ?tIi%X;cM zm9dboZo}p79PeqSEx4%=z2Yq(-m1VYUzG3#e!cPW%uhnBC2NiKv*L^2$uN@Fu)f;B z+UfyM2C*GO0<4!3!#0RqcWyJ*UT3XE&<)~oM?Nk9_mjbi;(UlX?~$7yFc)yfdCO#; z7g{n6I^C3@ymjt&-Xv_?mTclWJ{f6jV(o-D8FEJDc#-k4MaRZ(0_TEnWP~=%^cW*M zm@7yoY98?xF*WVqGByl9oqZ3-8=H2ZJG4ipNd9GfX6sn{Cx=2y4Y^L*@`;fdW-R{8 zq_ya#{CK6Ow@t;gTeiHXnwUeasVTn?QqD6WQZSgDhoG!qgeDJ#p*IY?f`%0dNz0wJk?!{56_1W&up{( zjba)!w(4W*H_v&Ek`FSBQsG2Cqj}JWbY&s1!o#PT^Bl>gskG%GbAF@zfw}Q)<{6F5 zGn6|}^N9xL7zZyTuOc!y3=GBf$q!RSIV(TcnD`*%j+dNse$EP1JhfRT-!pzm!SW$f z9av|lz_`eSLHm&76V2z!M`!tTG+u7tPF5~KU^p;~pvN)5eUx^cXu}fUonylC2b5Qd z`2c$mM#cZdd%aVfXDQGBILIi`{w3W{=AL=eCU1W-2E1h&_rB^g9=j~FpmpDDmyf)W z`2c#j1Rgj0 z1`c+EXUW)I(62M!+J>xRoe0|YlLyrwPoO)54@YOL0S^gcQbuX4;8AD)iQ;8HD>h#A z;2}3l_>NNGE7#hnc!2gu2AceKmSRXo#c^J(KAGpo(LS9q)m3H1V(ht zeJg`mgF`QL^3&RSA-@u7fAT_$8b;lP}SJ z$Br9i%0QiqQ-K{ArZ3t{{wwqR!2oOZL-AET$(p>@>i>zXTFaW=d#A3=U&{ScuA!Ob zjQ8n$vvn%AI6S%*yJz#rWsmIvKW4qZ8WP>b|Mw1NlrDuw>uKAQr?6*+@`e2G$#Djp zD!u1gd=k1#@A+@$$^$=bz~1V1?P(&G&xE_>^ytgL-Ot*B=;gcUVf9IP*Br-7zqCGC zNRBaZ!T9CG!%vl%Ht|XHUpWi~ub`{jiu=J{-omr~#?!}mk#{#9;HtP9=Pb?2aTf)r zf&VM{!Ov5f?@~{8{N4*nqt05KdA26?wPp~Tm!X(QbP)I|#_y*&Nx_)#H+B&(o?s07 zdv_i0Qfc5}V&z(~VJzQ(cq2Q$if6_U!{n;?>DB1ZI@;wurY7Cd@KeRH3 z{7zNi)ysW=+;hUc2ilxSUO$bE_(i@-XMBpdS8myM#zcIg`Gss(>7ww>UMH?_Z@BG@ z9y)sw{&48bU_APxv36qa4uE%!QFv2n^nH5_K4v{f=gK)e^^wg>;t}yq1l&u%+IZh< z;+=KSUc8Tre-peHcntCd!5iQ`3%pl?_od+70PkV?BD^b4BC%ZHd34}+$QSiVbAzzg zXXmFJ9r!KJY2#k=d7{^!5l!i%=5V63k6Dj#`s(mfBRnLUUPhfu;gw3&%`-pGs)>hF z-9M&|@z^wG9rJUe{{Ro~tqVE9^<~$6`5TTmrml5m)h;x168i&Q#zC<_31WHX@V|=x=+yaz z&>*&0U_A6EyG{8gzjA?lwPK0H(}Jy-q9XFnMWFE&jK!QCd1lVJmBgoAP*XFl);Dxz zHSuYUOvR6l~Rs~?bDxEor|~s>oFzPO{B-Vs>dDHm>e;S6!r)hY zuUu;{K!csFtTmn7mR|$iq8lG-q@Ts*{%8rd?Fp)5$OXX_KfaKC9+`pJ>=`oK30|tj zpQ0tM4fORp*c&6#zTd(6tJ5#pqpz`l-pe<_Z8q22>8JK!j3(Ec_7B_+4AHaZrx}dJ zLhz104rm`ks$W8U_($;?__@_>9F}XVd%O15q9d_M58mWv&z=W8GYEY%7=1Y;R*9`# z_Ofg73g~DqKgn8hoX44a69?!DXb*##XOA`GF#Qv+t4+Jux9hY=a#nWOHrgS1sr+sG zubf3aGpVnFc*!t&t-L3nTiGmR0Q6io1D?#ba*@u?Hl}F*miD8JV@%`Q{ab_|`C9H| zU&{9$H=;>k`>;KidVG7o~k$0)D!vTRDEU4qoXqrgT|-4yeD!(_g3jik|XT9V%aAmlsaht206{%E$}*0<`S( z%z@RP&Aw&scCYE*>+-)57mp_*OWw${&s+ zm3QD?odQ?we%^#T7P#X~+&^T)wQ#6>-DBfdfJ3!8ud91=7j5{haKs!#d%=VwFL_&I z%#S3Km%%?V<{HR@O-0N>=3_fIXzs*2%~cxgc}Qd0JY?D)E5EagzE7f!@;N$dxyxzO zrKUW7K9;ogUsshII=0Sd_L+9bAlnY{nEP5aFVJ}a(ubwc$`$df1}mC<}u|=)wgl0{Tt2xwoZz^!t>O9c*zNe z=eM4H!Gx8XCrd|b@3VZP8jBCfd#$|&vZG21!7+R!8`6ojV}2rEXHa@b^ot)NsJL9o z6zP@mzKg!G5In$tLHa$FF-o@LgGmqzlVA^GdwARQL^l3W&I7-Tc59rpUK{?^WbkhJ zj+FC$mT(WvH@L}dCAkS7+&rf*AGFG*N}0Q99w3>XoFKcZ|D2*v&emM4cRzWN{DbJl zX2!_Wp&#W%%{ca&$TTO8U3FiYQn&QXPoPJ||LfhHw0Gyx_EGk`3f>vR&p1*1t8%%t zS^Mu*ZhBg|1oK|)yVSd>Y46@K=jqw;)P3%U?(CocRZqJ)uCDlB>9714(!B-11mAnN zA#1{`Cz!qr*-UQQyTtTm$RCLwXHGo^e?|@SW%6#DK8OhO<>8cfra%1&kfr1WYvJ`Q~+`=y%oJk3pH*QDarDWhjD$|(q{1)Ivp~q)=i}rBGRVtXhx|9cLvE=Z)ERg7RHpAo(cDqvrGA<| zLhLd5k(CfJ(T}5Vwb;}^4cq+x>Ivzb+Zn1 z=uRsa{{AZmVQUR`_96A;22ndC7nEZby|KB0egk)tH)!RnG1uN`+x5_d{E?0PxA@r$ zEo8@I*n5r0f)&VsI%L3daMX!R*lo*#Eas-E`;4|BTbwl~Gbb?di1NEW&%V@d_97g* zb4ctE&ko*{f!*fCe)FOKGHH8OOnz780FhruZ5}@YolDG)_Vmc7xB&SSxqWW1Nc(cI z^)!z>{Oh!Y#xnwC3?`2$(8uA$SaYo%tp>mFj_(t+orc?)XgZ6pU#oj z%w4&k-;Ql<*_vbGr;GM`?#IT9xtBbb94}|SFM4(C(u3&gB({%}yS9LRWx}22bi$o% zEkF9df%wk!-1^(Wx7w?=JG@iCyhVE6sXv_XMca@EpP2QGiyx#<;>}(1VcTsCpXHBk zHD!iBAQ>dT@E^EOKbN6rshCfv!Ss{<_708H#m>HI#!;cJker5ymPs|uS)AJqC?T(=mvO_ydUD7 zwtjeL8~pN!`a(Z;r14H8yn~&Se8J`!eAX?k@KC4CJJYd8RhQ$#JQDA`cfNGrQTBw@ zXYRbpZhIxXBb;hq7<2rj_J(OcSSCLG#M7+#&2zQ1&#RlUXec?yCzU7LkOkLaL$!Mb zN5j`lG-+%;{aHg_G(HU>*QWW%YW5DV+Rr-L>eog_AK`qxFA$5q`MM#|*B(1d=RM`T zl_@%r|I~`3t^mfzloyQ1xvov-dK%xngDh)e@3XUax0*2%Kl|`YXOe$O`8j-{l>8j* z=PiT|1Jt2!viK&G_Y?W9(~}vW!`fOEdw`XLy8zmkzhNCPGs)Xjb)j{>$5^}UVeoxl zGxL9FPQ3`8xZw=z9EgDDk^H6bgmT9(#kcYTGOcg_M#r^>SbLAPf3(Ox<3{@+eXePx zMdbMoD9`ucag)4xF8W2D?~u{*bIQp7+>57C@n=QDUkSCy-|z@H_rh<9DXvYNp|Vl? zwMTPZy(kdf{Qa||uT7e0;@X3L>xGdMPe9Lkk}LX6ws7s@8_n;8Yw3QCbu(kFanQSe zV8hYxk_7n?I<+6cEBgRHER4RuyExC0XH&F>Yd)WTn)&<(*7s9ohc>%i zEyEc9<^#|a_ufL|(&ht3O9OQ2bGce1tMra};0WirpXYk-`09;D@G4t`ctqI%dN+z^ z>*y1<>*i)#F1S*3>N>{qLB>V)c{4JgX}f3VdgOp~>a)CSt{b(133=S#=Bjm;mirr&(r%&r)EM|*rir@H1(r!N=L_K4OO%E|o-jUscw zgZMaT^5J#VFC26t{{!H=3LUzR?*dv|!=9H{iHtGCq>Kh#W0ezIse;>9o<5i+EZpJ3ONqfu( z6Gx^sitM;&K`2?T`MUNSc`n`J|FUaw1NC>-m$yVRy(@hk9uxmtJtMYc)^WB>#fYxV zyrx@Xo=dyrgP+CE=pa@yGBWzZ(@WH&n{%dF_8z2w!p7l#iBf4u{T+ zUZb(#T{Ag3q%&%ER|FTmi%mFd#Jr{W$Cts2S>?m|pIKW6pI3pO8>siBF`;i9$MwFG zM?`;r`Sj@N!2JVb|IxLOU4IQrN|Jx9V#zs8wn9A(-6a^NJXnd?{@Xh-~7du?{ zJ?3}av~RcTey%s~o5`N89{dg+94(<;ndJ9?zDGvh^#o~Ki<4{MaQ z|MCQPvqnap?}BOXxy4?E`u*y4lPoFOUuUEh!kYOjwrdSjW<;(yMF z2I*%E8zIay`Jj6GbD9sCHYWZmc>0xe%(rOwiNP{1m+Z>f8%js4ols&U);i+VQ~D`Im9tf6TY$IV~fMmSWd&W(-aPFc`;;70^l# zJ_ZemJ^*}uU&s5Nv9aU2WW&l93}L^>N0k0vJf!y>@Revo@W2HNsP%D7W$FwYhJ3eP{!^VB+)P)Bv9xpv&LBR>>; zDHHpdzRG@n(QUNUP*((-kNDL~tA-hi*V9Jy?3QL%UTM+Y#t6l>meF?gaW>Dmm*+bAX~ltQTveX-@$$9AAJ|ie#I~Z$X=a+$*o9@*f>UM--n* zz5?EtF=zMrj7xW~S({%5{yT}iApRz^#%+}PS-Zl%o$n`)%!HqCRSd>Pe9z!C^M!9- zR$SO7ow+E)Gy1&ObC+vgPrn;ZkM5df<-7y8z4-W3S@dr_S3eTQ#*zx!l}azNWri0T z=m>v`0P{ee3hq5g+ucePynq-P>r>cwjChS5F^V_wzB)Ve}uJR1$#)AJ@1)d_jw! zoGCTnpyFzyMYalKxoQyf*3;Hah0*8iHmROsqus1$8M>Z&_AabQs|P;#0NqzdJ*p$} z6~W6pG9nVTeJYnhSz3^LL;lecdgT_Vw3Vd)+ z4p!q9(Xfy8!u8a3(ujt9;mm3KtO9dCeTgGeOnGvGyKV`eAL%b(L&v~(07xLdtlBlh@MTk z9q_CAy_JbD9T$%Z+|;9?mO`HWBYJio7fz&$M__I;P0eS|Wc$!xZdW^l25k z+e;in8P^)ly*6Y1n@EwydZ?cD9B`jHUzwspi*xnU~3?@ ziq$GsO8~9mqUInKtoAX0w#g_hRaDZatsu3Hm$tN6Tc6e%z_t^xEuuok+q~c3KIbG8 z3flL5|CrCroU`}ZYp=cb+H0@9_FBV;-8Cf5i8anVkE1uEi)?NjGWQwsox#cphd`dnJpIgrNrKg7dSLLpFN_72Pc*yaf&+5nuT8ktD ziUwVG(B-v0o?dgD{h&JrMH%xBZbR;gH+ti-Gj<{7Mm6&`jvb|%al+PHAwL6b0LD*1 z@|`)c*`ssx+LP@iz|0260DdoFJeVjW-I<3%i&Ay)J zs?&Bpr+f9%m+FAgkGJYhvlqDdc7B?aOzG>()^dBE`!4Y5AN#-CIl#V(cY@o1Z$MxS zYt*2~!D9L#9lP7Qq+If;w-0qW_9c{$(0)7ffjO|R72Gw4Zbyc8vDOL3G~}b+HM#F@ z<=r;ksoahH=6Sh(bEvwe)vZ&M5jm)N+OTwLMPQXx>d3a?u@Z9UjU~U{Y2?={Vcf2t zJb1!>Y<(;5tb4jKaq;Sg?SWXfa_NynFG$-{GQMTt%wI9JBDjKkx8PaRm0Vq2#hA06 zPkS*KlPxPuotl-_qG=<16|yt;lV6*Ib{_q7ZPy2S`+vZ14|Zu;H0b<;+njOhqtBmw zc7XR??A-zphhK_LXFkC{!b7qnoW8`79a>AV>tjdi@cbUzSW6q`R#h}$$5PBY*^zaQ z*t+c8O|8q$*`)QPby)?!&)$S?V%C9?%z+KSJ_nuVtZ9g=;h4&_3%rojTK*LW1l^ijkSw@ zN~Yb5?bx%k)?fpu@!i|c)|v*~H0DsMoizI7F#AXJSz{wT+LvN;RXl0gHmlhOH>uyN zs(Lyz3d+YqkERN%YzONW_M*-6S_ar-so$ez-!= z&GuR2gYZliyps)2Nk1WFJ+vuD4aW89!!S#}J?8mtyt}*V%qaXY1bmClGPkDoba@;^KjdyS= zwoUAFarWGrhuUkf&b0LM@g?Wl*Ld~FUD)K+tL|TKJN2M{AAg5VwJ)Kb;i(~&I%B#? z`y66~?35itdl}=C$++ItHNqYR-BZhI+|`d>Uufi|=6nIPk-U_Tie#c}3#~lY+WH#% zZRAB+K>9N}uyCR;eK=imiaplD2|jO2zr@7C>E^u1qxE{~{5N(^`OtYfQKxJI$VK+Z zJHw+wHu83}M?dXn*@qqow4Y^1f01Wv|Ct32;z`wMW=&QOjmN>gi?d{6ktWn{#oXu~ z3(qlb-B)t{g1xc(It#m5-+dk*W8vNB5#F4&nfpA4ux&_xIfVYw#$Eodz3K2wn*H|E zPFxxJQR<#n8~6R=4_FX)=CW#>SU;I$F{7sFmnIwmeAR#P?3D@WJn@O?Ydk zKXsp5I>i1%6#F1}D=vW1Wsl5r`oYbswU%PLmQVf`@J>9xY;aE&bBE}Gi`ubk2WdyK z=ad^Yi}TP2;ZNDObw(4z)@{y9$nU!y98O~0$^Zx1ZpBNwPoVR`yQT*0`=D>Yos)u@ z1w8H7Onve@?}k=;;Boaq_H{F#2A*R-MjtHcQOMtJ`w+5wK63CS&I=?PlFUQNe$Kyl zhQD}@J=eAIh}LSi6S@T+I>#2>)UKi3q)hu#+CEx4+S6-4zl1S!<*jMwZ?q#i$bOWb zIt~qI*im4uhfhMT-$y;;rEzIM&oN_-U&;JR*_aDV{D5y$zLoO3nIpzGBIV3QXRtaK zS>EL68CH<^>G#~WX}5c(AbW~@{7zyVyD|rE`gIX`P6CeahWaL3xNO@;o`b)F@4)As zgU{m}Uw8$CPtZ97lE1%jdI=d(0&T8l`k1TN&x1~)aYKgn40E*QG3?5{{QXYAeg~TQ#NVzDR0w%2TpB6|b8nz1 zmQCyx+1EH%Eft(NJn;;&HnmPQJg+)|(+8K!Cw4wOYveZav@;)hdU|nr^?9N4&R5IJ zHo~*>Rvm92pp2;#tlHI(Y+eyK7hfP~{%7>zII=G|DB5Gr^)7W}e3CPTU&6=Ux;g@$ zEkT!iiFU8N6W;X=E}Ngcao2)m-LA%O77a~ZV^tZkG@|GKXuzKnJ0%BIQaQVH^~uWeg)NlzSHnuf5ZcykCmBo9O2 z@gO+nK~G@y+G}2CytO{bJ|_KOH}uk4)Wz7mgdgA()-1&Zk?lsm<2;Y1?uWOGw3jkY z1}6I}*`@S;N9wuGx)bb0l+jqlv#e6B7xE+a_7&@aum5}uUZeQ0xh;JYSZ2<7>r-_0 zY4%ruW%Po9*z2E9nsrzC@DwksUbr45r*)fEQ111+5**cU@4wo|XTdqErSEFL8<`AG zZtiCEFk?GwjpV4zQI!RkGw#WJ&9DnPsA#vGru+86A1+C-_n_=7VY1&;&Xx zd6qj8=w-XB{6=rtL!GXB25dTxd*x43-qjUb=JlMReR;m_@-Ju4qIEqFn}a7uLWPbD z5HDF%tb}B8-Y~vXcq-sq@YFu;J4lBNu=iNtwbyich1MtW7VEP)7uMLy*PFH{zQkUQG49hH&mL|6mbO#*GfRHqj9DZY zxqXT10?XrD>^rljaHhN+exe_JdRtq8{WIV^#95ujLFZ*%nf^^@V>b!7@!q!!mK*QA zUccRV?>>IB&K&4k=ES#)ww`0o)Y^e3-I?>91JWHwy&bg2!8^>;Ev&Vhd&|FeoGCw1 zbA!$jj=uNJo@Bo6&~&?|CpRR*e8QI zR%wl$ePjs84-$vArf<-}JDmH3VL2 z`1aHa{BH8+-#4}5$9&5cESl)d0lfwPE6#baW$4_Yh%<+6&fM-B|I-H8`x41~+2X<( z>9twdEr_#UF%TP$Yz8aPRck(&yIS{}!oF-Hqu-)DcEpl7w9$$E`9AQ(&QtOm;;XLW zJoMM|8_!-99JI2D^Uy~4<~a5SU*#U!V)WOQoHf3Jf7YY?e$uy!@9f68tUHaI?~moo zU$zVRs9aCI8qP?+if@<7)?i0f{U@kwi#9bMBK$LM2|?61)#@A4bmd84zL`SdSL zd-K_obkiTzRh{TxhMIX>lcR}n2S@^mjFK?Q5GHWPwXTP$=n`hA{hZ~$rX*2Jz z;bp^L(dLuQbNSnx&O7-&9nbsr-Jd=~T{CZ@fm2MGpYcAEcgvxJS2F+iSDW$LiWnHTl&B8r{>(C4Zpc|*Ke*Z z>g>fj(^CBA@cnDYZ!U)4Tw9bF2K2wpA2@2gP-;E=?NaMWf1w|nH{x>_t?Rqvz5hJ) zAYe9sa(ubu4RmNRWga<;zPfj(C?mhP2KtG9P^R*o*mp%2m5HVgGBo>>3v2ljXK#h< zg->$bvoma8J_mp4aLrb6nWqzXA-4kLC2I>t$|cvEu`_gzk5p*yrhT98>{%Js(5d*g z7iPEuV`16rgPgY-e5*MR^Kdz#7neXC=hkx!JEBN>0?h^)~#dnmKcJ07!2KFigJD+FXIA~uTu$pJ8T-+L0 z-VIHvefXK+KiHX8R~E3oJyT~8efZsHU`Q_vSWC^Fihy;OIV%(X-OxML2Hz{c|9Ru; zYG0rP-KXQ$0am$U$jrZhI5Nt$gO8wRYhHrQSpAWYm-g00$lGS*^^yMNY0#{adD;qZ zk9udkeG&6e^um^G^weRx*b% zQI5{}Di546brjd4MCS(Hc@XCZ+3?v>=dyL%bDiA%YW5e4Pl&BtYUj~r(03bpJ^50B zA>V-05|^%?HYk1Tbl_A2Pj#k2pTM2zwfo_XMtqr8wr9s0DX%gCV!ViMoyh7aeUCnt z)61KO=>O%Mjd=Jh`2DmB?J10Wp&wdTjJ*dtj1O5H%(&yJEN~DmnRPgF5_^-drLAV&>t7tywl-vcRU>bf}8zmE=@>+D(fAU90=4P(q)Z=rqd%e?)KnQ!P{vJXr_ z2aKN}c^NFxniF0!+|D|f?3YhPb72Mi|5<*IbIE-;AKfKsWhbe8PW+)wSRm?}wOwItx6F`Gq`4=(l9ls!tkst?~^j8T94?zOA7ve3w71^8Z=xI=7t4 ztK4OMrb5fw3CeECIKdz%86U?zsgQAv0x9 z#Rkrqbm?x%%b6Edv>`)#$0hFga4(16;vd#H3;KrmP9{@`)FxLNO~8tK!W`X~sXRs1W-*eDH#|uHAUH;e$U+Vy?Z6E}6&P3|~-} z2b}qM^F&kTRh4;xI}59=MZ&ECxzx5A+yD73Ls<*5SB>tIsf5${y>xtTV1s(mf)~wOH zlCumREq!rNn!)1%U@jQ#tab8-E4p{U!UpKuaLtU0>JO8pFMT-YIn&nca_64!QSKip z$D!hH=sun9M)uy_J5Z(dqO@TtI`g7P$JyvMf5UG{b{t|ymNcixrb^^->ww6nF7i7{ zUZuNs8p(uo?9b<8JF<{n_-&PFFY;AzZ$f91On;F!9l=J z%oyukF>uWIO!e8zj2>y(^QsFBUt9nz;dJe9{2l+zoxo?$>3^rUnseqEoH0-1jC?w0 z&;wbUw8vNe;RfHGtF`~N3L_uJp-n4zypqN_ue&dn4PZb0lb)`YlA~7VC~^0dvAn`Niz@me6;V({u5rew+TX=S!`VO`W6NAv@+6zF$@G zd{xobHgx2M2aP>wXVe;PZ=B%7!8d;3S4R?)(bXBdvd63DY;9ow`Mecq4Aa*%qpRk| zqOUpnCwt10edngF(K;(0SdOe+0q=_!Opaq@a5l7?2JIG$Zoufq)=OWQ%fNXgXvXXf zV2lCAwDf}V|2KT|7WF=tZ~l68zS(Qm9{A>coo5bVIF>uxu&z8 z5V9lWw<;Q-^L%&T*8q*p8Jw5f8u|7x&*U>Se+v2s^3&p(^pE1;)Z1I((TAk#GM3H2 zk z$Ft*BGS0HiqQ_12>|^WUX?`c*hXk<-_7`IlG`39eSq45Yz!T91?U9{($+Lhf{p>w- z4g4P~%zl5Fo40s`Y;?+HH;p@%)!ecC0(UI`GY@&&Umd^j4rJ=f$kcXZBe0D9Mf%NH zWF&b$js3+B&crm@+$7rIpFaaS)P0;RRUOqg^^C8GSE(r?9XcSBk$HxPkwKs zwq((Vg4iVLbM|L^;fziAoh-YYXUwZoY+UFw*on^$*yDK?;Td&X%(Hda7kSpoT|Df` z&aH8{a3$@iY$Na+eV45c__AXU5`@xE;!ut97tp0KbV1yPolB$l^D#VI>z7Pgr|FCze2NO!NK&);FD{C=d8$=cMTz zWvAx1&Qbo#+8M!5<;Z#(XH$vP zeG51quKD1qG4>&sp9hZs?>5lB?z`?_os+$DKhN5rJNr)XcH$7qw?cQ-p7}7jwo|f) zb&hy%CWjxeXK9V>21dVi2RWiM5BX;w>#nJEPtRW_B>f289KRLi0&5B5Z&iaYRvL8C zx)HU~Y}v*|3ynkj5&e=)tIr=RKUT@w-h}VWk@&J_nH6{Uus(icr{Ao;-t`OFPoWKG z4NLK9`zmAH%stRfHx6khaZuou#Dkpk1!M__X`^KCV&mp5VF7tvjsWMIUow?Q0!uBVXI5ADkPGoq109 z$z>;O4MLmcW251f6RN_^nUTc3V>m-6rpG^j;1BORGcEki2&-cv^102G&)b39=E~=K z{dVQEX!?TYY!!1BdF;rT+}OLwe%Y#!%bPXElFPTDpLHQyD1X3|M-F@C?*yNACmmo_n_j#;F-Pbs|4C_PsD)`%jpu@S1@q7#f3@u-71u%lg&lOy)?O zQtRJFeNPtch7Tme+rWXjxw99C&YaJLaUC!kevf_Ac60#6bo!R|HQ=H--V0|^=riG5 z3Y^gYM>(#1_MRNqK3Df@_Mt1hL;E$z@l}o--#i805m}K_g1BCu>{J`rLQ2iJ|2Tc& zJZPY{)J7(_Y{Q2_be5bjbK|yiY-~I^9-nNd{2pY1SLaiBx0rc;pv=e@@y*Vz9nyIm z8?naa*YrW{HnZ1}UVpdjE5sXg;5fGF1HjSVyETaJXy6ybZl&BdV1vtM>EOaE`cuCx zyfjxuXHSNu&W#^yEx}hrd7t2A*`E65Lv0_fq?pDyP0d zd%bdg_9%M=*J=$)k8=y~i?-S?^NnZAGRUo*mLO za|t*&aZu#jV#U_OtD6>KK=u{qfa;BY&GCG!z_Mt`_e%ZNrW1RthS+22wshS@sk4_qbh(pLz}d_DjeiOIF6@)O*tQ(bQ`wsw zq7T~F>6}KtQ+;#gGxwi&XYyhh=!UF6Wu4mFa5gEsknWGz^rM})t07{(3g&K}>-^mK z0&yR$gy(a3-UM9y!*;^I-0S2%55Gs{q}wY^4DN>B7~Ha%joKNo7XnvxLw63Vl`mAl zS2T1V=ayq92Wmr?=1!=&<;2?Xg@bFc&6nz&XFKz<5txlvk1#%7UnQ=$=i}9$ZXF2k zF1N1$rfHYhK40RuDL?rbU|94L@cg##X_2+U|JEiXK$@WR9|LZ5&#r!vT zz{|Q9tKX&_;*b=&Wy8BC8oz@+9444tpMC#J?c=<%^%HH);l6j{&G}8=|1xt%sQ=;m zayxWkXr=5Hk{g_7tP%eqFD6Pp$`>{IQ~7~8Yx-}Q-)~{_D~8X-n~G;EzSMeZ&XM2F zG_vJI$pK=B%O2D(R;9mh@0%FYKd$ZN?C-+Nzc~9}=|@_~l^5i_A;y%Y&no!_<2B5PQ!Aawl|uq^Fa;-$Zo8 zXQF;XCr97Pi){ht5Hj>=bwcb3RBk)CeV4ga_i3i`4Ipdq4QIb2S*N&|l6N~Oqy2L? zwkp}JmI8MlGOmfW(C6;CQv0EGG{D_Lt(R)!8{oc}zDVCOz6PxM>~Chxe_>ihH~WF* zw3`P0ip3fI(@;Bmii3yjWWr$|?FyfH*jpUm!KTUe;2^qsc8XC(PJO|ZQx_no&PP5~ zwJY{6_6Z}Sc22-nv7;}xXlg8X+3!SOGd{Z4Gf2KY;0PbcCK>+T2wOHi#V1~Y%ov*z zkGJW(%0yQId#pV*71aZ+i2-74(*G?%cu;wooOL4y|4}E0o64J*u|aqZ-vICZwT#0| z_`DUmc9AbhH1*zjJc93bOEYIVSxru!9@(_QCle1E+9+0Mn0-f>c8jdw{^ET6TcGU| z&{gr+R&ifvA2i+Xj^p*veib^$3hey%9>tGz;Be<0V@IJiYkieP46>Zq#(yN&M)It( zXYrF19?FZvm~#FS+`l`QSkmC%ya)Q>qawXdn$62SuExnQd*3Rns5rzQf}O3)d&%SWCm^s=+mCNyn8CupuA z_9L`g%UC>1tl7hyWxOuGe8J}au^-r@n3JRVXgq7pTFX1`Y<&!WEV-zXb2Z}sn)%Li z{N)bu+_4p!wco^}|1~^)3pg3L>A-U13UhbRcX z^uZcveUc0QLHaTupL^xj4*9r4N!@$tlLz~C;H>4GMslhWzf{pizO@TzUpdwTF6?4p z8$H#9EgCfdSGi`TuQmerR?&)a)0l-hM^$`6?H>Y@jXuA*ow15OnQO-wFO8GNOZGTF zR@O-G0W=bHa)96Gb0e?E%J2WA#PaLtow8%LAcN_IRGD4;s^bF8)t2 zRvO=F(zC(;C17b?HRH^>8!YyRy}o48mj(1?DsV#dLAL4b*lB5}kJsLwa7dUOsZ_18wXyyxfyz;HUDiSLYncYuyt}@xOt2 z$C-9Uz>#Z$DcIvuXn6H8XqX2L#Vg{G5IifIHNOz72(GeB9P2>3#kmu{q0mF}%aeyb zBM&cd<)M>L!o)4!;WM)E-tqnIwntmLG(RL`B@?Zabce%{NnS1$PbSqN>#*CKc>^s? zEOxD-0b=(m7Q1wD#bNie$80;r_$stSpFFjf#=2`O-lDF#U)$~SnC4GE8INz=k#W>h z<-3_L{NG?_^(@<#*<8 zCw7qn#`iYH_h+oRMH;shADa)*ITRmTF@7~JZH$-JD2-WlSARJyTe9NjMqf>{bspvM zYbp<~gg&0!*-BfQr(xu<`Vc5|WU=Wx^wB&m(R_s--rNj=>wIt(9v(05h8Gk&+let= z)&9X4*5qXlAMQV^KOY`>e()vwr7;Y_+aBK;emp{V6936=`dR$9kvXBWAIXVmSLx^S zU$sXI_~sU9A)e8gieHYF7d#(6F=toMMto!V<6eJH;Qlo7(SsXwngeeX6tj-OGx7V< zdx}D=7vrE8PCK`uxKaB@`S82@~4uIc?~-fJFt<`8pl^zk zv{3mZ(t;P>ZaoyaU2BrYY6ELWblrGc=K<1%jI7`sqE}XoVLc+Y_?wK+zmU0g17>aV zS>%D|^Ubs@6IW`~wlX`~RmON1#crwbCFUM?=_Z}`H|(`4_T2B=^lj?a0n^xq&=D42 z;Y%dwr*aufPtcf7Gcv?ETRg}+&5J$aquGTfZ-ICsK#tHnbT8=&zXRqY(EPSc7cTn6 zNH+&!fM=T1>!ANzz^ccVrurXK$KZg@@rG&N$+x521(H>p8OKSzc@!O7LcsF!D85P^ z@wVEJuA6A^67D|)?ybmI!B)=NW_Uolkf*CC_u$V=dwu;Kai zIrq|V<`a4+{tR0TJn4{)R{H{A)}u#?_V;-7LWW$+bIA|M5l?<-o`|mA+M{*H2VQen zdqT7?JpS*#v>wS8qYLq0awV_Wks%@09m$X&GDJ9N?Wv(1>6|)C6g=S}{H?!D{p3;J zOYf`$Z|p}~{&TP5oQZpT6_xY$Doc>#jvhQLRsn54gw~Q<-0^nuEH_5lf6Cg`#&eBJ zo4a<2&+9I$WL^}-?jHw_-xJxi=l;q~b@+15J>IuTa>A2Al}2xw?&>Yaj&*-Ea4d_s z^Vpsk*N!kB`K5K?bFXL0hj`?@C(&9mNb95Y1Fa{9Ck8qD?^fhZ?|v(VS5(ieiTD+~ zN4xOvPTfO@w)qYJiYNa7%}p72;K8Ub(M`D}QD-kP03K-O_pQhSQwF{cj&kqivX9S) zmyG_O0gv%p`u`i$cWCYGIb=WB%zCue-DfE0Wixb^zi|$AZl;cWkiEQpN6qzto^@od zkK_)?@*p|RbVi+pZ7-X>^FVAIgE*r;uDx2ae4}N@v3WlW{z2lsC`bB8c(WZHqkD|c zK9}G5(DkRu$?eZ?Jg@zuWO{q@2lxOa)7q1N^tbOzizF80SzEmIJBz-D_-q|*+2=&q z1B|iShakI)e0lqu7=O{ip#yp$yb*#f@iDA-^ik{9A!KzCxxS_Q90qorPa9{#Cf^IV zYM+{#e`LiKmGIZqS- zs}4SVv$`iZIL7%-trMSMCCGuA_#<_cAG(NoP2>q|a{2$gUB32zA-^Kn!NoVq1&dyg zBN=uT<11cs%I3x1rku(Y)3?qn)=G5ia57oC99}YfgbXk6IesV=yqf{fXs)9-n00Fr z{&`=3FJ;4ThX>c0dc-6-lk*t(G-7y+{6y5b+VHRPVim?VP*!Kww|ta*Mt0l3(3d|z zw>2}Jb~*ny^~ag|IYx)R(A3Y3{R*5_S3Yh-Y4U*vM;` zkJHHA=j7)Y2MsMyyV(yYVpLNCJutSi6ac{jGtX4Vz) zi^fxYvJ)QlGW%e@#tR+S0rJbxR(nC`apZ(!=0~nu7646tU*X5U-o*cP&Y zSI%c2^6W@`Hq7{dnVfS9P?eMW>$Fi<{zH2`A}GYD?u+&u`iq7W)o5a-9B2j+_Di zY26h4rn~QVyYEhQ--$1$^6mj64~E6waNifX?=|NqnYzxLFZAX-a`6WG)o#d9YIPZieva_4`>w~Qd zwJ%$X>U^8>t;iSk{ZOWr_!s}R)@u%D(+92f{7(EIIzl0~o;m)){rFgz{fy@6em>%- z@SD+uc%X52G*QgHL40rv-ySc>-@zNFzoCy;lZRP3f9sKZVeZOL;kWJ>2CZP$ONuL} zGcfj1_1Fk^kKr7VK5l>ys*qPF@rgF|@tzG`4qq8*hqq)eHM--??wI_9Z;hwM z`P_f<&GXy22Vv|~z(kfPrx>=lJ;}9oA7+-TPvU`SOUT&ht^to5iv4-$y)(W!@Pl-;rjld7 z^I-bmgH)Kafa$&S`j-#B-vA%c_*U>aT8`&q+mn!ouKh1iM@*oTm;?9<$v43YL_RFW z9w)jkM=t5?rU_Ye4TRC3=z{-?iY%!UiqLqbUB&#&CsTq@iH>&7bn_^ZK1JT!Z_|{oVICSgCBA5EGJfw zV&luVqD?+gb1Ti6l**>j7tu$4E%eLy`^Fikfbx$skF?(jkbhjir6+>p=ID$t{cvm% z+h|L4O|^Axr;co0vbCn#xz2(&lU04X_TgIe*vqq7g9f(ioKSR(Lu=_8-GME9ot&gUO|Hu`kb-_0a8)?_v^9XWLex$au;`PL@*yW~OST-QCmO=ZxqGsU;FGsU+PUDWvA zi~pF5jxS2DZ)aZYcIYDC&fR*49w^^VpL9L&eL-_~2XnXAw=*v`0A6VIU)6)WD_KhW z@~_y09@%t`l~}?WsCfs!B}T0)wl}bEn+q+sq1$TAbv`K{%zx5mD?SqqFGoAXXZ3R{ zd;KAXYMhAasCUcHLB7iGg5Py>Ig^y{#mi|OI`0-g>6}BkE!OX_e)rfe$4}=z>7wMd zY1?tt)*!h9n&F*x#^o_&j^R7nzmPU8)?LNHtA@vq7T-Dx-zvqo-T~c~fQM{L>Z|lZbr?EP4mwdT{FvAN_gbsteSc=j-yR5rwg1CD+^+j&(s>i` z=ZD}dJ-Qk_sEajAJQ!vU2iZqok!gJ~%zwUzyo5d$;J0~ie1rb{Y`w3r||uCzTxAxM!xfT_XX)G zBWvUMLbsu}$H~7Kf~N6Pt&R-n_Q8lqqE|<}K|agZ^eDIVZq}l?lhk5SN#Q3r?k4=o(*3(Rk*@g5wwSFh_ z8UEhs)rnqPWH(SoFyr8$du;2FA=n4xzj>gy+>8qQ8p_F!R%M%w|0a7{mHjBQyv;wm zCvP`)Jb0{=yb%5B9theOQ&%)>R=l)RBOTyj;>jf8oxp{)yL2{^3+#9m;|(u|($%aI{bM^(+wO(95KHi={dwMSzDe>C-`aPI470NjH z4lbkq=HB{u4Y0@X4nK+t#UyBAJYE7$n0P2*?#y?)^0l`-cjxm{$|GN9IdI3B*y+9H zxK}^OZL=-y#%Dz{(P=$A{TMu{dz?{nVE8%DoQ_^z#~8?W5PM3;V(#%G*LBX{*UuaC z?YDW?gRF7dYksa9`YmT&mu#5$;=*0xDYc_|{n{Z1hQBhBIE!{P)@tW%?jGQ$*oe&6 z8r(;#brtqov@sFd%f^8%1-S%X*E#fUCO^f~N9zkYDdt^(uMKUeJaJiW3JiJliugRM zqk;JvBF4;M7hX4Q6W6$-^OHxP3*z_KO&Q*oX@K)i*|^BkiBK{ca#8k$5YF zpRLNTa?3NOeSKIp-u|ImUh(;xbgwq!8wXn%TaB~kwC5|Q-(l7#bLM?MIwd}BVdC!x z+*qAy#NS`W7z4i#AL8$yLA#nC8&cc7@m#xwcH_vQVaV+U&5zfUTiOPs)%Ki;?7iIT zkk8cuzhtX5G+19)TYXFZ&=CG)hX=4``mK(yQ%Cgze<1HAGS$c|BTG-*8m~omAxovF z1k$Z?=@+*kyISv=wCTUSH)8PJ;mTF?3;Ai!17}ya*eSh6y2U=N?+)*`w0h;yFI4{D zl%I=^F4?N{G|AQ+_7Tz#jeQ(CN>(b)tMM7s`8Cf*@r?D%#18|H7R3*9U@#YmBUTCA z?sMro{wmHK(LQLT_9-PFoYMBN+Bv+Ke0%= zG-K0!Isfrj7Ow^`_H9*}?(0}5=S4c&NBhH?kIm%!dY}1tGc;@Fe{}}>quZDGDS?Mg z-67}z#OakEgXSr^(Pl>{l0FFy(2@M7M-s9xM&ySIpX?(y(thCR+^l`a?5+4{-xSXz zz8?3Qv!GKBF*I6fuc+Anhka*cJv@sx?qTej$z!GUT{z9cN87y7r4#pBo5Wia_Jgs zL$(0LLY4lh{X2X267RqE2Z5CLnMb_Wf9cH?$RM@Xkg>JQm7guW^!ft&9JwO>^~8Fn zJoenOTe;tGDW5jz)O`czpXi0i?^#PVcg3r!^IDPpgR#gc$^?Ud93EbuKZ1Q`=^pq| ze$2h)o;=#SMiZ&?d&xA3VR&{8hg&1pdc zBM^LPc;L<;xaVdIzit<=7bK57ytYlSuLrNgi=A=n^xgJc2lVM(cLTRQ+l)L63}K&k zGC2z52X#W^0nY6Xgx@W)LyH==o;A`@U3{E%_P8^G)+r}K zlZCs7qc1_nFnh~zuyeTdsZ<*L(&!7ELrsyd)yUY9Wkst~!EX)ty$^oz+G%0o7V-zO zv?o=39gjX*GwS#+8fm?#XZ=v#0Ie6EPUx){HST&5WxW_fIh9|Jyz|PZt}oJImXp&< z^Jp3TN&Gq!e|H|gO%4O1ABtQmnGfF5OO{&)%3reLW%A?G`W)n3Q?jXn z_m5^dxz{{=wQoLJ`_glEbABRzEy}p;AiBq_z$f*)=F=uTRU7o>Pf&Z|MY%&&M(+Z? zyrG)Yi{Qn5$dqbyjv&v4XP7!6>IjEvJP&Vb+?7sQ(+6ZhU{T)C@TGaR0pNLk5!|fr zUAHUbw`RV~eWrJS*~a$@>eujGebci!*hR9eB{OS=JUTqQC}${l=?yJjrhd)(hF#NH zI~%=v{CCPPb;}RyU;gp=yW}(7K>23c$>P7tE1n&?3h;*x^=P>~)A4iPub88ZrD*vM zW50^AU&(s5m}eUMM(l%&p=Uj@C0+ri>ArE#?YCw>w;^>N-Z9BuQG&mS=sP)WXg+a z%@`zrt$7xnz@0Vjr7izyvJ_kCP~BT|*3-h+zW0)A&3LC5)`rnR-XexIGVnm3>^RlF z8u$l^RTR%euCWFoCpp)EAK0^cF+D5c9qw`9!+jZh-Amc?&SLLd%Q?+V_Q_x5oF>EA z9Df;-9q}{rl2;A<-R^QLq5HcH>>*{l(Vk3u;s7=qFE@FO?&|&nTl)@jli$!Zc^~Vo zWU>D+vi&Y%b?+E}{c>3B3~(nuOCp#3xN-wOPhQ|T%x83(S#8U{csB8mduq~Vmn&!R zis~QTG?X#%p2q^?%CnePje8UurS+z^Wkb#`A#dQB!s`#bWoo!^g8SMOE+ zk^7JDYm4$HQa&4d?E>hL?b2f`aVO^B&;11b?Cjxw&af{&H7CPbNV$XRKjjXpjNV7^ znO4~)hm*7Rji`Mpi!#vepz;i;KeT;7ZI|-f^!1}NO#Au1xd(&R=9yVm+f44d9Uxc2 za0_~l+B)7oM+ak!_TE$3;pHX_A~%84;{OqK z*jJf4ey5JkU$zah%JwQZwVP+KoAMgxYTs?oGQV2Xaz6YKXC>ft|9=9F8f zatHiRQ;t2ADYw^+2`u>J=Tte_CX=`NI@mia=HzDo!<0vVH05_W<)5K^B!m0t-J2Ika+wV#-=Ym=(;Cs(~I2gmc7u& z|2NQe&_x`-S#%Ee9wy(p*7W2UEAb(Gyn+5H-(ZwHlAf#>10P7{^vbkvN~RUXl2rpg zGfweb=9+;;&O+rF*vA~ms&;t$Q{?8Hd~Dq8Jr9A)oMFT}M8B%1j_@6I_SyC(@NLD0 z8kibMOaeFIxRYtZ=Fuf zQE037A?=a=(S?u7rM+yKfA|1ZjA)@EfC{ukv=1YX*)%N0V0!ejLD1m2OSRCk1R z$NY89;^ni`#X1;=)?MUxe4h_G;z}Q9O680_xkS!d|DK7@xYOfX&ADpEQgQ0Lsxn!d zg0a)Y59tlVZN0CcXO0H z2_Ee}WNwUrzg0Gf{F=htjWc)K=|_87b$JjtQ-Gm;`Eq|SYdJPFty59r7ycW1Yp&P3 z?R8)2w#OZiu+N$)`%^PIv1yZ7e|ssf`5D1SDvmsFo8ZabbR&C}qv5)LCfBCX=7x#* zuNb*h2(5<2R=?S22hvy+osWzuXAgBe<5I?5Rq&O32u%!?FQ<32_*zaHgnr9j5L=v`5`1i>a-g$15nm(k&YVuG!Brmh4{> z%jZ}f4}HNh{&`d2p?dT;*%D3cU|-?>)*NIHbD<4c;N+8#VjS-!e%rv@ z0kuULBX5d-opH%X8~OyX+ydmB7-(%>{SG<9ulEgH(MUYsX5zXnCNEtz_*OEHMc3@^ z+SSd_t>olj?P=kx+6C*gVq;IwuB~}|VC=NB2G-UP8$3L5P;Jeofw5^nR-V!u$x~Xl zOLSZg9hc;z2ciFjEc71YyRBzW8cOFk@!cx*JHT(^yY(O=G_M1!@6xFxuTpabjzJ!F zWu|W$zdyP5Pub9s+G%yAwF|ff?R*#qj^{3%NwtAyI_H@ zBG7Ct%8FPWL$R0RXPK`ULuwmeYID|nJ-QcrGU*QomVv(~?-YyhXUsXt3*{bP_66oI zW2rf}2l~H_t@mAGtB6;Eu6=oT7dZw7!4qA{iOtNnR=d8JDv)4#dYSg65Kg z&A4aW5^3r`Wdx?+x16gRbPyNukr=G4|Ja_j~Qrq3eG1q_+0t#3}yl{dMi+ z^+L`C;Q63?$N2+%quV$aZEj0$*+Ls@qE0+x$;b7adDmfsZ{HAU7o1Rrm1z5Zq#ZgX zp8wQp@1))boVm1pKe?rSc%&l_m{U&R{vd;j1|3(h zE`~p-TV3PJE@3}M&VssKl7ZpG9jmigGoDC8f91RJ&H=TJ$ba(bn7EzGvAcPCh+;6f z@jT1T9&3l2^Njc$%1K+-om?xMm8V1e1^YHRt~#obu}=9kcV4P|#-MG0scEFHF|+(dpL3-K_Zy z^u1<@WiLD7g~{TJn)S?~4C~zp`>kx`t7L0E{4gE48bGdIJ1G64Mr7w*Q(M1w*T~Tq z-Thec4R<|OeCFd*cYp1!se5_$_(gX|()E4ZD(fr%v+~E;u?7=+^Tu5Rp=mX8c{*}- z26Faq@Q~(<58jysKQyub;d~>e`A0uXCCmK0lMM6tWCi0J$EUBGdEof_7RF4z3dVFS z@=5v8r@8r3tKpkC{(~=~V^;g&UBUcfo%L>06tJ+=A)VzY$d zY35UWHNW|8Tb+F7A>K<~Y0vlozop;pL-*0%)$IR1?%TUot1ag9HI&;v=Cf^r4V)() z@++@ST8ZwLU=P41=*O=*P$Iojb4ve}9}NB5oH5EK`{)4ctUBhO(LMQY7-+_2BIB}I z_P6LsPL80H!R2&#Cp6jdQ|p9x0?6TJ&PcGW$tNfFFtU6kdxJrg3-}6GdVXJu1xu{B zk~H>@#GYTPdidwq6&o#kjz6$}F6{=uOSt6EU(_=S8K`m3fnUtoIPV@D_V94UwNaT? z$&0MlhX;O_H=-Ij!dhd_VxyBBTNU|nO4MG@Ns<{wCDN6O!A*W~hc2Ir-L(q4YZSX{ zC3e?ewmJ88eva>v6FWxnU#*CI;eD|>*4q`(esPpDRQAg^UtsmFq5bu&oc&GE`2C9o z(}{7ulz4NJSz6-~;8F(+?j^D3O5#`8G&I0Ex19ev+o+qO*o!zmq?x;+o~eK0vqN^vJ}wnU5YJept^K{{kEoABQ*#CZC}X+Ov;{WwUNb z7r6G$^brHmDITSK9sIO66P~dA=G<)#&vsKjwZ3>Ri}7F%?2KM}Cha?MQ0|33U*tLV z^A6d$_QJQOO=9140b@=jdM&!&K5$!MT~c=Ps2S)08I60$Z&s2yyX@q%oc}wp8|@M7 z0|hoQJ#$XJ^9!b&-+Ml5xLwNgv9v+_;F49GAqaQPk5}EkuDmmQ#H+;gNr>O@M_Nz& zt0=GMPrz>{y?c@I2bl+bpeyqvCl(DkvHGv1AMk9>JMf(;PwXb;Si6rH7haCFS57%f zjy2kEBtFJ;=F=R`NPNIPDR?osr#GhYyY0BCTQ?3@o|}Q=+tQqKRcP1}EgsTK!%4I) z9_Y@Lei7U+d)50FPlZpa;Q1(gS=kN`nKK6JZjN@5rzgBhJ#hS1e`S7UaZ(Prqg`j)GA%8_P;~sSNvcu?Q zin-Z&U!*65O>hnPuNi-W$u*%kB)f@6uN(yf=>u_05}n7WTdh4ix>*r=nRKx@>&-s& zu5NU)emSwp&9j@hT5;w<7Q8OLuIGOibD-ptb8A#+Ky8keQ*M)cWPe%haF<}_p2Ew8`6UC) zIENg1okp34(Ninh;Dv_cDm&VNt2?dRf!Q#W|Nc4Vf2IEC@xRLXFWK2JcWOl^z8lDr zmgpr;JggTahp#U|J~{AnfG>J^W3XhXsMlvSwukstVL~r)7ACiBLa+~+vtN(~H@||i!R;-MwO>*cRPoA{w z$Rf#%5a;jH&`*`iER2pSd*O7&sPJPicJFFr(bfv?Y6y@0z_Z@AZU}*k=qa7a$9=@) z4=i)vsd&e?Cl&9w8$0Pee7?;`zwhF+Y*P0GtK;9$V-Nk)U0tpH{{Wr`<7xcY|8d0o zw|F1$M>?K9&q@S*S>uJ*!^{oQhx22@R~J!7IskVVx1JPs)}Z-}@fhf@+yZ0Zp@PMM zhvB3B@qZ>~rH)aQGM8zLPI1Pl8s6?5qf!0G=uhaB#od`@evhxKoc7P~+J_z|o!-}e z6|lA657T~t_V?m%pmnaZJ2`76&wGmLTUVq){8C+)UE%3s(VdiwCNL^u?!avO6uliAPPTQ|?}ONIvaIjU%#Lh37@S;3-khu$W4l88 z_$A1qYUo#YB5Rsx8A66F_bv49f;;zH9K9`p{Og(HM~5(KUqm`t2)QM_4Lu&4 zIb*{*qZss&!RW?a5zhD0vFR!|fpb4Y`^!q^u+}86taQCN<0jqN>q9Z}H~{WJ-~Y(> zWknHd*%I^#ohvD(yl5ZBM*+F9r34$~oLp<+)WXW!rOPeAmzn%)u^#%=%zLX4J2&3} zXyw62K5gN=d9#I`Wz;1D>e{H`132k?&{ld7il8k~#AGn9lpfyx)&qZi#GxJd=(ryNP^epT|e# z9o{wi24*dWM(ZhaWWC++vg#>Mn(E57qCLV4{C)91!?!jN`x5d)J{7|IGJca+V?T0i zmj3TXo@q^QdM&y35PQyUo~e&@?AyhU@||5k{~M9PHD3zYjbEN@KTi%zbj23MkDE7S z#dlBUJ9;35Y;^SRUqd(7SFR;GweR__c&>9h@kg&-2Q4K36Rd}+dm5wPEpzm{iOhv# z-SvH+eZYJ0ocae(m1sP5FRj_SvAoT?tvr{#zw88;LLbrP7QSV(`MkW78=&i@tN{(= z+iQS#qzC^2eHM9Caz474&XeM|6OW15Y+aOvM-CXhbF-5pP3K1|>94W1xMe!ApCpGm zxu^F?XZ_O{TX!mwdGH7@cy=JVM(6I%K0+{V2gYaJgW2cagW1S9eFwXY@U7+gE^)%t`2Iy5vqB|J7fud$J{HO$u5**292# z=G^}apwFh+iRoI0vRH?lJAh997<3)!&&w>%o1GY5_k+(v=@#Q&6sy=9u#@=av;U~j zI(Bvu^u-TN?@rh63H+w6>MPisqjN2Tu1l)gWKJq-1nxl$Cn5I&S{WhIkaTE87> z-$T9gu*W&?b7PVhT6a{>s}phS6thn_#C&-DYa!d*g_6x)vF@;IYX3Ki&x^=x=~c2d zBDXhrI;di@$sR=jP}<6m4HMpG{&Jtzg-=}NXS!%teN@btG}BLH1K*;Lr@#7`Q@ZPR z=<@04u8Or#-A;nN-n(wEoyfV!gP*Py9VAD6e8fYd(WR!Z!(z`IFFF15c27qsVVt#> zh*K`yg?)^1WeuM-mVMl5b(T#&&;9k>dzE}vS@WKC>1Ed88K+0uS8@(9{VcxGG3O97 zqK0**2HPXH-NY04y1WNXSMqzGe_$*d{f6_n#5&E@^+Uh^t9H>V{{OaHhpw-DfOUiW`6kl=Etw# ziGK5=i1|^){6L4hkv6(cb>_#H^?QtdJM-gb)HCy=%AFr$#5aBO<8Jm!{pJVt$VX+ukWYf1uqKfbToD((BZ5nf;nmKVnd*WQp{WM#0>3GWj`8!9M6ZEge^lw<~ zz;T)r{nrj}EG3uD0S2;eOD=bEbq_$}=?mi9&2!D0Za$)2j%Ascr;u0ri`kRGUuOX47Ib;ZU&&#~)KA>}TdJ@B*o+d+{-Qsg0c3F} zHmQkb9y|P}J>no2=bR&O{__caIAe#2;g{j!EWD0|v-;B?XP@AU4)`oC;CIm-R=a-Z z1lUtxX9(6iF+8!KB!cM{@g6K<_R?SKT;rB+-ecMGDH{L>#e!{y76Hm)6G}9Vwt8ui zx-L0$##vLmx#GlvbnfoM^W+usl^o(*Hj$5LOLOz3sLu}U9%Spi#z%LN-_sof_CTFW zeRk6Ct4RJ}Kzlry(cYa*Z?9y&#Ql{O?br`u%ak(_9g?#+>F?WF_ujwQ;W^1*kJoO7 zwrWf5s81R%$CjDK9Jjc8?B^Vyf4-;?x^Uda|Bt=U6m-yB-=p8Hx3RyLV2e7zXYPK) zTga!3E-#)8+oSE!8x327tj*=VzygbR+JB2rx6yvxDa5T}pRYOg2y-dyJPY5@wDg6om+L#QaQEHnt0Oe&V8lun(053tt!_J}(FOC2BgHN+39JA(J3r|_C|MA^+plpUN>HUYl~mqNep zR^`RMgltR2ZN2Ew<BCQsz-xsI z+w>jSqOa(ERSN7Ef%{kBbP|i@wltr;0eP)E#?fu$qXZB&*@K#>CazuemFeV!87fD zMU&{(;RY`~f12ll`@u-3kLQ}U3S%GfY_`ECH})_0U8#$!{K>w^JCDx{eGdG{@Qi44 zA21!?viw+4FJ2>JqNhivX%0S{4UPx0430g>p8I(&--h40ZRVRchZ~xgy7)YU9DB)q zf4qy6@I5UBry$RL2c91)J{G?74NfEA_Lbf55yiFt}-b5kKSuLp0DG$q)EE>X!YRDO+gryQP`3BVz+8E8KKu{vEg6 zpG~>pW~_VYgWyR2)qdBRw~A#sGPaF*;NU&N$Znrtaqi?i8yS1ow2>EE?81G~z;*hv z$G|O!-R8dgxq0XGL+hdX@d5Rne&oi!=9b%H%IWSZP9Ec7B`vw+mDB(O9Uhrwq)zShf4^KKGs4dxCdAVSN%! zBkuceoA(Y6ZREYjw@rG_oelAbc&^K|sTg>}V+-AJ^vd3%vaVcI**~O|{dq6mg|X** ze;35Y0mJLhy{3F#Y=nzby}`+ePyH>^pWN6w%B0H3*(q&mEVddLPX3oS+_Iw402k&A z7pBV2H!$;!yl`-E;A4-I%-eYjG7lNW{KLoKwb8a@RH2bkg|Qz3TQClcaAZQ6ftzn= zUu)nxvUg5~$AbliU%Yl^Qh%)!ddeu#tu+!k140|8xfn$+Ue0ob3pICG2G2>@zxD4yk`tN2dCe=I5oKMerVn~IKATH z^f&4|a-lGGja%+9Q_fjiw!7sdZ~Aa5h)qbrNiyM;6r6tQ;#A|pYccQ~nXt*g%ZpXH z@0PpoG@jo#@A6}l+;>aOyL>}m$!Cv`?$CRyrFR|si)l}JpYmg0WsEc@ys`^bHbovd z^3ahT2YYcYj7gtzXj)*_Cy&0%-M-|zI9+XUa^%7724Ai5xv{4yw*|j)uiaY8rRt)m zf|vJhhI!Ygix#_l<>{hpuotGvmk8xM=d>AJRCA!ff6M33icQAFO z+m3SE5&qJzy|yC!t_Am{d>pzDi+zG0ZXNJaWFUGUGGHKj-4#$c z@hu(@KM!;HO#3}=T%V=9H?G6@E!gN^JEL{-H6#~Ry`xXg=AG#AT^DYbf$Q+^C-g<@ z?gQ?-H{3SGzlV6|jqxt?+=*u>x%AtVcdx3h%af7^odzaxj#$t3FyF83r9*+y8Q!Na z9^TSVMB}f!?RS`V9Nb=aal77q_mp|(=%cCaKdJX_`=Vc43T}_5yc6E*dvTLKGdwmq z1vkz6U#H+E{Y1FUaNA#P+IQy4j|?2nY^k5h8_Ox9eU|90eHQk)-Z77QYt!Zty<`3^ zZ3yQHZX1hC8_t+NXxhk&-PJqJ1+j|W-?^~|sjD$xs%w|D#v`cE27?}Xb)N8q+C1vicP zB`LU7y14z;Z9g{!xA87+o$kBiQgBOcKcMzgWORB8ZoVUM`-J~mKfSr~Pzr8K!7ZGE z+i(}RHn;tM@$KoR*)DGD-FN>m@0_`k+Wv06cV(pb?oHbF#{2*D&K*Uzzrux$?GwlWX>?sdMG$lo5|=E%5frw&|m@4rsrWTK*}@ zdux#DNx$}Rf5N=$TZ6R!@Z_=VA@2dJ30rUjwk@4Gmt<7-$d=uOEq}oP^0jftX$F1@ z?NX-wU+!Y_+pqS{< zcF%w7e+$xbjus8JgzFV>_MXwre^kU5sAMMAXt!#uP^ik`=jeN^?rt!Pi z&{pezZftz-c;v-a(Rr(Z<&4Q2 zZduuh2e@!&xNuc=zJZH8r<`#1#-~bUl8+jBp+0UjFrD+$(q6o=pAk!5G3FI7R59hz zr*i7tHa%G5Qede~>0{nlj{=tZBK-bZ;Lz)&6#Ob({H{C#zY&y4?ejNz@3ohc@=mzl z+}oaFG3#83n6*dXef&sgykRoV-7Ndi;ZK4ZpQmHY@%PT!k*81 z!gyZ~{M#5e(QlL6hxhpQ#(ePq!`_?6M^&DE+-EWbW)k+SBuF;Y$>0XErBxY%OTYzD zT5Yu@f%ann`>3_8dkNB~4QSPIL(!H1T{6d|w1vu4TY_{6cGLE0YoGRM6R>td)Iw#+ zAUN;$cb{{TlMvLt?;r2>{4t-IIphQ~Fc;kCR@3=QrvRJl)>@m@f z)-(UZZ%6JH*>>-5?lU%J^6f|5_W$g*FWB`kUyViUFF#%UR%Lzml_L)wx{!V7!M(|C z^Ji|G!qFbnW}*GKYm0be|B=f2boWVSTuyG^^9GF9YroNL|5;!Azi`|CJFroIUi;rv zSy!eB*4e%7=h>(5ThBx*SGsLJ?rZZ0Zkuhi>A*10R{PHHK3eTrq}cDDwEnduE8p|Y z&G(I6_KEuVklTmgBV1}eUvpvoZOZszeT&MtIMsaqXxeaKt@V!wi<8|pm%DAMY_mJ= zjnwhOVzJ7)u#oI{k@p^)uJOGS4L$GcPx5mQwDfUbzr);qFZK1i%)0FKXBSs#wS z;p_L@0sVe$kbbp(^5)xBL|e$fGkyI^{)pb!P|h!NPEp%Fdi}Dm-!fmnq5)4H3NHhB z+QV-NvdD?Sbz-`X-jKyULXiEgA;_$3_CwJC1*Ildqj7y&wH;Bd>+W zj^1`k?1TI^<}cZabed?KtC!(~f*Er@HSxW8Re-|Lz*z)uRLCYu-saq8kskODGq* zF=5uM@(;=0nr_DI_^TeG{I}rS-}kOBitGuzR~wpBuG`-N)1Nb^|M1P}V!hwjYUZT& zWsft35C=`u8P%t3AQtIk(?qd@E*Mv{vGq>tVfjeT$NPSDAhs zJ8v7m9p9C52Nv27(5LfXJX~tu>;CTy#uD=Pcyb}fw2@~&=Jx$pw{OYJcbJ>x#ew-3 zBFmh68;@K!2Rqh1KeE$_FFa9fp=4N|Yu9+W#A`1(iM`%h!&?F5-E?>Ux4QlR*z{j$ z=Kg2Xzcark$~j}sv;PN}xbksx?X4kXBl!gI8LPcY$_X}~a@(^_dj+PwpPTjy?N7Mx zHo1KX?~*@FuFUzGp1XFbaC*$(-l3EGddE>@{1%Qq)>y>>DR&E=w7&S ze*<;Yw)9bL9sB;mAGWUW_dVVTe+LR2neZWZ9^!?oTo}ITzB}9POZdCo2gB3#+_jU0 zzponDIQW~;I}QhbALX4#R~MOb1@=1Z?EiB6DDm|_!|nf9?z=o+|7ZF7AHj3arc(c! z@5hH-&0e=N2FWjt*`v3>fblk%aX4lF#cw~(qrLz0>{3&%z)ra1`6u66^9feN-LYC?Gxh@eX0?G{NUC3VUVi{q;-l-`ci%JboO%6*cV7Qb>%DJY!|C69 z_f5U?jV*h?*v|EhP5u_go^g2m$L`oJar=MJ^zXp@JMP#naNpfy-Z^7y^^NU6_1?8X z#pBL=9UlL6FC2<&`BNNw#_4;#+xO{i`+|?)B3tzV)3?@~ef)joI;}xG9zSsoLGj`t z*FM$0{9$ZU@u0C!+sOBY>?t<3X|eqhV_1w0t3GQtpJm=j*Zzd(qMxDe*aRPMziO!& zo3nQ@5?DKU&bK8WkOBC-u}OP$e@e0aJ)Vhv59B+z|Bz|N@qJ!p+7X-z?W2_Q+W8p2 zWy}4;tt0rTZ^@;3)M;_$`l;r*V*`q=Wv_~s)NeDtJw5z;x1CZ`KF|2tXPUl?>|eX@ z^4)QXwkNyu`!I9Uf3Lq>%6RsbY$n+Te>HtNI{6~jCYpm{D6ZwXGoNDnr~KCVG^g*m z{q^we!Lz_Or+?|aYZIuCD}3!=$8XPWY;oIp-L#Wu_UwXY-0X+C@BU`qIs0@+8M`-+ zKk0ey*eUWQ2*)+157`;xY}r40CcEw{Zacp+?GzdNb1&^UcJ_E%_LRzc?e3(UXOGDi ztTOG&b{lV>&u<4FrS?i+AOGR@vBm8}bAH7))@RLg2gjnLk)}=AvqknOe(Ra^&9!bj z8%=o!9@~BGJgN8Yx z+o;8ZC9{Mf~!lX(!K)y8Yki_AhzzRReR`Z6`kC zzJc>CoG+NsSR6BVK|~l|sL`q+7kRpl*x(>>k=)0reCuOE5i6;9IlU_j1iNFz*y+Ei zQ*YJiw?E$2@t>60Pvx=p7^?M8nZ23cE3&Mb`W!3mkF_0G&mx{!F{Q1lOP=y)`SzEe zf6u#X2gZXczD|AWUY0;X(-o_!vxBpHf_KIE3)9k%DdeQ?Nzz%oZax~*_AlbI9g#&Y zs{pZ}=+Q#Of)?1@Ight!#E_nx5y74nBZl@&8j;=8ici;+neLV$CUpB5#Al8OQGZy^ z_VcWC;zFKnw36E&%&NJbF>KEYCuFzP<4aa-=@UE?%;ZN?+$3?x_=sgo?{v>dY&U*E z!Qe}j1|#pUhHes3y{}x58r}O9`T(`mkI7V zpIl(y#PjC6l@EZkjrhl#iL-1S%H0$AyB`5YUMy_ixCi!=MeYelhup2ckZ{lmjhMAl3(nLiCr-?(M4Q(hWu@(Q%CXG>eD-qu;T=Au-~Ik zhd=Y}C-^NGtqm&1+NC|{O8nQ(JCBY&yXIYTeo1bYMZ?wLX(e}1214B_&U%M8a0Ue# z5#Hd)h!d>^3nJ8O3UKx<)J<-Qg{@iaVT>?2x5yWuw#CDJ=Pf0tAA6DWo8Ys>;J3)$ z&X_#>e!<`ue&(6*dzOpeBJk^#7k+=t`&RH9CU1{$D;RmW{eg?y)%4ShjnKu}l+~Q~ zpG7?J^}vs~-!x}kx9I%Lu4PuuF3$DMMK-o8kAPx;nRk2C$-kg?f=L7Q#N+MI%vR>8 zdBQteX7X&9_I-Wzdf$_KtdVkN9aI6`aOaxl|M-CUuNY+hwmbiQe2cyZ&i{+<{Hs5} z{C9EQN%MGBb3KwV^ZYN)dw6qOc_g#&Rp#|uoyEb<6g_zPB(%2dvo-tkYawy)9=}RH zw;|Wd8JA?Va4#7hgN9ScO6AGi%cq-eh?Yme2Qc=Wv07jkkRXX zGI~8SdNs0TJu-SdGCIf@)*BgJV7D0=oo`R!neeB%K`%9pBQNL?&o^IYCGy$(`y4dn zm)V)1@&e=#L#{iEb6H0Z$M-t|IWZF7@2G_CpASR#b(|G4c>v&pPR@apvCsH+uzB6@ zps%HsfCBXTiE_kh*a|CZLmb}RA-h0aVi8q34*6p3b-YH{SPu|V$ z;63YR1x9r5<@sEmEmAH{EdZWS)1DTceuiT=LA> zcy!+e5TccdA1x3%Pq5x=GjJuU6iv+Zm_YX*`zM zas>IeYngIEh3uu7%(S{mz=E-IH|;{@%IcUCh~I&1E#Pd{W8nSpoUEEop7l(Uek!ov zxd?elTjT~bGAT8uwkC2cGga+eb)8ky{7z=7+S|a~>z2oA<}Tq*4DK0dKSCMgL6|w` zFy|0+jxy&u=A23ooAD}h{v7jdrtP{>(Er_mco%1-MuG>;@uQ{W|MSf;RYp0@bGmPy z@VKdu4q1&%Jp$h!V4kxWPo3t+c$nw3k1)^Yp~FVy65$NTr*dOQVw?|eWDcRPafXBP z?VQVu)9L{bMw8D z|LUu3L*S++H zg8w9Ap_%FDBM ze`f2W!uN;B6Nrr>oHhO_v!xvx7o984tvWC#z4uhw1t#-$kel`?i`EE13YIAC)AHiPqU#hirl8juSx zxrjVlr*WQV1@M29vqQ*;{cj;7R`5I-7#Ypw-6Gyq^F1p_KC3bJuA4cgc^&82_YWzh zeewkOX+knrYr+EHeF#`7A5mk_+IkdNJbxtP+Nh=Weaxer|2nUB5d7*q&=2@l{VsS$ z^N?;hf^Mh_LLyE{0OEPVb8TpXdEVBO5w*?Ht&o?C_7rEVK^w8)j+f6EGY@1U)*^jprD2DZnU zv4t9+@CoN*Q5J0TmHbO`Lj-Lj?|e}vKp9( z?gYOd^ZRaiHo#rt+Fw>4Xpg3}R#}6cCwfr%?^E^=vSK6sHkk4S_G_iFv{zpC&=)DM zc{_fdQbWTb>^jkJ>`nNIHLcn`nrA6LpSjbRGsWJ-}a%1<6pUgP)5qmOc}K;;CBdFYNuug=8xt+RN7)@Q?gb&3Ym891&{$V}5d zv^kuzFEZZ>k1mnx9$kt?UZriXY=E+&`CdHp+bb&?{*|xnAz=IO;`v9^ABgAIXvdG| z7Rr1OJf9-p7Jj3TlP_@5+1CDs{h5W2kwaJb(tL!k0`L^0{S>q<9Euh~tgXqBb1`>! zO=^ZFhWs|OaOphV%f$Lh_8PgRmc5c$__=x5=(HE2KK`e)Y-h>CCS+4!qU;hUr$IS5 zmftA_eDsWaxXhVOQwQ0$%U!pH<5}1w*l~Pp?tS&@4Qx9^UYwA8T`}cDbNVr~{&()k)cGTuT5kppI`^0EhznbOm;4`*SMN=L`SvD+u|Y2e+7bagZEjxpaA zS%Dgzx!3soKCyxRkx0xrNACH1lrv^pn-!P7l2+*ZhIJ?OQ9AA2`&# z2br(+jr#EWIy6r&C#H0P{5uuoB#j zihFH1^*ujZe}9(B3YGpE)j{SXEj-Tbd z`|l5H^{ufE?6cv;f&KM|1Lvk$o8mW{(-&*Fko9OY_OQ-YNAUfI-8Euwers$3;Z!=K zeW-L}p`BvAvy?e1Z#DL)fh#g79dYNGLf4fA3c8z&jioy-xRZf3Tmri#oQ+?UcCba$ z`XA9Z|06t4fe($P3q2|xmmRB^Nr(2_7=xe_V=%VL^h==x!YthduQAW?&S<_z}AqjMfc*Y zzL31RSPtE`c93nRW1szuS?^zWmVGGaWDPILF$# z@|>(;)-%nl^-k2bY#aGsnrpQmWNlgdXzVt%ulOY5=%b%!jPfg~pHy&dN$aEB14MgK z*2pHmG-FkcN{#iNXk8-f%{zamTsNKg&cDuBn((c$_TD0zS8R;#?a|!i<7gr8Ytwn} z@t!@AX6E0DU;q2GA)DEWcjvxx+SWL|b1YuWyR+Zl->&iYdxbac#|bAFgA=V^Td?t* zHW?RV^u{LN=Ef<4H9iWn#yx(I)h|CSd^PH)Z?4$d?mT6)YHjp3YaQ9(0q#GUME?oS z)}-*;RHrXU=Z)6h&FnVgYDKwplXYT(7b zi{;jjsQ$PM(;B13r*S%C^wuVQ`Qe;>T;NUpec(!SCBIYhCC&FUb4(jrC+3s~tNYq< z?jtzSKCR#@oSAXqyAU4#MBC!4HfVA%JhsyBYWhq=E6Rr)S~@44V2y8LDY*Y;*8Rbr z5c6nZ-?WC@TH8ysuOM0{=AzO{m))P;Q~cE-J=>!^pThnH^x~~cl;1t2^#Xj8Vh!TN zkLx@}AB~5~S#!WYDSW2mw7#fx)*V`Fw9>xnzX9*GpVHUvA==gYM(wtncID$fal6H8 zcZ#oFjni#cJaXdL+7~#t292?9^3HqpgE9BR3dT(?j1M6TBy!obRL-oD+dNkzBm-CbOQzrs%7P&7+pxZ9SHt*yM z)61bd@tk~0;=g%}t?V@R0#D0I%u+lMvSKgqx>>J=i49uxRpNuVQ!R9KNJ9SbHyA^1 zv6E|Y_(b*$fq!TsWx(g!?Cz6^?ciJQB>(&5{ouSQS?AYdkJHY3=`rn*wLsIo^24X&`r`M< z?*t5_>jvYu!Oj7P@FV7+$HHedaqiQJr_#8@Q=X31?=o}$TFw)N*|GG0Fjh03_t3eL zp^A+;6PP&umLl7KzShz2FF=n@%#|m%6vN@y4a8yDSJ2-M?4(!0z2N+1{GP4w)nQ;Q zT6Fde(bLrzrf(%yCUakQ&kE$c^g;dIfoE1AM;p-vl6j3|@!zP|Qu!I!DH0nyAr90@1FgN1KT`0A6#{oy7&N*;@s zjV+2E`diqcoqBLF*gUl7U2o{>_&N5)v2uqewAG3|)3{rEeB9l|x9BW9!a7@Y*0tNJ z@xx&7dH84zc`Y6J9OK);*o-X#?Y37+#$oFr!&@r@HSHhA&i}ZTeDShaa^q#h_&}Sj z{B8k<+UK97Jy3A1{eTd%T<^-*?_CZ~BhYY|`$=Eo{ZlH#olEnUF6~*iw7Ms8S(ElB zx^vl6_S+`X%{|ODbbm~_M7KP*8=DfChJt;%$6u!X1KJt|=U8c@!=YN=+m*n!71)MuD;q1g?)ngW)V0_YtR;4V z|0w#J{fqrZU!!NcnAbMuotg{V%!Asb+75dpl@WThT zi>CWvN(@Om;~&_jXBT-k(Lh>#PkYXV>F@zCJ7&knt-nLWA4z8Y5gVrQqn@1N zUUcrW^y`gg-f3UUS~{agZKr=UuBFMyJv58n!S}e=64Y~<3enp3lhxT z*qF~y*4r2Rt@-V&H9xoF-L=)|9ofUOJCu97axV9NSY^cfJL}h<`N}sAR=%cx`5*eq zUprWNa<}{2f7Vz2^1;e4=wE)Lul)Igm7m?e{G-0|GY2bwLI3h=eC1E0y!NVOFNsDR zyUBq|ldoLmVC|mNzunLI$`=k+o)|noTpE4la|SD4;g#?2FVNjAhEM2U{-MUjvD@S$ zVE^v3x^vXBLOFf*u``!TeSQ7&i-XX_rCwi7`Pshmdj>0ivQu7T5zM@AkESO3>i=%A z`qh2)HJ1Q$E%(u6g|Gh3!Rnv>-u1`$>VJQ*`jh+5H``bK+k=%SzS57o^ic7e!(&ej zRvw$)U;a&B`TGYeKg}!e$2GQ}8;h`?`t|Y;hOn^;Z$RUPw z9{1BOs*defTw2Zo-f=f#1HV&~thDry#;_M$r2c`fBEF)7xIWFnlYu*o44jJ$R4)39 z63pAkzt0%>9&al}pwBSwYD1BEV)cfV?iL6 z-buUiPs`R0F)p2VmR()@^6Bv<*sNNoX}ry>8`iRp(b`bu!_@8C*p!%o|3G%2=%to( zlBVth=fvl@b^lD=wb+I7cN2GAvp0u(qTM*#5ciD{YcnO4#a&~v4Y+f?+P&w!nfj}F z7Fpnb=iF`Ul?C=Sx!kdPG3_lSZnrvp{e$>1Ok1lNFFqTy&mUo|irua|*-9u@I?8yP zS#Q;4>->!~pIwaqZg1}QjyK~MOrB!=k1Af7@rSYtr=UBNs_P$XtH#PRGuGaB?pWRb zCmbv9-*2psXl)5jt`@HF8+@H_!CB*bp7A{bob>*3_x+>pd*SZ;dQTsEU+2ER&wa18 zlIG{w!^L(xe9_4>!Q@i(bhB((*KetK_nZ+I^k7#f<^n_ci<%i%HER;_>*}BByi{LY zgx?-@c-OIC((qW%qG8at!^2m>!{SxPhH-N4Phd=q@L=ZWR!t@oOnAJgyBC+jw`u%0 z)tx!<2x}VrV%+;?ZCMEJwvq$jVf(cB*1{aK#)$+OziW%DuIi~y1pCK-Z(|`oANfTz z?=yi7a%fr)alLx3XM%M#&zp#o@2PU`OmptV$TRsBE@ZsiS6-vD1Os#Z2e3sC%y;;? zXVFE*rb(a8++4oCC0lZ~e=JXgGmT~64BXT}UBRZDb+UXbiUSRwOw2fT?kv`Xp|G_e ztGf2~T}EacAIBs7$oCSiaLOxgO7#_wy^`M{Vo5^<6ULUEPFwnqo(fesI+wX_k!`8F z7}}A`4e+-1NGc8##9wF3G49D~gzoBy>*YSZedgV1f%xBe*TPwc=2PY*jBG^4g@{ki z(cLP@%GH&@gz71Vc`nZ*1=!8}w-*yD-k@_$Im@eetSJdMSjk-Et?cb}w5hp>_KC|& z|CRp@{MY#20WXgrmm;D=Xz<6fmyND)=T<01hJGs}7GZ}_H2RnaoZ2pY$VX^dwmdIyV(v4qfVTgUgGUA`xE89y# zfufutkH>Cr;6e(F+BbE|k%+?(2OdDF@exBsK?3}TS0`)gZU$Li{X78_N)}`pd!?e#pfcM@2dZP^w^ERo5Wq~)#+Ow%o!KpopoDyww2sMS;4(VYfqmZl<(CF zT4VjZbL2XAP2loQ>kxAEGw%Q&@rl|w)!;GDzUN@zIKC2nd-6c?>;QVanb`Dp6Hita z)!Dbf-lvckQR(?==gg4qAN2eS2hl5up`5wnZladj0BfGI=)aJotvt)K@}gdQUhG=x z-OSczWZUb^n|;7&eU>%${m!aJV(FH z;nSB-t^wYf#@$Wz*g*NrznOcn%Ps& z5|4M!fe&^Y+?Pca%ju6l)L!pwaIa^a`z8UOk~ zp}Esa`wCNmm+=h%n-^%CGY>`%d3~t;2JtIxd;9kC%jrCz)-K$xQ4_(=G4}+AWBbjs z+j)j96UCM>cd`azNu5IqWwp#ueERk;ST*AB>u+-Kv%zg2zBBmJ*vlBV+FH-ud7qcO zrMzTfD|MUK#cpe5uTyXlY_&%v*pxGV%|-CG#X|>x z?Lo#-2rm_KF3+R40Q4{uc#2o@L)@VQtv6|(pcq}w86Cl=9N0)c+>UM4o@4T4M%%f6 zQhf3f9!St{N*ut6S$d}@&<5Q4lZNxs@9>+$jDvP6@3Nq7tIO;moKLL4(bcP z;?tcuR&oPlQ6FuLrx9Jv-g8p_slc=u`cOQJbQ<-{`L>D3GkDI( zFTd;>3asnlMbSl=ak;XgA1>$laOvMWbI!gyYexUwXu5a29XLww*RgIa;||#dU}$hz zB|o9#N5j^O-@#mO;S3o4+lP1O#}BhUJcYC9p(^ftS^`g9IV6$deEUl1I`dGVM(evu zV7r5QsfT9QaL#Yq?j^D0;xAaqP1ENm7jaK~f_Y*y(Po}q5&3YugzhmM&{I6tZ9rmtl9l>P-XCAdy{sQ0aB@W$$Mje0tuYM%9H2O(v2_w@+u=X7R z{Q`sLO4c^ht)wOUfH7&^_$S&FoIk_=O0!-ZXV>0%M(+C zzqzxg@!YD9_k4}EH_Z9?Hpv>%$}vNq%F$D7|AF7BJc&F4_`bi>KAco!s9m`t!z! zO_&U6?-N?K;DdjsttQ~>Hz4cix$8VvJT0o3uVq+^x8zH<{P)Vk^CZ_@faMkyp%7aY;GM zQ*lXp9^!eKmEVmGXzZ6|$j(OOmh#@`((lFDd=KH9|4XUIIyF6)b`%rj@KnB?VI2WK zMdu=eY-Fp}BD0NrTfmu~5a-D*M`q1Oc3p;yyA&CB2|idSXT@;l{(ibtu}%@%mJW?b z_MksyC(lA=6@m}h%Iu*n6wZuK8u=mJ>&cHMas^1Ail#j|)j1rQ1l_H7b?HYLha*>{ z>yRtR&|h#*i}c*>@bdfVIr6O~UjYt{jKSl@BIvD|b|n)GFW;MG^qO$L4E|^a)?JL% zEAQ87FAdPiU!Wby7v#de+L=|y>Bo=uwkI9`-um$g`n?nVIF2@@9~beh@k!?0DZX{} zV+DNc=M^(f%8!Q*mcqm08GVay8gs4mrKTMx@1f==eM)RW)YGZbmEr~Gd~%VUL01ZH zUjc3rV0J1l5uXWxGAJ7-(zBi9Xs=KAjLl|6QdJMTR`sn|H_P0>_n zDmsq!|7?8wsZEXzQwp!iE;$^`j%GFmNi~v{C~$Ege0nn8*l3-#z4w+KpiHS`bd~6U z7!}$GA*&^4daA7S5Z+5ZZ;+h5I%MRt+Iana>K$T^s;At0wcF0QCEIQ>7I%q=NWq{vPW{f*d8~_ zVt!uitRu%G%sB)dgqdrq%8FMr-*Lck7d(;K6iB2q#9zY`83{4t#g z>ZbB6`N9UN2YiVq7+6Q;ZN?5wN2SZf*RtP}(!a!NdUGT{lgVv%kn&%5;WP;uoI~#7 z;T^>EAcKkPOqL-B%j&ZdVdjFIvn6Z87USf%VnWN1%~9e)6%$%M8oBGngRXbw?o#+9 zjNH{8$sNc|kH!QW(MJzC;6-C;XzWhL(M%pNaJ{+qEJuGExdn~M4!#zAr!@~?ZRP>K zJ$vFX@V=h<;2PVZ*!J}JJ@BG~=OX)Qez*JZEFHdxIt|zx2G2)NiC;$<2hXel(AORv zOIHiWo{koNFQ@Kev&Tb!qw|eiQae)^XQPpC}M2cw5mXkTzW5q^u&s~-fvG1mF-gng0B| zB!9*&mBhlpZ;Bgx2E2xR>mBVeF3oY}INwH&qjw}D`^(?HyS$HF=j^wzR>!p;|r2q^;7gyBe8#`j1|fa;r9rI+e$)rS*5M_1-7Y78)bk`G8C|K8;KEw zH}d6|ZQJXRY{@KhE@Liti|1e;dgcA+#w8PV zM~(J&WJ|R&7TH!QbXf&9*l)oTIFx@7{*=v>XJe0={e~{dMEqVmjGsk!AI(l2L?+U{ z@weU2xOI01a{Ab@cesap6K4(B8}#3u;g4^Z{8k*O*0s~=8=bVd;wPm>E_?|%wP#uP zG-Eq7!Uy2_o<@E@%J23p{PJ(2*P*rNkZ;?lcerwFy!hu%UD-Uhy7f&i;6d7u>{;~rh<#XCW|K|PqxpDavUjYu~1=iHgIgX6O9!hIJ zI)$Co#Q0eccbDf{3p=Z)d&&&he)Qd}esKVuQ z?z{v`(X*MKkDfF4IrKaOdJenv+$RU~>`&wGEC&}w_gX#p-Fowlwz2Pd$n2Nk0|0)a zpR%PhWJjc_n%C){H?aE#%vUj=l2g8Hf&=_C%0DTxde3Sia{I%FbP2 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

m_k=`%Xp+I&u-RiCA+_%^3E(ocNVLu!{^ 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ƪ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 z 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 z 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 z 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

    Q5XMSQ0<&iLtVl2; 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�}Y0}TewZp&`jYj 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⁡OKl*39cjaN!LS;jG_@;$00 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


    1?Ulg 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%0DNUd+Q_Jy%^ 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 z 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

    `hZdC3YF9a8R^(h%&#g` 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 t&&>K6Q|f4{s$cb)tF2c$PY$aBD7 zEDvkD9rPcR!*#OH{3Y@s-AX?9m&(0bpD+An@~4&ogD?H%@}y?)mA^usuYL4u{~>vf z_QXT}!?LZe?Qi@?UqyA&EuD12} z{u((;t9{I0EBoj|fAAldo3#o*`cKGjwY&V}uao<=DQ8^8{9Tvxm;apXrQPLkf0JCK z+rmkIvuvUDF=Eflnp*=WH)C7mMr{KtwpF&$&DoBjqQ@>=yLqnZaG2ciN#)*ZM0ve{Xw`%ISVhEWjvT>hnfv@rIC{8roGjM$fQtL9cO_LZ!sm8&27 zS`OE>&>(h5j?%TzF!qi7OiSG;_O0}P4fJUoJ1kGtHYkc6k(cR4+a&g#oTj-ojUAPz zXd5((eJ}6Tl;*Kx{2hxUC3pyF89Si{LIrx{62&nC3yF9Wk`KJLi{aYC0vPz4X`pq8 zd8T2{#^Ve>ieP)voL(9BLI~&G4M$0oLN{OZGi65v_)|lW)kxI&g5GVu)|Ahpm*m2( z!&|nLhChuo)^y}qNXV4y%^XQLbn$tg@n){1Z==4^0zynM6EdSBn5s=S8%VkijQ13# zn2qF2R3AOWi>YRjtcC*j&j6TaHkU)-&&=&MvsnI&row`in{6fCAjaS>vy1Em3BIK~ zOU-_DBVwK@r=UKV{{l$c7~KSedrV8-0;@B)7ou-ND`&9K49RJlav$zdUkI6)vdGMo z4Rvq7gf3NIuDxx!xm(6(25tT!^L05F9PY$Uk63H&kp-xD+O@)x?>lm{?!%rn-<7kp zvurfqlfBTla6!-EcDMwTr?okVYN6hAq8mGIU@64yM8MhgYHYtvqG6NUR zvzWi2M(D!89W#;TSC~44Z#i-=al-WF5N+z;%$OXb8|?39T((CovOs^p%?8380mw}) z8+3yiGN&dw!^=7d%aSv+93HN(+Yddthz!e=)pa+WiDVUSrcDiWlFB)%h9^WtYO9ENNut_D=w2zj+T@}zLg{E1F)4& zvvTDv=q&<(TkO-6q$~hy&U3m|TYiiVF93z|AY|h_wXFv7W)vELB6$hS9f0OCOMi{C zj#Vt*f!i{rj@4G41r-8NVk8D2Q(Mv6lCyQ^+Xj_0NB7ZfQ919zH|bo3I18225`r;k zhsxQYUGQvF4t-CU{jmgUzJr?LLfS+AuBZT#zYc@PKc0bG{Un9zi?d-n5V98#R`|P^&y~r6uWW$G6`G z!(4^$$esgL_S_CI(87_m=`d?#4$x2wN6#v4JKP%UsYBX}M_AW;eBU1zJIWg8sm{7d zj<&{o>H$;()2_89c-;iR`LdGrl-z@{+x26 zH4EkG3ECuUj;Drcf1YgJ;i=d-VQeKGrds7#KD!sX1xsm(GO#=@>Y1_*tk2cl0G-D9 zh-J_a{X{;>VbI9L$2_$+G{yjO7fi;KA`@TT)85d;ES3E*tg<&WHG9jRmj}(EnOP=B zYj19D_LG-sN(-~UEP#zTPfK%P+HG5zgJlnh!=Aa4Os4Mdhv|0;qtn)#tJJBAlK&5jJG8gS(hVB5$u@#>v zN2lzFdo6hf49;GDpM?^Rpqt6Twp-f3%TdA;x|3Le60X*r=|d=CjqX1mM!zsmEA$A8 zyHWRrE757+gF;x|N6{85;LvRCHE4@VAP0lBXntdKMXp1OON>J8mx#TVq+2xEHt#}~ zTfvtze2hYF*E)R+R;y4vQ$7K!8z5x>d^ti7Sf8Sgnho1BOpj6%P@lo06ws$oA_7g%8u$u^4C@id71XGBj}f3 zfjODm5v#3{cplwJq4>$->j60WXQ~TaSm#ce}yvRv}PxuOr=-+ z24w~#51agVtCoC6ckF*yr^wgf)7)JCgqlO34BPfEsCf`wK7+rlx<=wJC{SAnTha}# z9PQeM%*6MpX%hmwoQ`}7CTEa=58Pd&=gOIOI4w(-ot^g3upN=R^?WWHpT4^u#k0;4 zeEM!PoQXly&XrR&#mA@bmTCWq*-6=6&l=)(zMKRnVKuASr&T%cmo#cjg8}B4BHxw= zpgk*$N|2)=<+8buzqXAFype`$uMY0lP#e`;E?t}n`DPe&f#=Lzkg2B8!kpmm} zBF~mr!DBdo0-QI)7y(GNHribiwO|>#_&NaClBnc_X81npqJwB-r`y|E;B-{a9oyNa ztc~88pC-<>Ex8u%#-PNuM~G;D~(2`8>N&J_rU3I@!&6TFAXZXS>8mUuTW3jx-E9xf(~&c*kEQK62zd zG%Eh0^Cx(Nr}A612b}(L71%PT&z!+BiPGu&ed0@JxV#ubGC1UnkPD#;gTu~9Y2k7W z21lJy@?8iynDYGKjFwZ;L$LnGoiXWexBlu}CmX{|6DZkl&Up0<1bd6X@6Px>27d?X zSy(QsD1IGcr=oAjyfI_zIt$-jv1cNN6{;{2qfwvZ#bPJ@DcL2^rw`g9`_FR6;cp}R zmw@%djwc5pJ*&OS@#V`XfnR!j%o&X#L9@j){}>!AX^Qm@S2KMkNjw9-^Pvp4t7jcc z4uUn7;*m{kL?JJe{PZ05oP#%yV45{V+3eJoJJ3cLJnwXtYcypG%sCmdFlDP#E^EU> z*@7=PPp8dU;XEU^z)Qa+Zm&2S7-f-alyO6Fe=9%Ih2V;*- z4}xqZ`1o!pT3g)Zq^EB4pv^=yEG}|BwE3o0Fe_XDZ6>3WVr}kma*V`xsLw)y=#kKv z)ej-}D=042#~}AOP{xrY8Ax^r#$%A_gyp+141+KX^AH@HLAH~S2S8!Zh`>r$p`|m3 zI(6g&+Gl*Hu6zNKby7G+L-l8e7b)5md~gi)VFW84=w*Qie=G4AI; zR---@#`rSe9HV}13>J(pcN{xr)UN@?jIRL3;q@@QJ4BYf(y`^6kcYtl$HjM^5Us7e z85C2T@6@NurFib$#leT+jQaCXX^gu%riDS-J zR9F^nwY&|E&mb(OtJ$a(_Udebz7I3(R6iP_<74-O#=UA(WZ;%=7?6=K@TrChjbb9p zR8OOMGc7Lg;fBe&N^?ZSRK~Nxa8ezI&j{kGM&J!=BUwv0*V<-wHYU zi-M4hB7M($V4Hd&L;j9Fmq9~(g{V0?69z>gU%mtt`P=NxLb-Ap*m5V|B9xS;K?CmF zT83)NA22R6Xca1ycOe;@r6h#M9W+J;?L!S^IckT&IiW`KepDsrIX6@!=VLNMFU*Qg zp<*cx2jX-OmB^2vKUY;*sI$BemB_MP7AloRnZeN3KU5~4fboXWe44)gbdQkt;dUlob-NE*%)#e3*n0OvaQb@eG?HjBJb^wb z#bd@25tlQNnVbAFT+({W?4bRx6V+t~O61A%W+9El{QK$6gxAdU6>_^VWv~1y?d$k5 zAAR(SS-n9Y;&bXB_#+sb@zq4ra_W!3;aaBe0XCibXW@Da#%}={j$Dk_`x(EDuOvdM zw1z$L?rNdfCiuoEdSzd1hlZpFPaJkY!@96JtGg2#R^ABvD(a~vC~U{qa0It5KCHsv zecUgbfQHQNYmqc+X5$uzHL!-5DQbL(?xnC$ylBbYG>5+rCBBU3*&pF*47OR0qn48! z6X_MpLv>LfL1?=b4y&%@)r59fzOP<{?=jkG<>aU#7%>^WYUSptC#g4~l&@KdgnAbR zGumY(lWGN=p3!crc5S1^3OKjph-Xu?VQy&8VK)30L~KADHd%PvgBpC%BUnc@aDu)w zde;(5JeXPxYPkrB9zt`b#UKU`qtVi$6N5+4%xF1^!AdkHT7hD)D%4*#KyzlWIy7E} z<_38l4VB9`(dRMcvCt~{DpX~#CRD+TK~t#E^`U)=7K0c(9l|m&tvWG!CRB*75r$>7 zAyjHAT7+WsY-qfxmZMK#v@x_4r*$>$xzJ8iRf8N%+Z4hH(lgMdGTI!%S2hxxF#_g_ znIU-&tiZm3PZG-Q5Rf~?+4#EJ*D!YgJXuZmkhAdxHwi$e_lD5I zXJYn{D+Y(sjc+K5ZwYnTmxrPFvoLvNd55F;4(Op-un{P+a`}BEK0jCEZq#X^DXtH3 z4!RIV+yGvcImRRVQ_z;P-w5d+LA5cM0A4L1BZHeD{VMd&Z`=1x}=#shTo*2qC zRd)!$THX@Ew}wW-;TcT|B{9?y1Ma&@jKo?zyZGWQPd*EOV2|F5ZxU~X0O*P^z49ohb)BTe{c~TAxI+&pnT4p$xvk z_l@Z@)ek%X%3&{8?M7WPc>UeZ?`U|Z(*lUL}geMtEn(f;=EUG=K% zEts5mPlK9Q3l3DXG5VCYs3!5ZTjL4%aiK5jW~9|9r0WJjX6E%W%(So#aQ7fhnOUS} zxO=ct*cKVNY6S8yr8uLiux&Du@YU{+))RRd>HJB|0}{W(@jP)(mFP|seE`~E!dWHS zg;1xWHn}!3Aji*WBs@dS#Knt^K;btWvoaERUkz2`iCC4~ImGl2FfA9?Rnhc%FkJ%I zV@=0F)1k01ug2eiOChO_=(bxiK4X@V=!NRb6&=DHed>dV?u6}(=ruUHO5g&#Bvv`= z=o-d*8nqFfIQ>?fTob2OxvHo(a#fDyb*o-gR0tNYqB_Gj0puC zi*D2q#o^KEcSX(&k57;PZNfLFzi-+$JTZNfX}j=b!=}1nX9yWKaSFnTj_5;=iF?Cx z99jg=n(l*)N6>%Lbwy$k#Io@%L?D_>f^!n!tP0;VdK38d(a( zxo-MlrXw!-s*hNni*?3TUX@jGp^JGX+C5!fB)Z|^$3HOVW6;A*8i|P@<%*52TnuS{ zCNVaH)rS~~xI=j!tiFNa*(xv4tzf@Xnv?iRtcK$x#k|y2W85#?gRCD63p%+6khLYo z^|O{D!xBjG73NXQbg7G1`_7^0PWVZjiLb8u-w6SJ@J?NgGT6W>AJX;L~Ia zKFv*FF8I`1fRa5i-jy%EWEh9&`EvqtckGw?G`F}3pb=vEVdiER#XW`o(G%O+17o~#4Zq!=$d$XRbU8i+My4I^1Ngi?gXM)72Px_M#Ozd@0)WI8WYd0!l}Pu zzfu-(tuX91%hE144`%np+PK`T`|&4G!jG^t_x)jnC0M z`kUgTnEVdi5WnL3DPEnT?`AMKh_|IyVgkhA3%ui1498{gHQq>j0;MweHkOn{7^E2- zi(!2bF3sSVSdqK~j>OUx>&?LS}UIJq=XdYiD8==o<&?>%B-mVKhGhQLzh6^+0toTkj zPitBd-y`e61(*Lu*uquX?M#nn&L_#^{%H9bFzz;tPN$3}f;NxY?C)%*P(o6*Dkih7p^} z3i>ebE+oq92OIK7f_bKS1N?jyML!8qyr(GiJzOKb@DCr`NwJMyw2dZPvBhh3qFbBH zoc^$$)rsy;%V~+pxYdbTchl+MZe0+12*Ed(A@=;#6;D}+h)euDvP>8`ZSqd5!1sVE zUapQT7-jLSZ;p7T9g^RI8K=>FVj>UUFv812DR>g_8nl1wmfkB3qlGm$_sDrbGww&( zEvMJYGr0W8R8q?y0a>ysBw5P~PXXM4Z>>ya>cfDK=A)dMR8C8o%rlA-U^R_oZ+Q=3 z@5>?obfUJJ3I@5`QX=Le0^gb{ejTPrD$lT%Wwrhr%sv2a-Qm|qwSHB0TE%u&W!M?lF5C~a)a`ukNT>t)?)v^9HLGx6KQnvUO6 z3(Hh(S|Qbe%2YiNN0e!x)PP}*R8rEZ!>_y0QO=YinKvgHma8eJX9PXS8X% z#xNfGM=Im23lMiKh%?$P`Peb44>uFl;9Nr=7>7DSI#OVYV%i7NnF8&RC@C| z`FRHWTp{^f%PD}9UWMm0B#Bz?B-j--+JIs7v^;~ovOasm#ejRShc`4LYWpjoVQEmT zk7BLXS?8FgqY!)UN&RO|AZSja-^t0_@b4UR-~#;Xpi`VQmjW7Xp2Y9`fLppQr|G(c zRZgNM3}b_k=tjE$bQ zlYSneAA0#XxY%wsaNZ#w?B^lWFh%DIpwbL)HDcpWj(?@O`^@P<`t8MTEqwZv)9+~O4#%yOv~1(; zEOF1qtbyZS?cnavd0)e<2K~m$$B<@MsXI3}$h*7DU5Kzx@%X@F9Is2?O)|eR*uDLB z^ggI7@6FLJ^%NZ5gD>{>2;_fjvKzk#-^qq~ytik$4IxicO24<EHZ?oyY!C#os$y;bhGg4F$p-uvs^T;_l4n|tAj)war*0Q)7&x1_YAi;<0@Dw^Y zJ_f-yx8jTE=ko2h+bFhvd=_FKC7~OKs36~Kz=Cq&4Gp&ygr>ISHG-CpBW?US{2Yeo zdS`}60^e)po|=U$JhskDq zMqR+8p<%Ra=RM4Id<@avBZjNSr&dk9m5zG}ZX)11UX}8$KPb)Wq!GUmet!Y(_w-hH z#11#-VjtkKp)ifC>xx0C8kPly`yfi73AZft+`c!bb|T~%VZ&>M9AfAVhH>5_%keeE ze3QFAqtl$kcI3Ks;89DnN*R-7T z=i>w#C(BVi9Rzun^5_7=P=hJ6A*iowx0?!`z`ZRGZ5(2{k^dWPXROag1;B!M)z)|( zwRgswS;h*OM*sD1g89M6LDydj4b2g~;PLi;F(Za&h}n7g!~n(@`;f5b<0Ri4iaa8m z2QV7F1z$zF5p^MqJ-5Q_-VLj%-v~+$ywt1-0qq|IWfAsW2X1b84EM#@p|zL*629t< zFrHey&~uFE?y+XSjB>L>ucUCfc`@-zgaUrYjJw-_U#(Dz-`qXsUMxl0`JuOvKJ+W( zSwi_w4>g87p~p_oGinb7{j|_7$P?OIJI}b6=ruy5S4h;&Gd`yLIjQvX3-XLL7el^i z=+>>E?<~wS4iP<)!t2k-GnQ?`R5LTw;swxOte0mr{}c3#6kbz5&lveJ`58$v$fUoTbu1 XSwP^=*v_HyqCBHLI(qwf3cmu}hU7ny!eg4`8FNYg zUsAYUvpgfR7U^Y*-~7&b#sjm#Pce2+BiqMApTRcX5wi1zp*1^FlN9eD;ohNj8gDxl z`BsFE?+oZ!^--^1gq&Rg-f%bcJ{ro=_<;i8DOt|Jfc`MyQ^TV_3-Igci|jMP9ll86 zjHQ@@hJJzq$r~Z?^;w@lD7T0N9Lr%Nqa+t8S~txz-XYPh;3~-&jY#;>PU9ZZYjVnt zlaS~mN;D~ui(zmNrGMLU!pV|6qaz~1N6yYO zdQhMjVlG1fun24kC}8Dve9tYNUmB+V3=B1Xi7Y7%nIdAqp>1>7st0=Q(@N8GYaH_vepeeb(h!&wAFg*4lfmwLephHJD1&G0b2U1jP^$ z+=IXc2!z@cSRgdlZ2M>pk+Cf_9D-=p@bQF(uK}}t4j{nxNhJ+kUnF`g4FXaQo58x5 z+KQ&+LXzhuz-m0VrQD+L?v7#n67c1^M@t!~^E7e{_%L2)Q-&sRtM-X^vXtR^J4`F# zd?@DIk*LB)RSeYYMD&tkM8}fP+&uxKjZ5*HmW;d=Fd-njwt(C8;Qu0^{eKlO3SwH< z7BEzA647s+jObb#JV2HCN7(r`0$`+V(*}SoKV_0W7~bxgfTn#$rWm7-#7IM1%E&^u z!MU@q#V+b4`nqhyhO4SIZQZU!lPMx4(=a2(?Ci%7A9@8sUPJ%`l?s0Y$b~=R!k*vJ z`}a{DTlJZ!Qwxx{?4vII5#I9N6}GqBi2!*^9rlz1DReZ3&qvSK2bS z+cMuk{UykmQr}Du4nyvD5fOSCfsYYL)LB940gQ%iD9s*v9|G*5=^bqkZI2kPH@pYs z4(>@b84vhc%I`)4YVskLM+2vtLlfFf&7yY z9Y9kSE~^vhZXZiRej?R?RxMt$VMe@&>=^F(J%23K29x#JlV1ZYWfQjpE{O4b2XP_|@`V@(q5lbB(M|V69 z|9FiSjH&>Q2+uy?`)Glf6QG5cC#iB|G+zp&1lL|=Pf}eG;7O_l)-j%cw7?EX-9|az z2?TUPD0N00qJ{0XnNtb3~Y#K{MjQlgKkP6Jiu_6}LE5 zgsFyVd(|qX{4(ebHoL~IsrYKUrdbGZO<>rlc@T(V8j3>ru#JNc*EDYV#x zin=-m;udL*(4x};Z*Znl&kYDri?AS2EfIZCvW^|!CF;UzWCG5z0Vo%(mlEKb=Vlv>VAfllb<*#J&b5>B5vkq=f%}OjC>{A5^;6U z0W7pZJ>Cr>mG14R)t&IZrtPgsNvK(3-n)EqLTc&f=Sk)43v0zutFYlznhoXv>N#FV*VrL`vayTSwAlj}4H)H9Pwe9}7pLuh|342v?JMA{gXMk;V>4gUWIJsH7PyymWil+_Pp;jCt=l&yZ>1|HIcfsmz`2S zdk4n04eEB=1*_WAX;KpT&5)Yd9(u7>cPlbZuZc>um*N&B`j| zc_|t^WvSjZSm+5o(7yd!OCJ1vU9<1}4o{T3r&-+Me_Oe?t1#%13JaLlhZ# zW=$4nD&ksbI`r97Gs>~5=TD}TV`)u}p4c6STVM}8kvq}z+w3_zKOUeJ*^ z;)Y|fk>&QKFF_1#cNsE+x4Vqy7VXQi4wq;aZFh0K*zSsNL*9m4ux;Vf<9iWK{~kZI z^<@-f@Ya{1EZX|=krMfuMO$AS#@1Ingvj)C{Lt2y(I$hpzKmAfGI~Za@-*unth`rJ z7+YWQ4hS@&D&tft4z^4!y%ayRqiD3x;2lL{s6{-M^h{$6(^zxbs4#~6EZR||O$q}$ ziVc65rfY6j`g~y81T(J7;Jq-Tt3`WZT>M(iqP;K4-$l})i~w7;Oif8B#0W#4_ql`NsDx>L0Cd|&(*c5NH(_` zDdy7s9*)hLg_y=K;pc6w(Zl$!$us!bel2zZCg}~=!yDX2(~do{h3C!e{i~_Hk5qFI z1T^~27O)L57m|RBb*<4({NH3hezw4K%@KOT)Z@@y&+LVLn!gZjK82#I*Vj+f?T^`Y z_t6?rFK2#TX=oQB((G@hnAaSvr6Sj`7f1G?0lHR9S;EL-{P0gDD9gJO+}d!;au}6; zbF5YtyP=uoeQ}+Ua_oeV`N#j6W1NA>oy0@rHi#aaIB?eQ?ko-v3R_Kl5Vb~q;C$v zv&B-xn4)E4{5sj%iKcjR(8N!EY%Gd(IDs~V>lk)w#M%s;G>CIJ$90QiIF0a#7tU&$ zS1iJjtWT`Q{go6^H-Lv}@ePiM1ELwiL5-F3pMeJMi$t5gIz;aQy|OOmK@UUZo<NH2cN7_@pTy)*??(bV1pW=w2V64vOPb zTv|jdhs>zxz7Bs>SX_m=QpFDBkBQabmrfJ6pq9E~45ZZ)CsW;8ebM~|Y>tbiZ(!e9 zOh&3D{^*F^Q?XzTK2H(b@riF-+=e`jL^bkUASU+2Z4)tjnM=zOX`S3!WAPqpY$CQn zpQhq(nD;_)8m((4njOYp>=U?yt!0ZXjZEz#;fuMo9MK!6uUn&+r&-UUNw7N`8fK@w)^ckjhxv1mvXoX@NbSM%54A3jYqX=IqB;q@YH__@& z;$_IWN@OCnvuF?fi^Vdu_iEATFg|M)8R(ZTVjgVORg}U0*NQICq?>pXHFg&-UT?zhEzLzkky0q&>9yIAKK$WZY5nZ5psrV3OZxH{6h5L$Auz5ex z6?ys#3;Ayp9gy=T(GIoWEK2cPCO$=P-XeBG<^WNKzP?qQhMx=+15j#^_z5)*7K0)A zHlbj>A;On#XhX$#qz)6^5i?v&MCu5!b+Vz26rZ5gw~N=I^C)o-T2wB|Vc|Q(VWf^0 z^AR&fOhH@5ihB`1PJ94sj28-axKqqW`~=Y#8vaY1hCX+RU(kxX#jCLDL=otXvnR0$ z;YlJBI!qPEho=o284xFzIX*z~3FO(#6MU+#Fq8 ziawpIi)ASHur7W_&PN~xW|^mpXQ0HRy6`@rYx8w+5y~yl#b`9_Ff&xR?0H>SDDZ+V zGEu{ex@e34Ued)Th<+Kf5p23h7bzEj=2aIH(C8()=z@w~(Zzn)Z>cU;L%~;J5ZGlI zYTxJ5Uem=B=#k}U3bMSei$Bq0Z=mgH?FwClDh%yST?~avD|PWYO#YTGdcvVs>0%82 zTa7e0!`o;PG+U#Ki=pmXWC2>Ii>^@c9bJ5iYS-(cDTKYNi#cdYwJs`Qm-lq>H2&M5 zivh^_zAj==X`?RQLgXf0+ydn{LtU8X14u#S7G0c!W*_R}MM(Kb7q_9JkI``uy;T<# z(DM^rR3q(EU5rIDKhwoE=-X{@4gB}HE-rw1w(DXk8vTVXKEi)HbnzWT@6^RaD6tF5 zL)dP37DmV(^fcV_-?~@;(O<&W==ZN+9<*q$E`Ei{zt+X&=;?3JFc{=p^w^7TZJ#a* zP|M0x}QlVhhary)OF0`Htw~EA-}3UF<{T54z|M zDL4rullggt=O z6tzQGg(0S(SEd+ZE{r_Y5P!fR(+m-O&81B@#3DrAYl!;zE9Unh4Tikm5Lck0N<%z> z+GiNzA_#lH5MR;wGsFjQ{h5Zi9Cmrg5ZRD2%MkBF%4|bKPMKPjA^M~E97D8(%(;em z8&V!NL<9T{?nex93sjnCh>o44CHU`gLu^2AK4FMJ zKV5s$5bvP_o-)K$sPAb*96)`~ASdcuXo&4J{vevhpCRr-?a$*sRP=%&ilM}dhL{1@ zf5{MELgvecmfn1dSLKxWzY zhA_T2w6&0lzFlXCJ;?HoA=U$}H^f6I_pTwXM*FG_@gO?&Jwtp06KpUpnI_8DwsSW>EJNL_*z94bcQf z{>%`s0&O$IX;|rVL);A0ZAT=U`Gp~-p@toXcm(Bk8e%GB?lQz?xbSX6e2xG17~`S^`5z5&H`;g1 z5NBbmv-=4je~;BL_RBzzaGJ!Obkb6xuh<+~+@d`$cj&@}vvw5hKu>Yq@FwaLpSHlBwfJf({zk0$YMq9sjya#Y zY3-YT#KaKPvgw7y<-H{5rEaD+Ip-MO^R%2nPvRn1&N_UZWaNBCN2@tc;Zf9;)8!Z* z40B5Hhde#n#Z+}ZTIlkk6B?&MOYtT890MQig&ROaQ&gcv_~MW9E~TLN7E@fX9Ce5` z_|?TCs9+@0`=Zq@?}etA4PVj3^>|d(MYH`RYcEW0CURZm$DergVo)uM8_3nX46n$d z!C}hvR~KlS$n`GC@?07a)sU}=+0aE752KHq2D`@O1n_9ClY7hqzC(150dJC!DEcX!+G^jsMvL*D90Za z)kKpLvSp!{I`lZ(a$_dah1uDyxy3T%^@!W2x$tnl9pla?rXZXmw!=&O;thxnhNIT;*{ zhA15i3yc1B$-N5Bz(67n!T{SB8eWZP?{9`^i>ttz=<^8K{IhygZm@!zh$ZXkC88W( z&ql>q#AJ%+@X2DKC>X4fLrzS=e}>4xHxLyr(G|P46+W>FWh%gMS`BB-6tCce{)$3z zDP=*4!KmWzzjbF6RJg@_^qMA?!oy)Y+Hw%L;Dr%S{fTk%n^*jR$~18RUnuFK-Oto! zcFr#aG&C>J#SHW~)}nOWF2h7ESBqqP1uf z`Wb6cQ{4Q*TGTme(pvN}BC!^=dq<$CK*;=Q5 z7^Pj^F%xR{>w;md${V0`oa_YsjEW}3i(o684zpI^Eg4EDFXj6dL&=v%)LO=@-#P5@K9@@|`Tf2jy z&QRkXO4j^)?6g9d%QI<`ef4A*SMNV-CuUOO>qz`-D`xm7#t0+sxpza{jAFwJc1t{2LhhBH_sg!&_}76JOlGsI!zXqZZxD z?RpWy@1|RHE0=dXt1~USmCNDxnp$)#m%|&fExMJ<;rE+cbSsy`8*?qXmCNBxtu4Bh z%i+!W7TwC_@CWTJx|J)bt}TTY-OA)S_Ft zyv_YdnMJp9c_;PLAr{@r{hsoFR&LR)Tn=xWV9~8yE(=GdTe%HzU}tQvwCGmuKnj0R zWznr%w#kkK7TwBiiZ#X9xzM6pxst-W7Fl#Fm*#$B_i~GF<+A?YzG=~|Tn_JFY0<4* zuIs>Ri*Ds|{CDfD6*CgswZ_3}i*Ds|{Gp9nya|k-A#r`M*e|UExNc3?IsCcUFTMc0 z9B7TdrO$dC+F2BC6}75nVJf3=Ub;mW6;Dw9)|nPQz(|DKG_`v7!RNY^r){=1{X2Z& zOJS93y>Y*u$djLMwVQ;8Mk?E`y)_4UI9yO@?JTq9T-s5Kzen2r3#sY;i>wDxGv~_D ztQQ3yib(3kKI`so3E%SL^T_nyP-4UZJZ==Fldbl5LGYq@3bMA0NATNl4jAJRqmjdT^8M0 zXS$I%OgFs_|=GPLznU6Jvk?*Q-kx!*|hjj z#5TGeKW!6){+^5c*3Z z^k)Dm4y`ZEBbza&C`1|am8MCi`|g#MBU{TYDJUlO4|0}%R4 zBJ^hfLVrnw{tQ6qFNx5f0SNtN><2p=2>m4y`f~~h{Us6lGXSB#Btm}%AoQ2bzOw-c z{pCoXoehNkk_i1d8wmX+5&AO#p}!ls=&|eav zKLZf@OCt1V078FBg#HXb=r4)Tp8*K{B@y~F0HMDmLVpGz^p`~F&j5t}k_i17fY4tO zp+5r<`b#48X8=NfNre6kKlHOCt2=6cGAL zBJ^hfLVrnw{tQ6qFNx5f0SNsi5&AO#p}!ls=&|eavKLZf@ zOCt1V078Fxq2q5L^p`~F&nY1Emqh5#0EGUM2>ls=&|eavKLZf@OCt1V078FBg#HXb z=r4)Tp8*K{m4y`f~~h{Us6lGXSB#Btm}%AoQ0+=+6Lz{*nm&8Gz7V5}`i> z5c*3Z^k)Dm4y`ZEBbza&C`1|am8MCi`|g#PjqM>GiiB@y~_ z3JCor5&AO#p}!ls=&|eavKLZf@%a5EP144gEg#MfYLVrnw z{tQ6qFNx5f0SNsi5&AO#p}!ls=&|eavKLZf@OCt1V078FB zg#HXb=r4)Tp8*K{B@y~F0HMDmLVpGz^p`~F&j5t}k_i17fY4tOp+5r<`b#48X8=Nf zNre6kKT3>{*nm&8Gz7V5}`i>5c*3Z^k)Dm4y`ZEBbza&C` z1|am8MCi`|g#MBU{TYDJUlO4|0}%R4BJ^hfLVrnw{tQ6qFNx5f0SNsi5&AO#p}!ls=&|eavKLZf@OCt1V078FBg#HXb=r4)Tp8*K{B@y~F z0HMDmLVpGz^p|ct%`*U@za&C`1|am8MCi`|g#MBU{TYDJUlO4|0}%R4BJ^hfLVrnw z{tQ6qFMB%f0z!XDg#MfYLVrnw{tQ6qFNx5f0SNsi5&AO#p}$nla0a2jBtm~qan-4o zMCi`|g#MBU{TX=bY>-6g&j5t}k_i17fY4tOp+5r<`b#48X8=NfNre6kK5c*3Z^k)Dm4y`ZEBbza&C`1|am8MCi`|g#MBU{TYDJUlO4|0}%R4BJ^hfLVrnw{tQ6qFNx5f z0SNsi5&AO#p}!ls=&|eavKLZf@OCt1V078FBg#HXb=r4)T zp8*K{B@y~F0HMDmLVpGz^p`~F&j5t}k_i17fY4tOp+5r<`b#48X8=NfNre6kK5c*3Z^k)DoR{?Cze$G~fZDzamDV5LEIIp}!(Re}fPa`YR&zr@rtop?^Bv3ranWEt7Ha zb12@3GIHdeR1gZ@&F_RS;y68cPZqtt@I@QEHTK5K)Jr&)bG3@MMv455eob507)Jv; zQss}Wa3}0?)UZ2MlLK(PPVeTPuTp*TuN!dQ+#6tjYE)j16F&xrQq$#=Q(Ot~eQKu6 zfIggZJT+U6sI;@4O3jtWaAAg1eof7n6P%QDsfBU^u3T`687r1euhZ=(WF^j6 z*APgFm8y9;_zS9~0RC81S47RrC=g56)e4+kGYZBsb(OUf1gexX6wB7tX6V-e?}eV! zSgx)nKWJ)QrvlZDm3h@Yc!m074p4*Gf~Y#R34b4xkQG}URWBU{<=R}JhOs?SHMp)@ zdx20!Y)_h6b-hblPADGRQ&&BXRiu4*vUp}faBpJ zcB+y395U%e(vuTA+lc#`d;XGGMW*@#{zh-Lo))pnOm!)ohtpccsxp-a`{-3qBP}ns zAX5#4$Gk+SeJnjo5i9yTgf5F^XDK58nX?e6LoC`@b-|>2j?m??EzQ(6xa!DffeK?s znknKb_dgF*6l*Tjweab82wf2yA{6nCw|@cX%GgAq`eK5vehH{!tZA-#5`!f0GEk>j zZm#MKnvlkXu8OtJRi9(BT1KdItTO> zCblD2{Raml#|d?b^=hdyaA9ih5}>ZJeXZ2T194~m6`*Tl*?B4tL?Szv0dcHxkEcVcUWc4#uWfUx5thgRH9)gt#Yfc$Sg@4PoLKo$RS#F#u2~B-H&%I6y^Ge?=>+shtm>$G1vXg^ZvY>Jg}Lm< zm^pyQ!M|2f>20yHAnemc-^TV3z6B%_Jd*dt_7N^X`Ew-iVC)FtgYbPWe;D%xa0%o!y$b2y$IcL* z1pR4?(Q^cI25@s&$&2%0&kr%}0^n-wP4dceELMi&iFUuhrd<9+Y#`xj7)^{%#fA`G zh-8agd0GYGn=nfZqw<~7Dhc<5{TN@BRz>)G^e63mdah1e0IbD}vHZ8a z4oiQ9?%5cWMDn(>5a}NTu{r-Hu8$Dd67y1Wl2X(~bx6Ot2aiGddZ>GeISCGCCc^Gr^+{ zIupb*K@8`-Y~x>p`MN50H2FPPsH;9eY_D^{VqLw1`v#2u3YO?NP3&;(ser)}k*TH!hFuJ|Tct<4y?VAd{# z_=zp3#lJ$h?LJ)OIbwR=Hj`a~r!d(P{lgZ0$8^bl8*xfNlh1n7CqF%c6`jDlre6}( zZe0S^W>g-(m^#t*W`(?UhL!+Z%;|Cl zOuL=Rd}vn62{>ZmG9Q^Uq zTApygF7s{qXA67u?l#xRX;752?J?KN<8WB+gMXXrWXW#3>%KJKkvr+qw}PTyo9ks3 z9EHKR=DYG+Sd_s&vs(TJC+GI;H#f+A=wAj0%#Ct18pnn|WNwx@5WwJwxkVaq3I;!# zAIYPT=Al*cxVcplb3KoR6XrHq1w~(_IscToM-qGJMgl*X`{d3D?lThj**v0rI1!me z7CmdOHrX{9{bp_hXEEKRFK>-!9vQdL)lKNzj$d(SCEUg+@XXY;GS6dX(s`bQC)K#f zQ*fS|VgEGzWg}L8R(qkDCXe8D3WI0OdNTNu-MZ)CNo&X0;Ca)M4RINTv%O$u$Ukte zg~5wvBe@CL1gZU!nJG6-!yk7i@UodJQz4DPBD1w@;DE(uzWf|zIAw|1UUo!pv9wpr zLfNy8?ea^_E97JAZ5Mgf?3nD-29^86to!8A`twkYT0-~P5x+J>6QmTH4uF0EE zX$jvQ3Xp#q_em&a7$(Ims+&h6NWw=Ud|hMwJ(S4}dtQOb+Lc9v#7@nkv1o@gx}%!( z$R*aHvc#GZky_0GUL@DYM~Zat6lodd(<%D)Bk)%Lm7DhwsMqx8TI|9Vi}0-$&2H>%qYaR^j$@m8YXS*{iq%m+bt` zZdbDNi`_nH;$W2xe6>3&e}HTA1H(1$G)aVslKiiWJ6+y)1unW1=<3dtlj)hgEx@(z zY&p&us@>cdB}Zp>cTRG2mbfpL7vim~3km4qZZ2QO)WZ{5FL$m?fd&k&cej>w zY<=AM@^%0^MECS_Pmrx3fK1@&@2-%UD8t}J_jGvzk3>AYZ*o^AJ)z7!L*v)ty&ds} zJif`LkowF(Tu3NO<*&6ipb>R`iPIQwvbd3^oyA<@>EO<~75TVR4Xxl|%zc?2;g)WR zkJL%6i(pKBzpgz?AP4p%j!7QB7sGyAaH)yMZ*w<@E?+{POIP8AH+W~0w-N4*s|4X) zI@jI?FOGH2uu|y=hIi^&2ats;_V8~+i+_)pf~D9NDDm8C%FdWw$oo7v1C_m=~3}Xw&;4gF7&qyWn;JgV7kk=OB&2 z7>wB$VF3nX&8D&#UBFia6?d$`QX{?@=(B~vinG05=Ek@q3n0eYos?pq);F_SWA z;ae#40bC_W$@MK#?RMG2td%d@P>r#wvv0NbH8<2KRLiKXFV|4SR@{(^we#g0sx#`k zkWhPHq0!!dH9}YT%8biOb^I?c$GjP*xW|3kWt#5k=#zAVpd}T!3by(aO+9-ZK(Ws! zw^bP0IRagLQR!c2Td~BKE|*}wV3YRtWyt4IKZ8ELOxXp`6+L>POsOwhR_?dE|3+V~ z^x~DCv)$xtE%#w!>P^{h_T@`@#bT9*_zGnPI`L^r8H3)s%cE&a2#kYyu0=Km<9&#yhhS0ef#7Uumr0!%XdT$ zfzdeIY~L~YTpv^WiLzDsPIkEF8U*J0&R*`quiTAWKm93Yfln)Rc^>x3&rvmZ#eAQJ zf2t|WG?{XI=+pGVQqNO9*<^hMq~EhJjy)@XHCj3(CF+!`ckq@wJzCZnVLAbjlHUGpD@k>nPhg2CnuM%TDlFPI=GQRX)?& zF0;W`A~&LOY||}17*or*0!oyn_O{NY8T75&xA)W%|5q~7QP zD|pcf+^c3dz~zfZt&7q5lPPsjs`WUu;qYxSD;MqL@X$2tB%T{NJiM-T5Bi0}BkNha zF2EN#RCZK-s}b5rugj^U)2#qB;_%o^>+P635gwmyJrC#P_zAhzhnQLE(n#vv`POFS z;qX1}t-Vfoa-nrCOvUk2J6dhwV;sJ>*m@p%zC!g@b}hmm_DJaSpzd;YEBXzsWA$d~ zF0ETpHf%)`MCu$}_jWIuM5`*n1-kC(UepkJGJFbu>!Ev5dnfZkU3Yaax~R2X_IX`5 zyB8fsV>$Cn_&X5Yi&Ehs3>V|?K6Jk#{aQ$UrR2(J>MPbms3n{5+gitH>Qd`JjtQ1& zMP1Mg)^8=$^%a%T^8qQe8g=+Is~xOutH!_|g$C0fnl z_g&V<7&|O-v#01Bs^aj6y6N^7dEk;Pek)q!E&3SJ7~*ePm|l%X-FB+24*r~tD|LI( z4|s0n3}3)pTG3zdB8FeVTw2lZ_;iEeKA1}@>WVd-;b92ZirP8m`VqplqDOI=pHq*+ zTw2iwxS-DPH2s;3q8J7n!!tly(OYl~hQFd-y=WHZM}}unuU?dbsgL1rs8=ug9p1?B zchswQ`nHKJIRwe3-l;uI*z^K4DyqB8D7vr&wp!f{5f|f+%|%mVy1W`$-Xs4>!)JsS zI;zw|d9SBa6cY)Xus+1OJe_VvyNJ6kHLkl1zf10c5ovE476#Poi(QpRoBMGmy-ZTj@rpi%?BDiOqvpkJhOrFt@5L)Nq@f>W;BnseoN3 z273CBcu?|TN7I|1{s3xurV(zBUCQSW?>~fV#TTY8L~L8!r_u}fY4*WU2sTZB3$gPX z;tG2QestYMm)ArVX~mB^rWW6haGN$zfN!O(!gmg_7U{R!x3Ga4W`Kc(^;A z#%~03Q=P}MqFCHmM0MgVC=)7&TE;UG-R5=-tt@)H;|!Tvye(o2+*pIEJe>l`r-jY| zP0qu(yQv2z+iLGBTf#NgUMhHMLG9!A-^1v2F{C#58iEvqo7I9rcE zb6(oUQnsFfTwdB3^a|wj8r+AL-QIyhDPTx0($yEJR*r%R>(Um$sK5kC zr%asfjzEQc#A(9Vz;yXH9EG~yb622J%c27(He8w(ABDEG*$L~%|AkP&8rUb>bFZJ@ zD)`)@(yz&-zvJyOQtTP!p&|^9`y8_j=zsQz1#h(HG1LSFR9e&yj#dXnme}oENMt5d<*7&(qFO!gW zAikzm>mk0TRqy$Oa^z-vt=)*a3d;>`DV6!a593kGvuLqoYkIW!J4m`}6M8HD0af)V z=G1ggZh-aW=h9YiNP6Gmt--v2j|I}G^|TJ)x+VEf+~|p-$KV-do}WGPorb0ZebYG|RBF+zY@BR{Z$QBz*KY zq}L}NISe9b+4Fn`;bS+O39t>q@A)Bd>(cW%gpYkPu~K@rdxG*`PMMvasLTv|5@q({ z52wV}k?`#GINkJAdy+1+0m7-r*aGiE-WDj!`fY?fdKYD|3G%2f8El5UtQgd0)8dQn z+{U1Z_3ZO-=djKPAoh#9?FNAKQPLkf;*=jz$DA}_;jqG?oh%4xXah~p(lp^VY zh8?ORMUxY;y-fReo+&9l>Hact0oyY*B`7angl~VzeA80ULF9B<)DCCjq2V8YlLYs| zgJ9J2nO7DsvG{_^DDgV#D66b&tO`MdJfbQ zaj3S4BM`A4=LBrW<6a{v;v|VE!1HOFxtK)av=tJ+8n9q8TD!$_eM<6est;OQvny1Z z;^ODrdbIm_1Df6eZ+^`Q^i4^ZDer)Gn?S#mY&ifMdi=!PKV^};6K`?7DCNeKrE(_r z7a81?vP^yzu}`{hPFXI`VRMc*+6Jb)F0aFjD1$*MZ^)0Z<;qW)gHu+>dz@{C+fv?? z_X6;YG9qQQq!TvYGai{ztz|Vvjcj+KBS5%K33STJuN8Y4#ZJKcb8@H0XFE`Gxj^Yb zlrIOp5g&z62EH-EZS7@zmz*{w{I6-&t(A#)ME`Q1RTWO${`bEQ7kHM+;!oOZ@mDA` z9tYU*l@xjv$MqS@@df^B&$HIs*qPu4KCfBRkcFG{g3DTmOdNjEXFWT`9tJN5t(`90 z@n4QwtFRNqgW%;fYjI7Ubj$2(&##LztSX$8vz$el)(YfFgqvFLquxX~+xq>GJ+c-z zw`O6lf@LnwwbnT@7q_-9JZ;yzINv&pqkYb^q`ftGja_zWp>)M{S&P$7} zPf!=Nh(ee8=fdLx8OGvyfTJn_91 z!humew1ppNHi!JWdJHoV&rMrGL0#36_UrkFAsi;%hLa3V`zVyAt3#NccvyZC!qL(} z)W_)4Py<~>p)t34cPK+w|H1J=0UZc`8N#uX7Y+EUKhU?KOqW{qhpo%LP_9cYru{l> zpLxCu<-627KrHiMsL-V{&;~|_LPah$0d3$Kj)Xe8)L6{55h`~yRP0i_VTgu=eh3Y5 zsozn1GeSRx%3W&Y3@vdueJr%xr9MFI-1h&3R=d$UE`lEp-{~hXDcXFb8eIeg??~Wme!#x`IK{1bXlk|H-ZYVjS2XhnueM&{A>e;yfxe-fvM8!>4GCncXRu&C1j z$RfYsPW55i8&A%0c)06TIc42@L8KDt&g<^6Pb4iDAjJ%tc?g~ zP30mTT79@7lrT3wJycP*MBI& zv-7Qokf(~m3kt1Sm8SMCg`X+5x?;gNO5sH%*7sN>V#5$#TWWQ{^RS{YzCt5o_NVaP zA=VC@iQY%yL*>>wysCUk;ZqZ=xpWRP9O1t!SIVc?f=h-#mR`l@j++Uz z)ECIZ*i_g{;8J~|T!BrMv=IPZ^hNR~RMMKjb^3Do4jxDEBrrf9=QkVe?#CdeV_aS**ImAengJM7S?G>nWdkU zJ@IhcawNb!{j6#S0i6jvg-^QG-}_uzIicruOlX^->H~z9>X@|Zozd92(pKo0rUpUC z`;@ju$5iwh+Ws}6O?tMjHtu(6e-hfF=i*!&FMXlgfwt;60pASNn9vt`p{~AxUhN5e zsTbo^y)}G?&^LOCuFk;F*AY6d;{?1nhH=VRpbVo7)8brk{Eq`_YYfrVQncY7LS2k< zUA5_NJIS@i1YP;w1fd6|bvG(>brYW578AP8sMJ--dQSvmQbm&Kv%n= z3zzF>EY#Jr*!udL(rz>s>5BezJfoY9<+>`xUMZtnjMchYL{Hq~k@HrgT32sDvxI{i zTXeo<$mlj>o38qyMT~|Tdvvt~HDpn_;l@5)6?nCTW+ROwSRkN_qO{S*NnH)Zo&#$= z&N!>9!Xx;Tx|D{+z))R*h7h{T@EPh3?7sYq&_p9@sNP89a`zbNhH8O1l5!^RLpy@lNa?v;5)xuFWtf85#y#sotx7-+Zs z38TVL`yk~Qm3tb0kV*ZD+PS`GjVeQZ1PdB>B5kp;z)(|RrTT=H8Ve2eCDO79Ei)Dw z>Q%_>P3R3{xuFK2|E3ap%UErwmRNkABece-Hq>np^Q)3S_!zRV0guXEL8R}7#>qlshal}y10gWScz&L5Bqp;^}LI;hrhB^hyFD8WN zHBiMz*Qe zqJ75+{bl5uYBnt4`xlUI=9}s`EZBsQ+blHI>*xnsFw%Txv8n!sW*sQaZs8 zPAFuSnyL!E#N}dmcUP;?qWP58z#L+#mr(=vLxx#yDv6`D_b9EgIl)w4K$jct0%~Gb znCfw~h*49s(o`LglhK7{m8p7Pq9;%@bAhQk!wWb~m4zGMAco=<{IR_TB^Zs#)$*W1w|oLa&(< zTxvV)$!NJ*;Zj}Dn|YM>x>vfqJ>h+$tY>mJ{md8sb)2FX2zR5*p+xcdM@Ghb4rDxF)#OXtZH1p`oq{ zw`%mdOZ%MAa95>UO@nng=SWwTTTO;$Wfe%f-L=529!9yl3Ek~l=vKd@k2VvU;#%ZZ z&m(O&q5ECS-RfT0(?11hj%&4Bg*+ZDpU~5;YPXsMzh?B3Yl~Z53$3rFw3V)HZgn&I zXds~tu03uw7wx-?&_>rjw_4$#Ev_SO)drTRqO_f^lWuhv%DqSEE7w`KdJ(hDc0#Dh zqoVL+Mkic8kE%k>=v1T`?x;u2Lu>hoCDonoQMY1kY({Af+?gJ=5iL@LEO$1xQ-kQd zR`f|l;<=d~nYDNpA`?&7TKtlla2^df@ZTmQu0c?XcgJrddWeqSkW5-x2$B3lFEx4m z!_VXVQ;Cdu*WvM1i$6rA>7sZ+CiXY-J-4|fEgn?VGZb%OpEx@y!*KVeF0ydSa5wIb zIQs)5+(Eh9$u<%fNwBCVvfYl0INu?K-BF@=X_5nb-yMau>b9v%j%56z(#wN;) zc4x>aQn;Qm?o4^5vtKgS-Bhl}^E;=Eb7xEX1MhX{=E!(=E_RmDoZzz|^f;{6sRR3lIH?7otQ`3UH$^e%kEA9#1?Sp;q)N zmh^>$>NOpw#oHr~-L#t6#EVuRq+pv4?Tz1(%*3x>^hTG+#AT@C^GHK2{@{PhnQSYE zk`BZ$S#2#jUnJ%HuciOtgJkwR(oBoj!P|`8C|33V7LoAVPRTOKHvXd^y*(x@$O$zK z(c;sRrMX7VNxS3BoRIkWUlVHbY4MMfa@a1rV16yWAF;JwhB<|mWHq>lldwi-E#3g{ zRJI+GZDOqxZEpA9(re29)6J9it|emPKSb2hdOng`Q3De0#~M(w7JofiDAB+Tl$Gs6 zTL3u!OlF{1E&d&4NNxutBF~dJ3%%*bF)pq?CwCoKl^ z1NG%;yoghKJ&)lGdH`zgUk>m%j-8j|1?9#u0MFyt`C*h{ur!b>f5mymCGaEIHue`nu)#)gZD_a8v|Hg*EZ6tqfAYGFuv2{Qu z^Q^~tb1%GC(7guFdpK{Ng{ozQ6n3Vogr0wV6+o$)TWeq9yt)WQIcY!6tDE5Qg>Rr82vo`- zo+gS$L(I`Ym28a%OwM*9ut2uJ^CcVNY+#}62(8$xzXuk{hw;wFiu@T^EE_|>2x_T2 zxLj6aONX-sg8MN4!`kt|_$hc1@3dPy7xyCHx2Pu6?imNc{c`QYq zLJ8g=ej2BzufuF~x5l#&r>B2nm~+aDI6eIv+h}}>yf_8-b!ZfACo%7(q!k7|uhpt% zImDEr7Orz8#M}p`V=-$XW*|}+RHwinX-GAoCjL7mvoOu`L5h4D`wE>YW-G*e@AScT zI;@5{=r)mO4-TufEE+YuL5zdWQWR*DhUfYC01EwvV)42#Rn`PR&V&cvJ;eGFpWRN2w_lC7>cCcEI6fz6TWO_THR4Ixjs*|?Um7-v@O(-(U) zCEd}ua2)K}+?&gHAX*ZT-V(kYaT$R&-g23O+vyD2d#ki8YAAOcb~EXkx)a`*49B~n zXzhn4Dw9VU61J)_SR#%LtHq}#%kTn9Z%@L!bN@;QLop`?C-r{ql zMAi&M+P#_Z@=GWeTaR;bh4ftqzrH5>!5$O+lEud(n3v4S()dG$bnHHaZ%K{c|KIZR zTS=nkmy_w_dkO!c2k}HGk!fo(6GgBZd7Qnbj21ujk4&|ag4kGXMPFeio)l|R_+>vK zEf-m|^lvgX?Hi19*PM7EB5WHa^KJ?n@Cx9 zeoCzl+(IdI9+!M!(BfZHBp0vMt3M&q)|hMOLVS`J4`FZDPU2Wjr}A1n`yWZ|fU)i& zEq>+sNm{(u`4N0fSnJhqWg)cuUw`=NKGE7IlX6xem`Atgl0Ufrg~ p&`B*p;o&n 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 z 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%0DdES-W^=Hhv2QY;8`AE;r=N|Mb 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 nZryr5jA0UWK0`f+E$kTi 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�=(9&#zH$U=v%|!F$y6C)6KthI3ru7WMo+^}xiP zGmH^@Z9YSv9Okir6|AFPuSb1=Lmc50=cwmzsBiHJcX+@vUhwAsboZhAji`@tf>R?O zr=G$zW{iC554&~Kn87;g{mAny&vTf^0v551HPrpu)H`^GUF_iy_52z21uk)gTim0b zAN#-D`QwPM5B=ZI=Ude8@Bwp1{~gay=pkq2D}ThTTf-K%QQ!BJ z`V3dNG4lRLUSAAi2*Vgbz25kby7^Pw;Q?QpzxiXXzX!eOLq7&Egi+M%H>tOuU=(Ah z@1rww`7GZ{@;VpUpX^im=IJvt`gK)5YyN{Vf34;p*~babsQ1%&q2CjIcX&j7A6Cw9 ze4k&~&kgGbFlg*Y?ytb}D%Onroc>E(;TpHNM}3})d~SIj!myF|Q1_w_{TRR?N}m{G zz5al64RM6l`{&wxk=Lb+6|7<%Td4PUN4im}a9#42S@>cF5dG?jTEar^;9@V;Daz6B907DqTI3`e^@5A0- zUI)2f59hS*>81PD{q#M*G+*vL%06PKUk7>p_3QCL&zF0=Vc)V(eeOKZ_5P(^kCNYKjJQ3=8e%#1^wCk3>nfe75?%pC8#{_7TKTk2ixVc*CPsE=@h zvp33HedqLFd2u zsLQ%Czf1iAdpN`~e%SiSy|&nY8|D69x-UKd_R9J9!@>1FS*wvhIuTaUQcpKo~JQud zmz?yKedJeepE_TnUco8`{_^wr7SB7_yD~p~A-~}H3fH(rz5f{dOkfgI#{SFHt60Oj zk#A6MV+Zey{KH>y_cp*Gj!^G^O#Km;xH9rqF8EiUf4%1PS>Oh@c)%0h(8v2B?I-7y zdt7raeeRu{SG^#5zTA_QKT98VZ`SMazVli3k;4L3Q62Z@+I(>B-e+^{{WUi({0-+l z&QPzHQS*i+lCd)UW;kzca@2A^<;x__K~CNPO9Ok)Q1{4(_m zzI0y=a!qXGEq1Vr_t-egDMO0~o|G>i%)+w;0&F`3)SgFKd6-=KHKO#}@1KQSWa~eSsU?8u=ad z0|x)8J5LC8{|5CYcJR)~PyditPQ%JUfJjQo!J0gre>&%br+`cbbp zr=IzDE|+FAwGpzlm=g%w8m*h6MMSb4H+4V_c3QKtSk32Wl)AQ5JE1+Jl{~ugGzv^q9 zXUMus+~5|UP~JCsy%eA0B37|xe7={|_jtj`$36dj(5F7f6^6gn|9^f!ZitVl_ur#W zAE)?e^lyA?x9$K}xJKRo+Wf}j`fu?G_jtfF>h)sZ#?4P)73=uge1<+nY~ar5U--6e zKV__79rb=5sn78&xo_wCyf(k4-yS{mEgSu()K|F0Cp_S-*X=Lx?VUwze+M^Cf5+$d z|GxXbv~PW%cbwx9SGYl)FLTZ+*0F(2Y@?oEqb~C#cT4>qAB_29>Jwbz3OBgLCp@Cw z&s+C9vyO-Nfe#a?*SB&>c^_fMn4hJd#{w3yj1|=D?|trldcerXyKx*#SVcWw{{H}9 zKG*#m5_3s677L8U5@WH-nEV57EJnsW$GkHAN8EEU z@kiZQ-2E{(7LWYjDTqVnx{1m(V927JB zyb}wI#RX$=!&uCJg8SYPSAI7Z>)+Xp#n30Zu~=rTzn@Z{A^Te%3kO z^}asn`A6>kEcYLD?;j89*VoGV$onyhF-+o1{k-IKzaaGxhCihJtaH5UeSOgL^W1v@ zo7gg5k2dvN?BE@Cv5)%w@!I+FJ%8r=SWJHxzUQ&6^znHR2aLrDSe5A&Bza^k8q3=BVXlpZ(s{=jrT(+ zhcSvVBVVOn#|Acy{2lds>|x)?KT@CL0+&WU@agVcAq-;# z^?BRWJ9vj(Bj2Mwz#)!|{Dk@=&T(PneczMMF9tD$djC=CaZF&+$fv1iF^>f!e@p!i zyLfNp`_zXx!m*KGP+#F1H%31A8SZ|<7{Ms&`$)Q336iIIP#KF1}l zjQoN6887JJ_ilaO2=$)&z1;JC-F>}le)oNz&u8eH!vYpj_peiLVjFLbyf^CB^tUSe5A z&B%ACckvz{jC}M5xciS|0+XokzfQf0Eo>Y4DfJo7abe^S)K7TEi;?&IK(~J%1~78#=cpI3gk>XtNBtfjuxI24)JHhMsgYk(-{KSQjQoN62``dMxO>z06QUl$ zD8`I@l6o35m^Jcc>NTum)5s60k8y%iBR`|Qz!k2I{E_+@FOvH~&)<)adH{nMGV&4X zF-&06$mgjSv5XZX-=^NdJM0?y0rfFX@X^ShrT)3@K0N3}{r>S&4`LW2M!rG4g>Aew z@+aySdH#dh7wY|FsOK<`1tVXkUd0;LjeL`O8#{PsibDi&tMjFMt(y55ob6z@}AFg>-*4;0o3~mQ;%W{<3>J7J&jq+8Tmc+BcAbM zNRX&)5v$JKVTmRM*fld9GAE<^4=fn&g;hj22r0k zLOq6YOc?nT^$g}PZ{&;A%UH#lksnYW;TR`Ienx$POI#WG4fQA7Q|>;a7{fT~ z`+TH6#|18pyyx@ze4!r$sQV|Wr!j+BBcG>U#4=Wle4Ba)@33p+d(;Ow#F3GoQD5Q; zH%8v~!`%G@Fo+@4_Yti2i&j0{+ifA>-A}{U+eYR z@Vxzn?)AIH4(iua@>}LT;R$tK>KC5-=o`QwhA@l~{IK%OOoIKm0)&&##>8hv^=#o`w||MN}f=P%^t`I6iUx2X4jZQknpME?VxjP+hSKk#GR zJ*6;Zj5||dKK#^eRO{--(+43+jxr|)cwxXBR|%iGlr|&^Y0JIU!))T z09yUuHJ_tT1Dm)o_S2-^!ZzMw2k%htZ$o{Hkss&I9mUt?ee?-qO#1$$=kHhN3s>gP zEoYpnfv_q>5OFYG5k-wpGhaA)*ezIt-eSkd%l%Hc-zm;;g&WlC z$^1Ug$N16qJIOwOf_uIF7(l&#gnAs)m@)E2>J@BY)5zaZf50J*jQo`P9Jlynhps{w59>i*^1kCCcB= z#3|3kNB;gG4*B>pKHwhp=P_Ay`2}w9 zggPJlQkRco0&h|0*FVkWDhiGiQu`iV)#Vu`WXW-JaEiwnkLjQbYl{>9)=b?b`_#^M8G@rkiG=JgTRjKwo! zF~sX8rWuPBd0la#l-F0B@Oq1WURN=}SZpyCbG-gyow0b&Se!Bzw~WP`pZWazDMCGg zNlY2}?9bwTh9#__e!t4|GS4emeWUz@K66~)#^^84mpotL`i=65FLU>k#586xheg!) zl`-=9H_A`wGsQVBaEUA2;1llgfO`KQ_Wp7&kDPC3ocm&&|AU@CV_(+ms$VZ(#l2ts zSjGyzHov9M4i9*i{$IiO3F`H3sCzJvg*VE-v@g9M$?uJGyf$CqTn%jE);MpCdL3KX z#xCCD1NN|wLmc54^?AOfuP67d@A1~Sk9WPt?R%O({MqjFGr=XUP``f3uXOn|W-yC6 z%%h$kth)Ij3}Y0Nm_|LnM}347oEmw_ja6>Jc!ft}{*3w@H@L+;9#HSs`_=BeK@4FS zbv{cyhk1N3@mm>hoTk@6l(7W1JZM`(Nw!F~A}E>(Af+gy&QAlJmV$Ue*oKFMS|JY+%#KKTz-C z0Eb3?MtzP;Tp9Tz^%Gts_w%2B|AeVWFotm>e@DHG57;yEkJM+lz@?GDNc|VM{d&=d z`t?dtPh%EyM!rS8jUBu*@+0bFoZ_RA-%@|VJsym_ui?(=#~_AKpI81J@8#d;V!!PA zh+h6ZD>fL5PmIMN|85Y=jK#&5yZ&OE-+x6Pzi)_Met!@vjKw2kvCYq4G4fSzJ@LR; z%XUR{4Gu>wI5`^8F29@%CB4&9m-ZB>D`$U}ZT$Jw* zamRDevAMk`{d~JTgx=UQ)8h5xyz21rX1%1EJox_h|jG&%B zq&~tiKE6?YPM;M%;m+t^_(g92MJ!-Vd_9>@3feSJRP_xH1% z=XG88eILhd4cA}&eJqd{v5YmWV*?#*Vhism&-1zU6V}b%qV=_pHt*d)2b(D8jed;j z$1s5@l>I7s4eQuI2b(C@+s`G}R6*}sY2 zkls@1d&nag#hB7RIOh44Pc+sr^hxGg&J*Ll?H{=IDg6QWhd9DL%Kh!<(%`+VJLb2p zncEuX`PP9lPv(=&d*!i(ZItswo2DPb1ST0ik2==l_LK3FL-^S{+)f?Epsk@44{1f zIC%lBt@IbF>x-c)^?Pe>y*ZDBs7fKfF!rz0Bo9KZcZfZ64!( z91}0p*Y-^*`#;)Gvrh)Im{<1ilJ~HWL#6-p8RqkLp$EO_!vM$AGspG4ceaF#AG%ZQmUG7qO%~&mnJN8#~y=9?J6^kdJYOn`io? zx2SKQyJi0!9+Y{W___6>5B(_L_tAcYePWo#4CXM8@_7aF5>~MOLVa!DhO)oSRweU#syGWpxJzRL6K=wK7OXx~H5U*rCJ zy563XeU3e+*FFC?UBBV?>+>IXeq7OqT*W3S`e#C$NZuNeud9L-! zzo)Hn{vK|fF|W13^Q>*Itt)}^a{?Gd`~0DJzFZ%ppTrcVQTDZ-eV*)(c>WY;I7ivndMl-G&$q$-CbqDH zU6jwWy|(DtbCZ4h`3?B|MmSbJPpvmo`ZvzqzSrK)Mc?zq=KB*wIp3Z2F4pjdC5w1g20v@9kdy^d;szlUTqe%6a$XM+|(aSs%hT?c3jr8GgT68(dpY zTw6nYAFMI1t!b{Ud9JN1uB~0(&zk4`tVOP^Wv;DNuB~;htxc}2ZLY0duC0BptwXM@ zW3J`-ugUj#z?0JV_xbt47?x1(zaU@X0Z%W~cmHWKj|U?dMLEx-eS2;L=C$V7-@4%1 zI{h*;m(?{e*H#bLa=tWq3CnoL$d{Xab|}|Z==E`lJF$MHtarqE`#i1Rq2I$S`{tGX zAMM-cC)uxn+B~VRFz1uT9OhA;SLZ8DzlX^o>+wzd0rrVv2J_!&o+J0S_gD0;&-6EA zvrqi%jd%2ZgSj5#9Od)u`YrpM@QfF{qFnFddG`6wJug5%gkg-J++XY2=e=oPd(XS_ zzTvMm=i0?8y*V~{j~?33A*7tY-7ms^Da@dJzXG{^{&V}+=r_>8Cd&P_o_*f;b-&HI zcCm+jl=Emk`}xSe-DkjlLmVsnKicnpjrqQKIqyC0zRu)!F8gy><$GhlM`Ny680UNB z;0CqdCq16u$0^QGp2vWEh$~zxecKyxe~Wvif8+h{=;9pQ7{V|{Fp6^Cclv(s>3i0B zU-^BI?;oJ2om++bHRb%?bbX9{3;5i;TfVPHJmUrB`)NJx`!4%e_PyEt`E%E${P}C= zu>(e9idvJyJ_hg9Q5Ar;1KSRHOC6xW_ zSDXFqI{TbGefxX(to(e~^*Qz_VFl&$Y+mDj9UDqt>pAqB*izPOy^hkKkk4?98>O%H zj`UA>!#jGE&%^Gwpl6@E=i2Uf=K6|ue|g^T^!@C6E_o08p7#9Y`>g2M&*dV{;komD zyVnoD%KW@#nft)^AkNJZ#MgSP@d1D{TTZsFpU{y|15a{i&%T1{*8SioL>UV%6V?d&v>)FsW~Sf`ca-& zgglF5oGX1dxfcT%RQmS0vKLbN-fuN?hcSjJl=BzKOIXH=(${)brQad%;Sfhke?or# zHuD~tZ#ULZ&cCF;#xU!m_@@0H&mH3m*UCJ5^5A!vxg!`uIgdl$#Su=F{^mQ)zFR!u z8Rh=Aw-ddK(zm?>_igX4^li`1@vh!?nK|V=dGZ0?(EHu5?l-yL#xC|y?mr{HpxxK6 z?7yM6!vh{s?w@9#3O2B*>^~)+;{umTKe{mIkj5OAP|lP43#MPjI<`>uZQkMj7$-`< z_!rIoB`jkPD}Tw{@1T5Ml01z?EGhjN`3CoR#2emGKJQF^wfC21J{QXVyY>-1x6)6N zZ!z^(%>D(G``dn+eg?BB`zi9bs;})kQsya;m#~k+7wXs8r-2T(mHi*>&)8>yD_kr4 z$NsYUJUx7#b(|}oZ;E~f9c;Q+@d``*89`U&je7%zB7 zx!(Tw`1>z6`&c7iX|AmU{vB+c^Y0q#nSVc6>-@dd>TqqX@b^(`aBiMwZSnU*Ym~p= zSpEF{#Tw=B8`ds=URxLZ{97l=d2Yy0c*YA}(e*dYyz)F7z%#|QiO zXZlY(*M)BMD)SV`i&(-6R&jvx{oizbhkd))d**r5jXBpPu5gWVzDN5@p1;C1-cat} z=eYwM;s^tO+sqsPJH{^7{_d;4A9BAW>(lt$^PlU#YaaGXpj`L5^V=VKm%6T8{ zU)kq|Va_jta{ovBcHcYu+kKt#U1XS`F!MhH=mD8FBi_5;ir#4P5N`5*1ueM4g3yt4nJ{R{iV|AG1WOkf@h=-s{g z=hv>kvd^~u&;tc0Xe@VW=HExyu-R68>U8sG3P%Acp|KQaB-KQnIsrSXQcAOEN3zMH-WL#XvrtV?4CWxqsT#X2^Weuun|0~{*- zIr$2=xKsKG-fMCA|Ia0GG}m%|7rh=1aDuY$CikKb{TRR?%Jm)cES9^wZ3d!7S!b&Qm3?qk~QCVh`o|0r?OoxO$sm9+Z8p=cOOSkg`5Tp1>4lU#PF`n`8eHmX+sq$OkyVsnXw&@9~Tm zrSJYX=6nMf!Z6D7E|OQUiZ!KQCvRdKyEwoJ%IDej4)?#W*W0oRN1n$5mX!X2e2Ht^ z;1>5N-$$;0u5X{SQl4`pKjQ_jct_X2ef9Z%f8XD}=S{q4OnKi&`~H8&?@J6~1m)*j zATMGK>)1dCo7lo04pHuJdu{G_m31>^{fc~pTioFZ&nTaNCBLET-*Z0rrhU8blh`-N zbrfUD^HSt#%wqY4`gY$8`&F@}?Eh%L#y$;nu&L}nARplZm$B z`8?!43}E<$`r5t`_D^6^d0vVcd&~+?Bf9C`H#q_ILFO1 z{mEO@*XG#ryd$2J`7Y#Fd;dS0@1Gy#`#;*Z``+2#?i*nLAcmCZMag5Bz?9N2lh?6< z&I|Rs?9;~yPH~2Fl;@}Q1qCNYf}l|tN&Psr!E#Ff&&kl)dD2{my&X@3C%xLzMGGImb9Av8VKJYPh%0wDEHTT75WWy zl=U6*9u9E)LVa!D3HvW_sXT8*zQG+HU#PF`dt(0^-j(M){crPmxzUROl%Ln5eQn<$ z`$sXRJTFe3#5Cq!sITptXa6!*l;>5+>*!$nh5FjQ9ro|zKzZJre2FVu;|8}VKkq&H z8LxP^{k!@8cu-q^e4EzWxi385%bb2?-UN9DvzU9KevN&a*uu85|D*i@`;2go3tZtE z<>$2_-{AqzFVxrey|DikZ_4wuUh)5!?_mkcDBtgH_vO9^y-L4IUPlMpFVxre?I`>A z$on|N5sq_vYG~ z_$TJt8svY^WS#QgzgQFe=bhFG|9P@C$G-!t_V0bx3V+|Tdinc=HLkpW;^_mw_egSB zz#_`?s*pFajUA=mC!gXR7fOFke#A3glz!p8&HP0yV+G~>_8gL&hjq`j)%`u@^Rsri zwjQ~*_TS6QVa@VEJgd3M}C;}botpW%KU3s^+Ce~Y|}J?ty}0r?o`xKR4R z_ciYo!6?R1&J!n3VGi?3ze(P~F7~uO-xJUKn7OQbrSE+|=Eo?;Fpde7?_>A9vcGk# z^jG9N+~WaHctQERoZHNs#{w3yiZzt$9r7l2aP&fbyKh_UJLYD%vFi1)T0mHyKQ zm~-)>5B(U#Fv|C@{a~}cfey}5_6Hu*AL0ndxWpC8^`#$T)>pBKZIt~!`4C4qR{BTs zGhXnj^b0@K%u~WLR#47UCwH)kEu}vqpWqZ{O8-vo{y;OA2fgUS2u3lDa^9ETFUE7? zn0)5>8SZB>hYrelAMNMar-&siEBo7@qXIt<)+N{0E7#UIKM&Ro*VZTdeaEOU%=gba zQsztkF!Q;mFpD`XVhO8QLkFAK!7j@4p83r4=D5Q>%KldL&Rk#cj=mpZ_Lb`&?b~x| zdCh*-@&}n~Yl~}Zhihw(YwLh(>yT^ffotoDYwLw;YmoD`hPk%Jf4G^~no`bZOuoc5 zZgGcal;?XPzv2z=w*Mo|9B!2BUw2*ON11)(`Y`(@FpIC--_Z}Ue+o;=^DgwS=%(jU z`bBzWtfPbSeY`)~yr&QS7{o9}F@|ZB`^j|~dO0j&Ff zKKU8!V9k+*U1Oh5nQ z%sDvN!6V9fazEbm%UHuY%Kn0UiC4VY{!cLbh4H!dPxRbxQ$H9q^M){nag_5n$Q^8A z3)|SiciMVw&Ym*wTirkN+zYyXqWL`B_-^M%-ozHRv5P&F>+PR|ald(vHN&-a%(b=5 z?+5FV-#6AP*VX_(57q_W?{~?33-taZGmo{%wYAK(e4i$H7kk*p0gh0vul{87+(F1V z!^}@H*IK{Ex~5%^vhQWT5QZ^=Z`#kZPYKIdQTDg*x8(i`*SNtg%K4r+7Y};Tr<_-m zJcbEODSdnHdF~gnf;Bv$oX_5`bN_(H7wS*hXNfCZEBim%f9}2I``Uhi=gV_?)4uno znxBIZhB1b5Orm^VnmmgIEGd15yn|g_zEI!&!RCFu=))4q`L%vP>DxTa{Rl>t{!`e@ z<3cxxAe7^#D5i8hyp}yU>EcR_H``f(7{XPzq{+xV?2Rz~l&nVyD{yDnm&qM2h zYwMcttF^`V%X;D3TKo|6xmed+TRVL3tZ}}7)-l)CAm0mXmuqXC?~}E`wbkL;+Tz;U z;o92c+Ir#IdgI!9=h_{?`1@G4oklTwB{*%l93T&v1?lT;Uew`fbcScaH}=qUYzD z`#$tz0Ofue@*L)|sPr4;p`T}-6T=3|{T=!(>|zgPe?&gUDXw3rZ}*+B-v+n1!#&FR zj^rmi;|1^dq@2f`e2WLX+y2it=Q@iU`wVb|OI+dQ7ry%Q zFL1wzB`jkFt0>>EPVQhAdrJRibLMfOTbVCJ9>EyKmHvQygbQ3M{VVz1-v34BoLng1 z*F)|_KL(Y4h&+NZj4S;jc^Ru%Q~J?gV&;uu9CIk=pC?Rzi+jA`9qqny{nIZt>)q%< zFUr2w3(yZ@TUj3^k7ELpO20r}!U|TE{+-;#d3n&QoL}vin)h#@gH4q0uk~(9e?UIM zF;0~JntY3UJShEm(#-E*4?`bjayfsA`xUHX17*KYKEx4@mA=-~=2@}N2Di9V_P>(f z(ZzeZmG^Ctcd&o_lV#O z<@`6h5BELjRr*o#I3_Tu^tGNgPl0_(SjLL7e~Y|>J?ty}J^2wYcvbrD6yFE*VE}^| zMtQz(y1vG~ZS3F}=lJw1U;XpG;Qk8NxUuWRz*;Z$D_*_-nSHK!!@IJ-pM8QD#)z_i zjl6*lHkH2GQ_g3@K07?%QQ5!5K7AbE9M`!0Rj)p;2KSrT!7hrA8*K55v{RC#-!}aocdG;w_32Vy!kM`|8b@ppuTiO57{(yakIKip1 z|D*l&uQi{a@7EcNA8zcRJWty{WZv5Tp1DqV!7$H_VFHs_$0oM1gG=1t4)-YE*S_bO z`!3GOjj|smk6;3mFVwHHPYoSxDf@58&lvvo=5tG-gMHlL73KTA^nN?$I^Ypc7-fz) zCNPOD>|hsrc)$~$@q+UG#(eK5IK>&xae;FEmi&MxJS+VR`5j$Z^ZB?@?mr=);T#uA z|7P=#F#EdDjdFhqHgR{C-BG-j}XMeL${UXnb8WvpWZoA^#!Z|An}pJz_{{&sHd z{on5OS?0~5{k%%bc@M}(IL4{cUy!eGjT@zZCwKh@eh$!sUi722Y4R-QFt79rYd)UW;(jSvgafWlHza`(}0gp=G{ZZx| zeHg$X%JYnn$1siwrJo}&U=hnoKl+=@JaJ5566HKu@;nx>sPwDkb!?!c^e5yqoZ~|2 zugSN#!@bf!l3(zKcct&noAdFa5B(_5Cr4huB9@eXmAsA(bd-LRyn{XLEBz7q1gAJt z`Zt^ZX7k=IbfbJtJbv;JMlh=M z6XYpOV@By0$tzgHy3+5G_i=zjr9UHI;u<$f|7P>wZqCVtZj|Q}BoAW*qe?$Zp2q?f zm41o5igj!#{T}%Mhd5IDWAYg;aH;g4eup_1H+s;E@_c;cK@4L=>Bq^Fn8LKuFOpZV zhIOUCA>ZL14@&<+e#5)%70o%w_pOmP(7~qC?~?a%fJ3D}BA?*pN{l@P!=g`C!wo#r>hrEwN94Y++`3cW>QTkV#|1Q3#=s`J8kUWAhj4S;Fc^b2r zQ~G)G5>~LP^lRh}wy>@Ad*lNg;z;Q)$=A5Stov8Aa7y|J4$~^zQG;tmHvtRf>*pLeRs*6j~9LDM|nPR@)Tw;tMqf^MJ!`Q=~u}c z*u<97?~?a%fJ3D}BVXYLw@Uv&e!??elz!s(nDb0w8Z#)*vqs)P2b)U2Mc&0e4wU|m z{D4P1Dg86~&EEgL=6zf!=l7F`FoIE~A0tm<8Z$~iPhP|lmX&^myp9ewm41i3hkYC< z{X4nq_nC8XqX*^r1js`e#)#6-k>|01MJ!_l<@4&~4mPo+^n2t39O6jnAIUFx!@JUd zDw}iipbz~h=MRxbFp4pypC->?0gFn%LSDlLI!b>B2S>@kvMe;IM zu&VX>cUl=MSXKW0_O5?Fa({$lr9V`9Q>8yAU*ZbaN`FUwz!RR8{+-;*zXyF7#1N)Y zexK}mH}~!O0M}8BzeCr1n9IJuo!h>@om+eVw|o7W@3H3(nBN0F^rQT|V&n--VoK?^ z$UE4@p3?7=k8pxhrN1HH;T{i4|4e?x8{U1W7un8$+BFOyfXhIOUiCGX<^hf04zzQQ$bl>VOlh$lQN z{YcfEXAI+*KzW`?@(kuMuk>r=4Ro-n^gHA|?BhV`kIAPv!@1I5k#BH|JEeanzuEhL zl;0C5&&Nyd#{dSEewsXsIm|2l5_tuySX26;KW65QU=(90=g*MmFpmYL?~u2!jUA=G zCg0)?_e%dtez*7kIOmUY{xEqIV;EQZ_J3#F{cy9dHIy~i))9X%u^#yI(CT46>y&G2 zL3w_Iyp0{~Vjl-M#4%2Ait;>OYTu)>zno)F@9;wXY|VTQIm}}LD_BMO{&n&Ows7!5 zeY^oBSxA~O&Gn^~^9r*$8w)ZFaIY2kc_qX3W59_R6uB~C#TO-PTY4ReLv99!Q zKAMN+_G3Gto=s_RK_ep%L=_fIT-j6f6 z?5DXu#W{u>rXR&V4)MADGGf04*LJ^{*l)zOHs4F_muHRwu5p7&=1AcbXUcpI>)JTN zF<$YB^#KfG8Ee?VF7EM!E*M*JVhYok!P_UAp8S5<^m8=YV;~yyspyKYPDPul-Da#6A<8<3id0 z#+)wZ@t_xd=tucJue;8Eo-e(=@=50W8rZ}e%I7`WpR>;rSGZR8fBIxIj~D%zLpe{K zyn$n!;1XB3#zNCP=dIq)%X9n~z@YMc`+LXX_lY&hd0Fk}V72FFwdZ9mDbI7rJJ`h@ z_Hl^vyaJzM&M}A~jG*in$ctFQ;al9VDEr%U+3|kX1J~B2vi?YZN7tvC^YEd3f7hpR zAA{DG$zzyDxjsU_j(dC(>(k2mDE$F3*Kp8^)KiZ!gGeBRr=-hMBueBZ1SuB{uctyiwC zMLsWUgKKM*bGHUKPwPTCpU`KS^DTci=iD(mD9@&nI?v(u>?N8We zg?se#{&M~Rc@Se5f1!SbeH`pyK{x6Q?CvrD>(2G9wqg-Dl zuVEb<*upjraENk0JE!aO&D^f8af7lSB9CGm6G}fxp1~~Ulzxmkn%EO_$$2W=uVM}B zDEoH5A@|2PQTkKz1uk)=^rK&3&M$*iT%w$(PVQh6TS~u8-p2tBmHwXmh$lQN{fo`N zknaP!QO=+IBGap29UIuf0m}7T@|(Ti2ir>D{vNLJeY8&a{#a|udHVY1`w+(jW>C)ep7sM`|Kv0Kziz+4K4q+6 zUD^Mw?$3Gd64!WC=F$2a`dd7_L)Ux%wE6yoFoI>2-=73|3Nu)Gu%D%$!{R%1{g}BH zxI)*LnRAopv*Z2&Px$m;|IE4z-t9i(f!g!Fuhv(2uO_x}rMz#Se28OQKG>hopW@;j zy59cYp7Zf-l-)&5?yI^4J3xwba>K3GG%zct0R)%#~&{e4Z5=dpy2(yx$Lv4#z$ zKNy(jj&O=I6kq43D|zrM%{u?kSVGx9e7U)w`U+zn?RwdN;=UU_=tbE-ke~337o~r* zbN*Q~j~hKG_m}_w$?{tE?dLe>ysZnat!3u0hIqa;%=L56>(J|BA9pC{TYZ&z?+sq@ zj&It}f3?}afF-P;+&@p?!ZOOw>q!4%_oL@h`W|v01~IJkwK-Pw*SNtQ z?orOG?blTLMRIu#Rq{GEl=Ut04)$@V^k4VA65n7xpA@E1zVGYqcT?uk&h<$Dj2C77 zo!rHIUi2yRYVS3ozryu{>q|;MNiNSZOJ2aDvc61S#RfK&{)RmHjpp-9V+Q5tx23p`D=wMUnYwzKknDdWf4CQ%h z>$l4D#^mzcmgFm3E9-aU2R!3N>BpISj8mK`?~@=;V;&1izeHZaIyRKPHiz$<%y|be zi1NI(^&91R6LR_9bMh6gmGxWlJ)ZEa^tJbJc%MEFl=sutCzZaRT%KEqJcbEneTqDT zc`PXXA-VUP&FAGqKL#*}^79+9eu_(6q3mzScX-6J(tq8#8qDWl6I<9uInV3vpHS9o z=M<(N#h9`_NuI_W=9T{IzUPVcu5U4)s~hF}zwUk`WghLEJM;%QRMwBlr?|kS()aKl z4z{qZyq}jmfDw!;{Wy6NGniBQ+8ihP7rZ{Wex&r9&N6%T;NjaYwuB* zn(tK!%P7BJ+Ip|jKQo6sw>!Cub#7(7k35J`j46HXJ(l#3czSSsQ|TAUOK8un!gT{3 zl;_zZ?_eJXO8;#8-)cUu9`;f0f1!Uz4?VBa_mc-PhH<5zBu`@=3rfF3F6R#YIrBbY zj9?UFDBn-pZ>BuIt2}=|KE|oCeonr`4Q`eGp8SM2yes|JJ%>5xvA`v+aExlY(qEDv@QOF3e<$~Tn|a?5hEcw6lst(U%wh@4DA!lW7r4cp(yx-&u#OFM zaDei8a=q<0>G!a&tlyLSzMbFq7(w~G1N{?T@rJS=WuFQ<*i`n9ktZ;X8KvJM-{28X zO219s#Q_eL{+T@Y9p-!rSi&0CQNI6$^*40U^C*2Ec>tprQ~Gv}3iqpM=W1}h#XTPI zj2D#izwZ9M*IaMsap zH*y#2Jj!|>c>u#0QTp~hirlZ@8n?JZ`F`5^meMbf%jZ?e8`xCVx5>LWz@gID-Xr>* z=JSkW0yCIJ`M%nISLOK|a(Rvi@)Mqw^*5U{j|aWVeD*!k+|S_@=eWQ%Zcx6jwqH%@ zr^w~=^W-J0D(may4z{tQ^zD1BxWC2NcbU&Ofl16_4(0o5`(2giFUjTecjQOBDC=)F zXC4pwl=m(MGZm$9m>uai62#*Wh0-Xrwg=JSkT6y^JA z>krEF=H&9+*5o_fE9;NsXT0HE>1*%N=6yQY#UYMRzOS}lM(Kyio-b&OfJu1PQJvI zvR<1j{uj;nFNrCX-zROoU+G_&L!N_+z6ZU^dTlO;ehb?Vt}iP61i3ti40#Uo%6e_C z75xovA6!3D`b~0q4qfs-4wUuUT%NyVz7Ib1qx?Q->o3al*5vXW_T)!ADeJYlGR&95 zyfUx0KC1M+$SN$^n2KUaD7ebXUXL`6v@k2QPyj7ZRzjv@ZkEH((jVX za~P73aiXl(=JGGi_g8*jwfW`;E3>Z`eJJ;@lGm|?ZKXf|TV~%Cu5p7~JfM8uiTr{$bZyMOZuFpB zZ*w2_0~p2#Mp3S}d7S%6%qsoU-!^ky@P@9xV{*B_hunt&3@iO8c^s3NQTjRZ0+!HG z`fKt%p75;n4@&P!enup}-ei`dZ ze|RwOHN_duae-Tu&)buq@oIbj{MFwVH@P2!7*YB$@)TyUp!B={(mZ#9Q=Flk-{wp1 zuknCKJfU1~^P9bYf%^r2jD^APtV7{>%AQLeXnmiu`uEB(RU%s0X@PH~AVl+W}1 zAG1DyK@6en7syLk#hTKelP__FYo+h{zh)jU`Z0iVo-%nAYgkwM6Y?1@ai#R#-@`oU zLqE!SvgCQJU{&c)$Y(gmh0?#hEBAiyqdiYXFUooHxfq(!bgKz04dg zbfcUnNuI_W=9PY*e260)EBzz+#om8!=0Z77iadi^%qjggc^3ybRQgBqGhXnj^ds+M z=8a<#(Z)Bc*>JKj9T`N1#dLm%jSEhvXxi;T)H^LOGw-+bjM1e>QWt{)^Fvew6!9$Y(gmh0>4S%)W6< zU=rp2z5i+Yb6nsOSGY#GKK{SV`UEC1i*MTRvCjZUxKZ{$kzeqJ!T)XMl=D2=FMp5O zr;2qPpxod8^g-Vnr7(>d%wZno`U-g!YuLaxc2KT=tNU`UE_3v7gOT?#=OE`>kS}qK z8{Fa!<@&qL-`nh;!^-=-`gu3*KXKoWL8b4a??w*>>^@?kNBf@lHFJ6~fC&`aKgoWO zUI=3tSJr3A^H|1;()Ycena_^_3}OhADCd>yZ9hyujtOOble~>R>?{2N`3T22d!fGL zHs{g89`;eb|DD|R{$`yI{V4k#@;(l5tn{^B^aITEI$?-ozHRm427JhXWkq2*)_Z87^>%E8L)*?+5zx z`nyrfmHw1`jtgAk z7I*k=&-j=Y61=FM&x+q3jpPOIXH=(m#`5 z@rHNwc+K;@D4&-gPhu7u5BBr)i&$3HKYfsy$BiEJVh}?p=XJF_FJlF(O5Y)GVH-P2 zzfV5I5ssDqk^GDoyxIPbFz@F<`92Zy7{)Q7^wZ>7%wb;X*T@}gVMpor$OkyWiPFE> z{73S0fNqrU>mv_f5JO5oN*>1qCY64j+`%Tclzx}Ij{_Vk{RR07*SJyoXYwoF@UHaz zKgyhA5JMP7d7c^aEaoteMJ%ISKPO+}3fD@1M}EK~o|OL0=6=2(=tenDfIN&*j4S;b zc>^76D*X<55BoS!`ZMwcu5hjNPvjT8;!Wv$f3!IlKL#*}@_feRQ=H)(*SJBs{%-Rh zW1j295Wa5TM?Zi;WqpJ^hH*?N{Tz7#i&#?nH=F-hzF+7@KL${~Uz$9F1*|^UFVZh# zMOj}bcd&^qr9U7a;TR`MKOHdVki{J4v5Xaz=dmPT;|8}%|3H4iGhUSb&E`MO%;`oC z%6SsxDNJKV>F3A`Si-W>Z<4pMi#?@3C7VLE_2bR?c+iXTd0in3_Wn;a^SV&Z6Ce*^1fxoSMZUo;?(l?Xl+W}3 zBr{I{Bbdb3?MLayF`=wak!LW6d8J<>uV58xO219s#Xb&{{+N7e;_~M881rT z_fz;jVh}?p-#1Dg#{?#ozWb+|{e9@i07fv1@_BLcBxW(E^b6!AtYKa0FUVK8#*Nb7 zlOOSfXQh9$`3IYGaG@LJ`*z6(IK&aoaE@~Ql6;MOJShDW`NiH3GbhUZGvqnUV?pVc z$*Wkyy3%iwx3Pm=r62qdGj9Z=7{e5%QNB->Jdb6pDE%6F1KZe9`aALi9`U5~ujF@o z|3mpaP|oiq_hSHqN0>ucloS)Pr}UM zMftn}c?ru{QTnrAZ1!8=5?8pxJ<8{Weu-Hh!6?R1_LJmk%wSgO@5m2$#1r1|j`De~ zUux#_U;u+C`*m^$o7htNUGhE-aH#Zm+9hlzxZ2hkYC<{RR07*SJyocXHP+Gw zma&3zz8ZN0+t^Y1Tk<^~@Tl~ozlzTv6PQFfPlh~)c`PXXI=O>QY$^R{nt3pRNz7sn z<$MM564tP;^xNcJ9O6jndw#W<&xd{tpqwX69>o|Ylzy5#i#aSPeb=us^LWsUK9utW z$-@}IsM2@HTiC{q((jWGafD-~@A4z{q3a-I?S1gAJt`b+XPZg8vgL(Cb$D8`iePvjT8;tk!u!MwKz z<@+SalbFTcgZ<`%{k+mIke9H6Ri!^BpW+-BO5gn(&3Smyj{%hDlP51?87oRZlr#HB zFp4ouVH)N0>f{Y<G#M7IKr{gKapSXhIgf(`bcwL8O&iG<@t2U`#8jr z(!Z0tK8l|M^rGB9L!QF|7M1>pe1bEaEB%|zf0LQVjUJTq6v@k2#hTKekk4>|OQrA0 zn>lf{c#u&wl0} zr$*kuCbpFRiTr|ByeWO}?>6)JF^D0Q^AyR;SjC#spOY_fjT@!!DVceE7{DOPc^vW< zwy~r1N8}Tn;aut8Z2o)9TyFHBoF_+Kz!H{~{*Zi(Q=BP%|L-+(1TlnRl=CFX)0oAa z((jP>aDYRleUzVfG0dF{czdL8O1mzP|n{Z zZ(|pGN`Fhf$0MGUe){*Dd9s+pJj!{h+GlmC|=r%sd|Sp&#Wub#e!r*i!lf z@)1sOs`M}9H+%mNnfY8O=gE-guz*FS-zOj97$-{K`-jc*{TRR?%6a1CNlar#>9@!` z*u%ckKa!vEiZ`Vn`y*!l1g0>Ja{dwd1gAJt`Wx~c9`LC2gH(T9GN`$x&+n8cLQcgS1V!LHKZ zlOOSn7o{KhQ)d1cCNPO|{sH+2$2d{?EAkEQaIf_Jbu&*8!x%w1PmR2RO>8OsCHWe+ zxKsM^k2dopF@jD{XOVK zAIkkB5s{$ILC$3zmnhW{f2oT7s~nL2Jt) zxW|LizuElb%-nADpqxKJp29R{lzxr8flX{F{Wc0hIG+$a9#-g3|Ah_i%tirN1TL z;{lIKKlVvx{sg8ljdK1Hc?GLjQ~It?Hv4`3?_wRQkbBGxLNoiZPV)G{~FS!nV>+x6J-o%wZnOSV8%`r%yNQ z-RMCt%6^zUig8RR{W`gWEo>|OE%_dgcvAYI&*1aM7{*b~-zD$k0EbF{PQJu7Zj`>~ zGtE3c3}6uDJZ17K*0G`VXXFc9;acfO+Gd^@#xa3%o*a1rOITL=L-H|Bai;X2K8x=g zdeMh+o-BDDi&#?nNAfdX@uu|spKay|VhF=1=P8hvu!2>k-y!c|9|uZ*PkzKRUX;G~ zbIkmH3}6uD{5kRhmawe!JLEka;85uw$WM5|tI|(&%={_LU>4>4ZSpSmaiH|QpUe4R z5JM>U&yeS^fJLR>Cm-S%CrbZj^UpJLxzU4io-}zD^H@;&EAkEQaIf@TpKs>ypbz~h z=gE;5u!Lo$KOvvt0+&kvsmr;b7kwz_X_B|Gi#?^kAYb7Iw@Tmp1$=)nh#{2oRLE=C zKu77%$(OjsjnYqip_wOz8O)-br%vu*3)@P6MZUou?v;M%i_AO`jA0z*JT>wLHnFAj zZ#M7oy+9Aj{bS?_OkrB-H_6-B#h%hXke~2^SEV2QVl#IflbAv||Ac&o3tTGwo6Wz( zJjaD@l>0}?a`QzkCOkrB-AIML5#*6Lu zIX9Hg^M9GSAH)!bQTCJMY0P3y>37I`IKZLOKa*eaZhL>m%qizdkf$(%S*1TApWz%A zN`FUwz!RR8et2N!jA9%UDCcjIx3P;orN1TL;}K6vKmFxqo-F1tk8++Wc^w^WD*Xld z3OBe_`hl-7^Mo*hQIzvk$ZOa@N9iBPPk6?Q(szHQna7KM44|ARPhP|_R+Rpfe2z<8 zDSg+_%;P~H`cckPCwH)kEu}voAK?V2O8-KBv-kh3na_oCo(y>o3s_Y8eexlWaia9S zUuB-}#{dRV&J!n3Vj43_zeV1`9`=>~k^GETyea+ISDX10n8Gy5`A6gvoZ?LBZ^(Ce zz@yR+j?6q^jA9JsJPqV4}igR2j{X4m9 zZ07Qy7v(%v@;WxqQTjdd0giC2^iSj$yy0Exr@r3IoxvRDQO@5b@8b|hO5gnrW`8gG z(2sKeD0v){m{R%_r`L~$4+~`3$PntZ7c`PXXA^8}mI8*vp@;kbw%!P8E zGIL=HChuY&2TK3x&v72;K`+Yv!{kwn zV?ycI$sKHATj_7f_jtsU(hvQ4Gk*kQ7)LpOk9>eb94Y+;`3g6|zQi?dlz#Nv%sg>SU=rm#dGaEbv7+=xM-OS@bANo7U83c(=XpdiD9l$P<{vl+y2z z_i%tirN1WM;vNr5-}~KWPCo`Pi1Iws@AG|r zKKz)u?)&=QMlgzc{s#3HcCc&Y@2SslflDKQq3-!YHQHG$nU5h@Q5cPAN*q84;aN5>iJ95 zD_F&vksnbX<2_D|{DJxj&v-HNnYo)khXpL6p1)1Ki#_Zc`3LH2+~C&8d%wiZbBzHE zqMj#9J&y$}8u?r5eH`M*$ginyaff>&fAgho{v@U`gL?it^(MBlW8|mQ=eWS7kv~zt zpy$ind|uS^B&eq_jTs}~q~69Z-WvG@^#@$x+Q^3&Zr&)y@dow$CF&KdVcp1&sE=`i z_eOq8eUC>x8Ts&+Ge5>Kj(Yww^(xk}VdTfu?{SJVBY*uBZk_;!FpPShEcHAVv1H_X z)CV}kk&%C(zQ!%?jJ*FV-TXleVHoxNdFn+hW5vk#sSk04cSim!^`)E3i$2uz#HlAR zg=r(-px(kZc8vUl`V{B5F!C4bp08ql^r4O;K4v60_VKj0BhMn3X2ZvGhFU;_30RqAzYVAIGyP+#K~ zcShd#;O6mT5JRZv$x$z05lcqCL;V)}I56@L)YrJdt&#VCt(!lHVT_=jzd*f&Wvm$a zd+IY>;L^ySs9(_Yb#6W{>UnOcCozR-BVVOn$0oLn{Dk@xXE-8#_o)x@4#!4*O?``dJQ(@V%FP|YD8^9FpQm2LGFFWIfcgmUaBSpv)DL*VvyqQ} zgPT8&H<&;@e~0=l_Hkh37t|kcjT`Iq>-;uuVVw7 zMt(wligR2T`3rT=H@msL=tDh!fqDrmST*uJ>H{3%osr*C-{S#~Mn3Q@ydN-vQT#>o zQ!il|D@J}meS~A282KIb10L~YQ1_oxU*Hl? zM*e~N3fH*710GSIm-r4hUlLOo+dlsKWw@Tl5=M-Co9kWdVITE8bLvZ6;o8XGaBdP) zm^S8FP=CM`u5phC)bqu@(><3sCNPJun@`dwjTy`u{qxj|SjLKxKTtp6887JjF5a)G z?)6H)cJUVVek<1} zKfsx>U+3oJ7P!O*W50Lj?%#*k=*J+2P|qKw9>*I@U=js*>#2D6wm_V1}*(DVInelG?vhxhQ&QPCkowI&oenD=D54bY+dwzh|1ATanehi?VH%9#i6PPseMe1d& zVAaSEsE_at$2h?U)bkCg%YMnbagDbg!d6U+Ol-)*vRLp7qNt8tY91UyanpAU-DJzO>7zarEiz(w>ZQR-l0DKb@xB@ z+_`bS-Y;{G$xra!*uSQ}!7X|YkH0_U`i|Tl4|u^VW51tz5Th6~@^R`3Okw_o^3pe{ z`j%N&uxgz5y8Go^xi9P7rg6UBFLTz&*Rf&jm%eSTcd&2dThw*FOZ^sm#{PTiQ(WMK zk-t#){188PFn~b}q5gcn?*6Bq8#B(=`(@5B`3Odh{R!$xOko-`m_>d64eBjyV-Nc{ zz?a_t)N{wi`Fg+1IV3;AJ7fO?^)+sBXXHaa?A~V)jA0!0^EuMzj2G!k-hS=cyO5gmoidF!E*U6|5TjyVQHw$AOW*qdviVoErJckGa>eiZvXfet$eS zUpu+}O>AQa`#3;--iZ1bXE-uHWJiM|g+&{MX(8)N`lC`Fg+1IVL~Bdt?8S`U-crH}VJSCp@F~ zr`-F=hu5f|*X!bW7~e7#@h^pg)@(AeLnKEx5;;S^`6@Bc*ojNY?*Zr7;ue(FIC zVc5t=sK@XIvqt_b^`CZgc+iUh45FSdOFf4rtQh$!^*T1NY2;hfJ9vwCM&AE3?mj{o z#t7bE0`>i*sAsT%MI+y%-p4x};{@+fpJ(M30=|-`JnJxN|a?#T=HfjQacm^&w919;Y}%z2C|`kYC}^*l*=LKj-dC zpQrOD`kwJ3=NS8!)YrJdEgtcN`uq!Z&(FL0{1`x;&r;7}3Cmc)D(d}Ku1UUy17p9H zn>;Z;Bsao492@(k@09B^d@%C&)OCJNeSu43fAQ+w-ulSOSj7(N=Q*Oj#1(FheD!Ty z{~=CrhPwYo>Tm1zdC`wLfA4X*HD14+TL&>hnTx@8*kO z6l0jg6zctL>Rr6Wo{_(&KEpXKjC}4_xcLfL#1hu9j(WZ+^*JtZY2**oPk6?Qk#Bq5 zd|kZ79**!1^?XO_XS_)69b8|X4^fX`6k|qyPJM|FxWXOoQJ>fQm2Qp!4snD!KcPOw z8P1LTiTXvZzoR?PgS!7U^#BGjWaJ~%V|arJBVVW9#1^)V{4Mo94sdAXm(*9d#*LBR zQ$OMf&qhAvbI&h=QH-H}p7+#eIL8I9af5pQgA3Cl*lM}2@p92xlu^(oG9 zZseELA8?Hu+~FSe{fGVTxkNFBan$)F^)zNMYvk+Ho7lp(k-w$h#{mwF{F3?#*SInA zd+J9#;n~QC-orhg2u3l6`uQZNr!b8fBVVK5z$Uhg{F(aouX1zwF^+m3FLlWWSO+nR zG1U8Ss3$OqDNJJtU$tNI8S(`z8vD!CtJuVrkv~#D<3)1s`S|BQNIi@Zj2ihA^$cb) zXXMY+uLHbZ7)SlQywoKhU>(FL#!&CSp`OGn=8SxSdJ#)l#tODkpQrarzDmA{En|O& z`YjG|WaI8Pf$-`8Z$605%n?NTBHK*2o9m$K7uT!x%w*zj5jbOk&E&XQ}70fJGx;re4K5HjMlO^)+sAYvd2q zPk6?Qk&pZu_k3a)#~akoCq+GjSsE_at$3}iieU1xU8u=CV4eoGn z8W#l{5Z*hntBY&cPk?Zg8=JlYS=bCx|gBUXMQR;EL z!Gw{oP_JPf8%DlOy^FWlGxEW(yT33-Fp3FGqQ3t$^(+>#WaKNN(6~!N`}XSFwh5BcJ@WZq6*`u!eg6jLPR(7qEg= z)cfnyo7lx$Bj2Y!#0lOT`5E;Eu5n}J^B?H$zlbF)qn^J?y^alR8u@$bGo0hX$e*Pi zadUali+UbE^&o~YY~-`l^H{*5k*`p%VI3Pr{+{{_=eRKP{$J=?U($D{0{fV{#exA=M5$>iTb<@^&IB0VC2`-x46SSp7DbEJnye}^Z77< zL5yM=U$tNIG4e@F8T&ibZ?T7cBR`@(#tGgV`RIr6{4s%P%wQSy{YgHh@>$kJEE)T+ zKGdD>MIT9>fqvFp4qM=fCcLeXg7n z=e!$C80ROcr!k9pEMO7!{I9$JmcD%);LtcP{Ne6(jA0y;n8G6Jc_p7v`84Z17L5HR z>Se586>HcrA6{b!!>IR1smC#eX(OMdp2sp)jQlkK_I^gkjY88>4=M z2}~OK0`(G>v0~)w)SKACwvi7d-24%YVhod*LVZ6O>RHTT9t&8^gesBdtGdn13M zev#`bo+s+(8K54*2u7{^|K$3GFpLq@{o~YcFoAg^FV~Y?PhlFfm_vPDoq7}7*fH`O z>O0)y!N{Mb{>eO7^rD`}Pd$hs3>*0z^#T^LWaKN<>)6D$k-w$h#{mwF{FM3vA8>8t zPt-4R{WtQQP(Pm_^$5oB#>nTW7qEyWBj2Fj#xC}Z{Dk@xXE-;Pmydr<0 zzlWR`uhDPpk5f-z5>rM#Lp_HDEE@Sb^%i#U*2r(D?{JR?BY&3qZ{oS47xnWUQlH=q z=eWW(>it{ldpzUC$RB^Ro9l!Zy!tJ!?nNK!^CJJ~UEW$sDfg_!b;+F*TofUG5oXcx_HA{tg{w7ti|hJaQnqPYq88) z9I_VgSc?%G{@7HuS&M7d;+C}- z^0|Iuk+oQ6Emm2J?RRqf#lbtfwK#tlw-#5|ZY_G>&8@}ed%3l^d~dfF13|YItMB91 zVmRd1V()$3T8zHGTZ?hlVvV)fVJ+UWe!~xN{cdrkEPkN7E*>IoE!IECt;Hd0(f7gb zx;Xw2w-yT@?$%=MBivft#NAq4exzHA(~oj%@$RGDTI}Drwb=O>w-$G-#ns2U>*D<5 z+*+I@+*-W)c()c4ti?8Karg-?FRqeqEsj3Pt;Nf4aBI>3$!;y4exqB9yNp|lp-**d zvHfXoElyaAhu`L|i~dh{Yw_Xp+*;iJCASuRZMPPOU*Oha?c3d2?DOAa7iawU%EcZ3 zy>D^Le?M7_evj)X)>w-Z*5ZY=82w)MV@}y%Esj}>Yu4g5|NUk0hP7B>E#B?j`QnQI z-kX^FQFmP&vlher_oqbp?@oy)u8ZLxcm2d7YjMb0+_M&M`0quDRsQ=QVvGL{hqz=d zZu#$Bh*kc33F3sc7~sDXAm;hs^@}~$V&oUx{fSl9;*7QUz*_WOx!+I36l<}^THLV~ z3vY4z#V%{H$6DO87O&sN?H6;b#W`zn$yyA&t=lh#Sc^&4Vw$zsWi39i79$?lUo5j0 z<$otH#@^25#UX3)#9EB}3i@Ng>(*lT9o$-M`rP^ruUX^zJ=|Jcy{B7?!S{A+armp< zTI`10TJ*i2TZ@PHcWZI^0d6fOKFF=bEPua5yyNe4h+h8wftcstuZt)CeW`e1Ee`qj zcH%Yv{z?q67DKGXBx`ZSzt0j2{QD4b$G?vdPyF+3vBW>W6?^>iS@Ge2bk9e;O1ib^ zWi4ht(OnmFti>{GvGPeSFHZUATjH9vnB~tiVuiK1`V`ks3})O~%&-;v8am!jv z@#iG5!&=<47Uj=b;qfpwy@g#Iy-;5Ic2wUx z)?=I)=Ux3Sci%p|MnCHNPgBoe9;+{um%cgGw{7(AQy<|Sj*a|+`U=;$G4f~X7xa9( zdtO1*&*!;$tM84`KmEJi`B}_i9`!s`>UC^j)5uS$FYp0ZM&46!^LWvRevDug^?Whv zNlatL$mggRv5GY#-=N;a4h~-^FMZqe8{@svU+QzNFK}t(_tcN*{S5cKuTekG5cMd= zFmB{;sHZT4StDPjUc&}9jr=|JIWBN%pQ2#W`!S%!7O;pVtYa5%v4?kfk5inX zzQ3IDd}}=4CU#I>H~o5)cpmaP?l~|1r`_wQ^WHz@>V8b1l}~X!jhR>EOI$Bw1)Hen zd2YV_zqt8Fc!y)u{jJ>2$Om~{&&}WQT*o-a+s}Lac~Aa=tFQ2YrN8)i zzWkS5{SL=?z#~T6E*HZJR`CwUctm~wb^85so!92P4$g6b9_I973e(uaHqLQ@`u>ie z@1D~I%YWIetN6P47=7|s!$QZMqxlMNb=I|Hwe`Y@U*IoY< zrg4J0|BCt=H+aMop7E;d`e*PL^`n0Jn=TjsTh27<{E>X@Z!kALb^k4SFXzos_UrTR ze~I}i`(`-D1+Gz_r}w>)W6r1MxAfoP9uIgy-7m^HH<-XArZA0qzm>}w`6~4WHnD|m z?4dqS-Y213_kQUA1Lqy;e3aY`Ch#6-xIn%Csrx*C+szR}f6uMs*vAQ8|6O-IJ8+h; z&VBUMeT|L#TQm0&Pk1rzC;f`~^gQ}`6kciP12$Gv_9EaMP${_yu)zV!vp0nSk8uc$vYAAV*&@yvXNd=`sXLOuU;^GEtz_ucdH zV*qu3E0;0yCF&JyWA}yf3;HZ^jT_wI9`*ec|GvBLHOl9HVtoEbz8<=Ldpx1e-~1z&OJEXHY1l-GfLkX#5O7&Z2Lsr&E- z)0o8^>gQ4B+!{8piEZql-XGy}9mN>N@dgu^#1y76gS!9g_SOCBoYTQB_OOp5)cY6I z8)NtSHgSmexJJD{Lp_THEE@STb$wp<75NI+tH%Bo^)_};&nxHu*V=E-+y^}33D0=J zE51KH@;!<^)c60oeRaP%Klj#nK;OT0?Q19PS-{VDc|L*bU_uPEr-@86-9O4M?FnIs?c_r#)tYFv3PpPkQ zhs*!?cz?;yC5I2FpO@!9xIR9NV*)3fGdIqA-Tgt%31bq6#(9ztk?Z3U_5D3JAK=^| zhB0Ey^W1#uKe^|f#ysv&&)=fn#y&1zDDR!Rc_Mg&Gt~3M|1K*Lj#>mgU*xlz6({s1Zp}yZOxg8$ygl9|{`@Pgd7{)jz(AuB= z66V8uT%ex!dg1altYZUpzDs?I!7q3F2dMLR&&*F$KKhFOH(YOH2fL`}nHzHlzS7;t zQ}daxaQQ42u!Ik|L92g{bNe{JDem!rdOpcLaD9y%weM)`m)wr)lDioB>!rKzAcioE z5xhY?ulzl_bjkG*1E1s8;)=D{`hD)Yc=!9=TJ(LcTZ{7dBgDJUBadU{iM81Ke3us| z9k&)Yf6c8$`R9M4{Bt}}{&}2u{ZHL~(a-P2Vvn^r<@ZkUp5Ft-GQSUs8-9Mte+NR8 zdXJw|;_-{zJfes1DKWxY%(51Hd@qSx)?)HYUH>=yGS-+u-^+N(86B46ct4eQv#Hg-_o&+G1&`wGy1fJ5WFE%hCq@$y1>&)2)x z&xZjFqP~C0U8`K|h4RuTPQM#W82u~MYgos{GxI$oFZ~)^@8azX<@@v*;ut4Jf60wh z&br^{=H+{7&ihL&a-O&~=F6?z`zenVtYQs2sNY`&>P5W89u9DbdjE?02Di8~^7(IY z^ER-FE$rYB^?C7cbo-N-!VG3HhkAeOo80~mcJUT8>QF7L+x22tmm z)Z5s>u92TmpW+PXM*c$G`z>xR9|lp+6QLf*1SXBV&ZWs^FpIa?!#?WsC7AKsJE-UT@BO?o_bt!usn6+_eLb|^AOEfQUvhtI+~5{> z==oOndDZWq*WJIRZ*b%K-+Y_X`|XdPm*jdHGnhp^U!HmqOISAYb?Pnb;t)r;MtxqB zy6m5@zQ;K(aEbq|_Pb^N9`NeWASk9vdTe-54UsK=W4$pYOtKH+Thu-HU=R-dRjQu(nBo{XF(nsfFM!rG4g&ph~ zc`Mg5^71_r;`1tIS&MnrVv)7jWG%|~i+IcDN4&5W-}t=nddd4qEHS@$$68#n77wh& z)c3g8Uo5c}$E?K%*5ZY=`gmUDzt{DxVjY{i%BpDU};p`J?MM#wGfH)YWzWAlIW9#~al71NAd{=<7B5 z_kPTs+s6S;Q1^dsek*-`+?|ufD(e2v%?IdngKZoc{hym(pWNKupKz}6`X}95&wt|j z71urJHS*Wwld5mZ$VaK)U;>jyUVg4z`2G@Cd_ReOJ`ZBzhur;%7uKS@zr_siFLBRW zJn?#n1D>ncHRc~vpW_0TxWX;!*JJoo?mixVn%56^sPiN8W1QeU&Tx);f9CAY$zuVF zsPkj$6THU-t}trME7#ZL!sH?^lz-J+`hMQ*e3JXhU>*y`{ifdJyv&j1oE*wrMb;(M z&r9lMu2-=CLV5XI1$e)Tg`aWnQ$3IGXI(vtF-%|@yFd5;y+1%Mh*rP*i|b?c8?*nG z+z{_j&wpU9BVMrm^N-IPpdQ2!TKW7hxIRU!VIB26SMTudZ!Lu}f>G3Yd0mdoA@1Jd z`iS$lcWbdoKe2A~&%dMF*T5DoQO^_faqhc1PdN9x_5Bw+SJ;`mbq|L)M%}+d|1S2i z!8uKws`D%F_A=);-^ul9zKgSqk?Y6%>-l@^54`h#nP2ccbpC<-3b(jJozKwsh%(=r zIdwilJ&G}mV+u2<_djsoH$3lGy?*|8clRB@AZB@g=>8$DhcSv9)cG9sJeFUPzX`Z` z5}3ve>i#F*muI}7_e)$Koxi0X`%-s3jyIUVB<8S)x?i7u1015~sr$(dafElM&&w>_ z+<7cw1*=%Y1~yUm>wUTF*T)ftzT)xc*QQ?lN_V}4Wz_w<sF9B>>5FBopziPe zYL`!88gr=gbLuBN$%=MGMhbl_l%lk--vlb(~55zI=2eHoUEp}LoC)VPb zwb=eDH=mg2^%cFmuHp^PQ$uPn0`tH%5Hmih|UxH0m3 z>Sv68gL}>~)Sr*>H@WK*oZ-n(}BYxH9Pbv{NtjyITnp?rltHEdwh=-;B=!7dJ8 zD1S$v3C?hdD~x_K?|=2cN;QLdQatAMt(wl`W>#{9Ji?ZZ^<9hs>Hf2W)C8vUsALFyrlV(NwR(l?^|rdek&Yn<1oKEgX38~Gje zJ)Y3_U5~$ipPQGyN7XlM^uM8=!Zc=#e2ID$Ygjk(x72$$!21`9fM??{jnbQ9qv^^#KlXWaLA8*Dr!m zjG^wIpq|1sW{iB``(6JahH!wof1G*(lbAB{IqC&0V#&ylsE=`i_eMVQ18)8(#xa3< z{tfl(A9VXd=sCExmG_dHKQq54f579LykF*9a?S>KsPAt<{msft-v`cF;TmNwc}{x1 zBDo4yv4%Qdr{2UCc3&ueOP>J_ab)yQ{E&NJr7(>d)brm_zhL8s-Too!e3N<`JJ>by z!yj?|?r@9~)cxnw*SN)#kzZ1Oc$4xQtMBpg&#(NPi}3v_=2?p?z8}R6-#21|?+3BV zTJ$rQm^9`oP_JMWYuLaR>eu5y{V3Oe)ZMoSUpF77PXuo;Vf24)zCfQMmavRc`#v`0yJ2 zsOOJTk6|1$n8h5v^nUr=-1Ghx@3=p)Xq;cC-o+mFjr@xG^~pV_I3`fvpPV~opD1}T zYwWL3Z(tK!*uh)W=U=4$6K>uu?oj7tjs^R~`cJz3I=`d7$KX%7TnGzT#FyT`rSAdH z=s7<=@0R)jk9acjv7d2$5}3j?>ia4Dw9A*Vf>qS{DfI;|@xjOsIQRNz-8m^7;O^q; zk)Lz!F!Kv;UA^+Zbp*f1>HC$=I8O11lWTYVfQ5H=>l*6&xnsUDPH=%bzoG7B{t}k) zb@RoaclTYwGFGvHP1NVZl48x&*ugHY-p1whJaWB9u8#xM`4ROA&T(Pnm(*9d z!Q%_%t-fcYztlZE4=?(R=M$zL#T!h$P`*x|7Iv^}^dC~c!!b^AhI7=f-|OxVzpZ;8 zjd6nVeXGyA=6g1XVT_>8@1FQQUw-EI{8)X@N8Z)lM;hgO-gL^#U1+U)Dy&n2`_^HoOzh3(Np!cuXH-3B9KgIW${=HJ(UwVJ> zSGaxhJmvRJ`99KlKkus`hH;8Izo5RvH6Dz7mG`Uso-A{F_*}^MWANSF+#$5SFAIFG zide=9>UlFh*Y{QDoj6zTU$cLMTfBNF*Y|bv(#K0bA6}y$OIXG#)-m-ikIy6hJ>;zZ z0j}%&vCeCd?_k&1e@nfOL%e^X{FFWmT;hY#e?@(ZJKP)j=sUaTdV>i}qJCZ}>S@ek z<%RNA-zxoUSU1k|@jeM)7$e5}=YhKZ{EYa$M&JLA{2otuMxB?>f1Z9NEF1kR)N5GB z&I{$c^y%XOhem&S4im1=aBk$Soc{jH7~e-zb;KaIx|~13dt9M@9?#96>Eq#_clj}3 z{PV9c^(e+M{X%)GZ-)L^%o*oJ`Mu=^6PQH(yriDydKPn-#{%m8Md}r-V$H}8nR|wF zTpIUd<#PVVf1h}6Ui#$eSHP0dzf1iVYwzLaXyOjfsGrvz`^GrIJsz=Y?4MF!-~+CV zy!ThR`TQ8h2I+=r z`i1iH+%D4ZJ>Bc=LH+txsJF3$w?^K|1p|+N{+^qU(5Ht7487Om{j*$eU=!Q;s{MU( zBOK!d_46t+M-`jcGUjVjzr`N*jr=|JHEyu--jCn^gON{>&tUPH`?vJn;U4w#xTdck zLl`m6lUz{cqO5N)VeG#Rx#uvz5#FJmFY!JupT;caQ0H%gE}y~-W>M$kzsBX0n8pn1 z{Dr!gd9TrL%wKt5*T0TqoS^Qnb5nBd_j7$Z*hRhninJf}#+{pXh-^~%g z7{*c0GojBEXE-D#0Nh9dX357;~XDQ&%dI+#WP-v{1xZ=Fo+>zo;39wRe#cOUxr{@4@upO{0RAE56L zM>xeLTIWZ&9>)YGQJjJ;6a>Kmv3 z4JM59lGHPp$AXcMeVDu7JQlHrb+q1(vOhsCgIUziuTA|H`#3Q2bLtPc#*LBp^11P2 z2*bwbNj`^FJ{L`FfAHg)}BjeL%J5zAOH@>S|hY+>8T_oQ)93A&L+6Y9ywv$U`2&W?g)xS4 zOk)Ohzbf?xHnC;o+thEdj{_q=qdvz4E^&if+~FSeyszr>y7>d=p3(d3`Mja-pP|0T zljMxwFC?EQSHzO+QwNl(*Rg?3Bj2Ll#arwd`9Ad#PVnByPpL0(jTlwy}hqG)O$F+3~5PlWnLu78ZnXYl@G-P*dJD{?m~zh|F5Z_7CcJmFc+R~uxGJpId9 zK^4EMQg34iyDyZt`u2_c?Q`xB{p5l#lpoXAL%$GO^GN={zA*WSF^}Z$$xm_i#Qk$} z54giU>eo-^h%rwbZ;bge)bm)xl98`dZ($d2jl4Xk6Z4)?p0}R=xp{e=Mx1|#V`H8% z-zyWm$CdGY^W1ze;XdzSY+wuZ{XRFJpic$cI5PT2KiU5{9QclVsdB>z59tiLzc zF~Yy65EJ}!b1}j{zY|;h^8@iJ?)r&oe!hx5)}oj9w|HbNPI>=`7vp)9KEa(^!5Y?4 zKR@Z?XV!sJYeaQUHumI`3d$vJTYJRMAxr~B`jkNFLIr8>&E#r zaz~Y~7d(zzvoEOj>;6~2h4%xNu#B&p_t3|SH<&Q`AE^62)y);e5bAm4b0x3m z8~!G@{{cOp;?`nEUI*OroWv7rvBq5DkhQpFEn4%YxQ{k=uxs4kfcgwClFPdL(a)nu zy@oCHecI#s=x=lN0#>k!y8k8b^10vT%wrFA-bdZ9^2Ha*XFlD{F~kw>QO{GLUQ+q- z3*`^=IpPT;zuV2J=Xq{^N*{m0^$TDgb^j-qwzLiqxHide#)(f_&mz-PPrEaM6N zrN^IV>T_H@i({Okem;@k@A5HBVj6Wm{0CgVflZvD&c~@IRKEQ}`PLtF^K5X7p+Ds6 zdY)UZ_f>w+`gQYR&W&Ici^e?9&9CVbtGN4%V-5BEd-6w=eBy=jb^0{0i4&v$bMx|Z zB*yo?cqQNeIO6+Vto~N_e8eVeam88;@qI7K_rLhSb#ah${l$CM;^2339TWWA5KDX? zi8H=0#M)=L{o?vF-CAt^UbhyPti|MKx$ELRYcat0hZyAZE|Iv=UJd=~S6 z%&nWK^HFj!ERZW2`406iR{pr_Uq#*jj$E1R9nAg-w@>FMcnk z=c!X~;RL5feocLke&!At^Pi-T%31dtCwGGlY+?&OK6=VeMjVU zf9ad#dJ5A<-pXZ+e2%)zt?ygr%KfRw-#9*IyhmpE#;Nem@Zgh+zkB^o59Sol1b+oOk^*T`R5F7NpZ&TI6e^c6>c(dF)Nic6H7Sp9sLkN#z6 z2JB>tYYZ9rG4%=VvGP~kd2jTU|KqQ^x(DNUj}j9*U6=1-ABQM8aY_9FeSgF4 zzedT4&&{Xklg1ntjQ(LhR~u!N&yQGSEz0LhylU_~@uKYgS$ACw@%a(+ti=wWBeBZ+ zT)gM~D)xAvid)uVpZBZi<^3q$x7~bVRNj{u?zrn>hqajcYwo(Z|LbloMtHr&G;49h z>m#QBrrR&BS&Qkv#dU0dq$1skP6L-`Pc*3)hU;k~_cZ&x+qVyF5|GUdq zv5qa2oGAG)*CQA;@-gZOOk&E&r>W<#h$SOmrvB9VpPS#)KlyifeKC*nTtvyA*muSY zO70Em+!x+Q3k-wq-)cK#ApVHsobI&J;QGDY*`9CDTVBZoSQ0G_Fx46T- zkv~vBqlY=X#ymdiPo4j{dHEhl^LZ8Pti>*CamMFWyyN{NHn~4BXWZYE`V51A*S$_5 z)X)35`2l@~((muN{vOo*pPTQ{r;9xt82#_4k8z4~T;LM*d~bGM=9;KER>nM%v*wb0 z2lgM)^9Am8(D!HM_WhU1`#Cp=2Rs?`JU1Vu&j!zE&7b3X9!pq9{d}IAFRH#h)_ok{ z5cPRi{|BEJ^!|Of-r`g9LGodYU=(Ah`#p7Eoc%Xg`DN;t=bQqTUU9yU=NQ5;Mlgyo z)X(Fo`x5L=V)d7)Ux9OqSboL%Ev~n*gEO4t67}9fX^LzF^oeT;T`IJBl_Lp1n+T%b4=4GgE`D&3CpO@EBpgD_XMLu zw{GA)w*RrK>-`n>HL!&p)cFzhI~=2&A2-flP}lvI)C2#B`Iyt1H%KmwF^tQ8bwGl8 z3e%V|@=NYVo@0mkM%ZD#&cA;Ac^3aKSAW(1_CI-ie~tYQsLxlocO|(u&SSoi(ZBQ$ z-MLk4U=wx!BlVM9=Q(&#=l7g{zzbe6j|T(Be6PDdOy4-(V8S>rOFfT8EE)L<^%^#? zY2;Vbw|Ky#k-r+b*QbmtY}~o}eC)h7-hXTITioFu_3IV*r>o>;{ioDtxWLT|<>#vJmi5`_|J?kJJ_kJF$><;aXYTzF#yH-f zem^9sr!bAh7s~6tCHgju{?E;q=~KlT){Xu%>T_J;_J#5b)py7GV)TD*eovnxp73n+ zkNk7@eu!ZbQ>fn$8R}WgVdaJLx^I=fZKMBl^ELW3u!$|B|AP7wSGa$n{DbOyVC~`O zfqwqa%^&G^#tU8<{dfHQ+2aAvsONd=&#{v6^X#6VTQi*F!uWaCWbQV0uxs4U9rX#$ zabe^isIPF1#}~@$z9;(n{)PJ->gW61{8{Ftp9j50|19+!7O?t4`Ml~|W8E?OKQ~{e zPZL|%Hu^tMU*jGRM*c+oj2HC(%g0}@=jL_a0DWUd|L5j|^a*1GqelN4^*T23_J#5d z)wjobZ1jI_zE7Vaj_}Utf1-Xt-@kIN>ow}nV}N=PLwNH-dEGZb-<;9^x%ni0(wM=l z(f^iu4+l7Tp?qKUy=VPk^nY%CN}o9{aB1|<@N+7QIV>7KzmC-J|BZX!>~QpNAOC*1 zkS~*~;aKetu|JAdzbp0yFoa>uus??dETVpYN7)z01SYY}zADzSVf1^|{ps`N-)r^w z_gCT#|Gr6Vuoi>-dk`_eKYtS!Ja^H0o+s|(f{BTH9h0c%m7Is`Hz@mbUUEKiakWq9 zi~o;1Kk}cQ>zQ+pI=?3$equiSg|6QXrg4e7|J4_{d<<*YM4gXQPhcB6Mn3w*u73%8 zI6~cjId}OL?r@JfAN~@Tk6;upsPjeYGu+_W$oIb4^&jI5Q{Uq1x__Pe9iAljt&iu& zT)#&zIiHcwQg2`rTiC`9>iO=edp2&K4CYbi7vv9k#1rbgmp<33Z^7u_r#{3ProZj+ z=hdJ-!abgh{2lcPUL^PJkN3}ihpQK`gniWao8OYh5)M%3ufEgeJ?O&}>U{aTUA}^K zOzm7<=Vx4>;~F=p^M3jSFp4pwf0I5f?Bl@bfBqik{9b1Wv#94eQNN(?``o?=>b&Hx zxE{wFBk%uy*Dr_}oTKjl-28<;(I0TpFY5i)zJ}~q8@kkQ@tVGVqyLKB z8aKE_)&43$pCqO+WAvX^r6m&sXt)i;`S9#=dmSdBe$jA^SFL} z)cXU}Lm0*g#xRF^e~Ee(YuGUI!S`|V6tRLe)cxz!Cpg1}kzZ1e{u+0V_XC}Ny!-WT zJw<(p$k(y?#Qk#4 zLH7MR_dGfn<9(7a-Y>F$#r`ese~JBMj@$JoNTp6#Q^iR+~ zjoCNpJh_i4{k>2q! z^$qUvXyi{)SD%v{Ydw#ZPmoVz*4Qt7Z@E6ek&(Zne!#Qj_<5@5^HA5ncNCwQPm|AK z!PqZ-2VB3yiIKmju75A^^YcXCkCngB$IHHJW54v(Ki8|z%;(9Muwv|&zGJRWac<-n z)b-ERFh4)^^RV(h@&ODP`=xJ*>s729`3ChS%Fng+GxIa@OI#WIrLX^k-1kEWBdDK8 zlzIj0*fjDj>I+=q#>j7}hd$WN6U8{{d2XoJv4tHY-=)67E$)r{fqFE`_a`P%&y%9w z!Y=lVe4qLT_jok&C+au+c_xJ!Rs&P(8!Od>pwU7jNj+1{7L$=&ui?LzWUEe zm1pL2w+ zF)4mO)$eC3A0>Z-Nn^kC?Qp$^10z4Au77X#@cXBp&&nU@bCz?A{nA(eo?CimK0`i_ zMPtA89ddn)_eOq7{eoWp+d_n^T9M`QO_@bPfz~-ow%5|f8QgH|D9Wl{eSP) zV(tHSYjMe1+_M%-_bx9!uoesd!Ce>Eti|$wbl1f_Yq9j7=#Lj=ed?}@Bi7=Ywdm#V z{fYAT1H~bK-%gajPbW^l*qtYi=58&@-=`C=ztmk9C#=OYYjOK!E-x+?ZY_?#+^xml zSGcv<{7SbL%S*QwvtQ-b;>}mPwHW#uw-&t*ZY>^Ji|em-*Tn;Cv9og5#o0HywV3`U zw-y&`w-$rn?ABtAwHW?ZcU`P)+*%Cq_tC@zYq7;zEc5rp#64><|6Q)X=;!Zei3R?C zmv~_<9{77(VxPZHB`*1UPNMvMBk_U1zarlLsGCQ;uomU-lZZq9{(&fepFs5S@6E;H z#q}2>{Cj1w##+o?x$iBp@HTEOM&H)0#j(e&#XIBsEyx$1{C6FrtmVH48E2i*UyPDV zxO3vz#tv?Ahw+bh`5SCw2RFFI*eB2*o7h4ht8BCfDVh%x`=A`C0iJ@+nLk`zzE(c#po^GE@qkCv^UFCSuFE+c&Kuy!IN#bIC!fR$RVHq}jNaeroVM6-SuEnjm?x_871llM;{f&Z zlymZ2mva)o%iVt#^Z3;LJNg|l$o>$9@m2lHes)=JwHDNP(KeV z7bG9Xgt0$Iy@FM&8F?#LC*Q=Lv0r{~4)S}l7-KC~Sc~_pMfv?%jPm=XSm5_DvBU2@ zqWr!j%I^>2mHfOx`S~Hr_owLL^DpLEi}HOV%J+aMpKDP*XQF&=MEM+u@;(*ieI&~3 zERK17#NcN>{&|&pi0fjQwHRS7CXIgOqC2O8HEdxUZ&APB7oX+!Ki~@MpZ)m!OO@ZS z-r^1qc)|;M=<753zwZ8D>Kp-Mo~Pc2wSP+AIX>VTH@L$C9`S@{yx>*Iy*?iFqJDkf z?EY`oeOw#&^HR^r>Yx1__gwQ>#1fXVigj#a8@s4qkJsJ*OP!-{%=6Uyu=fAIyuE#t zTv^*bauCFl#UOryAb;eKdDqJCnL1U~A9=-3s=KQ@{ieFR-mXrbJkQEnXR7O?yOQdv zda9~Boe_^%f?zNRg25mN27|#MmcbybU@Spc!C(*sgRp}5xbFMD_NjAD)k*h!z4Osm zopbiyXP^Cf?|WbOy&p5(XT;~kZ&Kd(UDL|he=<0;~4;=9D;_h+tI_>YO75R##|3mZfT}plq`yFZV zzhgPRCcYs)=uR%*SBdaP815+X81XpqB=I!y3^7kkmhX>^|3mX}E+s#Q{f@Nw=X+L; zL*mE8(r+f0?-yxnLo*^d7?-AoaCcgNQ>7~6lE&oo={EYIZ!v)HZ4xjSc z;ipwA4~Iu7?>YR4*ADOV+Tq8PYaHI={O|BNuN~g!yx{O-UOW7f*AAa^ymk0w+w$x1 z4X+($I9@s|@!H`PUORlrYlp`;9yyJ~ye>kvoKO){EeolOUXwSEa$@iV-eHZQ)ukWOU|AP0Q z6JHWvr-Z+=Ywv$bd`|TC?0zyo5BdB_BK!*%FA?E1(|MQJzG3O!A>JcCB0eF$Bqoyc z?x%!*mJ+_s_ihvSiMNT#^k4A)OX7FLqfGx8F+wI=ayZcB)%rLZ`=JLF`51+jQ^N;i}Ai7Cc|eKZi9ID zFShhQA|}Hh*Tf^gwR|PRpW*%U#0BCN;#Fdg zn2i6D_ushZe~G>4G%-UwM@+{5miLdcK8_PlrPR;Iy#IjskoXPpTjC31@_nc8SpG7^ zJaLwo41eJ-v+!l&263Bsp7AcE#Q&1vz9v2;z9c5!H{|_0#Jj}Li7uY|j@x|i@xR>i z`H=W2F`2##H{|nM#7|PfpX2>{BK+Ny@E`samXD8!_lWn2$^1Ow{bPTn#XC(rN8BKO zL`=s2j`vU9wfGt0dEx@`0`V$wo7g4}iOKXm-akq_PCStk-p#X*IUhQ_$N9(M3Cg8w*k5hwZ4i^;-Sa%3UpOHA*L;5Lud#Gb5$nWc`uBMM6XHYS`426AGW`9N@SpPj z=fp?EuZT~GPl?Zo$@G70e3y^UnEqk&@ggNZKQ{gymg6VHhr~~bpAkPNenEUh{F3+; z@iFlU@oVB!VzNB{px@`d^8xeobA9LYl<)n6e&6fA*80hrzs~SH@mpfDKHT%GeEx*^ zG$s7|y#F{6E-n3A40o6K@O#EDe`McLC$@=0;w|DG;)le0#N_w>*!V6V+f4tk`S>Iy zKR-79nZMD>XO?)L_?(#h{!B{v1>P?aH;7k>bz+-1Bqr1UvGH9#E-?MW=HpgMetvBH zaNc$EC-K7sy7|)K=bZN(y7?|dju&;}74}<)AM)DaEA|_Q=l*)DcZb`&cKC?b4!`BK z!;k(3i|_CWuN^++wZk{OcKFWUWbqxo;mdrva`+f46E;#b5c#ANvV zeU>Bfp}YRuCg=Z$hCj!27l;>#C1RO)g?N?tKCw=GLp;L#9VH$k9w(k4o+O?kCcpm? z(|bic&v3U=!n=0!nC-{m6_&5VqfF1?ZKmh&UiL$HIR^ zyifd?m<;d2-Aji1do7(4#FNC+#CM6w^gP}_LOe=*CnfxS7w+$~_nji1CY~W?h{^XI z<^5yCcZera!XJ5H?>SC9K|D!3Ma&SB?>i{|X~sK~65pkJp3fJEZDNl&BqraV7Vg88 z@bCWp_Pu9_v&0@Tnf}Rt(86bkdEzZ%TKF@3K1;lC$nfVFZXqSSOJ{@6uM+FTHnB%c z=I;vc9~3X```rE8Oy>^q!<6@J`~y~gb>cR0NZcphA|~^jjNeYgPlmt4=id@v5ML6L z;obf3`1}>|HSrDcXv+6}^w7TV0r4U61@RT}4KextPk28W|9MLIbN`UNZ%EuHenh-S zyifdu_$e{@{wutnmR>S^FD3jf-oH(}L%d6L`Aeqf?jMxzqyMmdcQXEGO#fTrOX3@1 zGW;Xne?t74_>B0Rm`v|G-cP2NjPKr`7Cz7Kcuagkd`f&y{Faz}-xc0(6MMwZh>wV0 z5tH$^c|RHdK}z_ve7#5s|NcK>_0%Tzh+h$t`AG|Zi{Wn{GX6Hhx%VA5{wv1Id}{eF z6YIoeem~>=uZWL{NB>caf1G%dn2i5rO8hsxpA5gibS@A}#Eq2nKj!_1#7~KzrG!rl zH~Wv-_nadx5X;0X#AJS-@IB9n&xxlP{tPjn5@VmaD(YPe86jm`IPtV^Zq^Jed3oX;axiJxx*9x zEc+YrY63svwZq{T7T)3Kymt7>KWEP!p8V(S+Tkf)JFN3MS)T9zix#gL|CZhF5r@S4{BBnc-|_nRzs+=rcZnPSx!u1wY zK|J#BSiEHT?dNuXNZcphAtuAS`ycW7J>thH;fMdOrN2+SL;Qr8O#cz@KPEmUK2Hh% zgztS#Ji>N&G^PC=``YqzlIY@j|Eb+SLOe!H=I{K!XW98`JOip8Sm(SX8A~#Px+bMf1g+<4vER|XPC|`@f@*EJjHU!r}U3^|6_aK8R9Il zOiaG-1@FHkz9ydhPbPoQmH)!-KOnv)p8PNE{wZRc_}PDL_n#A!@4wCXcZhe1F8zg+ z^uA_#PY+1{Q>OPh@f(JJ_rIC^eeeHQc7L0Ai+Gp#5%CLR@_XL@*5cnL-Y0%cd`SG9 z_yzGLF`3>M|GlO6g!nb_De)QcIWZakuc$Aoof7o~@QsTS&ht2OxrgMSc^FFbi@_jD+5k5akJVtznc$}F0 zzQe{lof6;OKWu*M{Jt-V&xkLG$^5zSxA^=v@ec7W@k3%V{$b;NoD$#NKWu(KVL5$4 zd_??`_!aRnF`3`P#(S0$zy7~if4D`wO}s}t3Gb!=!@czfdPlykQ4~d@=lkY!lyhkbVkN-DijyVxBllJV#8v|FH2& zDe)ih{v+a-#IJ~tiBE{h_a8Ri^OX4cSN8oSVwt!>yh6N6OuqlH@!BczU%a;WpZh-z z-zRPplkdCre_6QO#Jj}%#ANuddH)sh;s0atKO=7Zzjl4{|1(U+|BTPSAU+~KBR(g7 zOH9Vk{NI+Yd++CbZ<*oUd(R#DL&>Om{T<^Ud1L7uCB8#UMoJ5JA|<@Le~Qmf6E}Y5 z@cESV-Te!EULuxL!l#8x%l|#5^M;sVJzPkszXuHW1@RH_OX63=$HZiP95&vwl=$xc zVe{+4x%TGTS1F}^yXU9){50|1l<;ZcW*Pn*@jP*XnD+jI;w8)TIQ!3O;w;g9Z!-J_ zpI;$v9}xZv_P1w5*I&=DeU#mIru5e*Og|aE?M?3AFB$$7@ip;iN_%wolj&b&zLMYn zF5i2Fc$N5mN`B7$QI^kp#N&UoU7sW-)BnEVH<<1=u}$m|hs1qi@_mPmci8;9@5=D| zzH#51QoqUYC;u2LpQprRev{!ZFx=I&@Vq}utP|7Hzs=`&i1!W%@6!2};a(7562Bw9 zA|}7*u<=f&lwXnY)%@cwh+8{+Lh*2?`3@hQZ|P6q`-u;U$?z{2{^TET;U5v76W>2-_n#1x@gMO1XT(Pbgnz|!UlZRD zkEW!5ocB)68DL>h_{J%h{^bejdw34zT4M1L;ah>bN{W$dk*jM+Tpt|?771s zuN_|a@9eq5Thxa+^j_L?hp&0<@C)jh9G?E)Exf}8UOW7Z*ACzLKP`$?DUJ$?jQ|?|()t|M`~ARbnEz_r;%X&z}>&C7$_1 zlk<0r_fMR(=Xv70f396G5WPRou0NVL{FL~T_?o!AV9$rdWd5G>eUJWZ3-=}QJK~Q` z|Jk2m>E8P@4IdDn5s&>@cK>~1@_ottzGQj}CoG-|{|Uc08U8rKogkhfo+c*4@ALj~ z=I;dYB+=#nb6$T@hb5o?4$<|O@ICA= z$@d*i#6Q97lf=`+N5o|OJnzpE7Y+zN`$w#t&k+}hSBc5=-{<{0u}!>_68x9?egUJzdrzazdTz9D)U3;!sVlw6)pYO#5Y85(e5819wnY2 zo*^dFyTkZ*i60W5x^xo}9y6VLOZL9|#7~Hc;NBC4e@c8te23xB5qrda;w@q_z3&@7 zna>AI_i0M{$nYN%KOsIOeo0KG_h!xBf2wSFns|no4DaMxH@-N0m+jBt zEZdF4I&A`uN`jl+TlmMPPYF-r{3?j>ZjhF&7aNqGqYz-ZB_@3`l)W`R6jqJnVHSkf9F)K zUF~e0+H3R&E!_9>zsUSz`qaDI!(ngmyYIbMwIqJA)$MMz8-wm{zt;Fgt-JHyu-k3d zwyUkqd+qk#&L8geyVn}E;i-IWI+JTOH#43ZE}6E~VS`mJHZ ztF;@|K4N&oonEumZg{=jp;RDBq%_kSRNFnYJFhj^M9aO-n}c4p){vVw^q2hD*X(#V zYJ*|7T}O*)w>E3NUceG>;7--+H@2&TZSS{(&D~}btqtvIc6mM6SPPcdr}kQd*05O4 z=34!r-sm?FpwX!{g1u_LRoz6!aDRBS*9dm1``%KiQVKSHRW1h0D}|+^SM7N_jh$}) zCYp1*I+X9&sSYH+s~68U_8YaJ)2%mVr5Jnt#vY2#{q!0;tzlp-VFzUx^s4=#H*D+& zgX&JN-9TnqJHep!LBqRTT;B)^8yoA(bHPUOitkBJ3f7C2OQnrqp|DZNOCEPS-Cj`7 zqImdwvo)+qo7l}Z!+Ur>JqnF()~SWhb~`BE>j64skloK^<^E<%65ZKtk1jAi47~pK zU|u@0e5aqWqLiXp$lwd{WZ3Vv7u(gXfwzoM{oUFS!_G#x)Vulb>HK^bV@S>nl3D#$q zX6I%LvtFx%el-aCjcOfTu7wuT8Vsw_zN=E)*1#|?45bc&?(Wd54ZQOD+R}PqCAjcQ zG`qEx<$14M?N@gi7^yE;+q;dmW^>ROdY3w_X1Bkil`-(}q*bpD8+8xU#1@)SSn=NK z?#?PY$6g~$2KB0~d|5_+X$5P2>3j9$?Mod@0Q#VW0kmB~cew2OB`1JkH`tXnyMw+c z&2e`8eh!_kxPDE>Tju$Kj0cO|ttOi5T4`-PD6K6m&##q(!syed5o&11E3qul5> zSGt`R#%>hC?x3;JuXYCV*^7-veG?tV3ktR2ZneFLd)1-0Qr*9d;%w{}hM1r>EBI4y z$lZlTZ@66YT>*%(P{z3~QN@EG{+il~Uhc_{HbWsTy zZ19PV>dpYQJ4AOb?p53KT@;kx^j3D;!`4P)U$67cy~6sO=PvO$nzdYW^>XaSa()+s z^{RYFyPVr?#U9FyJrBtR^?vmRs<+74F+f~$PfD#(+_8UP<`ZmYBfd#NKVhGIfde?=ASfYb~ylt~Ltl2|XDM6F9 z5_Hk1o9*rmW~q2(1Er>g9}I7F(e9;IL^_c{JLqeP2in-Y)ypc1xY}?J@!DX}srDdZ zv>;7kAoS)+MYNa7+TuoOdFjFiDzV+|S9W)b9ho`mcD;gHM2z+#Ca?IN70eB6@$-^j zl!W##uPkCwrKc06rDdb$g+^;@d+2SoMa;2g7*w^LdGqZSW)auuq+KEu(nPtjt9Lg= zc=Jk)t!jG%6WU-!XQ~y5cSHQY(P@{_anUj*X0O$2v|Al~u~ioa4NTh6-hj>#ZN}?M zbJAb5{n-p=8TW$X&Bm`6T77Q=1#K-`JNt5{hDJO<{r*Z`2;onv7+tvJ&+5$C#z>_C z2y)jh+iWWLJj{U`m)46xb|F~76u4X|tdvW|ps>DP_!TPmEYnL_x3|p60 zR)dwo@2#!N>(MjELDOFMHR-E*K-(7 zI%splMzDoX?KNs>qmqot+u3Ze(->3(EfL5j12hF`1KAnKQm$24=WTbZbv*3$8z?D= z20?ST-S$+>v!582vsvU3!y9IgK-MRa+aY#!`+k-;ofzgLTvQChAcJ11BYQSjDy_{G zNL)h!I17!h2Fx#Z`w$Wm3uXO+afI@(+tE0ArG@=Si26(LC_ zyx(9LZ#7$uzMt>y4z>eKEnDsGX0=@`&;06FC6W8eY31Ts;cGU$n>R71;WL_549A`n z7(`{Q5q4LO;P|Y@Z`Lnj(i+dhEaW#CIfuoTe*IYq!bw{yOY(`&TfZ1)&Cg2^yh(&4 zl!jyj`2eV7j&ZEB)sUOp1N;@y($|zTD9O#;RvX2RX5SB*C@_e$v*?l{D-4U*ynZI* zFUa3)R{rMl@^@<5Yi2StXXST6|1QpYgWvR#=WbBlL@U8>FQ_5YHg^SZwWM zHj`Q&c%z#b@9h@k4Ghj(GDH=I-JMo#9&$CNp*dXuSr517f+a#DXjeBI?J3MRsBD|$ z6SH)?i#O_|7S7>X9B5IyGJm%^kO1n9Xc#wPt4M%?s|Po#{f@U*tYA>59HXmBl|k(x zq_6e0<%QA5VO4}BNn?=nt1fNGU;}NgLljUG3mED61GF2KhYP18C`Np=u;sN?%noxw zv62h27&LZzsKm`yTV$#U!L*Y>7;aj38%zqrI>v{iRMBA?lrs{^iP!;20E^?Ahz7}& z}pPAg@#mZI-L;ARgAq7>vfFkHkSpz_NO5- zAs>U?O|0or!i~tpn?Cl5+^yr&s5PPC4~9DYNU8sE^DWbz}$sp^;Cgg11nodoJV|;quO~Tpfo$7T+8SP+6XVc}*9*5E8 z1q?Uo53#<%h#2g9on5FxD2RqFQ%A9Q9(>GM80Vl1(Uqx=EPfU(9Cc~&@xBg*3R`xd zx}#aVl%V#9e#CTrg?ykIWCA%;Qw+Xu*k)<7QX% zk@Cf}q2P(uW|ED~y#bcg)i4gGA=OEZ#i?l|_c+**g~i}T>jO-6`x-k@Rd_#^kf@V> zwTWIXYE%=)eEoqj6m6kc_C+Zc5hx~9`e9QN!9sHM0aRq)BN_Qp&BaJlR`#X%+_y?% zBSmK(I^x|OEVpXf4VIflXpM)B!LV5OR7<)u*p!COIaT$RjlD*vDP6A7*&1#`DCuYp zRUs(DD0EpeF5hrvV)rh}@g#o!8Olu@-69F;U9+ zduUubiAB2lvYP8MU+cXnfxtHYgDP@ZQ^?*303l5 zW2~J>l8^(DF;%tNT6n4kbvD96V#{Czhm5Z}Ua7vxE01aU} z#I0%{3Wt6G$(>R&2WxpH8YC3h1Fy99OYHkxS}hmmF9sD+jzY8SPkX<$MlQ0Q&Wu=l zU=V`%ZG+Hwf#x!AkCDyUbE>ch&>HUOtBTRjYvR?rP;8?_W-%-3*FqZCmTNPrESg+T z=DJizLYK2d_tFs{*)0zdPm8<(^;gHFFDK`VG99^LiZb*?D(AQI1gloJKVe}n zwHMXKYkRL_l7-f4ALCf7hbr@QK6A6AH6kqfFlozFwcB&zXli$7ePB)%b;BrAVPEGH zQ4L6Ei%xKnZ$j>qIo?o0Es3?g&Aw|23Nj)+zp`86@IK6VR;{!SFUY(g8{N& zNs5}zH3NJ*Hb_T;*Ldc$QUz(jC)Abj|GKqbNQQ zS}Z8J!q3df)=7AK(vYF;I1J$;a(F3aeVdeJhgXV_;;b~H#9GLo(b1V-rp2s1RHUSd zB7`k;F!Z?!#|SO+^n|3RL{*1ggyyO$yJ@Hts~t!fkulbj!SN7rr&L8(EH7@BFQyG2 ziG)$`%|oQ@pAG8WUDTCq;%;;=L1dZEf3Fvfm1*+B@e0}ao6g%S7W8%B>lO7b76Q$1 zE5&mQ4KlT3Dyr}M& z_FoHJ7rrtAigqix!tFOi!-3%s67UYb0h?={Y8>k~p(PR8k?vdfxgOGfi(yw`fTvMsiR zu$rlE)n)ISC4z;ntkK<^h%d(0Wp4q)os93^;O5RI7Tmfl6Ey_q_1W?JGNO*D0%Vzm zExc&x1(6Q*+axPeH$sVkM7-%O{O)^Y>pcx2T4ii-_7P&x);~cT5@!Dwh~*i1=h8;eyDaMM zjkSy36_5@JmCEwcs_=VMMJ=~4twLGtUASDF&ts2f*u9P-5S1TxZLk^(`l1TkL@z`8 z-NBYIss+*&9&kuNIBefQL?Rgrx~rMU_JQWeNL^_Boo<;0qia-=Mr5<2D*N&iIwAFY zSQ$bRhtgzB>5$S5t?!!D;q>*`6oRyZb}#A#l|@7{(aBFVo6wZYaFy45MbvY_=1o;r zg2@q;-_xe9a-w~JJh6>YOSUM{D`eT?)uCu{GpT%YHVgJ*&}nSx1i!oK`hXL-qTd)% zjJ3cJ!S<<08~6wr5wVo-wXrYYH0y~W%|C1HP?IIe)W-D;-nzMZlO;z+3ngML&+l`iP zC`%5bIU3gUxs2@^qlmXUQlwH>Bc-XI(M>{4rI>g$Wt%Ee3KO4aTUtuli4XJoRjG0P z-B}dC{d!o%n8HL2B`YHJ1FeFhq7?r7|fE%%`I=PJ2-{6Sjj$ zohROvopm!`SUYbCoUw|OY>g^1k)l7dtF@h7NXwWCctQ_~Hqb;W5E@)EZ+#aww0f8< zmxT^Dsib5wx#%Vj+g;JU7$J>q##@vItpo^e4KN(jRM5EQVX?PK^&M8VA{?lqu_^j? zY3AXkr6^@;m<+M|BCJ|y+&m2HqHx0|a|8PnH>mwrA_f__!ANTv*t(UgVH3BpPJ%vW z_yKR~#shS9cn#Ltc;;60$Odbv0hlM2&pqzEEX5$M144SX>qZ*?imRCWo>=h3zi3q$_^-~ zUfM`f0k%hNm{E2PSM{d*07FR|{yqvFp6k z!!EHK0HKXVkz#B{tty#Cnnr}1{(}hIGqwI^W2@DX73qj^t<>KD(+MapCgxewkT-@K z9@$*Tcy{|9ZP|GoEbo*y{bDf(^*xfsUkDEEc5evD0ST0*p)$dTl=m+AGtw^tBZujR zS*Eok8fMJ#pp(eZXETjnf>#SF#;`xcUIlbA%F>qfFcN8_QgXK41tlAcbF9vT8bta4 zua=yvf|KHVY$Ii}+V4Z5EMdmD*-0UNQW(*qadQQ~w4YIr8X;{jmevXz@`@Q!!F9%! z;ZOHOVlT_uZcAEt0(KTyXXR;=((! z$EdnDxnopoxrIH+(G8GtY$YFA-JgY)1k(PTq zf4c8+K8m%trJNNJ8=6@LJs#2E4t+@w5r zi<%D%XGo^b_N%eERKTVy#2D_d4?JXAHp?l+4!n4#NZR!<;|NE1sf2J|X|TB{W*IRu z^jv-^zn(9U5gmU7O7!|M z*TKb3xm!tc!;2g9SsBA-WAC-QzCR&L1tEsdCTQXFYnPys(-D?~`=B8c6!e@J@n!hc z?I6?-ngixoGb&gpmNzaqieaf(sesnjZy75Y+L7*V52fG0P=l?M4mh2TDQ>F2%h2uPz0ZOY`#*f7NlnHyZn{kttzkd4Q#t@T80y?k!>h5I%K9&5zZiO}sfYE-;`R%i1HsvVx7mvg2lW>x}_6i^mz=VrYPtwkXySOBf|B zpL6J1{hJFYjz+(7q2PN9U>gn_6=)24&`meij9KT1%6-yN zyhX?)jt&8)Q5DQ>5QV_wt=6_}?SOliP5k$;N|trE&_U4$8tBWSPA5YH;mRUVTt@d6 zHb1IvQ0upPG8|xV1=-)}Fmx^y!Nghu);Q$5=mS}&qj`i~nSuu>`@L5Ga?$auNY*y( zRhWXtwb#XH+c5FL=!CJYHRxhTz1K40cBnhIWdSM5N~_V0a#@9KH`=nxh}~tfMm%{g zYb@c9>t3I-%ECP8#|n!ZFU67>Wv+B>4P=@K7r91V71+~|OH45$y5?F93JTHvv^K3F zlIgvMrUw2kuT%(GSX+P{knx%;y5E7ivXoY;J)aeCbbJp~=yDfC3*Bd2sSX!f%_g)< z#`ngXpzK+?$eE{w4+&1#GUt|TL`+}dxnksDOmuv_qG zz5!WCG%uP4x!O9QZnSn9>@JwMopg)25xcCS;KJZ5ba~lww)QhP)LuzMwdCSffgXOSXi*a!(nLw!4{-XTNX5??) z7YcU1DAt3}iXe~3gUNib(#vF~XXWqAy!Y#rmAeqdwOJ;LAX>U&Y#=73B-yDwXxI@^%Ke*3RrX{tc~hrl8JdIKZ@6LpF2=S$XIYZZHQW?E>h@qj+wb z2`Q)XN1`wnyLx57=d&5(s*hOm6NQ^m68L(^Arv!$>AbA{G;0?xtaF#Ufzr_RTe$lj za_EaoC5~kfgc^Mz5|W@V4CYBs2ZMGl8irqot^FZ2jWWbF`mo%ymqyYgQ38m$3Zi4pI_j7ySfYAEPkR6#i@4W|!swdc6Nlfp(PND8y-F z?PO;$Q$YQLHG&ZNp+km7v(@D8YUKSQ++?RjV2g}=5i^f;BMd2<2^Kq&pg$`KN&r{( zxrKPvW9A%EkEWxWyskrvIh83TU_xC%4dvi~1vw z0F!m`A5q)iM;(aKpY9RL+Ts^eu$6?FCzhY>(PACS43Oz;#e9>ybtBsc@0Z>F^(9f5 z=z3qo)|h-S$x>m4Gj38Az%+`f(`IrTkz^SZ+Qo491`KkrxS*;-@0aGQDgYsNnT)6E zWEy&a&W-+tZDda@HC1S|nNhbQ#`2mIq15C`S#giCJ+UFOH&PdbkIiV)M_i{$M8LMO zrG#_~&5|RtDpR#NfpY^92Flz+SSpAx+X6937J0qQ1BiYmRO#AVl%7z}NjHS?I&GuEkv|++Wd~K()TuMt$RJr-iCgE$5ZdZ^ z$^+JxW2=A1n}9|Dv<%(XkB^k5WkCDdwMDjDL}g`cbM=Wus=Uixj;dGv?YP_HC3}!z zfv;~-#S(}r80K70Kc|AD3%$BjC*rwDS^#y!fp zMj4-c)7S20AuuFwj**<>M4@Y-!;Z)$qU?jRXHeNhz#Pb~LEkr08&p%m(o$L5b`PbvV!}nlqQJ})BBKl57c)~Zf;!g# zRzlJ-S*WrhWAr22=~LGYDoUU#WC5$(Efazgn|))s%1QHtvc%euNPtqEZg1Ol>$m}% zHmZo(V64p*v=0`UNU^b`%Gbc(t(*;1 zqox#p*QiyumW%d2)MUs63spcl-n2=yh<7AJBJJ_9TFuU){M=B6LWDA2G!T;u&P_j# zhK5W?=MKc@35#55R46sG^%7M>n=E~$^Gs(7}v*v*I02wJ=eYjTO2rA9b8krmNG{x#oh5f==m1N>##RJaNt>%BkdkjhAun z9ch{dxwpjG^Fh~xie;;}OKm`2NDU%C=`}j4kjHVE6MI+vrQbycIikuMSl;bt<(D`L z0rPR{E$_5~yZOPsx2akpv^U+-(6MT)O}KFy3=!1{x=w@(99xJ`wi5+EXG`xba5r5E~t^Vq#4+HPPMOD*&>KcOyL+5UnEZ?p64*f zT)XDMddk*^jeV4bNRN`F%y3cGshFXHkJhMz`78Fx63z`^?xmAH2+!1QiY#f|2dOi* zh+<;gA&O@XoxH{6VhP^0ilyTGhOnZ=H``j-D^%dt58CUZ5vgzD4d6uwzn+2k3!+>9 zQuVCqD6t@178aB;p~|%hR3{&sE~VwE!G1iT2KQ8I={{q8nUIr~`mx59AxN zzSEhT6bPwALSjXayx1sH$p+Ye9mNOv4;@4%0&hf;_F6(*cFb^PG3RY1Xr$%*K8Svz zZLg!WbMC@%iLnb{gRG9a5dtsl&cp|-Jq;qX^pJ+^qDI-ol?c<^-Onx*gt8KQWTfIK z8CWWOB&bg#@AxXU>Wtj>b-PWoiiT|ieo;g^u@fI`^{lUx z12z7#?W^9IiV1cw7+Uh(vswnlcm}c4sf>A+d-7@4DD!Diqh$WEs3K~)N=rV>Tb;UU zOgzr|EQFBQJu&Muj?%r39yu`t97Gyfd*ajC-3b(IrAiAE0OQ(Z)vKS&r9GKCoAM-! zUGd4O<@}knC;77;D5xN3(*uwF5Zda%7~L{d+OGjz(!vr211`sFD8cDS0zxS02jjO< zvyQDTwk0BWh{lhbqBd1n?`-Z=mA}1-KukyGhXIlWiCe@dOwjIu>U-Q;jcjmL>8jWx za|-rhs{Q=Dc2H<%AgvpCSBx+M-23Yuu*Qi%&*(Dd} zUzdzEj%@?+3mK=17cO1Nc$dUO#s!qR*om*SI>NI9!49{E%T$%CJK<7yE6bf}kyhO* z81tcsJX-OpHC?>4Iv>D$(dx!Bq?C0}lv9|fjXJK5gV;b|tPH0z5SHk+L8qvYzI}LK z=F_#1B92k%ha`aR2LY+Llk|oDgDC5>J8%mljg0D}QHFj{a=wpY8O=wRr=q%@STLB` ziWs~wi0cF@-ZwEs|JYZ<%ei)1?OTIw$hOyiqL0G9g2;T@Qft*7QU$e4Jd=ocg$1Z` zwK2uoO*l-%_NnS##AO)v9(4%}rS47R*n}T?5b58~sTm)-|5mVCUDdBCiFDk7UCCrQ z7$VJ1gyxSa$XNbx<7r;?J+xo(?oOUR_!l>@dc?53iC;Bnbz7*6U~3mLmyp+;$_772 z>ME(NsFpBXWr-jqM*SG4%xfCTL}YOBIfx++<1DtT)F=)qgw_G7_*RFo&{vt61{kjx zSD`D04qVqONP;~OVZ`hN1F3Lk!4O7Lqup5*5#+g5y&v&up3Ru@aHMsUfg93YLSYjT z!LG^rKIWudXw@O_znR?)fA40M?5`FAj#bo(IBdtn5xEknPOJ&ghGY*3#ikMI_QoEl zhaL9>N$P|K^^cI$Mz#lz2MyL+6%`goJPhvS>hatqP^`a~^5Y|by z@PH&sMci>ZTomjkcy%KW3Th27TJFjw9~}l&;L07o`R7aU>&sgU%a`RA-2DdY^X_Kl z_t!OGVXhL$Z!ieKKQQ@ua04b#Xm0+}$mU^ssWHR=kDOqA*1-`1LYZ4fN1G>WgpTD& znvFV^hr~9?XFLoCe4*;cnEHBCtO;Uwmw$EXa_mOTS^bz1z(jL_sio<;sc|!ckUQ~0kj=?UjnnsCA0js=-ZMMkUV7D6?c21S1!r;GT{`3~mG%D(n zba}+Yswi1Z?M60a#h?bs*iGDM>=!$GFc*+%0xa}Ccn98`^1Lg%o060VMtyxTLefVR z$s39Fs$}Eua>NZgbg>wCnnsZ!Ex=n8f?Y+(B^B|W+OLQqb30_=8+Y0hH453rbo>QD zKxn!myx4gHxWQ~hzEKGG>WNV)+RKB=&B0};JvHoLu+-?7(Lr^m9&FXX1JzRWj0Fre zqxjukQ4+5=kJWn#atM5fi^-RilBQYq;cuO+YXpUg1?j^$dFQ6G-LV6;*Hvd(#u|%J z;3=h$I};_#hydl5!Jvp>*$US9U;&!mO20-H`-Q^#f_X1D5<6@RR3}DGyUU>1Cg5O; z!tStZd~-T3mlh+k5&F?wt2*!&S-zeyoAD(@x#{ zt@gLD&yM-eo-7Z$%ksD<%yrmTz+MkD=W-yL=>WcC;J_8qu;UJ@I@fH{(O%5y@;vqy z*430>xY(NS9njip72(M*gB~K5P$3({KHZT))*Ip;zBAMoa6xx$2Hu{G5|BoPSS~W> zo-~Tf#{AWxCa$c9g1?Sw9PX3VnP0du@3!oaeCS~@GL~Z4)K!#xyjTke+kbt;8jmr( z;mw+r8+%24 zSyR(_xEtVQcNEhOcj@IP_GV0djrEP5kwP24PFgm0uo7BCous@MJ_Q|_j;D$hLwdv_@F{*pB zHpzH-QLGh}MiNo6Ssu}CV&1;NNzcp)Gu_V!iyfXSY)VEsS!rlLlPAhzhbBO{>{IG= ze0pM7JU?5I=Vy!dcVZ|!$B{V*JFh7&EXqg3G(D;kk9dHNEOnxVG~4cOsWn54Z6Y*% zIdey3VA&jN!dr;?l2^~Wo6VM|KhQ$ZD3qUIrjRPi#&e=#)GjP2K7b&rnWB6e8*6O0 zF}ktp*f7)@=5pwyGI2O{s%of3jT1VtifRzYN3#RpfR-p$#^~?+kod%rn6_vfQX;H6 z(bkW+=5mM*3SwUO6Hk7bC(E(?4?b#|~O*T*6PL^t2Uo6H-& z!Wl;5z!aHD;q(@zVuvD((qQnGb6{sr^mr6Ad|?2HjIzS*kXoB z09qGVo{`;=a2rxKPMlAB<=rk6=PoVTaa(52nqcD!lT~UoR-Z}At^`W0*-3#%N1tG1 zgfP?ss}o9nQ5+R~ zvK5L4dmv-X`DlXTQXb+|O+=-{S4yxO5Y(}2i-k2rLp}K>5lBoH`rXZ4kfGfsvwCC* zHgWXYUJHtY2@zbmNcA}>6}>OpRdevPKbjSXA1ux}(2M=+PRb1RT|y-=19 zlahoZ4^z|%>Oo#-3qLEHMQ$+>-Cw$hU0FO*Pxvam=y)N6dn}YcC801-OZVIC)^A3h z;?ywNV^npc6prjVMSbK){Dg^n64`;s`p!&8>JVxH*&%GyBl~XA>ECoYGUX@symTWB ztLcpVr(3~J22{qOXuORZXf*QF;V`}d9g@IfkvVw8%@06>NTYZoa`vo@EKve`Y;a6} zYd$X#qeOK#K1aC}Sx&Mk>9`~khQ^XFCDunflnxlsMbzJtmXXrq#bBENHkeCUXXOwf z98^|@>AoJo27^o6p_sVC5v}CW-mY%QNY$yAcqg!{3(`YS5~}U3#wJeH4E=>>GuX0$ zgEt%)gk3O~90bI;As=>Bg+Ae)%f6(OOF%m2Y*2^%YC+^{O>G1nq8(L$i94PK{hNyZ z)H%o^rCsLX5kGcd{@w;R2N1wi5)u6(-jE>59mH%uXt5?7=#lmW8f0@qE1&I#1~ZX> zkvEj0&bb<7C1o?h%a^D;aoQm`+A8WGhoPF+Px8`7&g_+Xc$k2ipY(turn~4v<=_K5 z0}{%`@?vwlc&*&TF1Y;%)vqWXtL+F0zT}^E)r$({7Kb$Xq;53o6n8ydr|T^d9ChO# zQos4&N221`KxBo3-Rj4vuH$v=Pr0g)`3od&@zKg)`{JyWQtrkg9F{N{;z8*0hB0B8}eRLE~b~HF4g$k8y#5X+r++g7= z8t}383_@X~(Fqye`9+a!)greiG#XQ9SD{11L0N;uI6$5?Mt77Vj5VZ{`pwop9H+~G zCj=d?yfB}}iQd9;<|r5?@;frUS4v1L&fS%{b3F4S`fpzL z)}6VBh#>0CO#K&gTVxe=vQVres(vd|Q1fJ#=VV5qrH|R% zlx5Uz=+q^RP$hlrafM}}z8NHkx@9IO{&7|?(uG+)$U0cI;IRp!KT$*nGi~D(d0oC! zIMlVbtyaeiQ7w;TV8W+jnG8yYt5ZJ@QA-?R%RPiZtt5s!Om#BbZAt)Tl9(bT$l^66 zKTi+VVt3nX-;DF2MC|JCqDGAVID^JiqcN~`#8fQ}vJqt~A_LJKDHNORu!S}tD#-a$ zs0vn@+7-r=klccl2$$TJRdsZru4VkGQC;gOlZdDlxvBD_YBR&xaJ-x+(Q{>-xFo{_ z=Ai@Vx$rZoQ&xq+5A%X4#u2B~vh{V~D{S7A#y2)Pjb|T(U$?mn-7nfl?tt{8wg!iI z!E~Th?VmPLY$>x-ge;(nva*W4%w29Z)$PgZ;_yzcLHD+`Zz9!0d?t8Qh}&o{s!Nf> zzfySl`rqN+(Yzt2NH1b}93yBSBJwN*@lL%|nftyG{h2X-w@DLm_4`=M%7PRxJJ^`G z=?DowsbNp#VNWd}-9vl~MjaWGm9?guQy8yP4)_dN=FT~iDISqXE*fJZ%{|S(A9a(#xYNCt)YQJyI?o4ewfW`~%;Tf{VaKo%o%A2MTI+ zD6WYL3>sr0N=M$MU+Qy+jjQV3@;+>anU9Y~9nMd^X4brKi%U%m*LqBpu(YXZal11n zWMNJf`k~f27>l81CAm7gCOb^bSeU|Y4-9j2!)L20GZPj|Hjptb7ubD>+Mq|L6lEoc zcF8ncjZZm{nALz?*3zIKh<%)$sEI{`kCDb@MOHYa+*BygCN&LavntNeCbHYdt$4%< ziAuw=bR2fYMYj3XLOv#s?9yf$vQSm)o&NVD^Q%RwsCKwd*0r-*vHy|9Dk3!C3ZEus zZ!q&?)P5CJRFrU8S3gQLSCE|?C{(edzPeV1GjW``v9Wx)=q;Au?Q&gCrWW2j!n8%_ zBt~8k%OFatG#phKjQoR3>qZQ9I*wf#910Dg2irl|k|6;^7DnKV!+i&rMB3!!U?pmF z+_DRO-;=CEpbK^JviwzJ^EkH}Nu+w<)-49)7<;O6gqNlU#TeVL#`M*nm}^2#UQ_Eq zk-L=!>F#O-k=wXo8Gj0|sL-oJ+b-r(qHe&!sQ8W#M0TafOe;;#k!ZpN8`fa(7%Ogp zFsTY70>2_`YVxd|b7vBrEu;!devDlmr#m|ev<0W@;}NGi;^dePq2)6p9A-V~#pPIP zP)toGk)aP_L;JZ4G(` z_A6>vhUpFJCRP3o)Xk|g>M5=+EH8S?iwng?jJj}cg}<9PoyG{o7?!c9z#6)HQ`n8z zPr-&g&W6Cr&*1d7h7jxO!a=~;h#x{wmNJu5>&26`)E<8#m8fkKJzaNjaImv?k~yJv zoxw#<=GMm>Jv|B#lXYm{p{)TnGT{XJLwL#lj7pM5Dik}vZnFq3Dn^8n+VTf+il-(M zrhjx=KQdb|$kqXKM`;~DHZc<=iWT_j9;y4`5Cn>p<(iHSkvjQ7pAOeVBNnsfTpb4d z*o+H{TSz6~9sd-SjZ+k{rYYIvlA!$Q1guQju z0?O;-uRMsRtzHdrGOc)hm$N*CbggH4G$EzQMH?r??TJf_;yz4Iu>KN?I3$p28+-{| zi`VrU7J2O!1_NVb?_fL-2_7t6EcR}IZ(GAg7c_e}#A>nWt-xSo-nbyLz6Z?+5)eiX zZokTvO1+SL#Rkf(`kh>Fk! z=~>b8=}M+wad*&&)yGGYWF_X=V0G7M|LZq~((MN*^OchknMvO)IV}w<6Bdy}3ws z(FW#vQP9Fx6+vXB1`V_}DpU%NYuVidfgO^lEQ4u+gXcc~5!qwIr8-qt}Gv*xaTGD7!y;wPPXaO-wGQDv?KnN$oeHkQjJ z=kdHyDuD*x%Uapx<@Zv*h0#%s=Cl~7RdGD*GNeh=p9e#`ffte(C_JMdn7B+=&WPq027>J$LOENoc zQQ;j?EH~+qPXeGI)FIr2qrl_ZujrNlhX1nohIZOlDH+{ILlw$yEV`Hs4{$dr`|k2| zG@nOwuBob7$oj#8uo%`s?TWb`59UyLdh&w0GpE0l5gA>yv9pLx3kPIm#TcNDWi3f3 zAHsp67$U_|$w`4E18%5|PRwUILZN3%53m=FrG)^FD>HEIq^{JjFiSDwdxRFhyo&Q$ z;%?K;4F$|RsQlZRoWP5!Rh!-|KL<_jeRtJ)TShw6%T=jptswuF$&lG^N5(lSfjn{Jr6DnRKx(M zKvtZ_m*pOxutT)BW_@Xf)c=lJqd#R__)sHUELQ@h%8TYdoCUN1)k%Yt%}BrO=SSLL zq0Enb1gEy`^^0;&SFJJwE*o+bPfyrLj(i6LT_vZ&;t+0;b&$9(Klsx}KR4f;%*SrUpS05n%$)XXYeSA*(cZ{awT5Gc zCG0I5?V$FyZFi+5WRiBiI$dA2+JYyHZ%zOJ>8Vr zVfYSk7MOUaSWk{;0B64mgBZ@SkeX;f#5_R!Cy5nsAB4ag-nL8t*&I~xSSH|&;+;iu z2@8V{umdt8XQY2JmGp8_)D8E^Zb{^u6H!cV;zJZ^_^@n%n;)my*GSQ~R6x|K?krDW z)cM%5>8sBlj0M8&hrUBdSBd=%5ma43r92Kqp9g^n4+0YALmsm;7*L22V=AFn{9xM_?w5wXx0UIg3=Fprpn)s2!(o9 zv>R+9_iY^3Eft}+VsQX_p{SHO$(BGV&bnTS&mkIDgvyv-?C@^r7c}Dcox`6*k_y70 zhBLi3rRZf1BWH?4LZtY2c0nMPMyC~)l2l!E7aENQvV_)N?kt)cm_cE)8MERL;V&@(Vp>*1KD3G^5i5t4!umx> zAqld2Zej6CDEiC0sI3VWVSbzptj&R5ZOrHdYoZBu3#f6al<@olKa-gh&Mh%88)3W; zAd^9=NTjEYx-NYQhHE2^!2K}~TG6d#X}6K>T9Id?E837RFCS=}X=zq6BHFSQeKiB|o@>Ie2O)GW zB;Ru#E0o4o4HGc}%Z!cz{w+2Ixvb3NH3Be160bk_jfYuBHi{(s*}Q%Xto!gmwvk1d>nx^wbJUD>68V~PZD$jcewr`c zO`Nkkp-iMPWV7LHiYa#_cCNqW0HXvQQBs+aMY+@CyQzUjAaUaw$%ktT{LE`QHPm;d zU7_DW5W&J;6p5jjCv_S(e=yh4Zh;`ZMk_u_a>?dxKE#~GxkP7dbWRO!Dq-iqMBWfz zR*L!^f>;Am2J8o99AG6R=*nrXu_Ky(UDTP2-vEn-gx7l=dDPdnKTYMgjz~U;*0SJ( zn@-)t+Zk+%INVZgzim!J3X#vISH76U)*m$wc*ew_k~Up>yBKe|niTG`$jLe%2y@v9 zQRW|?Q@k9Ap$8Nti!9AsK1k0Z?`}e@6$dLAILyy9(vzc^q@*Kj2L0q&-Q3X4R&5Qa zLk^zmA&NXLO&10Zx+Tm0uO~r=O;G)5{H#4a@-HT&INg4XGv;8Y8g- zC1dEw6QUZ|h;8gh1>uSAA=qzjI@O)bAHrF}M>o;AwHL{xQv9cBZKUYOq=Hh${Bfm@jX>Tz$Dmb6CvJoXi!kD>) zuUk}M|HX<^DkfTP7^ii8CbT6{0eMh33&d#u1FtR1U9jTC-<|Yu8QD;b5PmzuY2_$m z0S%R8yzl5*Q+tgJ2BVm6kjJ6w99vb2rjx}zZ9Q;QfcXZ4FI`WVk5Db>jG14AQVyo= z_8?|@5tVF&4d#M!MUGh<(w11OhdL09JJfo};nf@=Ob#A7N;e%DN<#F;*o-rVZd4hg zcg&zD*4svA8h%!zp$KGt!*~<7@?dw7adx`ezEQmiPL=3^l>L~x$biFm)nVaN8*Q8{ zzuydYLVFVNCa;SG3~NG&beA~N&$TSECJz_LsBKx#=@BdFsB}`=>B{L{QT5 zBdZMI;oR+_AB;&7+rN?k!$J@?HLp}M=zpC=cE;*FQLolRT^+( zu*Malnz0ID^)0;8i{ozJ#U(7#l4J4AqKfSUk1w=g-7j_wug3#xP2ZL;)}8LE&|9Tx^r0&&jU!Mt4zm ztdgl<{Bt%Wo-{q#EAg_V>dE)UkUXHo zW-wf%&&eVzT4V>7G&C2Yr!*aVqcF6c)@&jfuyBF+wun|G{vwnyuT9b|c10ML^9<8d18rd_^SDlq18)_zJD%fg)(`BY1K3!c9RmCzwSMV)IgsmVWB+P`$zn>=YVQt{NHL85C zgEPur^vD>NF}`r5wzYF?7S&Z?{2b}9+*Onat*$XY>p`n&%c1ca75R2@(&~HiXA|13 z;kw4h2@drf8ERF4AGO_)nSs~ZRD)D(K1X@4`t6+?#htR!_uN`L5+vt~#es9F7V-{8 z603A_FwL;HsIsw&NfWwVh82fwkDUHPFjwCL;WuF)ts#CZU|?up8&7w_yj8xKm`<`2 z-&Fkhv?iuOu){O7{9#c6SEHC&_Co^S!ZK)3>tI2x7nW8Ef$4VF;IXcJX|A+94=&q9 zxU|H%yYd6^Z97B!%F7kBtR&M$C}6??LrJ-_&{gfkqYAi#iKb!t*|I-nsfeyt;NS#u+!`w(LHA6dVm|0Yyas-mg& z;hYn@QMOp{#e=@tU3lg;-kD*b9oe?RoGpP=_|q+#xKRT*tmX#35E?1KNEfNn>pc#+ zQ78B`i3y@k?-5WlKpPp6SwMuB=8RV(`;6!-$Nbgf#bI_CGir8{mpt0p z0TJ0MJ0r`{a8F5vDD^WUpFeK(0xtj!7$4}8M8-?0tdXDw79`$bA6`s6$^~|MLCRBm z$RbR}<-q|dQDbGAjGD6oPfIw^qah|I>_?7`NG6++b0a238=3FC%`hkHY<%KvEAg7} z=z{FRN@Y~{$xyjyVinu^(dtW70gZTKWc9S>zAwloZe@j#?fRrH3QYq4wKL?1aBL>kw~ z_yUGmqUtnKx9H_CRlqn%&nGIPPe3CoRtx5p!%k7LrNW5hI1`I6w2XM9<0G}Rd4ZS2eOJmEbF?&UO1SJuRs0vR2B z=NOsuFv)?uqh`7|-vHl^^J*6f|4yk`~qPx82I2q;^e66jxfRF6*>ccsdjm+O6T#T(a+@q_=l9Wm5c zF2=kd_F`vJ71DcBhkH=Ho`#e}!ApcE3`?@2*O$x;Oz?%&kT~WSeIqub*<1*>NH za-(C(;GlXqET#6)gnr9Y#kCHwZwLJpSjGtMM-Cfs8H;RUUM9# z%K7Dz6pfmoi0@hVyEW-}0URkXI&=WSSR}me4XB?lcff#Itf)F)Qq|@wuL&=(Z;UHh zFRp^Wg%2uCOZ$Dh-3l}o*Mv*DAnZV|>CLaLl+i@jgCexdt6dD`X1gNuhxsPL@#|u+ zQj&K0dvemX@O#k`Ks2w`=TX+~S{v+TwWe8C%AI?#q~8BymLX_>vdHm)I-y_Vhmf zHG7x^5I2VnOqQ~RvMd6+nrhT|ho&mdsl@&16PZ|Vqv+2gLq_@+FNM}9-I=qcnKWaUPYWZKsr!2{dy7pTEgOMw+%`j#D&WP zkjCk9VgTV`5W9wGU_Rq*RMBJ#!Wt`8Z(=p|`%pRx*RVfW>&RC~11!4@x`7TLi`Y9< z)05F50V1*VY|&JZkxgiZBCMce57$vG)j?y63>wOA$Up77@iuTD^ecBGQsGjG-w@#HvMp#!X&IIF(>J51vlk z?nUpaWsOjH#y#-LT@0B{YJ^lJOjfLlR3%wgM&d{ZEJ4-mBgzM|3LxJs`d~y963UL0 zAsV!8!-y%1yW#x43d73XlMN#w;GpENVS&>Stm$g`X?x^}2*oS&rAy-B*Q@lp!+D%| z(8LIZDb|V=_Bc4}NtYXT!~-@V#L~g}uMV5%GD-l$;?U~e+pG5$V7pywcx6Y9jF>mY zd9nXJn^=JBxkP)By$|KEki7}~DXwKe)t$_ayxE4ldD2IX}eR4m?5#Ev5t78hARZrZ_eSt(R5igicj zSD0H@g3E={rDE{Qwe^d^()!w^@|Z;kS5fw`f@6_oa)gWmxkgt4;f8e+`>ev2!`=m? zh)LS)x0s4x^A`$Q_%sE>4AI4JWh=T3M0G>z9t@30(2j*hpMZTQVy|EN~KxkO_2@S7O8TMJ_uJRn_V1~c0&eeox?@_PFMJtdtjV8 z(BmIO1>6bt$J<<1+FVstrz08zS3hob5No-p7!-aOR+c9?5m(2DxMnY)t-j4^V@gn-2H5toZNwnI`G=~d54 z;!35p!6`m|jG3gMH*Icij`^?@a);(FIxdVxHfN+P+(L2MU>-{_zCo0RY$#SKp_0S44_*Flb$;1a)QluA}zf{DTij^U>x>>v127r6)ee7 zGfJc+Qf+amL<Qix_{vdu)qK0zG~OiCqeRob4CA)q@P7x}{(z0@{ zV%EX(0pr0AO_nh~U2k+m^3qdBt8l{J(BtKQHc|tLsFD2zSy4$0TM_8K`CBa?(hFp?&yYM`VRRURy)v4$ z?3Bx7gp$fdSa~njWF)&vT1N~~YsADZC&9gi3z1@?;9^G1^x=yFBc>LQv=cUNr6!FR z*(^d}0iw<;p~HgGJ=!7SbOZAGL*@H6R9e;;OT!#*isaaFW8jP*;;-X#NX^F}!5q5G}AB ztlT0pkk9Z2J*|>K@(!Mmn~i)K)+jx@u@aA^vBZSJ18OmXp4?i)L08T`M^6rnI_L8we&q>n(T?v8cZUPnRnEtMB@9` zhy;((^~T=h`(hp98b?-}h4f){8xbveoOPCFK#HyKf$SaIxMNF^u@_~vsX4*02{*A3 zqe-1NMe9HpC!X0=Ky|)UTn*Odeh*Hy19%A9C~OpY#%@5rZ@ej+vMa^ajqvu*R*$lv zwgSgDYxSwFP#U6&dg0+XCbRy0%AUyJtJx?Q;0CXV1BRhK*R$CdOKb2!9?l&?;)7Fk zY^;kOc5=7$lV&2&8$$8T)eN`YbbCJ=tYElZET@Q@(O!G)TJhR7oOcq{LQ}kmja*|d zpTbrVq}6Cz<0HwWSXg`{Vu`Vf3Lf%f+k^BbE`#>P+(NyH7WZHjDRcbX$f^bAFtYC_ zj4K?5a)>v>WofZfuc)0uxX<*xOjhhjj6=NYY*1gU?=Oy@oiRF8!=t^5C#qxRMy{Ka z9WXsnsq^TlaGILf4p0M>#F5dXF?Fn0j}<;lgW|EJvAo?p1^E+YJa!*AjkrBxZ+WG# zgd@ic5~E-WmVhE6p}c249F%S`nGguW=;1~EC)vwX5sR4R;p zEu0gi+0CF9a4H)_I`IqCX}#@i3@G4KJXAd;wnv6uXe6p~HYxz8sN4B&n9M<4foBC| z4#KgV>Sn5Z(N@dB<+`;kO#r7As4g0VYh<|{ zrZsnH4J-0&DVNniBN=Nja-Su8x7Fb!F&PSPC)BzV&DtA zt=2?pNE}5K(`0bdU&e#fIFZ%z&pH_!%U`EJY#?#qRLgC>D*zmVWR%cIlCG93`5pKr-tGaqVhr<X=y|uE5%5$^=({rJ}+mCE^q0IBG zu4{Uot@S!F>-|20gf`fUv{|&gVU9u2mDs^KyAil-68DlnrdWjirqs@7=_zZI5jWpg zKl%5w2W7oxfC+HY!|$>luh|V%W&&r`DU?is011##dBEFTP?1%oX{@Rv?!i=ZVR&+K ze7JLp)&FKVnY}sM(?5O%`g8VWe0F_4ry$1R>J^12jfNZmZ%(kyB&EEI|5Q+{6)1uOsM>8GDF^**{qAe)`GfgMa#|c*K9`lK=VN zKji=W2lB}aY2G9t{+C1O2Lv$Z9!X4a<1a?=<5gqs+%E*J`|d{|Ksi?_4LCZOD&PHTnloA5|WRnHUz<3i$ zFC6mBqtSGGX5@p~C;P6>FgCd?O$)CjgXp_jTfeu_pyo7Fr7)VYa7zCHXPi}(C4*o* z$YWff$RiMWK(0Djb^Zr~@(Fu1yL?!vo&?dJ^DJeg_>2N*dqu;uhuVN>asaSdyEy>F z+!(l~ET+y(!=i;nU6tE<_OxnFthKc?+as`A1duNEhx>P~wp#pcayTZK>L|K0g=nyU z)vygKKzYPP!K}P37>s@Xu;RF5K$Y*ANc-{FYJ}SP+IE zCme#m1Mqw*QQs;`e(QMa0HA+MaSFis&59L{`=>lb8!5n>Qtb+m{*~K+|L-?h0Tk!k zZ7ZgMI?K$%W@&+oL*{0qC`S1_Dxz_>1kd8>{_OOIQV}VZUH&iAnE0$R$>hU7z&>#d zlcKK}9Fh9ZpP31xPbuSl2vvRb^XYJ$?Hi6DYgEK=hhYzB{FDI7q2zhV5Pcx%0mPSG z`uaFX1dj1Mp$|AF`grl4KNt7=#?d}pO;DjyMiLmXvIT~aC$}CUm_X&lbx~2Q7-MDpq5`lfMF6`_0A(c#t-^&IuSKPp zhna<(W?*G?cw{C_7jmj$Ih7vsG^QM_FopXP0zoImGyElEqq-JS!@H0)Daj4~96C&& z-A7i-F4hqSvQaUPS;80hdniLaERId76*CX7N6L;^0Wc>pKMnss83^i+3xE9;tBjIl z2Ej5(Q`UH?2e{g36Pcx77+L{-)&kHELrcJ^6kwDJxIS}?06rK~XlYmE6Lnq*`x@Ba zaRjrXNOrsO+e#Bpz?yiHshs(n?5O_r?k%GpD_Mmr@^_~A)ldFC$fmND4E8_zaz}X; zow~fSPcwrp0Q8=&os0bP3)a;w1MPxAB4gTF0fcer?elD(#eZKs7c2W>rv2{Yy>1QK z@4?wGyI0`l_OVbSRrO$T3*+PdYnV5>i+z2ns+j16kCPp4j4^L_Rn1R*SzH}PeHUx*#CRrdX1Dm^zy4F3 zdT%WvYUFi2900V8^826sssW2nv>z% zT_YM)m;)xul?NVN`X&M<}d~kE*W^hd|OfYJ>Tw1fq&)HXP{!Hz_6R-zL`2vI-SD(*}d{~~9 z=3co^%cJ!gAbuOs>&7IgAvaWcxR%a-ArIg=R2hEh1c28}gwdWb+R`>ED`?>0qAOJ} zN&naXWsr-+hLY1Mq!wQ$b@z8B*lCN=$4Ue16yoncp#B{Z9LFuHW6X zLKP$Zch5>&j0XDm{u)6H(kMLbtyRI|e|m`02|TY9GeLvq=jvHyJ&mIxZcrpdsmuH? zveiQ8pEJn$H=n=eNnBV~il`K3=-Dc}SP%b~5&iC&4_!k$JOkOUA)#6jdM|GaxP=#B zS!VxsdpAHiDiE{o{%AW}5RPgV2ap&u(z$zT>vaRIFTK<-f{6nNUL-W%zvEAq;tj$( zl@+1^#Loxft$3`1j0aed*H*&Jpa5RvD7(17g&1Gtc*q+w{3O00CMegU!tPHg2hMgQ z;(xh$U@{S$kYq9FCqZCMx>0v+W}qC*0aR4uhQT95zo}jVnFTq9z_36D3Pw_5-6ycq zyF5eYj0dsq$(}_K%|HxTDUSH*=JxXqR`%+X%1E(;5ydoZa%SSq`$wX~@fQGWf~WG{ zp7gf0nCxj$wzG#AbDs^Cf+ju=h$p~Zf;aoSa7U)Qa-^$qBW$u zI>e|EA-WtOL3BPZQHQIWb*l<;;RV}{$9GRH+Ln7NdZOx%3o_g-hyDHqGo-5huUmM1kIXY$Ow^+^q4!E!I+SuEL?W?q0UWg#zr0S28`B}6-xm}h-$whwtRCUh0}LrO zpc_>gbWty5NhD_jKDJ1dSu`LCR2m_CUdN#6|p$_8{rcCFz_pUvX`3n2DC4F3KttfVS<3dS+*hWyTst zM~W&u?_JK;WbpJ1Y|h(NFwlLDS1q)^Ew$}dMjg*#7`v4xyMYI=2iPN4_WCI4hfiX& zOM9k@E8gA*9UOSfZ0chAv12MZrJ#ZVKuPO`qNY^5^O6&y27Xx10WFtGpp176Ise$r z`{!F;!7L6X?ZD9%GaM4OMwyT%E`F{l(KB#GX*X!C<=M^&r&*C;_rNV2AVa>~XhV+J z^k8IchpKO+qU<`4k?A|O6m*S%{oV$~^#$vT05Zje^ca?bol`@{6oDNh?DG|*SZ|Mo z^}yCvFj}mB_Xh!Ii8-sQN_Clb;ISUGY7=87F4G}eC0|&&R2S8T02W#G#5e?+0N{ej z@O@3B5NY0UT?o4#sts3k#2w}_#ccIi6uu_PQ1*qDp^I)$#f$G)334Zt=rJE|%}uUTOH?bvR_C;6Mx_sZ0tUAzPJ({l zwyU_0`NVdqnfiM$6~zPTTv*0=KYH%gOzjD)vmvsJ!Ex}R0*Y9&QSJl;hEq4Lb!A74iHP6*j)YHj==JRwC7Bs}+i2R@G|7uwBVVe4c93{2DJJ zvb1%azJgP@tO8XqUNT!gad>_INf(w_S}zXp=CkxfjEbuVACoyE+qc~=vWXqG(Uzvv zU)X>+ceaGX)QQaua3G0J*ip{F*{BhAiAMAP1E$mdRTcqhxrw$`Ps3wC7dNQdZ-Fk# zO$9o(1&>Nc%Ny)i3oqMC$1R3MJroxXPg@u|X#g+T4kfOk@!x#7yiOG9FR!mFcKtCm zTzG-P*EYQS?Cj!}=Q0y9@Ib56x6$rEHAyNBzu;jul>UUD`aJO<-Bn-ED5%=i_3iBg zD2T<~A82~I)go`yc+U-B001xlK)Ww^WLP5XttJQc*LFpZ`nwkrOeMMrN$=(5M?{b* zVFZoUyU{J7=!%k7r3v(cHwVXond{zWAS-`=3xPNDN1p*I%<|?BKe?`&|KY1J3XMJE zs1kC+L1(f0%*9^p@b@zQGYEkGu%&^%j)o3|?f?>V(RCd(4 z6kXA!Q_9C!SLy9EjC~~Rd3xM zpFW=NvqlgU+04p+Z=nRl?E=9Xh0~vYoVZ%v>c{=v@sF1mSN}~Gj=0K?2jjtLI>EjD zk=)des`&IHGSxr6zZxtMi_p)OW7p1UXT*pgXRNM%l!eA4QK0_HqB&HN)DyCyco7DF z;lJ)D$XPrz~g+k!#qac{LYa#)`pYjwIc8k})jmEd~#ufnfb{Gw^$l7ic?Bnhh>;(|h zvpkr>lYXb<4lP0kZBeh9)sDOOq40Y*i*#QEm`DrEWJ9Rw*Kz|d)n>yvmO0Y^FtU^E zE0SFhzz<_SaEHhJG?jAKp+(9Xqb^@Bd_<-;kQ{9NE|w`hQZxU_F}q?{K{3nMc{WM@ zt*~}ANFbvgSAx1`>#?7)7JMCvww9jVyhU#i^v*TfyiC%w=2YVuV|;d1#46*swpZ<3 zH*X(6AcTe1gXOCX?BT{>_sHNcC)x4QFYqJ&?;~*&B1(+?pJXjD8-CN!n`w@*d?%}O zsAyxh-mm5ETnu) zg|hV`y}Xsp7Z=&>Vs6Cmv?g#vVP0o&V~f#I;;r>c&`NEi35nBU!cbaFf=U;Q`{?|I2&Z{V zNgcPpZ3DJl#}g?_CgL5z8^h1KaUj2|7ygMC*Zbn+H5lR{+tAxPR-De(HuzDIUp6dA zXqj;W)dz{;ik4GJ^g|}*g85v?Qfq4v{(+sz;gzV?hngU2rZj&wMJ(YEC5JKcEJ~1^ zLa`%o*!FzJBT5f-a|8RKK2X2)LXPGtQRID5Z*~xRrth@J`r)ml>)LsEl<8=zCRA@| zvplK29ZdgPv7vesgYd=j;!#`KcqkON)AV{>T)d601Djn3^3Ef@&Cc6zbsgz%6_sjPm9%diUu8X48y^7>1^+!(sWSM1hf}k%kzHN9UkwRviG2nu(C3gR4OaoL{+7jF)eb*v zj|Y>-8iW^{9gvnsXn_5Z#rY1bsH)AdsWB1dUdVlv6oeJ22~pG-vMw46SO)-6>}FSI zcS!h?540PBpSz6b#h3Q9tM9eEKI^XHNUHAgw^{u5TKFEk+<)_O|K}pSsP=7VH?lTq zp(%MjByCXmFc%a18T(+4D(uh+wbC()e71K zZdv;6zN^^{r>E(2sjRO{qkusF3e8nnzxnb#B+`5h&h8u;0{w&;<5>N4VNtFv+Hx!JiKMJt*Sad8of-io~$rerSyY6Sc-|Y9lf}6PGMu;!Hb`i zy>L5Npu5pzYC*)(y4to;rHmQwcX3tOtX3$J1b27xg!P9tfjdQzSoWJQv7WLr?RR>D zPKXE|EYg(f28jSze!_i=M7OpdH`Iy7P*Vk;`0vY}m0z^q(XRQ5*{>zFJT5Q)YGo&3 z5EBSda7Q3&(mY6E@W6VzJU_rH3ZHLFOq^>i0?De?82M{$<)+r^MX{78&vV~R%s>(_`%o~DPTHXesWZ)HyVQ&E z+B!d@%X5484#SeS9?Njv^`e&ZUDS$I1!FISb5&z=`1mDmZ}^`ia*lZdvQv8?P5eNG z2zNX<80-v&gBEI?NOg_kHpl(mLBF@tryx%ASiV6~oSl4Qh_N+o9&T&z*P^IT*ZgftWgMM5SFAc14SFhFSH%H zfs^)21@Q6NS1{mNwZDviSHDwi#fhyaqU@<&S(u;z)`#-??1sVY^d6L0r+tQ*3P6b8 zhU+i*xX}P}>IHcpI#rCn-@eOu<$@$=#K0oV7qGdQsJ779!IEPq_&U)Y`&CgMx-A&| zDVB1Dt*lCih+8VkPH3nJ!ethY#&H`6?CpK=?dV_c zO;#<#zMgzgPGXg5T~h(b3*OXdd;nru--yA8?8*3<+}}Rk3hn0|LU}AvhDAioex>@4 zk@x5spB4Uc#8)4(gT>9y+?MhAMZC^zR-~4WL9~cY_~z`c$Cc_2vB1ilMw~pHMouBz zgXa)y)(CwLz1B5>b}NJ$Wvc-7I@i;N{{Hfd+>P44)LT1PJcPz5+!H1xx!^?nJc%S@ zOv~)CxyTHo#EMmy*Vobzl{)VA*+=$-z^!)LC{GrP{rnt-6P5EtzMMncU6ncMY40D% zy|k5Z`8emTLGrAh%LXd+x#{VSSJpv?O_h1F%262vqhBe>GyCW0_-M8>oQ|p|jE{Dy zaC-Rm9sg?*Zq7ffG;&JC%$XSSGXTVf{?)>V&Vdc{2r?BUiF{Nk-@ic1P_~2m3&RQv z(*gBi#L`)ngC7=G(zGrUW7WfSbplzT%sL|F)GzQafS2ny5yqUr_9m09%7A!}S_#b( z!+rB2gBIK~#JUZwP*-QX1@~*AAhR8RZ^#S#=Y07T>0x4v88zQRk0N3-unNij8?PX* zYLB3{7L0a6h8@A;{#szv*vf>B?Dige3nACf3v9+HJRIeB6rL?%VBCULT6a*8P&gDq z(=|v46ftV=^54FZ#s*~STL@}U*VcQjN4RpssAoGyVB71rp0&aap>J)W(eqT{0?*OS zHfBa98&zWcn<2AjC2wS4vI1sHK#>Od{-RN#017)HADH_F2uKXjcRxW0NNdsk9M6ui z&436}R~niN3;~Otmg^gQrws6h1%63mF6x{sIVXHIOydGHXmh-m2k)}VhnnP~AZQ^W z{@|n6P#Dp@F)52|d5Myot6-aB@&P3|Xs2FaMDpJ@Q#=UCqORo}R{YS2(7RrJ({{TP zCMuS=l-4bFsuRr_#B)2l7rKTjt5(0n>&}JgZ$jtf+*0XQWkEsQ#)jVjF$ z+m8v?K+_*9C02=#L@CG!z9q)3%$X5(wQq5nWCfQ&Yc783@4o2RSw?V47*3PZ=_@Zn zRwuL=%}GTSW6s4xZ8e6BpB33I0>)V7y_U0TiTAeKg|3WSy{~;9f#uUw8BMxz=nMDy z+6#`zP1=ayWL+ABalimyuS8?y!4TfHF- zl)z9DUdmpzGPjiD1cA>)Zb5!)k_<$Or#|S+T;9N?Z>fU@(F?bWlffZ zp6Vo1XY@AXDJ|2iy}Pp-VUQ+xwyi_!K;6(EUO-oR5l+?MO z60>jWV={iwZ`qEd8Rc2fIC5JyqJegH0Cx@6PjBn`>=U{(bde?imSFH9ECcWHQ%kCb zoL)hi`dvYfV#idCtlxhpKlr;DAQsRB%uk39vn-<;O8^yNNVw`gHkdYSrE9~b>WU<( z_>uq9DX%N3&0emMG&cJJvkq3h7Gp-WB5hQ6QeKCRRC-T0>uL~oNyv7Ph1=fSI!7Ox6f;s2UPohverM&1Y2;&xH!p>m} z1mfxRFzZw!ba-;Ne}8dT9Rkv>GBAzezWP3>LlT~|+_5FrsgmuVO>ISk=Y^z>WT3p@ zijX|P{x8dNjC)&;W(>4*Fw$w*nXfM`V_95uS+Hqfut%MT!W4_Uc>?s34=S9lA(FO)~8Z>x52A0DbEzsx4J5fMA_%SI?yr71+s z)9FZXO4OGZupScNzzfbc_5+UW0%;=yX?gZqgXR&XEc`fZ)u=XN$mOCtW6u=B!4{J^ zS`++?+3Q@E_n|G4+moeDs1)o-88M%{2ByJFGMgkx((J^1z|%;tNwwkd7Hze%(7M`c zo*z4%oy-|$@dd*JK3kl$^AmQp)`O{{PaKX1KeupyE44g$MddD)9mwEyQlFDZqUmcl z-@*{$aTP7cVtj`x+`LX|kRh<9F}hMNPJY{me)21{t{!T?bAG4UZm!hHQ%W=xt?tdPrIl~Bk|MU#e6Xo z2qpv7oSOuIE~aa&Sh9PBxGbeC>{Hc<8Ff}jl|09rtY#$Rm%j^2qO2?bhT-4|1y9z8 zh-}40^nk*Bq0s>%0Po8UOzlTjCD*Yo`ZL)j<%{-2c}UPqs?o{b%`%iuJ|NvP;P9RE@CGaxN}Dq;v$5+b%y0Jzl|jOSZB#Lq zaSCnFL*FWmQLBLQYB;6*&F;xjh?ojSX#=MBG}u^E{7(8dlWy#N8c4yEUaU+MV?4-% zH`aJa%u_7xmo={0ycrrwo!hP;r9F8+T;M^WXC7Tcc|8UJe1*lRSU&ND@GPIdFyFFM z3GQI8vezl_^2`;}f*R1vOk%}U@XQf3hv!1IV+r^fvj!p0FOPSaGIE3Jr8iKp`mkUv zjfRZ7Nb0C<8Hh61xQ3&KBd)r>t!Qgi5MO@u+8VAcLLEB~T3Kk(%udT26!$EPbV#gC zp0cvZ?>t|`a%8c`Xt)+)UGf^_*>kwG+-&9|0)a{*-pDdvjEAq=*V7hgKjq*{(91h@7MPv1xecYM`^KlM{(o4DRmf}D{Gj&MlWsYXy>MQF;>2p z^+N7;sfh;l*8LB9kFOX96@mCG5H9uozb^jP*&~b-Ro#m5hiLzwi-0B}Ob^bO%8rHj zTNS4mX}`%I^APphsCnkCd>A^8mU^v zdc^*kft|e=9K+sly=ILEhl0a&P*B{{ zgmBL1>y~ij$1eZlTt=E&s`%C3RPBM>ro@hQ1`@#0e6Z%2ajT@9pv?y}YQxZfdgGRA zG=qRR?>O9_p@q)X?U3_$w7t-cSF>>xzpSJbLErO|J?$6Ltm@!&JW_AYiZb}p-tKxV z)LcT#EBD<9Bc>Q6^#_a4^iVFSemIn>>AZX+tVxzdj{QAeHoqD!vZx=k?)47`zcm#QQ*>9)KSWABZMo$K>W!gzLm%BZuO400Dwe4}9h9;)7@O z4FI!OK<$u%eL_kGYv~DA3om^QnJh!u?usCu%BIrT?D7uCETWn!^iVAt6SA>9c%|wL zTMGzD{BPNiV%ii*UvI}E@1ZN0sNh{po1g7ky`eE*2CQpf?%vhI=;FeZf1W)r&lmsF zXZG2vG4xEM{l)F2=M$2m8SS|6wbAI}>0Bq16FVOM21xIpqnR9<8A#VduhE;f@={QE z577my+flyyi)+8+DDavV65|T9-rM<}hbW53Twk-Q*2{>z{CPGEm#!F>RUxEz|I)_v zY_+~>pl92_vvut3-B`YCb!dE7LmLiQRxu$MhJVGQ#TG?bNJs8>J>EbrfDiC;bbVJ# z1O!YP&bc#|wnm3Xv%xq5#E96;a|LuwUde;?FOttnBY=H z#UDk*_m-w;A4&$Tz7H7siGA#Z`P@=rLL zr0-dEm-flF4v)1?A08JxNLOvc#V`Yrui8ANp%12Lv0#q^Zu%-S9ln{2sp7RtB$%*|@$l`zscOWY437^+6y^a*e>6EUM?-=oKA1WM+Rv^t*z)z<)#EPyCHCz0*5rT7XZzo8-kG`P3iJ=gx z$ASOBjKH#>JkA7ID3gm=i-D?y16EmBG6Lrnh&$EEN0lG`iPhPOZEwNCSAh6a1-ADp z?Wr(MTZ0EDy9hNju=NKN<(YL<GV+lyU2NogNDE z2rKW!b5hgGVClz9w#B_iB{*m{nOD`hoX<(v%?aort8Yb@_C}MFSF`c(x1-Y&UVZl! zgM?n;TO>ii_YjcovZ)3G2jaLTW+rUGRI_^D;J%oSla^9Cug+FG(v+w{=4lHT+4EUm z4Kb>hCh+zWKb`R^K$x>#*>?_kf4lg65=EV3WgDGlIC#Qu$Sh{BfCGZl&t?W;58TE* zcBVIE`ra&W#wjd*H!w)178IO1AUy!$_ixcW)rv?kP*4kS*Mx8M!>*Ly=?1AZF!Zgi zF(~0wMUz?foaKnqnZqq9{^FDuab!6nFf4``~mPG+{b{p(=t^|5TOf??E0HH^HW*P^5B=)~e#9A6dT zR(86(Z7gy@%)?6Gq|hZRe^Zyp79#Dzza3u6l@K9f)w!pFBnB^HYln@9Oyr7ewtKtU zeSCn_mgzH|-KUWGxSYh5#EA-&aiS2z=;p~F@JA%Bg=sx@0KDBKdrN4VuStih3Bm-f zjqcl*(C*e__AIQghKNfG%%EMlq%761C#T0FxGa>Ie`~Pry%D82>+qdi+&EG|A%tkT z#NZQjg~iC~3+H5G5Oogiz6vdl6{$#2UnNG}cJayaX!lT&(b=oRgICoOF+2Oa&B8K0 zgnp2o7`>Uj8;(y$vl85X(gJR`GF;=)JID|$B*LhV_J^nAlWH5uS%+__{Z^c1D}fE< zI|tp`GYffoyg#H+jpQm-0tdJHnAM5B3DSMRQ)G`fs5x$>a3o&=r(TD}Nk2p&dJL#( z=(30ji&&skw0Cp=HgLQ)^U6`n$k(N#s;6MW3FKfqnVB#ZP0<%tX+bblOP3i79toF? zU?HPwFz==9nFT4tfkZ4L+$e*A&QJK?pD+~60AXg8Q7wCXgVifSQlhQI(ot;T;fxPy zU=jIUMR=F(L*>Ycuy|dUnkqe!cdLJExGusE%A8PP-2PY4U`z`m6_^fDKUF>zN^DL+ zEvl}v?-+1}8D3XI4M9pJcA2v*e|XxvYW5zzFu5 zW2Yx$-S1u4hS4?nM#{*%V;I5nC5{;w#7nBnS#1)1DmE7~eM}24Q-b-zP~cC>ID)7T zrAGKksW&h+Z^n-k5TMl(9WD-s4GW7`>qE^!lCz9RFf?JTXsS2jzPUa(AR%j1MG zVtEwi8F5qJZ(2@`y}Y=2LO=s+mGnsc#`;Llzktq&WlF5<+M{Hle95TYH2vb|?6gc7 zCnY^|p7wtgO01n?f7)6?w=lHp$FUFQ@hkNAd?c^=es_&dqZ^kB51^|>M=*ke+W6Di%6<`) z7zf0%o<H$=n2YBmH`U*N}- z`4N&d0SYAj<%AcSUg-+!2?r#iWI8X{sNE`lAeP&X+vtMVua4`~pECk1h~>>~+0kHl zA1Y*qA<0(&ZLN!Kq_i-JJMO3JoJhkeRra53)s4Y3*BIZ#X0$0ME1PdoQmm8bUd?8> z17aG>ik{x5bwW5TDMa>)#-+XG;U*D5SJFy&lRn?s7$HOn=5S1sgGs)z-}fOc4#pcS z6{cjJVlv`x=@lF072S-JzY)bKz(q7A6?BUvfZOQa(r9)^1q5}8>m zMNUVLRNRR6Dn3?#MRrQMJy1}|i_(y{vk%2=7v8>BtH!FtQ3iqZ#77Vl=;;zJQnL22GfixaS3-7*&(jaZ}dqx#u*b3?h9rR;Eb z7x|a@R{=qDZ*e~@7>xbfN|4E=?j2Dt5~&B2b@w%?f#d+r_$4;HO%_`1$ufB=1RA?n z6<5n@n3k52{rR`)Pia6^D$>|U3WS8fY8dB(G8&!3bhvbro0v8sApM|zU!ULNTvho{ zg7!z&(f^leOXH(|v05woG>e<}4~8~1#aKE_2tb8n3a)O`}POYhzwbbi*m7OAeheIOM_1jlhJGVj^)jj~t*8&|W+4U!qNoqe+ys!Kv-Bxw;jLCrCSr5s8GOsUYBd| z_p!~itz^2%z~p29zGaB{P%Y0>EJBI}Ru9!fNs6CE6=5^)t(0|z!lP+f-C{d7bI$Ym z+)h+;gm_%l4Gp`>!~_Y}x$e_mfhSh#a!j+SceZ z(ic0y?4O&)vbp$BtAhjh5pI|BQZ_zC7af@x~zy2rEOol0bJGqKGpA^ z*Xcw9nF(R@i{r7{i^=WX#beje0<-)Jb^uQCCJEl*q{4-MZ95683N$(LELGrDXLTse<05drCnfo5fdU@&`N z{%IO3q^4HZBqMHy%5yEm5JDK z+|Okc%y@0%N&o2r7KU{cx+bQ!4E18WQQ`G!l?#@)`4l1dh*5gyie;szj7!TYQvtoi3m(c+NPw+JObQ(-h+pJ54#P-3Y@pC1}zD9weC zN2hR{+iO8VLVK{qAgU|sH;57WpxV1NKO=MazQf(o$Wb!FW2KJF4+s2@K$0Mc(k~VB z-PlwSklABO1%O1EZ`i4!jT&|yrf8&BObOuOsv85ZP}?6SqzYHyuTw2*BnpO@<@(I{ z#wM!#&44o!gUv%mQZfj7QMKQ)C5EL}SR4KR+IefXG=TI1U|Hnh8Erwk*B}9U2kax) zhtVG^v*Q!SL_aVlTFD8CNPbEfskPBtE2Q*yJb|M-)lPzFBWQc4UVp4=a13nDy1st> zM)(x!_SO@&SrG1+@Fosci1izRzyew46eMB5wrb&YYTV~*oot01mHjk`%6j#&PFs>d znlM^Ev{-Gg&(Br9qf?Zpx4zx+h`r6OC+Tf>D)jf)t!z-G?n7Ap3+)t!7#P$BbE3(4 zXq*yw62C_Qf2ECW4Pv~KnA85^00JWiKCNy-B8CHog%gq7Xph}2r;*cj6`d$o|(e=mw82CXSl)tEqx2d7y$A3*`q8npqX`w?2mKsS$GkKPLMb7s-X z%&&A51Qvtgac2Z}L2j}Wxnh4f#~%K#^e){hVZEkem*oufPxC3+s5G`p)OU?eG0=b> z;Y`F#+es8T zmzXGM5vu>kf0)qzfBsM9X|ZK&N5=F}VS>9ec?MUDYdt~!UHJ9&nOvLEc)2zjpTp(g zZ-PkXXueGe6OH@+>05%77;UV;65q_Z-M>>>h&an^qh84#lum`rVT*P7{l4q1BPHZd zHp3!La?q67Lxc`{ZfUfYw%;qC^7}qlEZtzd3i`#I(!ZcxY65i<7Dl*tF7q!05pFB0 z3k+)(Q~sej0zO2hGO1YNoFI!I$i8Tbp#QI`YI3Z>QDv8qiX`xldARx<)+_!*;vd=E zo?aqV1uEkB7T;-b*MYv3=^q{oofN^kg>};wnfS}aPaf4!vWPIMI}bzK(OT z*TdJZJEnB=>_Vi1dEz+iqq3^eKX*bLhSW>c zt=^Yxb^IM5pF{V2*g0J!bYz?k2KSrzk8hNlCLNQVK;$Ab1Ts)Sz==tyt&G|P2wp(` zU4!kFaQ@@P)fqbFqp6+rPt+t2>1$!cZ5r^Z@4wn1#L90T_D$CMa5eq9dIx`%Zl1-rYXzL0+~Qp@Dg2^|%NRi+SYp%+|+~+g+8!)inC&?d>(4 zA~dK?5fCb0LVI+KO*PF-wZ`+Zdjhy~QVGE~hK`;i=S;nDPk;2nAAK91yHE&M$ABc zs)=uf8~Cb~5(6i;2j8Ye2HN=+qI#=x>FAgQ$I%`e?Ra=nMD?U#Yp^_}{1p`}kntg4 z1M~;rRt-dFhFAq3v3*8J*8JXl3rMxe;*<*aq<%7`G*~P+q^o<%mxP?5MS3FMpqC~R z8CdO>rBI1>g}bhDuekYY(g_Gi(k3X52-{G-Qa-WkYgow1Ua%z--Rl*|S_P8}ZBqCU zzx_70LaSXP+SmyiYD#hWWHvhI*RQznUZ~(|^?|Z}C8t3ep&D9-C?=Kwgh_w8%f*B+ zu8RdBi@F7bS&2fJ>#GwC+@5IH;^Y>{o&ROXr7(~c+LwXGxZ8$Xp&0o6y?NM~S5J`T zk5+J?O)T#>9@#E721@EZD;JkhlOXTge|Hsg5<`OHgT7c2>;B&z{d=RQE4K2k zE4KE#jtn^Wn zkdditk>L%GAEz&$#QI67et?I<^>$jOkIk5bl0FAabuq}O)@3=Lwg+b}c?zM)=`cY; zm4EdCpXLwAKm*+3TNv(30Ut+NQ#IyV*gTLF8n3d>@b4{>XH(UDH=$S{pLi-|_D@Q3 zD|N;i5`gC(CI>{XERr0`YFJ%bIdQ`X_H0Wzh3P=Gt#LQP>zN{!v13+Okg+|Mu7qqk z6En$o+q$ieO6EoTs#LX`+(I-XK#AWAFNRZiKv9jE`HLsLxM!MCUYLARNqo{YF~oC8 zSn9J4q}|?$k1=CL>@uwjbbU?jzGQHOjTQsJ>>gY%a7%6#QxOpb?@XkGGMT5R#s4oz z6E$>kd4LFUSq!Gc=CZI`ttim%#p8u%DEh%0F|d7F#^LDrWVmxUmL+J%NO`)#+H5#M z5n$#v{Os=W{{6!4Q9ldZcX7`~mo(bs?1cMi1lP86NT)@vLXlx;J1@LsOpm#H8=krC z{P;yKDdCO*bat~`-C{!DA+At+FGoWA_q%VP{SSBEFkG=`Ap=uX8wJ7o_1e(KjFAQx zAyn0Cc&Vt9~K5(K_hmt$8$w58k`E9p{1h;fl`=Eoa!BQc zj$|(rt(7BMFN-270wQSpl&z#Tt0XDys`+*Vz?bu~3xUsmk5|EmaiT<5)@GgJM1g;p zg2pZJfKI$_>RjIop`RVb5iekU@2*mi5)yr1QBaYJV66Ez;iZ+Lx;F8(Em8hxv7N$n z4wD5l(u5`f^fAfucAF0NyX;6ez6^n${tkRmWY)?_Tujs}#2h13d&?0w zReg`%dVHEB(5emk5n;?4K>qe_Emlh?I-R>;o(UmZ&I~JYAOw_2a()}2T~}G5)4zRD zQ%=TAE2hKDfwqYSWs+I~Z$#ua<5PaDK5unEMX^lllVDCnpQ9$buAvuKszCHrvt{fn zzD67JxQ`i_?)D15_8jJ>+3G;T47j|EbOq!CPR?-Wj1tGPFs;@7hHKHk^*Ux&U=nIk z#kPOBS;58qO@|nYS>?bz>G*0Ax(aOU2@^MrzcNeiiDk+4X1;UV2p85E>}?bX3n6a} zd=}MuD)0-#*~S>MT}k?m-cX^lC2@Z z7^)tzCM5wZqMdqdmV;oSe!0Y;Hbh}*J$~DbqoPa+ANZJkgssFDWX=x<(WFvpu zaI`>y$jsW$!Y=`;4vvGV;|_c`c-KyHF7Pua)%>fDGv%C6E>N2a_#Xd zUX0@)DUf~kfOZtBBG_)S;_ZK9Ws|>+^J5B7kEWpH-xqIEkSz`W<&9PG$%B0G&Fylv zNM?-srM6sdhT*|h-PnA4eS!?gaKk9|-sOJ_m~e$Skxa#jSoa?%=aX~-b;+at!3WCM zeNn^N^k}YaaN2#6ZMTYJm_#xc6@Oc6YQlvmm;pR}^}rxT}y6I_~A3u(?*ujGRXf{3j3&B+@o9pF^pYOF^ zKf0=@*rS0`T>i(p5JjgDzo`UJqI>UzkeVe6e$JmPY?-)AO9b-gROH*&7 zVk-uRR=(OCZ#q#C_}E4cR102sLh&n!aJbh|Qy^%&bfW#$SZ&gK78yq2PTw;I^0h;9 ztx}Dm@?!#4B&bN7qBX!2#sw*;x}EUsgpU{H8?XlB8zIV0Qj_Z36X%ZF83G9FK;tGybz@#0UW`c8}h&sSqGK zI665JCR|3R{+ES*_V#q_OH30cu0)6hkNFb4O;6NW5Zh7Y+VPzRByswS< zJB-L`2?UmLm0+`7>jfncuAlDA3W}CbXITMr@)OgmuySm*?Yzva8?(vCO5uU)?4Hak zZILt=08`Oft-9@j)3NpWUsq}qCoJMxC4mZ^3%Lxnpo-+FzN@9As=%LaN-x>0 z5%FD*wSNB>Hpb{7s;LSE+N!BJz}P(hY9l|g5oDB0!HI>7Jm%Z8w-(L?q7U6jdAS=x zEefgLEapFGTo`o#5t!8j+c3qJhyjR5V5|b&=m-4=zW_Ozt1F4we}<)b4QX$NvvPyk z>aMJ5Z)_J-sL91?zA4gL!~tl!N5rV+RHt@Ep8Msuir(rB1SdvDe>zT}*XPheeoI5GV zTCrb-b!lApw(LNMv}|ml6qGGl44b=N{4bs(x49D|G9hOaC<^zhe-;0x#DFsrKywqX zyF)PFB#=Yhh1uTWn?g&P=_tK36#q}pwjJ3)GWT$Np2IGJ#S@zF1+G{Zsy^)2!L>8r#26R_g;GlVqYwbLCPFjW3* zS0x4Zj%EUSQc=J>nwe+|pvzGpjQazAC26_Ej)Eg>C`5fK2-W-$|Byaa3J;uC;-|A% zZV&I4CkzYdQ%h}M_{OfZtjOYUa+r}Qc)UJdAU4lt<-scht?ek~acr232|SryQVyZ+ zK!v@qF*w*5>@Y2wJcAt=1qlAPFah}4$^bO@4G#PNwT(Uih!bi-lj9I55zPZT`PxCg zcAT#bxop~2yr4;IIIdJYsFNFx(;5Zp5JMLe%-JK@A$&2IRS^{w^kxRjdn4XXRZuS` zz!*gJ2y}V)1PZ&)PNB?YvG6eJ;gh4|;qh-2gSx$5Uibh2x-5`z5_o@7;Ha3F7Ce` z3LnmhakLey45$~FHDGflz(5?GU%3lMWn1C7yL3F7^Y1_GOO(Fk3ha1Hn9(Y~>|s=7 zch&Y3N!i8yFR&NIL7)?LdxGR74s9L5xH2St|B}hBB^fy8uP25gGeg0i)c(A`Jy%`8 zb5C%1E{r5!z}qAs7=O7$3|7Y~s4%`3)||Df2_|rc+{2KRp54D^rS^;bpuzM#bg?oR ze#ij;omIdBGsggii%giIqD7IM1=6z6oT1s^<6aw0MQXe{gtC4-pNZRwB^#a`##2%x zeLs@~XK}CO>6zXavk%zAdYGo5vHe^F&k3Ixr2k_2J1__KhQ}h?I*s5Jm2h62jtbSA#Q8-V?8`^Lj=IPVpjAKCO_c?aPO4vIo+K5(a`mBjophK3FH`}bBK z;i;F+pUPqcHp;UR1IlV?uz=mnon&L9I};tiK5ZZi`9#pqcBMTxrNR_yI1%(5JdWni zLJbw#$G$#B2-*|5!wX-B8>_UbTRa`W4u2Pr^iR7!EALe{0{Wq0v~{`VE@MFiO8t2S zGd2$jB0y>3jV$@7KqOlufidiV$W)jzQ*mi{L(#UQB$d@o4txO`1nS9RCa6 z#dF8;JF3T@q!4^|1Izv8zzAnrymkddO|ME9o#l1kztL;|NHy7k~>{Ez1 zC9&w@`kXQcn6l1rd*(b>_dR?30#S)@b#g^CXWVUMgCa4>LLk@^-@p<0u3}Y?JM4II zoh5d4g|ERH^EQ^!A%Vxqn~sTdn|JtaoJnwZN&s`u9Mez}C4uzQ?9Jl%_1m`2DT*v$ z?AW(Y25Dle^#@+`kT-@Aq*b}-UZ@|qtDm8>6_1S5e6>2`zq};#AGUzh2l(IX)qCgD z>s~f~Lfm$H30D9%%=-_O8U@Pj-jwVD!LGsu{ng`nmd2R7*pSVPbZSFeR1(>2BBdQ&P`4Y3h zMQ&qG3|Foa4v})`>II~Wls*A7%av3Vn+dOO9ac#SK3At9(w?7F$LY7&IKvViGCY!=f#9=S- zIm5h=?*W`t3o!j2pmpXX`f#s4Lo65{>r(_f)yh-wNqPf-4#tI!i+OyjidWIbTjB>2y|n6LDY( zMz`H6p5nb;Kf^f^s=y@;9p${u8L6KpXJEcKe{8TYG~fzrzhuMIuTLG9gnZ(=0+xcJ zXw@>`AcgQ3SzPdd7lh}4H7j-wELj@I=$#kKKc zzCQyia^G=aLDJhXBmy$yEA3&$4}9FDLsl$UHY&NTU=Z7BHyOIC2pjQpFXq#=cE145ELC+1vd~oU-oCj>vte zbZREH6G>{=0F=zIDP*OX@cqqvH8S(7#N+#c0Ky1w7(D^6QDsr{!pLc%mf#d$JK>~a z3+9_bx>VMRz(4iH#UP`V9(A0klKmm(rI#+#IRkP(j}UxuHf0+f&PON<39rsGnSEl* zSgZh$Z&onk`q?_s-k&$@RQGom0JB*FKEA41hXfpy?2hm)&Fi-I+9(xq&<8|j?aS!Z zUV5p0b_Nl_lRt1(8!RPtZ~CjHCE_;2(4gAe;vu9CE1#ujWL(^HBTuUzTq)A1 z))65pVId?sM<3Pc1ojI5qJS@7<$N#o--D{52;&KLCbJcn8MV-$`(tTYmSG8#% z(RGVFXnZ_(9q)&~lH5BE{h+j9(<*jG?It$Ys?TV1?FE;10H^=x&C3N=9rV(h+c*iu zTzpqdr8P(xCEHKFtz}XImiT0?S1jZO8R5iQ`=bv&-IWEbBpXVTAPE-mqx|*RXiNviU(0GNYD7G zaAt%Xf&3eEbW|(H^R(Q))VJq;$CE&)fdGSSu;LIH;ZU0K&Ruz+NXc+%Z4mp+az0BO zo%Nv%BKaBN8FcU|WaE)m*Zj5hvT>{DRq*@4_VFP2)YY}&}ud0Y(!(U>EjumnbG8VrN+m}>l}swCLavTQ;8y(wVngy*AB|McbD8}-yF@^G1{n2=2-fv6TYuI~5RrsWja?SDY{Nk` zgy7#C()lN+JM{zT_!30N%=6F;SO=AsOYD_PCB27(y`>&r4&%m z%#SiZj#I*F$L2eYkp4B4T+qMc_6TuOAh*$Jy`GQo7z&8vIz~AwYjqJP zlvIjkeD&setF(IJJcoa3Sf00yI?M$xmnlwY$dY0^i%3ic;Odd8cXCi<8}l#LPX#5_ zbNRp`*4jDH$zNQyqWR&0crVu?e$n`?MH8FKDCU=(U41_LN;n=VtS1r^x9VwAV8L9G z?T)(@Yks=IUm!VK1Wb?X+c?ip1zIL11xm6L4ew`&LJ-RY1Z4 zvTC0fIA(BmKEno$A5~{(FlZ_39XI%MjNt&UCZ$~d+o9F0$4o>aVtZc#!o37O`!N?c zFR=0Fw?vceBFmVCe}>pXZ!i3v0^&DFoN{A#nUj@2H)o>|C1U%D!GRdovSFQGA$fU0 z)rB-eR9-`dwcMQ*J(H1Ib&ymRfjfPp1i?<3EqMm^h;?LiZdmeml=_-5|K3ye%eD%f zc(=5B>`+h2x88ljLRZh6Ft8Ik;p5wU3nlk^d&2~(j?r))1OuMakKgD*YHxNO$n#F1 zcCYK29&+v-;BK_TKHuJd3WDV};T3IR)GGD1G5BOjjrfHHHQ@cYP}c&)Sm_~xF}{WSP_*zOGxk^%E|f*)W|7>;`+bsO9fU0Phr&=Rt(D_b zXt$$ZC&RbXL%7T)0C;%t_UL#tb4mC;4`)wb4flZRy&fIE9kDPOHduXR{;=kEtoQhX zW-ktaMH7;k(u*O&gVpD=JLJ|W{>0q+vl!eB$6UK9T}HUR4}*(DCp=Xzl=NpGEbkix z+Wn4OIJaokn}GG7Zg``_Rx5uT+NLwRP@Nz;ml~zy=`%8Om)Ut3-tVu$SuOmo|+7sQL8VXnc11->R_|DL}R!2S1aZG5zpm&+5C`zgaac(JJ93FQ=X{Gk6i?!`Mq(G9M(+04~rNHojjI9QR z6uZTc%??Wxaj2!TS0EY=D3pMB{+(2;#mmkNKoCP5dpN_QSoZfyiNg=K=*mkbvvR&t>3knS0vt09up3SD(R7FrSA1s_&;T$% z48I~`BJi%`u@A=f6qkV};OJia?f+S?g?4cH7`PH?XO~_Q-}6m@T!kBf4y5J7!QHluX>^UU zsG97R<>VDd?FTzwHgE)A607U)QRKI1izT z3MBaL=^H8;>>L~)old6JL)0ud+676D^-QMReOFH@D0nRcIl#=c6B+?q7==1EBh#`K zh8lCnyk86ZYFUsnNDVS28>kB6g?=L=rIP9C^$h4w#J2znm`%0ep^?2x*9DsNYzm%K;Rc1vv~Ut9^K51*5g~(z0D_QJ zRx?n4fBt~ELhFRhd^0=Sl30PMl00|&?Yy)`eKW8E-2u9jB5bD4n zr5gq{-Q3gfTO0cC&X&Nb`}XhsVX%notbyRxlGw<1fW3eN+Jnwm1v}LueJZMVTLiQk^T=>FoX>2Qic@)NjQ2eo zn+&l*R`;M)D+V&2dt4yn1H(`Z>5#X*?GlNKpEdXBb6_Lf-fuFarB_$?QrvZNu@w)X zv5HzDL=-T~EOcDqEhkfTbjVp2y4x%ja3+|Jy}T72`^~sC<*IumHPR*q7V-_~CpEhGagu)AO{6kjL-)iPT= z3|T*?j;@8z3k=Fg9rZ&N!m}t;&;iFF(rd}Itz+^c$W_mW#bi{j1Oe&|2;A5tLY2n~ ze57|?(dOH|%h=7&RDA_xVVPxG!yu7K36bL4#mo*Iq%b#q(B197oJv}5-7((~jBww>m+wCH-gHLLB2u%ZxM0VsFb@F2EogA<9|o`2@nVU&lka4U+c#Pa!@J_KH8B46sY+72g;m7_E7sc}-8vg&QsE+H5&rwMOxlp*eLgFZuuJ31Rl`yJK?swQaL5>(K@ zN-bcZIYdUpUaAR!gY zt6(-5$>+$LbV7o8N0 z49d4e4y+HW=Ixdf$)f+fBGTi&hz|&vp)nT4`<_ej1~m=B4wxjW9qf8=N>qbxR`Dq% zrLWIETI{&yDSk^&zlQtk$~Fg$e@WrS>~Im3C+bC~2xGy>xeWwfp_Zko0F_SeY&3=G zyFjB0pIhBirf=#1<;wz~Y?^T0CzeQN6N`Dti3^833)XDjA!!he-gPrrqQHK>fr<^w z<@v?k9p<2K#Q(5G;(xOF8HS?{9QT_S2L zNuCRatdY*r{*5!E3%cxGR?l2q5imL@6hOvSr4|~=i}<#BrQW&?Q|m+Bmkl)nT9BW2 z5y2F_QKn~Hl~a?iAZ~@7TS;HNn5@gV@D~70OChzv+U=4mf#U@iK_XoI&GM6FNXvT3 z!vprCd5p?4pRL!h#3~q6~`6TY8OaB`lVHoY(00&<-J@;DTz2M{N)u8 z0zgTrg1FCnL$ZZ5DsoA2D|8CHc6EC*d0Hl80E{}8kgB9&;Lrl;(!z&!@D#Qa?fCWR zVVp4@J;N#UE^dQiAI9u5V7^b|(3#d_U?D?X%gYJqFK(pK^+=3R{NflX(F2nxxxf8t zc%pP-PHHRvRveKdd(kaR+!_hpn9Bg#aN{RWddX;9{zJDj=_fwv|CB$+zobUydgd*t zvAi9%9vDkOr4tLoZe}1hpG8iD(4=s>bs8Xw+eSwffca!@`vP_vGcXvT8=jG7hi?FE zReR7Nsv(B*He%^*IaDDpQHu)gh7(4;3f3=?0%h_Sl4->4YCq?u^ zzuOXA&VPGor_3R>^V5$L2QaUG+}|DlczJR4--41*d-GsC7)>YScYh>A_~SJr>__%m zN^%Ys#QyZNnOKaPCp#nNIYQA+i)lvpgKi8UX)lBzP2IRi`I1I=xNZ&36|ry2fW)2E zgMcI)0TM!sRyhfOXNB)@=d^1mR!ICfDANDUujRpc4QF|RaABW}_G$0t=xv8`&qlwE zW^T#o&^q)xs*KO(w~ut! z4mhn7AP^`bX&hH=p$06Rq_r}%?<{fHW<52pK*`n$Gw$9>@vP!SWQfDnlGJrnx8$uI z*DZs@>P~s!?(FG|f^57%Ik>7W(^KAGV=%5hDV+yIt;AX9{VYs&+c22V@*T2hiJ5_F zb5TrgWc;w#V)W}v1aR@9v$!c*iC8j-~tvJ6& zE`2xDLEorX5sxX3C3qgi5hVVlqAcDXgaqYMg|XA1mVf6dzz{eTIQ>G?`9h_Yz z4^HH^Q7$d%xH~voK?u5_TN-yh8w0?qiASeR)*HjIY-!JV+%9Y~yC8!#&&t@n`bXO4 ztOcyqU`Bd;3b5=rz=Ozi(JnWFgfA+ST7us%RXiz$ANs967*MJR`+eD#JV00>pX|aBwXWc04 zM%GWcr5;5p7OOM9A)l+1YL{qgmr%P2!beHQ>SXVQiZ>xg6L)R=?5B*qTtrBR=!LjX zvGHq*cJx)U(F5Glw&5W-g-qB2;8hZj(-7;HDmTFu#!7^kGGaBgJ`~f_>;j4}M+2AX z?X^xrM8T{JL>&P@1oUy{!r>8@9p#~`;>{v|5)xkA_x6r~QiT|j$c_E*Z^JAP!XNB! z4sFhwa?_Av>hR#q0pJ#o2*$0lik1TpC~Hgq7<$zbCRPneQuV(12D}PgSAkgjDkR%X zCTsPWI>4X3c5Isi?bz$w_XK;#+C_|&1kheTn9sUV+k>KGTie}^*ubRY>&C{#U z;|i*izaAFaxm(BD!TL~!TJ;mQ`W*-IUe}RcCr-WJ>w=^AftK475!|}>DpTRHD9nzB zFjq(}z{tu8?%|uTtR@pbgmu_1Z2prn241fUVT3i_r9y6F_DR663y@r`s+IE+H5HB|Frj zBH6+Tkunk4hF4bxnes8S+FyRbK~>;Cn}Qa8TnSxTL6Bt?925apUxD_PtlNr&n%toc zWY*UjKF@4Ud^EbyGNeNKBM$ony(oJNtjK9Pt_v>Ba3zC7nA$HU=IT%b?nLLPZ!2Jk8AkmsT>S>x@U)4Q{Ff+rucO>fu+S8n z|Ll|bd{j6QCjdeSDJ$78hdk*wTOhT5wyByb#xhWSwW&UAP&yF6vbghIC#$NM5TARBEfVg7V?-dhdG!k+57oU zR0SC?pBa`~U^QX3B26JO020X%EJE#2gc6vavJVv&GMQ~b*BmO2EJXQ>DU~LFgD?bO zcyjnwW2jz1RSp;vUwWsDE4)6-t0+n(9UY@1X0}r*P=uit$r8S#n|Bp97cbsPyoyi- zYatSiyjMzY$OnYDv|I2kga!0Zo1W3zkm8J+zvj{ecA$(nFiA=~BvGIwR2p(TMHHMn zWbY*YJv=!%KHQn@A01@-$HRl!@o0KFKAG(ePlg-1C=w-qNOIDKulE%*vs^zFTV(Qlk5i)$g#-1iIpkSdYunj%hnxc}7YGSQZS$35K`V_*f= z_h5YT!H}Z{L_52hxO?}@at?%#%`eG_SD^UgE%*jaVR8h%;ZH!47X2 zmdDyy8C%jp7xw{%+MDJhHU-kTK-3F(1eLRox26YM)19r;U$;&v;#q4el|pYmqP=XL z4>24Z4-N)9gCvHKH*D$_9^6?3BTH@Ro4A$(>Yuw7n@ncw(4)!2k<6r;1*Q2$e zXxIT(Cl*nanUfL!=Im}?nn7Ng<%BhKrPXF1#-lLA;di^)D@%xEKB#xkfMQJzm(NzQ zXQIqIs*?lF;9zk}B>mnT4tCarnXrG0;Fwm+;rVL%FBm;WO1PGj4c|wT<;aBNj{`IS z{c!wblRO7#pnscT*vsfz`*m>nR51+)m*83|zZ?!A7kHp=XvqEX0Fi8=UsgV)e2KLX zny@DxdUY6xaR-PasN^%QG|ajCASl?R5mfajvs8%OK~TiQ=x0NYSfZH`LHN;sh>zkC zlwvJK%Kn{#O+~Owf0u&<55lxhQA`2a@czc~MWsRR%Hzi*9h{dC$O_0Rp4}aQ;O@;I zZH1tH#~+%ox1dIJ)Z)ft&z#I|Ejx9Lsl210?9_b4H?l~bTH?lfIS9iZ!ooY=joH%}Ak8B; z^|BAz44+xh+t%~?a!%_MAX3QqT-Pgv}IN5`JZx%@i$U30OQUvzdWUN$hGQD2H zoglCE2uM|1tDUU?Y@9E0B|ZBknv$u(GgI6773N!uNEVNqgirV&6euR&>w5CZ8D6I% zoWq*H@@iNDRg#*`S1N8*fA+rO(+!SBfkh0V#h5k0y0VhPDULviKLTdRM#(G+x?2`j zi*d;tGxUNO)2GD()Eyer|02_Ze6?Auww3t5Qk7ehc8n|U|C059Wt!)RdTa5gpJh-< zw%o9`b_LyU|7-bG`_~mfZIc8sz#!{4sd8fY`Zh9A%Iv5@#q1-n@6?ETt7fV3O;Hr8 zWoPXdGiQ~Ucv@7rtoWgF2N{kN-)ZM$x`t}BLi-R`#jy=S6uJteu_Y_7wcqF2$)E0#6O zO2+>X_^J=5-iGJL(szm>Z4d#b%EHAL2-Rbz3tK`vYz(2;c70+!*V?8Q9Y_DrA`Zug zW{VM#L-ipALNX9g#3{@Ke@=eK@yK z~brduv3m=c(_PCVXN>MJf+#yv2GLr9xt!!gnf*#!ez#41nc1!!N)mw`i^ zd&E#4{>_zYx`$7FyN7~`UUxH+#4Yv9Ik_-3V< zwP7p10(R+<;1bytMvD+2xdl5MFS5gTk74&fMa%D^pW_qQh7$LL=HbX0DA^E#2Q98x zH5Cvn;mUr3tVHFGs>FfvSSjhHZ3z*Q@I(%=PZ|!7XD{goE2Vaj{R&rJk_0BGTDAR) z9FrNjCVN{dw4yW7TWKoHxEl1|UpSKV2?6XD7?GAU6CN*N5ar?6ds@y* zeAra5ynsbCu6cVf9>p8meiRnO+5F2xzj3xz5{f_)z~7FrX`IG@O}H}k!}=P?4A?wjYPYB%!t2ys)hxHCdNILB`@B~@Bt3Q zn~=T>zjsD1tbs!7yJ{A60PHo|H0hg@rXVIXXtwd1&}A;aXZJ?K+MA0#RM2udZqFOL zu(`Umg#*Q0zv@48trezeOx|);=(@Bu+cntME~uU`_J{PnGt=}n#037n=z?LFR4s>9 z*ysXS`1tno8v}+%;|v>7SI{$Esxe**@O5j2#-&rngAQDDJ)$@OgYJ`37#&*O*@xwv zu;Zz-*scB>xlOPk)MJ$+Wlo$1h^2?^Cm+n^Z)Q;|3qtxWY?Cqs41gQ^Xj|Xg@pdY9 z&70OvAbSZ&Z-LxAN#&pcPDJGrLXI1=Tv4}Ab43#Uu*E`aNr*aby@aC+*^v01-6tBM zXdP{s8DfHR1mgRsS`I@p0MiYEJ`-sD(mpn#ObawH1}4%Q>$hsqYhX9{PSL7uX?)$E(fTEf z_~=LV15CF~t5r{#fYdjI5(fn(XQB}9ZtA8>VcF>O=9}qhI`Q1miwoGd6pLzak=%U4 zhmh{QZh`d5Qvk)a;Zk{And21xs-9>=qVih($KJehj@RJQr{^IeoJU)MThz(`7~vT> zHu(20u4NM9CntCuS^6P&RsH&X`5nZwq*N?ZoyDn8CkP+P@G$xya{mmFtmxO`OM!p4 zSC0-Z9!w}p<>s_7LUU5@09rT_#JnGGwCs>8?tXdgclK(Zk_nDa~8RkpZ=^yRnBs5>RZ6w{Yhn-Qcl&2u4zD2B0qgp%Y|1}gjB0q zh;=0^)5V9|Tfp{qn$AE}+2&{I_J*g$AeV|NTN1cIp8acB9E0w=6+9q@PcEv(?e2iI zhj5L+<3{Dt2i`_6)@gmbs%PRb$?l03smCVq+}bA(sCadN&InPSxT*yvTv%5+bkz;G z#+XtZm3BG<483)CuZy8jLU0*C8e;7?$hX_CSUtKS@fYGrw9hBy#B2y)&ymbv6j66l z0RTfjhQO(tG9KRw8$h{5>y_F^RlUi$<>2+ZnX4PRbs-W#g*qOt^*Cb*zaJk?PntJO zq}8=FmcV}^3>95lZ)FcKux!E2&|QUlMUl%NJa4K>QRb_P<>4<<3bX@ zTB=Mn0)DAM^&49s_<$5&PKc934EJiPBaUJY|+I)pN>|fTT2O)P^$lhRBeB&vr z{Ze198hx-$NMf}*VWs;+?Z%5<(kGh~B~$Hyd%KIN9X;RC)mIQP+`{qS9+3l?L$#6d z%^t|NW0>P-k)X!#RDZ1XJ7h%_+>VHM<_7?f3$@@{z8#f*CU6xY4Pyi=o%d1G!xb)G}d@mJc$O)rR*&% z3A|2u--5IoI4MS5(x{o%$Mu#2?wfSaYre&pTxc4+MQ5SQ@YmTJa`o|Wo;&GVpVu~w z@}`Vj6UtV9BWk4ec=;4wwmfTnCX5@hH~QarYFtktFaac+&{vng3%Ev!bGKrGRmut* zYItDR1uMPwls%UjF72JTBSdesZUi)janI8pi5FIHB099nWh(tpU=Gx?z3q1YC+weA z`JmsokWi@>7YMw6NZKh0GJY&;9n`Z1+HD^Vd)zW%T{*ezt4bJS@_K?h9%P%Nt&2WJ zRhBBmy0q)%A$?|?U}I~v5a^ukWPn`-lY{SPnu`9Zt!F#|By-OS=Baf>dT=BFq!zz6 zOre(hRq|7#w|PIb;pws%fa&xO?8bdeJWC}y5Jc%)2Cvz4W}lg^B*B8#^q4RQ7McM$ zvie9B=WW?BhAAmPuV6PN!)0c6%x*KXOq?(VF}b5}qV^qIs91I14eNIXS~VegoBev)S^> zy|R+G_7`P>)Alt4Nv=62JnThowvULlOqL&w(&cg*kh_eTxqI|>DlO&L+1`;e4f8!i znM~1iKl&xxe>d74aGeU4z$vMdtHktz{;l95t5p5yEG$6&5ED?wtNp|ANVKoUx%!@r zlE-UPE9y6n%dAG#Hn!2$grCyV!vl{5lyfaEQrN>9+XQkyr-50|ewS0--F+N7tmi=% z7huQYC-Dy5xl<^z$XkPF`)~`My^MiA7qnp_7xx2@3{Ir;Y#SmqmLg+N5ndk*;^Hf0 zLqEs(xYppcpd1*p<`xEEhQ8ndV<-;~w-s>xdB08bw8Nz)gSK}35?4MXE!qW#!B;U}C z@jo~M#m@h2)VOBBm%!pGh=)7IFAbMFfw1z&uqZZ?)wpC?tViPKt1JgkQt%V)x#C}X znBJH0l#%E*3d{n_iW1ok48}YbnDO?DKU1RN2IU>Onb(^sxrytKTmGw7I$>~(>d4qC zPw`5x(K7Ti*afDukEVB3p15skt`TTwKQ|BAZ6DIvNk?9#;pf!sICJ4`^u5yUmjPF2fQ zY&k%?{)v9Mhp)8Dl7!CV@Sp1Zlfo)VPRDIRUXHAQL~V-+sP6#+-4N!0GfpXSotZ#Egg; z^D-{IkM7k>FgdBy<<&_pPAQ`uNqY4ZhJ0VDj*yF-LaAY#k8>tOjrEXbf}I%=LKM|m zq6=i~LV}o9uB=ca(hZjUa26^h_u5WwEE#Zl_b)0}FQ@Rt_{0DDw;jKH`o|CY``<40T)AnA&7mEWonFNU9xrE$zKs0_pW{97UpPz{in7Og z+e;I|4T1BbcizpltH{@sNL%l2fC62Quj;zGw#@rm5b8~q?l-rvwaA)^cP!$4M-B}sdwMfTi^6}Wbf&GykW9xnr3C4puhO6L`tbH zbV+iInJM+vnYqE$%?uM zsfb0?@E%6s^MBf}ghJFb#X$rB$)u8<(!g-`_R5=)n z5V=$lr?TCu(1v?dHV4=I{AaH1vX;1-J1PZ6tB=uwUYsH7hXL=aZbnMiP&KVr8g87!p|( zRG6UWGS5FabXln-;}3Yjk>m)%&>>Zx=+)_0HG@q873%r^Ly%!T9>|888HcT+(nC)q zpFcqsp9}Xak{c@tCQ^6~`vk?GgZYiAu#Cj~;OFFo@?OvPeJT&|*C9DOx44!lwlEHU zqWtc3A zS%rYiyCig~0j6UIFFsx&RCSrbY%{cBjhI%ld&&r0N!-L1;weHcvlU&VZ@fqvVA5o~ zxYoBd{#ejP>KQ8f#^_*_Uf>Hk35>D}Y`VrJJRSgDGJ4N$GC6o&h?Eh=2T_aUf>Gavt_-LMFlh0Fh|nAz|1$qd=fvOdgq*%#dao9%F2)>O9It#~cbm+kd(zb53B*!2swY219_eX_(1%z z&f~&2G_0aWe`UFrGNrpXC^lp;VQxg5Db!xg&D6do#+Wm`#$H4@GK{Lku7iugfK_;W zzEPF9aq;hiv$Ii^$#r@LQyq^I$660n4TWSYXjyxfF;+cdqJ*XQ;14VRP-|s764>&9 zQLchvEm@z*JT(-=%KS}gaL*j>PnecbMUM#tTKkpw)YbDxLmkHKo_BCe{x!H^?z0kY zT~PYWD&(@91YTM7SXi^zCW|w!rXN)SxFthZeFj+&t!Fj5eh-3|$ICqk-Z){EF3_e{ z+Yqse{rx>F!Dt~VkUM6jV3aT~4X)!VrqE_V$SFPS8bliHCHbBFK&pXXia08e&jD{^9@lrdop{??&`O-q?x*^E)*nWK_AwY!)PC*aW|JNMidxRXW8FQ)#<4V0(9Z%Id~q9yRs~rR zJiHqCrjw$v*~9JJ;FVVv{#?ogf0@mn?eeLg+mtfibssV0Z zjMhNYtI5%tSKt$f8hJ#o%HayzV<1Rlg`5-g5Lw{^Y>34)64#0_38=W<;m)|GSF0}TpW$MWco$>+T(aeP-C^JN`yN-ls?YA;$d0Q#}a z;+RV6dKZU;62-NaWS)a6*F#%%w3fs1ncKRy zB4fjPs%(?LmNv-}d^#U9vNJm*7*v~6=h)(v@7A8G!p<#(^zvf~wbf;cYadyvZ;VTB z)q7ifc&W>AL2*QD?p-OBXP%o#eYs57c8NIo4A9XnP zYPtS4@4ex;2OZt!pO=p_t2mYAl()Pji0y)FuGo~#s?Qr9B-f@|aZNluKG=0de8)eV z&e42nU+Y#htk*Vyoc1Md#Z~x8@&KY)Z&s4rt;q>P01xMGnAcWk0OKZTm11N?55~&U zw4Rf0Lu+C}(2h$xa;0s*T(A6=MR&@Cu4-yl&+yB9@!8~msac^_lJqitV&pk{ird>I zQt6+D)X(AXn#WVqP{}0;W4zEz8DEj8M~@HSlvd|RMnt7GTTc3#@u+*1e@xMaA=j#Y%4Q7H)-Oq;84<8=YMqtACti-j5<;xyeM;gdW)@xZK9K{2DB00n3Kd| z=?61^QMYhqlYjj1GN0YV|57Jn`fojb5kp?hV&nB^w^o9z*^QYBJa{Cn$}=_FO71?7d(ypFX1YMBBXSP6YtbJ8b`!?B)2#kxUHd)r8IMYx>>-7Mb9_soe+D<8|t=G$-#WuNSq=yL+j*~W%* zok;nXys(%?_JFt(2%sobzH9{-bJjtbI9XwV9% z4>~JAekJ#eiOF`o@kETV3Oa7c z|6N_>kD|dY5kN}KNrD)zrxTkPYb!BG%2N!#q+r8W&kBWs~Z57>RsFi@HyKqcK+j)}SI7uM-E z-vXbC$;+S)$(^_i*pD(Bc$*RimT{YNG4v4S?~CK8MIyN2D>O;8qU)@%E3?Xz9?Spa z<0*3iUswJBIA8rEtY1u|zb_^uH9}J_$LCxKQf!f#=v3Gm!UDm|vHwhyPsC5r857un zJjkf|o$Y%OQ$qOxJ|(cP&?$6ih1rCFiRdEr9d#{@X*Y_Q;PzC)Bc(y|=UU8m&GIy< zmEf4TYsExX7QGEMRt-z+_`anl<1#O}sk&fM znyP!lH0=#DnbY|N?oP(pPhTK7P*-=Mwt*=9!{5jI6Y#Yq%e-xOw5eximVN@^bchk&79 zdobt^y=dHNcMzF^Adm^HI&JVqUNubK#r1@=mll+ctjUtUO58*B3d=pvd7~;or3=!X zIHHw8wodFUo}pUR*^p*HM}x+gtBX)Tkj1p49G#r~j|{15wlgS|-2btOzf zimjR;O6wfPogfFK5UiE@qOM^}da8Mywph0DYN&lJXKeOI%U7vC4|vVq!_6=jYgPF8 z=IG}2h{W$ZuHFInGh0qKD^K-~>nK+q;urHrMgDqsR6)w5ju}0DZv+1 z6q{M(|4_6*(#EDX1QDa4GeLU7MKRO28f7S-65R)jFN5U#Jzprub7gNd=Rc^I@17o&yDJJ^*s$8GaYLhEdEu22g?T<(O_wrtD7~nYuwy4uK zKtbwyAU60b97AS`rH5DZ^Rz`2#0&$a$$H6n9LWMXOoNam85#VByrjh%7p_9(QEim` z>fkAwgJA}MS8@eIIcw&bG2ug+@i@|eJbE&x`NJa*8$gWr>~tWgBMN2GtqnyKFP*fTOVUc=A5CToB#D>O@A z6lq#2M;k@JlbHoq4v7IT1zSq#Dwo~K$jFB5V$n*v;p%vL2Cd^*dlIHLRT;gm`oDa( z1duXY(3*JrRHTJ=_&!c`cbKXV!9iu{0P5`LB$X1l5 zT5)_g2m?7DsO{n4vK87v-JC~Kf5?vWJUUMMs2|<&qpR-%bUZ9rCBlXw8`NK_uZTwI z3If7PxuI-hrQFcQDhfoWv+|lv6I{(4+L}JPz?V|GZ{fQ_aR2>rjJaTP zNmBnI(;l%SudjruAbmJkOaZuu7;a~;T)tul-+R2xSyb=oWp+VqfeCz6VHmWpv2jss znf)=a8#J8wcqOuemG1smg$Y5PfjR}g#~BZz#+1-q$~1|8*N$6mnUTG)i~s$Dktpyq z|MA1dKYlRk#lKl*O_Yc)N`xIV$WPT0@hwz^?S&zsSONVX-`dWuvK$&_VJ$845%1?b zNHpQwFGsaprS?lANhW$IX?={KXh}bm&ag3nrl3GXl@2!b$a`1(@semYphlf{TBA{Dz&pA+?_&?8p z3;&^TVhCVp&{IMH%6zpWb|!~8jp~4jJzYSApatTQMv_-HFb0zth8C9&f9E{Za$Jbh zy`Y&T`^$^6?%R+^YA+b3u$FC+)>I*i6aoRo53=;Jdd$)-2+L{40;s*h`bW7>l~P#B zr4WFIB&7w;O4g;N8;eL9Q`D(v>4s}M>5lPrL&3GOG?53R>g0&5^22fOv^VM>pijli z84=tS( zgNsow8Cbo_^M=UIzJ)VjlmIq<5nApi?vnJELtLJdIa~64F|vA<-B{usuEEEn*&QoW zVg->-z_Bh~`%3hmPQQ#*MFicz>DiT3(aXeyb6kBG8IhlW+j5fABLE8e-^t+eb-L(2 z+~Xem1)m}WHMxCcQtE`5mw*H$ z2LbMe{YXzy%hpL3uHlnaC>0ezR2lSB3sRL2O&?xZbEzn9KgO?`3lC&Q&Ilo^Fh3@6 z(4Z2rOxwW#b;}`N0f_c`eRa)J>YpkB&8bi5nmsS6#^ooi9`1i8UF4H!6Xx*c)A*5E zIAo07WIk{(WpYA6vfvUYLq#`OcugZSe8OeYf12+nKh2&P3;*!}-bl^=$4pzKV)oWAfBHJZlk4+|H>M=|)%2f%>+hnF!uBe9<)Yb43Y zA{L-Em&NTb8ZDO4csYAS$|*bqLz#uu*3C*%Aft><5PF_eF)P*DoJz#lcJ~})8*B(K z&?W&UDOqx8d-Rx*h4^s1+K_d`7-j_0Z|X$>f)_ z(a*jDj;jaH55|+9dR^AZNq^KyO6op%LoJ=Zh9aU`oewg|tZ0vb-6|WReXsic)-+)( z6QdTj@Kvz2K3OeDZMYa8T9Is5AdEsEXm5XtREUk;bLv_WZYf3viimy1q2O4Ms7bZzZ^$Iv<7P+h`bOAuV^T(0Gu#P zTQC^O^Bcg#n;;6Q`(S6v@&MMX8ctmObC&XZ9*@Y;6BLCoc#(GnpUNOppFz6nt!O0= zqb1Ax`J7UkYOD>+vr8~dP`IZ}fz-WHN0wre$J$~=PB7b!_=W;3WWE`2C-TcH0NBc@ z{B9}6w%f0QXX^nxfmkRi#h@se6oXReoMN;%=AtaHB#a}u26DxyHBF6~vSbNS+1o%< zk+73VEU78BG5gt&bC``-(o2QzPfO38Ka2v$0qx%uep&-YS41bQTp{Sd$AebG|1Fm( z|HXi3W3k)Hl?WAVI)KG1U^&I2^k}7X$ftZHltE&taptpgRbZJA7Sn$Z_21OkD>!m) za@r=Zb(@!}e9G+vCqO0s$xYneUk2bwF<=wIxVFA0SNw~-90vBaK(AM`OVzL7 zOafW7bDVBr<81`Fv1VTqf^hhX_##pIqW&|<}qx=C8w6tWW*_X#MW)Xg7m=k z-7{#emUF}1>F)zE! zT*rsH!L8KY4Tv8r9)=g5n^&jk$zanoZc1qVvR2aVRIK~5{@;p+P_Ihl%8;U-wVh{k?9UqUw(@dX3cV({S&ZLgG*t#@=r0%wJT!4$H&v-+{J zH1ZK-oW-5YLQd7CyCb_L8V8z9x$P8I{Y@DwH5ktCgs%uE&aY=OMB~*qVXFIrcD>8H zkJBsEqOaqQz?Q5U)`Gc(chX90weCRO*ro=?!EAw&-B>t+^8T z!t|10Z+PvpQI36gl~Jt}m#i?x6pYi}mt)j}#f(=cPOj+uh*N?HNM^U!!h=_Louryr-f*liy5W zvShATmZ(lDq#yUK2Z!VB86alyu0%i9d`f%F=m_R7_8wx6JXmdm`YhxjVYoI%Z??-h z5^^HfQB?XVJ!*qNLa7bg0j`W-ty!%Pwig}5QpU474TdR2kqgs@Re6{h)9@A+^J~Gt zwh%$-bFXwSHIrHK99(3(cU>w1Z69LJtx^$2=dxYke$G?*lIQ?RTg&huYj%05P(l%J zNf!9*WhX@tK)8#RVKS`JRIn&iB!jq85Y4ek>PZgQ%(-PzVh6HK+oi`eu3dam@i2WI zo1K)d;>kRBU1TwG%^W!`8uQWy)z_}7u2}BF2=dO1o`z(olMuxH%4t^R6qh%otv8Sp zwoNOT;@>~lF})^CX5_LM>G42@Eg6*^bT#XPj19LcFup6!R8G#~CNg?rnA*1%1qrmf z%c?MEkI8BwL+gIKu(I{EzeUmd;e5x#eDnwtjMqn`Ia7t2xdu= z*2eJ?dQx=X<_I#ZqK>lauq`N(626h`Tu($yEvO<_qEkJORTGs3*0BcGKhP6AMLe+z zY&OI?&Ps3u>uYt#&_)jk2UDH&toXJ*9~hB|*ZxvaMehM(l|nZ`zrFFDn=F8bFBG7B zApjIn_<{0(CHglT^$|2>ieL6Mcw8GgrMVHJXK`Ze2CLbG4ccwm<~!Fh_M6JJzoBAc z21zmJoE|CnsXXb&dst{7rvOkOU4#L6J)NQYVu%fMA@_+YpU*E?q?$vkK`F2hWKbg_ z+yBM`zQ4hDOA!U{{2eXt5j%W35Kg+XkiO$eYRf&d8699`K#?nFHQ3*uugLg>!JtDa9vAs;q>kPC zTX#>@PEGlY;AYmGrhQqY@8Wru&ySCDqKY@k`1$IH2=shG82*-)ct47Tr&;3ic)**C zgaSG=jmL5lFaK4Z3F)f?`<07VEa z#mQ`5au-a|Al}JUI)ea52o1$!)>>-a?!oxt`P#T074aO6r|&5764C%{)j(J+9ZPIW zDZ?bxCX)1KF7sj;u*Qm?36NzaUy9*ZY}>37E$hHGd!|B~dA&d?o>7mRT;T7cN`lFp zflzX-XAQN;$*fA~Jz__!Q;jjJLMUccnT8KZf^~4|ajfKT+RkRMNa+AEAl} z25A`OrDs$Vt2sB(whskNO4j&FE{cHz$GwL6OXf zAEZxeMG7>0n$n5z zWb#+F^{;ZwDsR~HwjXO}_oNfCpW2UgLg%(?lw=d@?Dk7jKJVrVw$Wzz`a$QV{Z~}r6N@Dth_|Y*Q@?(zAQQD67u%@itM^P+1i<$7*RNzH=P)=eM<847|D%9r`+*cF z)ruqAtN1_J*2*KhofWNRd#mo#St+Q}S@~?8ZCaDttk}7UrdUViYk3T_I|>N63Ro0B z14o<~%T@Apl}H_B8a5|uM^udPw`faI;lpBd$rZaCg>S6r71{g+d#LYO@if^}ZXtb7 z=hrAs+CTp{W>*TsNku)tU7CECrT(p$M|c+FFvU==h2t!6bd&5~93262J5W{fEP0wg zF*t501WL6gFB>epBtZwTwf+11AX^v;2L@BYVu4SV{MBuiUfwyx^}MzkeuKjgUSA&w z=q3T5;|~)0CXY08veE3H=G0Lz3PUV~%_$%=<=K#Ocnz;c@b)vB>B0DnH;Qy9x4-mp ztt>~NN$Hb#iDmFWR^c|1B>shx*GJKc@HEOQ5&u$2qksIs>R7KZw#|kw-+?$H7#MtW z$+lD^WO_aP5yB{e611Mm0s1{-b(9jb*2sdPfbvOuxFTf~!baS0g997^eawEbRv|8G;m$psw) z>qjCq+>{O8>y+{F^1A9v*;n6}v6fHc*o7(aKjE0ud^ z-e6`@-(DG|W&hqjWQRC_f5!X^ymg6miz3y>E*)$$YZ#|1wMi%{h%0T~qiSpVm-45s zNx(lefS*XOJbe7YldXyPLP7C_lRq*6APhZ26MVW(h+>ilk+orD!WkG)$(oP@_;NG* zh}PAYYcoK;TpOu~>q7_NVg*i7pvN<3m$KyBNkLwz4-ZJ#LK`tVOP}jo=HPp`<%A$; zWdgMGE7M00fK%ip(+!)LXLf?xf!(#q%`tbah-?warxcZOt{gy3PZLLoLL?bxomDHa zm#D!X(hkX$A|}X#u|OUw|EqL~*HcRl&Q69%TB7-9avnpXSqA}tab!hw-IHhYXC5ib zWF1i<)@&bHg>Y2{oJGx82QECDF6i z>UoLr5`y(e23>x+xFY;|55>dL1EMd)AW;B&h&*yiwCH8py}8kPJepF-*f+|tqDK1y zNA-a6s^xJ&LnXhkI~e)JC@-%M*MaTw;c(c!xS+1Wu|conNy&Z5saG`q$=HTTn+xfiH5)5Z4j^a%wS)?-h-x>3poN95`S3|Ogw z+u4F_IDt-ui}g=pY*HBh?YF`CZ$mk81Jj`%stR_Iz2${-CK2x>;v0kI#Hy>nEE1ro zIGHv!Q?3Y|RyoTkPlmmXWTGV@mP7B2l17%>)0%2dz5mqE3fOUsVO%{OgB&H#;BJbH@TI;isf~) z$+s1Xh84h*O!iRL7iKr*d<}vB3+&F)h#rnD;mxn-qo2zxkDT6;lVcP(W)IaY*@da` z^oY#e@Y>?(MR?ejSx&^kyn4mY<)7Bg{O?yQ+3-DG>+4`zIaoB0?9N;w#!Ny!RiKY- zS$I{Ws)|X}X=&-&Z6}Hd>bJHGnvIsqg)7sZmf&;v`K)B}t7|(mB%a zL}&Q#wh>hJObi85GChku%qaGG#tLKvl|wtXcc3 zCZ$B2NmFvVK=9+vi z*#jyV9u{X3UQYnEN`)p3j>@vgvjbi+Y?b}tz$tr{%1n(SFBmR77kKv)$}xtW1At{k zpg$=jS18SLV_v8BI${M6OPO3b{Z=cs=z)9-SkXR%@?@PJ4J=sEn3i^xY}($WhqV;4 zVSaqb&j-(OJDuJr;{%2(+_%U>(cB>0@g(mh`;5(Kd^M%uZC9-8f5q^;nR7Xl#`{^j zj&G&J+-Aw=hxwNW`q8!pS4B)#EX{2OED~&JSJNLXUJF` zZ>XDanyWv!FT6_KJr%x<7QzY^#RA}b16dFF?C~42y~NeV!rroFS^lBN4`V!j>3dl) zblVR`D2^@E@(paG*4|m!uioSa)i$l18ZCGf(G`3lD~s(5`)q;H(Ox>IoC;QKCG<*M z`_u^`!XTqzE&avP`JsVc0}b!Eov^#b=Ht>zIL92WC7TEtO&|=|s~T+eZZT+e&VFI{ z_YFUqF121+mo`r^FXB$KE2yT>-aQzrDuYs5NVT)DnI~6QuKdw>rfjQ9FY(y3Ih)v$ zwJ0GOQ{f!CRz+{m7HPrSheuDhy;~C#DTgHg4AtbCq~U{840iIUxRprZ>HiALM1J-c zT+f?l;f|D?A_XEppUuIeZUG-chnhx8vxfq8VyQ|>C^0%fYsELKBclFhoT<5iZf7!m z5r^=|nrjtk$P4+^Mj^pda5{F`O5X4^0fB{ws*xP6XR3*0F4JQ8<^%O$rCs~6a`h~4v|P8X-c?!nKKpSpu13Qa+;s_AbSLZEGK`+lQIA?rD; zloXrtV#rx1v}5%k#oNO6l&xGYh-^8x=Bly2Wsgn}3+UhWg8LVH_IzSg1o*Vbn zx2P!DvPF$DD1x@+BuYH_Lrse6uoahf1xrLXYrEEFK-<&4o7+MF_QvRfZLP?M`e1}| zbh7A|0NNX*o0UCmxq1g%qsw5UEELfW_SdB$%422i%8%@jX5_>fC4#U z(hmB&yx>8)wfsDLoP7C2rA8|!G$IHx8minb^cQn?$ycb1DC^6fiu<7=u#mFrXt+zN z==J_;j`Xr}TKxO(3yAonu$u4@VBcgZVI`JdoHfrc3szy6o7T@&14i)$PGVCEixyLg zx-0J8hRZscFC)gUXgyP%Z>Tf2wC5>2oN~{9<6Ub;f*#a$ysDG8^PV@bT>zfQsy7X5 zcwwlxebs#OblYPv9;BAf8z1ue!t1hYTYI)}y-6&}<35!Sxt^|LrN4DM!cPUi zux7Qb6%DZ#T#|!SANA}|3QTiK)keANY9dSXceF)HW)P{pl^{<> zYQB;)aP`U8^H<*99;`j%42FfulR~#FA8Nije(A1f3iW}44-wAJ?Eb!os^8mZQhNi! zzk6CaNV?|*iYkMnaStiU-pq)I)#w{8@Y8Rsy>5&u9TDk48zVi^;ketWCT)D_v z2Nv6x;f8y9Dnr9Hh9hZ&$zpp~q7w&G1xjpDWP@2Izp{zCjh%Qa29euq6tNO=`_ng*{FLJw#`8}>#~cgvzol=UK0d|Xc` z8-XQ0hVh{RJv{+h`i$C#f;EJ!4+Rhnw4#uEU?&DZPH5en*D~+M#!APGd#JyK@V5z& ze2Wqa+fy94QPf@Wv5*pAGtZ+j?twRFX@jQ%CDLmazQI%xx8u`iXQ*X|-O;G~TM$P% z?fo+8A5z)Af7I`dk_*Du#|n5~fZsVzND5PT_FS})($sWjh$ZOhq-?8kNOM=5ZpA|W zlkGH)3)iVUJjN-fch$UK4@fc#P*h-D}`Kr$}bkKEl?5*@HkVOx~<#5~R;TFR<4 zN3QGcy=Shjw@Mwh!cxr#n|16;YD!_9uRpJz?yhcBdm0gB(mt}KR9k#EIb~Je?h}5N z1yTrxv#|$b$b=bLyF4@Q>j=4YDsaXux_KPSc!Ko|^^b^PF%fOqQ5?gm1&K2}0^fsA z)%h9-9#tMe;vyzsGPPS5swCYyktFKJxME0+Ya(YO+&3}}_C2@YkG0EjtFB=zL4(FH zHOiz9d=10lSQ!UJzj5pGpZp!ope&O&e6Z*a%UivN)Athy$nifwyq z*~->BXtOBGbjy0@7#OXJ#KH*}IV|FK=3_-J4bp(f+dnHjO++uU6AbLj9tW0d;sf|T z5vRbS)k*^g=yFl` zr_1Y4+Geq630Ye?XB)pufPhA})|>&0z;eZ(hLk(TnHryuv|)5liSkfKF-TMrZ`Za) zG1ef4Le-W#!KaHIp!5Tn$l|CxHmyK3k}9aHw%GgmL*LNa@Qz!gQ#|Zj+-@`SLjr4H$SpVW-{!rMc!*9JQ1I?K61G_9ACm|- z{-N>^FVv*gI~C9QC$Roe`D8*L-rW*CrLAk_d(nKMAO+FYYIl8;U`AB+5C?)T{IY z-Xd}AOdpps7#FM^xExyJMP7L#g@LRK|3DXGY z%ksg@8<7pJ0Wu<3vix#I)!5I@v@soP5;xGDEOthv(^QZEOJpwwT%WYTZCiGIWg;;fK){r##nx- z-pPbvC~BSm`zm7ygx_zCuoC}TsS^%EVmz3PyC*|2Qx5wllk|{%mSUB`I0No)qoMqe z8S0$IKy|B{y^oCj!ouNX4DzSG697&UYz8F1SyC4UfMSAV+VKSvoRjnJ=(u-2(Gx(9 zIXxep@gzT^%sd?R5OY32R8m&M+3=i{mmoQot^mqj2q`#m##4_c7XxOHv}6#D!PKz- z{Rx%mkhL&RGU*Qcle1y(^cc-bY7rA{Bc<4bK#~CM--oS5LCA-j^ZCi_5iSRolHl!0 zSEcGKD_W+exbn;7VtmjY;1yR6b+Y45w%^IROz)%qul2*s{w67>4;`mLy4l}4-X3i= zX*B!k#&NnaN;iIOrRt>H?UbDT;rYR2+z`9ziSeVKcY!CAUnB_A>^6Udkpl@@*EEl9 zf8F}J)jY=2^2|JW{>*R)LLc`Pnly@!1u2&<8lu1|f-XVQMx$d$SDrrK!%HCFPK0}U z;aU5Us;8U_z>$pIuQai&`7UQcYljd~ zh|Vk@(SdQ?xKbYhG9c42Vr2$A)A(ujh_jgJ-@nXm&=)Y?z%V9CZh;eCKDy^NvPT$C zpZ1wXf;~RmFi{kaOS+b?gj{1h7Amd-E*%rtV`cqgdZ@Cui+%B(D<>SPY)s=6(3gSj zWHgdxVz-4%B3!0-7;G59Jv1NpJ$vvWpfN{NCm|RWO2j60GY5rq9eT<>xmZre=Z65! zyD;C37aEUv>%8yoSE|NCL44#~=vFsTV`o4i!uW3(Fv$V?urW}ojG^rI1>jlrx6ZA8 z@*Fbm$zsMDSo|`CV?<9^Xh*4jIuJWXN0Xc9`}^042@x6_DSYM-H#Rp$U_fAs0=;Qh zUN|Uoh5im(yNby{@iDC(eMZ&lT{2B3$e#$zrm-Tz8LgMG@N+*gDTXaO$9bv4v9+VI^e_v=ZWKnX94)0@r8VO{>X zmQ{zR5GYDT5>LOsDZbNut@nxc#5nm%3=j=xyOMvLKT=PlRKh+EhVqQgk@XSwX;9lx zo&pMmY6lR1jpcornI$nR?ljnhVU%J}RseDKH$8*lmz$k=;(cPuzBj};Jq==+djRML ztJ1?ecS6gtu)eG(#vH&&)3)|mVoRbrl4rE7 z#Yc>*XqH*_?QVIc76K`oFVv_xMMqXDrEOjlo~nQ($yo@)!649PEd*d8K_l7_ab(Ih ztBWSsl~cywnU$^5+f%XbdNIc% z&UYt(c6=ddCl)?qn8|WT@qjeqv}?C!`>GYCi3RchH(=4@?TO6-0XK8Rra#3V#Q=%> z@_M8nV;Ylj!bpYP&cpaxvAk-j!q-yVPiyuT1z;f(U4Ddw%PjK5npLQH`*kQjDHgJ! zirhl7$w8e#OP&`rCDESVZ0>iU(ZwY)EfJ=$Y+&k+-lG{S`Z^}HHhlSg`17acYtc^Q zxhP*%d^*FGtGBE;9_s`uf>85;E;q_3GD5fQ1sB;au~PI5SrW9SgbI6fyn;|*TL7iy zOH3?9^dy6Lyg7l6mdeTqcC*)dvsi?d1DmAwD6Dh19gOzr0_h6VqHw?_3^j>vXdwS= zj3NaQT#F=XbEzI=ksHVEAXLJmxo}tYU~DX-Wxj$&LOQb)yA{~FT-=EMcx3ig_obXEpImSsKL94)U}f!U>F zT7~lp07QYzk<$S<(W>(!DY9#2LIhwj#+MF8r;Jgk-vgr4>nfBRiRa}`V?4N;DC0LN zlTWO;)b(e{&)L)IShVlMo$bLy{$aWO7@j)+El6YKtP+3Bz+WpdhJ1fFY>K#rnDGn| zYsI)LB?{W`Z0O2|b%K!krmnx$c8(s?U=w_BhKKS6D#hA%Dty7$kFcXWW95jgw(}PA zt7pDg=nzlOPp*jPz0BASYdj@Ar(Zys>6J_{?FYFC)@HV$<)N*mXna?OLEDLP9YEgL zc$}aK+sc!RCz%)JETwu|`e=dtW|m8oWU0Mn7!WxP%mDR1kHBbZVE~_x!`O0Jjn~wA z%HwmG2b*n&S9h--D~?~)767f^@&xe=rVy)!mQI&ushz5t7pre&CzF^&AqV?_k>>in zwKgDLxe%suW~*+bStt59s{xG&oR1e;Yp6VH4e=I$Xqa08s2Z20$$uWEZ<5=cSb*1) zulp*=WoD#p5maI>wgl3&O473;VVAIur&}r|Kcg~?RMVaxDt@l)q88#Pq0||Bq>SBS zrPrR2QD{i}(4E(rDC}jfXk0MNH;@29b!`za4)Wly=AaF^%A2ezrJ1EHYbeXe~KPTC7__D`uW(8`EiVz?Fb#WphhA{^jHBlQmmjf2jMj!S?dc_M79C`${{-h|;qithxiHTke#+aennZ0}r8OYjDaf&Sjm&f~{ z7b%p%7c6iS9co49R}2I{8C%u8+C{jfCIqFSQgKe-K@$vEBN0YiK~?|4Y=&H4R|iX+ zekXp?fGiCLFu)@Sux`-g&Q)PU>7k6_z!mAX+iis!SBqt4Ksv8UL8sC079>n2icGP> z^F3u@IBru$aJDOZOkh2!OEclw34!&h(+F0TUF6mJTCRZ5R`A7)Xm3iNrPj4os$oO_ zO7o^PYI8P00m(ftr?@cpEkH_}tQ;!+8K`%;<788+ zwgJB325AJV8_tG&kCao^?EDeU&Y|{nj>1(SS)I1NIji zExkx+)Ff3(z|-4KCIu-(Huz+8MV7TcXK4$VB?3U%Fj!g+QyZ;Sv-C+**|=-W(8%>7 z5C|C4vF-&l*ggf%OmpU9u=TLcs_@iTOCm8ZU4rJ}Mr9AD#twC>RLFsQ^Tl$P({tcn z(uzsK4J{sG#tEa`=A}#-7I~+}t>BB=^wgve>&xoX)UQsdXkRU`mi8}~(+}p6CHF7D z`c+g%mC!)1%&fSMFB-lY#n^Hc$h=HUMlQ@(tpt@GkE1vEFa^#ztXZ9o$Hp`l!#Tl9 zrH?%7UQ(d{)6L6VXhy0WaILtvNJ@cG<`I2MA({xN7sH85tE`G*XyD-snJFm&4F;-{ zK0wTwsjTo*f~Gxg7XRWK10DT(Lx`TAgPN1ZQ&|2DRIzUH_Q6lxO&)c9$pxeD7vnPN z9tguRIq05FM!mDqAru0jj?)Nwt%PoaS!ct&W)88ab8A&ZW$4rSrf(WSq$-TWNXAqo zg70MU+Jv&19SW)%7W{@WggF_!6U*ZBa&hYcu|mYmo})5`GL?2)O5|0d6d;e<@77*v zqop~6J+T3rm}pQQThXTVYw_J%8dHz4tu)2RVqXLihriMig7Uc}ngSM=TC8f^Xgp;( z%j&@}Py?S6JkS48mhJ46&S&E0f~a@nqON zKlsVAe|<(9`9Zp8K%HrUJ_xLkSZ?8p%H55Ln(I$<%Vb|`Y*K+8!?M)Z9F-vYl|q?} zv9C&(7{?UqnC_JASWuvym>G5m9V~4Y&F|NsQc}f388PacRpZHxrKfQv3*SeKR%ZP< z4%MGxG1gbjM%y_`p_gj(Mn`@As0#e+E8>;iHN?^Q|DnqlghzbbIifn7@93IryIw;o zU!z%O*Oui=ZBL6UI#@t7+Ki#7t5!){QO>h%;xzp_CXx(AS7;Y!7 z!P$l_@RYUrQd$q1_L)?>fbbg6CqeUXGY zLewS+R)W)5+A+G}Ra+8@iGqT-f-kV4$XmJ)&R|Eex*V~isI6@p6zI!B4bfz(ZjrX zOi(4)&S>r^J8~8+*&9dhdypVCi+eTw@*r!e4+aK?+(NYJaXvt&Bn_ zjoja3nIYebVjPM+suYUSa>nQ;3LmoomHHy(#kkZoIr^($sjE;}_V82pIwdw2iGvL4cBvWZB*puND=T2sRen>g*mx+$yw_Ii^XH=Gcu|#TiIAZzmhQe+y z)`kBt(Q}8J2jMR9GAveK;dM^@nd7Nyfq#cH{b4sF?=wQ@^(5Vb-N^z_;XA5;h5t}L zF)}~BdG(?dTyqCF;!6wCrpK8DhUsL$3~Wg*(hRE6Y{&y2HpPK-LjuMAMuvSWA1e5* zwL^Pcf;H^rx*wkJzUS&^;#WrVG4u@TSKl$VZjCSJw@)_mXqzg)pa&;k$Qg(2 zFr;U0?=L5dr$54v+8BvH-B4W3qbt7iVo{|SF$NS&TjVIIYzzEZ0WB}Vc=)lhl~5wJ)rqt_ zs`oL4*f@hpYGw?kM>09MeAu7%q`|8oo`xoU#0{dj)xXI1{qvub$-~X(^q>F4Jo>)M zOlle??LU5~+{Rv(rGD`*k%9mH!@q4sEYaD@&%w?%{nEcSs%e!wjN;dhnafV zqF>hem+#i%+9M_b-UpD?ccIB@)*`|E-4D}hvhC(u*spWUNxESo zcO^lrGA9q(IbKxQUvuta*{JmrUL~%fsx0afjJ#GFr4aQ;$=JS3E#A9ByjNd^4ltZR z(YetUE^z|O9zp5n7+)aa75EHxuo5G+U-14AX(LTmqk`DMTW|-g$_!Cfb`{!;CG}*P zAMmLHyCe^#qeU4ax}JV@sjq&hkbcg$i}b}Q3x5~s7HTNvAtMF_5Gk>Z90~5`p_{#t zmw4_xp~!7}HIW%R zZ2WE{!*rvKG8p8)pc7VDhQIE*f|=jrAm4T99>buDUN>UZnl6HSY;oQD<>jRVObk6_ znI_9Hv5a~$n%-KK3yFkLv1{zc`!YEN36orSu4?Q^RDBKNSAn6J zJGM!m(GgMfg#cOQSCWW@f|W;dlK!$cP8=QN4@UEO7CIR_&>>hbdS2+XNP$iUXUF{m zAfh6}j(RF**wce4CKZN?kJ2!voD_6HTnFByAzViQl%Iwq2~UVp@MZ{0-IV`4o<5y} z4#1vZVEZ^7g2Ux=AaQ4O**@#s;^_o1`{LExKQh2@xFyixF66E`2#3d40g0WXsIM62 zjNuMA5c*eNIxL)n`IjTN2em(-CRRv@{Y^-Qp3@v|if|ZD97+dG zFTv9oolc0i9EBS`cL^+KVPs_ziM^C zPQ^TBe(2Yio5#y%k4}*nWa?z$``F8MAg>zscYHr5t;l#oZjba&GWjs%qT31CT5={@ zDP1g&;xNueG*lZ!X6!n9-T%zz_vC&EF-=W^teYIEAq#K)1pnU&yj_c~g=c7J%O(3y z^L=TA897b!HV=fa7)d!nQZH!S#cIts_APzd7`A=vUJ zIbpNYJi*rV<-YUyL6CDG`@>Wvv0 zK1Ckt3jj=UAozrQZR1>6phqUDkNpA*0sjM(=`}UlXjLAZ*(sG*ejkZ$QzBu#q1=m- zUYJEHYCT9fRG7(1`8d@=VO`Q$&ZN+vll z3ttq36n)7`0Pk1{eZX@eSZTm4jLiTzF+_)6jS`{`+VbF5B$X`0rz^4U4Eq9K_Z61H zf)~+0zJ9s{+%mngukk^It2|AZ0W^3dE82_ zkHY^;mW%5QPmSS$_hvvBR>9_sid4gZDXQpnWm&$6#KTt%ug?rG|B!)};=?F}%3BVh z=qqlYMYXA1SIchEQU6xy57d z;uPmef~E!WDmT3=3P$mAVgDmxDd06j!!nLadFyzAeh&B3N~CR!eJ&9Q?V2=97E7>~axZaA6W2)vfCQ+B#&M|tE zOPkqrY|wMm(0k});uL8I2fG@R+H{TC&H&lIfbOA$ULqNgORLhOJt{ze^9|1;HMy#l za=j~^dM;l{hGDN#)~!s4k%T%2poY{Wz6X1F&-dF1l+t`J@HnTsJk z5pp9Z!1Rs>?$oj=u)$*5=Z9F(8hUy8L6ydx-Vx$pVF?q%o-Na}m6g9(vW;L@Vk(Y@9RZmqbjzQrzUp}82UigJfx%qk8&+6rLEHZPNHQmtNr zo>Q&Gj4Hn5cLF;a|>$j_9= z9hP9qGEG^bPy>=%a&1fyJ!)x-MxBa)XmyjWozl5mJXTH!Onmy68f%XTu2 z6b}+5aQM_l8>Z|4@xQDdvr_zt40Ex-vXaMLV2bNKJ=;{5{ z&DcCSB-r~<->w*=bfSGWog1AIHrTLU>)djWuf^_JYQRiOZeHXeHu2fT(8rsRM}&wI zNe1!Gdt~(9ccSGER8LSwnTb{nk8YoOzYlMP?6Du6e2|J5VUdbEvzMjxbsLc<@f2`o zHlyWH8bQluuF@2gJcq-6dH3b=6+VfIvI@6ND1{lup7haj{DH`k|1Ca{zMEZ432Idf zu#ANc6lsJ)?#VbqZJK2<=drGw%WB25ci@Oi>&~XurJmhM|6-rf7UT79`4`^sj{Wg) z)1!|aKvh||(kv2|zViPn>ytifd5uFr?P~1_j8rYd7QBGiqb#0kE?2IR$E-o!ia^VW z3oH9pWCZshW}3=ssx+`ET;b3!S)7yuLjdPHA%<7E+lk!%Nul<} z?FN#swVgtndcGIS7-y1R->oDU<>a`^vS~xnA`DuTtXw)@@fvtNpD_Q|b#mvzL>qOMZWbIO=<* zcUJ!N`ZU$ROXP+`PcEPU*;50XVBH@4r(4VFJShQ?5SuC1%($S`mG11Dz)vCJMF7jc zxsvyu%w{w3`av8gwyD^Aok>*Xamwp4d(o(UVKWM=k1gx!saTp-EA{h|J0ou!e@K5A1p3QLFNse<`QkWN5S>mq$}|p>7Ox24A0vYU!g;}b}O2L)QWGtrL@c2FEC z)bUZ6Ja`bn#Jgg5lO)DcfI~TdbERaLuuf5X`;W#<>-slue z`QeB%Z~8j9o|qs);0-=8TgrB$_5(+iTfHXF4*#MNzBcy1^0I6l8|gA}c|b@!=UP7S2|{x4bS0G+;rru_}<5VrX+T)y2$+ zU+8SYWq;rktu-6V24-_sHlCh(_P2RfSi7{gb23bB%9Mm=U#Co7 zu@{s9R(hoMmlvd(kC#TKWGcL+P{vJnLfjOIte1Lbx9H{dw+49T7Gq(xuDJjQ4bWiH z|NE8$Igg9!6`Vf`+Zwec2dQs_#LesvZNXv5&o;671*)-8W!^36>nn1nm8miOnew!a z>E7ABdByA$QqU0=VJz8hSGq}bNkWjN-F7dE!PP1$1=q`94jL;+LRc}jGHipX>~Z)Q z_gz85QA|GUTGeeNuyEPuk~|Kqez{3hUCp*oGq9ByV48T<0)`o1-{Jht-pLe9GGaiS zG=-&_TK5y~wy4tzgH1Cd-NnN3569iun8?ReY$i?4{M&_{Z&~13!e}H{-~D+aWkXW(B%zEEs8N!3e~cz}^ip z$#koBxm3koUk$J<^Tghk5}qvNPfE=%7F2I!fs+G6L{ zC+J0>^89_1&i7#R=d4&|oN~1dIGD}OlL;Rt%@iDr10=-6;-9>E%{Yywccl$C+lsx~ z>13fKgPoanm>_ta6A#55JH#4T6=rZuad$o>jB|?;GSioI9|F2#7;G6CzZOIGeQqcmk>VYoR@)`~jvJ zS)qx=14ZBmwbU}ITPRU+(+GU{Rcj>h5?_q<5se+*Xg*udluGx2zv= z5|s~IYlo3mv@{WUDDb?LesE3@XXGRx_)V#JUhznYj05$X2Z;y5HeXeFL)X{nTa71) zdvUBHp&rRM>QG+H-jy#_4#H{O(3XY`$mrpZbX#Pp$d1zZDWd=BhV2yg+6LAs9ZK!h zTX|Ev8mYQ@^BRlutT^VCliRLCp}nnb?hOLeDvndfzF!nN ztiSAb_@McxtDmqHh5ZT^RHgIx;_>~0@mFtSvpPCzhY7RU@#>hWorKSYP4fsF+E5Fz zqgvB|>BcIBzjUhuC58et)TMTnCG9h&up~lno5WHILbo7S=@WZ4m+ZjJjiTiyd1Q8y zTRZrkW~sQ+pNjaRE%qH#Mb4I*KEaa;H>aCGL~y|J9Oc13#JUvxmy+KF_ok z7L+1FIcAAyU=nP6yku|IU`LW+LYmVt#c6xO%Ya~-FZw71_O^_*)f>zIH<_2P{8mX9sI?YDiu5aVlM z!hO>t) zr|iOOLi7-=Aj@&X1N}HTy|jWv+bo<+W=3L5frkwvx6u^rHYLBzFZT#zt#UdFsbOSZT?C5h>J@IhKgvwRB{#5;TLI%>M-|jJ3RcE6IM(4 ziO?0J^!m3ai1dMSsl4cDSScv0!lq?P$OgDyU#%;?=T_xO0$W45f%^tl7b7?b=0eCO zR3Z>6uiig!>$D@J9g|g%k4CO=4z}77ziF8kx2w(0Vi8KCk=uEg`k*YImA|&qUqwL` z-L363&;O`~Sw7tjwBu5HFdRcq7p|HWf+_dEIjR*Yz~LF04H!`W>FGQp;mx);DeM{l zA{p__V#Lr1hh0Gr^Ge0?XHPB_6q0aWy@dA$0()?FGVDtcuu5P%Go1{h#=(VKT1@M9 z=Fn6FJ6yq?rYgxbHTykk^dTTv`*L2-=LY~AyPyF+KAZ)P+vn-@(W1Md6WL)xmdFV? zw=Npx&oO4SySP+^+_rn%DxAm9qup-Xp;5YhoNn*8bJ~uj$<@^1li1%xq%+JLjGGD@ zZL~E$-Wu<3U$7O|4pGR&iF1?j?yuQqQ^)VO4{26ytSlXP!56L^?M20~%CD|O_-pIC z#^!#FPg1!u$P1c`pK;#YcrRu7`IU$x;jBjSzXO+xIjC|ZHaLkhvX@JX z!q{4<17cd-4ZSiltf20B{}vrT2a1i&kUgD05%Yn4hqT5)5RpjEY2iR>sl&+dGjTOW ztV*7o0(^i`C2D(k6y3&onSc)UIAb&CmdSyzJZ{O3pRW$-spO7`*sQwYtj}Qo% z1&cPCoql&?TXvq?lhOFjMYogvDT;0X{XC`U<5!z+q4=pFXPIUd z&z8hDx3d{~?%3|Jh3pG1UHrSN+d(XQoZbYR|L|EZM$Z6Hx}!O|i6J><`JGr$dW_)s z=Yn$g0-m(OvkQ`d{y+{#7vHXO&d?P9>Ze3{o?kTR+?Ya%h2#~hQ=-Fuk;!c8P!WnR zg+?G*MDgwTi}hUOyjWbc!oxG+KO6`)925Tw(<^SOjP(!9t5Q9B7f9d(Jbt=_aeDD^ zeMg^?GKivpT}*XM2~)U(jOpE(7!Fp0$60~S!9i5brj6`hm^Sk-a=z?OCqQ;} z4ONk*HwqHwHT_tFpP<;0xR40o&9m!QniujIAeh%^!6ThH{W1`l=RD+dN`w66UoHvqk_%I+&zJ=y0}PZRh4cXq+gBOEhM3BwZ$ZYeuoa zF9i{f-HxlN*RMq-DRI7(Y_12t*J-?MS%9{ZvjW5k@*%j%wtLI&bDm-T%*%wTHQIC; z)Qoafy|9?Ca#}b+wjURVLgF{qnj~3NzOr^$WfCgK4Z9Iek~vyE=&Bvz@K=K+)MJh- zm}lvx0}>)zu?DRre);>5%4GCs{qt?``2viAuO~a4RfR>1!T`8P5CE0absn1Q3=zMR zcd5^dgYK%31aC{5kfx!OQ470_{0n8)K7ydJmLMGj3&Q^7P0N2eyfqZYv=a(Tc4ZFP zX>H5|qlky)czz}JrMwiSSn}HF>W7T?7Bb_0uIjQ;$&NhA3(lbr^b$sL8|C2{IMWIk z64(h;HZY`!y=5i>w`)>yU6YMF%yjf{Uq=tSieSh-t)v!ooodF20fj*S zB~Mv$&7&Xb|B~ySBUYY|O#S44m;)=2Mnw1EXC$a6 zR=XIA1B0wa^HC zw3X%4z(W?wvRTA|Rb!=wS(O~t0;y^W&~=K;m8Ae|TSJANLbue4Cb1G%VM27W0s>jY zb_aHTnNX6Kbug4gQA>t~W&_KB$`t0a!S>9Y?_O1%iaaf&G?{IcZ$}o)4R`>RWw5lp z&Qr8dfc5~}Xjn@bQO&nk6Z7k9;-zc{>;PE1QDLO5 zIk%O)l7HLr*aZ<**Yd#e?QI6Mse$$PPh3?1wj<4wBNY8Yc*m@PiaWb$ynm@2G8={7aLpQvO@ zO=*8Kjig{8)h|lNse15)+6D zlUq}SC*m;&ot#b==1r}5#~KdVb|kwsS#+zf^82YH2|!Wm1aqcBQC)pywiE9sU`LI8 zx8gEgp;@72(`T37*{u`(?wrjs#c)MKIioj;dVDgg3HuWqlmU%ZZNA({^U@q@>g2;x ziRsiL37YMdt|=Sgelm%+65_r!p|(jrt!|3H$*apYK60IOIB&-=#7996=!LfilSM&iYFg|R@i0GF@0q@+E&WGz|=Pm z%e(I%0B;t?tlk**9u5js1JH`s@)3+CK_|E=d=dYLZ~z6ajUhwskryF)E%VW*h0KeB z<`$uETAyuMDxzY}(6D0oHnvNIhdnDYA{aQ2iRc$I+DQd^{X9xbcgKo!<~6AM)rbt2 zsJvlcjiWWVM}_a;<2LMgI=47#cQ@bM<7Jh_y$r?in#bIjKuFv)<%D&;z1{-0Dpfj&ms$7{T5clsK%H*S1o)uf8&2x2c5)fzh0V|+G6T3oCjHc3{ zFMVN2)h8sZ;2Ms3`YMsUsHU1(7FhDWnY6BE`7pOR7#CPAz|s5EL&ufTxMNzuX19sb z0{Ql02*Oa9KTfn}_eQ!OTOHnDb78mjz`tll)w8yz$lKvm&qByqEMbH4ncd3`&l=3UE4Op7AG| z*ImwhYVrj0ZQK^rCXrC(L@K*?9MCJySLIXfu)aR0TKUW+Q-$ZS0oDymK4`j8XkZQX z!PP|bL#Nwj>xJqA+6K(X2&pxjJybo!CDlud6rlf$47-Cip(PbH+6X*3$ABkRB9-KX z95Z})t4>_o89OS8W_y86vx2^mk!eH^Wf^h|D z4E3~5B->)I{iqpNcs4jgX8fx%kZRVx-AKA+%irPr8P`Ai+M&I*l(hFWnOT$l2TIg` zm-aSUCA3C=w-$E-_w$W+t@f->r5 z{uXW>kN%=8fCep_;OzR1`!(-jsq#sVbSx#)v1KfXU;;~}fm_5&09IekOKiNYL@DS& zr0oSm(Bt(O4kV3mf*w_r6uYeHlUu4&!QV*3;|kVhhWOS60SFQ)X(nk&O=#rNQ3Q-anbMlZOff7E=o z8?LP!pMKSfMYv>TP&pP-TTckYiX=USF+2r6fZ&k?lS1Y#BHibAN;oO}0SQm;xVAs# zrdX~Omc4fXt-|)V%9Uwq)U=t>U5oR%eG^T;&A2Q1Ww!ZXTgbM`y)A7iE7)%$c85*G zJE$%~HAqFSW53~31zrVBl?&Om+acJ|iAm0ntQb5w zMYJEJEdE^uCaSiA!?<4Wui)tfHH*i`yzkZ2}&$WXH&fWnXHS|Gjr3R?WB$} zj+!SX+A2G-yu2C(DF2d{Wzy=SEmKb6?B;8v>)9?zTrcqg^@qLF^ZrpEu!`zL2fZri z?)8!*l3pEA-B3j)Lx#~@PJKHq4vSXsUfvCSQxOmLgK`!at4^ugYCWvExazopIB7gD z_2I-j3)Jvp01bFHOW-ANbRVJ~t@U%&5|wF8cTF|VLl0n z$3M;8WzFM|7IaYM33V_sf#R51qT}zhR9neXhJ}=k)Ou8Xw3=v@d4&rr zC84#Z@`Ls@M1xhK2O>ijZIljw=y`munu?#ZgYGel#eK$L2r?aAbUzV;svb~DYlkKg# zrn9k1WvP>`ye8W!WK9T9Qf&kj63mTsa&Z1DhX7B7HPzB_iifMZ#qRg?Y@OgEsg#?X z<3m~r{Xm0@gH~dK6RVk1=-O6r_oN6SSVdOxESF^9E>T98g3{#o%lqV>#rF0Vs?t&s zazOT=K}p{&ri(vpKX8oPg)xExQDuC7hI|NtFDHuo|4jB3BonD$(I{u^L9wurGOB@#f3m_EJR+nyJp|FD0SOdRHiT?+=$ z&~JcF4=|FH-;#<_fFEH}k!kT@iPMO_;F1gIs@2KaKx|2g*UUaY`?+@txV3wH0w}M- zAd+g6c3z+dZXYUK1+zV1NXfaaV=1{UOjjCM9pg%2W`LQYzWy?Nq+pNw2G6*;yrL$u zn6V5oy$N)Jt2r7utaC-IzQzeExEv!ACe>57?K@)bg5+NSHC>AGQ{(bb?*cQGRRJqZ z&j{DaONYRSZ!4uv z_@Mk z3%b`siaHT2b78AAOM%IYq#F#Mfml1&kFUcv(oU*4E$2{5@ih&ixv zs&fh1sJq#fIEEDO&~k(=zB{1d~U|ozI^g!(jE3EXT#p<@c>Pq1Mm5Pa)<}d3*k8r z?q>Y=5G^yo65%>LDKlQ?ySVZZWRE5h<>I#wur2z--b4i4?)k(Onp)1xrJK5)tc~rG z28K)*%d>eOC(umBN^Iiu*;*8YkrRxR&3 zK0lc3enl*+{;u&FIQq?F>4=Bl=i!ZTbbxfo`Sk1f`N}9ULgMqMfRX<95s{_x5Bo;D zb}6Y?=Hqx^-hCLxlkv~};gD~oXi{)vb7q!)h$>80OM5K*;eSFo!6c4hTIZu{vua5IF*9I}#7Wn})aKf7Eq@5qKsm)DEgqYNNJ zg(#~Lli7~EWMRFpuuV2^UjVl87L)*V>8Im?0}L%v_hbNA=V&YmFA%^G4lckPoo??C zbNfA5cp>7L2X1u9lYihzM5)^ORXqeFqBztv;(!djZoh}7{WZ|h60}~_gtZvP%g5}4 zK?ghZ_2cnkc9T6nh@X>8hS<8(n_zRBiG7HBKuQOuKh=$mI)Y*PiG@xJq&H*Tl#I=F zJORG(!OU;j=Dry6{mq=`vs;rB4s{nFMXE_$&uKVcvh~g%#FIfNl|f(-HoJ%MS9s1e z45LmGWh$VIsEl}AbI&5)G;pZm-C^AZx>f?y=JvmhdS(9&Gw6_DH5#t=eoQ)lBqqax z_4`^d0Dc@ZsFw2uSZQglTB%Ua>S?I4FQc&LPXnXn-sePei-SP8eLLS*$!^IPD3u3J z&cXg&jCvEC`#u#Ce#QP35KH%nh^rfWJo~W30Fy95FRxW}nBY{j(N%q3IHce}5y$iB zuYzx}sePtxvYahX^ZkUQP+FAFqWAQe*OjN!j4z_>2li=?OD9t4&zOTXU}Zvq1xjnvAlW zs=3qmX-?H30BdUP@? z?IBuVOAlXq_W^p@ay08O#T6cZU;>ooZ?G_b`)!~I`O4B@qoFnE^}cX0Tw%*5cti(b znUt{&i*j?1SA}Dhqo09$lu*|F^5Y}_ zBLP#!YLv)I`In0<=}UzOa4fq{KUeeX)_bKBJFsXfcsB#|h$OVJZ4{*)k&w2GkhHa{ zU$zeIzdikTcf^xo9AF6z=((yKr*0g8FU+p*~ z>RaY}%#PP@p<$5oJK7HBFJ&w-%{SCFYWEl)_eIMgys0U1KYP^r%_Pn;t=KlnDg@Qe zr`ZDNwV80*pjPf9l^nhp7dD}@O*LzIef^f(RP#l-_I$nr+0JQCQ_8V&HQSPHA-3X| za_$W-pzV>SBe67=O&r{n@4SLoqPR;(G!=DpEnmOpl1*LGJvq$BRQL>=E3S#B%Q#Sw z$JYWQ5!%GmNGgyeTlsG-R2y}1v1E40OXU<8qqE4{@R||@1*V?!5`!VoX7GT_EiIoM zEM`wBXm6_u zn;mpzaFnUEM!L0xC2*@mP(?;Q!&{EYn^t7D>%h_WwkY}EqT%#nw~&i6P|=QlUVj|B zUXcb%zbq-%H5J;x^D}yn^(>S~8_5mAcd$@2IAZ!s;1&TAr&Kfm&WLt2+lbO!+Rt?R zQob9c7C@eQAH1 zUfE-!PTHiEL*aqIgziKOdZPLVqN)9^J)ew9ZY)>v5hC$d*&q=iv2GY@=BI8=-9p&} z!}5IPwfS#mc$oe~s?QmBfT^+s6BWW7KVB*2wPh8=8MtKr)>;{Tm`qM zT$3C2VgRUCOvz%tzkIdgU|s^C&|b3mw*N_A@bC>rik`0Ok!2nw|3V*&v60)Kwj65- zb>-laWxZvaOWl-|HA$+$oErJ!d{Vnv>B7!!c2l{m_lEt0|iboYRlhJ?5%)H*CzGUAIjfT%t%l@*{JRxdHCRfm` zvYV#r%@RtKS_Yq@CUqTDQ+ZSmTM*s znK@7)ow*k*QeUE^Eo22~O8r!ZMV6MZ-^tLS(Rv*hN z_nC52$LDTN1%is0U%o=S_7frFz9Pec zr~*o;cY0y5;_%DS{^S=<9 zDvc)KC|KlCnXdDBAH%W!ZQpnXFk?{S*OOiTWRsLwEt5pPZ{vs(JwRG3K|bHpOX)<2 zfP=YQ>Dt9bsGg_BM(A}y}&Bulnt{*-<= z4>MykrM1mBLAQBBws;d10;{}vh;_VP5C2bqqzkR;t?vZy;sw!!Bbrq49 z$jHbD55KJC{_vnZxg?3a(6IV#I`onRS(G4nP+(Ev;rV^yeW=NQ)mH8DQI}Bjj>;0Y6xVzi(LuRcL-{HoNqiy4 z-_vc|v{lcU1J9FZ85o@%j09lj@x|8RjZ<^|+aK}61K;%PM&gubB>O3b}DP5tiVTqRi?z)9~G-oyWn8mHgM_fp-HDFGc_XPWo^&l z4n{oWa?IFtL$AjDrorQ5%c?KH**5Mz{zX(>Bn1Q0KMF*j(lB^m+1<2m7TJKx!oSqQZ zvbbn(3;%dPC6tl3+t(t}gJ4vXbrKV$oK&g9HJY!K3&jY$qO8Fm%1M;%Lh_hO_!yDQ zlCtiNb^#&Fj7jJi$s*J~q!DA(|Ds^KIM@EuuyZtr3r zH(ra=KH#!Yr2)YDW zEC?zexI3V|m5x&B+&c>QwE{(&uKTM>0HGJXNc0>L;ah$xexAB62XR6On#xYKC2@Bf zj$^!OP7w>SOX8q3Ny5uzhLAj&AXaK-Y;B(`ZGWY)S(P%uBtx)9Qm>>p1!ZRCeP!b< z52s8MECE(^8NMn7(%jTFMVV@v=aSseRK`e#R-KXH8n5lR!94IIEUaezk5JY$RtQJf zCg2FxLtn0OQWC(h*qh2e^`Y$}Q&0p4g#RK47^$dDqYq7VF_Y`nM)+w2t%;VPi5O`gO%=6EN3 zA&)RZ{pos8oPC9WLe5SX@n{wK+&z+(RNm(L4S{O+-$N6YH8)YEAPy)V=1w}bA6$bb(iKLW%Ionr)<(W-L1wJgm zLf-T1YoFx6&g5Phf(QI~C^SQ4Abo{ugJS9p;q-I$k`T_r)ftgv!_<|((4Ou+yXad+ z{)XHOHHyh2xlF-Tt!AkZ>jyBR>BfK9&};Wb`5%uPG*~X4Z3hXezVQ5WR9Q(PRv@vXiG7;zU?c+5;ku<{~XiI7SyRA2CFWn$j6^5%7KKd_(T`abT(W!d4lm|vG zi0Fk9k312TR$B{%MOZ52GB`aWJp~D$*n=T`al3g7vd_BX(M#dnlLwA=gpfLRto6nZIhz;;_SXFfh9^^W?D)6EfNFvgACux1lzTCDY~Pv|Rn23nJ=9 zTavYnj)ZqVovO@qJx?e@-+$R#WVi1;FVFqeSdFts_(jjB9@}-hiXpH7H%WSBikaoy z;LtQm$sCN1M$^OHt-gb36Li3sG77KguZJ5?XqJvwo4jiV9OsLZoa)+>bXUJsD`2iX z^yQ%d(E9Zfe^t@zgdF2qwmdcWaIYH;a%MMJ_|Bdry@mJx#J4v^W=Cl`ZGf;5@K;#6 zx4gzH>SV7f89ZKW<}IrAbYUfXjwfVUO~LF-%uNviJj2`J+jryn>%)WBQUv%rJAQgx z0#dbF9U~@go!Ig_{G7&tk~Sim&Hng!*evz}apfRigTyj~-O|Igc~u+?rh^_j%;6xa z&NQF4eE_qjOL#GkPrJ~J)w`M6^_`+NRk@iqX=O#h9aZA#VHp|4W&I0fCL8@MnJ*j8 ze6a#6CpCUcJuRwyf2g5ObFk^d{{3lgKrXQXaJ8IBt2r369wb9%r88weR9#BQ5W|`o zoX87ZIN1O>(37Q<06yUgHq)p?jh?I$Hlu);2duGD^B{EHPpF)Z7O0XHrVrZes3-+{ z=+uvk+1K0iARsVtN^N?7vAD35o3aYtp5D*!6bjKGwu@nv{4e2YCZ5zYx)8dhrG6cX z6KqiABXbZRO3e`WnMU3loXQ!}uUz9abaf3!Xd39{bN2R$KsjGx_m1(+o$6Bi*=E8V zy>A?e8ybyFC~^9n9hr;5|3*c-kgn;tHA9D%3FAX+H|Q5-iG`x%+zqj$OA@3i9*;T< zibrp1rB(28TYmV(?Xw&S$c)8$W)@tWaPT!QP`;@;tC0CjQ2!5Jf+Ywo*{ku0>?p5i zXuD7_4jssO~ehUtCD(4`ab7P1#5l&f^72ZdQ7Up;g|P z1o`DHd`k3Of)z4UCRiP>PnWxQRI>Y!#ar#`yFAXy98gYh!PGHwi*{@_O(^bG3TDn$ z%GTumTO1z-{?S{uBfSOg=?k!u;+-^5GcB)X?3GqQ8*;7XZINs*Hh6biOm7)Wyuge! zMyY*s&KP#@eOW{3(2x)Sj?yKxKnAMXbqt7#dhq3G?}5Z`<)trOWeXGtUajQ@cV+hO z)xq@m-DEyKA!WhrO_R9d%oe}ED!2*I7m;@TY1>V9`tzKJ%7tSTAl6igJWMZc-b6N9 zFwotDz4%v!Y&20kp>QC3rAb z4q(UGTr3~K&{^t&^Lu9&w1TDzjSwkv=nN7Nv%UNo;PtOx@h_X*ryi|L_LbvIUe4Ex zHPe(ZA{Wa+?uOSYzv*Dp(_ofQbc;S>LiS9MG8G>M`}}!%k8k;t5^8}{W{kCpY@}*< zv7J~k^DkZ0SnaZP?In#Xghfj_aN>Ah|{sPCUgbs&=!BX5Y6m#R2IROM=5B=^E zY%(8%nl$K|QkYS=v~7&bu4D3iWo{pz4c}LR`f{VQlupMg@me?{Sr>gDIg5lYQs)wd4h6 z5X-Wb0uU!YK;J#qm$Xe;$ZbN(zeSKvG|3B z0}bx@#yKXJ_@O~W10xfo&{6MI42g_*1VLBLO z1hBQckuD4IQ5j_`nw6xt{IE`o`!hvm{0=vma7Hlhx!lTp*)Q%^Rx8 zxPd@ZZS?6k**K)n4mv}4fSS1?rEapQ;e@h!E&1vgT?MEh3~i&zAnBLki-@2(l#bRT1H)I3q#u_?XRZB&EsX+ybb!lx$ z){yn=+*TN~Wpu_jyI3ErRX8%64Vw-iz6TVuz_-|_wwM$>Kv11DvlcQ-uu!k{DOxSc z*W*|1XL6E~LP6aL)d`7%TGU^YrV@C}yvWe%Gt9_Hlk?dYWPx^L-}(@i|B`O3uQ3xI z<-jzAO04CSO2niHV&>*-@gQgJ+FU9)chq@CdXy=@X$q|iIVNy!ZS?ITDfh8gHQ`yQzc`Cb-V#S7gI?trK#gno#^H?jNJQJKU zjSog<_Bw5IRe<3X;2vp)VPVm0*V`K|0ee;xle>a)LvbiPfy^Omg?%jLtJ1(VTF4=X z^DTU$tM4mDq)IZ?X`eY7N2t>8k_tkL6Y zCK@>NNLu?Z{@1XXG^ZRyn#3y+2N6xhbn%232JwZddn_SD;efEIC zgyX+ed&L0Ia>1u3+XZO`({Wmq$q@aLh#IUVu5)~1Wey4awp!`}-=BlivpXg^-FSF3 zir*;}78wtxhrgwZ-c6^Vp68x8m>~G|dH8Q!I?4C+Jjj+0=Xk>IKb~eJfn0iV_s%5H z4qKX~=^awE!qn#QA=ZNS-Kq3Ft*qb>bsJk*MknanfebhDKz%uNTFQ5BaaPDdKoK*~ z53qRn#=HGA5yChNAC~MQr(2oWxH*0JH2+K)0x%9~b3)QeoK)*!5qsak=>rY1-tB$S?PX2!!;>4RPMuDN8} z^e$vj@Ss$U=*QBaHrN^$K;2)&uGjZX@iV%!rqksOj5j$`-U%K;xyNrjAwwqN3k5s+ z9c?#gVT|W@_dUZ5;R&~QSIfoVJD#L$_Z0+X_~@9;hB2(jCi{z}4_c%vvJ}<2yXP?< z7uU+V(By}CAdNnt(S`w7b9`9x#TR&0l9!utn?_l()Wb{qPvr^Tc%hBn+w<1_*1?Uc zL0EH!MAl1#7r9ZE$8>zWm)yTl8Sz|$LALOhW%&G=xn*OU-zv(aS^4Z*#I4NU)S^9vSsfPn4(bnxcK9V3{%y`I7ELjq;4pCKCy- zN?k*A*ZEK7L8u$Obf`7Nh0?A>1ldCp*7NtrV;~tw`{7<$!$yGZRL|z*_2G;i;$-(V z;Zu?s2$HP79Foqz8Bhx*RuPyWGMQV_pQNivs?}TPhB+tTFd4mPl9o80Xk9*&Bk*Bl zrl1IzXIR?eW8(ynqvu_|CHBeOvzZxkE*GV7&@H25V7_`UCiw;rXdLOGNXc?02=gKP zx4SDWFI<}9p=$cESl-NR`j-qX=7TxBO-(kpDk1qqG1Bg<_>M_KDf=1l1*Bex3pnTu zgB8t5K+>b!$RKh>tK2L-8NbIOjW=uS3cnO$|ibG{>Uuf>LP ze`n24L5c$**9?PYhOg@xyabnzt-((5pJFB7~E9pbUswy}6VC6jn=tI3MrF?x=2a1(7 zbBc{sJt($T^`O{V^_;<)X@1o=lt%t$HpewfiV36`C@+yh$d+OI`j7MsS>YW=C1`tJ zJeV!xlNz@_t~%Rrkhza{IBx8Rh*#1G(D0m0a}G2;duN4o_6}!5jGFn|!=tyu-{!l+ z-Pfa3DQEY1d^{aAer8BAL0b4V2tUS zUqVsdXWve@Lf551J2abfc;>KZFL8TjV0hVt0a!YtQP1-i2_cYuz;_CoD3Wq?j3CeP>drP>wOM+js_pzcLa`d-)NV(vFj3z05b<0(PP- zC*T;?JJK{AEM=tRTTgYH9bIUg9U_AI+xayfo)MvnLscNFmK??W?`I35L*!7l0u`#X zF3!Vk>fqvw^7K*&?$ar0DVUD>Vo|KXz0d<-_W}@Dh*^pj%nT^o6kM4F6A=%N@!*LiGXMiu2%1CbAiQ7f57glfL zU@Z1$gJI$&bcTH;bSR9|%eB$*-m*5^MylyOHGrQ}yb>3uTlePRWH;|)?yyLD>h185 z`K*tk1D~gR+=};fc|Nd>x)&ez5Q2PodKySC^qU5$-JMqxO4$ID8}___QF`*?3w5>X zgeX6}_Jx;dGl_=O*-;&yXsjneIH^mH5AgYtu6R16>{0wWes@CBk}Tjed+>i|mOG|) zU~h4GN_^7z(`K71I7+rVC)yzYF7KoX%{ok>L&JunA&Dm=;PlM3eYhr1H_ogXUOyey zZRiuhtMSUfvUo13-;Vb^kr5~H)x$E{a#ez;-#!SB^FJofmedqgRWbx0wmb7OQ~Icr zad5bMJemJ?JQXj*RyhaSZ=%X_{kBeQacWsqT{N;nQ^mL^$GlS#=wGd?P*mXvYpOVkSox8wI@lgDV z+&VyR-Pb>enNyTWbMJ*)*6fOeB2zkhO%bAx;X@@BhQs4MBY5|4jP7T3DLni%$2>ne zo==ZYT=}L;$Ti}e@Tcgt5rv%TB)na;hpSF8j5-1@d^_$O%7pi=Lx=ILK8CG1KfQQX zUXTkX@{ARMKfX_#pEgGckZ7vhlWVRt8nVm++5BK}>oskLQEP|mR9nO4p1qHF@f6N4-7$zH(B8GUUq@<)Eph~qxMVu1*YEA{*xzf@FxuttPYmJz9QlW!6 zA!F&fq7PN)NRagV;n9H?vDrU9*v%S8c>YH72&eO${fL+P63*RBae**4NnrWJ=$pMD z%8$8M%P10?;TLmO7=&5+)17`*e%q*VI2TmTq5*ntl=bLh#XZGSkazmfe*NBlY-sm>umXH%vawpG zEe&@KbY*|zFURn+XkVrFFtVaKwXWa1HoLxoy)wif@){IBM4Ei)|BkuMm-mllu2e`j zg%wp9*j3xPs5QHrx?{AZzenaxdWl-IQ2`n4%e!gPnnEwpXx5t*RJsfry>fF#zSP{> z#oZI~Ui|LA*;KK?l2Y~n!)9S6iX~=a=d=hUCYcm}1VkjMA=p9Q-P&3X87)|2LHI&mj}Xr6mmZ6<@&YI= z6HRI}XFi{DIjIfh4#N_8v;h3(`iU-}d!zo}B3=Ij#5=pcK7y zPemOrZ8d$TigB$L_4$o#8`t)ow_$gsPip}ZD&MuI9lQiVGHUQJdaeZLaeK~!d;Cm> zQ58<>xh8d9f`IjFuH3Wxm#g&DuYLH?y;db8``TqACq>6a=lj5%dcL?neKLs)8@b(2 zEjh0ZRko@ylc?{lH>xjQ|I%1WIQH--m}cR%%I$-eb=4$|H>6_#vR1nDv%8D0-w)qK zfH~k)0d3^By2B1(Ca6@FI^bq zy2{6)#{H=nI4g)X<*og^oPeiLpUjH2>pKV@eR_ZOv84N?k7Gg+6&n^~=-aVp*br?? z#SV*TBKW1#b&O>J64N;sTw^xp#I}b=P}Rv)Zs-&{5X2FseITnp+I*Y#p4+@v*@U$R z5#emIE)=tfyg@$=^kz7aV7`=q;hJJnx-6AG(n6_p=W3VwAbU~~S73ZM@u`E-u2Njogw=lMUWo+Fnwg@~leJ#Lc4 z?c!68hh3Tgc*w)wmJb6+OZgV>U`}u?J6lVKC-c#01HaDGVstiI*ZedGjif+f%CXRt zjfyyzK%)dNJNM#yicBHHaD7Sw=uJ=`Iwfb4r<$)=|7yCYrC+b0#iR!0kG6v8X?Tse z*&H$$JSu90M>%z=kF(O!NX`1G<<45kb!p!xNCyrS;VpbavzMydRe9pQeEHgyOzQE8QeA5gzY2 z8M!^e{aI?s_$er~eD@iP!7cFa(nys>5^l0x9L87?$*(~cVUfe2YzB#wZ19G1B54D7 zHCyo|F{}&ht(OX0QT;0(?+gYJip(-$#ifuD`4du^LBq}C1a9Ymw*{KBfVwE7er}26 zMN?X?zRo2HgCIvtP#8PXMoXlsUKs`rX-Zbhb;Yu5vv$+-^G96VOL>&t=fueBt#+2| zZ${=oHceYKR;Xo;xcGH$R3{1APVI#hGWth z+i%pB(XMQ&HnLCr@NPntitI2xoSi7%K=1)@YwP&vw;|4OKP3a!lx@e{;FiYNA)q1D zH7>HAPOkCwaR<4KNke70%SQc&?wxs?9Iz!_hxLzms9;zDUue#{&aJR30Uaq+&6r5y z(Tvr7xD;NB#3G%+?KDB+2psU(et&{EV5A2TC4en1Z;5?>`!V>|O*4LF1$Fk!qxmPE z2;8#bPY@~H{GLY+%oupbbBiwnX3dMl2x_okIi!op1#NNmhZ6#NBk2m?@xXO?HXC0t zn=2mw-tcq&_slT!=}23wbiPi3v(}w69!y;x3Sldf^fz9oK9|0aqq5~hki7K*+Th2t zSKsma*esQ@2Ki%G`x!{lR)c|0xBUkR&n+Ie!I9iLg|j1o{I(8j-UI|kIAQ&fc=N#g zrMv_FAAl!!a?oo;;qb^gr?LAgo|W`vUF>ZVXR1Wl>^%G_z4s1If-) zCenS=S@R9Kt<4Y5j&U&{&#`Li$yu(zVC({=e?5Tv*j(&_peqs6+q{3O7Gsgxb5K}i zJ?vhBdzar{A*|Cr*|Q|JJyd8@&y(~&BolKrg8$#{C})mKxsS+(8c$@D=9zrWD=_IH z%0E=?8GoE%RII#jFtF9hCTun99S;5k^`b0&*Q^YjU3?{+0AJmM0VxJ!3J)FSL6~X2 zQI^hi4^5VWv1Ts03*xEXwlE@zCX-`N?m z+LX%oEhkxJC~P zM|=Iyu%wts6|OOiN~e4!o(H^=yMwD^o6eVMAI@`)g&@Ha^7=5>V?@1cx7Ub$j6t*aM8G|y~KJg<~hac z5>~0qd1tb?b}wHUkzvIb6f-e();3aBhU&3NTZxXL9Z~7XK<3tp{YF~L0=Y-w(bkK7 zj>{etIQu9Yo)SwhiJ&f06E$g#Lms$L?PPk(%Hmb{N|e$l=<{m0`({2RX}=(P=8-%h z-#6ar`aEoS>FVn4V=)}=%hFcwEA@Aze%!4EwL(?)vUw@8R_GDf{+w zPi{OMN-d^6vLKwuuQhtlzRcRHf*XeZ66Wmid{h;(xk15=Go;qD?OQg4ib@dSK=95X z6$`{s=P!IWt%X8kOa2XEDTyA^h&N7Ks|4<$a_d2x;vS48soRK=`B5URzkr7OFe zPCR3CH#TpV#9=Ybu8Uo5bO;}g2t-{J0tE$xv_ur0pkRP>S4YcNKlk4q?ONGtTB?~h z`C6rb5#og5f{;MVz!pGPPQQ_Ftbfm(;fk!P!|ap{6Yextasp0f5UvJo3UoOcJ7FDN{mXzp4to~qq>-gIEN)q5Y;wr)+f48Nbzi*X;pC7)s-vTW z@q7%S0jdi?S83CvFrx0;HN#_DafA8rYU5yYy3xawz>_6rg(Vs2A%cj)v7#PJFP&w) zPIm9UcGhMG`Pz)yGP7av4hJ%2(d*0%F+675zu}zg@H|v5rrQTvqCqOwP^+frECd#n zfLX;E=_!5_RbbW|-KuybJ&chV{FA{K{;zS%bmL&-)y6Q9ZBQ!M*^~o_9k;Z=_ou^y z`QB)9@|th>I~0=n0RbWG+U(Ou$clGMqs9wY$_}rojZuAUu)>nP5F7jw3d2Q32jOUg z4uS&B{Gev2LKmN*I3bg>6U`VA49Z$B0AOqyHHj$>fy-vXX#V%p;^FJmZM1{M*c1w#=H=CXlPj>}rna%F69^Q*@cXma6uPc-zAlc^+SNDoN zxcRL@*#VG2aU_Bz710(IZgQG)Qbn#(GQtCv4i*E@%M^TOF=D5Bu6Pq;Xq!&yaH4|U zx1=Y}?3m!@JiViV3)9Cb2|@$ASW<>iS~%yjVGRi=A&!tXFx}wd9KwWAGE@U*FPwH_ z8Hk2}iD2ZAY`%MqspiV0jZ*ds&1;4md?A(d%U51gH&obDCu@usA5O1Nn9@tp=#WL( z;p5#w_LSGj8S8duqr-B|;*!xsqo-b~Cf+4ZO;h@ci%@QtR9U)T;G0yI*HdQ0u6uV} zXSJp}V-;-;Yn+^H6pq#RR}V@i;;L{oarO? zvr|)7BT-9AT`@>(%j2Z0{om%Em|SRmq=x$6 z$GgnoXoH0~~?48uzI%IyehmJ3~VWkzM8!KqJ}bZrd8jVbJ5Oh&Vm6s2K=t)o`lU<75e(%;zHTYb zd%-~4V5gL0@A3Tkj0r89tmf#Vv*RtuI);T8ImXOmQa2!P*VfiIG0@GS+h(Nf81rPW zm)szTx<;wm9+EFQ&+l=3L8=XA!8<73&y6KilWrKHM1fZbahvgMwZWr8!eLUJWbErTWo#06_^P*@=0ma zY?>kteLp%S9$lp$y~mBZzZ|=6g9gTWh%R?s~Vc#`XI6e8+teL z09xqX>RG7j8KGXl`m($70S`xr2b8~AI)$d?3FNL;l#ts5nK)t*hk8zNp2d4)|KT)wm*6~5{KC($97_a z{KHwmDpKzBkbjunL*6i&qC~oiv{~XCvVIvz+}BT#6^ac_BBU#!w6anJgCnL$JB2^V z)Omg9gJ_JbYO#D9Od!jlle~?c)mN;bdn7=vt-*RB5;~u7@YcVylc0R3)l=K;SP(1+ zuM<*OMFDqjKV89XdDv2wkcY*h!GG?2tyuy4_an8=$UtPfbmg=!vF9tvA|BsJBT2Cs za(c7S~p+S1u4w^~GVn5q&5j+#*zM)RT& z7sxa3y36WOHi4#+lRca&6#kL$5JDD zkgCLYI+7-0ASDu*uY@RBEC{9For$GjA;&QcDNFo82DuwHG=f+RK+wZ*@nL2rl#?FX zkV?7B8QC^9Do$ft5!XbOfFprl3XQC&zrhn$#D`XJCI)T@ht)%V(dcX15?15q(1&mo zx=UF8Abs1xKwl*-UN<#b^)|lU@XAkv4yB@jo$V{h7aQ!b*lR%@dZ}b5Ha9($KvZ}7 zY19Vn+)~Px+fh+JT59>A1PnHiiQ;R)b7&-{Aa__J%!I`SAvT6U;8{Cwb*Z|m>g5U{ z8y1PPd@b@MhEk%3D(#BJuawb1@Qm|MW*fDsKHniL`HI*!tc046MQONQ0f-#LCYD@d zG36o&1BA`38$1{f4iPlaHdNbN!NuB)bJjLc$Iquq=w$KT4oQzHlF@riwct< z^tm))g)W*D+ojf~aR@ytmHC`Z&TkxL*|=)b5^s&dCkQwZl*=1D4{=gaCT}RA=0RQ(E7lPHHZ*^p_lOsIjFJRy6l)hWRrOX5C2m45K`aJ)YU zL3u(BFF!ICLIpO`?9lwOo|1rdd2wxd?fkdwJ|(>aRd;hr#vnuS52PJb>%x+05Y(vY zkJ*L6|96@ulp~0aSG= zeYB__G&)|_Wet{0lOA$))n(0CK0|4bR{Y9VzNyGAuXuC&f@zXS_?f3GeZg#0tybSZB(XsJiB8huPB?GK=^f^ye7^Dl4*1O zh5IU3;krpNascT*>d@gJbl<}IoJXgVFEpjwNI70FO8xvz=7pssu`sR#Yi)CVxFcZ} z7(3QF(-!;2Qf6xTccxz61JiF!-xaz`x2+e7WNZ_hkfXUq;$}jYnsC#(LAfi0G&#p^x|?EvugspSZ$`Ev~_3*%uFlx z-8s>z+F?E`5jvED&!SgUXwg7f4Bm^wvKh*Z=`-LG!>4w2=?=0#lxO)FA)lD!KhO8$ zcDF)z21FzmPg1_$tW3b?{@o=>mB>p(T&!M76R}a+x@P5jZbB@+Ywg27^FV^AMO7)&yc~R5TvX3ZsT8OJT3Q35s zu)qG)z4BCsr~T!J7B3Sc%;V`5YN^(A_4w6fNyAxOzzb9mSQfvBvm2bGJj&^sjdFeU zi79N(BJ-O45xIPlypi)4_Y_GgTyIk?6Nlz!sVYek7O0aS5;wv$fr{mjYG@>8M1$Or z4n8qU@7YQYg&qk#QN)FKpmcyZip%&My})48`a3uZs7>Myl)tc$q3XtU{1|+R&d$B_ zMOjkC=mV)iaXeaV5LsEuZRn3|I;*#m;e(uU54Gk5SEwO zz_pqYhg(Bk?5%8q5^?o85ff$P1Pik;Oe896WN)OX*xbs1=;wz*E2stt^6gamoVK5= zQi@pNH~{fJ#D-%Y=f^u${hnVE!It@=B~k%% z12mAS>8tF=6Vm(u_WOE!zMFtrAU3q$3r+QUIC~8=`OWBv-T!bO1q#*7HuVJYaQO*q z{aPS&oSq;;=9a{g-B;zilx*n=G`lB56ZLS39z@2?xENTL?leG`YGT!XB4_y7Or_&V zX%MJYm_aT?MCQXOHWBm*^0+F`y=za(FMyE@u2VrIQBUcf<@_tRGrYE%6Q}p$Q?4+b}MD&?{F+i2E)ybs(vsH>OKEUko?ox=osR{4`^w}H6cFJ=tq>SC~I|yQ$hI( z;b^V)${~BhXf)fI-`HdRE-Pf?L57MDLPUKu41c%5+DEcRf56bf%P?(HVm$Q9zyIa) z9p)*;%)zP(^w#=m^3ZdO92ZeI3p=KXBesF;f>K*wn?-vq4$-(qfg$ds)wqN zIHhG?L9Pk%;v&Uogz13N#1$f~*dO{Yt__N1EWJ`l_Ph)l%guZy@Po?@+a#s$e7UT# zGJvBaNh?~0@&`=!hvY>?8C6vdR<$AyfcO=WJH0X2=11gpW;6PN1i@x-d68+6BJ5<% z_2#+BdMb24=A%DGvUoVZFaN$QtTsnU#dy*gFW$j-j*3tmGGhmr%!N`&{FAUG7v0^8 z%l`PlKP&_>aGAaYQ7le|_ore)D6cx4hsFNg!|-@!RW@8f^A_d#l@U2U{uL$}1)ani z;Xg$-y#BBtYN-tK4yd-<{uha&mg$H#HblHMOUeb3<6J;yxshZQM`?~BVtmGGe zhwDua%L^fl-4hkNySWV_x=>OU0H7NWzgZ)K+FbAowaps_eMUG@`(%RqXZn0%6TD?M zF$b(vg2;~Etza2sGx10teq|@rj-I_*e7L$T_x00je?Z(7%EW6!fQSVU2i`gjl>;-2 z9)$Mr%6#=@L3)#l8}ro z9A?j|l{;u0tY;>+4ApekVCh2qXW*OCZ>41hF##`tN^nPe^Ve|9>=SENn7D~3lYC28 zXF6&D1LgXYn!_)w&NxX0hnc4d7WGMI;diNCNV;H(@$Fy4QS0RRvGkZ1HS&nz)P*LD zE337A$3VN_df8MZ#86v`@Z?`U*> zZ3#Gm@il#8+2WcUZbZw(lgsGrQU=3- z`xUCc0m+{nowVvgaC)tYsh_=jbuc}CHxaJBfyM_^X{3bF-dwo*=E+x-pV+0K{q%4* zl9FXr?O>G|m>UB;xd5T^gA`ug0~fHgg}BVn3!1@&7s2|4noKsgblf_Q;i?N@7SiTV zw7;X~O*K~AS6Aw{wmOy(8~l=u%(hnk8%PVJNArBtOzAu|U;A{Wol^GG?dQ>rTz0rr z6cP)hfPMSqIV<9z{T@w{&t~-<799m}#PZAyaiJP?{y4aV?tcCM{$CaRVxbDDA^#xT zGIQRDkA{hP#6kd7<-}d2|Y7~&+YFjM~eMCLkIa}f1Q2+*7t!X&4l0+BkJYa zJnBhjQVl{aIjGGHC0|h_u;vzs#5LxLAykoYrltZa(>&{o6kvwCxd*0;4@^}dH)X4Jr_^7KZmER}3UVgl~B;v8QhLXm= zw@ItVzqj@8;n4p5O8?$lv)UIHfO@IwMKcrRihRX3S1gU8xf;qCpiL)ruz@PES8RH^ zUaE5uJ*WpwD^>ANwzY9Vd=AYH7wiSl*YhrYB2}g23L8lju&Z0mHOo=n=cQ9_So`ww zxdv_^t&`U1>AOl7NtfAemGB7y*4$?-p<5NJS_*GyO%(sx?MR6;=w{to!*olQr*v%*_3636ZFjLC(Y0)nuMbxTNjHXkN4=t*M zI$x)D5Ji*5(7uY%S&9DcyI2`fJiHwol)j6Yw9j{+G}OE`BiDCLW9|lWNl~F!ON{7BEqKz4dY$(20C^^u29a$fTqPjN zl!Qt3vG8Up%=PezgAs!dWrHclB7bUY@8>!OkSXX*mH}Do0t;qDQ#GMb~R+~mj|3Y z_5o32$Q$qgoRIHdG1^?FNBN^9aLb{S%}+!Pgq#O?BwTCr$FUShCNj03iy0}`kL_xV zk4a!pDQVMQJ7vd1P#wUzY%S^7vYk5#JW@;QxaUu=v0KLjgWP?#s03 ze+F33ZN3!9dsx>_QQ)R;64d$+*aSB>Bq9W^UnVXPT7W!g3bSOUyeOtXb1RYRDIyz6 zU1dMi5%UlmJU}|9l)>i)Za%Y-fPjzvL;gpH%o7~8uhyxNumX#m!hD(n75;{4pe=&c zsTC8b=L%`6+8RVJF%yIP>Kgp_%TvvwQv1>v?X(`F+;TiTR7eKDYc|#uIvZ!J#nWrv zKq6ui1D0`%tj6ykzZ!Jkf}arbEGT4j!isumHqPybGxr+6LrTc|a-k%n zsPPUZ`pJQ3PO_}E%7GNJ9S`imQd2G3WJ{;#IgR$C5(0*1=q2ScQytI;WvX3VYNA+NxH)ZPLQ6ur{eCRC3tLUp^4x>sMS-c)uT{-!)psWVnwa;quI0SdqoL9H*pp# zS>X}E)+3ILv7_%`CgBx$tA~sJyL6G-PH-~gNx1VBSD2z0K8UVwlOVPyw{A9nCehjd zr~~}<@U1A&Q|f6yjc^dDMi8rPvgunIcF5Fs`(XB0B#QF?aHSIIQQ88|fdq)^jPR{+ z!;)k=6PXW4l+_}&y%Lj+*&g&MU&=oZ0~J%(^!>2s?S))JsN?rjk;$j}wLM=cgywpg zX4k^*7Ev=L1c_Fj$|?c^U|WkoKGyN?AYiC$eQn;1 zZ^Pbg#z|$2?U?AGtJ>}qG5;KMo6kaVgm6G+XA6BK$Bg62=4=qIe%=>hk))|5SBzm` z6Tq%1LpvDjO-Mj@OQ8~~Z7*{GI9Mb$Xh(GK3*7A$0bXMbe`mn~3gRv<<=6akAnumj z@AMh1P@J;|{8L(0LJIxh2Mm~0h!w0p8Xx?r#xM3S2qXz_Vp6W*?d!Zr!SFjXFyWS^ zgqcH|vI8%cXTb4PcYj|YRNWyEYocBcz*|HX3WFF%gliQ&`S&A6=82tNb1ymR*txK1U)*2d09B@339*0S7A%~cv?h1dthG2{8e!un zU=KO5FB29H-vXKk%X7^~Ln%}oR_n6NBBBg|M;MuM|YV?Efa zA+Igt3|mo|xsd&ju_u(t4s#&4Cu~J)s5NHt1`?l;A;LD!2W^@=f5pJkU~G zU}n3S2&W`))iR&Sr-PN0|u4d!zkq|L`|r ziookK^Rn7sC$GWUftqJRkXea;<7-G+q^!STW|u5fiTm0q>V!dotek zIt?ND0&IQoa$1PyR=2vHE$T(guRoF`!cs`pHgl;QS){ven;*G!Y9=JGl(gtx%v0fN z(h3N3&uf1J^BfjKY0T0Y|GO9O><{+~GD}B}VI{D!V8SJ$SU=WFM6t_ipG72%b`Y)K zRc3uJ_NHv-t%Dw!h=Xxo?vU7-`^@ao2`gI%+-e+ZnuluHF}tuYg`CuEHuJK61u6Uu zFNsp-J@iW|?ImBU(&o4Ex@$5q9ZuaomCtQx{Hf|zt;K<#>rc*JtVc(DY-(@Zenb&q z;ofHilsLw%_Y%-2jy6tbdlADq$<pGF*BPK0czXkk5paN z`Y%E<|4%qAaw)m~9=K!b8{TAi0I%WJWH&%9vJ0RBHB2&2N@e^s7aTyO(9DmO*~zXV zU3E?8cHZ{=dl0+9|Jk1&lP}lPxgTmc9cZLo6_xTH_g|jr8!jFW9U4r;?RVCE2AJnm z>E(yFUkzY5v}7_7oa3U=He=V~+m}p1trrzL8@&EY0{_8*f3qzO9L;M)m z^nO5hKth{RIra6FZz-_$u0iZqBM9 z=zd*gychW-GQuEBE-!8IqTy~YZw>5wIXQoqZ;7=t_pp<-lix4{{*_%an^33jKnp7< zo86o}=tuKgY|Yz==!bGwocR(wI zmkjm9zTd+Yh9z8f{je?1BXCrJR=fl4{12LZbU>ay(#%z3Ga_f2)cU+D2C2k5GW>YK zE-q%lt*a%PS4#WgNj>%a?(uYFIPTMg(6(QO;-^1l>bZ#b!P+rw_x|4Ddx5)UG)#9V zWe%S!gL95$L%k2{$acJwyIt(Bp+Sfe;9K*ko_oJo+dH1?WXh^PpRg9|;hHng&arfJ zUOR%SZ4<^cO!-6{gY9|)3?H^RnKEFvB0Mh)O@4ZP|MArRI>WX4R!PD1$IL)uo*Uwy?+YXHtk6V{h0e+6dT(CKqCteUM*hqdTwhe~oU0@=H1 z_5rMW()v&nGx@aSO9LfKVfk>Qv! zG1!9ewFblMrA2UOgv z<;P&Iq1BLf&uaPLF9LaW;z#_kw)Eao=LZC|Q4oL;at%|4+$dtp^P?PtW%)+4r!!Lf zk_^bGBC}6dV5U`ogR9@&+DaKKDdExl5DQxK;~ISW zlSx9n3i1gEb>Vmsn^Np$DEtlhdr}JpVp|T_q6G;lLs@gXO--NOeX;vOb^!ajS-3__ zetw}A^r%%QQOgx=i*hP@!icIJKEDBX*9Ou@W9D8FgQ=@TuEZ1E2%k&=zu!CD-ycm! zN05dpJpTCI+ruLz?)g0u`zHpaaTc;yT300O2UB)>pT`t+vVx8jcGY@z^7(E?@HUpy zZXj(A<;Z@_4ls*uUtOIpvsVnVaXEg^m_BS}%zt!-A&+*}LOMFv0(?I_9yx;F-w~Ro z3I;sq0{`nPD2psRh6+!INuk*}dOp3L1pQMifm8_~fIYjg#im#-F*G9;8ZsfG6#fjO znmc4t%!@xE3fFfp(HvFd(@AK^AP;r<>$v+^$t0P*`m#}Qcu_Br7DHLC<1Nr zaetF9a13lE`~2~ayrl8M8iUc-g(3V)oE(Ax?7c)LEBj>5k3r{1-op61H6?_D-+s>`SNF*LN$`BxS41_+FBU|F4hzxYbO*(9pPQR7e{Z7xF)#yyKn8FUgRqF zu$vM>z{iM$VotYKC1Y~pqd!X2q-vogv6q&ueM-pi@p=igFSTa;3l~=qtmU(K02g9f z4Q>ORp-NC;_Pi%CFMal>CM9Lb!v;+F4<#3Qyg$GHnms|Xaj<$}VD-V80P33tQ{Tz; z_p43)d$$l|eZSC4ITDi=J^X;+=gf|cwIV_uct}COO_} z=gx8(U|ZRLEg{CW%BPSU)!tOT{NNJ|u8OB7lqymkcP@M?E}It`0{(_rBjmSJCKI|N zHP7;EvnOSPpzRZ#a5P<&e3#>J@|Az5{3>Cvq@axr7JG6et%~bdg_h~x^1qaGsfz#H z;4%pemLzZ}09tK3wd6Vsif0(Lz_h$D%z{=**-o@VV^R0Ek|)8`K|`(ElFmJmWJn6? z8F#aMDg_7Wl9K=?1i%vcfa)T+JHuyL1mM61S6^rOQ~+DG;0tKSI4lO-bF;y_r31#V6eDRCNNju>Ks`j); zF(V8SEnNaZF#X*uP=@uBrv^p?m1Mr^LFDT@uL{~Ke~ZH$Vw|bQiBT%8lw3iPc-E`0 zRKcH88EPZQg~<;Ei~ald9F{cWrj+k35V?j+oIFiwR431G-*-`qEZKKSJP@OreF=<| zBz@20;T_; zb^-JFAv#aCj;OdJIA*1gXm#x9{cnb~j!J?SE$m#PWnJRW9P!_6M;Dd03`<+88(I@i z?c3A)_T|#7jrYnDF#Ci3mz)ANxsX3tG*R573Dizx=K2-PYpcybKC`9G`^ziOXj2Qr z>Y5$AbLwIPmW8Va@0C&)SN^*+!N9li7a-|!nx238!WDP0A_W~nYF$14 z&%qWBoeyXk%nXa@nzxeX!C`k2-jnnD>VgC^e9qMg+~x3!2n|9X%;8qRj+DqAPjsID6gX@xr$*$ zAP|k}fpk^ChsvB;oy-2xRi_(NC*$mt!^OPU{LF;PW5M}{F|29LkJ_+7^1OCB-_*c5 zQU$j(JaF^^gMt8x5osYKb8P;Y`&UnP?7;SK zg6Wwj3u&j)_G0PTH>hcUo35@)ucH(f`f)?U)5o|hjFbGvnEr6pc<7{*1EFNQqP!89Ca`&lV zlz5Pcad8&=FNq^>1JYZ1i3F?>v}7)FcqHF0pXky!F?CBMIus_-RG1s222@8CPcw{H z98+|}mJfN$yI>Z*ToZ7J@Z3o4cKCz!OQ*F}v>L{5UswXZj%p{`jPQ1`uj06_W8#@N z$&?V@5(B)8vYM@XG5{GynF4qA>FS8&@@w17OG>>I{y_64LEw{5@~l7Edrp30?R+e! zE7kZ+VC^)qo5BS85piI1Z%Nq`&J8bj!nrA>CB8`$ff9cf!HG-a3-f7oTJHmdst%48 z>f5t>v8WACSYJ;Kp?}t$l z(1PYLywK(*ZIXFZ#bs=V1i{?j>REu!0Yl(MpC7;aU*u$;|95qC1i{wxt+>e!;u?U1DjJ+nIv63vTm>pDv;NEW^&EHD|OC5>KS zBUU^sl@P1f38KwS?T?_YBAm6erOlKXL9zoA)y*@5wWoWa*LAL<@9B7Eb$Nr);LCrE zHig&s5)|tbFkFCW%4`G(nxr?1j42Ax>(El~i#28Un^ze(Eq4Pm@$v2vG0{}X><02b z65$I)34g%%<|8+xvC2*O{o(jYlkiV9)ROzf8lS?j;4CW)lX78i z^!E59Nb3diom)L;w%)(bp*MuA;Vki-vJ5qJci zukN1EIV|SGo3FXqUk4P|acq-(qtQ0G&z{w?nP;9HRO~W%6_snsamjj|)!^+zBuG-lfaK(Zw6RGUlM|@UNod%? ziJC#ewg3EO;+y#Lm;K%GFPG=n|Bw4-emNMg^L@Yq{({f?7nK9}1t{PzAFkIIxT1+2Ol0W#h_@_U%L{z+K(2&pBu70OzF@Yl4v*VHZQMS^&p*%cAN1O4naNhat zDJOO7XRQ-V<+?k62iV~{Yb*pRqWxk)N~L&0sF~bTxs!Iv%-ML2>L(~bTfRv96e;k^ z!EB!^NCvj@#yIKevfFp&>_wchmu;Ubq^BiZd;8=dl4biqx6f{pe?n;{MY^CM zHxA#87JB_>1o8S$122R;;f&Gbl(trp%|(@jorTvI_9B zV=wS`u42|`1TiUuH^b$M%O3`nqedj3HE-mUK@<3a!p6Yh2%ub2CcB+baCd`4fwDN!CndpD=lE=PVfrOWt-&WT%5nl%iotXxFZ5WXGm5 zxF3zOfhZ_Sgnf#NiE}K@N!|5FNoi6xI(f78Jch}#bSR;RK!5nS5iyH&pVbhH{$60c zCLFri1Y6nggcN2VFXbd*PC z!HLQTg6fURigK9qRgJ$?Lzny|@bmezAdGz&bsh~y-Wk7Fr3%N23i29~v$< zvOrYvf?8{TsmtrB+bM zxy7INXAhrxTK_zG^ErEt+}h@ju>vSn@@yek4QXRwb=GW^yiy$#r`{9}BmNtxz3@*s zKfN?>|IElDwafr1!9JLE4{RB{UrU@SA^``f@axIyu?UofH!SIEO3CSzMh#xplZ|^r z@fib#tNeBO$;t`n%2Ou0rf?(Ab_3TrDS zrUD8FB=g7RiL^$CV($*8)8B=~9uh!#O+w}+-l_(+c$!jT4+p(qV(`NAcQbM&AoVAQ zlhGXW4n*jDPoUr#sNiAaFo0(zvECma10}Cte<&n0U$b%0u*k2rNw58`14u6OasS4h zv-X|SeC;4#dzG&Zaoe>|TEgu0FYAqG*};763o5C)-95MQWuxyF+M%{e=N5-i>&f5> zPaME;Y#WSk^x9+>nX$o3*GElvx}^TO`%KXc_D0jg_c(Xov#nba-=kyf=FZXoemC5k zv6Wvy;TE!bcyS>B!F0i%FO6Tdzm)!5HM$b-k(}~m2XS*C6j+6A6WAi0d8DGgzTVfK z>@dz2UK%v@6gao)O7gM}$BcLNAA4lmGJGZZp#J-5@$fayzTcY+-=UYxo(vk48E23n zK3Pj{JQXy?#y+d%6!Z>bsUZ}t4=vH1C`;7c2c_qK{uC;bWjMOdPH*tRA^y2P zD888)QK3IIGlWmppRT$`nt8#;^@yP9gDrVy*)OsD5#QaidNr;_W z)U!-z9#qj=j)jiN^8hO|f4Z&y%*#J7o-+T8W5JOBDdNXIRtnnI zf+VQ7K4t0AEl6NP$sh-{!e{17(_hN4ef)5R)|<^R6e#VWC18Ikwz+H03{6E26Ii=U zvvcmL7zA-n^U)`~=IqSuLB|*0{T2&{h(JY_F#~0;f;b*x{gF12*7O1r8~zwkTvT}B z!4vEl1}iOai(39bQ>^LtQSLO4b(e!_eL%VJjJXYvGtrN{19GNt(eE>2`#_+_??&_2 zqw$1|k21F8=dlvCjnj>URV80ArO16Nuj!#V1! zr3P{tpy-EEdf;-?CL4)6YjT|dDV^c%$iNMl#+S}(Y;mK3m1$gM@yOD@+kc5o2Gmpq zdK)*#LO-L6zzAABYF-+vIG)rOHYth@^~+qcJLr~V!9inYv>ff?9#9a}fUFg9T2_B5 zswzLAEqyoTJoCA9(wfg5oyPfu+rm<7yel9c}btKH;%6LB<+c~K< z)R@yolnhGKq+81J;#vS5(B6V;KfoVAN-US05j97w^ z)G!LIYUPAt8`a9`Kth>)&d%8pK&&!-!O^HwZ}RmD7OklVI2mt_VRcG=YzQY zbnodA1&=X+D%ONk_chaf+8>!hEQr1z>#%E1Bn#8H#|Rw(OUpg*XlyBk`LVsmF7hvs z)3tM5ST!fPRGg%X;R;0ed&5~Jn6^Ysr6P62plB(c)*Q`A`>I@2CEYC5ezPp((ycmI z$b{1^c7W_qL$6}T8`Z&RyQZ8O?4{>|4pgdqVayk> zBy_VYHTNM--DNN>kmh*+m z5H+dZ%FEvZ9P7I@*@V3pu;zJL;r!d^Vl`0b{Vk<7_Ov0r@gAyV-?8=~*LYLVaoKh<{^NYzQ37U606!1oD~t%!U|Q!_e`JH zpuajFpS?jNNKNWoLz=7?YZ4db&1n)i-h#A{A5V#O1DuheY2L*u$~M^4VYE-7w)d1N zeJVE0BoVA#DJAYyT{RXr9m}_-vr;5VG+;I~CF=h=S9Ev&FO-`qm3TM`v@I5!2<~$L zk?b@jd?B!9WnwFnL4dDoLBvVEO(zrHA#Uj98xEuod5>kWqHHwjPss(h8ki)NBBzn0 z5)^BFNzECTP*W^uMdTEe%$m_Gc_mhZ_5Xm0vD)rJW$y^HJNRTIy@ohK#di> z=-Fu9BAx=!*aDMp+4K@ie{C3YIi_^8bzfhi0mw2Mr$_4LU@cK;#Xy01O+F;4!^c^m zibp%rPOCNOh;0$@UG3*v%a3?#fm_BC}1bu zKJ!G;@kqX#YF~C|LN3{fG@{h5Oo7%w2G+SOM(=KJfJJY-*5bTB>1;xwB~>j(x0+|o zRNMV|!LQZ>INNT;-h#}00@J3nk7gK?iwMmMSg2?4Kg(3HPGMoYmN^YY4|NIy6VYPq zMIoH#1{%XeLB`180Cr5y2F){xi?r}7{zN~*oUVlV0;keFbn@XDUos%xYAPtnXk6}3 zjAW-k-h#NIOr#Ra>cE?Al5{@_6ffA3{}sY=!vad19A?FEECdF3sXzk_;6AKOyvg&F zxjZ$irY#G$Yf`rw(Ef?AQo7nVY07{X+fCa{V<-8k#z-J#qN z{kyje|Ng0{cWYVa{S=39W6oO=)toO$3GEEwKt z1dIDkf=(L_AA5dTqM$K(gg^f0(ZHF|X~*zAjCyrYM^Xo*2s~rG3n$_jkUr3$HC9&_ zSW@@b#B2-^(OMm`->l41dj#{QQkcG{C0);SEwwY(7rV2z&?+lM)RnlB+V)%h3o-uk z*L%4sM$NReZ@x)K&+35m1BWjwcS`D_?D8zTz)rAaP(5!b6^%)S+-65!@n&UaHsG#6 zUuk$gKAfH4*dF~xiljLq)ZN##J=T7IcZc`%Ok{C<8efr^YH|Cd-rE=KdnJD#|HA2&Y+m+~|C`EN2TdnD%Y&^oz zS33Q=eeFDLokiU=KEC6o4R+7lc0&8MR@!;gh91?vYk6~b_xKU+GDS5)5?Kt?iwl28 zU$zBdyLdZ$)v%zragZkmBgJK<7A2)Ht*;lRhunp!{+A3FL$#*+D%HUx4Xrz!%cT!@ zLR<*5*8NNF^O>y7?vhwXNi%ZFK$G_XQW18;bDpog&`z?475epp#LgYLbE0qTvnb!_a5Ck`1^OT*oRxtceOzP3U#MvU+cy>SUQ0P2Scj5|spaYUN1Oc~ zY=2*#c@v=FKt@{yt#G^e4D#pP2hA-av9_%?rIY!Y|D}&syKOggvMu%2tU)?g_XvPd zxjYrruB6Mt@)?x(ao*|o2|klTB>O(RbnpwG#mC(c_aAGq&AGg&#pQk$_0m%mX9&> z-SV(G8JOZ|A?G5WI9jpWu_B%w464+%)&Yst#`YYjT(YBz-;ZRr9y%yHr=@o3x!6PilE-KC|kA9h&Zk#~1b2Y2B5RG@TpQ zZ4lb$iYxmZ{U-;)ZgZ=Dp4P3!phVp7LW&!foQn2!YvuQvxj$R4*19OCv1Zov=D@_s z^5eE|$C1|lEL_qHzt4+Rnb-4;RWSd-R!$yos?_;cBfEC~&UkHsANN>{AnEeaF@+x< z{}rbyqk=u>3ffWyfp>VkyC@P6ok~a%*num1>B+M$b21f^(Tr%f-HgkO=!Rw90yqyv zhI0mkXQQzHvJ<1yq^r%7osdY5^X9f&%Ui`F7YY4V@Y+uKQ#ja^XC^GOfU)e?{L2Kq zWVCQbagdGn;_2Ra!KNOh2S?^+ZEGyUbhHk&*IwnCPn=Dg*9ER?ImM!!JOU_F4vPjX zpX_{Z4#_WiJlB7-$rA$0!ia}AH&33BioM_AD5CAK!OmPNInWKM_;$J%$Ho!)nkYq+ zuuyE5&nn*)01o{S?8+$en!tcwgvcY;sw!`gYL(o*7!-_!%q@e&OJihUh_ESDVjXQC zx#NwDASaXK@nOh?8tAbX)u3OJiTGniuF#u%p6=*;Ijby=8^76HeQtRa&-QLu19C#+ z%Qn~5iDh=r=0oGp1@|Iw^(mRTgi+~({;ss}`P#+8CIs(i2z*M3sFfOS9UKBqaBw>1 z)^T_?K3f}&&JC*~HKTop*BOn0RJ7;tydO9Jpu0!@$g1Oi34%@uPL_Zhw12ZHpz@wg zzBv$oty}(zXmagw{Y%Z2dGo=GyXN{g-xVycLFc9Y3pHQi=o7uiGW{c~B(bVvj#pxe zdX?pB+OesycFt4<0q3S*5&Q&Ou{^vnJp2v_AZGv3=@H+GrAaAwg;}IDI24V~xD=FB zkxK$?*B7L|y*aaN@J_E_wvCCVoPjU+B>Vg`lk@&#_I&x-7Tu+i$4ffioGmShJW^u5 z{8x6IFn%7$5pt`7qw~W=g7GW$Bha6bK)iy}dp&d}#@5p1l9~7k#%4AYW|Ebt^*qg5 z8}4W@a6P5kTmUDIkJ3FV1&BGK=8`AX9g;!$iaTgFucwLk5{v#8Dg-^6rXJQ!h%ahLE@vQM1yy9m2z*gfxkgy7U4g>mM z6qn`SSJG{2zv`%e;_rY^xr?wEQG*Z8fh~V4Ly7t7?bFrS0L5OHA+Y=ImGlwF=cP*s zjr`NX3x71@Vyl=Q&h~h7PW5GqB%WS>#k182Xs}IxB=>fuSwB64pSmGqwx?x2k-q*2 zaQy8A76{%h*+RPk(-Hnw5c9nRxZ0(>%Jg_VC#k#f!O0iyB}0O@fGZC2LnDj)J@;D_ z+5&_TiE;Ba8?i)>?hXSN9lLBsn4Iis;nQ&1o~z@^WQ>(!c?K=nd+gU!#6g*fd5X*3 zFK zDkCl!28WSWP=lT56vw#Zi0o_ygkuL_o3(=wZg1?K!EA0{1w zBdgF4Xhh{DpDL<4Rx0A-dwn&#@yx2?;Xr3DorwfdFb_%W#7CCvOt3TYhN$KOpT0HZ_PnvS?-q$Tf1l(Y>+Y0 zba5<+Z(XTmy$0gfkB=0LV+@#`+$ixg<=SoxFC%Ovgm%2c7=m*06hJ zJl7Yi3v8eDhA}ipP37v&2O9no-6-^u&Dp9esIn`gD|unTAHJUCoLh+waWpwqI@G1j zyIr-islh-^g*@ub5vTT*d)}-N!Tc?f;w&?=$gho*OFlOa0-h}XMkR%hfWqNJ&X?ro zly{yp>x14i+_}D|`!|fquwiX&?d!<4WwPJi(BH!~wf<^l>#qiO9>SR;jT%qq{@tNk z8Ci>?_1>#!f4|UG`}V~BEizhICV73c+r@{hp5ESV4r%I7SJw#ibs#)Nhrr<|J3J=m zYq|elc5X$Z(!97P8Eq{tu2zW-CB{XS9X?#;hL+%Ii_35U@)xKc@V9cWC~m`=4G1F}@nHN@m>|;J>0UsJ~n; z#`k2j4H)Y*Zch%n=p!s1H5v-p*?9|yZR zk;PO7`{b03i%*B@d-`zeI!crsO6xJCNJ8D$z{NwLs$xzCiRjO^f>;FAq)4M`!7_c&H$^?u7qi>J;X4xKnhb>f8$m#10K2;FEjc;` ziy`pTZG3ty-@LY+8l$&`svk}u;@doC&RPEa4ia9U$@M;k*X0?N8QGsCK3NS6pqmXQ zEgf&(da_29aNZwxET_4OHa)m;(0&zN7n`EbpE-2ip0<+AHy3p63-w)_rjN~&moAWk zn@C%#ury!7F>c=={brozcm#7J$Y6z%+t;Hw8{W-WdhL^%-DQC#8*Gapv)--;eb=JT zx|-i5#=U z=pu_AaW2(nJlIT4rpZJ=ow!EYbA0}Nqxrgl7?YyIhG>0{^wjjZYSOH8YluUNFv2;N zvc9Fe8>}qz0~=ywMOUj=?Fh%j{%}=##r-S^W!z_T@C-*N&1L)G0&Ak zC1PlN+xiu(z@N*tP0$8baT2M{=f}D(LL-{zUzCT80p7%%appa)2bSkTUUh-8)FynxBkv`4~X27{H-JUR>r~`?)q(z#l=_~=@6VL2-2`*-eBJxieTLBY) zDS17TWk!TC%V#AEBKhSF(d>SAKK07Wlb#tMR{Q>Sc$KD!Fqol%4=&p!o36;K@zZi1 zILL?6A&PKTXkzEQ0K6|>`9CPSax%&|3HznwNq?Kz|3@{OLlG)(R>BgW-3*um>dA|8YaM%_ zA~EUNDtQ<(XuJ-}-8{FpsfLiIohxwO>~)wfmKX*SM4flIa_n$jQD`BMa?angm3tCpH^}#@;Q-5q6%NP4Y|FfLfbjK(i_Y{JE#9mKD3s~UzDqPbJr#tD0 z@Efv*oi+3B$apgrxcIBQnYG}PS?N|*gpgM2jr6m2MoA&~)<*)+byza_Ku|6XaIj?> zg7?hsYj~ijE~Zv2PPM#Rw&X<#y*4>vSDHm&-p0U>s!fwWk*$J3LBH+?saL2u${?`f ztVKB<>87zESVfTFtUiZht5Pt*dag|*3DTTG_LTq9s*@+_R5^N9n=o~Z_u1skYQzP= z4@zC=sxhbn9>&V?(hdo#*gA;i^h7!Ea4}mE2$2se$vk0CCEvi=r0yByN6!RaW$q`o zk&I84zE_&~x64fwN31-y;TFrY`;il6YtNBYQ4u+i ztAZ9=!A?RDT*}R=OmfTs^CC3WCnF)0dvmXZGh-!vVzspHLQfmH-fKrm_pEsyH=Q_9 ziaIL<(b-w=zq;Sizl`LST%TGFHh$fKDPAfh!4rClx{&rn^Q5teiVcPOeIh7;#aBsh z7hucuQ}>b{gLzzYuHoh6D@vF$^VN7W0f^IkOc{{}fEh0*uhfcETqYJ9lf?*_2}4kS zXsg3U`U^ZLf*ou{jaV{>oYTIbN95DydH$p4-Ssjo#hyA5xnxnq1-iN?{%~1lVB?T; zY9akpV7e<6aA}+YnQnD&qaCj60l+{sPM34@JTQsdtUl`cq7?VApDW_X@s)^0TQ4 zWpbq)C(EWYoAZstjR>s}RaiTZ!uuz8`+`L_JeJvBRvUR=^>;bGc|>IY~iptzCzV{S^ImkGI$VG3`~dXe1Re;wCqq= zEGSB`z>!ED4iV-SD~Y+FNS?(ptCT;OI*z<76|guwu(*RXN?$Ig{Kl_pspEA~fE8%)K*X;y;+J z?9-0P9OhRUN0L^#G~+5cw11j0A#W4F$;!U-d_3m6Mk|;9$r2jL>A7CpVHBM#x!kk#-sg{`SB!s z&F%nrcse|IJDmSIoE|CudwfK&Sj97h?IjwQ_G$V;?hxU0Eqwa_v-j@7k!AON-<|1c zaCZ4vlG4huBub=7ic4AKpt}JKMy6x~n8r+FFarpUSuQuOwDD+QdKWLE0SvH3F6CMJ zQF7%US>;sakE9eo%68<~vf@NuGPV;dE>}50QYh3x#ynqJHN;G`}?`Ul8FpwxkxUD0vb7SGEm<_lX`OKbVTwl ztNg{f6~fRemCG()ULt_6h7J!6dQ?ISe3>+DNZD4+(=?St{g7OfbKVk-nH7OAmu!lJ zw4{%zW6_x$kUU<$!8oT%Bw`6oOm$N@lG_vvwlQOPox6n>iBpAsOe&hT!=iG=1t)K1$D~tryIU^Y0m$y?Ntj^n(U&8gRPl zfsHBG*E4F3uNhbQ2yEj$0N;nUNfxt=ii!YZtJc8CzzJy?NF@Tum8Qt*^Dp~o>Zu^5kVpKo9&DO0+%MxI_|bZ zOML%9ZcUhCZr|GDQHC=wZliAcVvJv^L*{eP9*IJMkw+aVhNz8EMTAtPi}_Cz*iA); zn=#HUK>c5m0PvxnBkk4F+}tl)-|j06hJ(|ZC*$A@v~q!V#`Ob1Wa7~xTM zGa%t*A7}7JJyQ4D_zs?&OuuCL`9}O~BkoSWbou#=lT~{DdaR@(_E6~+ffF>M;72&y zNUMG1$C_O!KbOJ;8yEnso-(`owNZxky1A)KSw+`J)%2*>MxL1%MMP>qM6#J|@WFIz zw=k&WG5V#;g+v9PrY07b?%l#Ktx6ay|d1MAqup9c6*;#8MfZ6S*isBPAy}@Bq`@6KpIzF_g%Gm6G=zF zPY-;OCYa#t%-)$os>w1=GsTA#<}hISo+UR)yj0cQ*1h}fj{O@pT|9p#&jE~yBfx%{ zm7(xBMv-Tu*XXZ@tKF~Fm<5f=eE%8m43YlGqs zB0_{C&V+$r;q@YHH!b16Fc%qRkKQV@y~d^_vsW@Bdp3z%1}@UWF;`XMB?L;!=`q87 zq|5;-ShGFZX-+81EsULMlZ0}%D$4EY_w(eP{A1WcM^bSDGkU9sl1*qz`u-qc<-+AK zYBkgNfN8*HXl@XvwfIU$wO#cQG(fpNKGjg5i&|lfSoI`7 zl6u@?D4NaojgH3pJ?MFD%9z;(aNgUu!8W$h;BY_HTa+|D^c|nB;el_Ov4--Tp$#Cf z&KFW;j}de7>7Ea*NP0q;=GxDtF@h*KF!2Lg1}Hi5L8<7`fV&%$lQ(2FvXS%ER6&Ep zVrBI?NFG*Luus*!xq9p7Uel~(8Z#GA&{v~InscThC!*q;Ik6MxJLU`u+&dA9BmLO6 zlY9_Q$4)_hnw!PpzIu}!*{BiDt#@&X;wCTCG6m4+Y!ZUhy|o;pD0bXlCOXaYWFM=n zL^_t6%~#YvWA7YO+&lhmVN=VF=b@2!JWYSBE1kWwL4f>hn3gkpe;!~PZbI`xXM~*O z-VE_`A{S<6I%TV9JmlHmco4j-8G)sE)GiDq!VI$wDjpt) z`BbPr;3}(`xa9Xio3Pxk=tuK706I6D%d59Li!)yWFAlGm8X#>mfD=IeueUMzK_$0S zP+|b(uXGvrRU;lRs&skM4yZzzI&7)tn=;6ec@1bnS(g*I9or(E%*x}Vs$sq$7ME_d z=9ZQ_?dB>EH-^;GL2NMrc-0b3-pO7;#{&O5x3hFin$Zx21|he08hYnyTlx@AtVRr6 zkvU^GH64%dlZ$KTRL_B)M%-bW{g=l_RZapjA(PTd>y-|@0PZhm^j*XHGhDbzUbZ~A z^{rTUqp?+>pwzcg2Fi@lE#Ra8fht_nYQRh})`efvR;HO|gd%!c=_Wz5nrTWv7uV4_ zkIo$68BmcvkV1CALp7pEu&WIQSE#iSoFBX3hlK32C5QamO%a31t(E58=FKk!?aTb^ zd}asP9RR#lLQnZ$&F!1qxxEt5iGs45yjoNr6K>jN7-awV<6b3Q6Q<*=fuP2cAX~tlk@B%%Z0uWB9JaP zc!n(iz=bxST0LL+Bez#!v(=~QcW}{5n^xUaVv*px52m1mZ@Kg79lv1>^*d1YD~Sx&naif=PQmLI;nYnLngSj4ntr z-V{$3V?Fx(e2ioZBTd0pn|Z}>?1h|9{66r!G{926p;&{xuEovd3g z!f|%S&y{jRF2kXj~? zXp*+fAjcHh`q!E3I)C$q{+*vHy~={Aj>8O7QL(dtp^$flKlt9-noxvuzC>lCwoL|` z!&O%{p=4t^*}*M=7zp6blyLIwmc4783Y**VHh25O-WzZ1be}DBPA_TEuK2}bAkd>; zvKs~}e@rMWP!#@nQ_T0q#f4Q{BLlW^-8_ih?bmCP@S?hC`;xN^a4npzK{Tm^06U$^ zRk@`UBk5^q(Q-2L^#YM6C6PMF+N4&5bqVQb1=0)8WF`Ot52;>+tczV$%T|3P^C(kZ zWEa#A{Qr7qxjoTQ4PSSP%0tIOw?dItLv}mS{mS68O|}P!9U;{>E-H38Z7OkqQ~H~c zj#mjHX=A1M!m2yxOqE1WRB4@K%(x(xgh7vk7u3Q87&aJaX-` zUe?YqUweS9lKW_0(W>P9uwFd$ERAmX_CwUA!G8Id82U_um!T)ekCM|=Ck8LmM~4SP z?vw5HH7t~7dxp}c_?ba z*et0NC!@MtycLvPbZFDD)8$U@lqW3B$cRKMvQiK)DVP^jlSIuZEx{BLpOd6MOl>Mj zG~>eB6fuXsePZM+0yd|tOXDW@hqBQuPAIXmkGh*AW>dSMJ%$5=6%i^{B(#ELJ{N_`y9NWZ_2 zN-g#X?~BIFwm1MA>@g{NUggUWbWYXT0#z)(sF@9hytB!tG&JXW6lL=k=&9a2^d2drZ!|s45wTC`GTzS#b^?97?`!dEBD_ z@aVE38seHJGT9qJtjXyNIfv}fmk`q+RZ#Wi@JfPl#N+J-5MO=(PzvNEV9DL<>J>^B zYZFpxG6IX0As9jHsVi{qLP@g+g##5^vxX4*K!)`MPlDjNGF@0QMpwlMWEEo2OS1`C zu!df&My6H5b&f8nO~|Wn`Lc|U%1{nvvM}$j`>;dl3%}RhzXffwKIuxby+zQ>gCpK1 z>xpUXoOM)|EV&-@gY?IFc!}^!=hY$!3ptMz$nU)!q7({Flp z6^|K6*`2!pjAQS}QZsKVBUbU+qX!Vv))59EK-oV4_6x~A#I6}e5N4Cl^6Z18bl4s* zuXRv1z0BNXCMLVbY@zm~VG+{M@TqXR+~|1G*u@UksLo_F$w53Zw(tbCCoa%xEQpYW zTGCnyBbid_{>WZj?Dk<2kzff~CxH4&@aL#6nZ96klPTvX5}+GEO6R0H0R#!fAB(K- z4DaG_8v4z)Y~tL~fVf-Nfis>WGhk|Mwb z!!Pk~Jn{2R_Irw;<9oLGl&1~WYo#Ws+Gy0%(GV=sYC4FwSyWK?3)}MXBcMW$ zFpKQVK`PdI$UUzFm3i@p+u%+HSCb(CH%Ju{6>YajnE)F*BYTx{ft+|Q!Q-5qRJ0#+Ri8?Qk)r01p2-Ut2b_i6fX~x6hQ7MV$M)19(_$I-JKZIyxVHaQr1kmE;REF3I7U|U(;90tL~sm zOPd}ZhYPV^iXVr|+QFhUJxfyn?* z*KSO+xZpMWjH?(YpG~Le!qiVD&G1{+25B%;OsS_RbTXltH?T?V>~GgE@Wct$(kY-< z1-|kH8ghV;Lc;-=RGhU#??EEjkipXkJuPMbdxD1~=8nCun52t9$;6xc$CxDGS}*ci zICHw}%o|9^3%^=2iW!v9nD`flS3`z{WJsECL?aH4!*)73dI;^(MqG~;894vq#&jU~ zDE0rkr7SWfBbc|gMGBGdm{zElC~=i~x1DNK6D0J){jS$eCdS7liDNcIqmQ5ei$xK=#OZ$Y_NFhs7V1na8MSjXAwG8=03sP6RF~#%ehaOp* zw%4!@b^J91);}SjrpQ=GE~zjDAI`!MNO;f4k-n(VgER5Vsy6u+G~Zlcp2kK z^brQ|hNu-`!bHJV^s$xR+(72*AvG+q?6yLx!u8&Idk&w8k3>`ujR!CFnO%u*!&a%C zJbkmUy@!3r_sZb{Hl~AOBOjh2rZ$X`6+>>k)Zp$q&Md+^6~n-;7ThqBlR`Yrf!8Q$ z;kp4Ti_HX6w^jP}4Y%+9o1bDh;MEjw|jbx%MdQHbu}Yt1jM+=X={ z&e7eao1Gc9*jx9cR;KKurRCMu-PWsIaxZD$URv>6wV+T1B(N+SOb8I<4ZS>VG26CqsB(C&cdyBKFwRl|P zOq3WQ)P6zMDnq7S#;rBy>u8uVTh=rGh#;*?SV8TM z6g#fT8&eY+b}K_;%rN9qdcdI|psoXZ%jz%2KVR>{rX#+}svdakGlFW9D+M&vsOCrG)Mv=xNh;d8>!h5K zLP0k_ohL>Ov{A3;IWgJCAGi!%Y-lnJULy8&Va5(#aHFJ>(ZDtJ@j|hq9EoO8{y-cY znq#zM%<0lNNR70j~RjD#mY7l}0xQgo5om z>BSF-FE*_JQH%o+^#sD590RxMY$=3C%y?Itrv=P%7sfIXgU2Z!fJ29O#XZ37m}YPx zPm@g&+-qrj<(*x)85H)md(lZGeuAZXV!V|tV>^<8WCu7ar;oN`Am8ti8kC7z^F`1# zG{)`ZetYItvoo{0beAn=Zt1>?Wp=-A*7BrR88(oKM z5jfdD5=a1lp?Vgq%jPS~GaeabUut%mFV8IASKfq}&OQAW+$RJqyAeqe993=Uc{^w{ z)Z(N?uVX_rOynHiL(WJH8EG%sO`$xWxr+rd3rdbvUG`$g9F!Kpp4T^+)EsKWs)R;H zjH!8X8|UL}G^bpzYOZXopflvoS#g`62!(HqK62QVPx1@4yM0`qL(W2*%2QqV1Blol z(W2Oarvm!d8vO?h6sjhrqQJOFO?&rb7IoBX&b%iq5X#SQ2KJ5EEM>$UqJ&Ko7Vnmb zgD5j%MxOBDqmq5oL&2$DVAs^%uP$5hEW1!R%*!^Uu24f zQO@=_q2Pv}gltDji$o+gC?Y3YVRbW;4ENkg;fGIaGEN%Av}AR(j^;rPfVHNV=^=JjEE?ifXEM*IGfHC9>UKj6oRdaZF3%217JCB8;(kRBCCS2-3WHt2w_ob4#6b z7Ra7COdSwp-T}_AW-a3sdUjf?1^FuCUQEP?8fjHs2xHaDOQ_@((Wv9DY??E9Y=cuT&Z^<7?jS^-&O%O9iu(%}0^x&FDD>2+PnRZ0q3&P=6iaN1Zfb z+g+k?szczgL%}7)KzPvr5LRj%b<}4*jS= z1%WDhi(PEE`iQt7B@B_;6daA&+SCl1R2hRKGC$gLGmE6l&le(5jg(=sh~F?%a%Lvd zNQS#HGrdyAUs-I_XVh(g_k|~Oe7N+Al~I{G<^KxTriUko`#S&1YE2bcW)j1$w-mzw zUKNJbtC57EP97qGku|pcK{9hj5F&+Ok;p`z95Ahv66y(Q?;AuNYA4545};*Z^Ken_ zI>#XmOL?VM_Al~F+GL4Xw{`MEV(+_}sn%295=Bai^pe&+EkWiEDhP?|fb-as?bd#B zulvy6+0_Pr|2ZX}#MGjG1&{qAJlOUbc`RY`&SmlN6}AqpxrvO^I+$}PCKQF&yDe#> zw{1zRbo-W{T23LWw`cPhx(U7MezCWC^nf}hZSTu68$0WOlVLDsZ+!nbl|Q!fDR;O;2E5dj+- zgC+iLa5rU4S|@%kIFr16arUGdW8b(U@t)u*SiL#_N{XG5^%j8{n&FxzDIdj?U@2Tl zl^an2I+5L$NCuIe$;RL=F=L|hJA5{|(f!)?gWlFr(q^_FbyrMcd2Jf^`X&CyoFXPk zR=1>|yedIAkG2oB&M-+ciOLj-r(^by`d8aD)Ba`SY9*c3y`AMy1qiN-J&KF6P-q+# zsjEhf13WO~Z%t2z4jWs}4|8iv~wM^(m1C%rQBrNEjzWFzb;P=*y` zNv9bFi4R{m87qUs%t}jjxOZY7FgwTQSFdqF^Q=3_@)$go<9X=R1b5|FAVqqJ%@%z} z#;s5RCVO&$4gy&OE2eOWKWg>iLsLni#>@N)h0Hpt-BLV$v-xt1dM-{c9Z}?^y?S$^ zp>$k>KE?COxQxrCiVA~dFP2x4N~xyuPE)X=o;o1p#5WVCPqc~ej^M=-7^JZf1Ld42 z=82J~;T|^R6|>BR%=Hu<6TPJIz5(E1mPWG}>bY2B28h%nafuEjXyUEw3L1xA8*)A1 zp=$N~s|?>NL)u)u?3MVKWHIB#2Y0b;*v_ax%3L?CHm$S*`NR$|iX^@Wf5_&yzYc4m zcnky;-Am3oi7fja;codtwOs3UQ`d$Z{(MV-dm{k`Ja32CDnInE#eezzl)VoRH?^c> za3sf6p4=6c#n>p*`nO?hl&PA2pSq!cuUqky>o;U8GY;}EWTjg;f5XbW+#GqnX{B45 zUN&V``aF(Z938?n(3qT}DF_f{5~^GnZaOC$RDQz4jRQAzcl%a!#kM5n+IR194oEiX z@wWojEW|TT$!k54Y&2@mj=xeumPui>15id`wDUj%hw@<^5lAm1z-TTE*#N>)jIaSb zt{ky{4A{fOH4ye+6AdffZD1tQg!)IJM4N0Hxk!8yi~Nds)JQ6cNFwfD4T&xm>mi{y z!dA#spYx$!A7aE5Ox_5M1`8yuX`y%w9u0F9dqM-LZt_;k&+8>;>|QtX(*TWyWbUN= zu(aTcE0%7M#U*GunJYN{&QkV5F7lja)>0R9r<^(_kzpWsPwF9TpKZvBh}Nd)V@P|) z6n)SG^qkpeqZegru;zIz(h9meBH8H?9y%@Ijs)_D6)kX%he!fZkHVpw(nX?5Ep3)@ zQxMtgENVkXHCzrmBoQm0U3YW^6qqqa>eZSzI`AM*VHjgydWF9fYHTnXN-vVCK0t#| z^YIO%{a$iOT5y3-3!Z|(D^^=_BU+xKl2fsLP3ow1Ha3U5LM!o7*N6w&lEP~qK~tUw zJE5~VPJx^~GD9TbLaSwWgecL-=Q;E}r&^cvDRx@g`R4x7PyrP6EMDXDq%%vg%xV5N z*d=Q{UaJ@}6H4@z!Rw&FxSHN4K1~>ApjVo=IUqpU=`e+JBc|yJK+njiUU213ZBiSj z2X<}sq{6^3T*xbu@yLhdNjf{4^l@$MZR{LlLZqlAFB0euZnY{%(b_hfGO%7JxjB;~ zu81hOv_o6o+Hwt@ zJLh`qvVZv@;WOekb(s$v`sF=x+GrsA?XyX<2Q2os9~`wUE$VU%$igpm9yLNWivu<$ zA|`^{qQRECM>|PVV0*zPV#}ts4_ssc3tc@bS~D$;HJZ$2aP49Jbp+9cfs@B92f7Oy zV-AHUjRgk_k#Hplvdv99`q9IEx>5IjAa@TA$DNcLQ2g2))Q|cU3z{M+Mw^ZRxS(d% zCT(KkLP4t*bBd?uwRvE9$`>Uy(l8tkdYjM|A}qth7u0v{?LlS^k2TaG!{g&DmSU=o zMJ?S%M@m+Z!Bb8c%|pOZN6ln#&w*nuNTp!hUGvLkzVeAqS~p$athL#k>L7tA=>0}y zcVwkVr1dzvBV~MSv1(DkO(D8IKnJN!Nh8GabN2Z#vU~L2>~>Cfh*ECYNZ#Ro9~o4Q8b4DN0~k~@HD_Xq!Fg*h|*0MNyx2p z(`5L1WoCRd!19T0b5r>ux1tXj=_@xuY#LvXV_GbGm$<6hdUPND9fe0|9G- zN0GvRaxZS4K|hv_BXvMXtpe>M36QN_iqzN@vHZZ$IA4H~VSp*!I85lK_26L1LQ7@)u>;7TNf|@YyFlKtN#_oN8J_9%b$z zPUOB}-*+7Gg$kOK@CUS%r`>cA#|!Q_rs;7P+PoNOY}paT@0+%NGn4A(lagnucu9;E zXW&RP4vK4KItEcZWTagT+{m$cqta#SwN7%t`3b5ZZJDY=E56g?~Va9eaXr z85=>c>b?D*rdjA#BkbM&sfy(vT>9Jf2}8YctgJ>IL%tv50h6!7Wktwoz(a=0U8L$K zUGDeRA#dy{5rM@5HG?8Afc3b^L~DCDwP;!PIJahJnm9{GfW$>K$?Y=*+21D_&y2JcC}o_t#1!DcU@5!+~t zA42$osMUjGs@iWglKrhMsg@>h$@+J6mMV?zJWTybg~AQ&N*;16KOKSunrp6*S`HuE zx(%0zBIOXj!W!$luP-Mr;}YgW5DOp`Zdjgq!n^ovaxDs0=|)N!FWy?9_KylXxQd*4 zCG6$--ZWe1$ z7~>-ixW(fR?KlX6aTv>7t1Da(G1PxHB?PD{q#5V=tO~*1oZFE(&(?fTFM9K2#W#i_5TqNQdPmz1J_M`ge#$MT39MxCgQlUSwn8FgZ1r6oi82gS zXBG+T*OF+|QX0+&?z}{eJY`2crNvXtLrJ#8@jMtaVr6Sn`FJYJK1Q7+wr`qO$ z)JY-D?tjDEDh#vYKC%%Ch-UnIgxj83;!u0mH6E_G(B_&5*vdk)6)Nt1K7>!0d^bUW z-)b)1ZLY3-DS)2!nM}YF_R_K>>=hJ2+eFyxY$wqcDDQoTJ)7|{7!TzEAc}N|XcN6u zI9{XHP4n&t#I&&0AODe`NEjxf+%nZN?_(KM*b?IB0NGwHp`L-ODHi}?_&q@`Pg~lIaFnmwddhJHO)qH|`qe5kM9p2?z z5Q#=lN-5=X7{!VVqO7~=-tq7*x~E65Fa@d{8KL%_{`W$AE7Dic$+Jw2J~V7gIPXUcXs(4*M1GR~V&!76aCfN5ytbXH$@ z0wcld!k1yCsKjct34^N_60TayAL{M5KjWKT!qO5jn&G*sK9z zM^5Spa$N4;1H2900Ciqz0yk}o6xnItZq2W@6B+dP_FDw{C6Ns!pa2&+C$~bT+`GL4u^neLr8p^YpIzX) zskx`*Ut>EoG@#a8*Aw0={G(Zpg(BHt$!T&Ja`02jD@(+v?{->uNps$U2}EW*p@U~J zd}MgogZiGpUg^bQ9^ueQEH-HoM1ZkHv@zMA9WNcaXB+>zX#uVg`0q(mPHPmCn`-uD z&-I38GT+;w_sOhv+yIQi{?6?6`uogID*W)*vR{V%fX2UUdZ>h)7SK-v&)t1s>!zJ3e$*@2!FbKfsB zxtA#|+j_aFORf9K-8>w)zC}d3cxb{7&9T}Rm2#%ZZtA`*#|x7)e;_x0tKN%g^!<|M zL5#7%kQMs&@kD_zq_Y8uyL*Vh4g5DAxNuB44pGnJ5<{U(Cyx-Q74r^z&~ZalJ2b-r zCK=DzQ7H0NIKGF{abSXCpMV*WSp~y$7ncDvbP10@*acrOsO+_5CI>G8N;LzroP=eE zl1B{m!L7sIX8okD<)IazPlRZ<&)#{!oDWIxI|6LC5B864y80)*N2;q&rRDvdvuzH! z9tm8zn*cRuJ_A))+($3mynpcW%u?cW*FO90-VxLCRdsJb;dMzFVB-NkujvT-ij_vQ z$~Y2n$vFp=`xJ5@WC~|>SLi|aaLF?7gG-LMXjU5WT-fH@J2Qw&D+Q!9ZmN&*z>pLZ z^>H}|v~3p9y+4`3Z|Rh+RW%Ac;IMbvlKtK9uBto)U!E|$=UlgZ@8OMn-f5Z|>?FN{ z2Q?ZrS-4C?Q@qT8xXUZext1kjB{Eb*?V8jWFCG(5q4`Q@4p)_2D8+#9c}U&sX;$$t zxuvFfW=A$iq(y+=+GPr89_=fxNtFQ>3NyWM(STo20MEktUJgoP@XwO7E{e&uOchK$ zgJd?wB*i@#6DgR6kqc9(J~@v%I}@f2U%AjTsc0kSy#2rqg(U1c8`x2uSG!+cxpS{9 zyV^8C4D&{-79vgKD&yZC|8L6M&f0p!7Ie;pQLWGE-w8voPE8qhwQ1N@L$+RTdTwral~12`Qa?3)?hA}-B?@i7bDnu zV(x-kjhD6*h{uD;5;q#*e`>TY4_$CEBN>mR(?tLHVA!z)1%2M#mewLo^X@R*5{Gau z3REMNIhmI{Wh`^|nHih~rA~3BhbgdjV7U!nIXF6bz(Q0LQytgIbsl&1V2L1H(=T!`TFjA6 zOQ2;iBUjsD;qdTD;huyQ6r8w+};wiC%N{`Nq9TbAc%1xo{8qydd zk7>qaQ0mLjCLBBIVHXFY>Uak7lPtr%ltNV5LoFe?&*Ol0H9;KO;Cd_Y8_gHeob6ft zB78NtsEDm@1vd`HM<0rzR>p`_QZenP_6}61CV6AhynuH$-U#Rr#_OS?#g=#2Icu^q z9*WsjOwO%5&)O{os#W^WuxXZE7T+`c9LfT&QF84iTrt#$E;w9+BkT?-2UeC{#dyRL zNZ5946_9)%DBd=l_nkIP)v?T%Wo^Z7=MtEgUB-ZNrQ4bH4)rDdKfE%7S4(v=6l;0^ zbvit=akK2+*dZBW?0i)C82BcFOnQ7=GbSyFPxX7Vr=Xe4U&o=S2v>wYjeo{{t`7ZxnHtNwCFJ$7!eoiOV3`_`te% zjQ=IoCQW&s>dVZ4!`^zj;ET8M`4)6eqxz=9;|Z)t z5FDM1D}6u0ipsOIqq1dYTMqac5T)^S2-WA2rbThv5Kb~3I(!u=DJkMZhEX+gJa{&Y zkTV*OBVpr#4CPD{B@7zMJ?_!Y_()Br{C?j!?0>na5J=+*R*^^J!E%Je;W3-|Xk@6R zBk?%3=MUjlAV&)1djKC#7*G)Fs=RJTAW(KhCa`oCVuqQLo}cU~{@GW?56r*w%G z&}A0q;-mgBix59V!0u`!B;G37fsc@@v3UO0Z@|;B)QH z(E9Ov)TjMmC_9h%kK7#gZ*c(!hMP_=)~8b+D5{A;b}bs?IoN|%Cl6^(!FzVft!QH) z-1-)3-co%i)Rd^-j!f)5pzK=;j;Jn~Z<|awo&)QmO_+F!JR8mDoO#mV0~N&;3RCA4 z7jZh=sl!$P9zo57B$Xm}h&v(8{_Sc&oFam}L7%ef7WUe%$rY=QWODZJ-Z4P&-iC=M+ykBu+zsVyI*{P(pR@ylj`=1pe9=JMv54W(8u1bf zQv&R4<0V}An&)UX2rv7P+Mg!qWtcfkPZhlI;Vw*<3>HkiaHxYlDy0`e!GhxO0qT$a6t&3!VmHt`43@{dMdHka3yjJQG_Iqj)SbsP`Gg;mxfR?B3Ryit z+ZW6S&)2k=2g{PIlAs|9GmV-+t-H!sIe-5iaZ#%7weK%4FRiS$JyhShIkP%riIN#2 z)g4K5u1^I2JN8|VD!}`DJ7>!y6WQzLM!lRlo8j=!xj*_zf=5(Uztx}d=#j}M1~{jg zczO5<^S|Gy>BDxm`=s!wW$Dkyr_t$gG^bllQ3llOu9o0BFK_{HfRoW8JqXx$$nGx4 zppoqa*&is0DZ6P%7>#V85s);|NGJ+(_A8iec(9`CR|2ChBNOE6vRMp?+ezI5P%(g< z`P&kq+XtUO!Sccu13oa(z%2aBQy-JJ8%zV+H(rd^~P&z+r{VbFQg2886u5*gcngQY-M+}*#ye;SpGX8=sqogCri+sYcH+SffpC3A8}_KS;Lq{eAw@389YB6{%1PP9 z^nVLo$9ZAI1J+4m$onA4g(FYe_h)17^W~M9TX$#3Gdp|#mU5oYASpml%(oUHBM^@i zzE$REvU$9_d)7HS+eV8~)fGmal;oB}F4pDD5~YxqnCGF|%lLWWv;s1bb8G_iUbJpn(nIjpvBPQ95O?{C|N*sql-E;D>`LyFM-j@>$QXR zAcfwnhr0j4K0H*r2N! zq+is{hU!(!%!C*P!NVF7;#*HN3z_?&f|~-~ifa)D+$8x}*y}Wk zB+MwZ2Zl`J;Jub9kb4$iR_DSy44k~7$Jr(`TqYr@Aw zP=4?f9CpoA%VGAztk!-T@%VhjkU>14?qlqTe8BxR$r(5Rm}e1V50i8cV@SQlg+v~p zhai{4(x6Nz|0J-a0Z`K@zNhYcX|kw0*MhBNKQmSo$Z?CR8Qx63BNCy%4tUctUP^UI z+MZM*!lUFRAcf*8r|@>RgGH%1=mi#$uiUmA?vi3ueg5BAI<{!V2yS1o)vA zat@l#)}u}dwFWfrV6Au9GLZ{+4OD@TNNb}EL(j1rY1;;>pX34EgJyfO)0{NlAx5S! z`p_J#Hdx`g`3JB)bsv^Lr8!|$RLok<0w)*8`8UGu)F;B;I|TxdyNb6O9EFSa=DG$8 zhh1}bHxwDmkL5*Msd>p4_peGxhk`(mZnuyF-Uh|8$N%WZ5!OHUV`Ns@e7*K#KbGS% zcyjrVlR!QnR(dKJ|604*MnTGXbj|6>hkXwkS1nFvg6D{T58HcoJ)RH<98~S3moCYs z-ct>3*$3xyi;92{l=q)f4mcPk#l>%W4~9sr3{OALT-E>HgEmF=u+F;KVd-Qy;zz}A zqcTWlknm=?zx=xQ==nqK+DDRrx-KmTcVm`6xwXEyUTZc{87*_n(LNBRO$%8|)>Dn+ zP__v;nB>cSC^1s}o5@Kav(ewhNpV5?%NzFv2kGMsFju!xXKKAvZHHuXy4l+nw(242 zhpDMy9Fm6{%B+8chRhGioOm+A&MehxUeS))b52Lls7*WJqP0>Rx8_|FS&6Cl3x1ij zDhggn)wC|$A5-R!^0)?6iqdrIzFeS100_eyAkq&3Vrx&aVbFCRkI}Y?>FKqbxXeD3 z4zhRca~a7_9eu?-M-gP#$53Ke`UMin-I-UCdCaoTO0#``an;;38KDI8MILPGt0=n9` zGdpxJ^t|OM^XHcCE;ErzgA{P*Im z45z4{owzlzGVw~;<7YTg)+?vW4Dnf%;eY60i=LJ-WxOcBE8H@4Hs!_46p1lLXqi3@ zY4%M!YLgO(FR@W4Y{4*q7WN- z03m=n6|QBj7=$~((VI}RmeVZ!UnGm$ia?i(c&+*W+1{FEyboILZ47il;GmRv^u*Ee zD6|x;6fdQa4u4h^7}B=;w*oz9Gr85zj*>avfTkeq13RQ z6L)L(aA5R3;gNh%54t5xbD-cn~}Y1J4EFCU$5?H+kneGym4j(_hK_3?raHPwq1hup+A83x1JA$f2WpQixs z_OXxMHeGl@tk|=$-W7V77{)jU!OyQ)xzjZXf49ncu9a>-WpdF;zFY(cZ z_@3E2OTuy~P_k}z*N-hL{wxenNPz+0_t-!f)q*l7P z*b?YlScYzSMF}cNpDA_Yos>$6L&41{JJOmz83{yaHaAYzZC_}NXKJ&)ie`}JY;bxO zox!oV;0fJi^Y>($<|7R*VDmqlodNfqC^;5O$gJBZg(6x8eYfhI-NSlAE<_G$L`|9W zs)nRxIw{LEgOQQn?>s81X(Xf>)r@J(%kLR@I5^fu20v;wfltD8w}Dt}C@cTG?7bYU z)AKB4be=+*eIn3P#Vq@?^K;|HBTB_TJ$#6wuB2;e-tDMh7?B>S4RcFND>sYBZ!Ip( z&McCO|K+7Q2vdZDC`5!`4{wu(vgoC(pTp>(`-^z` zLn_R5{f{2r$ivM50^2|Q#E;|T5Tp8Dy`}~O(lpb}(5+VPq!|9%0D#c5s#17+d(Ttb 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ⅆVHHgy{?1!kyUyZj2K1wkL*W{Yh1(@>~PY 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

    }(Rh9hcrWUO&x4QyJ3jZZ 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