1 // GENERATED FILE - DO NOT EDIT. 2 // Generated by generate_entry_points.py using data from gl.xml and gl_angle_ext.xml. 3 // 4 // Copyright 2020 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 // validationESEXT_autogen.h: 9 // Validation functions for the OpenGL ES extension entry points. 10 11 #ifndef LIBANGLE_VALIDATION_ESEXT_AUTOGEN_H_ 12 #define LIBANGLE_VALIDATION_ESEXT_AUTOGEN_H_ 13 14 #include "common/PackedEnums.h" 15 #include "common/entry_points_enum_autogen.h" 16 17 namespace gl 18 { 19 class Context; 20 class PrivateState; 21 class ErrorSet; 22 23 // GL_AMD_performance_monitor 24 bool ValidateBeginPerfMonitorAMD(const Context *context, 25 angle::EntryPoint entryPoint, 26 GLuint monitor); 27 bool ValidateDeletePerfMonitorsAMD(const Context *context, 28 angle::EntryPoint entryPoint, 29 GLsizei n, 30 const GLuint *monitors); 31 bool ValidateEndPerfMonitorAMD(const Context *context, 32 angle::EntryPoint entryPoint, 33 GLuint monitor); 34 bool ValidateGenPerfMonitorsAMD(const Context *context, 35 angle::EntryPoint entryPoint, 36 GLsizei n, 37 const GLuint *monitors); 38 bool ValidateGetPerfMonitorCounterDataAMD(const Context *context, 39 angle::EntryPoint entryPoint, 40 GLuint monitor, 41 GLenum pname, 42 GLsizei dataSize, 43 const GLuint *data, 44 const GLint *bytesWritten); 45 bool ValidateGetPerfMonitorCounterInfoAMD(const Context *context, 46 angle::EntryPoint entryPoint, 47 GLuint group, 48 GLuint counter, 49 GLenum pname, 50 const void *data); 51 bool ValidateGetPerfMonitorCounterStringAMD(const Context *context, 52 angle::EntryPoint entryPoint, 53 GLuint group, 54 GLuint counter, 55 GLsizei bufSize, 56 const GLsizei *length, 57 const GLchar *counterString); 58 bool ValidateGetPerfMonitorCountersAMD(const Context *context, 59 angle::EntryPoint entryPoint, 60 GLuint group, 61 const GLint *numCounters, 62 const GLint *maxActiveCounters, 63 GLsizei counterSize, 64 const GLuint *counters); 65 bool ValidateGetPerfMonitorGroupStringAMD(const Context *context, 66 angle::EntryPoint entryPoint, 67 GLuint group, 68 GLsizei bufSize, 69 const GLsizei *length, 70 const GLchar *groupString); 71 bool ValidateGetPerfMonitorGroupsAMD(const Context *context, 72 angle::EntryPoint entryPoint, 73 const GLint *numGroups, 74 GLsizei groupsSize, 75 const GLuint *groups); 76 bool ValidateSelectPerfMonitorCountersAMD(const Context *context, 77 angle::EntryPoint entryPoint, 78 GLuint monitor, 79 GLboolean enable, 80 GLuint group, 81 GLint numCounters, 82 const GLuint *counterList); 83 84 // GL_ANDROID_extension_pack_es31a 85 86 // GL_ANGLE_base_vertex_base_instance 87 bool ValidateDrawArraysInstancedBaseInstanceANGLE(const Context *context, 88 angle::EntryPoint entryPoint, 89 PrimitiveMode modePacked, 90 GLint first, 91 GLsizei count, 92 GLsizei instanceCount, 93 GLuint baseInstance); 94 bool ValidateDrawElementsInstancedBaseVertexBaseInstanceANGLE(const Context *context, 95 angle::EntryPoint entryPoint, 96 PrimitiveMode modePacked, 97 GLsizei count, 98 DrawElementsType typePacked, 99 const void *indices, 100 GLsizei instanceCount, 101 GLint baseVertex, 102 GLuint baseInstance); 103 bool ValidateMultiDrawArraysInstancedBaseInstanceANGLE(const Context *context, 104 angle::EntryPoint entryPoint, 105 PrimitiveMode modePacked, 106 const GLint *firsts, 107 const GLsizei *counts, 108 const GLsizei *instanceCounts, 109 const GLuint *baseInstances, 110 GLsizei drawcount); 111 bool ValidateMultiDrawElementsInstancedBaseVertexBaseInstanceANGLE(const Context *context, 112 angle::EntryPoint entryPoint, 113 PrimitiveMode modePacked, 114 const GLsizei *counts, 115 DrawElementsType typePacked, 116 const void *const *indices, 117 const GLsizei *instanceCounts, 118 const GLint *baseVertices, 119 const GLuint *baseInstances, 120 GLsizei drawcount); 121 122 // GL_ANGLE_client_arrays 123 124 // GL_ANGLE_clip_cull_distance 125 126 // GL_ANGLE_copy_texture_3d 127 bool ValidateCopyTexture3DANGLE(const Context *context, 128 angle::EntryPoint entryPoint, 129 TextureID sourceIdPacked, 130 GLint sourceLevel, 131 TextureTarget destTargetPacked, 132 TextureID destIdPacked, 133 GLint destLevel, 134 GLint internalFormat, 135 GLenum destType, 136 GLboolean unpackFlipY, 137 GLboolean unpackPremultiplyAlpha, 138 GLboolean unpackUnmultiplyAlpha); 139 bool ValidateCopySubTexture3DANGLE(const Context *context, 140 angle::EntryPoint entryPoint, 141 TextureID sourceIdPacked, 142 GLint sourceLevel, 143 TextureTarget destTargetPacked, 144 TextureID destIdPacked, 145 GLint destLevel, 146 GLint xoffset, 147 GLint yoffset, 148 GLint zoffset, 149 GLint x, 150 GLint y, 151 GLint z, 152 GLint width, 153 GLint height, 154 GLint depth, 155 GLboolean unpackFlipY, 156 GLboolean unpackPremultiplyAlpha, 157 GLboolean unpackUnmultiplyAlpha); 158 159 // GL_ANGLE_depth_texture 160 161 // GL_ANGLE_framebuffer_blit 162 bool ValidateBlitFramebufferANGLE(const Context *context, 163 angle::EntryPoint entryPoint, 164 GLint srcX0, 165 GLint srcY0, 166 GLint srcX1, 167 GLint srcY1, 168 GLint dstX0, 169 GLint dstY0, 170 GLint dstX1, 171 GLint dstY1, 172 GLbitfield mask, 173 GLenum filter); 174 175 // GL_ANGLE_framebuffer_multisample 176 bool ValidateRenderbufferStorageMultisampleANGLE(const Context *context, 177 angle::EntryPoint entryPoint, 178 GLenum target, 179 GLsizei samples, 180 GLenum internalformat, 181 GLsizei width, 182 GLsizei height); 183 184 // GL_ANGLE_get_image 185 bool ValidateGetTexImageANGLE(const Context *context, 186 angle::EntryPoint entryPoint, 187 TextureTarget targetPacked, 188 GLint level, 189 GLenum format, 190 GLenum type, 191 const void *pixels); 192 bool ValidateGetCompressedTexImageANGLE(const Context *context, 193 angle::EntryPoint entryPoint, 194 TextureTarget targetPacked, 195 GLint level, 196 const void *pixels); 197 bool ValidateGetRenderbufferImageANGLE(const Context *context, 198 angle::EntryPoint entryPoint, 199 GLenum target, 200 GLenum format, 201 GLenum type, 202 const void *pixels); 203 204 // GL_ANGLE_get_serialized_context_string 205 206 // GL_ANGLE_get_tex_level_parameter 207 bool ValidateGetTexLevelParameterivANGLE(const Context *context, 208 angle::EntryPoint entryPoint, 209 TextureTarget targetPacked, 210 GLint level, 211 GLenum pname, 212 const GLint *params); 213 bool ValidateGetTexLevelParameterfvANGLE(const Context *context, 214 angle::EntryPoint entryPoint, 215 TextureTarget targetPacked, 216 GLint level, 217 GLenum pname, 218 const GLfloat *params); 219 220 // GL_ANGLE_instanced_arrays 221 bool ValidateDrawArraysInstancedANGLE(const Context *context, 222 angle::EntryPoint entryPoint, 223 PrimitiveMode modePacked, 224 GLint first, 225 GLsizei count, 226 GLsizei primcount); 227 bool ValidateDrawElementsInstancedANGLE(const Context *context, 228 angle::EntryPoint entryPoint, 229 PrimitiveMode modePacked, 230 GLsizei count, 231 DrawElementsType typePacked, 232 const void *indices, 233 GLsizei primcount); 234 bool ValidateVertexAttribDivisorANGLE(const Context *context, 235 angle::EntryPoint entryPoint, 236 GLuint index, 237 GLuint divisor); 238 239 // GL_ANGLE_logic_op 240 bool ValidateLogicOpANGLE(const PrivateState &state, 241 ErrorSet *errors, 242 angle::EntryPoint entryPoint, 243 LogicalOperation opcodePacked); 244 245 // GL_ANGLE_lossy_etc_decode 246 247 // GL_ANGLE_memory_object_flags 248 bool ValidateTexStorageMemFlags2DANGLE(const Context *context, 249 angle::EntryPoint entryPoint, 250 TextureType targetPacked, 251 GLsizei levels, 252 GLenum internalFormat, 253 GLsizei width, 254 GLsizei height, 255 MemoryObjectID memoryPacked, 256 GLuint64 offset, 257 GLbitfield createFlags, 258 GLbitfield usageFlags, 259 const void *imageCreateInfoPNext); 260 bool ValidateTexStorageMemFlags2DMultisampleANGLE(const Context *context, 261 angle::EntryPoint entryPoint, 262 TextureType targetPacked, 263 GLsizei samples, 264 GLenum internalFormat, 265 GLsizei width, 266 GLsizei height, 267 GLboolean fixedSampleLocations, 268 MemoryObjectID memoryPacked, 269 GLuint64 offset, 270 GLbitfield createFlags, 271 GLbitfield usageFlags, 272 const void *imageCreateInfoPNext); 273 bool ValidateTexStorageMemFlags3DANGLE(const Context *context, 274 angle::EntryPoint entryPoint, 275 TextureType targetPacked, 276 GLsizei levels, 277 GLenum internalFormat, 278 GLsizei width, 279 GLsizei height, 280 GLsizei depth, 281 MemoryObjectID memoryPacked, 282 GLuint64 offset, 283 GLbitfield createFlags, 284 GLbitfield usageFlags, 285 const void *imageCreateInfoPNext); 286 bool ValidateTexStorageMemFlags3DMultisampleANGLE(const Context *context, 287 angle::EntryPoint entryPoint, 288 TextureType targetPacked, 289 GLsizei samples, 290 GLenum internalFormat, 291 GLsizei width, 292 GLsizei height, 293 GLsizei depth, 294 GLboolean fixedSampleLocations, 295 MemoryObjectID memoryPacked, 296 GLuint64 offset, 297 GLbitfield createFlags, 298 GLbitfield usageFlags, 299 const void *imageCreateInfoPNext); 300 301 // GL_ANGLE_memory_object_fuchsia 302 bool ValidateImportMemoryZirconHandleANGLE(const Context *context, 303 angle::EntryPoint entryPoint, 304 MemoryObjectID memoryPacked, 305 GLuint64 size, 306 HandleType handleTypePacked, 307 GLuint handle); 308 309 // GL_ANGLE_memory_size 310 311 // GL_ANGLE_multi_draw 312 bool ValidateMultiDrawArraysANGLE(const Context *context, 313 angle::EntryPoint entryPoint, 314 PrimitiveMode modePacked, 315 const GLint *firsts, 316 const GLsizei *counts, 317 GLsizei drawcount); 318 bool ValidateMultiDrawArraysInstancedANGLE(const Context *context, 319 angle::EntryPoint entryPoint, 320 PrimitiveMode modePacked, 321 const GLint *firsts, 322 const GLsizei *counts, 323 const GLsizei *instanceCounts, 324 GLsizei drawcount); 325 bool ValidateMultiDrawElementsANGLE(const Context *context, 326 angle::EntryPoint entryPoint, 327 PrimitiveMode modePacked, 328 const GLsizei *counts, 329 DrawElementsType typePacked, 330 const void *const *indices, 331 GLsizei drawcount); 332 bool ValidateMultiDrawElementsInstancedANGLE(const Context *context, 333 angle::EntryPoint entryPoint, 334 PrimitiveMode modePacked, 335 const GLsizei *counts, 336 DrawElementsType typePacked, 337 const void *const *indices, 338 const GLsizei *instanceCounts, 339 GLsizei drawcount); 340 341 // GL_ANGLE_pack_reverse_row_order 342 343 // GL_ANGLE_polygon_mode 344 bool ValidatePolygonModeANGLE(const PrivateState &state, 345 ErrorSet *errors, 346 angle::EntryPoint entryPoint, 347 GLenum face, 348 PolygonMode modePacked); 349 350 // GL_ANGLE_program_binary 351 352 // GL_ANGLE_program_binary_readiness_query 353 354 // GL_ANGLE_program_cache_control 355 356 // GL_ANGLE_provoking_vertex 357 bool ValidateProvokingVertexANGLE(const PrivateState &state, 358 ErrorSet *errors, 359 angle::EntryPoint entryPoint, 360 ProvokingVertexConvention provokeModePacked); 361 362 // GL_ANGLE_renderability_validation 363 364 // GL_ANGLE_request_extension 365 bool ValidateRequestExtensionANGLE(const Context *context, 366 angle::EntryPoint entryPoint, 367 const GLchar *name); 368 bool ValidateDisableExtensionANGLE(const Context *context, 369 angle::EntryPoint entryPoint, 370 const GLchar *name); 371 372 // GL_ANGLE_rgbx_internal_format 373 374 // GL_ANGLE_robust_client_memory 375 bool ValidateGetBooleanvRobustANGLE(const Context *context, 376 angle::EntryPoint entryPoint, 377 GLenum pname, 378 GLsizei bufSize, 379 const GLsizei *length, 380 const GLboolean *params); 381 bool ValidateGetBufferParameterivRobustANGLE(const Context *context, 382 angle::EntryPoint entryPoint, 383 BufferBinding targetPacked, 384 GLenum pname, 385 GLsizei bufSize, 386 const GLsizei *length, 387 const GLint *params); 388 bool ValidateGetFloatvRobustANGLE(const Context *context, 389 angle::EntryPoint entryPoint, 390 GLenum pname, 391 GLsizei bufSize, 392 const GLsizei *length, 393 const GLfloat *params); 394 bool ValidateGetFramebufferAttachmentParameterivRobustANGLE(const Context *context, 395 angle::EntryPoint entryPoint, 396 GLenum target, 397 GLenum attachment, 398 GLenum pname, 399 GLsizei bufSize, 400 const GLsizei *length, 401 const GLint *params); 402 bool ValidateGetIntegervRobustANGLE(const Context *context, 403 angle::EntryPoint entryPoint, 404 GLenum pname, 405 GLsizei bufSize, 406 const GLsizei *length, 407 const GLint *data); 408 bool ValidateGetProgramivRobustANGLE(const Context *context, 409 angle::EntryPoint entryPoint, 410 ShaderProgramID programPacked, 411 GLenum pname, 412 GLsizei bufSize, 413 const GLsizei *length, 414 const GLint *params); 415 bool ValidateGetRenderbufferParameterivRobustANGLE(const Context *context, 416 angle::EntryPoint entryPoint, 417 GLenum target, 418 GLenum pname, 419 GLsizei bufSize, 420 const GLsizei *length, 421 const GLint *params); 422 bool ValidateGetShaderivRobustANGLE(const Context *context, 423 angle::EntryPoint entryPoint, 424 ShaderProgramID shaderPacked, 425 GLenum pname, 426 GLsizei bufSize, 427 const GLsizei *length, 428 const GLint *params); 429 bool ValidateGetTexParameterfvRobustANGLE(const Context *context, 430 angle::EntryPoint entryPoint, 431 TextureType targetPacked, 432 GLenum pname, 433 GLsizei bufSize, 434 const GLsizei *length, 435 const GLfloat *params); 436 bool ValidateGetTexParameterivRobustANGLE(const Context *context, 437 angle::EntryPoint entryPoint, 438 TextureType targetPacked, 439 GLenum pname, 440 GLsizei bufSize, 441 const GLsizei *length, 442 const GLint *params); 443 bool ValidateGetUniformfvRobustANGLE(const Context *context, 444 angle::EntryPoint entryPoint, 445 ShaderProgramID programPacked, 446 UniformLocation locationPacked, 447 GLsizei bufSize, 448 const GLsizei *length, 449 const GLfloat *params); 450 bool ValidateGetUniformivRobustANGLE(const Context *context, 451 angle::EntryPoint entryPoint, 452 ShaderProgramID programPacked, 453 UniformLocation locationPacked, 454 GLsizei bufSize, 455 const GLsizei *length, 456 const GLint *params); 457 bool ValidateGetVertexAttribfvRobustANGLE(const Context *context, 458 angle::EntryPoint entryPoint, 459 GLuint index, 460 GLenum pname, 461 GLsizei bufSize, 462 const GLsizei *length, 463 const GLfloat *params); 464 bool ValidateGetVertexAttribivRobustANGLE(const Context *context, 465 angle::EntryPoint entryPoint, 466 GLuint index, 467 GLenum pname, 468 GLsizei bufSize, 469 const GLsizei *length, 470 const GLint *params); 471 bool ValidateGetVertexAttribPointervRobustANGLE(const Context *context, 472 angle::EntryPoint entryPoint, 473 GLuint index, 474 GLenum pname, 475 GLsizei bufSize, 476 const GLsizei *length, 477 void *const *pointer); 478 bool ValidateReadPixelsRobustANGLE(const Context *context, 479 angle::EntryPoint entryPoint, 480 GLint x, 481 GLint y, 482 GLsizei width, 483 GLsizei height, 484 GLenum format, 485 GLenum type, 486 GLsizei bufSize, 487 const GLsizei *length, 488 const GLsizei *columns, 489 const GLsizei *rows, 490 const void *pixels); 491 bool ValidateTexImage2DRobustANGLE(const Context *context, 492 angle::EntryPoint entryPoint, 493 TextureTarget targetPacked, 494 GLint level, 495 GLint internalformat, 496 GLsizei width, 497 GLsizei height, 498 GLint border, 499 GLenum format, 500 GLenum type, 501 GLsizei bufSize, 502 const void *pixels); 503 bool ValidateTexParameterfvRobustANGLE(const Context *context, 504 angle::EntryPoint entryPoint, 505 TextureType targetPacked, 506 GLenum pname, 507 GLsizei bufSize, 508 const GLfloat *params); 509 bool ValidateTexParameterivRobustANGLE(const Context *context, 510 angle::EntryPoint entryPoint, 511 TextureType targetPacked, 512 GLenum pname, 513 GLsizei bufSize, 514 const GLint *params); 515 bool ValidateTexSubImage2DRobustANGLE(const Context *context, 516 angle::EntryPoint entryPoint, 517 TextureTarget targetPacked, 518 GLint level, 519 GLint xoffset, 520 GLint yoffset, 521 GLsizei width, 522 GLsizei height, 523 GLenum format, 524 GLenum type, 525 GLsizei bufSize, 526 const void *pixels); 527 bool ValidateTexImage3DRobustANGLE(const Context *context, 528 angle::EntryPoint entryPoint, 529 TextureTarget targetPacked, 530 GLint level, 531 GLint internalformat, 532 GLsizei width, 533 GLsizei height, 534 GLsizei depth, 535 GLint border, 536 GLenum format, 537 GLenum type, 538 GLsizei bufSize, 539 const void *pixels); 540 bool ValidateTexSubImage3DRobustANGLE(const Context *context, 541 angle::EntryPoint entryPoint, 542 TextureTarget targetPacked, 543 GLint level, 544 GLint xoffset, 545 GLint yoffset, 546 GLint zoffset, 547 GLsizei width, 548 GLsizei height, 549 GLsizei depth, 550 GLenum format, 551 GLenum type, 552 GLsizei bufSize, 553 const void *pixels); 554 bool ValidateCompressedTexImage2DRobustANGLE(const Context *context, 555 angle::EntryPoint entryPoint, 556 TextureTarget targetPacked, 557 GLint level, 558 GLenum internalformat, 559 GLsizei width, 560 GLsizei height, 561 GLint border, 562 GLsizei imageSize, 563 GLsizei dataSize, 564 const void *data); 565 bool ValidateCompressedTexSubImage2DRobustANGLE(const Context *context, 566 angle::EntryPoint entryPoint, 567 TextureTarget targetPacked, 568 GLint level, 569 GLsizei xoffset, 570 GLsizei yoffset, 571 GLsizei width, 572 GLsizei height, 573 GLenum format, 574 GLsizei imageSize, 575 GLsizei dataSize, 576 const void *data); 577 bool ValidateCompressedTexImage3DRobustANGLE(const Context *context, 578 angle::EntryPoint entryPoint, 579 TextureTarget targetPacked, 580 GLint level, 581 GLenum internalformat, 582 GLsizei width, 583 GLsizei height, 584 GLsizei depth, 585 GLint border, 586 GLsizei imageSize, 587 GLsizei dataSize, 588 const void *data); 589 bool ValidateCompressedTexSubImage3DRobustANGLE(const Context *context, 590 angle::EntryPoint entryPoint, 591 TextureTarget targetPacked, 592 GLint level, 593 GLint xoffset, 594 GLint yoffset, 595 GLint zoffset, 596 GLsizei width, 597 GLsizei height, 598 GLsizei depth, 599 GLenum format, 600 GLsizei imageSize, 601 GLsizei dataSize, 602 const void *data); 603 bool ValidateGetQueryivRobustANGLE(const Context *context, 604 angle::EntryPoint entryPoint, 605 QueryType targetPacked, 606 GLenum pname, 607 GLsizei bufSize, 608 const GLsizei *length, 609 const GLint *params); 610 bool ValidateGetQueryObjectuivRobustANGLE(const Context *context, 611 angle::EntryPoint entryPoint, 612 QueryID idPacked, 613 GLenum pname, 614 GLsizei bufSize, 615 const GLsizei *length, 616 const GLuint *params); 617 bool ValidateGetBufferPointervRobustANGLE(const Context *context, 618 angle::EntryPoint entryPoint, 619 BufferBinding targetPacked, 620 GLenum pname, 621 GLsizei bufSize, 622 const GLsizei *length, 623 void *const *params); 624 bool ValidateGetIntegeri_vRobustANGLE(const Context *context, 625 angle::EntryPoint entryPoint, 626 GLenum target, 627 GLuint index, 628 GLsizei bufSize, 629 const GLsizei *length, 630 const GLint *data); 631 bool ValidateGetInternalformativRobustANGLE(const Context *context, 632 angle::EntryPoint entryPoint, 633 GLenum target, 634 GLenum internalformat, 635 GLenum pname, 636 GLsizei bufSize, 637 const GLsizei *length, 638 const GLint *params); 639 bool ValidateGetVertexAttribIivRobustANGLE(const Context *context, 640 angle::EntryPoint entryPoint, 641 GLuint index, 642 GLenum pname, 643 GLsizei bufSize, 644 const GLsizei *length, 645 const GLint *params); 646 bool ValidateGetVertexAttribIuivRobustANGLE(const Context *context, 647 angle::EntryPoint entryPoint, 648 GLuint index, 649 GLenum pname, 650 GLsizei bufSize, 651 const GLsizei *length, 652 const GLuint *params); 653 bool ValidateGetUniformuivRobustANGLE(const Context *context, 654 angle::EntryPoint entryPoint, 655 ShaderProgramID programPacked, 656 UniformLocation locationPacked, 657 GLsizei bufSize, 658 const GLsizei *length, 659 const GLuint *params); 660 bool ValidateGetActiveUniformBlockivRobustANGLE(const Context *context, 661 angle::EntryPoint entryPoint, 662 ShaderProgramID programPacked, 663 UniformBlockIndex uniformBlockIndexPacked, 664 GLenum pname, 665 GLsizei bufSize, 666 const GLsizei *length, 667 const GLint *params); 668 bool ValidateGetInteger64vRobustANGLE(const Context *context, 669 angle::EntryPoint entryPoint, 670 GLenum pname, 671 GLsizei bufSize, 672 const GLsizei *length, 673 const GLint64 *data); 674 bool ValidateGetInteger64i_vRobustANGLE(const Context *context, 675 angle::EntryPoint entryPoint, 676 GLenum target, 677 GLuint index, 678 GLsizei bufSize, 679 const GLsizei *length, 680 const GLint64 *data); 681 bool ValidateGetBufferParameteri64vRobustANGLE(const Context *context, 682 angle::EntryPoint entryPoint, 683 BufferBinding targetPacked, 684 GLenum pname, 685 GLsizei bufSize, 686 const GLsizei *length, 687 const GLint64 *params); 688 bool ValidateSamplerParameterivRobustANGLE(const Context *context, 689 angle::EntryPoint entryPoint, 690 SamplerID samplerPacked, 691 GLuint pname, 692 GLsizei bufSize, 693 const GLint *param); 694 bool ValidateSamplerParameterfvRobustANGLE(const Context *context, 695 angle::EntryPoint entryPoint, 696 SamplerID samplerPacked, 697 GLenum pname, 698 GLsizei bufSize, 699 const GLfloat *param); 700 bool ValidateGetSamplerParameterivRobustANGLE(const Context *context, 701 angle::EntryPoint entryPoint, 702 SamplerID samplerPacked, 703 GLenum pname, 704 GLsizei bufSize, 705 const GLsizei *length, 706 const GLint *params); 707 bool ValidateGetSamplerParameterfvRobustANGLE(const Context *context, 708 angle::EntryPoint entryPoint, 709 SamplerID samplerPacked, 710 GLenum pname, 711 GLsizei bufSize, 712 const GLsizei *length, 713 const GLfloat *params); 714 bool ValidateGetFramebufferParameterivRobustANGLE(const Context *context, 715 angle::EntryPoint entryPoint, 716 GLenum target, 717 GLenum pname, 718 GLsizei bufSize, 719 const GLsizei *length, 720 const GLint *params); 721 bool ValidateGetProgramInterfaceivRobustANGLE(const Context *context, 722 angle::EntryPoint entryPoint, 723 ShaderProgramID programPacked, 724 GLenum programInterface, 725 GLenum pname, 726 GLsizei bufSize, 727 const GLsizei *length, 728 const GLint *params); 729 bool ValidateGetBooleani_vRobustANGLE(const Context *context, 730 angle::EntryPoint entryPoint, 731 GLenum target, 732 GLuint index, 733 GLsizei bufSize, 734 const GLsizei *length, 735 const GLboolean *data); 736 bool ValidateGetMultisamplefvRobustANGLE(const Context *context, 737 angle::EntryPoint entryPoint, 738 GLenum pname, 739 GLuint index, 740 GLsizei bufSize, 741 const GLsizei *length, 742 const GLfloat *val); 743 bool ValidateGetTexLevelParameterivRobustANGLE(const Context *context, 744 angle::EntryPoint entryPoint, 745 TextureTarget targetPacked, 746 GLint level, 747 GLenum pname, 748 GLsizei bufSize, 749 const GLsizei *length, 750 const GLint *params); 751 bool ValidateGetTexLevelParameterfvRobustANGLE(const Context *context, 752 angle::EntryPoint entryPoint, 753 TextureTarget targetPacked, 754 GLint level, 755 GLenum pname, 756 GLsizei bufSize, 757 const GLsizei *length, 758 const GLfloat *params); 759 bool ValidateGetPointervRobustANGLERobustANGLE(const Context *context, 760 angle::EntryPoint entryPoint, 761 GLenum pname, 762 GLsizei bufSize, 763 const GLsizei *length, 764 void *const *params); 765 bool ValidateReadnPixelsRobustANGLE(const Context *context, 766 angle::EntryPoint entryPoint, 767 GLint x, 768 GLint y, 769 GLsizei width, 770 GLsizei height, 771 GLenum format, 772 GLenum type, 773 GLsizei bufSize, 774 const GLsizei *length, 775 const GLsizei *columns, 776 const GLsizei *rows, 777 const void *data); 778 bool ValidateGetnUniformfvRobustANGLE(const Context *context, 779 angle::EntryPoint entryPoint, 780 ShaderProgramID programPacked, 781 UniformLocation locationPacked, 782 GLsizei bufSize, 783 const GLsizei *length, 784 const GLfloat *params); 785 bool ValidateGetnUniformivRobustANGLE(const Context *context, 786 angle::EntryPoint entryPoint, 787 ShaderProgramID programPacked, 788 UniformLocation locationPacked, 789 GLsizei bufSize, 790 const GLsizei *length, 791 const GLint *params); 792 bool ValidateGetnUniformuivRobustANGLE(const Context *context, 793 angle::EntryPoint entryPoint, 794 ShaderProgramID programPacked, 795 UniformLocation locationPacked, 796 GLsizei bufSize, 797 const GLsizei *length, 798 const GLuint *params); 799 bool ValidateTexParameterIivRobustANGLE(const Context *context, 800 angle::EntryPoint entryPoint, 801 TextureType targetPacked, 802 GLenum pname, 803 GLsizei bufSize, 804 const GLint *params); 805 bool ValidateTexParameterIuivRobustANGLE(const Context *context, 806 angle::EntryPoint entryPoint, 807 TextureType targetPacked, 808 GLenum pname, 809 GLsizei bufSize, 810 const GLuint *params); 811 bool ValidateGetTexParameterIivRobustANGLE(const Context *context, 812 angle::EntryPoint entryPoint, 813 TextureType targetPacked, 814 GLenum pname, 815 GLsizei bufSize, 816 const GLsizei *length, 817 const GLint *params); 818 bool ValidateGetTexParameterIuivRobustANGLE(const Context *context, 819 angle::EntryPoint entryPoint, 820 TextureType targetPacked, 821 GLenum pname, 822 GLsizei bufSize, 823 const GLsizei *length, 824 const GLuint *params); 825 bool ValidateSamplerParameterIivRobustANGLE(const Context *context, 826 angle::EntryPoint entryPoint, 827 SamplerID samplerPacked, 828 GLenum pname, 829 GLsizei bufSize, 830 const GLint *param); 831 bool ValidateSamplerParameterIuivRobustANGLE(const Context *context, 832 angle::EntryPoint entryPoint, 833 SamplerID samplerPacked, 834 GLenum pname, 835 GLsizei bufSize, 836 const GLuint *param); 837 bool ValidateGetSamplerParameterIivRobustANGLE(const Context *context, 838 angle::EntryPoint entryPoint, 839 SamplerID samplerPacked, 840 GLenum pname, 841 GLsizei bufSize, 842 const GLsizei *length, 843 const GLint *params); 844 bool ValidateGetSamplerParameterIuivRobustANGLE(const Context *context, 845 angle::EntryPoint entryPoint, 846 SamplerID samplerPacked, 847 GLenum pname, 848 GLsizei bufSize, 849 const GLsizei *length, 850 const GLuint *params); 851 bool ValidateGetQueryObjectivRobustANGLE(const Context *context, 852 angle::EntryPoint entryPoint, 853 QueryID idPacked, 854 GLenum pname, 855 GLsizei bufSize, 856 const GLsizei *length, 857 const GLint *params); 858 bool ValidateGetQueryObjecti64vRobustANGLE(const Context *context, 859 angle::EntryPoint entryPoint, 860 QueryID idPacked, 861 GLenum pname, 862 GLsizei bufSize, 863 const GLsizei *length, 864 const GLint64 *params); 865 bool ValidateGetQueryObjectui64vRobustANGLE(const Context *context, 866 angle::EntryPoint entryPoint, 867 QueryID idPacked, 868 GLenum pname, 869 GLsizei bufSize, 870 const GLsizei *length, 871 const GLuint64 *params); 872 873 // GL_ANGLE_robust_fragment_shader_output 874 875 // GL_ANGLE_robust_resource_initialization 876 877 // GL_ANGLE_semaphore_fuchsia 878 bool ValidateImportSemaphoreZirconHandleANGLE(const Context *context, 879 angle::EntryPoint entryPoint, 880 SemaphoreID semaphorePacked, 881 HandleType handleTypePacked, 882 GLuint handle); 883 884 // GL_ANGLE_shader_binary 885 886 // GL_ANGLE_shader_pixel_local_storage 887 bool ValidateFramebufferMemorylessPixelLocalStorageANGLE(const Context *context, 888 angle::EntryPoint entryPoint, 889 GLint plane, 890 GLenum internalformat); 891 bool ValidateFramebufferTexturePixelLocalStorageANGLE(const Context *context, 892 angle::EntryPoint entryPoint, 893 GLint plane, 894 TextureID backingtexturePacked, 895 GLint level, 896 GLint layer); 897 bool ValidateFramebufferPixelLocalClearValuefvANGLE(const Context *context, 898 angle::EntryPoint entryPoint, 899 GLint plane, 900 const GLfloat *value); 901 bool ValidateFramebufferPixelLocalClearValueivANGLE(const Context *context, 902 angle::EntryPoint entryPoint, 903 GLint plane, 904 const GLint *value); 905 bool ValidateFramebufferPixelLocalClearValueuivANGLE(const Context *context, 906 angle::EntryPoint entryPoint, 907 GLint plane, 908 const GLuint *value); 909 bool ValidateBeginPixelLocalStorageANGLE(const Context *context, 910 angle::EntryPoint entryPoint, 911 GLsizei n, 912 const GLenum *loadops); 913 bool ValidateEndPixelLocalStorageANGLE(const Context *context, 914 angle::EntryPoint entryPoint, 915 GLsizei n, 916 const GLenum *storeops); 917 bool ValidatePixelLocalStorageBarrierANGLE(const Context *context, angle::EntryPoint entryPoint); 918 bool ValidateFramebufferPixelLocalStorageInterruptANGLE(const Context *context, 919 angle::EntryPoint entryPoint); 920 bool ValidateFramebufferPixelLocalStorageRestoreANGLE(const Context *context, 921 angle::EntryPoint entryPoint); 922 bool ValidateGetFramebufferPixelLocalStorageParameterfvANGLE(const Context *context, 923 angle::EntryPoint entryPoint, 924 GLint plane, 925 GLenum pname, 926 const GLfloat *params); 927 bool ValidateGetFramebufferPixelLocalStorageParameterivANGLE(const Context *context, 928 angle::EntryPoint entryPoint, 929 GLint plane, 930 GLenum pname, 931 const GLint *params); 932 bool ValidateGetFramebufferPixelLocalStorageParameterfvRobustANGLE(const Context *context, 933 angle::EntryPoint entryPoint, 934 GLint plane, 935 GLenum pname, 936 GLsizei bufSize, 937 const GLsizei *length, 938 const GLfloat *params); 939 bool ValidateGetFramebufferPixelLocalStorageParameterivRobustANGLE(const Context *context, 940 angle::EntryPoint entryPoint, 941 GLint plane, 942 GLenum pname, 943 GLsizei bufSize, 944 const GLsizei *length, 945 const GLint *params); 946 947 // GL_ANGLE_stencil_texturing 948 949 // GL_ANGLE_texture_compression_dxt3 950 951 // GL_ANGLE_texture_compression_dxt5 952 953 // GL_ANGLE_texture_external_update 954 bool ValidateTexImage2DExternalANGLE(const Context *context, 955 angle::EntryPoint entryPoint, 956 TextureTarget targetPacked, 957 GLint level, 958 GLint internalformat, 959 GLsizei width, 960 GLsizei height, 961 GLint border, 962 GLenum format, 963 GLenum type); 964 bool ValidateInvalidateTextureANGLE(const Context *context, 965 angle::EntryPoint entryPoint, 966 TextureType targetPacked); 967 968 // GL_ANGLE_texture_multisample 969 bool ValidateTexStorage2DMultisampleANGLE(const Context *context, 970 angle::EntryPoint entryPoint, 971 TextureType targetPacked, 972 GLsizei samples, 973 GLenum internalformat, 974 GLsizei width, 975 GLsizei height, 976 GLboolean fixedsamplelocations); 977 bool ValidateGetMultisamplefvANGLE(const Context *context, 978 angle::EntryPoint entryPoint, 979 GLenum pname, 980 GLuint index, 981 const GLfloat *val); 982 bool ValidateSampleMaskiANGLE(const PrivateState &state, 983 ErrorSet *errors, 984 angle::EntryPoint entryPoint, 985 GLuint maskNumber, 986 GLbitfield mask); 987 988 // GL_ANGLE_texture_usage 989 990 // GL_ANGLE_translated_shader_source 991 bool ValidateGetTranslatedShaderSourceANGLE(const Context *context, 992 angle::EntryPoint entryPoint, 993 ShaderProgramID shaderPacked, 994 GLsizei bufSize, 995 const GLsizei *length, 996 const GLchar *source); 997 998 // GL_ANGLE_vulkan_image 999 bool ValidateAcquireTexturesANGLE(const Context *context, 1000 angle::EntryPoint entryPoint, 1001 GLuint numTextures, 1002 const TextureID *texturesPacked, 1003 const GLenum *layouts); 1004 bool ValidateReleaseTexturesANGLE(const Context *context, 1005 angle::EntryPoint entryPoint, 1006 GLuint numTextures, 1007 const TextureID *texturesPacked, 1008 const GLenum *layouts); 1009 1010 // GL_ANGLE_yuv_internal_format 1011 1012 // GL_APPLE_clip_distance 1013 1014 // GL_ARB_sync 1015 1016 // GL_ARM_shader_framebuffer_fetch 1017 1018 // GL_CHROMIUM_bind_uniform_location 1019 bool ValidateBindUniformLocationCHROMIUM(const Context *context, 1020 angle::EntryPoint entryPoint, 1021 ShaderProgramID programPacked, 1022 UniformLocation locationPacked, 1023 const GLchar *name); 1024 1025 // GL_CHROMIUM_copy_compressed_texture 1026 bool ValidateCompressedCopyTextureCHROMIUM(const Context *context, 1027 angle::EntryPoint entryPoint, 1028 TextureID sourceIdPacked, 1029 TextureID destIdPacked); 1030 1031 // GL_CHROMIUM_copy_texture 1032 bool ValidateCopyTextureCHROMIUM(const Context *context, 1033 angle::EntryPoint entryPoint, 1034 TextureID sourceIdPacked, 1035 GLint sourceLevel, 1036 TextureTarget destTargetPacked, 1037 TextureID destIdPacked, 1038 GLint destLevel, 1039 GLint internalFormat, 1040 GLenum destType, 1041 GLboolean unpackFlipY, 1042 GLboolean unpackPremultiplyAlpha, 1043 GLboolean unpackUnmultiplyAlpha); 1044 bool ValidateCopySubTextureCHROMIUM(const Context *context, 1045 angle::EntryPoint entryPoint, 1046 TextureID sourceIdPacked, 1047 GLint sourceLevel, 1048 TextureTarget destTargetPacked, 1049 TextureID destIdPacked, 1050 GLint destLevel, 1051 GLint xoffset, 1052 GLint yoffset, 1053 GLint x, 1054 GLint y, 1055 GLint width, 1056 GLint height, 1057 GLboolean unpackFlipY, 1058 GLboolean unpackPremultiplyAlpha, 1059 GLboolean unpackUnmultiplyAlpha); 1060 1061 // GL_CHROMIUM_framebuffer_mixed_samples 1062 bool ValidateCoverageModulationCHROMIUM(const PrivateState &state, 1063 ErrorSet *errors, 1064 angle::EntryPoint entryPoint, 1065 GLenum components); 1066 1067 // GL_CHROMIUM_lose_context 1068 bool ValidateLoseContextCHROMIUM(const Context *context, 1069 angle::EntryPoint entryPoint, 1070 GraphicsResetStatus currentPacked, 1071 GraphicsResetStatus otherPacked); 1072 1073 // GL_EXT_EGL_image_array 1074 1075 // GL_EXT_EGL_image_storage 1076 bool ValidateEGLImageTargetTexStorageEXT(const Context *context, 1077 angle::EntryPoint entryPoint, 1078 GLenum target, 1079 egl::ImageID imagePacked, 1080 const GLint *attrib_list); 1081 bool ValidateEGLImageTargetTextureStorageEXT(const Context *context, 1082 angle::EntryPoint entryPoint, 1083 GLuint texture, 1084 egl::ImageID imagePacked, 1085 const GLint *attrib_list); 1086 1087 // GL_EXT_YUV_target 1088 1089 // GL_EXT_base_instance 1090 bool ValidateDrawArraysInstancedBaseInstanceEXT(const Context *context, 1091 angle::EntryPoint entryPoint, 1092 PrimitiveMode modePacked, 1093 GLint first, 1094 GLsizei count, 1095 GLsizei instancecount, 1096 GLuint baseinstance); 1097 bool ValidateDrawElementsInstancedBaseInstanceEXT(const Context *context, 1098 angle::EntryPoint entryPoint, 1099 PrimitiveMode modePacked, 1100 GLsizei count, 1101 DrawElementsType typePacked, 1102 const void *indices, 1103 GLsizei instancecount, 1104 GLuint baseinstance); 1105 bool ValidateDrawElementsInstancedBaseVertexBaseInstanceEXT(const Context *context, 1106 angle::EntryPoint entryPoint, 1107 PrimitiveMode modePacked, 1108 GLsizei count, 1109 DrawElementsType typePacked, 1110 const void *indices, 1111 GLsizei instancecount, 1112 GLint basevertex, 1113 GLuint baseinstance); 1114 1115 // GL_EXT_blend_func_extended 1116 bool ValidateBindFragDataLocationEXT(const Context *context, 1117 angle::EntryPoint entryPoint, 1118 ShaderProgramID programPacked, 1119 GLuint color, 1120 const GLchar *name); 1121 bool ValidateBindFragDataLocationIndexedEXT(const Context *context, 1122 angle::EntryPoint entryPoint, 1123 ShaderProgramID programPacked, 1124 GLuint colorNumber, 1125 GLuint index, 1126 const GLchar *name); 1127 bool ValidateGetFragDataIndexEXT(const Context *context, 1128 angle::EntryPoint entryPoint, 1129 ShaderProgramID programPacked, 1130 const GLchar *name); 1131 bool ValidateGetProgramResourceLocationIndexEXT(const Context *context, 1132 angle::EntryPoint entryPoint, 1133 ShaderProgramID programPacked, 1134 GLenum programInterface, 1135 const GLchar *name); 1136 1137 // GL_EXT_blend_minmax 1138 1139 // GL_EXT_buffer_storage 1140 bool ValidateBufferStorageEXT(const Context *context, 1141 angle::EntryPoint entryPoint, 1142 BufferBinding targetPacked, 1143 GLsizeiptr size, 1144 const void *data, 1145 GLbitfield flags); 1146 1147 // GL_EXT_clip_control 1148 bool ValidateClipControlEXT(const PrivateState &state, 1149 ErrorSet *errors, 1150 angle::EntryPoint entryPoint, 1151 ClipOrigin originPacked, 1152 ClipDepthMode depthPacked); 1153 1154 // GL_EXT_clip_cull_distance 1155 1156 // GL_EXT_color_buffer_float 1157 1158 // GL_EXT_color_buffer_half_float 1159 1160 // GL_EXT_conservative_depth 1161 1162 // GL_EXT_copy_image 1163 bool ValidateCopyImageSubDataEXT(const Context *context, 1164 angle::EntryPoint entryPoint, 1165 GLuint srcName, 1166 GLenum srcTarget, 1167 GLint srcLevel, 1168 GLint srcX, 1169 GLint srcY, 1170 GLint srcZ, 1171 GLuint dstName, 1172 GLenum dstTarget, 1173 GLint dstLevel, 1174 GLint dstX, 1175 GLint dstY, 1176 GLint dstZ, 1177 GLsizei srcWidth, 1178 GLsizei srcHeight, 1179 GLsizei srcDepth); 1180 1181 // GL_EXT_debug_label 1182 bool ValidateGetObjectLabelEXT(const Context *context, 1183 angle::EntryPoint entryPoint, 1184 GLenum type, 1185 GLuint object, 1186 GLsizei bufSize, 1187 const GLsizei *length, 1188 const GLchar *label); 1189 bool ValidateLabelObjectEXT(const Context *context, 1190 angle::EntryPoint entryPoint, 1191 GLenum type, 1192 GLuint object, 1193 GLsizei length, 1194 const GLchar *label); 1195 1196 // GL_EXT_debug_marker 1197 bool ValidateInsertEventMarkerEXT(const Context *context, 1198 angle::EntryPoint entryPoint, 1199 GLsizei length, 1200 const GLchar *marker); 1201 bool ValidatePopGroupMarkerEXT(const Context *context, angle::EntryPoint entryPoint); 1202 bool ValidatePushGroupMarkerEXT(const Context *context, 1203 angle::EntryPoint entryPoint, 1204 GLsizei length, 1205 const GLchar *marker); 1206 1207 // GL_EXT_depth_clamp 1208 1209 // GL_EXT_discard_framebuffer 1210 bool ValidateDiscardFramebufferEXT(const Context *context, 1211 angle::EntryPoint entryPoint, 1212 GLenum target, 1213 GLsizei numAttachments, 1214 const GLenum *attachments); 1215 1216 // GL_EXT_disjoint_timer_query 1217 bool ValidateBeginQueryEXT(const Context *context, 1218 angle::EntryPoint entryPoint, 1219 QueryType targetPacked, 1220 QueryID idPacked); 1221 bool ValidateDeleteQueriesEXT(const Context *context, 1222 angle::EntryPoint entryPoint, 1223 GLsizei n, 1224 const QueryID *idsPacked); 1225 bool ValidateEndQueryEXT(const Context *context, 1226 angle::EntryPoint entryPoint, 1227 QueryType targetPacked); 1228 bool ValidateGenQueriesEXT(const Context *context, 1229 angle::EntryPoint entryPoint, 1230 GLsizei n, 1231 const QueryID *idsPacked); 1232 bool ValidateGetInteger64vEXT(const Context *context, 1233 angle::EntryPoint entryPoint, 1234 GLenum pname, 1235 const GLint64 *data); 1236 bool ValidateGetQueryObjecti64vEXT(const Context *context, 1237 angle::EntryPoint entryPoint, 1238 QueryID idPacked, 1239 GLenum pname, 1240 const GLint64 *params); 1241 bool ValidateGetQueryObjectivEXT(const Context *context, 1242 angle::EntryPoint entryPoint, 1243 QueryID idPacked, 1244 GLenum pname, 1245 const GLint *params); 1246 bool ValidateGetQueryObjectui64vEXT(const Context *context, 1247 angle::EntryPoint entryPoint, 1248 QueryID idPacked, 1249 GLenum pname, 1250 const GLuint64 *params); 1251 bool ValidateGetQueryObjectuivEXT(const Context *context, 1252 angle::EntryPoint entryPoint, 1253 QueryID idPacked, 1254 GLenum pname, 1255 const GLuint *params); 1256 bool ValidateGetQueryivEXT(const Context *context, 1257 angle::EntryPoint entryPoint, 1258 QueryType targetPacked, 1259 GLenum pname, 1260 const GLint *params); 1261 bool ValidateIsQueryEXT(const Context *context, angle::EntryPoint entryPoint, QueryID idPacked); 1262 bool ValidateQueryCounterEXT(const Context *context, 1263 angle::EntryPoint entryPoint, 1264 QueryID idPacked, 1265 QueryType targetPacked); 1266 1267 // GL_EXT_draw_buffers 1268 bool ValidateDrawBuffersEXT(const Context *context, 1269 angle::EntryPoint entryPoint, 1270 GLsizei n, 1271 const GLenum *bufs); 1272 1273 // GL_EXT_draw_buffers_indexed 1274 bool ValidateBlendEquationSeparateiEXT(const PrivateState &state, 1275 ErrorSet *errors, 1276 angle::EntryPoint entryPoint, 1277 GLuint buf, 1278 GLenum modeRGB, 1279 GLenum modeAlpha); 1280 bool ValidateBlendEquationiEXT(const PrivateState &state, 1281 ErrorSet *errors, 1282 angle::EntryPoint entryPoint, 1283 GLuint buf, 1284 GLenum mode); 1285 bool ValidateBlendFuncSeparateiEXT(const PrivateState &state, 1286 ErrorSet *errors, 1287 angle::EntryPoint entryPoint, 1288 GLuint buf, 1289 GLenum srcRGB, 1290 GLenum dstRGB, 1291 GLenum srcAlpha, 1292 GLenum dstAlpha); 1293 bool ValidateBlendFunciEXT(const PrivateState &state, 1294 ErrorSet *errors, 1295 angle::EntryPoint entryPoint, 1296 GLuint buf, 1297 GLenum src, 1298 GLenum dst); 1299 bool ValidateColorMaskiEXT(const PrivateState &state, 1300 ErrorSet *errors, 1301 angle::EntryPoint entryPoint, 1302 GLuint index, 1303 GLboolean r, 1304 GLboolean g, 1305 GLboolean b, 1306 GLboolean a); 1307 bool ValidateDisableiEXT(const PrivateState &state, 1308 ErrorSet *errors, 1309 angle::EntryPoint entryPoint, 1310 GLenum target, 1311 GLuint index); 1312 bool ValidateEnableiEXT(const PrivateState &state, 1313 ErrorSet *errors, 1314 angle::EntryPoint entryPoint, 1315 GLenum target, 1316 GLuint index); 1317 bool ValidateIsEnablediEXT(const PrivateState &state, 1318 ErrorSet *errors, 1319 angle::EntryPoint entryPoint, 1320 GLenum target, 1321 GLuint index); 1322 1323 // GL_EXT_draw_elements_base_vertex 1324 bool ValidateDrawElementsBaseVertexEXT(const Context *context, 1325 angle::EntryPoint entryPoint, 1326 PrimitiveMode modePacked, 1327 GLsizei count, 1328 DrawElementsType typePacked, 1329 const void *indices, 1330 GLint basevertex); 1331 bool ValidateDrawElementsInstancedBaseVertexEXT(const Context *context, 1332 angle::EntryPoint entryPoint, 1333 PrimitiveMode modePacked, 1334 GLsizei count, 1335 DrawElementsType typePacked, 1336 const void *indices, 1337 GLsizei instancecount, 1338 GLint basevertex); 1339 bool ValidateDrawRangeElementsBaseVertexEXT(const Context *context, 1340 angle::EntryPoint entryPoint, 1341 PrimitiveMode modePacked, 1342 GLuint start, 1343 GLuint end, 1344 GLsizei count, 1345 DrawElementsType typePacked, 1346 const void *indices, 1347 GLint basevertex); 1348 bool ValidateMultiDrawElementsBaseVertexEXT(const Context *context, 1349 angle::EntryPoint entryPoint, 1350 PrimitiveMode modePacked, 1351 const GLsizei *count, 1352 DrawElementsType typePacked, 1353 const void *const *indices, 1354 GLsizei drawcount, 1355 const GLint *basevertex); 1356 1357 // GL_EXT_external_buffer 1358 bool ValidateBufferStorageExternalEXT(const Context *context, 1359 angle::EntryPoint entryPoint, 1360 BufferBinding targetPacked, 1361 GLintptr offset, 1362 GLsizeiptr size, 1363 GLeglClientBufferEXT clientBuffer, 1364 GLbitfield flags); 1365 bool ValidateNamedBufferStorageExternalEXT(const Context *context, 1366 angle::EntryPoint entryPoint, 1367 GLuint buffer, 1368 GLintptr offset, 1369 GLsizeiptr size, 1370 GLeglClientBufferEXT clientBuffer, 1371 GLbitfield flags); 1372 1373 // GL_EXT_float_blend 1374 1375 // GL_EXT_geometry_shader 1376 bool ValidateFramebufferTextureEXT(const Context *context, 1377 angle::EntryPoint entryPoint, 1378 GLenum target, 1379 GLenum attachment, 1380 TextureID texturePacked, 1381 GLint level); 1382 1383 // GL_EXT_gpu_shader5 1384 1385 // GL_EXT_instanced_arrays 1386 bool ValidateDrawArraysInstancedEXT(const Context *context, 1387 angle::EntryPoint entryPoint, 1388 PrimitiveMode modePacked, 1389 GLint start, 1390 GLsizei count, 1391 GLsizei primcount); 1392 bool ValidateDrawElementsInstancedEXT(const Context *context, 1393 angle::EntryPoint entryPoint, 1394 PrimitiveMode modePacked, 1395 GLsizei count, 1396 DrawElementsType typePacked, 1397 const void *indices, 1398 GLsizei primcount); 1399 bool ValidateVertexAttribDivisorEXT(const Context *context, 1400 angle::EntryPoint entryPoint, 1401 GLuint index, 1402 GLuint divisor); 1403 1404 // GL_EXT_map_buffer_range 1405 bool ValidateFlushMappedBufferRangeEXT(const Context *context, 1406 angle::EntryPoint entryPoint, 1407 BufferBinding targetPacked, 1408 GLintptr offset, 1409 GLsizeiptr length); 1410 bool ValidateMapBufferRangeEXT(const Context *context, 1411 angle::EntryPoint entryPoint, 1412 BufferBinding targetPacked, 1413 GLintptr offset, 1414 GLsizeiptr length, 1415 GLbitfield access); 1416 1417 // GL_EXT_memory_object 1418 bool ValidateBufferStorageMemEXT(const Context *context, 1419 angle::EntryPoint entryPoint, 1420 TextureType targetPacked, 1421 GLsizeiptr size, 1422 MemoryObjectID memoryPacked, 1423 GLuint64 offset); 1424 bool ValidateCreateMemoryObjectsEXT(const Context *context, 1425 angle::EntryPoint entryPoint, 1426 GLsizei n, 1427 const MemoryObjectID *memoryObjectsPacked); 1428 bool ValidateDeleteMemoryObjectsEXT(const Context *context, 1429 angle::EntryPoint entryPoint, 1430 GLsizei n, 1431 const MemoryObjectID *memoryObjectsPacked); 1432 bool ValidateGetMemoryObjectParameterivEXT(const Context *context, 1433 angle::EntryPoint entryPoint, 1434 MemoryObjectID memoryObjectPacked, 1435 GLenum pname, 1436 const GLint *params); 1437 bool ValidateGetUnsignedBytevEXT(const Context *context, 1438 angle::EntryPoint entryPoint, 1439 GLenum pname, 1440 const GLubyte *data); 1441 bool ValidateGetUnsignedBytei_vEXT(const Context *context, 1442 angle::EntryPoint entryPoint, 1443 GLenum target, 1444 GLuint index, 1445 const GLubyte *data); 1446 bool ValidateIsMemoryObjectEXT(const Context *context, 1447 angle::EntryPoint entryPoint, 1448 MemoryObjectID memoryObjectPacked); 1449 bool ValidateMemoryObjectParameterivEXT(const Context *context, 1450 angle::EntryPoint entryPoint, 1451 MemoryObjectID memoryObjectPacked, 1452 GLenum pname, 1453 const GLint *params); 1454 bool ValidateTexStorageMem2DEXT(const Context *context, 1455 angle::EntryPoint entryPoint, 1456 TextureType targetPacked, 1457 GLsizei levels, 1458 GLenum internalFormat, 1459 GLsizei width, 1460 GLsizei height, 1461 MemoryObjectID memoryPacked, 1462 GLuint64 offset); 1463 bool ValidateTexStorageMem2DMultisampleEXT(const Context *context, 1464 angle::EntryPoint entryPoint, 1465 TextureType targetPacked, 1466 GLsizei samples, 1467 GLenum internalFormat, 1468 GLsizei width, 1469 GLsizei height, 1470 GLboolean fixedSampleLocations, 1471 MemoryObjectID memoryPacked, 1472 GLuint64 offset); 1473 bool ValidateTexStorageMem3DEXT(const Context *context, 1474 angle::EntryPoint entryPoint, 1475 TextureType targetPacked, 1476 GLsizei levels, 1477 GLenum internalFormat, 1478 GLsizei width, 1479 GLsizei height, 1480 GLsizei depth, 1481 MemoryObjectID memoryPacked, 1482 GLuint64 offset); 1483 bool ValidateTexStorageMem3DMultisampleEXT(const Context *context, 1484 angle::EntryPoint entryPoint, 1485 TextureType targetPacked, 1486 GLsizei samples, 1487 GLenum internalFormat, 1488 GLsizei width, 1489 GLsizei height, 1490 GLsizei depth, 1491 GLboolean fixedSampleLocations, 1492 MemoryObjectID memoryPacked, 1493 GLuint64 offset); 1494 1495 // GL_EXT_memory_object_fd 1496 bool ValidateImportMemoryFdEXT(const Context *context, 1497 angle::EntryPoint entryPoint, 1498 MemoryObjectID memoryPacked, 1499 GLuint64 size, 1500 HandleType handleTypePacked, 1501 GLint fd); 1502 1503 // GL_EXT_multi_draw_indirect 1504 bool ValidateMultiDrawArraysIndirectEXT(const Context *context, 1505 angle::EntryPoint entryPoint, 1506 PrimitiveMode modePacked, 1507 const void *indirect, 1508 GLsizei drawcount, 1509 GLsizei stride); 1510 bool ValidateMultiDrawElementsIndirectEXT(const Context *context, 1511 angle::EntryPoint entryPoint, 1512 PrimitiveMode modePacked, 1513 DrawElementsType typePacked, 1514 const void *indirect, 1515 GLsizei drawcount, 1516 GLsizei stride); 1517 1518 // GL_EXT_multisampled_render_to_texture 1519 bool ValidateFramebufferTexture2DMultisampleEXT(const Context *context, 1520 angle::EntryPoint entryPoint, 1521 GLenum target, 1522 GLenum attachment, 1523 TextureTarget textargetPacked, 1524 TextureID texturePacked, 1525 GLint level, 1526 GLsizei samples); 1527 bool ValidateRenderbufferStorageMultisampleEXT(const Context *context, 1528 angle::EntryPoint entryPoint, 1529 GLenum target, 1530 GLsizei samples, 1531 GLenum internalformat, 1532 GLsizei width, 1533 GLsizei height); 1534 1535 // GL_EXT_multisampled_render_to_texture2 1536 1537 // GL_EXT_occlusion_query_boolean 1538 1539 // GL_EXT_polygon_offset_clamp 1540 bool ValidatePolygonOffsetClampEXT(const PrivateState &state, 1541 ErrorSet *errors, 1542 angle::EntryPoint entryPoint, 1543 GLfloat factor, 1544 GLfloat units, 1545 GLfloat clamp); 1546 1547 // GL_EXT_primitive_bounding_box 1548 bool ValidatePrimitiveBoundingBoxEXT(const PrivateState &state, 1549 ErrorSet *errors, 1550 angle::EntryPoint entryPoint, 1551 GLfloat minX, 1552 GLfloat minY, 1553 GLfloat minZ, 1554 GLfloat minW, 1555 GLfloat maxX, 1556 GLfloat maxY, 1557 GLfloat maxZ, 1558 GLfloat maxW); 1559 1560 // GL_EXT_protected_textures 1561 1562 // GL_EXT_pvrtc_sRGB 1563 1564 // GL_EXT_read_format_bgra 1565 1566 // GL_EXT_render_snorm 1567 1568 // GL_EXT_robustness 1569 bool ValidateGetGraphicsResetStatusEXT(const Context *context, angle::EntryPoint entryPoint); 1570 bool ValidateGetnUniformfvEXT(const Context *context, 1571 angle::EntryPoint entryPoint, 1572 ShaderProgramID programPacked, 1573 UniformLocation locationPacked, 1574 GLsizei bufSize, 1575 const GLfloat *params); 1576 bool ValidateGetnUniformivEXT(const Context *context, 1577 angle::EntryPoint entryPoint, 1578 ShaderProgramID programPacked, 1579 UniformLocation locationPacked, 1580 GLsizei bufSize, 1581 const GLint *params); 1582 bool ValidateReadnPixelsEXT(const Context *context, 1583 angle::EntryPoint entryPoint, 1584 GLint x, 1585 GLint y, 1586 GLsizei width, 1587 GLsizei height, 1588 GLenum format, 1589 GLenum type, 1590 GLsizei bufSize, 1591 const void *data); 1592 1593 // GL_EXT_sRGB 1594 1595 // GL_EXT_sRGB_write_control 1596 1597 // GL_EXT_semaphore 1598 bool ValidateDeleteSemaphoresEXT(const Context *context, 1599 angle::EntryPoint entryPoint, 1600 GLsizei n, 1601 const SemaphoreID *semaphoresPacked); 1602 bool ValidateGenSemaphoresEXT(const Context *context, 1603 angle::EntryPoint entryPoint, 1604 GLsizei n, 1605 const SemaphoreID *semaphoresPacked); 1606 bool ValidateGetSemaphoreParameterui64vEXT(const Context *context, 1607 angle::EntryPoint entryPoint, 1608 SemaphoreID semaphorePacked, 1609 GLenum pname, 1610 const GLuint64 *params); 1611 bool ValidateIsSemaphoreEXT(const Context *context, 1612 angle::EntryPoint entryPoint, 1613 SemaphoreID semaphorePacked); 1614 bool ValidateSemaphoreParameterui64vEXT(const Context *context, 1615 angle::EntryPoint entryPoint, 1616 SemaphoreID semaphorePacked, 1617 GLenum pname, 1618 const GLuint64 *params); 1619 bool ValidateSignalSemaphoreEXT(const Context *context, 1620 angle::EntryPoint entryPoint, 1621 SemaphoreID semaphorePacked, 1622 GLuint numBufferBarriers, 1623 const BufferID *buffersPacked, 1624 GLuint numTextureBarriers, 1625 const TextureID *texturesPacked, 1626 const GLenum *dstLayouts); 1627 bool ValidateWaitSemaphoreEXT(const Context *context, 1628 angle::EntryPoint entryPoint, 1629 SemaphoreID semaphorePacked, 1630 GLuint numBufferBarriers, 1631 const BufferID *buffersPacked, 1632 GLuint numTextureBarriers, 1633 const TextureID *texturesPacked, 1634 const GLenum *srcLayouts); 1635 1636 // GL_EXT_semaphore_fd 1637 bool ValidateImportSemaphoreFdEXT(const Context *context, 1638 angle::EntryPoint entryPoint, 1639 SemaphoreID semaphorePacked, 1640 HandleType handleTypePacked, 1641 GLint fd); 1642 1643 // GL_EXT_separate_shader_objects 1644 bool ValidateActiveShaderProgramEXT(const Context *context, 1645 angle::EntryPoint entryPoint, 1646 ProgramPipelineID pipelinePacked, 1647 ShaderProgramID programPacked); 1648 bool ValidateBindProgramPipelineEXT(const Context *context, 1649 angle::EntryPoint entryPoint, 1650 ProgramPipelineID pipelinePacked); 1651 bool ValidateCreateShaderProgramvEXT(const Context *context, 1652 angle::EntryPoint entryPoint, 1653 ShaderType typePacked, 1654 GLsizei count, 1655 const GLchar **strings); 1656 bool ValidateDeleteProgramPipelinesEXT(const Context *context, 1657 angle::EntryPoint entryPoint, 1658 GLsizei n, 1659 const ProgramPipelineID *pipelinesPacked); 1660 bool ValidateGenProgramPipelinesEXT(const Context *context, 1661 angle::EntryPoint entryPoint, 1662 GLsizei n, 1663 const ProgramPipelineID *pipelinesPacked); 1664 bool ValidateGetProgramPipelineInfoLogEXT(const Context *context, 1665 angle::EntryPoint entryPoint, 1666 ProgramPipelineID pipelinePacked, 1667 GLsizei bufSize, 1668 const GLsizei *length, 1669 const GLchar *infoLog); 1670 bool ValidateGetProgramPipelineivEXT(const Context *context, 1671 angle::EntryPoint entryPoint, 1672 ProgramPipelineID pipelinePacked, 1673 GLenum pname, 1674 const GLint *params); 1675 bool ValidateIsProgramPipelineEXT(const Context *context, 1676 angle::EntryPoint entryPoint, 1677 ProgramPipelineID pipelinePacked); 1678 bool ValidateProgramParameteriEXT(const Context *context, 1679 angle::EntryPoint entryPoint, 1680 ShaderProgramID programPacked, 1681 GLenum pname, 1682 GLint value); 1683 bool ValidateProgramUniform1fEXT(const Context *context, 1684 angle::EntryPoint entryPoint, 1685 ShaderProgramID programPacked, 1686 UniformLocation locationPacked, 1687 GLfloat v0); 1688 bool ValidateProgramUniform1fvEXT(const Context *context, 1689 angle::EntryPoint entryPoint, 1690 ShaderProgramID programPacked, 1691 UniformLocation locationPacked, 1692 GLsizei count, 1693 const GLfloat *value); 1694 bool ValidateProgramUniform1iEXT(const Context *context, 1695 angle::EntryPoint entryPoint, 1696 ShaderProgramID programPacked, 1697 UniformLocation locationPacked, 1698 GLint v0); 1699 bool ValidateProgramUniform1ivEXT(const Context *context, 1700 angle::EntryPoint entryPoint, 1701 ShaderProgramID programPacked, 1702 UniformLocation locationPacked, 1703 GLsizei count, 1704 const GLint *value); 1705 bool ValidateProgramUniform1uiEXT(const Context *context, 1706 angle::EntryPoint entryPoint, 1707 ShaderProgramID programPacked, 1708 UniformLocation locationPacked, 1709 GLuint v0); 1710 bool ValidateProgramUniform1uivEXT(const Context *context, 1711 angle::EntryPoint entryPoint, 1712 ShaderProgramID programPacked, 1713 UniformLocation locationPacked, 1714 GLsizei count, 1715 const GLuint *value); 1716 bool ValidateProgramUniform2fEXT(const Context *context, 1717 angle::EntryPoint entryPoint, 1718 ShaderProgramID programPacked, 1719 UniformLocation locationPacked, 1720 GLfloat v0, 1721 GLfloat v1); 1722 bool ValidateProgramUniform2fvEXT(const Context *context, 1723 angle::EntryPoint entryPoint, 1724 ShaderProgramID programPacked, 1725 UniformLocation locationPacked, 1726 GLsizei count, 1727 const GLfloat *value); 1728 bool ValidateProgramUniform2iEXT(const Context *context, 1729 angle::EntryPoint entryPoint, 1730 ShaderProgramID programPacked, 1731 UniformLocation locationPacked, 1732 GLint v0, 1733 GLint v1); 1734 bool ValidateProgramUniform2ivEXT(const Context *context, 1735 angle::EntryPoint entryPoint, 1736 ShaderProgramID programPacked, 1737 UniformLocation locationPacked, 1738 GLsizei count, 1739 const GLint *value); 1740 bool ValidateProgramUniform2uiEXT(const Context *context, 1741 angle::EntryPoint entryPoint, 1742 ShaderProgramID programPacked, 1743 UniformLocation locationPacked, 1744 GLuint v0, 1745 GLuint v1); 1746 bool ValidateProgramUniform2uivEXT(const Context *context, 1747 angle::EntryPoint entryPoint, 1748 ShaderProgramID programPacked, 1749 UniformLocation locationPacked, 1750 GLsizei count, 1751 const GLuint *value); 1752 bool ValidateProgramUniform3fEXT(const Context *context, 1753 angle::EntryPoint entryPoint, 1754 ShaderProgramID programPacked, 1755 UniformLocation locationPacked, 1756 GLfloat v0, 1757 GLfloat v1, 1758 GLfloat v2); 1759 bool ValidateProgramUniform3fvEXT(const Context *context, 1760 angle::EntryPoint entryPoint, 1761 ShaderProgramID programPacked, 1762 UniformLocation locationPacked, 1763 GLsizei count, 1764 const GLfloat *value); 1765 bool ValidateProgramUniform3iEXT(const Context *context, 1766 angle::EntryPoint entryPoint, 1767 ShaderProgramID programPacked, 1768 UniformLocation locationPacked, 1769 GLint v0, 1770 GLint v1, 1771 GLint v2); 1772 bool ValidateProgramUniform3ivEXT(const Context *context, 1773 angle::EntryPoint entryPoint, 1774 ShaderProgramID programPacked, 1775 UniformLocation locationPacked, 1776 GLsizei count, 1777 const GLint *value); 1778 bool ValidateProgramUniform3uiEXT(const Context *context, 1779 angle::EntryPoint entryPoint, 1780 ShaderProgramID programPacked, 1781 UniformLocation locationPacked, 1782 GLuint v0, 1783 GLuint v1, 1784 GLuint v2); 1785 bool ValidateProgramUniform3uivEXT(const Context *context, 1786 angle::EntryPoint entryPoint, 1787 ShaderProgramID programPacked, 1788 UniformLocation locationPacked, 1789 GLsizei count, 1790 const GLuint *value); 1791 bool ValidateProgramUniform4fEXT(const Context *context, 1792 angle::EntryPoint entryPoint, 1793 ShaderProgramID programPacked, 1794 UniformLocation locationPacked, 1795 GLfloat v0, 1796 GLfloat v1, 1797 GLfloat v2, 1798 GLfloat v3); 1799 bool ValidateProgramUniform4fvEXT(const Context *context, 1800 angle::EntryPoint entryPoint, 1801 ShaderProgramID programPacked, 1802 UniformLocation locationPacked, 1803 GLsizei count, 1804 const GLfloat *value); 1805 bool ValidateProgramUniform4iEXT(const Context *context, 1806 angle::EntryPoint entryPoint, 1807 ShaderProgramID programPacked, 1808 UniformLocation locationPacked, 1809 GLint v0, 1810 GLint v1, 1811 GLint v2, 1812 GLint v3); 1813 bool ValidateProgramUniform4ivEXT(const Context *context, 1814 angle::EntryPoint entryPoint, 1815 ShaderProgramID programPacked, 1816 UniformLocation locationPacked, 1817 GLsizei count, 1818 const GLint *value); 1819 bool ValidateProgramUniform4uiEXT(const Context *context, 1820 angle::EntryPoint entryPoint, 1821 ShaderProgramID programPacked, 1822 UniformLocation locationPacked, 1823 GLuint v0, 1824 GLuint v1, 1825 GLuint v2, 1826 GLuint v3); 1827 bool ValidateProgramUniform4uivEXT(const Context *context, 1828 angle::EntryPoint entryPoint, 1829 ShaderProgramID programPacked, 1830 UniformLocation locationPacked, 1831 GLsizei count, 1832 const GLuint *value); 1833 bool ValidateProgramUniformMatrix2fvEXT(const Context *context, 1834 angle::EntryPoint entryPoint, 1835 ShaderProgramID programPacked, 1836 UniformLocation locationPacked, 1837 GLsizei count, 1838 GLboolean transpose, 1839 const GLfloat *value); 1840 bool ValidateProgramUniformMatrix2x3fvEXT(const Context *context, 1841 angle::EntryPoint entryPoint, 1842 ShaderProgramID programPacked, 1843 UniformLocation locationPacked, 1844 GLsizei count, 1845 GLboolean transpose, 1846 const GLfloat *value); 1847 bool ValidateProgramUniformMatrix2x4fvEXT(const Context *context, 1848 angle::EntryPoint entryPoint, 1849 ShaderProgramID programPacked, 1850 UniformLocation locationPacked, 1851 GLsizei count, 1852 GLboolean transpose, 1853 const GLfloat *value); 1854 bool ValidateProgramUniformMatrix3fvEXT(const Context *context, 1855 angle::EntryPoint entryPoint, 1856 ShaderProgramID programPacked, 1857 UniformLocation locationPacked, 1858 GLsizei count, 1859 GLboolean transpose, 1860 const GLfloat *value); 1861 bool ValidateProgramUniformMatrix3x2fvEXT(const Context *context, 1862 angle::EntryPoint entryPoint, 1863 ShaderProgramID programPacked, 1864 UniformLocation locationPacked, 1865 GLsizei count, 1866 GLboolean transpose, 1867 const GLfloat *value); 1868 bool ValidateProgramUniformMatrix3x4fvEXT(const Context *context, 1869 angle::EntryPoint entryPoint, 1870 ShaderProgramID programPacked, 1871 UniformLocation locationPacked, 1872 GLsizei count, 1873 GLboolean transpose, 1874 const GLfloat *value); 1875 bool ValidateProgramUniformMatrix4fvEXT(const Context *context, 1876 angle::EntryPoint entryPoint, 1877 ShaderProgramID programPacked, 1878 UniformLocation locationPacked, 1879 GLsizei count, 1880 GLboolean transpose, 1881 const GLfloat *value); 1882 bool ValidateProgramUniformMatrix4x2fvEXT(const Context *context, 1883 angle::EntryPoint entryPoint, 1884 ShaderProgramID programPacked, 1885 UniformLocation locationPacked, 1886 GLsizei count, 1887 GLboolean transpose, 1888 const GLfloat *value); 1889 bool ValidateProgramUniformMatrix4x3fvEXT(const Context *context, 1890 angle::EntryPoint entryPoint, 1891 ShaderProgramID programPacked, 1892 UniformLocation locationPacked, 1893 GLsizei count, 1894 GLboolean transpose, 1895 const GLfloat *value); 1896 bool ValidateUseProgramStagesEXT(const Context *context, 1897 angle::EntryPoint entryPoint, 1898 ProgramPipelineID pipelinePacked, 1899 GLbitfield stages, 1900 ShaderProgramID programPacked); 1901 bool ValidateValidateProgramPipelineEXT(const Context *context, 1902 angle::EntryPoint entryPoint, 1903 ProgramPipelineID pipelinePacked); 1904 1905 // GL_EXT_shader_framebuffer_fetch 1906 1907 // GL_EXT_shader_framebuffer_fetch_non_coherent 1908 bool ValidateFramebufferFetchBarrierEXT(const Context *context, angle::EntryPoint entryPoint); 1909 1910 // GL_EXT_shader_io_blocks 1911 1912 // GL_EXT_shader_non_constant_global_initializers 1913 1914 // GL_EXT_shader_texture_lod 1915 1916 // GL_EXT_shadow_samplers 1917 1918 // GL_EXT_tessellation_shader 1919 bool ValidatePatchParameteriEXT(const PrivateState &state, 1920 ErrorSet *errors, 1921 angle::EntryPoint entryPoint, 1922 GLenum pname, 1923 GLint value); 1924 1925 // GL_EXT_texture_border_clamp 1926 bool ValidateGetSamplerParameterIivEXT(const Context *context, 1927 angle::EntryPoint entryPoint, 1928 SamplerID samplerPacked, 1929 GLenum pname, 1930 const GLint *params); 1931 bool ValidateGetSamplerParameterIuivEXT(const Context *context, 1932 angle::EntryPoint entryPoint, 1933 SamplerID samplerPacked, 1934 GLenum pname, 1935 const GLuint *params); 1936 bool ValidateGetTexParameterIivEXT(const Context *context, 1937 angle::EntryPoint entryPoint, 1938 TextureType targetPacked, 1939 GLenum pname, 1940 const GLint *params); 1941 bool ValidateGetTexParameterIuivEXT(const Context *context, 1942 angle::EntryPoint entryPoint, 1943 TextureType targetPacked, 1944 GLenum pname, 1945 const GLuint *params); 1946 bool ValidateSamplerParameterIivEXT(const Context *context, 1947 angle::EntryPoint entryPoint, 1948 SamplerID samplerPacked, 1949 GLenum pname, 1950 const GLint *param); 1951 bool ValidateSamplerParameterIuivEXT(const Context *context, 1952 angle::EntryPoint entryPoint, 1953 SamplerID samplerPacked, 1954 GLenum pname, 1955 const GLuint *param); 1956 bool ValidateTexParameterIivEXT(const Context *context, 1957 angle::EntryPoint entryPoint, 1958 TextureType targetPacked, 1959 GLenum pname, 1960 const GLint *params); 1961 bool ValidateTexParameterIuivEXT(const Context *context, 1962 angle::EntryPoint entryPoint, 1963 TextureType targetPacked, 1964 GLenum pname, 1965 const GLuint *params); 1966 1967 // GL_EXT_texture_buffer 1968 bool ValidateTexBufferEXT(const Context *context, 1969 angle::EntryPoint entryPoint, 1970 TextureType targetPacked, 1971 GLenum internalformat, 1972 BufferID bufferPacked); 1973 bool ValidateTexBufferRangeEXT(const Context *context, 1974 angle::EntryPoint entryPoint, 1975 TextureType targetPacked, 1976 GLenum internalformat, 1977 BufferID bufferPacked, 1978 GLintptr offset, 1979 GLsizeiptr size); 1980 1981 // GL_EXT_texture_compression_astc_decode_mode 1982 1983 // GL_EXT_texture_compression_bptc 1984 1985 // GL_EXT_texture_compression_dxt1 1986 1987 // GL_EXT_texture_compression_rgtc 1988 1989 // GL_EXT_texture_compression_s3tc 1990 1991 // GL_EXT_texture_compression_s3tc_srgb 1992 1993 // GL_EXT_texture_cube_map_array 1994 1995 // GL_EXT_texture_filter_anisotropic 1996 1997 // GL_EXT_texture_filter_minmax 1998 1999 // GL_EXT_texture_format_BGRA8888 2000 2001 // GL_EXT_texture_format_sRGB_override 2002 2003 // GL_EXT_texture_mirror_clamp_to_edge 2004 2005 // GL_EXT_texture_norm16 2006 2007 // GL_EXT_texture_rg 2008 2009 // GL_EXT_texture_sRGB_R8 2010 2011 // GL_EXT_texture_sRGB_RG8 2012 2013 // GL_EXT_texture_sRGB_decode 2014 2015 // GL_EXT_texture_storage 2016 bool ValidateTexStorage1DEXT(const Context *context, 2017 angle::EntryPoint entryPoint, 2018 GLenum target, 2019 GLsizei levels, 2020 GLenum internalformat, 2021 GLsizei width); 2022 bool ValidateTexStorage2DEXT(const Context *context, 2023 angle::EntryPoint entryPoint, 2024 TextureType targetPacked, 2025 GLsizei levels, 2026 GLenum internalformat, 2027 GLsizei width, 2028 GLsizei height); 2029 bool ValidateTexStorage3DEXT(const Context *context, 2030 angle::EntryPoint entryPoint, 2031 TextureType targetPacked, 2032 GLsizei levels, 2033 GLenum internalformat, 2034 GLsizei width, 2035 GLsizei height, 2036 GLsizei depth); 2037 2038 // GL_EXT_texture_type_2_10_10_10_REV 2039 2040 // GL_EXT_unpack_subimage 2041 2042 // GL_IMG_texture_compression_pvrtc 2043 2044 // GL_IMG_texture_compression_pvrtc2 2045 2046 // GL_KHR_blend_equation_advanced 2047 bool ValidateBlendBarrierKHR(const Context *context, angle::EntryPoint entryPoint); 2048 2049 // GL_KHR_debug 2050 bool ValidateDebugMessageCallbackKHR(const Context *context, 2051 angle::EntryPoint entryPoint, 2052 GLDEBUGPROCKHR callback, 2053 const void *userParam); 2054 bool ValidateDebugMessageControlKHR(const Context *context, 2055 angle::EntryPoint entryPoint, 2056 GLenum source, 2057 GLenum type, 2058 GLenum severity, 2059 GLsizei count, 2060 const GLuint *ids, 2061 GLboolean enabled); 2062 bool ValidateDebugMessageInsertKHR(const Context *context, 2063 angle::EntryPoint entryPoint, 2064 GLenum source, 2065 GLenum type, 2066 GLuint id, 2067 GLenum severity, 2068 GLsizei length, 2069 const GLchar *buf); 2070 bool ValidateGetDebugMessageLogKHR(const Context *context, 2071 angle::EntryPoint entryPoint, 2072 GLuint count, 2073 GLsizei bufSize, 2074 const GLenum *sources, 2075 const GLenum *types, 2076 const GLuint *ids, 2077 const GLenum *severities, 2078 const GLsizei *lengths, 2079 const GLchar *messageLog); 2080 bool ValidateGetObjectLabelKHR(const Context *context, 2081 angle::EntryPoint entryPoint, 2082 GLenum identifier, 2083 GLuint name, 2084 GLsizei bufSize, 2085 const GLsizei *length, 2086 const GLchar *label); 2087 bool ValidateGetObjectPtrLabelKHR(const Context *context, 2088 angle::EntryPoint entryPoint, 2089 const void *ptr, 2090 GLsizei bufSize, 2091 const GLsizei *length, 2092 const GLchar *label); 2093 bool ValidateGetPointervKHR(const Context *context, 2094 angle::EntryPoint entryPoint, 2095 GLenum pname, 2096 void *const *params); 2097 bool ValidateObjectLabelKHR(const Context *context, 2098 angle::EntryPoint entryPoint, 2099 GLenum identifier, 2100 GLuint name, 2101 GLsizei length, 2102 const GLchar *label); 2103 bool ValidateObjectPtrLabelKHR(const Context *context, 2104 angle::EntryPoint entryPoint, 2105 const void *ptr, 2106 GLsizei length, 2107 const GLchar *label); 2108 bool ValidatePopDebugGroupKHR(const Context *context, angle::EntryPoint entryPoint); 2109 bool ValidatePushDebugGroupKHR(const Context *context, 2110 angle::EntryPoint entryPoint, 2111 GLenum source, 2112 GLuint id, 2113 GLsizei length, 2114 const GLchar *message); 2115 2116 // GL_KHR_no_error 2117 2118 // GL_KHR_parallel_shader_compile 2119 bool ValidateMaxShaderCompilerThreadsKHR(const Context *context, 2120 angle::EntryPoint entryPoint, 2121 GLuint count); 2122 2123 // GL_KHR_robust_buffer_access_behavior 2124 2125 // GL_KHR_robustness 2126 bool ValidateGetGraphicsResetStatusKHR(const Context *context, angle::EntryPoint entryPoint); 2127 bool ValidateGetnUniformfvKHR(const Context *context, 2128 angle::EntryPoint entryPoint, 2129 ShaderProgramID programPacked, 2130 UniformLocation locationPacked, 2131 GLsizei bufSize, 2132 const GLfloat *params); 2133 bool ValidateGetnUniformivKHR(const Context *context, 2134 angle::EntryPoint entryPoint, 2135 ShaderProgramID programPacked, 2136 UniformLocation locationPacked, 2137 GLsizei bufSize, 2138 const GLint *params); 2139 bool ValidateGetnUniformuivKHR(const Context *context, 2140 angle::EntryPoint entryPoint, 2141 ShaderProgramID programPacked, 2142 UniformLocation locationPacked, 2143 GLsizei bufSize, 2144 const GLuint *params); 2145 bool ValidateReadnPixelsKHR(const Context *context, 2146 angle::EntryPoint entryPoint, 2147 GLint x, 2148 GLint y, 2149 GLsizei width, 2150 GLsizei height, 2151 GLenum format, 2152 GLenum type, 2153 GLsizei bufSize, 2154 const void *data); 2155 2156 // GL_KHR_texture_compression_astc_hdr 2157 2158 // GL_KHR_texture_compression_astc_ldr 2159 2160 // GL_KHR_texture_compression_astc_sliced_3d 2161 2162 // GL_MESA_framebuffer_flip_y 2163 bool ValidateFramebufferParameteriMESA(const Context *context, 2164 angle::EntryPoint entryPoint, 2165 GLenum target, 2166 GLenum pname, 2167 GLint param); 2168 bool ValidateGetFramebufferParameterivMESA(const Context *context, 2169 angle::EntryPoint entryPoint, 2170 GLenum target, 2171 GLenum pname, 2172 const GLint *params); 2173 2174 // GL_NV_fence 2175 bool ValidateDeleteFencesNV(const Context *context, 2176 angle::EntryPoint entryPoint, 2177 GLsizei n, 2178 const FenceNVID *fencesPacked); 2179 bool ValidateFinishFenceNV(const Context *context, 2180 angle::EntryPoint entryPoint, 2181 FenceNVID fencePacked); 2182 bool ValidateGenFencesNV(const Context *context, 2183 angle::EntryPoint entryPoint, 2184 GLsizei n, 2185 const FenceNVID *fencesPacked); 2186 bool ValidateGetFenceivNV(const Context *context, 2187 angle::EntryPoint entryPoint, 2188 FenceNVID fencePacked, 2189 GLenum pname, 2190 const GLint *params); 2191 bool ValidateIsFenceNV(const Context *context, angle::EntryPoint entryPoint, FenceNVID fencePacked); 2192 bool ValidateSetFenceNV(const Context *context, 2193 angle::EntryPoint entryPoint, 2194 FenceNVID fencePacked, 2195 GLenum condition); 2196 bool ValidateTestFenceNV(const Context *context, 2197 angle::EntryPoint entryPoint, 2198 FenceNVID fencePacked); 2199 2200 // GL_NV_framebuffer_blit 2201 bool ValidateBlitFramebufferNV(const Context *context, 2202 angle::EntryPoint entryPoint, 2203 GLint srcX0, 2204 GLint srcY0, 2205 GLint srcX1, 2206 GLint srcY1, 2207 GLint dstX0, 2208 GLint dstY0, 2209 GLint dstX1, 2210 GLint dstY1, 2211 GLbitfield mask, 2212 GLenum filter); 2213 2214 // GL_NV_pixel_buffer_object 2215 2216 // GL_NV_polygon_mode 2217 bool ValidatePolygonModeNV(const PrivateState &state, 2218 ErrorSet *errors, 2219 angle::EntryPoint entryPoint, 2220 GLenum face, 2221 PolygonMode modePacked); 2222 2223 // GL_NV_read_depth 2224 2225 // GL_NV_read_depth_stencil 2226 2227 // GL_NV_read_stencil 2228 2229 // GL_NV_robustness_video_memory_purge 2230 2231 // GL_NV_shader_noperspective_interpolation 2232 2233 // GL_OES_EGL_image 2234 bool ValidateEGLImageTargetRenderbufferStorageOES(const Context *context, 2235 angle::EntryPoint entryPoint, 2236 GLenum target, 2237 egl::ImageID imagePacked); 2238 bool ValidateEGLImageTargetTexture2DOES(const Context *context, 2239 angle::EntryPoint entryPoint, 2240 TextureType targetPacked, 2241 egl::ImageID imagePacked); 2242 2243 // GL_OES_EGL_image_external 2244 2245 // GL_OES_EGL_image_external_essl3 2246 2247 // GL_OES_compressed_ETC1_RGB8_texture 2248 2249 // GL_OES_compressed_paletted_texture 2250 2251 // GL_OES_copy_image 2252 bool ValidateCopyImageSubDataOES(const Context *context, 2253 angle::EntryPoint entryPoint, 2254 GLuint srcName, 2255 GLenum srcTarget, 2256 GLint srcLevel, 2257 GLint srcX, 2258 GLint srcY, 2259 GLint srcZ, 2260 GLuint dstName, 2261 GLenum dstTarget, 2262 GLint dstLevel, 2263 GLint dstX, 2264 GLint dstY, 2265 GLint dstZ, 2266 GLsizei srcWidth, 2267 GLsizei srcHeight, 2268 GLsizei srcDepth); 2269 2270 // GL_OES_depth24 2271 2272 // GL_OES_depth32 2273 2274 // GL_OES_depth_texture 2275 2276 // GL_OES_draw_buffers_indexed 2277 bool ValidateBlendEquationSeparateiOES(const PrivateState &state, 2278 ErrorSet *errors, 2279 angle::EntryPoint entryPoint, 2280 GLuint buf, 2281 GLenum modeRGB, 2282 GLenum modeAlpha); 2283 bool ValidateBlendEquationiOES(const PrivateState &state, 2284 ErrorSet *errors, 2285 angle::EntryPoint entryPoint, 2286 GLuint buf, 2287 GLenum mode); 2288 bool ValidateBlendFuncSeparateiOES(const PrivateState &state, 2289 ErrorSet *errors, 2290 angle::EntryPoint entryPoint, 2291 GLuint buf, 2292 GLenum srcRGB, 2293 GLenum dstRGB, 2294 GLenum srcAlpha, 2295 GLenum dstAlpha); 2296 bool ValidateBlendFunciOES(const PrivateState &state, 2297 ErrorSet *errors, 2298 angle::EntryPoint entryPoint, 2299 GLuint buf, 2300 GLenum src, 2301 GLenum dst); 2302 bool ValidateColorMaskiOES(const PrivateState &state, 2303 ErrorSet *errors, 2304 angle::EntryPoint entryPoint, 2305 GLuint index, 2306 GLboolean r, 2307 GLboolean g, 2308 GLboolean b, 2309 GLboolean a); 2310 bool ValidateDisableiOES(const PrivateState &state, 2311 ErrorSet *errors, 2312 angle::EntryPoint entryPoint, 2313 GLenum target, 2314 GLuint index); 2315 bool ValidateEnableiOES(const PrivateState &state, 2316 ErrorSet *errors, 2317 angle::EntryPoint entryPoint, 2318 GLenum target, 2319 GLuint index); 2320 bool ValidateIsEnablediOES(const PrivateState &state, 2321 ErrorSet *errors, 2322 angle::EntryPoint entryPoint, 2323 GLenum target, 2324 GLuint index); 2325 2326 // GL_OES_draw_elements_base_vertex 2327 bool ValidateDrawElementsBaseVertexOES(const Context *context, 2328 angle::EntryPoint entryPoint, 2329 PrimitiveMode modePacked, 2330 GLsizei count, 2331 DrawElementsType typePacked, 2332 const void *indices, 2333 GLint basevertex); 2334 bool ValidateDrawElementsInstancedBaseVertexOES(const Context *context, 2335 angle::EntryPoint entryPoint, 2336 PrimitiveMode modePacked, 2337 GLsizei count, 2338 DrawElementsType typePacked, 2339 const void *indices, 2340 GLsizei instancecount, 2341 GLint basevertex); 2342 bool ValidateDrawRangeElementsBaseVertexOES(const Context *context, 2343 angle::EntryPoint entryPoint, 2344 PrimitiveMode modePacked, 2345 GLuint start, 2346 GLuint end, 2347 GLsizei count, 2348 DrawElementsType typePacked, 2349 const void *indices, 2350 GLint basevertex); 2351 2352 // GL_OES_draw_texture 2353 bool ValidateDrawTexfOES(const Context *context, 2354 angle::EntryPoint entryPoint, 2355 GLfloat x, 2356 GLfloat y, 2357 GLfloat z, 2358 GLfloat width, 2359 GLfloat height); 2360 bool ValidateDrawTexfvOES(const Context *context, 2361 angle::EntryPoint entryPoint, 2362 const GLfloat *coords); 2363 bool ValidateDrawTexiOES(const Context *context, 2364 angle::EntryPoint entryPoint, 2365 GLint x, 2366 GLint y, 2367 GLint z, 2368 GLint width, 2369 GLint height); 2370 bool ValidateDrawTexivOES(const Context *context, 2371 angle::EntryPoint entryPoint, 2372 const GLint *coords); 2373 bool ValidateDrawTexsOES(const Context *context, 2374 angle::EntryPoint entryPoint, 2375 GLshort x, 2376 GLshort y, 2377 GLshort z, 2378 GLshort width, 2379 GLshort height); 2380 bool ValidateDrawTexsvOES(const Context *context, 2381 angle::EntryPoint entryPoint, 2382 const GLshort *coords); 2383 bool ValidateDrawTexxOES(const Context *context, 2384 angle::EntryPoint entryPoint, 2385 GLfixed x, 2386 GLfixed y, 2387 GLfixed z, 2388 GLfixed width, 2389 GLfixed height); 2390 bool ValidateDrawTexxvOES(const Context *context, 2391 angle::EntryPoint entryPoint, 2392 const GLfixed *coords); 2393 2394 // GL_OES_element_index_uint 2395 2396 // GL_OES_fbo_render_mipmap 2397 2398 // GL_OES_framebuffer_object 2399 bool ValidateBindFramebufferOES(const Context *context, 2400 angle::EntryPoint entryPoint, 2401 GLenum target, 2402 FramebufferID framebufferPacked); 2403 bool ValidateBindRenderbufferOES(const Context *context, 2404 angle::EntryPoint entryPoint, 2405 GLenum target, 2406 RenderbufferID renderbufferPacked); 2407 bool ValidateCheckFramebufferStatusOES(const Context *context, 2408 angle::EntryPoint entryPoint, 2409 GLenum target); 2410 bool ValidateDeleteFramebuffersOES(const Context *context, 2411 angle::EntryPoint entryPoint, 2412 GLsizei n, 2413 const FramebufferID *framebuffersPacked); 2414 bool ValidateDeleteRenderbuffersOES(const Context *context, 2415 angle::EntryPoint entryPoint, 2416 GLsizei n, 2417 const RenderbufferID *renderbuffersPacked); 2418 bool ValidateFramebufferRenderbufferOES(const Context *context, 2419 angle::EntryPoint entryPoint, 2420 GLenum target, 2421 GLenum attachment, 2422 GLenum renderbuffertarget, 2423 RenderbufferID renderbufferPacked); 2424 bool ValidateFramebufferTexture2DOES(const Context *context, 2425 angle::EntryPoint entryPoint, 2426 GLenum target, 2427 GLenum attachment, 2428 TextureTarget textargetPacked, 2429 TextureID texturePacked, 2430 GLint level); 2431 bool ValidateGenFramebuffersOES(const Context *context, 2432 angle::EntryPoint entryPoint, 2433 GLsizei n, 2434 const FramebufferID *framebuffersPacked); 2435 bool ValidateGenRenderbuffersOES(const Context *context, 2436 angle::EntryPoint entryPoint, 2437 GLsizei n, 2438 const RenderbufferID *renderbuffersPacked); 2439 bool ValidateGenerateMipmapOES(const Context *context, 2440 angle::EntryPoint entryPoint, 2441 TextureType targetPacked); 2442 bool ValidateGetFramebufferAttachmentParameterivOES(const Context *context, 2443 angle::EntryPoint entryPoint, 2444 GLenum target, 2445 GLenum attachment, 2446 GLenum pname, 2447 const GLint *params); 2448 bool ValidateGetRenderbufferParameterivOES(const Context *context, 2449 angle::EntryPoint entryPoint, 2450 GLenum target, 2451 GLenum pname, 2452 const GLint *params); 2453 bool ValidateIsFramebufferOES(const Context *context, 2454 angle::EntryPoint entryPoint, 2455 FramebufferID framebufferPacked); 2456 bool ValidateIsRenderbufferOES(const Context *context, 2457 angle::EntryPoint entryPoint, 2458 RenderbufferID renderbufferPacked); 2459 bool ValidateRenderbufferStorageOES(const Context *context, 2460 angle::EntryPoint entryPoint, 2461 GLenum target, 2462 GLenum internalformat, 2463 GLsizei width, 2464 GLsizei height); 2465 2466 // GL_OES_geometry_shader 2467 bool ValidateFramebufferTextureOES(const Context *context, 2468 angle::EntryPoint entryPoint, 2469 GLenum target, 2470 GLenum attachment, 2471 TextureID texturePacked, 2472 GLint level); 2473 2474 // GL_OES_get_program_binary 2475 bool ValidateGetProgramBinaryOES(const Context *context, 2476 angle::EntryPoint entryPoint, 2477 ShaderProgramID programPacked, 2478 GLsizei bufSize, 2479 const GLsizei *length, 2480 const GLenum *binaryFormat, 2481 const void *binary); 2482 bool ValidateProgramBinaryOES(const Context *context, 2483 angle::EntryPoint entryPoint, 2484 ShaderProgramID programPacked, 2485 GLenum binaryFormat, 2486 const void *binary, 2487 GLint length); 2488 2489 // GL_OES_gpu_shader5 2490 2491 // GL_OES_mapbuffer 2492 bool ValidateGetBufferPointervOES(const Context *context, 2493 angle::EntryPoint entryPoint, 2494 BufferBinding targetPacked, 2495 GLenum pname, 2496 void *const *params); 2497 bool ValidateMapBufferOES(const Context *context, 2498 angle::EntryPoint entryPoint, 2499 BufferBinding targetPacked, 2500 GLenum access); 2501 bool ValidateUnmapBufferOES(const Context *context, 2502 angle::EntryPoint entryPoint, 2503 BufferBinding targetPacked); 2504 2505 // GL_OES_matrix_palette 2506 bool ValidateCurrentPaletteMatrixOES(const Context *context, 2507 angle::EntryPoint entryPoint, 2508 GLuint matrixpaletteindex); 2509 bool ValidateLoadPaletteFromModelViewMatrixOES(const Context *context, 2510 angle::EntryPoint entryPoint); 2511 bool ValidateMatrixIndexPointerOES(const Context *context, 2512 angle::EntryPoint entryPoint, 2513 GLint size, 2514 GLenum type, 2515 GLsizei stride, 2516 const void *pointer); 2517 bool ValidateWeightPointerOES(const Context *context, 2518 angle::EntryPoint entryPoint, 2519 GLint size, 2520 GLenum type, 2521 GLsizei stride, 2522 const void *pointer); 2523 2524 // GL_OES_packed_depth_stencil 2525 2526 // GL_OES_point_size_array 2527 bool ValidatePointSizePointerOES(const Context *context, 2528 angle::EntryPoint entryPoint, 2529 VertexAttribType typePacked, 2530 GLsizei stride, 2531 const void *pointer); 2532 2533 // GL_OES_point_sprite 2534 2535 // GL_OES_primitive_bounding_box 2536 bool ValidatePrimitiveBoundingBoxOES(const PrivateState &state, 2537 ErrorSet *errors, 2538 angle::EntryPoint entryPoint, 2539 GLfloat minX, 2540 GLfloat minY, 2541 GLfloat minZ, 2542 GLfloat minW, 2543 GLfloat maxX, 2544 GLfloat maxY, 2545 GLfloat maxZ, 2546 GLfloat maxW); 2547 2548 // GL_OES_query_matrix 2549 bool ValidateQueryMatrixxOES(const Context *context, 2550 angle::EntryPoint entryPoint, 2551 const GLfixed *mantissa, 2552 const GLint *exponent); 2553 2554 // GL_OES_rgb8_rgba8 2555 2556 // GL_OES_sample_shading 2557 bool ValidateMinSampleShadingOES(const PrivateState &state, 2558 ErrorSet *errors, 2559 angle::EntryPoint entryPoint, 2560 GLfloat value); 2561 2562 // GL_OES_sample_variables 2563 2564 // GL_OES_shader_image_atomic 2565 2566 // GL_OES_shader_io_blocks 2567 2568 // GL_OES_shader_multisample_interpolation 2569 2570 // GL_OES_standard_derivatives 2571 2572 // GL_OES_surfaceless_context 2573 2574 // GL_OES_tessellation_shader 2575 bool ValidatePatchParameteriOES(const PrivateState &state, 2576 ErrorSet *errors, 2577 angle::EntryPoint entryPoint, 2578 GLenum pname, 2579 GLint value); 2580 2581 // GL_OES_texture_3D 2582 bool ValidateCompressedTexImage3DOES(const Context *context, 2583 angle::EntryPoint entryPoint, 2584 TextureTarget targetPacked, 2585 GLint level, 2586 GLenum internalformat, 2587 GLsizei width, 2588 GLsizei height, 2589 GLsizei depth, 2590 GLint border, 2591 GLsizei imageSize, 2592 const void *data); 2593 bool ValidateCompressedTexSubImage3DOES(const Context *context, 2594 angle::EntryPoint entryPoint, 2595 TextureTarget targetPacked, 2596 GLint level, 2597 GLint xoffset, 2598 GLint yoffset, 2599 GLint zoffset, 2600 GLsizei width, 2601 GLsizei height, 2602 GLsizei depth, 2603 GLenum format, 2604 GLsizei imageSize, 2605 const void *data); 2606 bool ValidateCopyTexSubImage3DOES(const Context *context, 2607 angle::EntryPoint entryPoint, 2608 TextureTarget targetPacked, 2609 GLint level, 2610 GLint xoffset, 2611 GLint yoffset, 2612 GLint zoffset, 2613 GLint x, 2614 GLint y, 2615 GLsizei width, 2616 GLsizei height); 2617 bool ValidateFramebufferTexture3DOES(const Context *context, 2618 angle::EntryPoint entryPoint, 2619 GLenum target, 2620 GLenum attachment, 2621 TextureTarget textargetPacked, 2622 TextureID texturePacked, 2623 GLint level, 2624 GLint zoffset); 2625 bool ValidateTexImage3DOES(const Context *context, 2626 angle::EntryPoint entryPoint, 2627 TextureTarget targetPacked, 2628 GLint level, 2629 GLenum internalformat, 2630 GLsizei width, 2631 GLsizei height, 2632 GLsizei depth, 2633 GLint border, 2634 GLenum format, 2635 GLenum type, 2636 const void *pixels); 2637 bool ValidateTexSubImage3DOES(const Context *context, 2638 angle::EntryPoint entryPoint, 2639 TextureTarget targetPacked, 2640 GLint level, 2641 GLint xoffset, 2642 GLint yoffset, 2643 GLint zoffset, 2644 GLsizei width, 2645 GLsizei height, 2646 GLsizei depth, 2647 GLenum format, 2648 GLenum type, 2649 const void *pixels); 2650 2651 // GL_OES_texture_border_clamp 2652 bool ValidateGetSamplerParameterIivOES(const Context *context, 2653 angle::EntryPoint entryPoint, 2654 SamplerID samplerPacked, 2655 GLenum pname, 2656 const GLint *params); 2657 bool ValidateGetSamplerParameterIuivOES(const Context *context, 2658 angle::EntryPoint entryPoint, 2659 SamplerID samplerPacked, 2660 GLenum pname, 2661 const GLuint *params); 2662 bool ValidateGetTexParameterIivOES(const Context *context, 2663 angle::EntryPoint entryPoint, 2664 TextureType targetPacked, 2665 GLenum pname, 2666 const GLint *params); 2667 bool ValidateGetTexParameterIuivOES(const Context *context, 2668 angle::EntryPoint entryPoint, 2669 TextureType targetPacked, 2670 GLenum pname, 2671 const GLuint *params); 2672 bool ValidateSamplerParameterIivOES(const Context *context, 2673 angle::EntryPoint entryPoint, 2674 SamplerID samplerPacked, 2675 GLenum pname, 2676 const GLint *param); 2677 bool ValidateSamplerParameterIuivOES(const Context *context, 2678 angle::EntryPoint entryPoint, 2679 SamplerID samplerPacked, 2680 GLenum pname, 2681 const GLuint *param); 2682 bool ValidateTexParameterIivOES(const Context *context, 2683 angle::EntryPoint entryPoint, 2684 TextureType targetPacked, 2685 GLenum pname, 2686 const GLint *params); 2687 bool ValidateTexParameterIuivOES(const Context *context, 2688 angle::EntryPoint entryPoint, 2689 TextureType targetPacked, 2690 GLenum pname, 2691 const GLuint *params); 2692 2693 // GL_OES_texture_buffer 2694 bool ValidateTexBufferOES(const Context *context, 2695 angle::EntryPoint entryPoint, 2696 TextureType targetPacked, 2697 GLenum internalformat, 2698 BufferID bufferPacked); 2699 bool ValidateTexBufferRangeOES(const Context *context, 2700 angle::EntryPoint entryPoint, 2701 TextureType targetPacked, 2702 GLenum internalformat, 2703 BufferID bufferPacked, 2704 GLintptr offset, 2705 GLsizeiptr size); 2706 2707 // GL_OES_texture_compression_astc 2708 2709 // GL_OES_texture_cube_map 2710 bool ValidateGetTexGenfvOES(const Context *context, 2711 angle::EntryPoint entryPoint, 2712 GLenum coord, 2713 GLenum pname, 2714 const GLfloat *params); 2715 bool ValidateGetTexGenivOES(const Context *context, 2716 angle::EntryPoint entryPoint, 2717 GLenum coord, 2718 GLenum pname, 2719 const GLint *params); 2720 bool ValidateGetTexGenxvOES(const Context *context, 2721 angle::EntryPoint entryPoint, 2722 GLenum coord, 2723 GLenum pname, 2724 const GLfixed *params); 2725 bool ValidateTexGenfOES(const Context *context, 2726 angle::EntryPoint entryPoint, 2727 GLenum coord, 2728 GLenum pname, 2729 GLfloat param); 2730 bool ValidateTexGenfvOES(const Context *context, 2731 angle::EntryPoint entryPoint, 2732 GLenum coord, 2733 GLenum pname, 2734 const GLfloat *params); 2735 bool ValidateTexGeniOES(const Context *context, 2736 angle::EntryPoint entryPoint, 2737 GLenum coord, 2738 GLenum pname, 2739 GLint param); 2740 bool ValidateTexGenivOES(const Context *context, 2741 angle::EntryPoint entryPoint, 2742 GLenum coord, 2743 GLenum pname, 2744 const GLint *params); 2745 bool ValidateTexGenxOES(const Context *context, 2746 angle::EntryPoint entryPoint, 2747 GLenum coord, 2748 GLenum pname, 2749 GLfixed param); 2750 bool ValidateTexGenxvOES(const Context *context, 2751 angle::EntryPoint entryPoint, 2752 GLenum coord, 2753 GLenum pname, 2754 const GLfixed *params); 2755 2756 // GL_OES_texture_cube_map_array 2757 2758 // GL_OES_texture_float 2759 2760 // GL_OES_texture_float_linear 2761 2762 // GL_OES_texture_half_float 2763 2764 // GL_OES_texture_half_float_linear 2765 2766 // GL_OES_texture_npot 2767 2768 // GL_OES_texture_stencil8 2769 2770 // GL_OES_texture_storage_multisample_2d_array 2771 bool ValidateTexStorage3DMultisampleOES(const Context *context, 2772 angle::EntryPoint entryPoint, 2773 TextureType targetPacked, 2774 GLsizei samples, 2775 GLenum internalformat, 2776 GLsizei width, 2777 GLsizei height, 2778 GLsizei depth, 2779 GLboolean fixedsamplelocations); 2780 2781 // GL_OES_vertex_array_object 2782 bool ValidateBindVertexArrayOES(const Context *context, 2783 angle::EntryPoint entryPoint, 2784 VertexArrayID arrayPacked); 2785 bool ValidateDeleteVertexArraysOES(const Context *context, 2786 angle::EntryPoint entryPoint, 2787 GLsizei n, 2788 const VertexArrayID *arraysPacked); 2789 bool ValidateGenVertexArraysOES(const Context *context, 2790 angle::EntryPoint entryPoint, 2791 GLsizei n, 2792 const VertexArrayID *arraysPacked); 2793 bool ValidateIsVertexArrayOES(const Context *context, 2794 angle::EntryPoint entryPoint, 2795 VertexArrayID arrayPacked); 2796 2797 // GL_OES_vertex_half_float 2798 2799 // GL_OES_vertex_type_10_10_10_2 2800 2801 // GL_OVR_multiview 2802 bool ValidateFramebufferTextureMultiviewOVR(const Context *context, 2803 angle::EntryPoint entryPoint, 2804 GLenum target, 2805 GLenum attachment, 2806 TextureID texturePacked, 2807 GLint level, 2808 GLint baseViewIndex, 2809 GLsizei numViews); 2810 2811 // GL_OVR_multiview2 2812 2813 // GL_QCOM_framebuffer_foveated 2814 bool ValidateFramebufferFoveationConfigQCOM(const Context *context, 2815 angle::EntryPoint entryPoint, 2816 FramebufferID framebufferPacked, 2817 GLuint numLayers, 2818 GLuint focalPointsPerLayer, 2819 GLuint requestedFeatures, 2820 const GLuint *providedFeatures); 2821 bool ValidateFramebufferFoveationParametersQCOM(const Context *context, 2822 angle::EntryPoint entryPoint, 2823 FramebufferID framebufferPacked, 2824 GLuint layer, 2825 GLuint focalPoint, 2826 GLfloat focalX, 2827 GLfloat focalY, 2828 GLfloat gainX, 2829 GLfloat gainY, 2830 GLfloat foveaArea); 2831 2832 // GL_QCOM_render_shared_exponent 2833 2834 // GL_QCOM_shading_rate 2835 bool ValidateShadingRateQCOM(const PrivateState &state, 2836 ErrorSet *errors, 2837 angle::EntryPoint entryPoint, 2838 GLenum rate); 2839 2840 // GL_QCOM_texture_foveated 2841 bool ValidateTextureFoveationParametersQCOM(const Context *context, 2842 angle::EntryPoint entryPoint, 2843 TextureID texturePacked, 2844 GLuint layer, 2845 GLuint focalPoint, 2846 GLfloat focalX, 2847 GLfloat focalY, 2848 GLfloat gainX, 2849 GLfloat gainY, 2850 GLfloat foveaArea); 2851 } // namespace gl 2852 2853 #endif // LIBANGLE_VALIDATION_ESEXT_AUTOGEN_H_ 2854