1 // GENERATED FILE - DO NOT EDIT. 2 // Generated by gen_extensions.py using data from registry_xml.py and gl.xml 3 // 4 // Copyright 2021 The ANGLE Project Authors. All rights reserved. 5 // Use of this source code is governed by a BSD-style license that can be 6 // found in the LICENSE file. 7 // 8 // gles_extensions_autogen.h: GLES extension information. 9 10 #ifndef LIBANGLE_GLES_EXTENSIONS_AUTOGEN_H_ 11 #define LIBANGLE_GLES_EXTENSIONS_AUTOGEN_H_ 12 13 namespace gl 14 { 15 class TextureCapsMap; 16 17 struct Extensions 18 { 19 Extensions(); 20 Extensions(const Extensions &other); 21 22 Extensions &operator=(const Extensions &other); 23 24 // Generate a vector of supported extension strings 25 std::vector<std::string> getStrings() const; 26 27 // Set all texture related extension support based on the supported textures. 28 // Determines support for: 29 // GL_OES_packed_depth_stencil 30 // GL_OES_rgb8_rgba8 31 // GL_EXT_texture_format_BGRA8888 32 // GL_EXT_color_buffer_half_float, 33 // GL_OES_texture_half_float, GL_OES_texture_half_float_linear 34 // GL_OES_texture_float, GL_OES_texture_float_linear 35 // GL_EXT_texture_rg 36 // GL_EXT_texture_type_2_10_10_10_REV 37 // GL_EXT_texture_compression_dxt1, GL_ANGLE_texture_compression_dxt3, 38 // GL_ANGLE_texture_compression_dxt5 39 // GL_KHR_texture_compression_astc_ldr, GL_OES_texture_compression_astc. 40 // NOTE: GL_KHR_texture_compression_astc_hdr must be enabled separately. Support for the 41 // HDR profile cannot be determined from the format enums alone. 42 // GL_OES_compressed_ETC1_RGB8_texture 43 // GL_EXT_sRGB 44 // GL_ANGLE_depth_texture, GL_OES_depth32 45 // GL_EXT_color_buffer_float 46 // GL_EXT_texture_norm16 47 // GL_EXT_texture_compression_bptc 48 // GL_EXT_texture_compression_rgtc 49 void setTextureExtensionSupport(const TextureCapsMap &textureCaps); 50 51 // Helper functions clipCullDistanceAnyExtensions52 bool clipCullDistanceAny() const { return (clipCullDistanceANGLE || clipCullDistanceEXT); } copyImageAnyExtensions53 bool copyImageAny() const { return (copyImageEXT || copyImageOES); } depthTextureAnyExtensions54 bool depthTextureAny() const { return (depthTextureANGLE || depthTextureOES); } drawBuffersIndexedAnyExtensions55 bool drawBuffersIndexedAny() const { return (drawBuffersIndexedEXT || drawBuffersIndexedOES); } drawElementsBaseVertexAnyExtensions56 bool drawElementsBaseVertexAny() const 57 { 58 return (drawElementsBaseVertexEXT || drawElementsBaseVertexOES); 59 } framebufferBlitAnyExtensions60 bool framebufferBlitAny() const { return (framebufferBlitANGLE || framebufferBlitNV); } geometryShaderAnyExtensions61 bool geometryShaderAny() const { return (geometryShaderEXT || geometryShaderOES); } gpuShader5AnyExtensions62 bool gpuShader5Any() const { return (gpuShader5EXT || gpuShader5OES); } instancedArraysAnyExtensions63 bool instancedArraysAny() const { return (instancedArraysANGLE || instancedArraysEXT); } polygonModeAnyExtensions64 bool polygonModeAny() const { return (polygonModeANGLE || polygonModeNV); } primitiveBoundingBoxAnyExtensions65 bool primitiveBoundingBoxAny() const 66 { 67 return (primitiveBoundingBoxEXT || primitiveBoundingBoxOES); 68 } robustnessAnyExtensions69 bool robustnessAny() const { return (robustnessEXT || robustnessKHR); } shaderFramebufferFetchAnyExtensions70 bool shaderFramebufferFetchAny() const 71 { 72 return (shaderFramebufferFetchARM || shaderFramebufferFetchEXT); 73 } shaderIoBlocksAnyExtensions74 bool shaderIoBlocksAny() const { return (shaderIoBlocksEXT || shaderIoBlocksOES); } tessellationShaderAnyExtensions75 bool tessellationShaderAny() const { return (tessellationShaderEXT || tessellationShaderOES); } textureBorderClampAnyExtensions76 bool textureBorderClampAny() const { return (textureBorderClampEXT || textureBorderClampOES); } textureBufferAnyExtensions77 bool textureBufferAny() const { return (textureBufferEXT || textureBufferOES); } textureCubeMapArrayAnyExtensions78 bool textureCubeMapArrayAny() const 79 { 80 return (textureCubeMapArrayEXT || textureCubeMapArrayOES); 81 } 82 83 // GLES 2.0+ extensions 84 // -------------------- 85 86 // GL_EXT_base_instance 87 bool baseInstanceEXT = false; 88 89 // GL_KHR_blend_equation_advanced 90 bool blendEquationAdvancedKHR = false; 91 92 // GL_EXT_blend_func_extended 93 bool blendFuncExtendedEXT = false; 94 95 // GL_EXT_blend_minmax 96 bool blendMinmaxEXT = false; 97 98 // GL_EXT_buffer_storage 99 bool bufferStorageEXT = false; 100 101 // GL_EXT_clip_control 102 bool clipControlEXT = false; 103 104 // GL_EXT_clip_cull_distance 105 bool clipCullDistanceEXT = false; 106 107 // GL_APPLE_clip_distance 108 bool clipDistanceAPPLE = false; 109 110 // GL_EXT_color_buffer_float 111 bool colorBufferFloatEXT = false; 112 113 // GL_EXT_color_buffer_half_float 114 bool colorBufferHalfFloatEXT = false; 115 116 // GL_OES_compressed_EAC_R11_signed_texture 117 bool compressedEACR11SignedTextureOES = false; 118 119 // GL_OES_compressed_EAC_R11_unsigned_texture 120 bool compressedEACR11UnsignedTextureOES = false; 121 122 // GL_OES_compressed_EAC_RG11_signed_texture 123 bool compressedEACRG11SignedTextureOES = false; 124 125 // GL_OES_compressed_EAC_RG11_unsigned_texture 126 bool compressedEACRG11UnsignedTextureOES = false; 127 128 // GL_EXT_compressed_ETC1_RGB8_sub_texture 129 bool compressedETC1RGB8SubTextureEXT = false; 130 131 // GL_OES_compressed_ETC1_RGB8_texture 132 bool compressedETC1RGB8TextureOES = false; 133 134 // GL_OES_compressed_ETC2_punchthroughA_RGBA8_texture 135 bool compressedETC2PunchthroughARGBA8TextureOES = false; 136 137 // GL_OES_compressed_ETC2_punchthroughA_sRGB8_alpha_texture 138 bool compressedETC2PunchthroughASRGB8AlphaTextureOES = false; 139 140 // GL_OES_compressed_ETC2_RGB8_texture 141 bool compressedETC2RGB8TextureOES = false; 142 143 // GL_OES_compressed_ETC2_RGBA8_texture 144 bool compressedETC2RGBA8TextureOES = false; 145 146 // GL_OES_compressed_ETC2_sRGB8_alpha8_texture 147 bool compressedETC2SRGB8Alpha8TextureOES = false; 148 149 // GL_OES_compressed_ETC2_sRGB8_texture 150 bool compressedETC2SRGB8TextureOES = false; 151 152 // GL_OES_compressed_paletted_texture 153 bool compressedPalettedTextureOES = false; 154 155 // GL_EXT_conservative_depth 156 bool conservativeDepthEXT = false; 157 158 // GL_EXT_copy_image 159 bool copyImageEXT = false; 160 161 // GL_OES_copy_image 162 bool copyImageOES = false; 163 164 // GL_KHR_debug 165 bool debugKHR = false; 166 167 // GL_EXT_debug_label 168 bool debugLabelEXT = false; 169 170 // GL_EXT_debug_marker 171 bool debugMarkerEXT = false; 172 173 // GL_OES_depth24 174 bool depth24OES = false; 175 176 // GL_OES_depth32 177 bool depth32OES = false; 178 179 // GL_NV_depth_buffer_float2 180 bool depthBufferFloat2NV = false; 181 182 // GL_EXT_depth_clamp 183 bool depthClampEXT = false; 184 185 // GL_ANGLE_depth_texture 186 bool depthTextureANGLE = false; 187 188 // GL_OES_depth_texture 189 bool depthTextureOES = false; 190 191 // GL_OES_depth_texture_cube_map 192 bool depthTextureCubeMapOES = false; 193 194 // GL_EXT_discard_framebuffer 195 bool discardFramebufferEXT = false; 196 197 // GL_EXT_disjoint_timer_query 198 bool disjointTimerQueryEXT = false; 199 200 // GL_EXT_draw_buffers 201 bool drawBuffersEXT = false; 202 203 // GL_EXT_draw_buffers_indexed 204 bool drawBuffersIndexedEXT = false; 205 206 // GL_OES_draw_buffers_indexed 207 bool drawBuffersIndexedOES = false; 208 209 // GL_EXT_draw_elements_base_vertex 210 bool drawElementsBaseVertexEXT = false; 211 212 // GL_OES_draw_elements_base_vertex 213 bool drawElementsBaseVertexOES = false; 214 215 // GL_OES_EGL_image 216 bool EGLImageOES = false; 217 218 // GL_EXT_EGL_image_array 219 bool EGLImageArrayEXT = false; 220 221 // GL_OES_EGL_image_external 222 bool EGLImageExternalOES = false; 223 224 // GL_OES_EGL_image_external_essl3 225 bool EGLImageExternalEssl3OES = false; 226 227 // GL_EXT_EGL_image_external_wrap_modes 228 bool EGLImageExternalWrapModesEXT = false; 229 230 // GL_EXT_EGL_image_storage 231 bool EGLImageStorageEXT = false; 232 233 // GL_NV_EGL_stream_consumer_external 234 bool EGLStreamConsumerExternalNV = false; 235 236 // GL_OES_EGL_sync 237 bool EGLSyncOES = false; 238 239 // GL_OES_element_index_uint 240 bool elementIndexUintOES = false; 241 242 // GL_ANDROID_extension_pack_es31a 243 bool extensionPackEs31aANDROID = false; 244 245 // GL_EXT_external_buffer 246 bool externalBufferEXT = false; 247 248 // GL_OES_fbo_render_mipmap 249 bool fboRenderMipmapOES = false; 250 251 // GL_NV_fence 252 bool fenceNV = false; 253 254 // GL_EXT_float_blend 255 bool floatBlendEXT = false; 256 257 // GL_EXT_frag_depth 258 bool fragDepthEXT = false; 259 260 // GL_ANGLE_framebuffer_blit 261 bool framebufferBlitANGLE = false; 262 263 // GL_NV_framebuffer_blit 264 bool framebufferBlitNV = false; 265 266 // GL_MESA_framebuffer_flip_y 267 bool framebufferFlipYMESA = false; 268 269 // GL_QCOM_framebuffer_foveated 270 bool framebufferFoveatedQCOM = false; 271 272 // GL_EXT_geometry_shader 273 bool geometryShaderEXT = false; 274 275 // GL_OES_geometry_shader 276 bool geometryShaderOES = false; 277 278 // GL_OES_get_program_binary 279 bool getProgramBinaryOES = false; 280 281 // GL_EXT_gpu_shader5 282 bool gpuShader5EXT = false; 283 284 // GL_OES_gpu_shader5 285 bool gpuShader5OES = false; 286 287 // GL_ANGLE_instanced_arrays 288 bool instancedArraysANGLE = false; 289 290 // GL_EXT_instanced_arrays 291 bool instancedArraysEXT = false; 292 293 // GL_OES_mapbuffer 294 bool mapbufferOES = false; 295 296 // GL_EXT_map_buffer_range 297 bool mapBufferRangeEXT = false; 298 299 // GL_EXT_memory_object 300 bool memoryObjectEXT = false; 301 302 // GL_EXT_memory_object_fd 303 bool memoryObjectFdEXT = false; 304 305 // GL_EXT_multi_draw_indirect 306 bool multiDrawIndirectEXT = false; 307 308 // GL_EXT_multisample_compatibility 309 bool multisampleCompatibilityEXT = false; 310 311 // GL_EXT_multisampled_render_to_texture 312 bool multisampledRenderToTextureEXT = false; 313 314 // GL_EXT_multisampled_render_to_texture2 315 bool multisampledRenderToTexture2EXT = false; 316 317 // GL_OVR_multiview 318 bool multiviewOVR = false; 319 320 // GL_OVR_multiview2 321 bool multiview2OVR = false; 322 323 // GL_KHR_no_error 324 bool noErrorKHR = false; 325 326 // GL_EXT_occlusion_query_boolean 327 bool occlusionQueryBooleanEXT = false; 328 329 // GL_OES_packed_depth_stencil 330 bool packedDepthStencilOES = false; 331 332 // GL_ANGLE_pack_reverse_row_order 333 bool packReverseRowOrderANGLE = false; 334 335 // GL_NV_pack_subimage 336 bool packSubimageNV = false; 337 338 // GL_KHR_parallel_shader_compile 339 bool parallelShaderCompileKHR = false; 340 341 // GL_AMD_performance_monitor 342 bool performanceMonitorAMD = false; 343 344 // GL_NV_pixel_buffer_object 345 bool pixelBufferObjectNV = false; 346 347 // GL_NV_polygon_mode 348 bool polygonModeNV = false; 349 350 // GL_EXT_polygon_offset_clamp 351 bool polygonOffsetClampEXT = false; 352 353 // GL_EXT_primitive_bounding_box 354 bool primitiveBoundingBoxEXT = false; 355 356 // GL_OES_primitive_bounding_box 357 bool primitiveBoundingBoxOES = false; 358 359 // GL_EXT_protected_textures 360 bool protectedTexturesEXT = false; 361 362 // GL_EXT_pvrtc_sRGB 363 bool pvrtcSRGBEXT = false; 364 365 // GL_NV_read_depth 366 bool readDepthNV = false; 367 368 // GL_NV_read_depth_stencil 369 bool readDepthStencilNV = false; 370 371 // GL_EXT_read_format_bgra 372 bool readFormatBgraEXT = false; 373 374 // GL_NV_read_stencil 375 bool readStencilNV = false; 376 377 // GL_QCOM_render_shared_exponent 378 bool renderSharedExponentQCOM = false; 379 380 // GL_EXT_render_snorm 381 bool renderSnormEXT = false; 382 383 // GL_OES_rgb8_rgba8 384 bool rgb8Rgba8OES = false; 385 386 // GL_KHR_robust_buffer_access_behavior 387 bool robustBufferAccessBehaviorKHR = false; 388 389 // GL_EXT_robustness 390 bool robustnessEXT = false; 391 392 // GL_KHR_robustness 393 bool robustnessKHR = false; 394 395 // GL_NV_robustness_video_memory_purge 396 bool robustnessVideoMemoryPurgeNV = false; 397 398 // GL_OES_sample_shading 399 bool sampleShadingOES = false; 400 401 // GL_OES_sample_variables 402 bool sampleVariablesOES = false; 403 404 // GL_EXT_semaphore 405 bool semaphoreEXT = false; 406 407 // GL_EXT_semaphore_fd 408 bool semaphoreFdEXT = false; 409 410 // GL_EXT_separate_shader_objects 411 bool separateShaderObjectsEXT = false; 412 413 // GL_ARM_shader_framebuffer_fetch 414 bool shaderFramebufferFetchARM = false; 415 416 // GL_EXT_shader_framebuffer_fetch 417 bool shaderFramebufferFetchEXT = false; 418 419 // GL_EXT_shader_framebuffer_fetch_non_coherent 420 bool shaderFramebufferFetchNonCoherentEXT = false; 421 422 // GL_OES_shader_image_atomic 423 bool shaderImageAtomicOES = false; 424 425 // GL_EXT_shader_io_blocks 426 bool shaderIoBlocksEXT = false; 427 428 // GL_OES_shader_io_blocks 429 bool shaderIoBlocksOES = false; 430 431 // GL_OES_shader_multisample_interpolation 432 bool shaderMultisampleInterpolationOES = false; 433 434 // GL_EXT_shader_non_constant_global_initializers 435 bool shaderNonConstantGlobalInitializersEXT = false; 436 437 // GL_NV_shader_noperspective_interpolation 438 bool shaderNoperspectiveInterpolationNV = false; 439 440 // GL_EXT_shader_texture_lod 441 bool shaderTextureLodEXT = false; 442 443 // GL_QCOM_shading_rate 444 bool shadingRateQCOM = false; 445 446 // GL_EXT_shadow_samplers 447 bool shadowSamplersEXT = false; 448 449 // GL_EXT_sRGB 450 bool sRGBEXT = false; 451 452 // GL_EXT_sRGB_write_control 453 bool sRGBWriteControlEXT = false; 454 455 // GL_OES_standard_derivatives 456 bool standardDerivativesOES = false; 457 458 // GL_OES_surfaceless_context 459 bool surfacelessContextOES = false; 460 461 // GL_ARB_sync 462 bool syncARB = false; 463 464 // GL_EXT_tessellation_shader 465 bool tessellationShaderEXT = false; 466 467 // GL_OES_tessellation_shader 468 bool tessellationShaderOES = false; 469 470 // GL_OES_texture_3D 471 bool texture3DOES = false; 472 473 // GL_EXT_texture_border_clamp 474 bool textureBorderClampEXT = false; 475 476 // GL_OES_texture_border_clamp 477 bool textureBorderClampOES = false; 478 479 // GL_EXT_texture_buffer 480 bool textureBufferEXT = false; 481 482 // GL_OES_texture_buffer 483 bool textureBufferOES = false; 484 485 // GL_OES_texture_compression_astc 486 bool textureCompressionAstcOES = false; 487 488 // GL_EXT_texture_compression_astc_decode_mode 489 bool textureCompressionAstcDecodeModeEXT = false; 490 491 // GL_EXT_texture_compression_astc_decode_mode_rgb9e5 492 bool textureCompressionAstcDecodeModeRgb9e5EXT = false; 493 494 // GL_KHR_texture_compression_astc_hdr 495 bool textureCompressionAstcHdrKHR = false; 496 497 // GL_KHR_texture_compression_astc_ldr 498 bool textureCompressionAstcLdrKHR = false; 499 500 // GL_KHR_texture_compression_astc_sliced_3d 501 bool textureCompressionAstcSliced3dKHR = false; 502 503 // GL_EXT_texture_compression_bptc 504 bool textureCompressionBptcEXT = false; 505 506 // GL_EXT_texture_compression_dxt1 507 bool textureCompressionDxt1EXT = false; 508 509 // GL_IMG_texture_compression_pvrtc 510 bool textureCompressionPvrtcIMG = false; 511 512 // GL_IMG_texture_compression_pvrtc2 513 bool textureCompressionPvrtc2IMG = false; 514 515 // GL_EXT_texture_compression_rgtc 516 bool textureCompressionRgtcEXT = false; 517 518 // GL_EXT_texture_compression_s3tc 519 bool textureCompressionS3tcEXT = false; 520 521 // GL_EXT_texture_compression_s3tc_srgb 522 bool textureCompressionS3tcSrgbEXT = false; 523 524 // GL_EXT_texture_cube_map_array 525 bool textureCubeMapArrayEXT = false; 526 527 // GL_OES_texture_cube_map_array 528 bool textureCubeMapArrayOES = false; 529 530 // GL_EXT_texture_filter_anisotropic 531 bool textureFilterAnisotropicEXT = false; 532 533 // GL_EXT_texture_filter_minmax 534 bool textureFilterMinmaxEXT = false; 535 536 // GL_OES_texture_float 537 bool textureFloatOES = false; 538 539 // GL_OES_texture_float_linear 540 bool textureFloatLinearOES = false; 541 542 // GL_EXT_texture_format_BGRA8888 543 bool textureFormatBGRA8888EXT = false; 544 545 // GL_EXT_texture_format_sRGB_override 546 bool textureFormatSRGBOverrideEXT = false; 547 548 // GL_QCOM_texture_foveated 549 bool textureFoveatedQCOM = false; 550 551 // GL_OES_texture_half_float 552 bool textureHalfFloatOES = false; 553 554 // GL_OES_texture_half_float_linear 555 bool textureHalfFloatLinearOES = false; 556 557 // GL_EXT_texture_mirror_clamp_to_edge 558 bool textureMirrorClampToEdgeEXT = false; 559 560 // GL_EXT_texture_norm16 561 bool textureNorm16EXT = false; 562 563 // GL_OES_texture_npot 564 bool textureNpotOES = false; 565 566 // GL_EXT_texture_rg 567 bool textureRgEXT = false; 568 569 // GL_EXT_texture_sRGB_decode 570 bool textureSRGBDecodeEXT = false; 571 572 // GL_EXT_texture_sRGB_R8 573 bool textureSRGBR8EXT = false; 574 575 // GL_EXT_texture_sRGB_RG8 576 bool textureSRGBRG8EXT = false; 577 578 // GL_OES_texture_stencil8 579 bool textureStencil8OES = false; 580 581 // GL_EXT_texture_storage 582 bool textureStorageEXT = false; 583 584 // GL_OES_texture_storage_multisample_2d_array 585 bool textureStorageMultisample2dArrayOES = false; 586 587 // GL_EXT_texture_type_2_10_10_10_REV 588 bool textureType2101010REVEXT = false; 589 590 // GL_ANGLE_texture_usage 591 bool textureUsageANGLE = false; 592 593 // GL_ANGLE_translated_shader_source 594 bool translatedShaderSourceANGLE = false; 595 596 // GL_EXT_unpack_subimage 597 bool unpackSubimageEXT = false; 598 599 // GL_OES_vertex_array_object 600 bool vertexArrayObjectOES = false; 601 602 // GL_OES_vertex_half_float 603 bool vertexHalfFloatOES = false; 604 605 // GL_OES_vertex_type_10_10_10_2 606 bool vertexType1010102OES = false; 607 608 // GL_WEBGL_video_texture 609 bool videoTextureWEBGL = false; 610 611 // GL_EXT_YUV_target 612 bool YUVTargetEXT = false; 613 614 // ANGLE unofficial extensions 615 // --------------------------- 616 617 // GL_ANGLE_base_vertex_base_instance 618 bool baseVertexBaseInstanceANGLE = false; 619 620 // GL_ANGLE_base_vertex_base_instance_shader_builtin 621 bool baseVertexBaseInstanceShaderBuiltinANGLE = false; 622 623 // GL_CHROMIUM_bind_generates_resource 624 bool bindGeneratesResourceCHROMIUM = false; 625 626 // GL_CHROMIUM_bind_uniform_location 627 bool bindUniformLocationCHROMIUM = false; 628 629 // GL_ANGLE_client_arrays 630 bool clientArraysANGLE = false; 631 632 // GL_ANGLE_clip_cull_distance 633 bool clipCullDistanceANGLE = false; 634 635 // GL_CHROMIUM_color_buffer_float_rgb 636 bool colorBufferFloatRgbCHROMIUM = false; 637 638 // GL_CHROMIUM_color_buffer_float_rgba 639 bool colorBufferFloatRgbaCHROMIUM = false; 640 641 // GL_ANGLE_compressed_texture_etc 642 bool compressedTextureEtcANGLE = false; 643 644 // GL_CHROMIUM_copy_compressed_texture 645 bool copyCompressedTextureCHROMIUM = false; 646 647 // GL_CHROMIUM_copy_texture 648 bool copyTextureCHROMIUM = false; 649 650 // GL_ANGLE_copy_texture_3d 651 bool copyTexture3dANGLE = false; 652 653 // GL_CHROMIUM_framebuffer_mixed_samples 654 bool framebufferMixedSamplesCHROMIUM = false; 655 656 // GL_ANGLE_framebuffer_multisample 657 bool framebufferMultisampleANGLE = false; 658 659 // GL_ANGLE_get_image 660 bool getImageANGLE = false; 661 662 // GL_ANGLE_get_serialized_context_string 663 bool getSerializedContextStringANGLE = false; 664 665 // GL_ANGLE_get_tex_level_parameter 666 bool getTexLevelParameterANGLE = false; 667 668 // GL_ANGLE_logic_op 669 bool logicOpANGLE = false; 670 671 // GL_CHROMIUM_lose_context 672 bool loseContextCHROMIUM = false; 673 674 // GL_ANGLE_lossy_etc_decode 675 bool lossyEtcDecodeANGLE = false; 676 677 // GL_ANGLE_memory_object_flags 678 bool memoryObjectFlagsANGLE = false; 679 680 // GL_ANGLE_memory_object_fuchsia 681 bool memoryObjectFuchsiaANGLE = false; 682 683 // GL_ANGLE_memory_size 684 bool memorySizeANGLE = false; 685 686 // GL_ANGLE_multi_draw 687 bool multiDrawANGLE = false; 688 689 // GL_ANGLE_multiview_multisample 690 bool multiviewMultisampleANGLE = false; 691 692 // GL_ANGLE_polygon_mode 693 bool polygonModeANGLE = false; 694 695 // GL_ANGLE_program_binary 696 bool programBinaryANGLE = false; 697 698 // GL_ANGLE_program_binary_readiness_query 699 bool programBinaryReadinessQueryANGLE = false; 700 701 // GL_ANGLE_program_cache_control 702 bool programCacheControlANGLE = false; 703 704 // GL_ANGLE_provoking_vertex 705 bool provokingVertexANGLE = false; 706 707 // GL_ANGLE_read_only_depth_stencil_feedback_loops 708 bool readOnlyDepthStencilFeedbackLoopsANGLE = false; 709 710 // GL_ANGLE_relaxed_vertex_attribute_type 711 bool relaxedVertexAttributeTypeANGLE = false; 712 713 // GL_ANGLE_renderability_validation 714 bool renderabilityValidationANGLE = false; 715 716 // GL_ANGLE_request_extension 717 bool requestExtensionANGLE = false; 718 719 // GL_ANGLE_rgbx_internal_format 720 bool rgbxInternalFormatANGLE = false; 721 722 // GL_ANGLE_robust_client_memory 723 bool robustClientMemoryANGLE = false; 724 725 // GL_ANGLE_robust_fragment_shader_output 726 bool robustFragmentShaderOutputANGLE = false; 727 728 // GL_ANGLE_robust_resource_initialization 729 bool robustResourceInitializationANGLE = false; 730 731 // GL_ANGLE_semaphore_fuchsia 732 bool semaphoreFuchsiaANGLE = false; 733 734 // GL_ANGLE_shader_binary 735 bool shaderBinaryANGLE = false; 736 737 // GL_ANGLE_shader_pixel_local_storage 738 bool shaderPixelLocalStorageANGLE = false; 739 740 // GL_ANGLE_shader_pixel_local_storage_coherent 741 bool shaderPixelLocalStorageCoherentANGLE = false; 742 743 // GL_ANGLE_stencil_texturing 744 bool stencilTexturingANGLE = false; 745 746 // GL_CHROMIUM_sync_query 747 bool syncQueryCHROMIUM = false; 748 749 // GL_ANGLE_texture_compression_dxt3 750 bool textureCompressionDxt3ANGLE = false; 751 752 // GL_ANGLE_texture_compression_dxt5 753 bool textureCompressionDxt5ANGLE = false; 754 755 // GL_ANGLE_texture_external_update 756 bool textureExternalUpdateANGLE = false; 757 758 // GL_ANGLE_texture_multisample 759 bool textureMultisampleANGLE = false; 760 761 // GL_ANGLE_texture_rectangle 762 bool textureRectangleANGLE = false; 763 764 // GL_ANGLE_vulkan_image 765 bool vulkanImageANGLE = false; 766 767 // GL_ANGLE_webgl_compatibility 768 bool webglCompatibilityANGLE = false; 769 770 // GL_ANGLE_yuv_internal_format 771 bool yuvInternalFormatANGLE = false; 772 773 // GLES 1.0 and 1.1 extensions 774 // --------------------------- 775 776 // GL_OES_draw_texture 777 bool drawTextureOES = false; 778 779 // GL_OES_framebuffer_object 780 bool framebufferObjectOES = false; 781 782 // GL_OES_matrix_palette 783 bool matrixPaletteOES = false; 784 785 // GL_OES_point_size_array 786 bool pointSizeArrayOES = false; 787 788 // GL_OES_point_sprite 789 bool pointSpriteOES = false; 790 791 // GL_OES_query_matrix 792 bool queryMatrixOES = false; 793 794 // GL_OES_texture_cube_map 795 bool textureCubeMapOES = false; 796 }; 797 } // namespace gl 798 799 #endif // LIBANGLE_GLES_EXTENSIONS_AUTOGEN_H_ 800