1/* WARNING: This is auto-generated file. Do not modify, since changes will 2 * be lost! Modify the generating script instead. 3 * 4 * Generated from Khronos GL API description (gl.xml) revision a3ee0ed08111d44ac3cb863d9e3e81a7c28f9d90. 5 */ 6 7const char* getErrorName (int value) 8{ 9 switch (value) 10 { 11 case GL_NO_ERROR: return "GL_NO_ERROR"; 12 case GL_INVALID_ENUM: return "GL_INVALID_ENUM"; 13 case GL_INVALID_VALUE: return "GL_INVALID_VALUE"; 14 case GL_INVALID_OPERATION: return "GL_INVALID_OPERATION"; 15 case GL_OUT_OF_MEMORY: return "GL_OUT_OF_MEMORY"; 16 case GL_INVALID_FRAMEBUFFER_OPERATION: return "GL_INVALID_FRAMEBUFFER_OPERATION"; 17 case GL_CONTEXT_LOST: return "GL_CONTEXT_LOST"; 18 default: return DE_NULL; 19 } 20} 21 22const char* getTypeName (int value) 23{ 24 switch (value) 25 { 26 case GL_BYTE: return "GL_BYTE"; 27 case GL_UNSIGNED_BYTE: return "GL_UNSIGNED_BYTE"; 28 case GL_SHORT: return "GL_SHORT"; 29 case GL_UNSIGNED_SHORT: return "GL_UNSIGNED_SHORT"; 30 case GL_INT: return "GL_INT"; 31 case GL_UNSIGNED_INT: return "GL_UNSIGNED_INT"; 32 case GL_FLOAT: return "GL_FLOAT"; 33 case GL_FIXED: return "GL_FIXED"; 34 case GL_UNSIGNED_SHORT_5_6_5: return "GL_UNSIGNED_SHORT_5_6_5"; 35 case GL_UNSIGNED_SHORT_4_4_4_4: return "GL_UNSIGNED_SHORT_4_4_4_4"; 36 case GL_UNSIGNED_SHORT_5_5_5_1: return "GL_UNSIGNED_SHORT_5_5_5_1"; 37 case GL_HALF_FLOAT: return "GL_HALF_FLOAT"; 38 case GL_INT_2_10_10_10_REV: return "GL_INT_2_10_10_10_REV"; 39 case GL_UNSIGNED_INT_2_10_10_10_REV: return "GL_UNSIGNED_INT_2_10_10_10_REV"; 40 case GL_UNSIGNED_INT_10F_11F_11F_REV: return "GL_UNSIGNED_INT_10F_11F_11F_REV"; 41 case GL_UNSIGNED_INT_5_9_9_9_REV: return "GL_UNSIGNED_INT_5_9_9_9_REV"; 42 case GL_UNSIGNED_INT_24_8: return "GL_UNSIGNED_INT_24_8"; 43 case GL_FLOAT_32_UNSIGNED_INT_24_8_REV: return "GL_FLOAT_32_UNSIGNED_INT_24_8_REV"; 44 case GL_SIGNED_NORMALIZED: return "GL_SIGNED_NORMALIZED"; 45 case GL_UNSIGNED_NORMALIZED: return "GL_UNSIGNED_NORMALIZED"; 46 case GL_HALF_FLOAT_OES: return "GL_HALF_FLOAT_OES"; 47 default: return DE_NULL; 48 } 49} 50 51const char* getParamQueryName (int value) 52{ 53 switch (value) 54 { 55 case GL_LINE_WIDTH: return "GL_LINE_WIDTH"; 56 case GL_ALIASED_POINT_SIZE_RANGE: return "GL_ALIASED_POINT_SIZE_RANGE"; 57 case GL_ALIASED_LINE_WIDTH_RANGE: return "GL_ALIASED_LINE_WIDTH_RANGE"; 58 case GL_CULL_FACE_MODE: return "GL_CULL_FACE_MODE"; 59 case GL_FRONT_FACE: return "GL_FRONT_FACE"; 60 case GL_DEPTH_RANGE: return "GL_DEPTH_RANGE"; 61 case GL_DEPTH_WRITEMASK: return "GL_DEPTH_WRITEMASK"; 62 case GL_DEPTH_CLEAR_VALUE: return "GL_DEPTH_CLEAR_VALUE"; 63 case GL_DEPTH_FUNC: return "GL_DEPTH_FUNC"; 64 case GL_STENCIL_CLEAR_VALUE: return "GL_STENCIL_CLEAR_VALUE"; 65 case GL_STENCIL_FUNC: return "GL_STENCIL_FUNC"; 66 case GL_STENCIL_FAIL: return "GL_STENCIL_FAIL"; 67 case GL_STENCIL_PASS_DEPTH_FAIL: return "GL_STENCIL_PASS_DEPTH_FAIL"; 68 case GL_STENCIL_PASS_DEPTH_PASS: return "GL_STENCIL_PASS_DEPTH_PASS"; 69 case GL_STENCIL_REF: return "GL_STENCIL_REF"; 70 case GL_STENCIL_VALUE_MASK: return "GL_STENCIL_VALUE_MASK"; 71 case GL_STENCIL_WRITEMASK: return "GL_STENCIL_WRITEMASK"; 72 case GL_STENCIL_BACK_FUNC: return "GL_STENCIL_BACK_FUNC"; 73 case GL_STENCIL_BACK_FAIL: return "GL_STENCIL_BACK_FAIL"; 74 case GL_STENCIL_BACK_PASS_DEPTH_FAIL: return "GL_STENCIL_BACK_PASS_DEPTH_FAIL"; 75 case GL_STENCIL_BACK_PASS_DEPTH_PASS: return "GL_STENCIL_BACK_PASS_DEPTH_PASS"; 76 case GL_STENCIL_BACK_REF: return "GL_STENCIL_BACK_REF"; 77 case GL_STENCIL_BACK_VALUE_MASK: return "GL_STENCIL_BACK_VALUE_MASK"; 78 case GL_STENCIL_BACK_WRITEMASK: return "GL_STENCIL_BACK_WRITEMASK"; 79 case GL_VIEWPORT: return "GL_VIEWPORT"; 80 case GL_SCISSOR_BOX: return "GL_SCISSOR_BOX"; 81 case GL_SCISSOR_TEST: return "GL_SCISSOR_TEST"; 82 case GL_COLOR_CLEAR_VALUE: return "GL_COLOR_CLEAR_VALUE"; 83 case GL_COLOR_WRITEMASK: return "GL_COLOR_WRITEMASK"; 84 case GL_UNPACK_ALIGNMENT: return "GL_UNPACK_ALIGNMENT"; 85 case GL_PACK_ALIGNMENT: return "GL_PACK_ALIGNMENT"; 86 case GL_MAX_TEXTURE_SIZE: return "GL_MAX_TEXTURE_SIZE"; 87 case GL_MAX_VIEWPORT_DIMS: return "GL_MAX_VIEWPORT_DIMS"; 88 case GL_SUBPIXEL_BITS: return "GL_SUBPIXEL_BITS"; 89 case GL_RED_BITS: return "GL_RED_BITS"; 90 case GL_GREEN_BITS: return "GL_GREEN_BITS"; 91 case GL_BLUE_BITS: return "GL_BLUE_BITS"; 92 case GL_ALPHA_BITS: return "GL_ALPHA_BITS"; 93 case GL_DEPTH_BITS: return "GL_DEPTH_BITS"; 94 case GL_STENCIL_BITS: return "GL_STENCIL_BITS"; 95 case GL_POLYGON_OFFSET_UNITS: return "GL_POLYGON_OFFSET_UNITS"; 96 case GL_POLYGON_OFFSET_FILL: return "GL_POLYGON_OFFSET_FILL"; 97 case GL_POLYGON_OFFSET_FACTOR: return "GL_POLYGON_OFFSET_FACTOR"; 98 case GL_TEXTURE_BINDING_2D: return "GL_TEXTURE_BINDING_2D"; 99 case GL_SAMPLE_BUFFERS: return "GL_SAMPLE_BUFFERS"; 100 case GL_SAMPLES: return "GL_SAMPLES"; 101 case GL_SAMPLE_COVERAGE_VALUE: return "GL_SAMPLE_COVERAGE_VALUE"; 102 case GL_SAMPLE_COVERAGE_INVERT: return "GL_SAMPLE_COVERAGE_INVERT"; 103 case GL_MAX_CUBE_MAP_TEXTURE_SIZE: return "GL_MAX_CUBE_MAP_TEXTURE_SIZE"; 104 case GL_MAX_RENDERBUFFER_SIZE: return "GL_MAX_RENDERBUFFER_SIZE"; 105 case GL_MAX_VERTEX_ATTRIBS: return "GL_MAX_VERTEX_ATTRIBS"; 106 case GL_MAX_VERTEX_UNIFORM_VECTORS: return "GL_MAX_VERTEX_UNIFORM_VECTORS"; 107 case GL_MAX_VARYING_VECTORS: return "GL_MAX_VARYING_VECTORS"; 108 case GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS: return "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS"; 109 case GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS: return "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS"; 110 case GL_MAX_TEXTURE_IMAGE_UNITS: return "GL_MAX_TEXTURE_IMAGE_UNITS"; 111 case GL_MAX_FRAGMENT_UNIFORM_VECTORS: return "GL_MAX_FRAGMENT_UNIFORM_VECTORS"; 112 default: return DE_NULL; 113 } 114} 115 116const char* getProgramParamName (int value) 117{ 118 switch (value) 119 { 120 case GL_ACTIVE_ATTRIBUTES: return "GL_ACTIVE_ATTRIBUTES"; 121 case GL_ACTIVE_ATTRIBUTE_MAX_LENGTH: return "GL_ACTIVE_ATTRIBUTE_MAX_LENGTH"; 122 case GL_ACTIVE_UNIFORMS: return "GL_ACTIVE_UNIFORMS"; 123 case GL_ACTIVE_UNIFORM_BLOCKS: return "GL_ACTIVE_UNIFORM_BLOCKS"; 124 case GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH: return "GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH"; 125 case GL_ACTIVE_UNIFORM_MAX_LENGTH: return "GL_ACTIVE_UNIFORM_MAX_LENGTH"; 126 case GL_ATTACHED_SHADERS: return "GL_ATTACHED_SHADERS"; 127 case GL_DELETE_STATUS: return "GL_DELETE_STATUS"; 128 case GL_INFO_LOG_LENGTH: return "GL_INFO_LOG_LENGTH"; 129 case GL_LINK_STATUS: return "GL_LINK_STATUS"; 130 case GL_PROGRAM_BINARY_RETRIEVABLE_HINT: return "GL_PROGRAM_BINARY_RETRIEVABLE_HINT"; 131 case GL_TRANSFORM_FEEDBACK_BUFFER_MODE: return "GL_TRANSFORM_FEEDBACK_BUFFER_MODE"; 132 case GL_TRANSFORM_FEEDBACK_VARYINGS: return "GL_TRANSFORM_FEEDBACK_VARYINGS"; 133 case GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH: return "GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"; 134 case GL_VALIDATE_STATUS: return "GL_VALIDATE_STATUS"; 135 case GL_GEOMETRY_INPUT_TYPE: return "GL_GEOMETRY_INPUT_TYPE"; 136 case GL_GEOMETRY_OUTPUT_TYPE: return "GL_GEOMETRY_OUTPUT_TYPE"; 137 case GL_GEOMETRY_VERTICES_OUT: return "GL_GEOMETRY_VERTICES_OUT"; 138 case GL_GEOMETRY_SHADER_INVOCATIONS: return "GL_GEOMETRY_SHADER_INVOCATIONS"; 139 case GL_PROGRAM_SEPARABLE: return "GL_PROGRAM_SEPARABLE"; 140 case GL_COMPUTE_WORK_GROUP_SIZE: return "GL_COMPUTE_WORK_GROUP_SIZE"; 141 case GL_ACTIVE_ATOMIC_COUNTER_BUFFERS: return "GL_ACTIVE_ATOMIC_COUNTER_BUFFERS"; 142 case GL_TESS_CONTROL_OUTPUT_VERTICES: return "GL_TESS_CONTROL_OUTPUT_VERTICES"; 143 case GL_TESS_GEN_MODE: return "GL_TESS_GEN_MODE"; 144 case GL_TESS_GEN_SPACING: return "GL_TESS_GEN_SPACING"; 145 case GL_TESS_GEN_VERTEX_ORDER: return "GL_TESS_GEN_VERTEX_ORDER"; 146 case GL_TESS_GEN_POINT_MODE: return "GL_TESS_GEN_POINT_MODE"; 147 default: return DE_NULL; 148 } 149} 150 151const char* getUniformParamName (int value) 152{ 153 switch (value) 154 { 155 case GL_UNIFORM_TYPE: return "GL_UNIFORM_TYPE"; 156 case GL_UNIFORM_SIZE: return "GL_UNIFORM_SIZE"; 157 case GL_UNIFORM_NAME_LENGTH: return "GL_UNIFORM_NAME_LENGTH"; 158 case GL_UNIFORM_BLOCK_INDEX: return "GL_UNIFORM_BLOCK_INDEX"; 159 case GL_UNIFORM_OFFSET: return "GL_UNIFORM_OFFSET"; 160 case GL_UNIFORM_ARRAY_STRIDE: return "GL_UNIFORM_ARRAY_STRIDE"; 161 case GL_UNIFORM_MATRIX_STRIDE: return "GL_UNIFORM_MATRIX_STRIDE"; 162 case GL_UNIFORM_IS_ROW_MAJOR: return "GL_UNIFORM_IS_ROW_MAJOR"; 163 default: return DE_NULL; 164 } 165} 166 167const char* getFramebufferAttachmentName (int value) 168{ 169 switch (value) 170 { 171 case GL_COLOR_ATTACHMENT0: return "GL_COLOR_ATTACHMENT0"; 172 case GL_COLOR_ATTACHMENT1: return "GL_COLOR_ATTACHMENT1"; 173 case GL_COLOR_ATTACHMENT2: return "GL_COLOR_ATTACHMENT2"; 174 case GL_COLOR_ATTACHMENT3: return "GL_COLOR_ATTACHMENT3"; 175 case GL_COLOR_ATTACHMENT4: return "GL_COLOR_ATTACHMENT4"; 176 case GL_COLOR_ATTACHMENT5: return "GL_COLOR_ATTACHMENT5"; 177 case GL_COLOR_ATTACHMENT6: return "GL_COLOR_ATTACHMENT6"; 178 case GL_COLOR_ATTACHMENT7: return "GL_COLOR_ATTACHMENT7"; 179 case GL_COLOR_ATTACHMENT8: return "GL_COLOR_ATTACHMENT8"; 180 case GL_COLOR_ATTACHMENT9: return "GL_COLOR_ATTACHMENT9"; 181 case GL_COLOR_ATTACHMENT10: return "GL_COLOR_ATTACHMENT10"; 182 case GL_COLOR_ATTACHMENT11: return "GL_COLOR_ATTACHMENT11"; 183 case GL_COLOR_ATTACHMENT12: return "GL_COLOR_ATTACHMENT12"; 184 case GL_COLOR_ATTACHMENT13: return "GL_COLOR_ATTACHMENT13"; 185 case GL_COLOR_ATTACHMENT14: return "GL_COLOR_ATTACHMENT14"; 186 case GL_COLOR_ATTACHMENT15: return "GL_COLOR_ATTACHMENT15"; 187 case GL_DEPTH_ATTACHMENT: return "GL_DEPTH_ATTACHMENT"; 188 case GL_STENCIL_ATTACHMENT: return "GL_STENCIL_ATTACHMENT"; 189 case GL_DEPTH_STENCIL_ATTACHMENT: return "GL_DEPTH_STENCIL_ATTACHMENT"; 190 case GL_BACK: return "GL_BACK"; 191 case GL_FRONT_LEFT: return "GL_FRONT_LEFT"; 192 case GL_FRONT_RIGHT: return "GL_FRONT_RIGHT"; 193 case GL_BACK_LEFT: return "GL_BACK_LEFT"; 194 case GL_BACK_RIGHT: return "GL_BACK_RIGHT"; 195 case GL_DEPTH: return "GL_DEPTH"; 196 case GL_STENCIL: return "GL_STENCIL"; 197 default: return DE_NULL; 198 } 199} 200 201const char* getFramebufferAttachmentParameterName (int value) 202{ 203 switch (value) 204 { 205 case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: return "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE"; 206 case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: return "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME"; 207 case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL"; 208 case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE"; 209 case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: return "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER"; 210 case GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: return "GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE"; 211 case GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: return "GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING"; 212 case GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE: return "GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE"; 213 case GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: return "GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE"; 214 case GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: return "GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE"; 215 case GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: return "GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE"; 216 case GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: return "GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE"; 217 case GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: return "GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE"; 218 case GL_FRAMEBUFFER_ATTACHMENT_LAYERED: return "GL_FRAMEBUFFER_ATTACHMENT_LAYERED"; 219 default: return DE_NULL; 220 } 221} 222 223const char* getFramebufferTargetName (int value) 224{ 225 switch (value) 226 { 227 case GL_FRAMEBUFFER: return "GL_FRAMEBUFFER"; 228 case GL_RENDERBUFFER: return "GL_RENDERBUFFER"; 229 case GL_DRAW_FRAMEBUFFER: return "GL_DRAW_FRAMEBUFFER"; 230 case GL_READ_FRAMEBUFFER: return "GL_READ_FRAMEBUFFER"; 231 default: return DE_NULL; 232 } 233} 234 235const char* getFramebufferStatusName (int value) 236{ 237 switch (value) 238 { 239 case GL_FRAMEBUFFER_COMPLETE: return "GL_FRAMEBUFFER_COMPLETE"; 240 case GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: return "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT"; 241 case GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: return "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT"; 242 case GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS: return "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS"; 243 case GL_FRAMEBUFFER_UNSUPPORTED: return "GL_FRAMEBUFFER_UNSUPPORTED"; 244 case GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: return "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE"; 245 case GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS: return "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS"; 246 default: return DE_NULL; 247 } 248} 249 250const char* getFramebufferAttachmentTypeName (int value) 251{ 252 switch (value) 253 { 254 case GL_NONE: return "GL_NONE"; 255 case GL_FRAMEBUFFER_DEFAULT: return "GL_FRAMEBUFFER_DEFAULT"; 256 case GL_TEXTURE: return "GL_TEXTURE"; 257 case GL_RENDERBUFFER: return "GL_RENDERBUFFER"; 258 default: return DE_NULL; 259 } 260} 261 262const char* getFramebufferColorEncodingName (int value) 263{ 264 switch (value) 265 { 266 case GL_LINEAR: return "GL_LINEAR"; 267 case GL_SRGB: return "GL_SRGB"; 268 default: return DE_NULL; 269 } 270} 271 272const char* getFramebufferParameterName (int value) 273{ 274 switch (value) 275 { 276 case GL_FRAMEBUFFER_DEFAULT_WIDTH: return "GL_FRAMEBUFFER_DEFAULT_WIDTH"; 277 case GL_FRAMEBUFFER_DEFAULT_HEIGHT: return "GL_FRAMEBUFFER_DEFAULT_HEIGHT"; 278 case GL_FRAMEBUFFER_DEFAULT_SAMPLES: return "GL_FRAMEBUFFER_DEFAULT_SAMPLES"; 279 case GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS: return "GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS"; 280 case GL_FRAMEBUFFER_DEFAULT_LAYERS: return "GL_FRAMEBUFFER_DEFAULT_LAYERS"; 281 default: return DE_NULL; 282 } 283} 284 285const char* getRenderbufferParameterName (int value) 286{ 287 switch (value) 288 { 289 case GL_RENDERBUFFER_WIDTH: return "GL_RENDERBUFFER_WIDTH"; 290 case GL_RENDERBUFFER_HEIGHT: return "GL_RENDERBUFFER_HEIGHT"; 291 case GL_RENDERBUFFER_INTERNAL_FORMAT: return "GL_RENDERBUFFER_INTERNAL_FORMAT"; 292 case GL_RENDERBUFFER_RED_SIZE: return "GL_RENDERBUFFER_RED_SIZE"; 293 case GL_RENDERBUFFER_GREEN_SIZE: return "GL_RENDERBUFFER_GREEN_SIZE"; 294 case GL_RENDERBUFFER_BLUE_SIZE: return "GL_RENDERBUFFER_BLUE_SIZE"; 295 case GL_RENDERBUFFER_ALPHA_SIZE: return "GL_RENDERBUFFER_ALPHA_SIZE"; 296 case GL_RENDERBUFFER_DEPTH_SIZE: return "GL_RENDERBUFFER_DEPTH_SIZE"; 297 case GL_RENDERBUFFER_STENCIL_SIZE: return "GL_RENDERBUFFER_STENCIL_SIZE"; 298 case GL_RENDERBUFFER_SAMPLES: return "GL_RENDERBUFFER_SAMPLES"; 299 default: return DE_NULL; 300 } 301} 302 303const char* getPrimitiveTypeName (int value) 304{ 305 switch (value) 306 { 307 case GL_POINTS: return "GL_POINTS"; 308 case GL_LINES: return "GL_LINES"; 309 case GL_LINE_STRIP: return "GL_LINE_STRIP"; 310 case GL_LINE_LOOP: return "GL_LINE_LOOP"; 311 case GL_TRIANGLES: return "GL_TRIANGLES"; 312 case GL_TRIANGLE_STRIP: return "GL_TRIANGLE_STRIP"; 313 case GL_TRIANGLE_FAN: return "GL_TRIANGLE_FAN"; 314 case GL_LINES_ADJACENCY: return "GL_LINES_ADJACENCY"; 315 case GL_LINE_STRIP_ADJACENCY: return "GL_LINE_STRIP_ADJACENCY"; 316 case GL_TRIANGLES_ADJACENCY: return "GL_TRIANGLES_ADJACENCY"; 317 case GL_TRIANGLE_STRIP_ADJACENCY: return "GL_TRIANGLE_STRIP_ADJACENCY"; 318 default: return DE_NULL; 319 } 320} 321 322const char* getBlendFactorName (int value) 323{ 324 switch (value) 325 { 326 case GL_ZERO: return "GL_ZERO"; 327 case GL_ONE: return "GL_ONE"; 328 case GL_SRC_ALPHA_SATURATE: return "GL_SRC_ALPHA_SATURATE"; 329 case GL_SRC_COLOR: return "GL_SRC_COLOR"; 330 case GL_ONE_MINUS_SRC_COLOR: return "GL_ONE_MINUS_SRC_COLOR"; 331 case GL_SRC_ALPHA: return "GL_SRC_ALPHA"; 332 case GL_ONE_MINUS_SRC_ALPHA: return "GL_ONE_MINUS_SRC_ALPHA"; 333 case GL_SRC1_COLOR: return "GL_SRC1_COLOR"; 334 case GL_ONE_MINUS_SRC1_COLOR: return "GL_ONE_MINUS_SRC1_COLOR"; 335 case GL_SRC1_ALPHA: return "GL_SRC1_ALPHA"; 336 case GL_ONE_MINUS_SRC1_ALPHA: return "GL_ONE_MINUS_SRC1_ALPHA"; 337 case GL_DST_COLOR: return "GL_DST_COLOR"; 338 case GL_ONE_MINUS_DST_COLOR: return "GL_ONE_MINUS_DST_COLOR"; 339 case GL_DST_ALPHA: return "GL_DST_ALPHA"; 340 case GL_ONE_MINUS_DST_ALPHA: return "GL_ONE_MINUS_DST_ALPHA"; 341 case GL_CONSTANT_COLOR: return "GL_CONSTANT_COLOR"; 342 case GL_ONE_MINUS_CONSTANT_COLOR: return "GL_ONE_MINUS_CONSTANT_COLOR"; 343 case GL_CONSTANT_ALPHA: return "GL_CONSTANT_ALPHA"; 344 case GL_ONE_MINUS_CONSTANT_ALPHA: return "GL_ONE_MINUS_CONSTANT_ALPHA"; 345 default: return DE_NULL; 346 } 347} 348 349const char* getBlendEquationName (int value) 350{ 351 switch (value) 352 { 353 case GL_FUNC_ADD: return "GL_FUNC_ADD"; 354 case GL_FUNC_SUBTRACT: return "GL_FUNC_SUBTRACT"; 355 case GL_FUNC_REVERSE_SUBTRACT: return "GL_FUNC_REVERSE_SUBTRACT"; 356 case GL_MIN: return "GL_MIN"; 357 case GL_MAX: return "GL_MAX"; 358 case GL_MULTIPLY_KHR: return "GL_MULTIPLY_KHR"; 359 case GL_SCREEN_KHR: return "GL_SCREEN_KHR"; 360 case GL_OVERLAY_KHR: return "GL_OVERLAY_KHR"; 361 case GL_DARKEN_KHR: return "GL_DARKEN_KHR"; 362 case GL_LIGHTEN_KHR: return "GL_LIGHTEN_KHR"; 363 case GL_COLORDODGE_KHR: return "GL_COLORDODGE_KHR"; 364 case GL_COLORBURN_KHR: return "GL_COLORBURN_KHR"; 365 case GL_HARDLIGHT_KHR: return "GL_HARDLIGHT_KHR"; 366 case GL_SOFTLIGHT_KHR: return "GL_SOFTLIGHT_KHR"; 367 case GL_DIFFERENCE_KHR: return "GL_DIFFERENCE_KHR"; 368 case GL_EXCLUSION_KHR: return "GL_EXCLUSION_KHR"; 369 case GL_HSL_HUE_KHR: return "GL_HSL_HUE_KHR"; 370 case GL_HSL_SATURATION_KHR: return "GL_HSL_SATURATION_KHR"; 371 case GL_HSL_COLOR_KHR: return "GL_HSL_COLOR_KHR"; 372 case GL_HSL_LUMINOSITY_KHR: return "GL_HSL_LUMINOSITY_KHR"; 373 default: return DE_NULL; 374 } 375} 376 377const char* getBufferTargetName (int value) 378{ 379 switch (value) 380 { 381 case GL_ARRAY_BUFFER: return "GL_ARRAY_BUFFER"; 382 case GL_ELEMENT_ARRAY_BUFFER: return "GL_ELEMENT_ARRAY_BUFFER"; 383 case GL_COPY_READ_BUFFER: return "GL_COPY_READ_BUFFER"; 384 case GL_COPY_WRITE_BUFFER: return "GL_COPY_WRITE_BUFFER"; 385 case GL_PIXEL_PACK_BUFFER: return "GL_PIXEL_PACK_BUFFER"; 386 case GL_PIXEL_UNPACK_BUFFER: return "GL_PIXEL_UNPACK_BUFFER"; 387 case GL_TRANSFORM_FEEDBACK_BUFFER: return "GL_TRANSFORM_FEEDBACK_BUFFER"; 388 case GL_UNIFORM_BUFFER: return "GL_UNIFORM_BUFFER"; 389 case GL_DRAW_INDIRECT_BUFFER: return "GL_DRAW_INDIRECT_BUFFER"; 390 case GL_SHADER_STORAGE_BUFFER: return "GL_SHADER_STORAGE_BUFFER"; 391 case GL_TEXTURE_BUFFER: return "GL_TEXTURE_BUFFER"; 392 case GL_DISPATCH_INDIRECT_BUFFER: return "GL_DISPATCH_INDIRECT_BUFFER"; 393 case GL_ATOMIC_COUNTER_BUFFER: return "GL_ATOMIC_COUNTER_BUFFER"; 394 default: return DE_NULL; 395 } 396} 397 398const char* getBufferBindingName (int value) 399{ 400 switch (value) 401 { 402 case GL_ARRAY_BUFFER_BINDING: return "GL_ARRAY_BUFFER_BINDING"; 403 case GL_ELEMENT_ARRAY_BUFFER_BINDING: return "GL_ELEMENT_ARRAY_BUFFER_BINDING"; 404 default: return DE_NULL; 405 } 406} 407 408const char* getUsageName (int value) 409{ 410 switch (value) 411 { 412 case GL_STREAM_DRAW: return "GL_STREAM_DRAW"; 413 case GL_STREAM_READ: return "GL_STREAM_READ"; 414 case GL_STREAM_COPY: return "GL_STREAM_COPY"; 415 case GL_STATIC_DRAW: return "GL_STATIC_DRAW"; 416 case GL_STATIC_READ: return "GL_STATIC_READ"; 417 case GL_STATIC_COPY: return "GL_STATIC_COPY"; 418 case GL_DYNAMIC_DRAW: return "GL_DYNAMIC_DRAW"; 419 case GL_DYNAMIC_READ: return "GL_DYNAMIC_READ"; 420 case GL_DYNAMIC_COPY: return "GL_DYNAMIC_COPY"; 421 default: return DE_NULL; 422 } 423} 424 425const char* getBufferQueryName (int value) 426{ 427 switch (value) 428 { 429 case GL_BUFFER_SIZE: return "GL_BUFFER_SIZE"; 430 case GL_BUFFER_USAGE: return "GL_BUFFER_USAGE"; 431 case GL_BUFFER_ACCESS_FLAGS: return "GL_BUFFER_ACCESS_FLAGS"; 432 case GL_BUFFER_MAPPED: return "GL_BUFFER_MAPPED"; 433 case GL_BUFFER_MAP_OFFSET: return "GL_BUFFER_MAP_OFFSET"; 434 case GL_BUFFER_MAP_LENGTH: return "GL_BUFFER_MAP_LENGTH"; 435 default: return DE_NULL; 436 } 437} 438 439const char* getFaceName (int value) 440{ 441 switch (value) 442 { 443 case GL_FRONT: return "GL_FRONT"; 444 case GL_BACK: return "GL_BACK"; 445 case GL_FRONT_AND_BACK: return "GL_FRONT_AND_BACK"; 446 default: return DE_NULL; 447 } 448} 449 450const char* getCompareFuncName (int value) 451{ 452 switch (value) 453 { 454 case GL_NEVER: return "GL_NEVER"; 455 case GL_LESS: return "GL_LESS"; 456 case GL_LEQUAL: return "GL_LEQUAL"; 457 case GL_GREATER: return "GL_GREATER"; 458 case GL_EQUAL: return "GL_EQUAL"; 459 case GL_NOTEQUAL: return "GL_NOTEQUAL"; 460 case GL_GEQUAL: return "GL_GEQUAL"; 461 case GL_ALWAYS: return "GL_ALWAYS"; 462 default: return DE_NULL; 463 } 464} 465 466const char* getEnableCapName (int value) 467{ 468 switch (value) 469 { 470 case GL_TEXTURE_2D: return "GL_TEXTURE_2D"; 471 case GL_CULL_FACE: return "GL_CULL_FACE"; 472 case GL_BLEND: return "GL_BLEND"; 473 case GL_DITHER: return "GL_DITHER"; 474 case GL_STENCIL_TEST: return "GL_STENCIL_TEST"; 475 case GL_DEPTH_TEST: return "GL_DEPTH_TEST"; 476 case GL_SCISSOR_TEST: return "GL_SCISSOR_TEST"; 477 case GL_POLYGON_OFFSET_FILL: return "GL_POLYGON_OFFSET_FILL"; 478 case GL_SAMPLE_ALPHA_TO_COVERAGE: return "GL_SAMPLE_ALPHA_TO_COVERAGE"; 479 case GL_SAMPLE_COVERAGE: return "GL_SAMPLE_COVERAGE"; 480 case GL_PRIMITIVE_RESTART_FIXED_INDEX: return "GL_PRIMITIVE_RESTART_FIXED_INDEX"; 481 case GL_RASTERIZER_DISCARD: return "GL_RASTERIZER_DISCARD"; 482 case GL_FRAMEBUFFER_SRGB: return "GL_FRAMEBUFFER_SRGB"; 483 case GL_SAMPLE_SHADING: return "GL_SAMPLE_SHADING"; 484 case GL_DEPTH_CLAMP: return "GL_DEPTH_CLAMP"; 485 case GL_PRIMITIVE_RESTART: return "GL_PRIMITIVE_RESTART"; 486 case GL_SAMPLE_MASK: return "GL_SAMPLE_MASK"; 487 case GL_DEBUG_OUTPUT: return "GL_DEBUG_OUTPUT"; 488 case GL_DEBUG_OUTPUT_SYNCHRONOUS: return "GL_DEBUG_OUTPUT_SYNCHRONOUS"; 489 case GL_BLEND_ADVANCED_COHERENT_KHR: return "GL_BLEND_ADVANCED_COHERENT_KHR"; 490 default: return DE_NULL; 491 } 492} 493 494const char* getIndexedEnableCapName (int value) 495{ 496 switch (value) 497 { 498 case GL_BLEND: return "GL_BLEND"; 499 default: return DE_NULL; 500 } 501} 502 503const char* getWindingName (int value) 504{ 505 switch (value) 506 { 507 case GL_CW: return "GL_CW"; 508 case GL_CCW: return "GL_CCW"; 509 default: return DE_NULL; 510 } 511} 512 513const char* getHintModeName (int value) 514{ 515 switch (value) 516 { 517 case GL_DONT_CARE: return "GL_DONT_CARE"; 518 case GL_FASTEST: return "GL_FASTEST"; 519 case GL_NICEST: return "GL_NICEST"; 520 default: return DE_NULL; 521 } 522} 523 524const char* getHintName (int value) 525{ 526 switch (value) 527 { 528 case GL_GENERATE_MIPMAP_HINT: return "GL_GENERATE_MIPMAP_HINT"; 529 default: return DE_NULL; 530 } 531} 532 533const char* getStencilOpName (int value) 534{ 535 switch (value) 536 { 537 case GL_ZERO: return "GL_ZERO"; 538 case GL_KEEP: return "GL_KEEP"; 539 case GL_REPLACE: return "GL_REPLACE"; 540 case GL_INCR: return "GL_INCR"; 541 case GL_DECR: return "GL_DECR"; 542 case GL_INVERT: return "GL_INVERT"; 543 case GL_INCR_WRAP: return "GL_INCR_WRAP"; 544 case GL_DECR_WRAP: return "GL_DECR_WRAP"; 545 default: return DE_NULL; 546 } 547} 548 549const char* getShaderTypeName (int value) 550{ 551 switch (value) 552 { 553 case GL_VERTEX_SHADER: return "GL_VERTEX_SHADER"; 554 case GL_FRAGMENT_SHADER: return "GL_FRAGMENT_SHADER"; 555 case GL_COMPUTE_SHADER: return "GL_COMPUTE_SHADER"; 556 case GL_TESS_CONTROL_SHADER: return "GL_TESS_CONTROL_SHADER"; 557 case GL_TESS_EVALUATION_SHADER: return "GL_TESS_EVALUATION_SHADER"; 558 case GL_GEOMETRY_SHADER: return "GL_GEOMETRY_SHADER"; 559 default: return DE_NULL; 560 } 561} 562 563const char* getBufferName (int value) 564{ 565 switch (value) 566 { 567 case GL_COLOR: return "GL_COLOR"; 568 case GL_DEPTH: return "GL_DEPTH"; 569 case GL_STENCIL: return "GL_STENCIL"; 570 case GL_DEPTH_STENCIL: return "GL_DEPTH_STENCIL"; 571 default: return DE_NULL; 572 } 573} 574 575const char* getInvalidateAttachmentName (int value) 576{ 577 switch (value) 578 { 579 case GL_COLOR: return "GL_COLOR"; 580 case GL_DEPTH: return "GL_DEPTH"; 581 case GL_STENCIL: return "GL_STENCIL"; 582 case GL_COLOR_ATTACHMENT0: return "GL_COLOR_ATTACHMENT0"; 583 case GL_COLOR_ATTACHMENT1: return "GL_COLOR_ATTACHMENT1"; 584 case GL_COLOR_ATTACHMENT2: return "GL_COLOR_ATTACHMENT2"; 585 case GL_COLOR_ATTACHMENT3: return "GL_COLOR_ATTACHMENT3"; 586 case GL_COLOR_ATTACHMENT4: return "GL_COLOR_ATTACHMENT4"; 587 case GL_COLOR_ATTACHMENT5: return "GL_COLOR_ATTACHMENT5"; 588 case GL_COLOR_ATTACHMENT6: return "GL_COLOR_ATTACHMENT6"; 589 case GL_COLOR_ATTACHMENT7: return "GL_COLOR_ATTACHMENT7"; 590 case GL_DEPTH_ATTACHMENT: return "GL_DEPTH_ATTACHMENT"; 591 case GL_STENCIL_ATTACHMENT: return "GL_STENCIL_ATTACHMENT"; 592 case GL_DEPTH_STENCIL_ATTACHMENT: return "GL_DEPTH_STENCIL_ATTACHMENT"; 593 default: return DE_NULL; 594 } 595} 596 597const char* getDrawReadBufferName (int value) 598{ 599 switch (value) 600 { 601 case GL_COLOR: return "GL_COLOR"; 602 case GL_DEPTH: return "GL_DEPTH"; 603 case GL_STENCIL: return "GL_STENCIL"; 604 case GL_BACK: return "GL_BACK"; 605 case GL_NONE: return "GL_NONE"; 606 case GL_COLOR_ATTACHMENT0: return "GL_COLOR_ATTACHMENT0"; 607 case GL_COLOR_ATTACHMENT1: return "GL_COLOR_ATTACHMENT1"; 608 case GL_COLOR_ATTACHMENT2: return "GL_COLOR_ATTACHMENT2"; 609 case GL_COLOR_ATTACHMENT3: return "GL_COLOR_ATTACHMENT3"; 610 case GL_COLOR_ATTACHMENT4: return "GL_COLOR_ATTACHMENT4"; 611 case GL_COLOR_ATTACHMENT5: return "GL_COLOR_ATTACHMENT5"; 612 case GL_COLOR_ATTACHMENT6: return "GL_COLOR_ATTACHMENT6"; 613 case GL_COLOR_ATTACHMENT7: return "GL_COLOR_ATTACHMENT7"; 614 case GL_DEPTH_ATTACHMENT: return "GL_DEPTH_ATTACHMENT"; 615 case GL_STENCIL_ATTACHMENT: return "GL_STENCIL_ATTACHMENT"; 616 case GL_DEPTH_STENCIL_ATTACHMENT: return "GL_DEPTH_STENCIL_ATTACHMENT"; 617 default: return DE_NULL; 618 } 619} 620 621const char* getTextureTargetName (int value) 622{ 623 switch (value) 624 { 625 case GL_TEXTURE_1D: return "GL_TEXTURE_1D"; 626 case GL_TEXTURE_2D: return "GL_TEXTURE_2D"; 627 case GL_TEXTURE_CUBE_MAP: return "GL_TEXTURE_CUBE_MAP"; 628 case GL_TEXTURE_CUBE_MAP_POSITIVE_X: return "GL_TEXTURE_CUBE_MAP_POSITIVE_X"; 629 case GL_TEXTURE_CUBE_MAP_NEGATIVE_X: return "GL_TEXTURE_CUBE_MAP_NEGATIVE_X"; 630 case GL_TEXTURE_CUBE_MAP_POSITIVE_Y: return "GL_TEXTURE_CUBE_MAP_POSITIVE_Y"; 631 case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y: return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y"; 632 case GL_TEXTURE_CUBE_MAP_POSITIVE_Z: return "GL_TEXTURE_CUBE_MAP_POSITIVE_Z"; 633 case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z: return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"; 634 case GL_TEXTURE_3D: return "GL_TEXTURE_3D"; 635 case GL_TEXTURE_2D_ARRAY: return "GL_TEXTURE_2D_ARRAY"; 636 case GL_TEXTURE_2D_MULTISAMPLE: return "GL_TEXTURE_2D_MULTISAMPLE"; 637 case GL_TEXTURE_2D_MULTISAMPLE_ARRAY: return "GL_TEXTURE_2D_MULTISAMPLE_ARRAY"; 638 case GL_TEXTURE_BUFFER: return "GL_TEXTURE_BUFFER"; 639 case GL_TEXTURE_CUBE_MAP_ARRAY: return "GL_TEXTURE_CUBE_MAP_ARRAY"; 640 default: return DE_NULL; 641 } 642} 643 644const char* getTextureParameterName (int value) 645{ 646 switch (value) 647 { 648 case GL_TEXTURE_WRAP_S: return "GL_TEXTURE_WRAP_S"; 649 case GL_TEXTURE_WRAP_T: return "GL_TEXTURE_WRAP_T"; 650 case GL_TEXTURE_WRAP_R: return "GL_TEXTURE_WRAP_R"; 651 case GL_TEXTURE_BASE_LEVEL: return "GL_TEXTURE_BASE_LEVEL"; 652 case GL_TEXTURE_MAX_LEVEL: return "GL_TEXTURE_MAX_LEVEL"; 653 case GL_TEXTURE_COMPARE_MODE: return "GL_TEXTURE_COMPARE_MODE"; 654 case GL_TEXTURE_COMPARE_FUNC: return "GL_TEXTURE_COMPARE_FUNC"; 655 case GL_TEXTURE_MAX_LOD: return "GL_TEXTURE_MAX_LOD"; 656 case GL_TEXTURE_MIN_LOD: return "GL_TEXTURE_MIN_LOD"; 657 case GL_TEXTURE_SWIZZLE_R: return "GL_TEXTURE_SWIZZLE_R"; 658 case GL_TEXTURE_SWIZZLE_G: return "GL_TEXTURE_SWIZZLE_G"; 659 case GL_TEXTURE_SWIZZLE_B: return "GL_TEXTURE_SWIZZLE_B"; 660 case GL_TEXTURE_SWIZZLE_A: return "GL_TEXTURE_SWIZZLE_A"; 661 case GL_TEXTURE_MIN_FILTER: return "GL_TEXTURE_MIN_FILTER"; 662 case GL_TEXTURE_MAG_FILTER: return "GL_TEXTURE_MAG_FILTER"; 663 case GL_DEPTH_STENCIL_TEXTURE_MODE: return "GL_DEPTH_STENCIL_TEXTURE_MODE"; 664 case GL_TEXTURE_SRGB_DECODE_EXT: return "GL_TEXTURE_SRGB_DECODE_EXT"; 665 case GL_TEXTURE_BORDER_COLOR: return "GL_TEXTURE_BORDER_COLOR"; 666 case GL_TEXTURE_IMMUTABLE_LEVELS: return "GL_TEXTURE_IMMUTABLE_LEVELS"; 667 case GL_TEXTURE_IMMUTABLE_FORMAT: return "GL_TEXTURE_IMMUTABLE_FORMAT"; 668 default: return DE_NULL; 669 } 670} 671 672const char* getTextureLevelParameterName (int value) 673{ 674 switch (value) 675 { 676 case GL_TEXTURE_SAMPLES: return "GL_TEXTURE_SAMPLES"; 677 case GL_TEXTURE_FIXED_SAMPLE_LOCATIONS: return "GL_TEXTURE_FIXED_SAMPLE_LOCATIONS"; 678 case GL_TEXTURE_WIDTH: return "GL_TEXTURE_WIDTH"; 679 case GL_TEXTURE_HEIGHT: return "GL_TEXTURE_HEIGHT"; 680 case GL_TEXTURE_DEPTH: return "GL_TEXTURE_DEPTH"; 681 case GL_TEXTURE_INTERNAL_FORMAT: return "GL_TEXTURE_INTERNAL_FORMAT"; 682 case GL_TEXTURE_RED_SIZE: return "GL_TEXTURE_RED_SIZE"; 683 case GL_TEXTURE_GREEN_SIZE: return "GL_TEXTURE_GREEN_SIZE"; 684 case GL_TEXTURE_BLUE_SIZE: return "GL_TEXTURE_BLUE_SIZE"; 685 case GL_TEXTURE_ALPHA_SIZE: return "GL_TEXTURE_ALPHA_SIZE"; 686 case GL_TEXTURE_DEPTH_SIZE: return "GL_TEXTURE_DEPTH_SIZE"; 687 case GL_TEXTURE_STENCIL_SIZE: return "GL_TEXTURE_STENCIL_SIZE"; 688 case GL_TEXTURE_SHARED_SIZE: return "GL_TEXTURE_SHARED_SIZE"; 689 case GL_TEXTURE_RED_TYPE: return "GL_TEXTURE_RED_TYPE"; 690 case GL_TEXTURE_GREEN_TYPE: return "GL_TEXTURE_GREEN_TYPE"; 691 case GL_TEXTURE_BLUE_TYPE: return "GL_TEXTURE_BLUE_TYPE"; 692 case GL_TEXTURE_ALPHA_TYPE: return "GL_TEXTURE_ALPHA_TYPE"; 693 case GL_TEXTURE_DEPTH_TYPE: return "GL_TEXTURE_DEPTH_TYPE"; 694 case GL_TEXTURE_COMPRESSED: return "GL_TEXTURE_COMPRESSED"; 695 case GL_TEXTURE_BUFFER_DATA_STORE_BINDING: return "GL_TEXTURE_BUFFER_DATA_STORE_BINDING"; 696 case GL_TEXTURE_BUFFER_OFFSET: return "GL_TEXTURE_BUFFER_OFFSET"; 697 case GL_TEXTURE_BUFFER_SIZE: return "GL_TEXTURE_BUFFER_SIZE"; 698 default: return DE_NULL; 699 } 700} 701 702const char* getRepeatModeName (int value) 703{ 704 switch (value) 705 { 706 case GL_REPEAT: return "GL_REPEAT"; 707 case GL_CLAMP_TO_EDGE: return "GL_CLAMP_TO_EDGE"; 708 case GL_MIRRORED_REPEAT: return "GL_MIRRORED_REPEAT"; 709 case GL_CLAMP_TO_BORDER: return "GL_CLAMP_TO_BORDER"; 710 default: return DE_NULL; 711 } 712} 713 714const char* getTextureFilterName (int value) 715{ 716 switch (value) 717 { 718 case GL_NEAREST: return "GL_NEAREST"; 719 case GL_LINEAR: return "GL_LINEAR"; 720 case GL_NEAREST_MIPMAP_NEAREST: return "GL_NEAREST_MIPMAP_NEAREST"; 721 case GL_LINEAR_MIPMAP_NEAREST: return "GL_LINEAR_MIPMAP_NEAREST"; 722 case GL_NEAREST_MIPMAP_LINEAR: return "GL_NEAREST_MIPMAP_LINEAR"; 723 case GL_LINEAR_MIPMAP_LINEAR: return "GL_LINEAR_MIPMAP_LINEAR"; 724 default: return DE_NULL; 725 } 726} 727 728const char* getTextureWrapModeName (int value) 729{ 730 switch (value) 731 { 732 case GL_REPEAT: return "GL_REPEAT"; 733 case GL_CLAMP_TO_EDGE: return "GL_CLAMP_TO_EDGE"; 734 case GL_MIRRORED_REPEAT: return "GL_MIRRORED_REPEAT"; 735 default: return DE_NULL; 736 } 737} 738 739const char* getTextureSwizzleName (int value) 740{ 741 switch (value) 742 { 743 case GL_RED: return "GL_RED"; 744 case GL_GREEN: return "GL_GREEN"; 745 case GL_BLUE: return "GL_BLUE"; 746 case GL_ALPHA: return "GL_ALPHA"; 747 case GL_ZERO: return "GL_ZERO"; 748 case GL_ONE: return "GL_ONE"; 749 default: return DE_NULL; 750 } 751} 752 753const char* getTextureCompareModeName (int value) 754{ 755 switch (value) 756 { 757 case GL_NONE: return "GL_NONE"; 758 case GL_COMPARE_REF_TO_TEXTURE: return "GL_COMPARE_REF_TO_TEXTURE"; 759 default: return DE_NULL; 760 } 761} 762 763const char* getCubeMapFaceName (int value) 764{ 765 switch (value) 766 { 767 case GL_TEXTURE_CUBE_MAP_POSITIVE_X: return "GL_TEXTURE_CUBE_MAP_POSITIVE_X"; 768 case GL_TEXTURE_CUBE_MAP_NEGATIVE_X: return "GL_TEXTURE_CUBE_MAP_NEGATIVE_X"; 769 case GL_TEXTURE_CUBE_MAP_POSITIVE_Y: return "GL_TEXTURE_CUBE_MAP_POSITIVE_Y"; 770 case GL_TEXTURE_CUBE_MAP_NEGATIVE_Y: return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y"; 771 case GL_TEXTURE_CUBE_MAP_POSITIVE_Z: return "GL_TEXTURE_CUBE_MAP_POSITIVE_Z"; 772 case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z: return "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"; 773 default: return DE_NULL; 774 } 775} 776 777const char* getTextureDepthStencilModeName (int value) 778{ 779 switch (value) 780 { 781 case GL_DEPTH_COMPONENT: return "GL_DEPTH_COMPONENT"; 782 case GL_STENCIL_INDEX: return "GL_STENCIL_INDEX"; 783 default: return DE_NULL; 784 } 785} 786 787const char* getPixelStoreParameterName (int value) 788{ 789 switch (value) 790 { 791 case GL_UNPACK_ALIGNMENT: return "GL_UNPACK_ALIGNMENT"; 792 case GL_UNPACK_IMAGE_HEIGHT: return "GL_UNPACK_IMAGE_HEIGHT"; 793 case GL_UNPACK_ROW_LENGTH: return "GL_UNPACK_ROW_LENGTH"; 794 case GL_UNPACK_SKIP_IMAGES: return "GL_UNPACK_SKIP_IMAGES"; 795 case GL_UNPACK_SKIP_ROWS: return "GL_UNPACK_SKIP_ROWS"; 796 case GL_UNPACK_SKIP_PIXELS: return "GL_UNPACK_SKIP_PIXELS"; 797 case GL_PACK_ROW_LENGTH: return "GL_PACK_ROW_LENGTH"; 798 case GL_PACK_SKIP_ROWS: return "GL_PACK_SKIP_ROWS"; 799 case GL_PACK_SKIP_PIXELS: return "GL_PACK_SKIP_PIXELS"; 800 default: return DE_NULL; 801 } 802} 803 804const char* getUncompressedTextureFormatName (int value) 805{ 806 switch (value) 807 { 808 case GL_LUMINANCE: return "GL_LUMINANCE"; 809 case GL_LUMINANCE_ALPHA: return "GL_LUMINANCE_ALPHA"; 810 case GL_ALPHA: return "GL_ALPHA"; 811 case GL_RGB: return "GL_RGB"; 812 case GL_RGBA: return "GL_RGBA"; 813 case GL_RGBA4: return "GL_RGBA4"; 814 case GL_RGB5_A1: return "GL_RGB5_A1"; 815 case GL_RGB565: return "GL_RGB565"; 816 case GL_DEPTH_COMPONENT16: return "GL_DEPTH_COMPONENT16"; 817 case GL_STENCIL_INDEX8: return "GL_STENCIL_INDEX8"; 818 case GL_RG: return "GL_RG"; 819 case GL_RED: return "GL_RED"; 820 case GL_RGBA_INTEGER: return "GL_RGBA_INTEGER"; 821 case GL_RGB_INTEGER: return "GL_RGB_INTEGER"; 822 case GL_RG_INTEGER: return "GL_RG_INTEGER"; 823 case GL_RED_INTEGER: return "GL_RED_INTEGER"; 824 case GL_DEPTH_COMPONENT: return "GL_DEPTH_COMPONENT"; 825 case GL_DEPTH_STENCIL: return "GL_DEPTH_STENCIL"; 826 case GL_RGBA32F: return "GL_RGBA32F"; 827 case GL_RGBA32I: return "GL_RGBA32I"; 828 case GL_RGBA32UI: return "GL_RGBA32UI"; 829 case GL_RGBA16: return "GL_RGBA16"; 830 case GL_RGBA16_SNORM: return "GL_RGBA16_SNORM"; 831 case GL_RGBA16F: return "GL_RGBA16F"; 832 case GL_RGBA16I: return "GL_RGBA16I"; 833 case GL_RGBA16UI: return "GL_RGBA16UI"; 834 case GL_RGBA8: return "GL_RGBA8"; 835 case GL_RGBA8I: return "GL_RGBA8I"; 836 case GL_RGBA8UI: return "GL_RGBA8UI"; 837 case GL_SRGB8_ALPHA8: return "GL_SRGB8_ALPHA8"; 838 case GL_RGB10_A2: return "GL_RGB10_A2"; 839 case GL_RGB10_A2UI: return "GL_RGB10_A2UI"; 840 case GL_RGBA8_SNORM: return "GL_RGBA8_SNORM"; 841 case GL_RGB8: return "GL_RGB8"; 842 case GL_R11F_G11F_B10F: return "GL_R11F_G11F_B10F"; 843 case GL_RGB32F: return "GL_RGB32F"; 844 case GL_RGB32I: return "GL_RGB32I"; 845 case GL_RGB32UI: return "GL_RGB32UI"; 846 case GL_RGB16: return "GL_RGB16"; 847 case GL_RGB16_SNORM: return "GL_RGB16_SNORM"; 848 case GL_RGB16F: return "GL_RGB16F"; 849 case GL_RGB16I: return "GL_RGB16I"; 850 case GL_RGB16UI: return "GL_RGB16UI"; 851 case GL_RGB8_SNORM: return "GL_RGB8_SNORM"; 852 case GL_RGB8I: return "GL_RGB8I"; 853 case GL_RGB8UI: return "GL_RGB8UI"; 854 case GL_SRGB8: return "GL_SRGB8"; 855 case GL_RGB9_E5: return "GL_RGB9_E5"; 856 case GL_RG32F: return "GL_RG32F"; 857 case GL_RG32I: return "GL_RG32I"; 858 case GL_RG32UI: return "GL_RG32UI"; 859 case GL_RG16: return "GL_RG16"; 860 case GL_RG16_SNORM: return "GL_RG16_SNORM"; 861 case GL_RG16F: return "GL_RG16F"; 862 case GL_RG16I: return "GL_RG16I"; 863 case GL_RG16UI: return "GL_RG16UI"; 864 case GL_RG8: return "GL_RG8"; 865 case GL_RG8I: return "GL_RG8I"; 866 case GL_RG8UI: return "GL_RG8UI"; 867 case GL_RG8_SNORM: return "GL_RG8_SNORM"; 868 case GL_R32F: return "GL_R32F"; 869 case GL_R32I: return "GL_R32I"; 870 case GL_R32UI: return "GL_R32UI"; 871 case GL_R16: return "GL_R16"; 872 case GL_R16_SNORM: return "GL_R16_SNORM"; 873 case GL_R16F: return "GL_R16F"; 874 case GL_R16I: return "GL_R16I"; 875 case GL_R16UI: return "GL_R16UI"; 876 case GL_R8: return "GL_R8"; 877 case GL_R8I: return "GL_R8I"; 878 case GL_R8UI: return "GL_R8UI"; 879 case GL_R8_SNORM: return "GL_R8_SNORM"; 880 case GL_DEPTH_COMPONENT32F: return "GL_DEPTH_COMPONENT32F"; 881 case GL_DEPTH_COMPONENT24: return "GL_DEPTH_COMPONENT24"; 882 case GL_DEPTH32F_STENCIL8: return "GL_DEPTH32F_STENCIL8"; 883 case GL_DEPTH24_STENCIL8: return "GL_DEPTH24_STENCIL8"; 884 case GL_RGB10: return "GL_RGB10"; 885 case GL_DEPTH_COMPONENT32: return "GL_DEPTH_COMPONENT32"; 886 case GL_SRGB: return "GL_SRGB"; 887 case GL_SRGB_ALPHA: return "GL_SRGB_ALPHA"; 888 case GL_SR8_EXT: return "GL_SR8_EXT"; 889 case GL_SRG8_EXT: return "GL_SRG8_EXT"; 890 case GL_BGRA: return "GL_BGRA"; 891 default: return DE_NULL; 892 } 893} 894 895const char* getCompressedTextureFormatName (int value) 896{ 897 switch (value) 898 { 899 case GL_COMPRESSED_R11_EAC: return "GL_COMPRESSED_R11_EAC"; 900 case GL_COMPRESSED_SIGNED_R11_EAC: return "GL_COMPRESSED_SIGNED_R11_EAC"; 901 case GL_COMPRESSED_RG11_EAC: return "GL_COMPRESSED_RG11_EAC"; 902 case GL_COMPRESSED_SIGNED_RG11_EAC: return "GL_COMPRESSED_SIGNED_RG11_EAC"; 903 case GL_COMPRESSED_RGB8_ETC2: return "GL_COMPRESSED_RGB8_ETC2"; 904 case GL_COMPRESSED_SRGB8_ETC2: return "GL_COMPRESSED_SRGB8_ETC2"; 905 case GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: return "GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2"; 906 case GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: return "GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2"; 907 case GL_COMPRESSED_RGBA8_ETC2_EAC: return "GL_COMPRESSED_RGBA8_ETC2_EAC"; 908 case GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: return "GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC"; 909 case GL_COMPRESSED_RGBA_ASTC_4x4_KHR: return "GL_COMPRESSED_RGBA_ASTC_4x4_KHR"; 910 case GL_COMPRESSED_RGBA_ASTC_5x4_KHR: return "GL_COMPRESSED_RGBA_ASTC_5x4_KHR"; 911 case GL_COMPRESSED_RGBA_ASTC_5x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_5x5_KHR"; 912 case GL_COMPRESSED_RGBA_ASTC_6x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_6x5_KHR"; 913 case GL_COMPRESSED_RGBA_ASTC_6x6_KHR: return "GL_COMPRESSED_RGBA_ASTC_6x6_KHR"; 914 case GL_COMPRESSED_RGBA_ASTC_8x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_8x5_KHR"; 915 case GL_COMPRESSED_RGBA_ASTC_8x6_KHR: return "GL_COMPRESSED_RGBA_ASTC_8x6_KHR"; 916 case GL_COMPRESSED_RGBA_ASTC_8x8_KHR: return "GL_COMPRESSED_RGBA_ASTC_8x8_KHR"; 917 case GL_COMPRESSED_RGBA_ASTC_10x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x5_KHR"; 918 case GL_COMPRESSED_RGBA_ASTC_10x6_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x6_KHR"; 919 case GL_COMPRESSED_RGBA_ASTC_10x8_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x8_KHR"; 920 case GL_COMPRESSED_RGBA_ASTC_10x10_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x10_KHR"; 921 case GL_COMPRESSED_RGBA_ASTC_12x10_KHR: return "GL_COMPRESSED_RGBA_ASTC_12x10_KHR"; 922 case GL_COMPRESSED_RGBA_ASTC_12x12_KHR: return "GL_COMPRESSED_RGBA_ASTC_12x12_KHR"; 923 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR"; 924 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR"; 925 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR"; 926 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR"; 927 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR"; 928 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR"; 929 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR"; 930 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR"; 931 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR"; 932 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR"; 933 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR"; 934 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR"; 935 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR"; 936 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"; 937 case GL_COMPRESSED_RGB_S3TC_DXT1_EXT: return "GL_COMPRESSED_RGB_S3TC_DXT1_EXT"; 938 case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT: return "GL_COMPRESSED_RGBA_S3TC_DXT1_EXT"; 939 case GL_COMPRESSED_RGBA_S3TC_DXT3_EXT: return "GL_COMPRESSED_RGBA_S3TC_DXT3_EXT"; 940 case GL_COMPRESSED_RGBA_S3TC_DXT5_EXT: return "GL_COMPRESSED_RGBA_S3TC_DXT5_EXT"; 941 case GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG: return "GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG"; 942 case GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG: return "GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG"; 943 case GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: return "GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG"; 944 case GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: return "GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG"; 945 default: return DE_NULL; 946 } 947} 948 949const char* getShaderVarTypeName (int value) 950{ 951 switch (value) 952 { 953 case GL_FLOAT: return "GL_FLOAT"; 954 case GL_FLOAT_VEC2: return "GL_FLOAT_VEC2"; 955 case GL_FLOAT_VEC3: return "GL_FLOAT_VEC3"; 956 case GL_FLOAT_VEC4: return "GL_FLOAT_VEC4"; 957 case GL_INT: return "GL_INT"; 958 case GL_INT_VEC2: return "GL_INT_VEC2"; 959 case GL_INT_VEC3: return "GL_INT_VEC3"; 960 case GL_INT_VEC4: return "GL_INT_VEC4"; 961 case GL_UNSIGNED_INT: return "GL_UNSIGNED_INT"; 962 case GL_UNSIGNED_INT_VEC2: return "GL_UNSIGNED_INT_VEC2"; 963 case GL_UNSIGNED_INT_VEC3: return "GL_UNSIGNED_INT_VEC3"; 964 case GL_UNSIGNED_INT_VEC4: return "GL_UNSIGNED_INT_VEC4"; 965 case GL_BOOL: return "GL_BOOL"; 966 case GL_BOOL_VEC2: return "GL_BOOL_VEC2"; 967 case GL_BOOL_VEC3: return "GL_BOOL_VEC3"; 968 case GL_BOOL_VEC4: return "GL_BOOL_VEC4"; 969 case GL_FLOAT_MAT2: return "GL_FLOAT_MAT2"; 970 case GL_FLOAT_MAT3: return "GL_FLOAT_MAT3"; 971 case GL_FLOAT_MAT4: return "GL_FLOAT_MAT4"; 972 case GL_FLOAT_MAT2x3: return "GL_FLOAT_MAT2x3"; 973 case GL_FLOAT_MAT2x4: return "GL_FLOAT_MAT2x4"; 974 case GL_FLOAT_MAT3x2: return "GL_FLOAT_MAT3x2"; 975 case GL_FLOAT_MAT3x4: return "GL_FLOAT_MAT3x4"; 976 case GL_FLOAT_MAT4x2: return "GL_FLOAT_MAT4x2"; 977 case GL_FLOAT_MAT4x3: return "GL_FLOAT_MAT4x3"; 978 case GL_SAMPLER_2D: return "GL_SAMPLER_2D"; 979 case GL_SAMPLER_3D: return "GL_SAMPLER_3D"; 980 case GL_SAMPLER_CUBE: return "GL_SAMPLER_CUBE"; 981 case GL_SAMPLER_2D_SHADOW: return "GL_SAMPLER_2D_SHADOW"; 982 case GL_SAMPLER_2D_ARRAY: return "GL_SAMPLER_2D_ARRAY"; 983 case GL_SAMPLER_2D_ARRAY_SHADOW: return "GL_SAMPLER_2D_ARRAY_SHADOW"; 984 case GL_SAMPLER_CUBE_SHADOW: return "GL_SAMPLER_CUBE_SHADOW"; 985 case GL_INT_SAMPLER_2D: return "GL_INT_SAMPLER_2D"; 986 case GL_INT_SAMPLER_3D: return "GL_INT_SAMPLER_3D"; 987 case GL_INT_SAMPLER_CUBE: return "GL_INT_SAMPLER_CUBE"; 988 case GL_INT_SAMPLER_2D_ARRAY: return "GL_INT_SAMPLER_2D_ARRAY"; 989 case GL_UNSIGNED_INT_SAMPLER_2D: return "GL_UNSIGNED_INT_SAMPLER_2D"; 990 case GL_UNSIGNED_INT_SAMPLER_3D: return "GL_UNSIGNED_INT_SAMPLER_3D"; 991 case GL_UNSIGNED_INT_SAMPLER_CUBE: return "GL_UNSIGNED_INT_SAMPLER_CUBE"; 992 case GL_UNSIGNED_INT_SAMPLER_2D_ARRAY: return "GL_UNSIGNED_INT_SAMPLER_2D_ARRAY"; 993 case GL_SAMPLER_2D_MULTISAMPLE: return "GL_SAMPLER_2D_MULTISAMPLE"; 994 case GL_INT_SAMPLER_2D_MULTISAMPLE: return "GL_INT_SAMPLER_2D_MULTISAMPLE"; 995 case GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE: return "GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE"; 996 case GL_IMAGE_2D: return "GL_IMAGE_2D"; 997 case GL_IMAGE_3D: return "GL_IMAGE_3D"; 998 case GL_IMAGE_CUBE: return "GL_IMAGE_CUBE"; 999 case GL_IMAGE_2D_ARRAY: return "GL_IMAGE_2D_ARRAY"; 1000 case GL_INT_IMAGE_2D: return "GL_INT_IMAGE_2D"; 1001 case GL_INT_IMAGE_3D: return "GL_INT_IMAGE_3D"; 1002 case GL_INT_IMAGE_CUBE: return "GL_INT_IMAGE_CUBE"; 1003 case GL_INT_IMAGE_2D_ARRAY: return "GL_INT_IMAGE_2D_ARRAY"; 1004 case GL_UNSIGNED_INT_IMAGE_2D: return "GL_UNSIGNED_INT_IMAGE_2D"; 1005 case GL_UNSIGNED_INT_IMAGE_3D: return "GL_UNSIGNED_INT_IMAGE_3D"; 1006 case GL_UNSIGNED_INT_IMAGE_CUBE: return "GL_UNSIGNED_INT_IMAGE_CUBE"; 1007 case GL_UNSIGNED_INT_IMAGE_2D_ARRAY: return "GL_UNSIGNED_INT_IMAGE_2D_ARRAY"; 1008 case GL_UNSIGNED_INT_ATOMIC_COUNTER: return "GL_UNSIGNED_INT_ATOMIC_COUNTER"; 1009 case GL_SAMPLER_2D_MULTISAMPLE_ARRAY: return "GL_SAMPLER_2D_MULTISAMPLE_ARRAY"; 1010 case GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: return "GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY"; 1011 case GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: return "GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY"; 1012 case GL_SAMPLER_BUFFER: return "GL_SAMPLER_BUFFER"; 1013 case GL_INT_SAMPLER_BUFFER: return "GL_INT_SAMPLER_BUFFER"; 1014 case GL_UNSIGNED_INT_SAMPLER_BUFFER: return "GL_UNSIGNED_INT_SAMPLER_BUFFER"; 1015 case GL_IMAGE_BUFFER: return "GL_IMAGE_BUFFER"; 1016 case GL_INT_IMAGE_BUFFER: return "GL_INT_IMAGE_BUFFER"; 1017 case GL_UNSIGNED_INT_IMAGE_BUFFER: return "GL_UNSIGNED_INT_IMAGE_BUFFER"; 1018 case GL_SAMPLER_CUBE_MAP_ARRAY: return "GL_SAMPLER_CUBE_MAP_ARRAY"; 1019 case GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW: return "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW"; 1020 case GL_INT_SAMPLER_CUBE_MAP_ARRAY: return "GL_INT_SAMPLER_CUBE_MAP_ARRAY"; 1021 case GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY: return "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY"; 1022 case GL_IMAGE_CUBE_MAP_ARRAY: return "GL_IMAGE_CUBE_MAP_ARRAY"; 1023 case GL_INT_IMAGE_CUBE_MAP_ARRAY: return "GL_INT_IMAGE_CUBE_MAP_ARRAY"; 1024 case GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY: return "GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY"; 1025 default: return DE_NULL; 1026 } 1027} 1028 1029const char* getShaderParamName (int value) 1030{ 1031 switch (value) 1032 { 1033 case GL_SHADER_TYPE: return "GL_SHADER_TYPE"; 1034 case GL_DELETE_STATUS: return "GL_DELETE_STATUS"; 1035 case GL_COMPILE_STATUS: return "GL_COMPILE_STATUS"; 1036 case GL_INFO_LOG_LENGTH: return "GL_INFO_LOG_LENGTH"; 1037 case GL_SHADER_SOURCE_LENGTH: return "GL_SHADER_SOURCE_LENGTH"; 1038 default: return DE_NULL; 1039 } 1040} 1041 1042const char* getVertexAttribParameterNameName (int value) 1043{ 1044 switch (value) 1045 { 1046 case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: return "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"; 1047 case GL_VERTEX_ATTRIB_ARRAY_ENABLED: return "GL_VERTEX_ATTRIB_ARRAY_ENABLED"; 1048 case GL_VERTEX_ATTRIB_ARRAY_SIZE: return "GL_VERTEX_ATTRIB_ARRAY_SIZE"; 1049 case GL_VERTEX_ATTRIB_ARRAY_STRIDE: return "GL_VERTEX_ATTRIB_ARRAY_STRIDE"; 1050 case GL_VERTEX_ATTRIB_ARRAY_TYPE: return "GL_VERTEX_ATTRIB_ARRAY_TYPE"; 1051 case GL_VERTEX_ATTRIB_ARRAY_NORMALIZED: return "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED"; 1052 case GL_VERTEX_ATTRIB_ARRAY_INTEGER: return "GL_VERTEX_ATTRIB_ARRAY_INTEGER"; 1053 case GL_VERTEX_ATTRIB_ARRAY_DIVISOR: return "GL_VERTEX_ATTRIB_ARRAY_DIVISOR"; 1054 case GL_CURRENT_VERTEX_ATTRIB: return "GL_CURRENT_VERTEX_ATTRIB"; 1055 case GL_VERTEX_ATTRIB_BINDING: return "GL_VERTEX_ATTRIB_BINDING"; 1056 case GL_VERTEX_ATTRIB_RELATIVE_OFFSET: return "GL_VERTEX_ATTRIB_RELATIVE_OFFSET"; 1057 default: return DE_NULL; 1058 } 1059} 1060 1061const char* getBooleanName (int value) 1062{ 1063 switch (value) 1064 { 1065 case GL_FALSE: return "GL_FALSE"; 1066 case GL_TRUE: return "GL_TRUE"; 1067 default: return DE_NULL; 1068 } 1069} 1070 1071const char* getGettableStateName (int value) 1072{ 1073 switch (value) 1074 { 1075 case GL_ELEMENT_ARRAY_BUFFER_BINDING: return "GL_ELEMENT_ARRAY_BUFFER_BINDING"; 1076 case GL_ARRAY_BUFFER_BINDING: return "GL_ARRAY_BUFFER_BINDING"; 1077 case GL_VERTEX_ARRAY_BINDING: return "GL_VERTEX_ARRAY_BINDING"; 1078 case GL_VIEWPORT: return "GL_VIEWPORT"; 1079 case GL_DEPTH_RANGE: return "GL_DEPTH_RANGE"; 1080 case GL_TRANSFORM_FEEDBACK_BINDING: return "GL_TRANSFORM_FEEDBACK_BINDING"; 1081 case GL_LINE_WIDTH: return "GL_LINE_WIDTH"; 1082 case GL_CULL_FACE_MODE: return "GL_CULL_FACE_MODE"; 1083 case GL_FRONT_FACE: return "GL_FRONT_FACE"; 1084 case GL_POLYGON_OFFSET_FACTOR: return "GL_POLYGON_OFFSET_FACTOR"; 1085 case GL_POLYGON_OFFSET_UNITS: return "GL_POLYGON_OFFSET_UNITS"; 1086 case GL_SAMPLE_COVERAGE_VALUE: return "GL_SAMPLE_COVERAGE_VALUE"; 1087 case GL_SAMPLE_COVERAGE_INVERT: return "GL_SAMPLE_COVERAGE_INVERT"; 1088 case GL_ACTIVE_TEXTURE: return "GL_ACTIVE_TEXTURE"; 1089 case GL_TEXTURE_BINDING_1D: return "GL_TEXTURE_BINDING_1D"; 1090 case GL_TEXTURE_BINDING_2D: return "GL_TEXTURE_BINDING_2D"; 1091 case GL_TEXTURE_BINDING_3D: return "GL_TEXTURE_BINDING_3D"; 1092 case GL_TEXTURE_BINDING_2D_ARRAY: return "GL_TEXTURE_BINDING_2D_ARRAY"; 1093 case GL_TEXTURE_BINDING_CUBE_MAP: return "GL_TEXTURE_BINDING_CUBE_MAP"; 1094 case GL_SAMPLER_BINDING: return "GL_SAMPLER_BINDING"; 1095 case GL_SCISSOR_BOX: return "GL_SCISSOR_BOX"; 1096 case GL_STENCIL_FUNC: return "GL_STENCIL_FUNC"; 1097 case GL_STENCIL_VALUE_MASK: return "GL_STENCIL_VALUE_MASK"; 1098 case GL_STENCIL_REF: return "GL_STENCIL_REF"; 1099 case GL_STENCIL_FAIL: return "GL_STENCIL_FAIL"; 1100 case GL_STENCIL_PASS_DEPTH_FAIL: return "GL_STENCIL_PASS_DEPTH_FAIL"; 1101 case GL_STENCIL_PASS_DEPTH_PASS: return "GL_STENCIL_PASS_DEPTH_PASS"; 1102 case GL_STENCIL_BACK_FUNC: return "GL_STENCIL_BACK_FUNC"; 1103 case GL_STENCIL_BACK_VALUE_MASK: return "GL_STENCIL_BACK_VALUE_MASK"; 1104 case GL_STENCIL_BACK_REF: return "GL_STENCIL_BACK_REF"; 1105 case GL_STENCIL_BACK_FAIL: return "GL_STENCIL_BACK_FAIL"; 1106 case GL_STENCIL_BACK_PASS_DEPTH_FAIL: return "GL_STENCIL_BACK_PASS_DEPTH_FAIL"; 1107 case GL_STENCIL_BACK_PASS_DEPTH_PASS: return "GL_STENCIL_BACK_PASS_DEPTH_PASS"; 1108 case GL_DEPTH_FUNC: return "GL_DEPTH_FUNC"; 1109 case GL_BLEND_SRC_RGB: return "GL_BLEND_SRC_RGB"; 1110 case GL_BLEND_SRC_ALPHA: return "GL_BLEND_SRC_ALPHA"; 1111 case GL_BLEND_DST_RGB: return "GL_BLEND_DST_RGB"; 1112 case GL_BLEND_DST_ALPHA: return "GL_BLEND_DST_ALPHA"; 1113 case GL_BLEND_EQUATION_RGB: return "GL_BLEND_EQUATION_RGB"; 1114 case GL_BLEND_EQUATION_ALPHA: return "GL_BLEND_EQUATION_ALPHA"; 1115 case GL_BLEND_COLOR: return "GL_BLEND_COLOR"; 1116 case GL_COLOR_WRITEMASK: return "GL_COLOR_WRITEMASK"; 1117 case GL_DEPTH_WRITEMASK: return "GL_DEPTH_WRITEMASK"; 1118 case GL_STENCIL_WRITEMASK: return "GL_STENCIL_WRITEMASK"; 1119 case GL_STENCIL_BACK_WRITEMASK: return "GL_STENCIL_BACK_WRITEMASK"; 1120 case GL_COLOR_CLEAR_VALUE: return "GL_COLOR_CLEAR_VALUE"; 1121 case GL_DEPTH_CLEAR_VALUE: return "GL_DEPTH_CLEAR_VALUE"; 1122 case GL_STENCIL_CLEAR_VALUE: return "GL_STENCIL_CLEAR_VALUE"; 1123 case GL_DRAW_FRAMEBUFFER_BINDING: return "GL_DRAW_FRAMEBUFFER_BINDING"; 1124 case GL_READ_FRAMEBUFFER_BINDING: return "GL_READ_FRAMEBUFFER_BINDING"; 1125 case GL_RENDERBUFFER_BINDING: return "GL_RENDERBUFFER_BINDING"; 1126 case GL_DRAW_BUFFER0: return "GL_DRAW_BUFFER0"; 1127 case GL_DRAW_BUFFER1: return "GL_DRAW_BUFFER1"; 1128 case GL_DRAW_BUFFER2: return "GL_DRAW_BUFFER2"; 1129 case GL_DRAW_BUFFER3: return "GL_DRAW_BUFFER3"; 1130 case GL_DRAW_BUFFER4: return "GL_DRAW_BUFFER4"; 1131 case GL_DRAW_BUFFER5: return "GL_DRAW_BUFFER5"; 1132 case GL_DRAW_BUFFER6: return "GL_DRAW_BUFFER6"; 1133 case GL_DRAW_BUFFER7: return "GL_DRAW_BUFFER7"; 1134 case GL_DRAW_BUFFER8: return "GL_DRAW_BUFFER8"; 1135 case GL_DRAW_BUFFER9: return "GL_DRAW_BUFFER9"; 1136 case GL_DRAW_BUFFER10: return "GL_DRAW_BUFFER10"; 1137 case GL_DRAW_BUFFER11: return "GL_DRAW_BUFFER11"; 1138 case GL_DRAW_BUFFER12: return "GL_DRAW_BUFFER12"; 1139 case GL_DRAW_BUFFER13: return "GL_DRAW_BUFFER13"; 1140 case GL_DRAW_BUFFER14: return "GL_DRAW_BUFFER14"; 1141 case GL_DRAW_BUFFER15: return "GL_DRAW_BUFFER15"; 1142 case GL_READ_BUFFER: return "GL_READ_BUFFER"; 1143 case GL_UNPACK_IMAGE_HEIGHT: return "GL_UNPACK_IMAGE_HEIGHT"; 1144 case GL_UNPACK_SKIP_IMAGES: return "GL_UNPACK_SKIP_IMAGES"; 1145 case GL_UNPACK_ROW_LENGTH: return "GL_UNPACK_ROW_LENGTH"; 1146 case GL_UNPACK_SKIP_ROWS: return "GL_UNPACK_SKIP_ROWS"; 1147 case GL_UNPACK_SKIP_PIXELS: return "GL_UNPACK_SKIP_PIXELS"; 1148 case GL_UNPACK_ALIGNMENT: return "GL_UNPACK_ALIGNMENT"; 1149 case GL_PACK_ROW_LENGTH: return "GL_PACK_ROW_LENGTH"; 1150 case GL_PACK_SKIP_ROWS: return "GL_PACK_SKIP_ROWS"; 1151 case GL_PACK_SKIP_PIXELS: return "GL_PACK_SKIP_PIXELS"; 1152 case GL_PACK_ALIGNMENT: return "GL_PACK_ALIGNMENT"; 1153 case GL_PIXEL_PACK_BUFFER_BINDING: return "GL_PIXEL_PACK_BUFFER_BINDING"; 1154 case GL_PIXEL_UNPACK_BUFFER_BINDING: return "GL_PIXEL_UNPACK_BUFFER_BINDING"; 1155 case GL_CURRENT_PROGRAM: return "GL_CURRENT_PROGRAM"; 1156 case GL_TRANSFORM_FEEDBACK_BUFFER_BINDING: return "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"; 1157 case GL_TRANSFORM_FEEDBACK_PAUSED: return "GL_TRANSFORM_FEEDBACK_PAUSED"; 1158 case GL_TRANSFORM_FEEDBACK_ACTIVE: return "GL_TRANSFORM_FEEDBACK_ACTIVE"; 1159 case GL_UNIFORM_BUFFER_BINDING: return "GL_UNIFORM_BUFFER_BINDING"; 1160 case GL_GENERATE_MIPMAP_HINT: return "GL_GENERATE_MIPMAP_HINT"; 1161 case GL_FRAGMENT_SHADER_DERIVATIVE_HINT: return "GL_FRAGMENT_SHADER_DERIVATIVE_HINT"; 1162 case GL_MAX_ELEMENT_INDEX: return "GL_MAX_ELEMENT_INDEX"; 1163 case GL_SUBPIXEL_BITS: return "GL_SUBPIXEL_BITS"; 1164 case GL_MAX_3D_TEXTURE_SIZE: return "GL_MAX_3D_TEXTURE_SIZE"; 1165 case GL_MAX_TEXTURE_SIZE: return "GL_MAX_TEXTURE_SIZE"; 1166 case GL_MAX_ARRAY_TEXTURE_LAYERS: return "GL_MAX_ARRAY_TEXTURE_LAYERS"; 1167 case GL_MAX_TEXTURE_LOD_BIAS: return "GL_MAX_TEXTURE_LOD_BIAS"; 1168 case GL_MAX_CUBE_MAP_TEXTURE_SIZE: return "GL_MAX_CUBE_MAP_TEXTURE_SIZE"; 1169 case GL_MAX_RENDERBUFFER_SIZE: return "GL_MAX_RENDERBUFFER_SIZE"; 1170 case GL_MAX_DRAW_BUFFERS: return "GL_MAX_DRAW_BUFFERS"; 1171 case GL_MAX_COLOR_ATTACHMENTS: return "GL_MAX_COLOR_ATTACHMENTS"; 1172 case GL_MAX_VIEWPORT_DIMS: return "GL_MAX_VIEWPORT_DIMS"; 1173 case GL_ALIASED_POINT_SIZE_RANGE: return "GL_ALIASED_POINT_SIZE_RANGE"; 1174 case GL_ALIASED_LINE_WIDTH_RANGE: return "GL_ALIASED_LINE_WIDTH_RANGE"; 1175 case GL_MAX_ELEMENTS_INDICES: return "GL_MAX_ELEMENTS_INDICES"; 1176 case GL_MAX_ELEMENTS_VERTICES: return "GL_MAX_ELEMENTS_VERTICES"; 1177 case GL_COMPRESSED_TEXTURE_FORMATS: return "GL_COMPRESSED_TEXTURE_FORMATS"; 1178 case GL_NUM_COMPRESSED_TEXTURE_FORMATS: return "GL_NUM_COMPRESSED_TEXTURE_FORMATS"; 1179 case GL_PROGRAM_BINARY_FORMATS: return "GL_PROGRAM_BINARY_FORMATS"; 1180 case GL_NUM_PROGRAM_BINARY_FORMATS: return "GL_NUM_PROGRAM_BINARY_FORMATS"; 1181 case GL_SHADER_BINARY_FORMATS: return "GL_SHADER_BINARY_FORMATS"; 1182 case GL_NUM_SHADER_BINARY_FORMATS: return "GL_NUM_SHADER_BINARY_FORMATS"; 1183 case GL_SHADER_COMPILER: return "GL_SHADER_COMPILER"; 1184 case GL_MAX_SERVER_WAIT_TIMEOUT: return "GL_MAX_SERVER_WAIT_TIMEOUT"; 1185 case GL_NUM_EXTENSIONS: return "GL_NUM_EXTENSIONS"; 1186 case GL_MAJOR_VERSION: return "GL_MAJOR_VERSION"; 1187 case GL_MINOR_VERSION: return "GL_MINOR_VERSION"; 1188 case GL_MAX_VERTEX_ATTRIBS: return "GL_MAX_VERTEX_ATTRIBS"; 1189 case GL_MAX_VERTEX_UNIFORM_COMPONENTS: return "GL_MAX_VERTEX_UNIFORM_COMPONENTS"; 1190 case GL_MAX_VERTEX_UNIFORM_VECTORS: return "GL_MAX_VERTEX_UNIFORM_VECTORS"; 1191 case GL_MAX_VERTEX_UNIFORM_BLOCKS: return "GL_MAX_VERTEX_UNIFORM_BLOCKS"; 1192 case GL_MAX_VERTEX_OUTPUT_COMPONENTS: return "GL_MAX_VERTEX_OUTPUT_COMPONENTS"; 1193 case GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS: return "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS"; 1194 case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS: return "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS"; 1195 case GL_MAX_FRAGMENT_UNIFORM_VECTORS: return "GL_MAX_FRAGMENT_UNIFORM_VECTORS"; 1196 case GL_MAX_FRAGMENT_UNIFORM_BLOCKS: return "GL_MAX_FRAGMENT_UNIFORM_BLOCKS"; 1197 case GL_MAX_FRAGMENT_INPUT_COMPONENTS: return "GL_MAX_FRAGMENT_INPUT_COMPONENTS"; 1198 case GL_MAX_TEXTURE_IMAGE_UNITS: return "GL_MAX_TEXTURE_IMAGE_UNITS"; 1199 case GL_MIN_PROGRAM_TEXEL_OFFSET: return "GL_MIN_PROGRAM_TEXEL_OFFSET"; 1200 case GL_MAX_PROGRAM_TEXEL_OFFSET: return "GL_MAX_PROGRAM_TEXEL_OFFSET"; 1201 case GL_MAX_UNIFORM_BUFFER_BINDINGS: return "GL_MAX_UNIFORM_BUFFER_BINDINGS"; 1202 case GL_MAX_UNIFORM_BLOCK_SIZE: return "GL_MAX_UNIFORM_BLOCK_SIZE"; 1203 case GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT: return "GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT"; 1204 case GL_MAX_COMBINED_UNIFORM_BLOCKS: return "GL_MAX_COMBINED_UNIFORM_BLOCKS"; 1205 case GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: return "GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS"; 1206 case GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: return "GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS"; 1207 case GL_MAX_VARYING_COMPONENTS: return "GL_MAX_VARYING_COMPONENTS"; 1208 case GL_MAX_VARYING_VECTORS: return "GL_MAX_VARYING_VECTORS"; 1209 case GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS: return "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS"; 1210 case GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: return "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"; 1211 case GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: return "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"; 1212 case GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: return "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"; 1213 case GL_SAMPLE_BUFFERS: return "GL_SAMPLE_BUFFERS"; 1214 case GL_SAMPLES: return "GL_SAMPLES"; 1215 case GL_MAX_SAMPLES: return "GL_MAX_SAMPLES"; 1216 case GL_DEPTH_BITS: return "GL_DEPTH_BITS"; 1217 case GL_STENCIL_BITS: return "GL_STENCIL_BITS"; 1218 case GL_IMPLEMENTATION_COLOR_READ_TYPE: return "GL_IMPLEMENTATION_COLOR_READ_TYPE"; 1219 case GL_IMPLEMENTATION_COLOR_READ_FORMAT: return "GL_IMPLEMENTATION_COLOR_READ_FORMAT"; 1220 case GL_COPY_READ_BUFFER_BINDING: return "GL_COPY_READ_BUFFER_BINDING"; 1221 case GL_COPY_WRITE_BUFFER_BINDING: return "GL_COPY_WRITE_BUFFER_BINDING"; 1222 case GL_RED_BITS: return "GL_RED_BITS"; 1223 case GL_GREEN_BITS: return "GL_GREEN_BITS"; 1224 case GL_BLUE_BITS: return "GL_BLUE_BITS"; 1225 case GL_ALPHA_BITS: return "GL_ALPHA_BITS"; 1226 case GL_MAX_COLOR_TEXTURE_SAMPLES: return "GL_MAX_COLOR_TEXTURE_SAMPLES"; 1227 case GL_TIMESTAMP: return "GL_TIMESTAMP"; 1228 case GL_MAX_DEPTH_TEXTURE_SAMPLES: return "GL_MAX_DEPTH_TEXTURE_SAMPLES"; 1229 case GL_MAX_INTEGER_SAMPLES: return "GL_MAX_INTEGER_SAMPLES"; 1230 case GL_TEXTURE_BINDING_2D_MULTISAMPLE: return "GL_TEXTURE_BINDING_2D_MULTISAMPLE"; 1231 case GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY: return "GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY"; 1232 case GL_MAX_VERTEX_ATTRIB_STRIDE: return "GL_MAX_VERTEX_ATTRIB_STRIDE"; 1233 case GL_MAX_VERTEX_ATTRIB_BINDINGS: return "GL_MAX_VERTEX_ATTRIB_BINDINGS"; 1234 case GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET: return "GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET"; 1235 case GL_MIN_SAMPLE_SHADING_VALUE: return "GL_MIN_SAMPLE_SHADING_VALUE"; 1236 case GL_FRAGMENT_INTERPOLATION_OFFSET_BITS: return "GL_FRAGMENT_INTERPOLATION_OFFSET_BITS"; 1237 case GL_MAX_FRAGMENT_INTERPOLATION_OFFSET: return "GL_MAX_FRAGMENT_INTERPOLATION_OFFSET"; 1238 case GL_MIN_FRAGMENT_INTERPOLATION_OFFSET: return "GL_MIN_FRAGMENT_INTERPOLATION_OFFSET"; 1239 case GL_MAX_GEOMETRY_SHADER_INVOCATIONS: return "GL_MAX_GEOMETRY_SHADER_INVOCATIONS"; 1240 case GL_LAYER_PROVOKING_VERTEX: return "GL_LAYER_PROVOKING_VERTEX"; 1241 case GL_MAX_GEOMETRY_UNIFORM_COMPONENTS: return "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS"; 1242 case GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS: return "GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS"; 1243 case GL_MAX_GEOMETRY_UNIFORM_BLOCKS: return "GL_MAX_GEOMETRY_UNIFORM_BLOCKS"; 1244 case GL_MAX_GEOMETRY_INPUT_COMPONENTS: return "GL_MAX_GEOMETRY_INPUT_COMPONENTS"; 1245 case GL_MAX_GEOMETRY_OUTPUT_COMPONENTS: return "GL_MAX_GEOMETRY_OUTPUT_COMPONENTS"; 1246 case GL_MAX_GEOMETRY_IMAGE_UNIFORMS: return "GL_MAX_GEOMETRY_IMAGE_UNIFORMS"; 1247 case GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS: return "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"; 1248 case GL_MAX_GEOMETRY_OUTPUT_VERTICES: return "GL_MAX_GEOMETRY_OUTPUT_VERTICES"; 1249 case GL_MAX_GEOMETRY_ATOMIC_COUNTERS: return "GL_MAX_GEOMETRY_ATOMIC_COUNTERS"; 1250 case GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS: return "GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS"; 1251 case GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS: return "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS"; 1252 case GL_MAX_FRAMEBUFFER_LAYERS: return "GL_MAX_FRAMEBUFFER_LAYERS"; 1253 case GL_PROVOKING_VERTEX: return "GL_PROVOKING_VERTEX"; 1254 case GL_PRIMITIVE_RESTART_INDEX: return "GL_PRIMITIVE_RESTART_INDEX"; 1255 case GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS: return "GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS"; 1256 case GL_MAX_FRAGMENT_ATOMIC_COUNTERS: return "GL_MAX_FRAGMENT_ATOMIC_COUNTERS"; 1257 case GL_MAX_FRAGMENT_IMAGE_UNIFORMS: return "GL_MAX_FRAGMENT_IMAGE_UNIFORMS"; 1258 case GL_MAX_COMPUTE_UNIFORM_BLOCKS: return "GL_MAX_COMPUTE_UNIFORM_BLOCKS"; 1259 case GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS: return "GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS"; 1260 case GL_MAX_COMPUTE_UNIFORM_COMPONENTS: return "GL_MAX_COMPUTE_UNIFORM_COMPONENTS"; 1261 case GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS: return "GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS"; 1262 case GL_MAX_COMPUTE_ATOMIC_COUNTERS: return "GL_MAX_COMPUTE_ATOMIC_COUNTERS"; 1263 case GL_MAX_COMPUTE_IMAGE_UNIFORMS: return "GL_MAX_COMPUTE_IMAGE_UNIFORMS"; 1264 case GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS: return "GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS"; 1265 case GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS: return "GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS"; 1266 case GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS: return "GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS"; 1267 case GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS: return "GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS"; 1268 case GL_MAX_VERTEX_ATOMIC_COUNTERS: return "GL_MAX_VERTEX_ATOMIC_COUNTERS"; 1269 case GL_MAX_VERTEX_IMAGE_UNIFORMS: return "GL_MAX_VERTEX_IMAGE_UNIFORMS"; 1270 case GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS: return "GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS"; 1271 case GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES: return "GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES"; 1272 case GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS: return "GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS"; 1273 case GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE: return "GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE"; 1274 case GL_MAX_IMAGE_UNITS: return "GL_MAX_IMAGE_UNITS"; 1275 case GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS: return "GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS"; 1276 case GL_MAX_COMBINED_IMAGE_UNIFORMS: return "GL_MAX_COMBINED_IMAGE_UNIFORMS"; 1277 case GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS: return "GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS"; 1278 case GL_MAX_SHADER_STORAGE_BLOCK_SIZE: return "GL_MAX_SHADER_STORAGE_BLOCK_SIZE"; 1279 case GL_MAX_COMBINED_ATOMIC_COUNTERS: return "GL_MAX_COMBINED_ATOMIC_COUNTERS"; 1280 case GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS: return "GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS"; 1281 case GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT: return "GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT"; 1282 case GL_PRIMITIVE_BOUNDING_BOX_EXT: return "GL_PRIMITIVE_BOUNDING_BOX_EXT"; 1283 case GL_DRAW_INDIRECT_BUFFER_BINDING: return "GL_DRAW_INDIRECT_BUFFER_BINDING"; 1284 case GL_MAX_SAMPLE_MASK_WORDS: return "GL_MAX_SAMPLE_MASK_WORDS"; 1285 case GL_PROGRAM_PIPELINE_BINDING: return "GL_PROGRAM_PIPELINE_BINDING"; 1286 case GL_ATOMIC_COUNTER_BUFFER_BINDING: return "GL_ATOMIC_COUNTER_BUFFER_BINDING"; 1287 case GL_SHADER_STORAGE_BUFFER_BINDING: return "GL_SHADER_STORAGE_BUFFER_BINDING"; 1288 case GL_DISPATCH_INDIRECT_BUFFER_BINDING: return "GL_DISPATCH_INDIRECT_BUFFER_BINDING"; 1289 case GL_MAX_FRAMEBUFFER_WIDTH: return "GL_MAX_FRAMEBUFFER_WIDTH"; 1290 case GL_MAX_FRAMEBUFFER_HEIGHT: return "GL_MAX_FRAMEBUFFER_HEIGHT"; 1291 case GL_MAX_FRAMEBUFFER_SAMPLES: return "GL_MAX_FRAMEBUFFER_SAMPLES"; 1292 case GL_MAX_COMPUTE_SHARED_MEMORY_SIZE: return "GL_MAX_COMPUTE_SHARED_MEMORY_SIZE"; 1293 case GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET: return "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET"; 1294 case GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET: return "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET"; 1295 case GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS: return "GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS"; 1296 case GL_MAX_UNIFORM_LOCATIONS: return "GL_MAX_UNIFORM_LOCATIONS"; 1297 case GL_MAX_DEBUG_MESSAGE_LENGTH: return "GL_MAX_DEBUG_MESSAGE_LENGTH"; 1298 case GL_MAX_DEBUG_LOGGED_MESSAGES: return "GL_MAX_DEBUG_LOGGED_MESSAGES"; 1299 case GL_MAX_DEBUG_GROUP_STACK_DEPTH: return "GL_MAX_DEBUG_GROUP_STACK_DEPTH"; 1300 case GL_MAX_LABEL_LENGTH: return "GL_MAX_LABEL_LENGTH"; 1301 case GL_CONTEXT_FLAGS: return "GL_CONTEXT_FLAGS"; 1302 case GL_DEBUG_LOGGED_MESSAGES: return "GL_DEBUG_LOGGED_MESSAGES"; 1303 case GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH: return "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH"; 1304 case GL_DEBUG_GROUP_STACK_DEPTH: return "GL_DEBUG_GROUP_STACK_DEPTH"; 1305 case GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS: return "GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS"; 1306 case GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT: return "GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT"; 1307 case GL_TEXTURE_BUFFER_BINDING: return "GL_TEXTURE_BUFFER_BINDING"; 1308 case GL_TEXTURE_BINDING_BUFFER: return "GL_TEXTURE_BINDING_BUFFER"; 1309 case GL_MAX_TEXTURE_BUFFER_SIZE: return "GL_MAX_TEXTURE_BUFFER_SIZE"; 1310 case GL_MAX_PATCH_VERTICES: return "GL_MAX_PATCH_VERTICES"; 1311 case GL_MAX_TESS_GEN_LEVEL: return "GL_MAX_TESS_GEN_LEVEL"; 1312 case GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS: return "GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS"; 1313 case GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS: return "GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS"; 1314 case GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS: return "GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS"; 1315 case GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS: return "GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS"; 1316 case GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS: return "GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS"; 1317 case GL_MAX_TESS_PATCH_COMPONENTS: return "GL_MAX_TESS_PATCH_COMPONENTS"; 1318 case GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS: return "GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS"; 1319 case GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS: return "GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS"; 1320 case GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS: return "GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS"; 1321 case GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS: return "GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS"; 1322 case GL_MAX_TESS_CONTROL_INPUT_COMPONENTS: return "GL_MAX_TESS_CONTROL_INPUT_COMPONENTS"; 1323 case GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS: return "GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS"; 1324 case GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS: return "GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS"; 1325 case GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS: return "GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS"; 1326 case GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS: return "GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS"; 1327 case GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS: return "GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS"; 1328 case GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS: return "GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS"; 1329 case GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS: return "GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS"; 1330 case GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS: return "GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS"; 1331 case GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS: return "GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS"; 1332 case GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS: return "GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS"; 1333 case GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS: return "GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS"; 1334 case GL_PATCH_VERTICES: return "GL_PATCH_VERTICES"; 1335 case GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED: return "GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED"; 1336 case GL_TEXTURE_2D: return "GL_TEXTURE_2D"; 1337 case GL_CULL_FACE: return "GL_CULL_FACE"; 1338 case GL_BLEND: return "GL_BLEND"; 1339 case GL_DITHER: return "GL_DITHER"; 1340 case GL_STENCIL_TEST: return "GL_STENCIL_TEST"; 1341 case GL_DEPTH_TEST: return "GL_DEPTH_TEST"; 1342 case GL_SCISSOR_TEST: return "GL_SCISSOR_TEST"; 1343 case GL_POLYGON_OFFSET_FILL: return "GL_POLYGON_OFFSET_FILL"; 1344 case GL_SAMPLE_ALPHA_TO_COVERAGE: return "GL_SAMPLE_ALPHA_TO_COVERAGE"; 1345 case GL_SAMPLE_COVERAGE: return "GL_SAMPLE_COVERAGE"; 1346 case GL_PRIMITIVE_RESTART_FIXED_INDEX: return "GL_PRIMITIVE_RESTART_FIXED_INDEX"; 1347 case GL_RASTERIZER_DISCARD: return "GL_RASTERIZER_DISCARD"; 1348 case GL_FRAMEBUFFER_SRGB: return "GL_FRAMEBUFFER_SRGB"; 1349 case GL_SAMPLE_SHADING: return "GL_SAMPLE_SHADING"; 1350 case GL_DEPTH_CLAMP: return "GL_DEPTH_CLAMP"; 1351 case GL_PRIMITIVE_RESTART: return "GL_PRIMITIVE_RESTART"; 1352 case GL_SAMPLE_MASK: return "GL_SAMPLE_MASK"; 1353 case GL_DEBUG_OUTPUT: return "GL_DEBUG_OUTPUT"; 1354 case GL_DEBUG_OUTPUT_SYNCHRONOUS: return "GL_DEBUG_OUTPUT_SYNCHRONOUS"; 1355 case GL_BLEND_ADVANCED_COHERENT_KHR: return "GL_BLEND_ADVANCED_COHERENT_KHR"; 1356 default: return DE_NULL; 1357 } 1358} 1359 1360const char* getGettableIndexedStateName (int value) 1361{ 1362 switch (value) 1363 { 1364 case GL_TRANSFORM_FEEDBACK_BUFFER_BINDING: return "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"; 1365 case GL_UNIFORM_BUFFER_BINDING: return "GL_UNIFORM_BUFFER_BINDING"; 1366 case GL_TRANSFORM_FEEDBACK_BUFFER_START: return "GL_TRANSFORM_FEEDBACK_BUFFER_START"; 1367 case GL_TRANSFORM_FEEDBACK_BUFFER_SIZE: return "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE"; 1368 case GL_UNIFORM_BUFFER_START: return "GL_UNIFORM_BUFFER_START"; 1369 case GL_UNIFORM_BUFFER_SIZE: return "GL_UNIFORM_BUFFER_SIZE"; 1370 case GL_SAMPLE_MASK_VALUE: return "GL_SAMPLE_MASK_VALUE"; 1371 case GL_VERTEX_BINDING_OFFSET: return "GL_VERTEX_BINDING_OFFSET"; 1372 case GL_VERTEX_BINDING_STRIDE: return "GL_VERTEX_BINDING_STRIDE"; 1373 case GL_VERTEX_BINDING_DIVISOR: return "GL_VERTEX_BINDING_DIVISOR"; 1374 case GL_VERTEX_BINDING_BUFFER: return "GL_VERTEX_BINDING_BUFFER"; 1375 case GL_MAX_COMPUTE_WORK_GROUP_COUNT: return "GL_MAX_COMPUTE_WORK_GROUP_COUNT"; 1376 case GL_MAX_COMPUTE_WORK_GROUP_SIZE: return "GL_MAX_COMPUTE_WORK_GROUP_SIZE"; 1377 case GL_ATOMIC_COUNTER_BUFFER_BINDING: return "GL_ATOMIC_COUNTER_BUFFER_BINDING"; 1378 case GL_ATOMIC_COUNTER_BUFFER_START: return "GL_ATOMIC_COUNTER_BUFFER_START"; 1379 case GL_ATOMIC_COUNTER_BUFFER_SIZE: return "GL_ATOMIC_COUNTER_BUFFER_SIZE"; 1380 case GL_SHADER_STORAGE_BUFFER_BINDING: return "GL_SHADER_STORAGE_BUFFER_BINDING"; 1381 case GL_SHADER_STORAGE_BUFFER_START: return "GL_SHADER_STORAGE_BUFFER_START"; 1382 case GL_SHADER_STORAGE_BUFFER_SIZE: return "GL_SHADER_STORAGE_BUFFER_SIZE"; 1383 case GL_IMAGE_BINDING_NAME: return "GL_IMAGE_BINDING_NAME"; 1384 case GL_IMAGE_BINDING_LEVEL: return "GL_IMAGE_BINDING_LEVEL"; 1385 case GL_IMAGE_BINDING_LAYERED: return "GL_IMAGE_BINDING_LAYERED"; 1386 case GL_IMAGE_BINDING_LAYER: return "GL_IMAGE_BINDING_LAYER"; 1387 case GL_IMAGE_BINDING_ACCESS: return "GL_IMAGE_BINDING_ACCESS"; 1388 case GL_IMAGE_BINDING_FORMAT: return "GL_IMAGE_BINDING_FORMAT"; 1389 case GL_BLEND_EQUATION_RGB: return "GL_BLEND_EQUATION_RGB"; 1390 case GL_BLEND_EQUATION_ALPHA: return "GL_BLEND_EQUATION_ALPHA"; 1391 case GL_BLEND_SRC_RGB: return "GL_BLEND_SRC_RGB"; 1392 case GL_BLEND_SRC_ALPHA: return "GL_BLEND_SRC_ALPHA"; 1393 case GL_BLEND_DST_RGB: return "GL_BLEND_DST_RGB"; 1394 case GL_BLEND_DST_ALPHA: return "GL_BLEND_DST_ALPHA"; 1395 case GL_COLOR_WRITEMASK: return "GL_COLOR_WRITEMASK"; 1396 default: return DE_NULL; 1397 } 1398} 1399 1400const char* getGettableStringName (int value) 1401{ 1402 switch (value) 1403 { 1404 case GL_EXTENSIONS: return "GL_EXTENSIONS"; 1405 case GL_RENDERER: return "GL_RENDERER"; 1406 case GL_SHADING_LANGUAGE_VERSION: return "GL_SHADING_LANGUAGE_VERSION"; 1407 case GL_VENDOR: return "GL_VENDOR"; 1408 case GL_VERSION: return "GL_VERSION"; 1409 default: return DE_NULL; 1410 } 1411} 1412 1413const char* getPointerStateName (int value) 1414{ 1415 switch (value) 1416 { 1417 case GL_DEBUG_CALLBACK_FUNCTION: return "GL_DEBUG_CALLBACK_FUNCTION"; 1418 case GL_DEBUG_CALLBACK_USER_PARAM: return "GL_DEBUG_CALLBACK_USER_PARAM"; 1419 default: return DE_NULL; 1420 } 1421} 1422 1423const char* getInternalFormatParameterName (int value) 1424{ 1425 switch (value) 1426 { 1427 case GL_NUM_SAMPLE_COUNTS: return "GL_NUM_SAMPLE_COUNTS"; 1428 case GL_SAMPLES: return "GL_SAMPLES"; 1429 default: return DE_NULL; 1430 } 1431} 1432 1433const char* getInternalFormatTargetName (int value) 1434{ 1435 switch (value) 1436 { 1437 case GL_RENDERBUFFER: return "GL_RENDERBUFFER"; 1438 case GL_TEXTURE_2D_MULTISAMPLE: return "GL_TEXTURE_2D_MULTISAMPLE"; 1439 case GL_TEXTURE_2D_MULTISAMPLE_ARRAY: return "GL_TEXTURE_2D_MULTISAMPLE_ARRAY"; 1440 case GL_TEXTURE_2D: return "GL_TEXTURE_2D"; 1441 case GL_TEXTURE_3D: return "GL_TEXTURE_3D"; 1442 case GL_TEXTURE_2D_ARRAY: return "GL_TEXTURE_2D_ARRAY"; 1443 case GL_TEXTURE_CUBE_MAP: return "GL_TEXTURE_CUBE_MAP"; 1444 default: return DE_NULL; 1445 } 1446} 1447 1448const char* getMultisampleParameterName (int value) 1449{ 1450 switch (value) 1451 { 1452 case GL_SAMPLE_POSITION: return "GL_SAMPLE_POSITION"; 1453 default: return DE_NULL; 1454 } 1455} 1456 1457const char* getQueryTargetName (int value) 1458{ 1459 switch (value) 1460 { 1461 case GL_SAMPLES_PASSED: return "GL_SAMPLES_PASSED"; 1462 case GL_ANY_SAMPLES_PASSED: return "GL_ANY_SAMPLES_PASSED"; 1463 case GL_PRIMITIVES_GENERATED: return "GL_PRIMITIVES_GENERATED"; 1464 case GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: return "GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"; 1465 case GL_TIME_ELAPSED: return "GL_TIME_ELAPSED"; 1466 default: return DE_NULL; 1467 } 1468} 1469 1470const char* getQueryParamName (int value) 1471{ 1472 switch (value) 1473 { 1474 case GL_CURRENT_QUERY: return "GL_CURRENT_QUERY"; 1475 case GL_QUERY_COUNTER_BITS: return "GL_QUERY_COUNTER_BITS"; 1476 default: return DE_NULL; 1477 } 1478} 1479 1480const char* getQueryObjectParamName (int value) 1481{ 1482 switch (value) 1483 { 1484 case GL_QUERY_RESULT: return "GL_QUERY_RESULT"; 1485 case GL_QUERY_RESULT_AVAILABLE: return "GL_QUERY_RESULT_AVAILABLE"; 1486 default: return DE_NULL; 1487 } 1488} 1489 1490const char* getImageAccessName (int value) 1491{ 1492 switch (value) 1493 { 1494 case GL_READ_ONLY: return "GL_READ_ONLY"; 1495 case GL_WRITE_ONLY: return "GL_WRITE_ONLY"; 1496 case GL_READ_WRITE: return "GL_READ_WRITE"; 1497 default: return DE_NULL; 1498 } 1499} 1500 1501const char* getProgramInterfaceName (int value) 1502{ 1503 switch (value) 1504 { 1505 case GL_UNIFORM: return "GL_UNIFORM"; 1506 case GL_UNIFORM_BLOCK: return "GL_UNIFORM_BLOCK"; 1507 case GL_ATOMIC_COUNTER_BUFFER: return "GL_ATOMIC_COUNTER_BUFFER"; 1508 case GL_PROGRAM_INPUT: return "GL_PROGRAM_INPUT"; 1509 case GL_PROGRAM_OUTPUT: return "GL_PROGRAM_OUTPUT"; 1510 case GL_TRANSFORM_FEEDBACK_VARYING: return "GL_TRANSFORM_FEEDBACK_VARYING"; 1511 case GL_BUFFER_VARIABLE: return "GL_BUFFER_VARIABLE"; 1512 case GL_SHADER_STORAGE_BLOCK: return "GL_SHADER_STORAGE_BLOCK"; 1513 default: return DE_NULL; 1514 } 1515} 1516 1517const char* getProgramResourcePropertyName (int value) 1518{ 1519 switch (value) 1520 { 1521 case GL_ACTIVE_VARIABLES: return "GL_ACTIVE_VARIABLES"; 1522 case GL_BUFFER_BINDING: return "GL_BUFFER_BINDING"; 1523 case GL_NUM_ACTIVE_VARIABLES: return "GL_NUM_ACTIVE_VARIABLES"; 1524 case GL_ARRAY_SIZE: return "GL_ARRAY_SIZE"; 1525 case GL_ARRAY_STRIDE: return "GL_ARRAY_STRIDE"; 1526 case GL_BLOCK_INDEX: return "GL_BLOCK_INDEX"; 1527 case GL_IS_ROW_MAJOR: return "GL_IS_ROW_MAJOR"; 1528 case GL_MATRIX_STRIDE: return "GL_MATRIX_STRIDE"; 1529 case GL_ATOMIC_COUNTER_BUFFER_INDEX: return "GL_ATOMIC_COUNTER_BUFFER_INDEX"; 1530 case GL_BUFFER_DATA_SIZE: return "GL_BUFFER_DATA_SIZE"; 1531 case GL_LOCATION: return "GL_LOCATION"; 1532 case GL_NAME_LENGTH: return "GL_NAME_LENGTH"; 1533 case GL_OFFSET: return "GL_OFFSET"; 1534 case GL_REFERENCED_BY_VERTEX_SHADER: return "GL_REFERENCED_BY_VERTEX_SHADER"; 1535 case GL_REFERENCED_BY_FRAGMENT_SHADER: return "GL_REFERENCED_BY_FRAGMENT_SHADER"; 1536 case GL_REFERENCED_BY_COMPUTE_SHADER: return "GL_REFERENCED_BY_COMPUTE_SHADER"; 1537 case GL_REFERENCED_BY_GEOMETRY_SHADER: return "GL_REFERENCED_BY_GEOMETRY_SHADER"; 1538 case GL_REFERENCED_BY_TESS_CONTROL_SHADER: return "GL_REFERENCED_BY_TESS_CONTROL_SHADER"; 1539 case GL_REFERENCED_BY_TESS_EVALUATION_SHADER: return "GL_REFERENCED_BY_TESS_EVALUATION_SHADER"; 1540 case GL_TOP_LEVEL_ARRAY_SIZE: return "GL_TOP_LEVEL_ARRAY_SIZE"; 1541 case GL_TOP_LEVEL_ARRAY_STRIDE: return "GL_TOP_LEVEL_ARRAY_STRIDE"; 1542 case GL_TYPE: return "GL_TYPE"; 1543 case GL_IS_PER_PATCH: return "GL_IS_PER_PATCH"; 1544 default: return DE_NULL; 1545 } 1546} 1547 1548const char* getPrecisionFormatTypeName (int value) 1549{ 1550 switch (value) 1551 { 1552 case GL_LOW_FLOAT: return "GL_LOW_FLOAT"; 1553 case GL_MEDIUM_FLOAT: return "GL_MEDIUM_FLOAT"; 1554 case GL_HIGH_FLOAT: return "GL_HIGH_FLOAT"; 1555 case GL_LOW_INT: return "GL_LOW_INT"; 1556 case GL_MEDIUM_INT: return "GL_MEDIUM_INT"; 1557 case GL_HIGH_INT: return "GL_HIGH_INT"; 1558 default: return DE_NULL; 1559 } 1560} 1561 1562const char* getTransformFeedbackTargetName (int value) 1563{ 1564 switch (value) 1565 { 1566 case GL_TRANSFORM_FEEDBACK: return "GL_TRANSFORM_FEEDBACK"; 1567 default: return DE_NULL; 1568 } 1569} 1570 1571const char* getProvokingVertexName (int value) 1572{ 1573 switch (value) 1574 { 1575 case GL_FIRST_VERTEX_CONVENTION: return "GL_FIRST_VERTEX_CONVENTION"; 1576 case GL_LAST_VERTEX_CONVENTION: return "GL_LAST_VERTEX_CONVENTION"; 1577 case GL_UNDEFINED_VERTEX: return "GL_UNDEFINED_VERTEX"; 1578 default: return DE_NULL; 1579 } 1580} 1581 1582const char* getDebugMessageSourceName (int value) 1583{ 1584 switch (value) 1585 { 1586 case GL_DEBUG_SOURCE_API: return "GL_DEBUG_SOURCE_API"; 1587 case GL_DEBUG_SOURCE_WINDOW_SYSTEM: return "GL_DEBUG_SOURCE_WINDOW_SYSTEM"; 1588 case GL_DEBUG_SOURCE_SHADER_COMPILER: return "GL_DEBUG_SOURCE_SHADER_COMPILER"; 1589 case GL_DEBUG_SOURCE_THIRD_PARTY: return "GL_DEBUG_SOURCE_THIRD_PARTY"; 1590 case GL_DEBUG_SOURCE_APPLICATION: return "GL_DEBUG_SOURCE_APPLICATION"; 1591 case GL_DEBUG_SOURCE_OTHER: return "GL_DEBUG_SOURCE_OTHER"; 1592 case GL_DONT_CARE: return "GL_DONT_CARE"; 1593 default: return DE_NULL; 1594 } 1595} 1596 1597const char* getDebugMessageTypeName (int value) 1598{ 1599 switch (value) 1600 { 1601 case GL_DEBUG_TYPE_ERROR: return "GL_DEBUG_TYPE_ERROR"; 1602 case GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR: return "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR"; 1603 case GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR: return "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR"; 1604 case GL_DEBUG_TYPE_PORTABILITY: return "GL_DEBUG_TYPE_PORTABILITY"; 1605 case GL_DEBUG_TYPE_PERFORMANCE: return "GL_DEBUG_TYPE_PERFORMANCE"; 1606 case GL_DEBUG_TYPE_OTHER: return "GL_DEBUG_TYPE_OTHER"; 1607 case GL_DEBUG_TYPE_MARKER: return "GL_DEBUG_TYPE_MARKER"; 1608 case GL_DEBUG_TYPE_PUSH_GROUP: return "GL_DEBUG_TYPE_PUSH_GROUP"; 1609 case GL_DEBUG_TYPE_POP_GROUP: return "GL_DEBUG_TYPE_POP_GROUP"; 1610 case GL_DONT_CARE: return "GL_DONT_CARE"; 1611 default: return DE_NULL; 1612 } 1613} 1614 1615const char* getDebugMessageSeverityName (int value) 1616{ 1617 switch (value) 1618 { 1619 case GL_DEBUG_SEVERITY_HIGH: return "GL_DEBUG_SEVERITY_HIGH"; 1620 case GL_DEBUG_SEVERITY_MEDIUM: return "GL_DEBUG_SEVERITY_MEDIUM"; 1621 case GL_DEBUG_SEVERITY_LOW: return "GL_DEBUG_SEVERITY_LOW"; 1622 case GL_DEBUG_SEVERITY_NOTIFICATION: return "GL_DEBUG_SEVERITY_NOTIFICATION"; 1623 case GL_DONT_CARE: return "GL_DONT_CARE"; 1624 default: return DE_NULL; 1625 } 1626} 1627 1628const char* getPipelineParamName (int value) 1629{ 1630 switch (value) 1631 { 1632 case GL_ACTIVE_PROGRAM: return "GL_ACTIVE_PROGRAM"; 1633 case GL_INFO_LOG_LENGTH: return "GL_INFO_LOG_LENGTH"; 1634 case GL_VALIDATE_STATUS: return "GL_VALIDATE_STATUS"; 1635 case GL_VERTEX_SHADER: return "GL_VERTEX_SHADER"; 1636 case GL_FRAGMENT_SHADER: return "GL_FRAGMENT_SHADER"; 1637 case GL_COMPUTE_SHADER: return "GL_COMPUTE_SHADER"; 1638 case GL_GEOMETRY_SHADER: return "GL_GEOMETRY_SHADER"; 1639 case GL_TESS_CONTROL_SHADER: return "GL_TESS_CONTROL_SHADER"; 1640 case GL_TESS_EVALUATION_SHADER: return "GL_TESS_EVALUATION_SHADER"; 1641 default: return DE_NULL; 1642 } 1643} 1644 1645const char* getPatchParamName (int value) 1646{ 1647 switch (value) 1648 { 1649 case GL_PATCH_VERTICES: return "GL_PATCH_VERTICES"; 1650 default: return DE_NULL; 1651 } 1652} 1653 1654const char* getTextureFormatName (int value) 1655{ 1656 switch (value) 1657 { 1658 case GL_LUMINANCE: return "GL_LUMINANCE"; 1659 case GL_LUMINANCE_ALPHA: return "GL_LUMINANCE_ALPHA"; 1660 case GL_ALPHA: return "GL_ALPHA"; 1661 case GL_RGB: return "GL_RGB"; 1662 case GL_RGBA: return "GL_RGBA"; 1663 case GL_RGBA4: return "GL_RGBA4"; 1664 case GL_RGB5_A1: return "GL_RGB5_A1"; 1665 case GL_RGB565: return "GL_RGB565"; 1666 case GL_DEPTH_COMPONENT16: return "GL_DEPTH_COMPONENT16"; 1667 case GL_STENCIL_INDEX8: return "GL_STENCIL_INDEX8"; 1668 case GL_RG: return "GL_RG"; 1669 case GL_RED: return "GL_RED"; 1670 case GL_RGBA_INTEGER: return "GL_RGBA_INTEGER"; 1671 case GL_RGB_INTEGER: return "GL_RGB_INTEGER"; 1672 case GL_RG_INTEGER: return "GL_RG_INTEGER"; 1673 case GL_RED_INTEGER: return "GL_RED_INTEGER"; 1674 case GL_DEPTH_COMPONENT: return "GL_DEPTH_COMPONENT"; 1675 case GL_DEPTH_STENCIL: return "GL_DEPTH_STENCIL"; 1676 case GL_RGBA32F: return "GL_RGBA32F"; 1677 case GL_RGBA32I: return "GL_RGBA32I"; 1678 case GL_RGBA32UI: return "GL_RGBA32UI"; 1679 case GL_RGBA16: return "GL_RGBA16"; 1680 case GL_RGBA16_SNORM: return "GL_RGBA16_SNORM"; 1681 case GL_RGBA16F: return "GL_RGBA16F"; 1682 case GL_RGBA16I: return "GL_RGBA16I"; 1683 case GL_RGBA16UI: return "GL_RGBA16UI"; 1684 case GL_RGBA8: return "GL_RGBA8"; 1685 case GL_RGBA8I: return "GL_RGBA8I"; 1686 case GL_RGBA8UI: return "GL_RGBA8UI"; 1687 case GL_SRGB8_ALPHA8: return "GL_SRGB8_ALPHA8"; 1688 case GL_RGB10_A2: return "GL_RGB10_A2"; 1689 case GL_RGB10_A2UI: return "GL_RGB10_A2UI"; 1690 case GL_RGBA8_SNORM: return "GL_RGBA8_SNORM"; 1691 case GL_RGB8: return "GL_RGB8"; 1692 case GL_R11F_G11F_B10F: return "GL_R11F_G11F_B10F"; 1693 case GL_RGB32F: return "GL_RGB32F"; 1694 case GL_RGB32I: return "GL_RGB32I"; 1695 case GL_RGB32UI: return "GL_RGB32UI"; 1696 case GL_RGB16: return "GL_RGB16"; 1697 case GL_RGB16_SNORM: return "GL_RGB16_SNORM"; 1698 case GL_RGB16F: return "GL_RGB16F"; 1699 case GL_RGB16I: return "GL_RGB16I"; 1700 case GL_RGB16UI: return "GL_RGB16UI"; 1701 case GL_RGB8_SNORM: return "GL_RGB8_SNORM"; 1702 case GL_RGB8I: return "GL_RGB8I"; 1703 case GL_RGB8UI: return "GL_RGB8UI"; 1704 case GL_SRGB8: return "GL_SRGB8"; 1705 case GL_RGB9_E5: return "GL_RGB9_E5"; 1706 case GL_RG32F: return "GL_RG32F"; 1707 case GL_RG32I: return "GL_RG32I"; 1708 case GL_RG32UI: return "GL_RG32UI"; 1709 case GL_RG16: return "GL_RG16"; 1710 case GL_RG16_SNORM: return "GL_RG16_SNORM"; 1711 case GL_RG16F: return "GL_RG16F"; 1712 case GL_RG16I: return "GL_RG16I"; 1713 case GL_RG16UI: return "GL_RG16UI"; 1714 case GL_RG8: return "GL_RG8"; 1715 case GL_RG8I: return "GL_RG8I"; 1716 case GL_RG8UI: return "GL_RG8UI"; 1717 case GL_RG8_SNORM: return "GL_RG8_SNORM"; 1718 case GL_R32F: return "GL_R32F"; 1719 case GL_R32I: return "GL_R32I"; 1720 case GL_R32UI: return "GL_R32UI"; 1721 case GL_R16: return "GL_R16"; 1722 case GL_R16_SNORM: return "GL_R16_SNORM"; 1723 case GL_R16F: return "GL_R16F"; 1724 case GL_R16I: return "GL_R16I"; 1725 case GL_R16UI: return "GL_R16UI"; 1726 case GL_R8: return "GL_R8"; 1727 case GL_R8I: return "GL_R8I"; 1728 case GL_R8UI: return "GL_R8UI"; 1729 case GL_R8_SNORM: return "GL_R8_SNORM"; 1730 case GL_DEPTH_COMPONENT32F: return "GL_DEPTH_COMPONENT32F"; 1731 case GL_DEPTH_COMPONENT24: return "GL_DEPTH_COMPONENT24"; 1732 case GL_DEPTH32F_STENCIL8: return "GL_DEPTH32F_STENCIL8"; 1733 case GL_DEPTH24_STENCIL8: return "GL_DEPTH24_STENCIL8"; 1734 case GL_RGB10: return "GL_RGB10"; 1735 case GL_DEPTH_COMPONENT32: return "GL_DEPTH_COMPONENT32"; 1736 case GL_SRGB: return "GL_SRGB"; 1737 case GL_SRGB_ALPHA: return "GL_SRGB_ALPHA"; 1738 case GL_SR8_EXT: return "GL_SR8_EXT"; 1739 case GL_SRG8_EXT: return "GL_SRG8_EXT"; 1740 case GL_BGRA: return "GL_BGRA"; 1741 case GL_COMPRESSED_R11_EAC: return "GL_COMPRESSED_R11_EAC"; 1742 case GL_COMPRESSED_SIGNED_R11_EAC: return "GL_COMPRESSED_SIGNED_R11_EAC"; 1743 case GL_COMPRESSED_RG11_EAC: return "GL_COMPRESSED_RG11_EAC"; 1744 case GL_COMPRESSED_SIGNED_RG11_EAC: return "GL_COMPRESSED_SIGNED_RG11_EAC"; 1745 case GL_COMPRESSED_RGB8_ETC2: return "GL_COMPRESSED_RGB8_ETC2"; 1746 case GL_COMPRESSED_SRGB8_ETC2: return "GL_COMPRESSED_SRGB8_ETC2"; 1747 case GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: return "GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2"; 1748 case GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: return "GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2"; 1749 case GL_COMPRESSED_RGBA8_ETC2_EAC: return "GL_COMPRESSED_RGBA8_ETC2_EAC"; 1750 case GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: return "GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC"; 1751 case GL_COMPRESSED_RGBA_ASTC_4x4_KHR: return "GL_COMPRESSED_RGBA_ASTC_4x4_KHR"; 1752 case GL_COMPRESSED_RGBA_ASTC_5x4_KHR: return "GL_COMPRESSED_RGBA_ASTC_5x4_KHR"; 1753 case GL_COMPRESSED_RGBA_ASTC_5x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_5x5_KHR"; 1754 case GL_COMPRESSED_RGBA_ASTC_6x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_6x5_KHR"; 1755 case GL_COMPRESSED_RGBA_ASTC_6x6_KHR: return "GL_COMPRESSED_RGBA_ASTC_6x6_KHR"; 1756 case GL_COMPRESSED_RGBA_ASTC_8x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_8x5_KHR"; 1757 case GL_COMPRESSED_RGBA_ASTC_8x6_KHR: return "GL_COMPRESSED_RGBA_ASTC_8x6_KHR"; 1758 case GL_COMPRESSED_RGBA_ASTC_8x8_KHR: return "GL_COMPRESSED_RGBA_ASTC_8x8_KHR"; 1759 case GL_COMPRESSED_RGBA_ASTC_10x5_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x5_KHR"; 1760 case GL_COMPRESSED_RGBA_ASTC_10x6_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x6_KHR"; 1761 case GL_COMPRESSED_RGBA_ASTC_10x8_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x8_KHR"; 1762 case GL_COMPRESSED_RGBA_ASTC_10x10_KHR: return "GL_COMPRESSED_RGBA_ASTC_10x10_KHR"; 1763 case GL_COMPRESSED_RGBA_ASTC_12x10_KHR: return "GL_COMPRESSED_RGBA_ASTC_12x10_KHR"; 1764 case GL_COMPRESSED_RGBA_ASTC_12x12_KHR: return "GL_COMPRESSED_RGBA_ASTC_12x12_KHR"; 1765 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR"; 1766 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR"; 1767 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR"; 1768 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR"; 1769 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR"; 1770 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR"; 1771 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR"; 1772 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR"; 1773 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR"; 1774 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR"; 1775 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR"; 1776 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR"; 1777 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR"; 1778 case GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR: return "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"; 1779 case GL_COMPRESSED_RGB_S3TC_DXT1_EXT: return "GL_COMPRESSED_RGB_S3TC_DXT1_EXT"; 1780 case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT: return "GL_COMPRESSED_RGBA_S3TC_DXT1_EXT"; 1781 case GL_COMPRESSED_RGBA_S3TC_DXT3_EXT: return "GL_COMPRESSED_RGBA_S3TC_DXT3_EXT"; 1782 case GL_COMPRESSED_RGBA_S3TC_DXT5_EXT: return "GL_COMPRESSED_RGBA_S3TC_DXT5_EXT"; 1783 case GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG: return "GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG"; 1784 case GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG: return "GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG"; 1785 case GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: return "GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG"; 1786 case GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: return "GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG"; 1787 default: return DE_NULL; 1788 } 1789} 1790 1791const char* getGraphicsResetStatusName (int value) 1792{ 1793 switch (value) 1794 { 1795 case GL_NO_ERROR: return "GL_NO_ERROR"; 1796 case GL_GUILTY_CONTEXT_RESET: return "GL_GUILTY_CONTEXT_RESET"; 1797 case GL_INNOCENT_CONTEXT_RESET: return "GL_INNOCENT_CONTEXT_RESET"; 1798 case GL_UNKNOWN_CONTEXT_RESET: return "GL_UNKNOWN_CONTEXT_RESET"; 1799 default: return DE_NULL; 1800 } 1801} 1802 1803tcu::Format::Bitfield<16> getBufferMaskStr (int value) 1804{ 1805 static const tcu::Format::BitDesc s_desc[] = 1806 { 1807 tcu::Format::BitDesc(GL_DEPTH_BUFFER_BIT, "GL_DEPTH_BUFFER_BIT"), 1808 tcu::Format::BitDesc(GL_STENCIL_BUFFER_BIT, "GL_STENCIL_BUFFER_BIT"), 1809 tcu::Format::BitDesc(GL_COLOR_BUFFER_BIT, "GL_COLOR_BUFFER_BIT"), 1810 }; 1811 return tcu::Format::Bitfield<16>(value, &s_desc[0], &s_desc[DE_LENGTH_OF_ARRAY(s_desc)]); 1812} 1813 1814tcu::Format::Bitfield<16> getBufferMapFlagsStr (int value) 1815{ 1816 static const tcu::Format::BitDesc s_desc[] = 1817 { 1818 tcu::Format::BitDesc(GL_MAP_READ_BIT, "GL_MAP_READ_BIT"), 1819 tcu::Format::BitDesc(GL_MAP_WRITE_BIT, "GL_MAP_WRITE_BIT"), 1820 tcu::Format::BitDesc(GL_MAP_INVALIDATE_RANGE_BIT, "GL_MAP_INVALIDATE_RANGE_BIT"), 1821 tcu::Format::BitDesc(GL_MAP_INVALIDATE_BUFFER_BIT, "GL_MAP_INVALIDATE_BUFFER_BIT"), 1822 tcu::Format::BitDesc(GL_MAP_FLUSH_EXPLICIT_BIT, "GL_MAP_FLUSH_EXPLICIT_BIT"), 1823 tcu::Format::BitDesc(GL_MAP_UNSYNCHRONIZED_BIT, "GL_MAP_UNSYNCHRONIZED_BIT"), 1824 }; 1825 return tcu::Format::Bitfield<16>(value, &s_desc[0], &s_desc[DE_LENGTH_OF_ARRAY(s_desc)]); 1826} 1827 1828tcu::Format::Bitfield<16> getMemoryBarrierFlagsStr (int value) 1829{ 1830 static const tcu::Format::BitDesc s_desc[] = 1831 { 1832 tcu::Format::BitDesc(GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT, "GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT"), 1833 tcu::Format::BitDesc(GL_ELEMENT_ARRAY_BARRIER_BIT, "GL_ELEMENT_ARRAY_BARRIER_BIT"), 1834 tcu::Format::BitDesc(GL_UNIFORM_BARRIER_BIT, "GL_UNIFORM_BARRIER_BIT"), 1835 tcu::Format::BitDesc(GL_TEXTURE_FETCH_BARRIER_BIT, "GL_TEXTURE_FETCH_BARRIER_BIT"), 1836 tcu::Format::BitDesc(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, "GL_SHADER_IMAGE_ACCESS_BARRIER_BIT"), 1837 tcu::Format::BitDesc(GL_COMMAND_BARRIER_BIT, "GL_COMMAND_BARRIER_BIT"), 1838 tcu::Format::BitDesc(GL_PIXEL_BUFFER_BARRIER_BIT, "GL_PIXEL_BUFFER_BARRIER_BIT"), 1839 tcu::Format::BitDesc(GL_TEXTURE_UPDATE_BARRIER_BIT, "GL_TEXTURE_UPDATE_BARRIER_BIT"), 1840 tcu::Format::BitDesc(GL_BUFFER_UPDATE_BARRIER_BIT, "GL_BUFFER_UPDATE_BARRIER_BIT"), 1841 tcu::Format::BitDesc(GL_FRAMEBUFFER_BARRIER_BIT, "GL_FRAMEBUFFER_BARRIER_BIT"), 1842 tcu::Format::BitDesc(GL_TRANSFORM_FEEDBACK_BARRIER_BIT, "GL_TRANSFORM_FEEDBACK_BARRIER_BIT"), 1843 tcu::Format::BitDesc(GL_ATOMIC_COUNTER_BARRIER_BIT, "GL_ATOMIC_COUNTER_BARRIER_BIT"), 1844 }; 1845 return tcu::Format::Bitfield<16>(value, &s_desc[0], &s_desc[DE_LENGTH_OF_ARRAY(s_desc)]); 1846} 1847 1848tcu::Format::Bitfield<16> getShaderTypeMaskStr (int value) 1849{ 1850 static const tcu::Format::BitDesc s_desc[] = 1851 { 1852 tcu::Format::BitDesc(GL_VERTEX_SHADER_BIT, "GL_VERTEX_SHADER_BIT"), 1853 tcu::Format::BitDesc(GL_FRAGMENT_SHADER_BIT, "GL_FRAGMENT_SHADER_BIT"), 1854 tcu::Format::BitDesc(GL_COMPUTE_SHADER_BIT, "GL_COMPUTE_SHADER_BIT"), 1855 tcu::Format::BitDesc(GL_GEOMETRY_SHADER_BIT, "GL_GEOMETRY_SHADER_BIT"), 1856 tcu::Format::BitDesc(GL_TESS_CONTROL_SHADER_BIT, "GL_TESS_CONTROL_SHADER_BIT"), 1857 tcu::Format::BitDesc(GL_TESS_EVALUATION_SHADER_BIT, "GL_TESS_EVALUATION_SHADER_BIT"), 1858 }; 1859 return tcu::Format::Bitfield<16>(value, &s_desc[0], &s_desc[DE_LENGTH_OF_ARRAY(s_desc)]); 1860} 1861