blob: f0c67596bcb61dc8c5173b2c19938ccec7c392c5 [file] [log] [blame]
// GENERATED FILE - DO NOT EDIT.
// Generated by gen_gl_enum_utils.py using data from gl.xml and gl_angle_ext.xml.
//
// Copyright 2019 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// gl_enum_utils_autogen.cpp:
// mapping of GLenum value to string.
#include "libANGLE/gl_enum_utils_autogen.h"
#include "libANGLE/gl_enum_utils.h"
#include <sstream>
#include "common/bitset_utils.h"
namespace gl
{
const char *GLenumToString(GLenumGroup enumGroup, unsigned int value)
{
switch (enumGroup)
{
case GLenumGroup::AlphaFunction:
{
switch (value)
{
case 0x200:
return "GL_NEVER";
case 0x201:
return "GL_LESS";
case 0x202:
return "GL_EQUAL";
case 0x203:
return "GL_LEQUAL";
case 0x204:
return "GL_GREATER";
case 0x205:
return "GL_NOTEQUAL";
case 0x206:
return "GL_GEQUAL";
case 0x207:
return "GL_ALWAYS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::AtomicCounterBufferPName:
{
switch (value)
{
case 0x92C1:
return "GL_ATOMIC_COUNTER_BUFFER_BINDING";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::AttribMask:
{
switch (value)
{
case 0x100:
return "GL_DEPTH_BUFFER_BIT";
case 0x400:
return "GL_STENCIL_BUFFER_BIT";
case 0x4000:
return "GL_COLOR_BUFFER_BIT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::AttributeType:
{
switch (value)
{
case 0x8B50:
return "GL_FLOAT_VEC2";
case 0x8B51:
return "GL_FLOAT_VEC3";
case 0x8B52:
return "GL_FLOAT_VEC4";
case 0x8B53:
return "GL_INT_VEC2";
case 0x8B54:
return "GL_INT_VEC3";
case 0x8B55:
return "GL_INT_VEC4";
case 0x8B56:
return "GL_BOOL";
case 0x8B57:
return "GL_BOOL_VEC2";
case 0x8B58:
return "GL_BOOL_VEC3";
case 0x8B59:
return "GL_BOOL_VEC4";
case 0x8B5A:
return "GL_FLOAT_MAT2";
case 0x8B5B:
return "GL_FLOAT_MAT3";
case 0x8B5C:
return "GL_FLOAT_MAT4";
case 0x8B5E:
return "GL_SAMPLER_2D";
case 0x8B5F:
return "GL_SAMPLER_3D";
case 0x8B60:
return "GL_SAMPLER_CUBE";
case 0x8B62:
return "GL_SAMPLER_2D_SHADOW";
case 0x8B65:
return "GL_FLOAT_MAT2x3";
case 0x8B66:
return "GL_FLOAT_MAT2x4";
case 0x8B67:
return "GL_FLOAT_MAT3x2";
case 0x8B68:
return "GL_FLOAT_MAT3x4";
case 0x8B69:
return "GL_FLOAT_MAT4x2";
case 0x8B6A:
return "GL_FLOAT_MAT4x3";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BindTransformFeedbackTarget:
{
switch (value)
{
case 0x8E22:
return "GL_TRANSFORM_FEEDBACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BlendEquationModeEXT:
{
switch (value)
{
case 0x8006:
return "GL_FUNC_ADD";
case 0x800A:
return "GL_FUNC_SUBTRACT";
case 0x800B:
return "GL_FUNC_REVERSE_SUBTRACT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BlendingFactor:
{
switch (value)
{
case 0x0:
return "GL_ZERO";
case 0x1:
return "GL_ONE";
case 0x300:
return "GL_SRC_COLOR";
case 0x301:
return "GL_ONE_MINUS_SRC_COLOR";
case 0x302:
return "GL_SRC_ALPHA";
case 0x303:
return "GL_ONE_MINUS_SRC_ALPHA";
case 0x304:
return "GL_DST_ALPHA";
case 0x305:
return "GL_ONE_MINUS_DST_ALPHA";
case 0x306:
return "GL_DST_COLOR";
case 0x307:
return "GL_ONE_MINUS_DST_COLOR";
case 0x308:
return "GL_SRC_ALPHA_SATURATE";
case 0x8001:
return "GL_CONSTANT_COLOR";
case 0x8002:
return "GL_ONE_MINUS_CONSTANT_COLOR";
case 0x8003:
return "GL_CONSTANT_ALPHA";
case 0x8004:
return "GL_ONE_MINUS_CONSTANT_ALPHA";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BlitFramebufferFilter:
{
switch (value)
{
case 0x2600:
return "GL_NEAREST";
case 0x2601:
return "GL_LINEAR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::Boolean:
{
switch (value)
{
case 0x0:
return "GL_FALSE";
case 0x1:
return "GL_TRUE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::Buffer:
{
switch (value)
{
case 0x1800:
return "GL_COLOR";
case 0x1801:
return "GL_DEPTH";
case 0x1802:
return "GL_STENCIL";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BufferAccessARB:
{
switch (value)
{
case 0x88B8:
return "GL_READ_ONLY";
case 0x88B9:
return "GL_WRITE_ONLY";
case 0x88BA:
return "GL_READ_WRITE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BufferAccessMask:
{
switch (value)
{
case 0x1:
return "GL_MAP_READ_BIT";
case 0x2:
return "GL_MAP_WRITE_BIT";
case 0x4:
return "GL_MAP_INVALIDATE_RANGE_BIT";
case 0x8:
return "GL_MAP_INVALIDATE_BUFFER_BIT";
case 0x10:
return "GL_MAP_FLUSH_EXPLICIT_BIT";
case 0x20:
return "GL_MAP_UNSYNCHRONIZED_BIT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BufferStorageTarget:
{
switch (value)
{
case 0x8892:
return "GL_ARRAY_BUFFER";
case 0x8893:
return "GL_ELEMENT_ARRAY_BUFFER";
case 0x88EB:
return "GL_PIXEL_PACK_BUFFER";
case 0x88EC:
return "GL_PIXEL_UNPACK_BUFFER";
case 0x8A11:
return "GL_UNIFORM_BUFFER";
case 0x8C2A:
return "GL_TEXTURE_BUFFER";
case 0x8C8E:
return "GL_TRANSFORM_FEEDBACK_BUFFER";
case 0x8F36:
return "GL_COPY_READ_BUFFER";
case 0x8F37:
return "GL_COPY_WRITE_BUFFER";
case 0x8F3F:
return "GL_DRAW_INDIRECT_BUFFER";
case 0x90D2:
return "GL_SHADER_STORAGE_BUFFER";
case 0x90EE:
return "GL_DISPATCH_INDIRECT_BUFFER";
case 0x92C0:
return "GL_ATOMIC_COUNTER_BUFFER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BufferTargetARB:
{
switch (value)
{
case 0x8892:
return "GL_ARRAY_BUFFER";
case 0x8893:
return "GL_ELEMENT_ARRAY_BUFFER";
case 0x88EB:
return "GL_PIXEL_PACK_BUFFER";
case 0x88EC:
return "GL_PIXEL_UNPACK_BUFFER";
case 0x8A11:
return "GL_UNIFORM_BUFFER";
case 0x8C2A:
return "GL_TEXTURE_BUFFER";
case 0x8C8E:
return "GL_TRANSFORM_FEEDBACK_BUFFER";
case 0x8F36:
return "GL_COPY_READ_BUFFER";
case 0x8F37:
return "GL_COPY_WRITE_BUFFER";
case 0x8F3F:
return "GL_DRAW_INDIRECT_BUFFER";
case 0x90D2:
return "GL_SHADER_STORAGE_BUFFER";
case 0x90EE:
return "GL_DISPATCH_INDIRECT_BUFFER";
case 0x92C0:
return "GL_ATOMIC_COUNTER_BUFFER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::BufferUsageARB:
{
switch (value)
{
case 0x88E0:
return "GL_STREAM_DRAW";
case 0x88E1:
return "GL_STREAM_READ";
case 0x88E2:
return "GL_STREAM_COPY";
case 0x88E4:
return "GL_STATIC_DRAW";
case 0x88E5:
return "GL_STATIC_READ";
case 0x88E6:
return "GL_STATIC_COPY";
case 0x88E8:
return "GL_DYNAMIC_DRAW";
case 0x88E9:
return "GL_DYNAMIC_READ";
case 0x88EA:
return "GL_DYNAMIC_COPY";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::CheckFramebufferStatusTarget:
{
switch (value)
{
case 0x8CA8:
return "GL_READ_FRAMEBUFFER";
case 0x8CA9:
return "GL_DRAW_FRAMEBUFFER";
case 0x8D40:
return "GL_FRAMEBUFFER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ClearBufferMask:
{
switch (value)
{
case 0x100:
return "GL_DEPTH_BUFFER_BIT";
case 0x400:
return "GL_STENCIL_BUFFER_BIT";
case 0x4000:
return "GL_COLOR_BUFFER_BIT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ColorBuffer:
{
switch (value)
{
case 0x0:
return "GL_NONE";
case 0x404:
return "GL_FRONT";
case 0x405:
return "GL_BACK";
case 0x408:
return "GL_FRONT_AND_BACK";
case 0x8CE0:
return "GL_COLOR_ATTACHMENT0";
case 0x8CE1:
return "GL_COLOR_ATTACHMENT1";
case 0x8CE2:
return "GL_COLOR_ATTACHMENT2";
case 0x8CE3:
return "GL_COLOR_ATTACHMENT3";
case 0x8CE4:
return "GL_COLOR_ATTACHMENT4";
case 0x8CE5:
return "GL_COLOR_ATTACHMENT5";
case 0x8CE6:
return "GL_COLOR_ATTACHMENT6";
case 0x8CE7:
return "GL_COLOR_ATTACHMENT7";
case 0x8CE8:
return "GL_COLOR_ATTACHMENT8";
case 0x8CE9:
return "GL_COLOR_ATTACHMENT9";
case 0x8CEA:
return "GL_COLOR_ATTACHMENT10";
case 0x8CEB:
return "GL_COLOR_ATTACHMENT11";
case 0x8CEC:
return "GL_COLOR_ATTACHMENT12";
case 0x8CED:
return "GL_COLOR_ATTACHMENT13";
case 0x8CEE:
return "GL_COLOR_ATTACHMENT14";
case 0x8CEF:
return "GL_COLOR_ATTACHMENT15";
case 0x8CF0:
return "GL_COLOR_ATTACHMENT16";
case 0x8CF1:
return "GL_COLOR_ATTACHMENT17";
case 0x8CF2:
return "GL_COLOR_ATTACHMENT18";
case 0x8CF3:
return "GL_COLOR_ATTACHMENT19";
case 0x8CF4:
return "GL_COLOR_ATTACHMENT20";
case 0x8CF5:
return "GL_COLOR_ATTACHMENT21";
case 0x8CF6:
return "GL_COLOR_ATTACHMENT22";
case 0x8CF7:
return "GL_COLOR_ATTACHMENT23";
case 0x8CF8:
return "GL_COLOR_ATTACHMENT24";
case 0x8CF9:
return "GL_COLOR_ATTACHMENT25";
case 0x8CFA:
return "GL_COLOR_ATTACHMENT26";
case 0x8CFB:
return "GL_COLOR_ATTACHMENT27";
case 0x8CFC:
return "GL_COLOR_ATTACHMENT28";
case 0x8CFD:
return "GL_COLOR_ATTACHMENT29";
case 0x8CFE:
return "GL_COLOR_ATTACHMENT30";
case 0x8CFF:
return "GL_COLOR_ATTACHMENT31";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ColorMaterialFace:
{
switch (value)
{
case 0x404:
return "GL_FRONT";
case 0x405:
return "GL_BACK";
case 0x408:
return "GL_FRONT_AND_BACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ColorPointerType:
{
switch (value)
{
case 0x1400:
return "GL_BYTE";
case 0x1401:
return "GL_UNSIGNED_BYTE";
case 0x1402:
return "GL_SHORT";
case 0x1403:
return "GL_UNSIGNED_SHORT";
case 0x1404:
return "GL_INT";
case 0x1405:
return "GL_UNSIGNED_INT";
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ContextFlagMask:
{
switch (value)
{
case 0x2:
return "GL_CONTEXT_FLAG_DEBUG_BIT";
case 0x4:
return "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::CopyBufferSubDataTarget:
{
switch (value)
{
case 0x8892:
return "GL_ARRAY_BUFFER";
case 0x8893:
return "GL_ELEMENT_ARRAY_BUFFER";
case 0x88EB:
return "GL_PIXEL_PACK_BUFFER";
case 0x88EC:
return "GL_PIXEL_UNPACK_BUFFER";
case 0x8A11:
return "GL_UNIFORM_BUFFER";
case 0x8C2A:
return "GL_TEXTURE_BUFFER";
case 0x8C8E:
return "GL_TRANSFORM_FEEDBACK_BUFFER";
case 0x8F36:
return "GL_COPY_READ_BUFFER";
case 0x8F37:
return "GL_COPY_WRITE_BUFFER";
case 0x8F3F:
return "GL_DRAW_INDIRECT_BUFFER";
case 0x90D2:
return "GL_SHADER_STORAGE_BUFFER";
case 0x90EE:
return "GL_DISPATCH_INDIRECT_BUFFER";
case 0x92C0:
return "GL_ATOMIC_COUNTER_BUFFER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::CullFaceMode:
{
switch (value)
{
case 0x404:
return "GL_FRONT";
case 0x405:
return "GL_BACK";
case 0x408:
return "GL_FRONT_AND_BACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::DebugSeverity:
{
switch (value)
{
case 0x1100:
return "GL_DONT_CARE";
case 0x9146:
return "GL_DEBUG_SEVERITY_HIGH";
case 0x9147:
return "GL_DEBUG_SEVERITY_MEDIUM";
case 0x9148:
return "GL_DEBUG_SEVERITY_LOW";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::DebugSource:
{
switch (value)
{
case 0x1100:
return "GL_DONT_CARE";
case 0x8246:
return "GL_DEBUG_SOURCE_API";
case 0x8247:
return "GL_DEBUG_SOURCE_WINDOW_SYSTEM";
case 0x8248:
return "GL_DEBUG_SOURCE_SHADER_COMPILER";
case 0x8249:
return "GL_DEBUG_SOURCE_THIRD_PARTY";
case 0x824A:
return "GL_DEBUG_SOURCE_APPLICATION";
case 0x824B:
return "GL_DEBUG_SOURCE_OTHER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::DebugType:
{
switch (value)
{
case 0x1100:
return "GL_DONT_CARE";
case 0x824C:
return "GL_DEBUG_TYPE_ERROR";
case 0x824D:
return "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR";
case 0x824E:
return "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR";
case 0x824F:
return "GL_DEBUG_TYPE_PORTABILITY";
case 0x8250:
return "GL_DEBUG_TYPE_PERFORMANCE";
case 0x8251:
return "GL_DEBUG_TYPE_OTHER";
case 0x8268:
return "GL_DEBUG_TYPE_MARKER";
case 0x8269:
return "GL_DEBUG_TYPE_PUSH_GROUP";
case 0x826A:
return "GL_DEBUG_TYPE_POP_GROUP";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::DefaultGroup:
{
switch (value)
{
case 0x16:
return "GL_UUID_SIZE_EXT";
case 0x308:
return "GL_SRC_ALPHA_SATURATE_EXT";
case 0x503:
return "GL_STACK_OVERFLOW_KHR";
case 0x504:
return "GL_STACK_UNDERFLOW_KHR";
case 0x507:
return "GL_CONTEXT_LOST";
case 0x1004:
return "GL_TEXTURE_BORDER_COLOR_OES";
case 0x2500:
return "GL_TEXTURE_GEN_MODE_OES";
case 0x8005:
return "GL_BLEND_COLOR";
case 0x8007:
return "GL_MIN";
case 0x8008:
return "GL_MAX";
case 0x8009:
return "GL_BLEND_EQUATION";
case 0x803C:
return "GL_ALPHA8_EXT";
case 0x8040:
return "GL_LUMINANCE8_EXT";
case 0x8045:
return "GL_LUMINANCE8_ALPHA8_EXT";
case 0x806A:
return "GL_TEXTURE_BINDING_3D_OES";
case 0x8071:
return "GL_TEXTURE_DEPTH";
case 0x8073:
return "GL_MAX_3D_TEXTURE_SIZE";
case 0x8074:
return "GL_VERTEX_ARRAY_KHR";
case 0x809E:
return "GL_SAMPLE_ALPHA_TO_COVERAGE";
case 0x80A0:
return "GL_SAMPLE_COVERAGE";
case 0x80AA:
return "GL_SAMPLE_COVERAGE_VALUE";
case 0x80AB:
return "GL_SAMPLE_COVERAGE_INVERT";
case 0x80C8:
return "GL_BLEND_DST_RGB";
case 0x80C9:
return "GL_BLEND_SRC_RGB";
case 0x80CA:
return "GL_BLEND_DST_ALPHA";
case 0x80CB:
return "GL_BLEND_SRC_ALPHA";
case 0x80E8:
return "GL_MAX_ELEMENTS_VERTICES";
case 0x80E9:
return "GL_MAX_ELEMENTS_INDICES";
case 0x812D:
return "GL_CLAMP_TO_BORDER_OES";
case 0x81A6:
return "GL_DEPTH_COMPONENT24";
case 0x8218:
return "GL_FRAMEBUFFER_DEFAULT";
case 0x821A:
return "GL_DEPTH_STENCIL_ATTACHMENT";
case 0x821B:
return "GL_MAJOR_VERSION";
case 0x821C:
return "GL_MINOR_VERSION";
case 0x821D:
return "GL_NUM_EXTENSIONS";
case 0x821E:
return "GL_CONTEXT_FLAGS";
case 0x8221:
return "GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED";
case 0x8228:
return "GL_RG_INTEGER";
case 0x8242:
return "GL_DEBUG_OUTPUT_SYNCHRONOUS";
case 0x8243:
return "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH";
case 0x8244:
return "GL_DEBUG_CALLBACK_FUNCTION_KHR";
case 0x8245:
return "GL_DEBUG_CALLBACK_USER_PARAM_KHR";
case 0x8246:
return "GL_DEBUG_SOURCE_API_KHR";
case 0x8247:
return "GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR";
case 0x8248:
return "GL_DEBUG_SOURCE_SHADER_COMPILER_KHR";
case 0x8249:
return "GL_DEBUG_SOURCE_THIRD_PARTY_KHR";
case 0x824A:
return "GL_DEBUG_SOURCE_APPLICATION_KHR";
case 0x824B:
return "GL_DEBUG_SOURCE_OTHER_KHR";
case 0x824C:
return "GL_DEBUG_TYPE_ERROR_KHR";
case 0x824D:
return "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR";
case 0x824E:
return "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR";
case 0x824F:
return "GL_DEBUG_TYPE_PORTABILITY_KHR";
case 0x8250:
return "GL_DEBUG_TYPE_PERFORMANCE_KHR";
case 0x8251:
return "GL_DEBUG_TYPE_OTHER_KHR";
case 0x8252:
return "GL_LOSE_CONTEXT_ON_RESET";
case 0x8253:
return "GL_GUILTY_CONTEXT_RESET_EXT";
case 0x8254:
return "GL_INNOCENT_CONTEXT_RESET_EXT";
case 0x8255:
return "GL_UNKNOWN_CONTEXT_RESET_EXT";
case 0x8256:
return "GL_RESET_NOTIFICATION_STRATEGY";
case 0x825A:
return "GL_PROGRAM_PIPELINE_BINDING";
case 0x825E:
return "GL_LAYER_PROVOKING_VERTEX";
case 0x8260:
return "GL_UNDEFINED_VERTEX";
case 0x8261:
return "GL_NO_RESET_NOTIFICATION";
case 0x8262:
return "GL_MAX_COMPUTE_SHARED_MEMORY_SIZE";
case 0x8263:
return "GL_MAX_COMPUTE_UNIFORM_COMPONENTS";
case 0x8264:
return "GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS";
case 0x8265:
return "GL_MAX_COMPUTE_ATOMIC_COUNTERS";
case 0x8266:
return "GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS";
case 0x8268:
return "GL_DEBUG_TYPE_MARKER_KHR";
case 0x8269:
return "GL_DEBUG_TYPE_PUSH_GROUP_KHR";
case 0x826A:
return "GL_DEBUG_TYPE_POP_GROUP_KHR";
case 0x826B:
return "GL_DEBUG_SEVERITY_NOTIFICATION";
case 0x826C:
return "GL_MAX_DEBUG_GROUP_STACK_DEPTH";
case 0x826D:
return "GL_DEBUG_GROUP_STACK_DEPTH";
case 0x826E:
return "GL_MAX_UNIFORM_LOCATIONS";
case 0x82D4:
return "GL_VERTEX_ATTRIB_BINDING";
case 0x82D6:
return "GL_VERTEX_BINDING_DIVISOR";
case 0x82D7:
return "GL_VERTEX_BINDING_OFFSET";
case 0x82D8:
return "GL_VERTEX_BINDING_STRIDE";
case 0x82D9:
return "GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET";
case 0x82DA:
return "GL_MAX_VERTEX_ATTRIB_BINDINGS";
case 0x82DF:
return "GL_TEXTURE_IMMUTABLE_LEVELS";
case 0x82E0:
return "GL_BUFFER_KHR";
case 0x82E1:
return "GL_SHADER_KHR";
case 0x82E2:
return "GL_PROGRAM_KHR";
case 0x82E3:
return "GL_QUERY_KHR";
case 0x82E4:
return "GL_PROGRAM_PIPELINE_KHR";
case 0x82E5:
return "GL_MAX_VERTEX_ATTRIB_STRIDE";
case 0x82E6:
return "GL_SAMPLER_KHR";
case 0x82E7:
return "GL_DISPLAY_LIST";
case 0x82E8:
return "GL_MAX_LABEL_LENGTH";
case 0x8363:
return "GL_UNSIGNED_SHORT_5_6_5";
case 0x8370:
return "GL_MIRRORED_REPEAT";
case 0x84E0:
return "GL_ACTIVE_TEXTURE";
case 0x84E8:
return "GL_MAX_RENDERBUFFER_SIZE";
case 0x84F2:
return "GL_ALL_COMPLETED_NV";
case 0x84F3:
return "GL_FENCE_STATUS_NV";
case 0x84F4:
return "GL_FENCE_CONDITION_NV";
case 0x84FA:
return "GL_UNSIGNED_INT_24_8";
case 0x84FD:
return "GL_MAX_TEXTURE_LOD_BIAS";
case 0x84FE:
return "GL_TEXTURE_MAX_ANISOTROPY_EXT";
case 0x84FF:
return "GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT";
case 0x8507:
return "GL_INCR_WRAP";
case 0x8508:
return "GL_DECR_WRAP";
case 0x8511:
return "GL_NORMAL_MAP_OES";
case 0x8512:
return "GL_REFLECTION_MAP_OES";
case 0x8513:
return "GL_TEXTURE_CUBE_MAP_OES";
case 0x8514:
return "GL_TEXTURE_BINDING_CUBE_MAP";
case 0x8515:
return "GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES";
case 0x8516:
return "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES";
case 0x8517:
return "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES";
case 0x8518:
return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES";
case 0x8519:
return "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES";
case 0x851A:
return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES";
case 0x851C:
return "GL_MAX_CUBE_MAP_TEXTURE_SIZE";
case 0x8589:
return "GL_SRC1_ALPHA_EXT";
case 0x85B5:
return "GL_VERTEX_ARRAY_BINDING";
case 0x8645:
return "GL_VERTEX_ATTRIB_ARRAY_POINTER";
case 0x86A2:
return "GL_NUM_COMPRESSED_TEXTURE_FORMATS";
case 0x86A3:
return "GL_COMPRESSED_TEXTURE_FORMATS";
case 0x86A4:
return "GL_MAX_VERTEX_UNITS_OES";
case 0x86A9:
return "GL_WEIGHT_ARRAY_TYPE_OES";
case 0x86AA:
return "GL_WEIGHT_ARRAY_STRIDE_OES";
case 0x86AB:
return "GL_WEIGHT_ARRAY_SIZE_OES";
case 0x86AC:
return "GL_WEIGHT_ARRAY_POINTER_OES";
case 0x86AD:
return "GL_WEIGHT_ARRAY_OES";
case 0x8741:
return "GL_PROGRAM_BINARY_LENGTH_OES";
case 0x87FE:
return "GL_NUM_PROGRAM_BINARY_FORMATS";
case 0x87FF:
return "GL_PROGRAM_BINARY_FORMATS";
case 0x8800:
return "GL_STENCIL_BACK_FUNC";
case 0x8801:
return "GL_STENCIL_BACK_FAIL";
case 0x8802:
return "GL_STENCIL_BACK_PASS_DEPTH_FAIL";
case 0x8803:
return "GL_STENCIL_BACK_PASS_DEPTH_PASS";
case 0x8815:
return "GL_RGB32F";
case 0x8816:
return "GL_ALPHA32F_EXT";
case 0x8818:
return "GL_LUMINANCE32F_EXT";
case 0x8819:
return "GL_LUMINANCE_ALPHA32F_EXT";
case 0x881C:
return "GL_ALPHA16F_EXT";
case 0x881E:
return "GL_LUMINANCE16F_EXT";
case 0x881F:
return "GL_LUMINANCE_ALPHA16F_EXT";
case 0x8824:
return "GL_MAX_DRAW_BUFFERS";
case 0x8825:
return "GL_DRAW_BUFFER0";
case 0x8826:
return "GL_DRAW_BUFFER1";
case 0x8827:
return "GL_DRAW_BUFFER2";
case 0x8828:
return "GL_DRAW_BUFFER3";
case 0x8829:
return "GL_DRAW_BUFFER4";
case 0x882A:
return "GL_DRAW_BUFFER5";
case 0x882B:
return "GL_DRAW_BUFFER6";
case 0x882C:
return "GL_DRAW_BUFFER7";
case 0x882D:
return "GL_DRAW_BUFFER8";
case 0x882E:
return "GL_DRAW_BUFFER9";
case 0x882F:
return "GL_DRAW_BUFFER10";
case 0x8830:
return "GL_DRAW_BUFFER11";
case 0x8831:
return "GL_DRAW_BUFFER12";
case 0x8832:
return "GL_DRAW_BUFFER13";
case 0x8833:
return "GL_DRAW_BUFFER14";
case 0x8834:
return "GL_DRAW_BUFFER15";
case 0x883D:
return "GL_BLEND_EQUATION_ALPHA";
case 0x8840:
return "GL_MATRIX_PALETTE_OES";
case 0x8842:
return "GL_MAX_PALETTE_MATRICES_OES";
case 0x8843:
return "GL_CURRENT_PALETTE_MATRIX_OES";
case 0x8844:
return "GL_MATRIX_INDEX_ARRAY_OES";
case 0x8846:
return "GL_MATRIX_INDEX_ARRAY_SIZE_OES";
case 0x8847:
return "GL_MATRIX_INDEX_ARRAY_TYPE_OES";
case 0x8848:
return "GL_MATRIX_INDEX_ARRAY_STRIDE_OES";
case 0x8849:
return "GL_MATRIX_INDEX_ARRAY_POINTER_OES";
case 0x884A:
return "GL_TEXTURE_DEPTH_SIZE";
case 0x884E:
return "GL_COMPARE_REF_TO_TEXTURE";
case 0x8864:
return "GL_QUERY_COUNTER_BITS_EXT";
case 0x8865:
return "GL_CURRENT_QUERY_EXT";
case 0x8866:
return "GL_QUERY_RESULT_EXT";
case 0x8867:
return "GL_QUERY_RESULT_AVAILABLE_EXT";
case 0x8869:
return "GL_MAX_VERTEX_ATTRIBS";
case 0x886C:
return "GL_MAX_TESS_CONTROL_INPUT_COMPONENTS";
case 0x886D:
return "GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS";
case 0x8872:
return "GL_MAX_TEXTURE_IMAGE_UNITS";
case 0x887F:
return "GL_GEOMETRY_SHADER_INVOCATIONS";
case 0x8894:
return "GL_ARRAY_BUFFER_BINDING";
case 0x8895:
return "GL_ELEMENT_ARRAY_BUFFER_BINDING";
case 0x889E:
return "GL_WEIGHT_ARRAY_BUFFER_BINDING_OES";
case 0x88B9:
return "GL_WRITE_ONLY_OES";
case 0x88BB:
return "GL_BUFFER_ACCESS_OES";
case 0x88BC:
return "GL_BUFFER_MAPPED_OES";
case 0x88BD:
return "GL_BUFFER_MAP_POINTER";
case 0x88BF:
return "GL_TIME_ELAPSED_EXT";
case 0x88ED:
return "GL_PIXEL_PACK_BUFFER_BINDING";
case 0x88EF:
return "GL_PIXEL_UNPACK_BUFFER_BINDING";
case 0x88F1:
return "GL_TEXTURE_STENCIL_SIZE";
case 0x88F9:
return "GL_SRC1_COLOR_EXT";
case 0x88FA:
return "GL_ONE_MINUS_SRC1_COLOR_EXT";
case 0x88FB:
return "GL_ONE_MINUS_SRC1_ALPHA_EXT";
case 0x88FC:
return "GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT";
case 0x88FE:
return "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE";
case 0x88FF:
return "GL_MAX_ARRAY_TEXTURE_LAYERS";
case 0x8904:
return "GL_MIN_PROGRAM_TEXEL_OFFSET";
case 0x8905:
return "GL_MAX_PROGRAM_TEXEL_OFFSET";
case 0x8916:
return "GL_GEOMETRY_LINKED_VERTICES_OUT_EXT";
case 0x8917:
return "GL_GEOMETRY_LINKED_INPUT_TYPE_EXT";
case 0x8918:
return "GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT";
case 0x8919:
return "GL_SAMPLER_BINDING";
case 0x898A:
return "GL_POINT_SIZE_ARRAY_TYPE_OES";
case 0x898B:
return "GL_POINT_SIZE_ARRAY_STRIDE_OES";
case 0x898C:
return "GL_POINT_SIZE_ARRAY_POINTER_OES";
case 0x8A28:
return "GL_UNIFORM_BUFFER_BINDING";
case 0x8A29:
return "GL_UNIFORM_BUFFER_START";
case 0x8A2A:
return "GL_UNIFORM_BUFFER_SIZE";
case 0x8A2B:
return "GL_MAX_VERTEX_UNIFORM_BLOCKS";
case 0x8A2C:
return "GL_MAX_GEOMETRY_UNIFORM_BLOCKS";
case 0x8A2D:
return "GL_MAX_FRAGMENT_UNIFORM_BLOCKS";
case 0x8A2E:
return "GL_MAX_COMBINED_UNIFORM_BLOCKS";
case 0x8A2F:
return "GL_MAX_UNIFORM_BUFFER_BINDINGS";
case 0x8A30:
return "GL_MAX_UNIFORM_BLOCK_SIZE";
case 0x8A31:
return "GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS";
case 0x8A32:
return "GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS";
case 0x8A33:
return "GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS";
case 0x8A34:
return "GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT";
case 0x8B49:
return "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS";
case 0x8B4A:
return "GL_MAX_VERTEX_UNIFORM_COMPONENTS";
case 0x8B4B:
return "GL_MAX_VARYING_COMPONENTS";
case 0x8B4C:
return "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS";
case 0x8B4D:
return "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS";
case 0x8B8D:
return "GL_CURRENT_PROGRAM";
case 0x8B9C:
return "GL_POINT_SIZE_ARRAY_OES";
case 0x8B9D:
return "GL_TEXTURE_CROP_RECT_OES";
case 0x8B9E:
return "GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES";
case 0x8B9F:
return "GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES";
case 0x8C10:
return "GL_TEXTURE_RED_TYPE";
case 0x8C11:
return "GL_TEXTURE_GREEN_TYPE";
case 0x8C12:
return "GL_TEXTURE_BLUE_TYPE";
case 0x8C13:
return "GL_TEXTURE_ALPHA_TYPE";
case 0x8C16:
return "GL_TEXTURE_DEPTH_TYPE";
case 0x8C17:
return "GL_UNSIGNED_NORMALIZED";
case 0x8C1D:
return "GL_TEXTURE_BINDING_2D_ARRAY";
case 0x8C29:
return "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS";
case 0x8C2A:
return "GL_TEXTURE_BUFFER_BINDING";
case 0x8C2B:
return "GL_MAX_TEXTURE_BUFFER_SIZE";
case 0x8C2C:
return "GL_TEXTURE_BINDING_BUFFER";
case 0x8C2D:
return "GL_TEXTURE_BUFFER_DATA_STORE_BINDING";
case 0x8C2F:
return "GL_ANY_SAMPLES_PASSED_EXT";
case 0x8C36:
return "GL_SAMPLE_SHADING";
case 0x8C37:
return "GL_MIN_SAMPLE_SHADING_VALUE";
case 0x8C3E:
return "GL_UNSIGNED_INT_5_9_9_9_REV";
case 0x8C3F:
return "GL_TEXTURE_SHARED_SIZE";
case 0x8C80:
return "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS";
case 0x8C87:
return "GL_PRIMITIVES_GENERATED_EXT";
case 0x8C89:
return "GL_RASTERIZER_DISCARD";
case 0x8C8A:
return "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS";
case 0x8C8B:
return "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS";
case 0x8C8C:
return "GL_INTERLEAVED_ATTRIBS";
case 0x8C8D:
return "GL_SEPARATE_ATTRIBS";
case 0x8CA3:
return "GL_STENCIL_BACK_REF";
case 0x8CA4:
return "GL_STENCIL_BACK_VALUE_MASK";
case 0x8CA5:
return "GL_STENCIL_BACK_WRITEMASK";
case 0x8CA6:
return "GL_DRAW_FRAMEBUFFER_BINDING";
case 0x8CA7:
return "GL_RENDERBUFFER_BINDING";
case 0x8CA8:
return "GL_READ_FRAMEBUFFER_ANGLE";
case 0x8CA9:
return "GL_DRAW_FRAMEBUFFER_ANGLE";
case 0x8CAA:
return "GL_READ_FRAMEBUFFER_BINDING";
case 0x8CAB:
return "GL_RENDERBUFFER_SAMPLES_ANGLE";
case 0x8CD0:
return "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE";
case 0x8CD1:
return "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES";
case 0x8CD2:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES";
case 0x8CD3:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES";
case 0x8CD4:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES";
case 0x8CD5:
return "GL_FRAMEBUFFER_COMPLETE_OES";
case 0x8CD6:
return "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES";
case 0x8CD7:
return "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES";
case 0x8CD9:
return "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS";
case 0x8CDA:
return "GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES";
case 0x8CDD:
return "GL_FRAMEBUFFER_UNSUPPORTED_OES";
case 0x8D20:
return "GL_STENCIL_ATTACHMENT";
case 0x8D40:
return "GL_FRAMEBUFFER_OES";
case 0x8D41:
return "GL_RENDERBUFFER_OES";
case 0x8D42:
return "GL_RENDERBUFFER_WIDTH_OES";
case 0x8D43:
return "GL_RENDERBUFFER_HEIGHT_OES";
case 0x8D44:
return "GL_RENDERBUFFER_INTERNAL_FORMAT_OES";
case 0x8D48:
return "GL_STENCIL_INDEX8";
case 0x8D50:
return "GL_RENDERBUFFER_RED_SIZE_OES";
case 0x8D51:
return "GL_RENDERBUFFER_GREEN_SIZE_OES";
case 0x8D52:
return "GL_RENDERBUFFER_BLUE_SIZE_OES";
case 0x8D53:
return "GL_RENDERBUFFER_ALPHA_SIZE_OES";
case 0x8D54:
return "GL_RENDERBUFFER_DEPTH_SIZE_OES";
case 0x8D55:
return "GL_RENDERBUFFER_STENCIL_SIZE_OES";
case 0x8D56:
return "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE";
case 0x8D57:
return "GL_MAX_SAMPLES";
case 0x8D60:
return "GL_TEXTURE_GEN_STR_OES";
case 0x8D62:
return "GL_RGB565";
case 0x8D69:
return "GL_PRIMITIVE_RESTART_FIXED_INDEX";
case 0x8D6A:
return "GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT";
case 0x8D6B:
return "GL_MAX_ELEMENT_INDEX";
case 0x8D6C:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT";
case 0x8D94:
return "GL_RED_INTEGER";
case 0x8D98:
return "GL_RGB_INTEGER";
case 0x8D99:
return "GL_RGBA_INTEGER";
case 0x8DA7:
return "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT";
case 0x8DA8:
return "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT";
case 0x8DAD:
return "GL_FLOAT_32_UNSIGNED_INT_24_8_REV";
case 0x8DC1:
return "GL_SAMPLER_2D_ARRAY";
case 0x8DC2:
return "GL_SAMPLER_BUFFER";
case 0x8DC4:
return "GL_SAMPLER_2D_ARRAY_SHADOW";
case 0x8DC5:
return "GL_SAMPLER_CUBE_SHADOW";
case 0x8DC6:
return "GL_UNSIGNED_INT_VEC2";
case 0x8DC7:
return "GL_UNSIGNED_INT_VEC3";
case 0x8DC8:
return "GL_UNSIGNED_INT_VEC4";
case 0x8DCA:
return "GL_INT_SAMPLER_2D";
case 0x8DCB:
return "GL_INT_SAMPLER_3D";
case 0x8DCC:
return "GL_INT_SAMPLER_CUBE";
case 0x8DCF:
return "GL_INT_SAMPLER_2D_ARRAY";
case 0x8DD0:
return "GL_INT_SAMPLER_BUFFER";
case 0x8DD2:
return "GL_UNSIGNED_INT_SAMPLER_2D";
case 0x8DD3:
return "GL_UNSIGNED_INT_SAMPLER_3D";
case 0x8DD4:
return "GL_UNSIGNED_INT_SAMPLER_CUBE";
case 0x8DD7:
return "GL_UNSIGNED_INT_SAMPLER_2D_ARRAY";
case 0x8DD8:
return "GL_UNSIGNED_INT_SAMPLER_BUFFER";
case 0x8DD9:
return "GL_GEOMETRY_SHADER_EXT";
case 0x8DDF:
return "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS";
case 0x8DE0:
return "GL_MAX_GEOMETRY_OUTPUT_VERTICES";
case 0x8DE1:
return "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS";
case 0x8DF8:
return "GL_SHADER_BINARY_FORMATS";
case 0x8DF9:
return "GL_NUM_SHADER_BINARY_FORMATS";
case 0x8DFA:
return "GL_SHADER_COMPILER";
case 0x8DFB:
return "GL_MAX_VERTEX_UNIFORM_VECTORS";
case 0x8DFC:
return "GL_MAX_VARYING_VECTORS";
case 0x8DFD:
return "GL_MAX_FRAGMENT_UNIFORM_VECTORS";
case 0x8E1E:
return "GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS";
case 0x8E1F:
return "GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS";
case 0x8E25:
return "GL_TRANSFORM_FEEDBACK_BINDING";
case 0x8E28:
return "GL_TIMESTAMP_EXT";
case 0x8E4D:
return "GL_FIRST_VERTEX_CONVENTION_EXT";
case 0x8E4E:
return "GL_LAST_VERTEX_CONVENTION_EXT";
case 0x8E4F:
return "GL_PROVOKING_VERTEX";
case 0x8E50:
return "GL_SAMPLE_POSITION";
case 0x8E51:
return "GL_SAMPLE_MASK";
case 0x8E52:
return "GL_SAMPLE_MASK_VALUE";
case 0x8E59:
return "GL_MAX_SAMPLE_MASK_WORDS";
case 0x8E5A:
return "GL_MAX_GEOMETRY_SHADER_INVOCATIONS";
case 0x8E5B:
return "GL_MIN_FRAGMENT_INTERPOLATION_OFFSET";
case 0x8E5C:
return "GL_MAX_FRAGMENT_INTERPOLATION_OFFSET";
case 0x8E5D:
return "GL_FRAGMENT_INTERPOLATION_OFFSET_BITS";
case 0x8E5E:
return "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET";
case 0x8E5F:
return "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET";
case 0x8E75:
return "GL_TESS_CONTROL_OUTPUT_VERTICES";
case 0x8E76:
return "GL_TESS_GEN_MODE";
case 0x8E77:
return "GL_TESS_GEN_SPACING";
case 0x8E78:
return "GL_TESS_GEN_VERTEX_ORDER";
case 0x8E79:
return "GL_TESS_GEN_POINT_MODE";
case 0x8E7A:
return "GL_ISOLINES";
case 0x8E7B:
return "GL_FRACTIONAL_ODD";
case 0x8E7C:
return "GL_FRACTIONAL_EVEN";
case 0x8E7D:
return "GL_MAX_PATCH_VERTICES";
case 0x8E7E:
return "GL_MAX_TESS_GEN_LEVEL";
case 0x8E7F:
return "GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS";
case 0x8E80:
return "GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS";
case 0x8E81:
return "GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS";
case 0x8E82:
return "GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS";
case 0x8E83:
return "GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS";
case 0x8E84:
return "GL_MAX_TESS_PATCH_COMPONENTS";
case 0x8E85:
return "GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS";
case 0x8E86:
return "GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS";
case 0x8E89:
return "GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS";
case 0x8E8A:
return "GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS";
case 0x8F36:
return "GL_COPY_READ_BUFFER_BINDING";
case 0x8F37:
return "GL_COPY_WRITE_BUFFER_BINDING";
case 0x8F38:
return "GL_MAX_IMAGE_UNITS";
case 0x8F39:
return "GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES";
case 0x8F3A:
return "GL_IMAGE_BINDING_NAME";
case 0x8F3B:
return "GL_IMAGE_BINDING_LEVEL";
case 0x8F3C:
return "GL_IMAGE_BINDING_LAYERED";
case 0x8F3D:
return "GL_IMAGE_BINDING_LAYER";
case 0x8F3E:
return "GL_IMAGE_BINDING_ACCESS";
case 0x8F43:
return "GL_DRAW_INDIRECT_BUFFER_BINDING";
case 0x8F4F:
return "GL_VERTEX_BINDING_BUFFER";
case 0x8F9C:
return "GL_SIGNED_NORMALIZED";
case 0x8FBB:
return "GL_GPU_DISJOINT_EXT";
case 0x900A:
return "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY";
case 0x900C:
return "GL_SAMPLER_CUBE_MAP_ARRAY";
case 0x900D:
return "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW";
case 0x900E:
return "GL_INT_SAMPLER_CUBE_MAP_ARRAY";
case 0x900F:
return "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY";
case 0x904D:
return "GL_IMAGE_2D";
case 0x904E:
return "GL_IMAGE_3D";
case 0x9050:
return "GL_IMAGE_CUBE";
case 0x9051:
return "GL_IMAGE_BUFFER";
case 0x9053:
return "GL_IMAGE_2D_ARRAY";
case 0x9054:
return "GL_IMAGE_CUBE_MAP_ARRAY";
case 0x9058:
return "GL_INT_IMAGE_2D";
case 0x9059:
return "GL_INT_IMAGE_3D";
case 0x905B:
return "GL_INT_IMAGE_CUBE";
case 0x905C:
return "GL_INT_IMAGE_BUFFER";
case 0x905E:
return "GL_INT_IMAGE_2D_ARRAY";
case 0x905F:
return "GL_INT_IMAGE_CUBE_MAP_ARRAY";
case 0x9063:
return "GL_UNSIGNED_INT_IMAGE_2D";
case 0x9064:
return "GL_UNSIGNED_INT_IMAGE_3D";
case 0x9066:
return "GL_UNSIGNED_INT_IMAGE_CUBE";
case 0x9067:
return "GL_UNSIGNED_INT_IMAGE_BUFFER";
case 0x9069:
return "GL_UNSIGNED_INT_IMAGE_2D_ARRAY";
case 0x906A:
return "GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY";
case 0x906E:
return "GL_IMAGE_BINDING_FORMAT";
case 0x90C8:
return "GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE";
case 0x90C9:
return "GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS";
case 0x90CA:
return "GL_MAX_VERTEX_IMAGE_UNIFORMS";
case 0x90CB:
return "GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS";
case 0x90CC:
return "GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS";
case 0x90CD:
return "GL_MAX_GEOMETRY_IMAGE_UNIFORMS";
case 0x90CE:
return "GL_MAX_FRAGMENT_IMAGE_UNIFORMS";
case 0x90CF:
return "GL_MAX_COMBINED_IMAGE_UNIFORMS";
case 0x90D3:
return "GL_SHADER_STORAGE_BUFFER_BINDING";
case 0x90D4:
return "GL_SHADER_STORAGE_BUFFER_START";
case 0x90D5:
return "GL_SHADER_STORAGE_BUFFER_SIZE";
case 0x90D6:
return "GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS";
case 0x90D7:
return "GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS";
case 0x90D8:
return "GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS";
case 0x90D9:
return "GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS";
case 0x90DA:
return "GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS";
case 0x90DB:
return "GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS";
case 0x90DC:
return "GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS";
case 0x90DD:
return "GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS";
case 0x90DE:
return "GL_MAX_SHADER_STORAGE_BLOCK_SIZE";
case 0x90DF:
return "GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT";
case 0x90EB:
return "GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS";
case 0x90EF:
return "GL_DISPATCH_INDIRECT_BUFFER_BINDING";
case 0x90F3:
return "GL_CONTEXT_ROBUST_ACCESS_EXT";
case 0x9102:
return "GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES";
case 0x9104:
return "GL_TEXTURE_BINDING_2D_MULTISAMPLE";
case 0x9105:
return "GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY";
case 0x9106:
return "GL_TEXTURE_SAMPLES";
case 0x9107:
return "GL_TEXTURE_FIXED_SAMPLE_LOCATIONS";
case 0x9108:
return "GL_SAMPLER_2D_MULTISAMPLE";
case 0x9109:
return "GL_INT_SAMPLER_2D_MULTISAMPLE";
case 0x910A:
return "GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE";
case 0x910B:
return "GL_SAMPLER_2D_MULTISAMPLE_ARRAY";
case 0x910C:
return "GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY";
case 0x910D:
return "GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY";
case 0x910E:
return "GL_MAX_COLOR_TEXTURE_SAMPLES";
case 0x910F:
return "GL_MAX_DEPTH_TEXTURE_SAMPLES";
case 0x9110:
return "GL_MAX_INTEGER_SAMPLES";
case 0x9111:
return "GL_MAX_SERVER_WAIT_TIMEOUT";
case 0x9116:
return "GL_SYNC_FENCE";
case 0x9118:
return "GL_UNSIGNALED";
case 0x9119:
return "GL_SIGNALED";
case 0x9122:
return "GL_MAX_VERTEX_OUTPUT_COMPONENTS";
case 0x9123:
return "GL_MAX_GEOMETRY_INPUT_COMPONENTS";
case 0x9124:
return "GL_MAX_GEOMETRY_OUTPUT_COMPONENTS";
case 0x9125:
return "GL_MAX_FRAGMENT_INPUT_COMPONENTS";
case 0x912F:
return "GL_TEXTURE_IMMUTABLE_FORMAT";
case 0x9143:
return "GL_MAX_DEBUG_MESSAGE_LENGTH";
case 0x9144:
return "GL_MAX_DEBUG_LOGGED_MESSAGES";
case 0x9145:
return "GL_DEBUG_LOGGED_MESSAGES";
case 0x9146:
return "GL_DEBUG_SEVERITY_HIGH_KHR";
case 0x9147:
return "GL_DEBUG_SEVERITY_MEDIUM_KHR";
case 0x9148:
return "GL_DEBUG_SEVERITY_LOW_KHR";
case 0x919D:
return "GL_TEXTURE_BUFFER_OFFSET";
case 0x919E:
return "GL_TEXTURE_BUFFER_SIZE";
case 0x919F:
return "GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT";
case 0x91B0:
return "GL_MAX_SHADER_COMPILER_THREADS_KHR";
case 0x91B1:
return "GL_COMPLETION_STATUS_KHR";
case 0x91BB:
return "GL_MAX_COMPUTE_UNIFORM_BLOCKS";
case 0x91BC:
return "GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS";
case 0x91BD:
return "GL_MAX_COMPUTE_IMAGE_UNIFORMS";
case 0x91BE:
return "GL_MAX_COMPUTE_WORK_GROUP_COUNT";
case 0x91BF:
return "GL_MAX_COMPUTE_WORK_GROUP_SIZE";
case 0x9294:
return "GL_MULTIPLY";
case 0x9295:
return "GL_SCREEN";
case 0x9296:
return "GL_OVERLAY";
case 0x9297:
return "GL_DARKEN";
case 0x9298:
return "GL_LIGHTEN";
case 0x9299:
return "GL_COLORDODGE";
case 0x929A:
return "GL_COLORBURN";
case 0x929B:
return "GL_HARDLIGHT";
case 0x929C:
return "GL_SOFTLIGHT";
case 0x929E:
return "GL_DIFFERENCE";
case 0x92A0:
return "GL_EXCLUSION";
case 0x92AD:
return "GL_HSL_HUE";
case 0x92AE:
return "GL_HSL_SATURATION";
case 0x92AF:
return "GL_HSL_COLOR";
case 0x92B0:
return "GL_HSL_LUMINOSITY";
case 0x92BE:
return "GL_PRIMITIVE_BOUNDING_BOX";
case 0x92C2:
return "GL_ATOMIC_COUNTER_BUFFER_START";
case 0x92C3:
return "GL_ATOMIC_COUNTER_BUFFER_SIZE";
case 0x92CC:
return "GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS";
case 0x92CD:
return "GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS";
case 0x92CE:
return "GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS";
case 0x92CF:
return "GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS";
case 0x92D0:
return "GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS";
case 0x92D1:
return "GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS";
case 0x92D2:
return "GL_MAX_VERTEX_ATOMIC_COUNTERS";
case 0x92D3:
return "GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS";
case 0x92D4:
return "GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS";
case 0x92D5:
return "GL_MAX_GEOMETRY_ATOMIC_COUNTERS";
case 0x92D6:
return "GL_MAX_FRAGMENT_ATOMIC_COUNTERS";
case 0x92D7:
return "GL_MAX_COMBINED_ATOMIC_COUNTERS";
case 0x92D8:
return "GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE";
case 0x92DB:
return "GL_UNSIGNED_INT_ATOMIC_COUNTER";
case 0x92DC:
return "GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS";
case 0x92E0:
return "GL_DEBUG_OUTPUT";
case 0x92E7:
return "GL_IS_PER_PATCH";
case 0x92F9:
return "GL_NAME_LENGTH";
case 0x92FA:
return "GL_TYPE";
case 0x92FB:
return "GL_ARRAY_SIZE";
case 0x92FC:
return "GL_OFFSET";
case 0x92FD:
return "GL_BLOCK_INDEX";
case 0x92FE:
return "GL_ARRAY_STRIDE";
case 0x92FF:
return "GL_MATRIX_STRIDE";
case 0x9300:
return "GL_IS_ROW_MAJOR";
case 0x9301:
return "GL_ATOMIC_COUNTER_BUFFER_INDEX";
case 0x9302:
return "GL_BUFFER_BINDING";
case 0x9303:
return "GL_BUFFER_DATA_SIZE";
case 0x9304:
return "GL_NUM_ACTIVE_VARIABLES";
case 0x9305:
return "GL_ACTIVE_VARIABLES";
case 0x9306:
return "GL_REFERENCED_BY_VERTEX_SHADER";
case 0x9307:
return "GL_REFERENCED_BY_TESS_CONTROL_SHADER";
case 0x9308:
return "GL_REFERENCED_BY_TESS_EVALUATION_SHADER";
case 0x9309:
return "GL_REFERENCED_BY_GEOMETRY_SHADER";
case 0x930A:
return "GL_REFERENCED_BY_FRAGMENT_SHADER";
case 0x930B:
return "GL_REFERENCED_BY_COMPUTE_SHADER";
case 0x930C:
return "GL_TOP_LEVEL_ARRAY_SIZE";
case 0x930D:
return "GL_TOP_LEVEL_ARRAY_STRIDE";
case 0x930E:
return "GL_LOCATION";
case 0x930F:
return "GL_LOCATION_INDEX_EXT";
case 0x9312:
return "GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT";
case 0x9315:
return "GL_MAX_FRAMEBUFFER_WIDTH";
case 0x9316:
return "GL_MAX_FRAMEBUFFER_HEIGHT";
case 0x9317:
return "GL_MAX_FRAMEBUFFER_LAYERS";
case 0x9318:
return "GL_MAX_FRAMEBUFFER_SAMPLES";
case 0x9381:
return "GL_MULTISAMPLE_LINE_WIDTH_RANGE";
case 0x9382:
return "GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY";
case 0x93A0:
return "GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE";
case 0x93A1:
return "GL_BGRA8_EXT";
case 0x93A6:
return "GL_PROGRAM_BINARY_ANGLE";
case 0x93B0:
return "GL_COMPRESSED_RGBA_ASTC_4x4";
case 0x93B1:
return "GL_COMPRESSED_RGBA_ASTC_5x4";
case 0x93B2:
return "GL_COMPRESSED_RGBA_ASTC_5x5";
case 0x93B3:
return "GL_COMPRESSED_RGBA_ASTC_6x5";
case 0x93B4:
return "GL_COMPRESSED_RGBA_ASTC_6x6";
case 0x93B5:
return "GL_COMPRESSED_RGBA_ASTC_8x5";
case 0x93B6:
return "GL_COMPRESSED_RGBA_ASTC_8x6";
case 0x93B7:
return "GL_COMPRESSED_RGBA_ASTC_8x8";
case 0x93B8:
return "GL_COMPRESSED_RGBA_ASTC_10x5";
case 0x93B9:
return "GL_COMPRESSED_RGBA_ASTC_10x6";
case 0x93BA:
return "GL_COMPRESSED_RGBA_ASTC_10x8";
case 0x93BB:
return "GL_COMPRESSED_RGBA_ASTC_10x10";
case 0x93BC:
return "GL_COMPRESSED_RGBA_ASTC_12x10";
case 0x93BD:
return "GL_COMPRESSED_RGBA_ASTC_12x12";
case 0x93D0:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4";
case 0x93D1:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4";
case 0x93D2:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5";
case 0x93D3:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5";
case 0x93D4:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6";
case 0x93D5:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5";
case 0x93D6:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6";
case 0x93D7:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8";
case 0x93D8:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5";
case 0x93D9:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6";
case 0x93DA:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8";
case 0x93DB:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10";
case 0x93DC:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10";
case 0x93DD:
return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12";
case 0x9582:
return "GL_NUM_TILING_TYPES_EXT";
case 0x9583:
return "GL_TILING_TYPES_EXT";
case 0x9584:
return "GL_OPTIMAL_TILING_EXT";
case 0x9585:
return "GL_LINEAR_TILING_EXT";
case 0x9630:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR";
case 0x9631:
return "GL_MAX_VIEWS_OVR";
case 0x9632:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR";
case 0x9633:
return "GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::DepthFunction:
{
switch (value)
{
case 0x200:
return "GL_NEVER";
case 0x201:
return "GL_LESS";
case 0x202:
return "GL_EQUAL";
case 0x203:
return "GL_LEQUAL";
case 0x204:
return "GL_GREATER";
case 0x205:
return "GL_NOTEQUAL";
case 0x206:
return "GL_GEQUAL";
case 0x207:
return "GL_ALWAYS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::DrawBufferMode:
{
switch (value)
{
case 0x0:
return "GL_NONE";
case 0x404:
return "GL_FRONT";
case 0x405:
return "GL_BACK";
case 0x408:
return "GL_FRONT_AND_BACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::DrawElementsType:
{
switch (value)
{
case 0x1401:
return "GL_UNSIGNED_BYTE";
case 0x1403:
return "GL_UNSIGNED_SHORT";
case 0x1405:
return "GL_UNSIGNED_INT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::EnableCap:
{
switch (value)
{
case 0xB44:
return "GL_CULL_FACE";
case 0xB71:
return "GL_DEPTH_TEST";
case 0xB90:
return "GL_STENCIL_TEST";
case 0xBD0:
return "GL_DITHER";
case 0xBE2:
return "GL_BLEND";
case 0xC11:
return "GL_SCISSOR_TEST";
case 0xDE1:
return "GL_TEXTURE_2D";
case 0x8037:
return "GL_POLYGON_OFFSET_FILL";
case 0x8074:
return "GL_VERTEX_ARRAY";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ErrorCode:
{
switch (value)
{
case 0x500:
return "GL_INVALID_ENUM";
case 0x501:
return "GL_INVALID_VALUE";
case 0x502:
return "GL_INVALID_OPERATION";
case 0x503:
return "GL_STACK_OVERFLOW";
case 0x504:
return "GL_STACK_UNDERFLOW";
case 0x505:
return "GL_OUT_OF_MEMORY";
case 0x506:
return "GL_INVALID_FRAMEBUFFER_OPERATION";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ExternalHandleType:
{
switch (value)
{
case 0x9586:
return "GL_HANDLE_TYPE_OPAQUE_FD_EXT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FogCoordinatePointerType:
{
switch (value)
{
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FogMode:
{
switch (value)
{
case 0x2601:
return "GL_LINEAR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FogPointerTypeEXT:
{
switch (value)
{
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FogPointerTypeIBM:
{
switch (value)
{
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FramebufferAttachment:
{
switch (value)
{
case 0x8CDF:
return "GL_MAX_COLOR_ATTACHMENTS";
case 0x8CE0:
return "GL_COLOR_ATTACHMENT0";
case 0x8CE1:
return "GL_COLOR_ATTACHMENT1";
case 0x8CE2:
return "GL_COLOR_ATTACHMENT2";
case 0x8CE3:
return "GL_COLOR_ATTACHMENT3";
case 0x8CE4:
return "GL_COLOR_ATTACHMENT4";
case 0x8CE5:
return "GL_COLOR_ATTACHMENT5";
case 0x8CE6:
return "GL_COLOR_ATTACHMENT6";
case 0x8CE7:
return "GL_COLOR_ATTACHMENT7";
case 0x8CE8:
return "GL_COLOR_ATTACHMENT8";
case 0x8CE9:
return "GL_COLOR_ATTACHMENT9";
case 0x8CEA:
return "GL_COLOR_ATTACHMENT10";
case 0x8CEB:
return "GL_COLOR_ATTACHMENT11";
case 0x8CEC:
return "GL_COLOR_ATTACHMENT12";
case 0x8CED:
return "GL_COLOR_ATTACHMENT13";
case 0x8CEE:
return "GL_COLOR_ATTACHMENT14";
case 0x8CEF:
return "GL_COLOR_ATTACHMENT15";
case 0x8CF0:
return "GL_COLOR_ATTACHMENT16";
case 0x8CF1:
return "GL_COLOR_ATTACHMENT17";
case 0x8CF2:
return "GL_COLOR_ATTACHMENT18";
case 0x8CF3:
return "GL_COLOR_ATTACHMENT19";
case 0x8CF4:
return "GL_COLOR_ATTACHMENT20";
case 0x8CF5:
return "GL_COLOR_ATTACHMENT21";
case 0x8CF6:
return "GL_COLOR_ATTACHMENT22";
case 0x8CF7:
return "GL_COLOR_ATTACHMENT23";
case 0x8CF8:
return "GL_COLOR_ATTACHMENT24";
case 0x8CF9:
return "GL_COLOR_ATTACHMENT25";
case 0x8CFA:
return "GL_COLOR_ATTACHMENT26";
case 0x8CFB:
return "GL_COLOR_ATTACHMENT27";
case 0x8CFC:
return "GL_COLOR_ATTACHMENT28";
case 0x8CFD:
return "GL_COLOR_ATTACHMENT29";
case 0x8CFE:
return "GL_COLOR_ATTACHMENT30";
case 0x8CFF:
return "GL_COLOR_ATTACHMENT31";
case 0x8D00:
return "GL_DEPTH_ATTACHMENT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FramebufferAttachmentParameterName:
{
switch (value)
{
case 0x8210:
return "GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING";
case 0x8211:
return "GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE";
case 0x8212:
return "GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE";
case 0x8213:
return "GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE";
case 0x8214:
return "GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE";
case 0x8215:
return "GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE";
case 0x8216:
return "GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE";
case 0x8217:
return "GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE";
case 0x8CD1:
return "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME";
case 0x8CD2:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL";
case 0x8CD3:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE";
case 0x8CD4:
return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER";
case 0x8DA7:
return "GL_FRAMEBUFFER_ATTACHMENT_LAYERED";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FramebufferParameterName:
{
switch (value)
{
case 0x9310:
return "GL_FRAMEBUFFER_DEFAULT_WIDTH";
case 0x9311:
return "GL_FRAMEBUFFER_DEFAULT_HEIGHT";
case 0x9312:
return "GL_FRAMEBUFFER_DEFAULT_LAYERS";
case 0x9313:
return "GL_FRAMEBUFFER_DEFAULT_SAMPLES";
case 0x9314:
return "GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FramebufferStatus:
{
switch (value)
{
case 0x8219:
return "GL_FRAMEBUFFER_UNDEFINED";
case 0x8CD5:
return "GL_FRAMEBUFFER_COMPLETE";
case 0x8CD6:
return "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT";
case 0x8CD7:
return "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT";
case 0x8CDD:
return "GL_FRAMEBUFFER_UNSUPPORTED";
case 0x8D56:
return "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE";
case 0x8DA8:
return "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FramebufferTarget:
{
switch (value)
{
case 0x8CA8:
return "GL_READ_FRAMEBUFFER";
case 0x8CA9:
return "GL_DRAW_FRAMEBUFFER";
case 0x8D40:
return "GL_FRAMEBUFFER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::FrontFaceDirection:
{
switch (value)
{
case 0x900:
return "GL_CW";
case 0x901:
return "GL_CCW";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::GetFramebufferParameter:
{
switch (value)
{
case 0x80A8:
return "GL_SAMPLE_BUFFERS";
case 0x80A9:
return "GL_SAMPLES";
case 0x8B9A:
return "GL_IMPLEMENTATION_COLOR_READ_TYPE";
case 0x8B9B:
return "GL_IMPLEMENTATION_COLOR_READ_FORMAT";
case 0x9310:
return "GL_FRAMEBUFFER_DEFAULT_WIDTH";
case 0x9311:
return "GL_FRAMEBUFFER_DEFAULT_HEIGHT";
case 0x9312:
return "GL_FRAMEBUFFER_DEFAULT_LAYERS";
case 0x9313:
return "GL_FRAMEBUFFER_DEFAULT_SAMPLES";
case 0x9314:
return "GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::GetPName:
{
switch (value)
{
case 0xB21:
return "GL_LINE_WIDTH";
case 0xB44:
return "GL_CULL_FACE";
case 0xB45:
return "GL_CULL_FACE_MODE";
case 0xB46:
return "GL_FRONT_FACE";
case 0xB70:
return "GL_DEPTH_RANGE";
case 0xB71:
return "GL_DEPTH_TEST";
case 0xB72:
return "GL_DEPTH_WRITEMASK";
case 0xB73:
return "GL_DEPTH_CLEAR_VALUE";
case 0xB74:
return "GL_DEPTH_FUNC";
case 0xB90:
return "GL_STENCIL_TEST";
case 0xB91:
return "GL_STENCIL_CLEAR_VALUE";
case 0xB92:
return "GL_STENCIL_FUNC";
case 0xB93:
return "GL_STENCIL_VALUE_MASK";
case 0xB94:
return "GL_STENCIL_FAIL";
case 0xB95:
return "GL_STENCIL_PASS_DEPTH_FAIL";
case 0xB96:
return "GL_STENCIL_PASS_DEPTH_PASS";
case 0xB97:
return "GL_STENCIL_REF";
case 0xB98:
return "GL_STENCIL_WRITEMASK";
case 0xBA2:
return "GL_VIEWPORT";
case 0xBD0:
return "GL_DITHER";
case 0xBE2:
return "GL_BLEND";
case 0xC02:
return "GL_READ_BUFFER";
case 0xC10:
return "GL_SCISSOR_BOX";
case 0xC11:
return "GL_SCISSOR_TEST";
case 0xC22:
return "GL_COLOR_CLEAR_VALUE";
case 0xC23:
return "GL_COLOR_WRITEMASK";
case 0xCF2:
return "GL_UNPACK_ROW_LENGTH";
case 0xCF3:
return "GL_UNPACK_SKIP_ROWS";
case 0xCF4:
return "GL_UNPACK_SKIP_PIXELS";
case 0xCF5:
return "GL_UNPACK_ALIGNMENT";
case 0xD02:
return "GL_PACK_ROW_LENGTH";
case 0xD03:
return "GL_PACK_SKIP_ROWS";
case 0xD04:
return "GL_PACK_SKIP_PIXELS";
case 0xD05:
return "GL_PACK_ALIGNMENT";
case 0xD33:
return "GL_MAX_TEXTURE_SIZE";
case 0xD3A:
return "GL_MAX_VIEWPORT_DIMS";
case 0xD50:
return "GL_SUBPIXEL_BITS";
case 0xD52:
return "GL_RED_BITS";
case 0xD53:
return "GL_GREEN_BITS";
case 0xD54:
return "GL_BLUE_BITS";
case 0xD55:
return "GL_ALPHA_BITS";
case 0xD56:
return "GL_DEPTH_BITS";
case 0xD57:
return "GL_STENCIL_BITS";
case 0xDE1:
return "GL_TEXTURE_2D";
case 0x2A00:
return "GL_POLYGON_OFFSET_UNITS";
case 0x8037:
return "GL_POLYGON_OFFSET_FILL";
case 0x8038:
return "GL_POLYGON_OFFSET_FACTOR";
case 0x8069:
return "GL_TEXTURE_BINDING_2D";
case 0x806A:
return "GL_TEXTURE_BINDING_3D";
case 0x8074:
return "GL_VERTEX_ARRAY";
case 0x846D:
return "GL_ALIASED_POINT_SIZE_RANGE";
case 0x846E:
return "GL_ALIASED_LINE_WIDTH_RANGE";
case 0x9596:
return "GL_NUM_DEVICE_UUIDS_EXT";
case 0x9597:
return "GL_DEVICE_UUID_EXT";
case 0x9598:
return "GL_DRIVER_UUID_EXT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::GetPointervPName:
{
switch (value)
{
case 0x8244:
return "GL_DEBUG_CALLBACK_FUNCTION";
case 0x8245:
return "GL_DEBUG_CALLBACK_USER_PARAM";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::GetTextureParameter:
{
switch (value)
{
case 0x1000:
return "GL_TEXTURE_WIDTH";
case 0x1001:
return "GL_TEXTURE_HEIGHT";
case 0x1003:
return "GL_TEXTURE_INTERNAL_FORMAT";
case 0x1004:
return "GL_TEXTURE_BORDER_COLOR";
case 0x2800:
return "GL_TEXTURE_MAG_FILTER";
case 0x2801:
return "GL_TEXTURE_MIN_FILTER";
case 0x2802:
return "GL_TEXTURE_WRAP_S";
case 0x2803:
return "GL_TEXTURE_WRAP_T";
case 0x805C:
return "GL_TEXTURE_RED_SIZE";
case 0x805D:
return "GL_TEXTURE_GREEN_SIZE";
case 0x805E:
return "GL_TEXTURE_BLUE_SIZE";
case 0x805F:
return "GL_TEXTURE_ALPHA_SIZE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::GraphicsResetStatus:
{
switch (value)
{
case 0x8253:
return "GL_GUILTY_CONTEXT_RESET";
case 0x8254:
return "GL_INNOCENT_CONTEXT_RESET";
case 0x8255:
return "GL_UNKNOWN_CONTEXT_RESET";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::HintMode:
{
switch (value)
{
case 0x1100:
return "GL_DONT_CARE";
case 0x1101:
return "GL_FASTEST";
case 0x1102:
return "GL_NICEST";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::HintTarget:
{
switch (value)
{
case 0x8192:
return "GL_GENERATE_MIPMAP_HINT";
case 0x8257:
return "GL_PROGRAM_BINARY_RETRIEVABLE_HINT";
case 0x8B8B:
return "GL_FRAGMENT_SHADER_DERIVATIVE_HINT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::IndexPointerType:
{
switch (value)
{
case 0x1402:
return "GL_SHORT";
case 0x1404:
return "GL_INT";
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::InternalFormat:
{
switch (value)
{
case 0x1902:
return "GL_DEPTH_COMPONENT";
case 0x1903:
return "GL_RED";
case 0x1907:
return "GL_RGB";
case 0x1908:
return "GL_RGBA";
case 0x8051:
return "GL_RGB8";
case 0x8052:
return "GL_RGB10_EXT";
case 0x8056:
return "GL_RGBA4";
case 0x8057:
return "GL_RGB5_A1";
case 0x8058:
return "GL_RGBA8";
case 0x8059:
return "GL_RGB10_A2";
case 0x81A5:
return "GL_DEPTH_COMPONENT16";
case 0x8227:
return "GL_RG";
case 0x8229:
return "GL_R8";
case 0x822B:
return "GL_RG8";
case 0x822D:
return "GL_R16F";
case 0x822E:
return "GL_R32F";
case 0x822F:
return "GL_RG16F";
case 0x8230:
return "GL_RG32F";
case 0x8231:
return "GL_R8I";
case 0x8232:
return "GL_R8UI";
case 0x8233:
return "GL_R16I";
case 0x8234:
return "GL_R16UI";
case 0x8235:
return "GL_R32I";
case 0x8236:
return "GL_R32UI";
case 0x8237:
return "GL_RG8I";
case 0x8238:
return "GL_RG8UI";
case 0x8239:
return "GL_RG16I";
case 0x823A:
return "GL_RG16UI";
case 0x823B:
return "GL_RG32I";
case 0x823C:
return "GL_RG32UI";
case 0x84F9:
return "GL_DEPTH_STENCIL";
case 0x8814:
return "GL_RGBA32F";
case 0x881A:
return "GL_RGBA16F";
case 0x881B:
return "GL_RGB16F";
case 0x88F0:
return "GL_DEPTH24_STENCIL8";
case 0x8C3A:
return "GL_R11F_G11F_B10F";
case 0x8C3D:
return "GL_RGB9_E5";
case 0x8C40:
return "GL_SRGB";
case 0x8C41:
return "GL_SRGB8";
case 0x8C43:
return "GL_SRGB8_ALPHA8";
case 0x8CAC:
return "GL_DEPTH_COMPONENT32F";
case 0x8CAD:
return "GL_DEPTH32F_STENCIL8";
case 0x8D70:
return "GL_RGBA32UI";
case 0x8D71:
return "GL_RGB32UI";
case 0x8D76:
return "GL_RGBA16UI";
case 0x8D77:
return "GL_RGB16UI";
case 0x8D7C:
return "GL_RGBA8UI";
case 0x8D7D:
return "GL_RGB8UI";
case 0x8D82:
return "GL_RGBA32I";
case 0x8D83:
return "GL_RGB32I";
case 0x8D88:
return "GL_RGBA16I";
case 0x8D89:
return "GL_RGB16I";
case 0x8D8E:
return "GL_RGBA8I";
case 0x8D8F:
return "GL_RGB8I";
case 0x8F94:
return "GL_R8_SNORM";
case 0x8F95:
return "GL_RG8_SNORM";
case 0x8F96:
return "GL_RGB8_SNORM";
case 0x8F97:
return "GL_RGBA8_SNORM";
case 0x906F:
return "GL_RGB10_A2UI";
case 0x9270:
return "GL_COMPRESSED_R11_EAC";
case 0x9271:
return "GL_COMPRESSED_SIGNED_R11_EAC";
case 0x9272:
return "GL_COMPRESSED_RG11_EAC";
case 0x9273:
return "GL_COMPRESSED_SIGNED_RG11_EAC";
case 0x9274:
return "GL_COMPRESSED_RGB8_ETC2";
case 0x9275:
return "GL_COMPRESSED_SRGB8_ETC2";
case 0x9276:
return "GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2";
case 0x9277:
return "GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2";
case 0x9278:
return "GL_COMPRESSED_RGBA8_ETC2_EAC";
case 0x9279:
return "GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::InternalFormatPName:
{
switch (value)
{
case 0x80A9:
return "GL_SAMPLES";
case 0x86A1:
return "GL_TEXTURE_COMPRESSED";
case 0x90C7:
return "GL_IMAGE_FORMAT_COMPATIBILITY_TYPE";
case 0x9380:
return "GL_NUM_SAMPLE_COUNTS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::LightEnvModeSGIX:
{
switch (value)
{
case 0x1E01:
return "GL_REPLACE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ListNameType:
{
switch (value)
{
case 0x1400:
return "GL_BYTE";
case 0x1401:
return "GL_UNSIGNED_BYTE";
case 0x1402:
return "GL_SHORT";
case 0x1403:
return "GL_UNSIGNED_SHORT";
case 0x1404:
return "GL_INT";
case 0x1405:
return "GL_UNSIGNED_INT";
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::LogicOp:
{
switch (value)
{
case 0x150A:
return "GL_INVERT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::MapBufferUsageMask:
{
switch (value)
{
case 0x1:
return "GL_MAP_READ_BIT";
case 0x2:
return "GL_MAP_WRITE_BIT";
case 0x4:
return "GL_MAP_INVALIDATE_RANGE_BIT";
case 0x8:
return "GL_MAP_INVALIDATE_BUFFER_BIT";
case 0x10:
return "GL_MAP_FLUSH_EXPLICIT_BIT";
case 0x20:
return "GL_MAP_UNSYNCHRONIZED_BIT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::MaterialFace:
{
switch (value)
{
case 0x404:
return "GL_FRONT";
case 0x405:
return "GL_BACK";
case 0x408:
return "GL_FRONT_AND_BACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::MatrixMode:
{
switch (value)
{
case 0x1702:
return "GL_TEXTURE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::MemoryBarrierMask:
{
switch (value)
{
case 0x1:
return "GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT";
case 0x2:
return "GL_ELEMENT_ARRAY_BARRIER_BIT";
case 0x4:
return "GL_UNIFORM_BARRIER_BIT";
case 0x8:
return "GL_TEXTURE_FETCH_BARRIER_BIT";
case 0x20:
return "GL_SHADER_IMAGE_ACCESS_BARRIER_BIT";
case 0x40:
return "GL_COMMAND_BARRIER_BIT";
case 0x80:
return "GL_PIXEL_BUFFER_BARRIER_BIT";
case 0x100:
return "GL_TEXTURE_UPDATE_BARRIER_BIT";
case 0x200:
return "GL_BUFFER_UPDATE_BARRIER_BIT";
case 0x400:
return "GL_FRAMEBUFFER_BARRIER_BIT";
case 0x800:
return "GL_TRANSFORM_FEEDBACK_BARRIER_BIT";
case 0x1000:
return "GL_ATOMIC_COUNTER_BARRIER_BIT";
case 0x2000:
return "GL_SHADER_STORAGE_BARRIER_BIT";
case 0xFFFFFFFF:
return "GL_ALL_BARRIER_BITS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::MemoryObjectParameterName:
{
switch (value)
{
case 0x9581:
return "GL_DEDICATED_MEMORY_OBJECT_EXT";
case 0x959B:
return "GL_PROTECTED_MEMORY_OBJECT_EXT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::NormalPointerType:
{
switch (value)
{
case 0x1400:
return "GL_BYTE";
case 0x1402:
return "GL_SHORT";
case 0x1404:
return "GL_INT";
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ObjectIdentifier:
{
switch (value)
{
case 0x1702:
return "GL_TEXTURE";
case 0x8074:
return "GL_VERTEX_ARRAY";
case 0x82E0:
return "GL_BUFFER";
case 0x82E1:
return "GL_SHADER";
case 0x82E2:
return "GL_PROGRAM";
case 0x82E3:
return "GL_QUERY";
case 0x82E4:
return "GL_PROGRAM_PIPELINE";
case 0x82E6:
return "GL_SAMPLER";
case 0x8D40:
return "GL_FRAMEBUFFER";
case 0x8D41:
return "GL_RENDERBUFFER";
case 0x8E22:
return "GL_TRANSFORM_FEEDBACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PatchParameterName:
{
switch (value)
{
case 0x8E72:
return "GL_PATCH_VERTICES";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PathFillMode:
{
switch (value)
{
case 0x150A:
return "GL_INVERT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PathFontStyle:
{
switch (value)
{
case 0x0:
return "GL_NONE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PathGenMode:
{
switch (value)
{
case 0x0:
return "GL_NONE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PathTransformType:
{
switch (value)
{
case 0x0:
return "GL_NONE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PipelineParameterName:
{
switch (value)
{
case 0x8259:
return "GL_ACTIVE_PROGRAM";
case 0x8B30:
return "GL_FRAGMENT_SHADER";
case 0x8B31:
return "GL_VERTEX_SHADER";
case 0x8B84:
return "GL_INFO_LOG_LENGTH";
case 0x8DD9:
return "GL_GEOMETRY_SHADER";
case 0x8E87:
return "GL_TESS_EVALUATION_SHADER";
case 0x8E88:
return "GL_TESS_CONTROL_SHADER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PixelCopyType:
{
switch (value)
{
case 0x1800:
return "GL_COLOR";
case 0x1801:
return "GL_DEPTH";
case 0x1802:
return "GL_STENCIL";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PixelFormat:
{
switch (value)
{
case 0x1403:
return "GL_UNSIGNED_SHORT";
case 0x1405:
return "GL_UNSIGNED_INT";
case 0x1901:
return "GL_STENCIL_INDEX";
case 0x1902:
return "GL_DEPTH_COMPONENT";
case 0x1903:
return "GL_RED";
case 0x1904:
return "GL_GREEN";
case 0x1905:
return "GL_BLUE";
case 0x1906:
return "GL_ALPHA";
case 0x1907:
return "GL_RGB";
case 0x1908:
return "GL_RGBA";
case 0x1909:
return "GL_LUMINANCE";
case 0x190A:
return "GL_LUMINANCE_ALPHA";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PixelStoreParameter:
{
switch (value)
{
case 0xCF2:
return "GL_UNPACK_ROW_LENGTH";
case 0xCF3:
return "GL_UNPACK_SKIP_ROWS";
case 0xCF4:
return "GL_UNPACK_SKIP_PIXELS";
case 0xCF5:
return "GL_UNPACK_ALIGNMENT";
case 0xD02:
return "GL_PACK_ROW_LENGTH";
case 0xD03:
return "GL_PACK_SKIP_ROWS";
case 0xD04:
return "GL_PACK_SKIP_PIXELS";
case 0xD05:
return "GL_PACK_ALIGNMENT";
case 0x806D:
return "GL_UNPACK_SKIP_IMAGES";
case 0x806E:
return "GL_UNPACK_IMAGE_HEIGHT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PixelTexGenMode:
{
switch (value)
{
case 0x0:
return "GL_NONE";
case 0x1907:
return "GL_RGB";
case 0x1908:
return "GL_RGBA";
case 0x1909:
return "GL_LUMINANCE";
case 0x190A:
return "GL_LUMINANCE_ALPHA";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PixelType:
{
switch (value)
{
case 0x1400:
return "GL_BYTE";
case 0x1401:
return "GL_UNSIGNED_BYTE";
case 0x1402:
return "GL_SHORT";
case 0x1403:
return "GL_UNSIGNED_SHORT";
case 0x1404:
return "GL_INT";
case 0x1405:
return "GL_UNSIGNED_INT";
case 0x1406:
return "GL_FLOAT";
case 0x8033:
return "GL_UNSIGNED_SHORT_4_4_4_4";
case 0x8034:
return "GL_UNSIGNED_SHORT_5_5_5_1";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PrecisionType:
{
switch (value)
{
case 0x8DF0:
return "GL_LOW_FLOAT";
case 0x8DF1:
return "GL_MEDIUM_FLOAT";
case 0x8DF2:
return "GL_HIGH_FLOAT";
case 0x8DF3:
return "GL_LOW_INT";
case 0x8DF4:
return "GL_MEDIUM_INT";
case 0x8DF5:
return "GL_HIGH_INT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::PrimitiveType:
{
switch (value)
{
case 0x0:
return "GL_POINTS";
case 0x1:
return "GL_LINES";
case 0x2:
return "GL_LINE_LOOP";
case 0x3:
return "GL_LINE_STRIP";
case 0x4:
return "GL_TRIANGLES";
case 0x5:
return "GL_TRIANGLE_STRIP";
case 0x6:
return "GL_TRIANGLE_FAN";
case 0x7:
return "GL_QUADS";
case 0xA:
return "GL_LINES_ADJACENCY";
case 0xB:
return "GL_LINE_STRIP_ADJACENCY";
case 0xC:
return "GL_TRIANGLES_ADJACENCY";
case 0xD:
return "GL_TRIANGLE_STRIP_ADJACENCY";
case 0xE:
return "GL_PATCHES";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ProgramInterface:
{
switch (value)
{
case 0x8C8E:
return "GL_TRANSFORM_FEEDBACK_BUFFER";
case 0x92E1:
return "GL_UNIFORM";
case 0x92E2:
return "GL_UNIFORM_BLOCK";
case 0x92E3:
return "GL_PROGRAM_INPUT";
case 0x92E4:
return "GL_PROGRAM_OUTPUT";
case 0x92E5:
return "GL_BUFFER_VARIABLE";
case 0x92E6:
return "GL_SHADER_STORAGE_BLOCK";
case 0x92F4:
return "GL_TRANSFORM_FEEDBACK_VARYING";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ProgramInterfacePName:
{
switch (value)
{
case 0x92F5:
return "GL_ACTIVE_RESOURCES";
case 0x92F6:
return "GL_MAX_NAME_LENGTH";
case 0x92F7:
return "GL_MAX_NUM_ACTIVE_VARIABLES";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ProgramParameterPName:
{
switch (value)
{
case 0x8257:
return "GL_PROGRAM_BINARY_RETRIEVABLE_HINT";
case 0x8258:
return "GL_PROGRAM_SEPARABLE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ProgramPropertyARB:
{
switch (value)
{
case 0x8267:
return "GL_COMPUTE_WORK_GROUP_SIZE";
case 0x8741:
return "GL_PROGRAM_BINARY_LENGTH";
case 0x8916:
return "GL_GEOMETRY_VERTICES_OUT";
case 0x8917:
return "GL_GEOMETRY_INPUT_TYPE";
case 0x8918:
return "GL_GEOMETRY_OUTPUT_TYPE";
case 0x8A35:
return "GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH";
case 0x8A36:
return "GL_ACTIVE_UNIFORM_BLOCKS";
case 0x8B80:
return "GL_DELETE_STATUS";
case 0x8B82:
return "GL_LINK_STATUS";
case 0x8B83:
return "GL_VALIDATE_STATUS";
case 0x8B84:
return "GL_INFO_LOG_LENGTH";
case 0x8B85:
return "GL_ATTACHED_SHADERS";
case 0x8B86:
return "GL_ACTIVE_UNIFORMS";
case 0x8B87:
return "GL_ACTIVE_UNIFORM_MAX_LENGTH";
case 0x8B89:
return "GL_ACTIVE_ATTRIBUTES";
case 0x8B8A:
return "GL_ACTIVE_ATTRIBUTE_MAX_LENGTH";
case 0x8C76:
return "GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH";
case 0x8C7F:
return "GL_TRANSFORM_FEEDBACK_BUFFER_MODE";
case 0x8C83:
return "GL_TRANSFORM_FEEDBACK_VARYINGS";
case 0x92D9:
return "GL_ACTIVE_ATOMIC_COUNTER_BUFFERS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::QueryObjectParameterName:
{
switch (value)
{
case 0x8866:
return "GL_QUERY_RESULT";
case 0x8867:
return "GL_QUERY_RESULT_AVAILABLE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::QueryParameterName:
{
switch (value)
{
case 0x8865:
return "GL_CURRENT_QUERY";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::QueryTarget:
{
switch (value)
{
case 0x8C2F:
return "GL_ANY_SAMPLES_PASSED";
case 0x8C87:
return "GL_PRIMITIVES_GENERATED";
case 0x8C88:
return "GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN";
case 0x8D6A:
return "GL_ANY_SAMPLES_PASSED_CONSERVATIVE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ReadBufferMode:
{
switch (value)
{
case 0x404:
return "GL_FRONT";
case 0x405:
return "GL_BACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::RenderbufferParameterName:
{
switch (value)
{
case 0x8CAB:
return "GL_RENDERBUFFER_SAMPLES";
case 0x8D42:
return "GL_RENDERBUFFER_WIDTH";
case 0x8D43:
return "GL_RENDERBUFFER_HEIGHT";
case 0x8D44:
return "GL_RENDERBUFFER_INTERNAL_FORMAT";
case 0x8D50:
return "GL_RENDERBUFFER_RED_SIZE";
case 0x8D51:
return "GL_RENDERBUFFER_GREEN_SIZE";
case 0x8D52:
return "GL_RENDERBUFFER_BLUE_SIZE";
case 0x8D53:
return "GL_RENDERBUFFER_ALPHA_SIZE";
case 0x8D54:
return "GL_RENDERBUFFER_DEPTH_SIZE";
case 0x8D55:
return "GL_RENDERBUFFER_STENCIL_SIZE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::RenderbufferTarget:
{
switch (value)
{
case 0x8D41:
return "GL_RENDERBUFFER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::SamplerParameterName:
{
switch (value)
{
case 0x1004:
return "GL_TEXTURE_BORDER_COLOR";
case 0x2800:
return "GL_TEXTURE_MAG_FILTER";
case 0x2801:
return "GL_TEXTURE_MIN_FILTER";
case 0x2802:
return "GL_TEXTURE_WRAP_S";
case 0x2803:
return "GL_TEXTURE_WRAP_T";
case 0x8072:
return "GL_TEXTURE_WRAP_R";
case 0x813A:
return "GL_TEXTURE_MIN_LOD";
case 0x813B:
return "GL_TEXTURE_MAX_LOD";
case 0x884C:
return "GL_TEXTURE_COMPARE_MODE";
case 0x884D:
return "GL_TEXTURE_COMPARE_FUNC";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ShaderParameterName:
{
switch (value)
{
case 0x8B4F:
return "GL_SHADER_TYPE";
case 0x8B80:
return "GL_DELETE_STATUS";
case 0x8B81:
return "GL_COMPILE_STATUS";
case 0x8B84:
return "GL_INFO_LOG_LENGTH";
case 0x8B88:
return "GL_SHADER_SOURCE_LENGTH";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::ShaderType:
{
switch (value)
{
case 0x8B30:
return "GL_FRAGMENT_SHADER";
case 0x8B31:
return "GL_VERTEX_SHADER";
case 0x8DD9:
return "GL_GEOMETRY_SHADER";
case 0x8E87:
return "GL_TESS_EVALUATION_SHADER";
case 0x8E88:
return "GL_TESS_CONTROL_SHADER";
case 0x91B9:
return "GL_COMPUTE_SHADER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::StencilFaceDirection:
{
switch (value)
{
case 0x404:
return "GL_FRONT";
case 0x405:
return "GL_BACK";
case 0x408:
return "GL_FRONT_AND_BACK";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::StencilFunction:
{
switch (value)
{
case 0x200:
return "GL_NEVER";
case 0x201:
return "GL_LESS";
case 0x202:
return "GL_EQUAL";
case 0x203:
return "GL_LEQUAL";
case 0x204:
return "GL_GREATER";
case 0x205:
return "GL_NOTEQUAL";
case 0x206:
return "GL_GEQUAL";
case 0x207:
return "GL_ALWAYS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::StencilOp:
{
switch (value)
{
case 0x0:
return "GL_ZERO";
case 0x150A:
return "GL_INVERT";
case 0x1E00:
return "GL_KEEP";
case 0x1E01:
return "GL_REPLACE";
case 0x1E02:
return "GL_INCR";
case 0x1E03:
return "GL_DECR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::StringName:
{
switch (value)
{
case 0x1F00:
return "GL_VENDOR";
case 0x1F01:
return "GL_RENDERER";
case 0x1F02:
return "GL_VERSION";
case 0x1F03:
return "GL_EXTENSIONS";
case 0x8B8C:
return "GL_SHADING_LANGUAGE_VERSION";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::SubroutineParameterName:
{
switch (value)
{
case 0x8A38:
return "GL_UNIFORM_SIZE";
case 0x8A39:
return "GL_UNIFORM_NAME_LENGTH";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::SyncCondition:
{
switch (value)
{
case 0x9117:
return "GL_SYNC_GPU_COMMANDS_COMPLETE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::SyncObjectMask:
{
switch (value)
{
case 0x1:
return "GL_SYNC_FLUSH_COMMANDS_BIT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::SyncParameterName:
{
switch (value)
{
case 0x9112:
return "GL_OBJECT_TYPE";
case 0x9113:
return "GL_SYNC_CONDITION";
case 0x9114:
return "GL_SYNC_STATUS";
case 0x9115:
return "GL_SYNC_FLAGS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::SyncStatus:
{
switch (value)
{
case 0x911A:
return "GL_ALREADY_SIGNALED";
case 0x911B:
return "GL_TIMEOUT_EXPIRED";
case 0x911C:
return "GL_CONDITION_SATISFIED";
case 0x911D:
return "GL_WAIT_FAILED";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TexCoordPointerType:
{
switch (value)
{
case 0x1402:
return "GL_SHORT";
case 0x1404:
return "GL_INT";
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureEnvMode:
{
switch (value)
{
case 0xBE2:
return "GL_BLEND";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureLayout:
{
switch (value)
{
case 0x9530:
return "GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT";
case 0x9531:
return "GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT";
case 0x958D:
return "GL_LAYOUT_GENERAL_EXT";
case 0x958E:
return "GL_LAYOUT_COLOR_ATTACHMENT_EXT";
case 0x958F:
return "GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT";
case 0x9590:
return "GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT";
case 0x9591:
return "GL_LAYOUT_SHADER_READ_ONLY_EXT";
case 0x9592:
return "GL_LAYOUT_TRANSFER_SRC_EXT";
case 0x9593:
return "GL_LAYOUT_TRANSFER_DST_EXT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureMagFilter:
{
switch (value)
{
case 0x2600:
return "GL_NEAREST";
case 0x2601:
return "GL_LINEAR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureMinFilter:
{
switch (value)
{
case 0x2600:
return "GL_NEAREST";
case 0x2601:
return "GL_LINEAR";
case 0x2700:
return "GL_NEAREST_MIPMAP_NEAREST";
case 0x2701:
return "GL_LINEAR_MIPMAP_NEAREST";
case 0x2702:
return "GL_NEAREST_MIPMAP_LINEAR";
case 0x2703:
return "GL_LINEAR_MIPMAP_LINEAR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureParameterName:
{
switch (value)
{
case 0x1000:
return "GL_TEXTURE_WIDTH";
case 0x1001:
return "GL_TEXTURE_HEIGHT";
case 0x1003:
return "GL_TEXTURE_INTERNAL_FORMAT";
case 0x1004:
return "GL_TEXTURE_BORDER_COLOR";
case 0x2800:
return "GL_TEXTURE_MAG_FILTER";
case 0x2801:
return "GL_TEXTURE_MIN_FILTER";
case 0x2802:
return "GL_TEXTURE_WRAP_S";
case 0x2803:
return "GL_TEXTURE_WRAP_T";
case 0x805C:
return "GL_TEXTURE_RED_SIZE";
case 0x805D:
return "GL_TEXTURE_GREEN_SIZE";
case 0x805E:
return "GL_TEXTURE_BLUE_SIZE";
case 0x805F:
return "GL_TEXTURE_ALPHA_SIZE";
case 0x8072:
return "GL_TEXTURE_WRAP_R";
case 0x813A:
return "GL_TEXTURE_MIN_LOD";
case 0x813B:
return "GL_TEXTURE_MAX_LOD";
case 0x813C:
return "GL_TEXTURE_BASE_LEVEL";
case 0x813D:
return "GL_TEXTURE_MAX_LEVEL";
case 0x884C:
return "GL_TEXTURE_COMPARE_MODE";
case 0x884D:
return "GL_TEXTURE_COMPARE_FUNC";
case 0x8E42:
return "GL_TEXTURE_SWIZZLE_R";
case 0x8E43:
return "GL_TEXTURE_SWIZZLE_G";
case 0x8E44:
return "GL_TEXTURE_SWIZZLE_B";
case 0x8E45:
return "GL_TEXTURE_SWIZZLE_A";
case 0x90EA:
return "GL_DEPTH_STENCIL_TEXTURE_MODE";
case 0x9580:
return "GL_TEXTURE_TILING_EXT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureTarget:
{
switch (value)
{
case 0xDE1:
return "GL_TEXTURE_2D";
case 0x806F:
return "GL_TEXTURE_3D";
case 0x8513:
return "GL_TEXTURE_CUBE_MAP";
case 0x8515:
return "GL_TEXTURE_CUBE_MAP_POSITIVE_X";
case 0x8516:
return "GL_TEXTURE_CUBE_MAP_NEGATIVE_X";
case 0x8517:
return "GL_TEXTURE_CUBE_MAP_POSITIVE_Y";
case 0x8518:
return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y";
case 0x8519:
return "GL_TEXTURE_CUBE_MAP_POSITIVE_Z";
case 0x851A:
return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z";
case 0x8C1A:
return "GL_TEXTURE_2D_ARRAY";
case 0x9009:
return "GL_TEXTURE_CUBE_MAP_ARRAY";
case 0x9100:
return "GL_TEXTURE_2D_MULTISAMPLE";
case 0x9102:
return "GL_TEXTURE_2D_MULTISAMPLE_ARRAY";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureUnit:
{
switch (value)
{
case 0x84C0:
return "GL_TEXTURE0";
case 0x84C1:
return "GL_TEXTURE1";
case 0x84C2:
return "GL_TEXTURE2";
case 0x84C3:
return "GL_TEXTURE3";
case 0x84C4:
return "GL_TEXTURE4";
case 0x84C5:
return "GL_TEXTURE5";
case 0x84C6:
return "GL_TEXTURE6";
case 0x84C7:
return "GL_TEXTURE7";
case 0x84C8:
return "GL_TEXTURE8";
case 0x84C9:
return "GL_TEXTURE9";
case 0x84CA:
return "GL_TEXTURE10";
case 0x84CB:
return "GL_TEXTURE11";
case 0x84CC:
return "GL_TEXTURE12";
case 0x84CD:
return "GL_TEXTURE13";
case 0x84CE:
return "GL_TEXTURE14";
case 0x84CF:
return "GL_TEXTURE15";
case 0x84D0:
return "GL_TEXTURE16";
case 0x84D1:
return "GL_TEXTURE17";
case 0x84D2:
return "GL_TEXTURE18";
case 0x84D3:
return "GL_TEXTURE19";
case 0x84D4:
return "GL_TEXTURE20";
case 0x84D5:
return "GL_TEXTURE21";
case 0x84D6:
return "GL_TEXTURE22";
case 0x84D7:
return "GL_TEXTURE23";
case 0x84D8:
return "GL_TEXTURE24";
case 0x84D9:
return "GL_TEXTURE25";
case 0x84DA:
return "GL_TEXTURE26";
case 0x84DB:
return "GL_TEXTURE27";
case 0x84DC:
return "GL_TEXTURE28";
case 0x84DD:
return "GL_TEXTURE29";
case 0x84DE:
return "GL_TEXTURE30";
case 0x84DF:
return "GL_TEXTURE31";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TextureWrapMode:
{
switch (value)
{
case 0x2901:
return "GL_REPEAT";
case 0x812D:
return "GL_CLAMP_TO_BORDER";
case 0x812F:
return "GL_CLAMP_TO_EDGE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::TransformFeedbackPName:
{
switch (value)
{
case 0x8C84:
return "GL_TRANSFORM_FEEDBACK_BUFFER_START";
case 0x8C85:
return "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE";
case 0x8C8F:
return "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING";
case 0x8E23:
return "GL_TRANSFORM_FEEDBACK_PAUSED";
case 0x8E24:
return "GL_TRANSFORM_FEEDBACK_ACTIVE";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::UniformBlockPName:
{
switch (value)
{
case 0x8A3F:
return "GL_UNIFORM_BLOCK_BINDING";
case 0x8A40:
return "GL_UNIFORM_BLOCK_DATA_SIZE";
case 0x8A41:
return "GL_UNIFORM_BLOCK_NAME_LENGTH";
case 0x8A42:
return "GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS";
case 0x8A43:
return "GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES";
case 0x8A44:
return "GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER";
case 0x8A46:
return "GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::UniformPName:
{
switch (value)
{
case 0x8A37:
return "GL_UNIFORM_TYPE";
case 0x8A38:
return "GL_UNIFORM_SIZE";
case 0x8A39:
return "GL_UNIFORM_NAME_LENGTH";
case 0x8A3A:
return "GL_UNIFORM_BLOCK_INDEX";
case 0x8A3B:
return "GL_UNIFORM_OFFSET";
case 0x8A3C:
return "GL_UNIFORM_ARRAY_STRIDE";
case 0x8A3D:
return "GL_UNIFORM_MATRIX_STRIDE";
case 0x8A3E:
return "GL_UNIFORM_IS_ROW_MAJOR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::UseProgramStageMask:
{
switch (value)
{
case 0x1:
return "GL_VERTEX_SHADER_BIT";
case 0x2:
return "GL_FRAGMENT_SHADER_BIT";
case 0x4:
return "GL_GEOMETRY_SHADER_BIT";
case 0x8:
return "GL_TESS_CONTROL_SHADER_BIT";
case 0x10:
return "GL_TESS_EVALUATION_SHADER_BIT";
case 0x20:
return "GL_COMPUTE_SHADER_BIT";
case 0xFFFFFFFF:
return "GL_ALL_SHADER_BITS";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexArrayPName:
{
switch (value)
{
case 0x82D5:
return "GL_VERTEX_ATTRIB_RELATIVE_OFFSET";
case 0x8622:
return "GL_VERTEX_ATTRIB_ARRAY_ENABLED";
case 0x8623:
return "GL_VERTEX_ATTRIB_ARRAY_SIZE";
case 0x8624:
return "GL_VERTEX_ATTRIB_ARRAY_STRIDE";
case 0x8625:
return "GL_VERTEX_ATTRIB_ARRAY_TYPE";
case 0x886A:
return "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED";
case 0x88FD:
return "GL_VERTEX_ATTRIB_ARRAY_INTEGER";
case 0x88FE:
return "GL_VERTEX_ATTRIB_ARRAY_DIVISOR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexAttribEnum:
{
switch (value)
{
case 0x8622:
return "GL_VERTEX_ATTRIB_ARRAY_ENABLED";
case 0x8623:
return "GL_VERTEX_ATTRIB_ARRAY_SIZE";
case 0x8624:
return "GL_VERTEX_ATTRIB_ARRAY_STRIDE";
case 0x8625:
return "GL_VERTEX_ATTRIB_ARRAY_TYPE";
case 0x8626:
return "GL_CURRENT_VERTEX_ATTRIB";
case 0x886A:
return "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED";
case 0x889F:
return "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING";
case 0x88FD:
return "GL_VERTEX_ATTRIB_ARRAY_INTEGER";
case 0x88FE:
return "GL_VERTEX_ATTRIB_ARRAY_DIVISOR";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexAttribPointerType:
{
switch (value)
{
case 0x1400:
return "GL_BYTE";
case 0x1401:
return "GL_UNSIGNED_BYTE";
case 0x1402:
return "GL_SHORT";
case 0x1403:
return "GL_UNSIGNED_SHORT";
case 0x1404:
return "GL_INT";
case 0x1405:
return "GL_UNSIGNED_INT";
case 0x1406:
return "GL_FLOAT";
case 0x140B:
return "GL_HALF_FLOAT";
case 0x140C:
return "GL_FIXED";
case 0x8368:
return "GL_UNSIGNED_INT_2_10_10_10_REV";
case 0x8C3B:
return "GL_UNSIGNED_INT_10F_11F_11F_REV";
case 0x8D9F:
return "GL_INT_2_10_10_10_REV";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexAttribType:
{
switch (value)
{
case 0x1400:
return "GL_BYTE";
case 0x1401:
return "GL_UNSIGNED_BYTE";
case 0x1402:
return "GL_SHORT";
case 0x1403:
return "GL_UNSIGNED_SHORT";
case 0x1404:
return "GL_INT";
case 0x1405:
return "GL_UNSIGNED_INT";
case 0x1406:
return "GL_FLOAT";
case 0x140B:
return "GL_HALF_FLOAT";
case 0x140C:
return "GL_FIXED";
case 0x8368:
return "GL_UNSIGNED_INT_2_10_10_10_REV";
case 0x8C3B:
return "GL_UNSIGNED_INT_10F_11F_11F_REV";
case 0x8D9F:
return "GL_INT_2_10_10_10_REV";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexBufferObjectParameter:
{
switch (value)
{
case 0x8764:
return "GL_BUFFER_SIZE";
case 0x8765:
return "GL_BUFFER_USAGE";
case 0x88BC:
return "GL_BUFFER_MAPPED";
case 0x911F:
return "GL_BUFFER_ACCESS_FLAGS";
case 0x9120:
return "GL_BUFFER_MAP_LENGTH";
case 0x9121:
return "GL_BUFFER_MAP_OFFSET";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexBufferObjectUsage:
{
switch (value)
{
case 0x88E0:
return "GL_STREAM_DRAW";
case 0x88E1:
return "GL_STREAM_READ";
case 0x88E2:
return "GL_STREAM_COPY";
case 0x88E4:
return "GL_STATIC_DRAW";
case 0x88E5:
return "GL_STATIC_READ";
case 0x88E6:
return "GL_STATIC_COPY";
case 0x88E8:
return "GL_DYNAMIC_DRAW";
case 0x88E9:
return "GL_DYNAMIC_READ";
case 0x88EA:
return "GL_DYNAMIC_COPY";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexPointerType:
{
switch (value)
{
case 0x1402:
return "GL_SHORT";
case 0x1404:
return "GL_INT";
case 0x1406:
return "GL_FLOAT";
default:
return kUnknownGLenumString;
}
}
case GLenumGroup::VertexProvokingMode:
{
switch (value)
{
case 0x8E4D:
return "GL_FIRST_VERTEX_CONVENTION";
case 0x8E4E:
return "GL_LAST_VERTEX_CONVENTION";
default:
return kUnknownGLenumString;
}
}
default:
return kUnknownGLenumString;
}
}
std::string GLbitfieldToString(GLenumGroup enumGroup, unsigned int value)
{
std::stringstream st;
const angle::BitSet<32> bitSet(value);
bool first = true;
for (const auto index : bitSet)
{
if (!first)
{
st << " | ";
}
first = false;
unsigned int mask = 1u << index;
OutputGLenumString(st, enumGroup, mask);
}
return st.str();
}
} // namespace gl