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 16 namespace gl 17 { 18 class Context; 19 20 // GL_ANGLE_base_vertex_base_instance 21 bool ValidateDrawArraysInstancedBaseInstanceANGLE(const Context *context, 22 PrimitiveMode modePacked, 23 GLint first, 24 GLsizei count, 25 GLsizei instanceCount, 26 GLuint baseInstance); 27 bool ValidateDrawElementsInstancedBaseVertexBaseInstanceANGLE(const Context *context, 28 PrimitiveMode modePacked, 29 GLsizei count, 30 DrawElementsType typePacked, 31 const GLvoid *indices, 32 GLsizei instanceCounts, 33 GLint baseVertex, 34 GLuint baseInstance); 35 bool ValidateMultiDrawArraysInstancedBaseInstanceANGLE(const Context *context, 36 PrimitiveMode modePacked, 37 const GLint *firsts, 38 const GLsizei *counts, 39 const GLsizei *instanceCounts, 40 const GLuint *baseInstances, 41 GLsizei drawcount); 42 bool ValidateMultiDrawElementsInstancedBaseVertexBaseInstanceANGLE(const Context *context, 43 PrimitiveMode modePacked, 44 const GLsizei *counts, 45 DrawElementsType typePacked, 46 const GLvoid *const *indices, 47 const GLsizei *instanceCounts, 48 const GLint *baseVertices, 49 const GLuint *baseInstances, 50 GLsizei drawcount); 51 52 // GL_ANGLE_copy_texture_3d 53 bool ValidateCopyTexture3DANGLE(const Context *context, 54 TextureID sourceIdPacked, 55 GLint sourceLevel, 56 TextureTarget destTargetPacked, 57 TextureID destIdPacked, 58 GLint destLevel, 59 GLint internalFormat, 60 GLenum destType, 61 GLboolean unpackFlipY, 62 GLboolean unpackPremultiplyAlpha, 63 GLboolean unpackUnmultiplyAlpha); 64 bool ValidateCopySubTexture3DANGLE(const Context *context, 65 TextureID sourceIdPacked, 66 GLint sourceLevel, 67 TextureTarget destTargetPacked, 68 TextureID destIdPacked, 69 GLint destLevel, 70 GLint xoffset, 71 GLint yoffset, 72 GLint zoffset, 73 GLint x, 74 GLint y, 75 GLint z, 76 GLint width, 77 GLint height, 78 GLint depth, 79 GLboolean unpackFlipY, 80 GLboolean unpackPremultiplyAlpha, 81 GLboolean unpackUnmultiplyAlpha); 82 83 // GL_ANGLE_framebuffer_blit 84 bool ValidateBlitFramebufferANGLE(const Context *context, 85 GLint srcX0, 86 GLint srcY0, 87 GLint srcX1, 88 GLint srcY1, 89 GLint dstX0, 90 GLint dstY0, 91 GLint dstX1, 92 GLint dstY1, 93 GLbitfield mask, 94 GLenum filter); 95 96 // GL_ANGLE_framebuffer_multisample 97 bool ValidateRenderbufferStorageMultisampleANGLE(const Context *context, 98 GLenum target, 99 GLsizei samples, 100 GLenum internalformat, 101 GLsizei width, 102 GLsizei height); 103 104 // GL_ANGLE_get_image 105 bool ValidateGetTexImageANGLE(const Context *context, 106 TextureTarget targetPacked, 107 GLint level, 108 GLenum format, 109 GLenum type, 110 const void *pixels); 111 bool ValidateGetRenderbufferImageANGLE(const Context *context, 112 GLenum target, 113 GLenum format, 114 GLenum type, 115 const void *pixels); 116 117 // GL_ANGLE_get_tex_level_parameter 118 bool ValidateGetTexLevelParameterivANGLE(const Context *context, 119 TextureTarget targetPacked, 120 GLint level, 121 GLenum pname, 122 const GLint *params); 123 bool ValidateGetTexLevelParameterfvANGLE(const Context *context, 124 TextureTarget targetPacked, 125 GLint level, 126 GLenum pname, 127 const GLfloat *params); 128 129 // GL_ANGLE_instanced_arrays 130 bool ValidateDrawArraysInstancedANGLE(const Context *context, 131 PrimitiveMode modePacked, 132 GLint first, 133 GLsizei count, 134 GLsizei primcount); 135 bool ValidateDrawElementsInstancedANGLE(const Context *context, 136 PrimitiveMode modePacked, 137 GLsizei count, 138 DrawElementsType typePacked, 139 const void *indices, 140 GLsizei primcount); 141 bool ValidateVertexAttribDivisorANGLE(const Context *context, GLuint index, GLuint divisor); 142 143 // GL_ANGLE_memory_object_flags 144 bool ValidateTexStorageMemFlags2DANGLE(const Context *context, 145 TextureType targetPacked, 146 GLsizei levels, 147 GLenum internalFormat, 148 GLsizei width, 149 GLsizei height, 150 MemoryObjectID memoryPacked, 151 GLuint64 offset, 152 GLbitfield createFlags, 153 GLbitfield usageFlags); 154 bool ValidateTexStorageMemFlags2DMultisampleANGLE(const Context *context, 155 TextureType targetPacked, 156 GLsizei samples, 157 GLenum internalFormat, 158 GLsizei width, 159 GLsizei height, 160 GLboolean fixedSampleLocations, 161 MemoryObjectID memoryPacked, 162 GLuint64 offset, 163 GLbitfield createFlags, 164 GLbitfield usageFlags); 165 bool ValidateTexStorageMemFlags3DANGLE(const Context *context, 166 TextureType targetPacked, 167 GLsizei levels, 168 GLenum internalFormat, 169 GLsizei width, 170 GLsizei height, 171 GLsizei depth, 172 MemoryObjectID memoryPacked, 173 GLuint64 offset, 174 GLbitfield createFlags, 175 GLbitfield usageFlags); 176 bool ValidateTexStorageMemFlags3DMultisampleANGLE(const Context *context, 177 TextureType targetPacked, 178 GLsizei samples, 179 GLenum internalFormat, 180 GLsizei width, 181 GLsizei height, 182 GLsizei depth, 183 GLboolean fixedSampleLocations, 184 MemoryObjectID memoryPacked, 185 GLuint64 offset, 186 GLbitfield createFlags, 187 GLbitfield usageFlags); 188 189 // GL_ANGLE_memory_object_fuchsia 190 bool ValidateImportMemoryZirconHandleANGLE(const Context *context, 191 MemoryObjectID memoryPacked, 192 GLuint64 size, 193 HandleType handleTypePacked, 194 GLuint handle); 195 196 // GL_ANGLE_multi_draw 197 bool ValidateMultiDrawArraysANGLE(const Context *context, 198 PrimitiveMode modePacked, 199 const GLint *firsts, 200 const GLsizei *counts, 201 GLsizei drawcount); 202 bool ValidateMultiDrawArraysInstancedANGLE(const Context *context, 203 PrimitiveMode modePacked, 204 const GLint *firsts, 205 const GLsizei *counts, 206 const GLsizei *instanceCounts, 207 GLsizei drawcount); 208 bool ValidateMultiDrawElementsANGLE(const Context *context, 209 PrimitiveMode modePacked, 210 const GLsizei *counts, 211 DrawElementsType typePacked, 212 const GLvoid *const *indices, 213 GLsizei drawcount); 214 bool ValidateMultiDrawElementsInstancedANGLE(const Context *context, 215 PrimitiveMode modePacked, 216 const GLsizei *counts, 217 DrawElementsType typePacked, 218 const GLvoid *const *indices, 219 const GLsizei *instanceCounts, 220 GLsizei drawcount); 221 222 // GL_ANGLE_program_binary 223 224 // GL_ANGLE_provoking_vertex 225 bool ValidateProvokingVertexANGLE(const Context *context, ProvokingVertexConvention modePacked); 226 227 // GL_ANGLE_request_extension 228 bool ValidateRequestExtensionANGLE(const Context *context, const GLchar *name); 229 bool ValidateDisableExtensionANGLE(const Context *context, const GLchar *name); 230 231 // GL_ANGLE_robust_client_memory 232 bool ValidateGetBooleanvRobustANGLE(const Context *context, 233 GLenum pname, 234 GLsizei bufSize, 235 const GLsizei *length, 236 const GLboolean *params); 237 bool ValidateGetBufferParameterivRobustANGLE(const Context *context, 238 BufferBinding targetPacked, 239 GLenum pname, 240 GLsizei bufSize, 241 const GLsizei *length, 242 const GLint *params); 243 bool ValidateGetFloatvRobustANGLE(const Context *context, 244 GLenum pname, 245 GLsizei bufSize, 246 const GLsizei *length, 247 const GLfloat *params); 248 bool ValidateGetFramebufferAttachmentParameterivRobustANGLE(const Context *context, 249 GLenum target, 250 GLenum attachment, 251 GLenum pname, 252 GLsizei bufSize, 253 const GLsizei *length, 254 const GLint *params); 255 bool ValidateGetIntegervRobustANGLE(const Context *context, 256 GLenum pname, 257 GLsizei bufSize, 258 const GLsizei *length, 259 const GLint *data); 260 bool ValidateGetProgramivRobustANGLE(const Context *context, 261 ShaderProgramID programPacked, 262 GLenum pname, 263 GLsizei bufSize, 264 const GLsizei *length, 265 const GLint *params); 266 bool ValidateGetRenderbufferParameterivRobustANGLE(const Context *context, 267 GLenum target, 268 GLenum pname, 269 GLsizei bufSize, 270 const GLsizei *length, 271 const GLint *params); 272 bool ValidateGetShaderivRobustANGLE(const Context *context, 273 ShaderProgramID shaderPacked, 274 GLenum pname, 275 GLsizei bufSize, 276 const GLsizei *length, 277 const GLint *params); 278 bool ValidateGetTexParameterfvRobustANGLE(const Context *context, 279 TextureType targetPacked, 280 GLenum pname, 281 GLsizei bufSize, 282 const GLsizei *length, 283 const GLfloat *params); 284 bool ValidateGetTexParameterivRobustANGLE(const Context *context, 285 TextureType targetPacked, 286 GLenum pname, 287 GLsizei bufSize, 288 const GLsizei *length, 289 const GLint *params); 290 bool ValidateGetUniformfvRobustANGLE(const Context *context, 291 ShaderProgramID programPacked, 292 UniformLocation locationPacked, 293 GLsizei bufSize, 294 const GLsizei *length, 295 const GLfloat *params); 296 bool ValidateGetUniformivRobustANGLE(const Context *context, 297 ShaderProgramID programPacked, 298 UniformLocation locationPacked, 299 GLsizei bufSize, 300 const GLsizei *length, 301 const GLint *params); 302 bool ValidateGetVertexAttribfvRobustANGLE(const Context *context, 303 GLuint index, 304 GLenum pname, 305 GLsizei bufSize, 306 const GLsizei *length, 307 const GLfloat *params); 308 bool ValidateGetVertexAttribivRobustANGLE(const Context *context, 309 GLuint index, 310 GLenum pname, 311 GLsizei bufSize, 312 const GLsizei *length, 313 const GLint *params); 314 bool ValidateGetVertexAttribPointervRobustANGLE(const Context *context, 315 GLuint index, 316 GLenum pname, 317 GLsizei bufSize, 318 const GLsizei *length, 319 void *const *pointer); 320 bool ValidateReadPixelsRobustANGLE(const Context *context, 321 GLint x, 322 GLint y, 323 GLsizei width, 324 GLsizei height, 325 GLenum format, 326 GLenum type, 327 GLsizei bufSize, 328 const GLsizei *length, 329 const GLsizei *columns, 330 const GLsizei *rows, 331 const void *pixels); 332 bool ValidateTexImage2DRobustANGLE(const Context *context, 333 TextureTarget targetPacked, 334 GLint level, 335 GLint internalformat, 336 GLsizei width, 337 GLsizei height, 338 GLint border, 339 GLenum format, 340 GLenum type, 341 GLsizei bufSize, 342 const void *pixels); 343 bool ValidateTexParameterfvRobustANGLE(const Context *context, 344 TextureType targetPacked, 345 GLenum pname, 346 GLsizei bufSize, 347 const GLfloat *params); 348 bool ValidateTexParameterivRobustANGLE(const Context *context, 349 TextureType targetPacked, 350 GLenum pname, 351 GLsizei bufSize, 352 const GLint *params); 353 bool ValidateTexSubImage2DRobustANGLE(const Context *context, 354 TextureTarget targetPacked, 355 GLint level, 356 GLint xoffset, 357 GLint yoffset, 358 GLsizei width, 359 GLsizei height, 360 GLenum format, 361 GLenum type, 362 GLsizei bufSize, 363 const void *pixels); 364 bool ValidateTexImage3DRobustANGLE(const Context *context, 365 TextureTarget targetPacked, 366 GLint level, 367 GLint internalformat, 368 GLsizei width, 369 GLsizei height, 370 GLsizei depth, 371 GLint border, 372 GLenum format, 373 GLenum type, 374 GLsizei bufSize, 375 const void *pixels); 376 bool ValidateTexSubImage3DRobustANGLE(const Context *context, 377 TextureTarget targetPacked, 378 GLint level, 379 GLint xoffset, 380 GLint yoffset, 381 GLint zoffset, 382 GLsizei width, 383 GLsizei height, 384 GLsizei depth, 385 GLenum format, 386 GLenum type, 387 GLsizei bufSize, 388 const void *pixels); 389 bool ValidateCompressedTexImage2DRobustANGLE(const Context *context, 390 TextureTarget targetPacked, 391 GLint level, 392 GLenum internalformat, 393 GLsizei width, 394 GLsizei height, 395 GLint border, 396 GLsizei imageSize, 397 GLsizei dataSize, 398 const GLvoid *data); 399 bool ValidateCompressedTexSubImage2DRobustANGLE(const Context *context, 400 TextureTarget targetPacked, 401 GLint level, 402 GLsizei xoffset, 403 GLsizei yoffset, 404 GLsizei width, 405 GLsizei height, 406 GLenum format, 407 GLsizei imageSize, 408 GLsizei dataSize, 409 const GLvoid *data); 410 bool ValidateCompressedTexImage3DRobustANGLE(const Context *context, 411 TextureTarget targetPacked, 412 GLint level, 413 GLenum internalformat, 414 GLsizei width, 415 GLsizei height, 416 GLsizei depth, 417 GLint border, 418 GLsizei imageSize, 419 GLsizei dataSize, 420 const GLvoid *data); 421 bool ValidateCompressedTexSubImage3DRobustANGLE(const Context *context, 422 TextureTarget targetPacked, 423 GLint level, 424 GLint xoffset, 425 GLint yoffset, 426 GLint zoffset, 427 GLsizei width, 428 GLsizei height, 429 GLsizei depth, 430 GLenum format, 431 GLsizei imageSize, 432 GLsizei dataSize, 433 const GLvoid *data); 434 bool ValidateGetQueryivRobustANGLE(const Context *context, 435 QueryType targetPacked, 436 GLenum pname, 437 GLsizei bufSize, 438 const GLsizei *length, 439 const GLint *params); 440 bool ValidateGetQueryObjectuivRobustANGLE(const Context *context, 441 QueryID idPacked, 442 GLenum pname, 443 GLsizei bufSize, 444 const GLsizei *length, 445 const GLuint *params); 446 bool ValidateGetBufferPointervRobustANGLE(const Context *context, 447 BufferBinding targetPacked, 448 GLenum pname, 449 GLsizei bufSize, 450 const GLsizei *length, 451 void *const *params); 452 bool ValidateGetIntegeri_vRobustANGLE(const Context *context, 453 GLenum target, 454 GLuint index, 455 GLsizei bufSize, 456 const GLsizei *length, 457 const GLint *data); 458 bool ValidateGetInternalformativRobustANGLE(const Context *context, 459 GLenum target, 460 GLenum internalformat, 461 GLenum pname, 462 GLsizei bufSize, 463 const GLsizei *length, 464 const GLint *params); 465 bool ValidateGetVertexAttribIivRobustANGLE(const Context *context, 466 GLuint index, 467 GLenum pname, 468 GLsizei bufSize, 469 const GLsizei *length, 470 const GLint *params); 471 bool ValidateGetVertexAttribIuivRobustANGLE(const Context *context, 472 GLuint index, 473 GLenum pname, 474 GLsizei bufSize, 475 const GLsizei *length, 476 const GLuint *params); 477 bool ValidateGetUniformuivRobustANGLE(const Context *context, 478 ShaderProgramID programPacked, 479 UniformLocation locationPacked, 480 GLsizei bufSize, 481 const GLsizei *length, 482 const GLuint *params); 483 bool ValidateGetActiveUniformBlockivRobustANGLE(const Context *context, 484 ShaderProgramID programPacked, 485 UniformBlockIndex uniformBlockIndexPacked, 486 GLenum pname, 487 GLsizei bufSize, 488 const GLsizei *length, 489 const GLint *params); 490 bool ValidateGetInteger64vRobustANGLE(const Context *context, 491 GLenum pname, 492 GLsizei bufSize, 493 const GLsizei *length, 494 const GLint64 *data); 495 bool ValidateGetInteger64i_vRobustANGLE(const Context *context, 496 GLenum target, 497 GLuint index, 498 GLsizei bufSize, 499 const GLsizei *length, 500 const GLint64 *data); 501 bool ValidateGetBufferParameteri64vRobustANGLE(const Context *context, 502 BufferBinding targetPacked, 503 GLenum pname, 504 GLsizei bufSize, 505 const GLsizei *length, 506 const GLint64 *params); 507 bool ValidateSamplerParameterivRobustANGLE(const Context *context, 508 SamplerID samplerPacked, 509 GLuint pname, 510 GLsizei bufSize, 511 const GLint *param); 512 bool ValidateSamplerParameterfvRobustANGLE(const Context *context, 513 SamplerID samplerPacked, 514 GLenum pname, 515 GLsizei bufSize, 516 const GLfloat *param); 517 bool ValidateGetSamplerParameterivRobustANGLE(const Context *context, 518 SamplerID samplerPacked, 519 GLenum pname, 520 GLsizei bufSize, 521 const GLsizei *length, 522 const GLint *params); 523 bool ValidateGetSamplerParameterfvRobustANGLE(const Context *context, 524 SamplerID samplerPacked, 525 GLenum pname, 526 GLsizei bufSize, 527 const GLsizei *length, 528 const GLfloat *params); 529 bool ValidateGetFramebufferParameterivRobustANGLE(const Context *context, 530 GLenum target, 531 GLenum pname, 532 GLsizei bufSize, 533 const GLsizei *length, 534 const GLint *params); 535 bool ValidateGetProgramInterfaceivRobustANGLE(const Context *context, 536 ShaderProgramID programPacked, 537 GLenum programInterface, 538 GLenum pname, 539 GLsizei bufSize, 540 const GLsizei *length, 541 const GLint *params); 542 bool ValidateGetBooleani_vRobustANGLE(const Context *context, 543 GLenum target, 544 GLuint index, 545 GLsizei bufSize, 546 const GLsizei *length, 547 const GLboolean *data); 548 bool ValidateGetMultisamplefvRobustANGLE(const Context *context, 549 GLenum pname, 550 GLuint index, 551 GLsizei bufSize, 552 const GLsizei *length, 553 const GLfloat *val); 554 bool ValidateGetTexLevelParameterivRobustANGLE(const Context *context, 555 TextureTarget targetPacked, 556 GLint level, 557 GLenum pname, 558 GLsizei bufSize, 559 const GLsizei *length, 560 const GLint *params); 561 bool ValidateGetTexLevelParameterfvRobustANGLE(const Context *context, 562 TextureTarget targetPacked, 563 GLint level, 564 GLenum pname, 565 GLsizei bufSize, 566 const GLsizei *length, 567 const GLfloat *params); 568 bool ValidateGetPointervRobustANGLERobustANGLE(const Context *context, 569 GLenum pname, 570 GLsizei bufSize, 571 const GLsizei *length, 572 void *const *params); 573 bool ValidateReadnPixelsRobustANGLE(const Context *context, 574 GLint x, 575 GLint y, 576 GLsizei width, 577 GLsizei height, 578 GLenum format, 579 GLenum type, 580 GLsizei bufSize, 581 const GLsizei *length, 582 const GLsizei *columns, 583 const GLsizei *rows, 584 const void *data); 585 bool ValidateGetnUniformfvRobustANGLE(const Context *context, 586 ShaderProgramID programPacked, 587 UniformLocation locationPacked, 588 GLsizei bufSize, 589 const GLsizei *length, 590 const GLfloat *params); 591 bool ValidateGetnUniformivRobustANGLE(const Context *context, 592 ShaderProgramID programPacked, 593 UniformLocation locationPacked, 594 GLsizei bufSize, 595 const GLsizei *length, 596 const GLint *params); 597 bool ValidateGetnUniformuivRobustANGLE(const Context *context, 598 ShaderProgramID programPacked, 599 UniformLocation locationPacked, 600 GLsizei bufSize, 601 const GLsizei *length, 602 const GLuint *params); 603 bool ValidateTexParameterIivRobustANGLE(const Context *context, 604 TextureType targetPacked, 605 GLenum pname, 606 GLsizei bufSize, 607 const GLint *params); 608 bool ValidateTexParameterIuivRobustANGLE(const Context *context, 609 TextureType targetPacked, 610 GLenum pname, 611 GLsizei bufSize, 612 const GLuint *params); 613 bool ValidateGetTexParameterIivRobustANGLE(const Context *context, 614 TextureType targetPacked, 615 GLenum pname, 616 GLsizei bufSize, 617 const GLsizei *length, 618 const GLint *params); 619 bool ValidateGetTexParameterIuivRobustANGLE(const Context *context, 620 TextureType targetPacked, 621 GLenum pname, 622 GLsizei bufSize, 623 const GLsizei *length, 624 const GLuint *params); 625 bool ValidateSamplerParameterIivRobustANGLE(const Context *context, 626 SamplerID samplerPacked, 627 GLenum pname, 628 GLsizei bufSize, 629 const GLint *param); 630 bool ValidateSamplerParameterIuivRobustANGLE(const Context *context, 631 SamplerID samplerPacked, 632 GLenum pname, 633 GLsizei bufSize, 634 const GLuint *param); 635 bool ValidateGetSamplerParameterIivRobustANGLE(const Context *context, 636 SamplerID samplerPacked, 637 GLenum pname, 638 GLsizei bufSize, 639 const GLsizei *length, 640 const GLint *params); 641 bool ValidateGetSamplerParameterIuivRobustANGLE(const Context *context, 642 SamplerID samplerPacked, 643 GLenum pname, 644 GLsizei bufSize, 645 const GLsizei *length, 646 const GLuint *params); 647 bool ValidateGetQueryObjectivRobustANGLE(const Context *context, 648 QueryID idPacked, 649 GLenum pname, 650 GLsizei bufSize, 651 const GLsizei *length, 652 const GLint *params); 653 bool ValidateGetQueryObjecti64vRobustANGLE(const Context *context, 654 QueryID idPacked, 655 GLenum pname, 656 GLsizei bufSize, 657 const GLsizei *length, 658 const GLint64 *params); 659 bool ValidateGetQueryObjectui64vRobustANGLE(const Context *context, 660 QueryID idPacked, 661 GLenum pname, 662 GLsizei bufSize, 663 const GLsizei *length, 664 const GLuint64 *params); 665 666 // GL_ANGLE_semaphore_fuchsia 667 bool ValidateImportSemaphoreZirconHandleANGLE(const Context *context, 668 SemaphoreID semaphorePacked, 669 HandleType handleTypePacked, 670 GLuint handle); 671 672 // GL_ANGLE_texture_external_update 673 bool ValidateTexImage2DExternalANGLE(const Context *context, 674 TextureTarget targetPacked, 675 GLint level, 676 GLint internalformat, 677 GLsizei width, 678 GLsizei height, 679 GLint border, 680 GLenum format, 681 GLenum type); 682 bool ValidateInvalidateTextureANGLE(const Context *context, TextureType targetPacked); 683 684 // GL_ANGLE_texture_multisample 685 bool ValidateTexStorage2DMultisampleANGLE(const Context *context, 686 TextureType targetPacked, 687 GLsizei samples, 688 GLenum internalformat, 689 GLsizei width, 690 GLsizei height, 691 GLboolean fixedsamplelocations); 692 bool ValidateGetMultisamplefvANGLE(const Context *context, 693 GLenum pname, 694 GLuint index, 695 const GLfloat *val); 696 bool ValidateSampleMaskiANGLE(const Context *context, GLuint maskNumber, GLbitfield mask); 697 698 // GL_ANGLE_translated_shader_source 699 bool ValidateGetTranslatedShaderSourceANGLE(const Context *context, 700 ShaderProgramID shaderPacked, 701 GLsizei bufsize, 702 const GLsizei *length, 703 const GLchar *source); 704 705 // GL_CHROMIUM_bind_uniform_location 706 bool ValidateBindUniformLocationCHROMIUM(const Context *context, 707 ShaderProgramID programPacked, 708 UniformLocation locationPacked, 709 const GLchar *name); 710 711 // GL_CHROMIUM_copy_compressed_texture 712 bool ValidateCompressedCopyTextureCHROMIUM(const Context *context, 713 TextureID sourceIdPacked, 714 TextureID destIdPacked); 715 716 // GL_CHROMIUM_copy_texture 717 bool ValidateCopyTextureCHROMIUM(const Context *context, 718 TextureID sourceIdPacked, 719 GLint sourceLevel, 720 TextureTarget destTargetPacked, 721 TextureID destIdPacked, 722 GLint destLevel, 723 GLint internalFormat, 724 GLenum destType, 725 GLboolean unpackFlipY, 726 GLboolean unpackPremultiplyAlpha, 727 GLboolean unpackUnmultiplyAlpha); 728 bool ValidateCopySubTextureCHROMIUM(const Context *context, 729 TextureID sourceIdPacked, 730 GLint sourceLevel, 731 TextureTarget destTargetPacked, 732 TextureID destIdPacked, 733 GLint destLevel, 734 GLint xoffset, 735 GLint yoffset, 736 GLint x, 737 GLint y, 738 GLint width, 739 GLint height, 740 GLboolean unpackFlipY, 741 GLboolean unpackPremultiplyAlpha, 742 GLboolean unpackUnmultiplyAlpha); 743 744 // GL_CHROMIUM_framebuffer_mixed_samples 745 bool ValidateCoverageModulationCHROMIUM(const Context *context, GLenum components); 746 747 // GL_CHROMIUM_lose_context 748 bool ValidateLoseContextCHROMIUM(const Context *context, 749 GraphicsResetStatus currentPacked, 750 GraphicsResetStatus otherPacked); 751 752 // GL_EXT_EGL_image_array 753 754 // GL_EXT_YUV_target 755 756 // GL_EXT_blend_func_extended 757 bool ValidateBindFragDataLocationEXT(const Context *context, 758 ShaderProgramID programPacked, 759 GLuint color, 760 const GLchar *name); 761 bool ValidateBindFragDataLocationIndexedEXT(const Context *context, 762 ShaderProgramID programPacked, 763 GLuint colorNumber, 764 GLuint index, 765 const GLchar *name); 766 bool ValidateGetFragDataIndexEXT(const Context *context, 767 ShaderProgramID programPacked, 768 const GLchar *name); 769 bool ValidateGetProgramResourceLocationIndexEXT(const Context *context, 770 ShaderProgramID programPacked, 771 GLenum programInterface, 772 const GLchar *name); 773 774 // GL_EXT_buffer_storage 775 bool ValidateBufferStorageEXT(const Context *context, 776 BufferBinding targetPacked, 777 GLsizeiptr size, 778 const void *data, 779 GLbitfield flags); 780 781 // GL_EXT_clip_control 782 bool ValidateClipControlEXT(const Context *context, GLenum origin, GLenum depth); 783 784 // GL_EXT_copy_image 785 bool ValidateCopyImageSubDataEXT(const Context *context, 786 GLuint srcName, 787 GLenum srcTarget, 788 GLint srcLevel, 789 GLint srcX, 790 GLint srcY, 791 GLint srcZ, 792 GLuint dstName, 793 GLenum dstTarget, 794 GLint dstLevel, 795 GLint dstX, 796 GLint dstY, 797 GLint dstZ, 798 GLsizei srcWidth, 799 GLsizei srcHeight, 800 GLsizei srcDepth); 801 802 // GL_EXT_debug_label 803 bool ValidateGetObjectLabelEXT(const Context *context, 804 GLenum type, 805 GLuint object, 806 GLsizei bufSize, 807 const GLsizei *length, 808 const GLchar *label); 809 bool ValidateLabelObjectEXT(const Context *context, 810 GLenum type, 811 GLuint object, 812 GLsizei length, 813 const GLchar *label); 814 815 // GL_EXT_debug_marker 816 bool ValidateInsertEventMarkerEXT(const Context *context, GLsizei length, const GLchar *marker); 817 bool ValidatePopGroupMarkerEXT(const Context *context); 818 bool ValidatePushGroupMarkerEXT(const Context *context, GLsizei length, const GLchar *marker); 819 820 // GL_EXT_discard_framebuffer 821 bool ValidateDiscardFramebufferEXT(const Context *context, 822 GLenum target, 823 GLsizei numAttachments, 824 const GLenum *attachments); 825 826 // GL_EXT_disjoint_timer_query 827 bool ValidateBeginQueryEXT(const Context *context, QueryType targetPacked, QueryID idPacked); 828 bool ValidateDeleteQueriesEXT(const Context *context, GLsizei n, const QueryID *idsPacked); 829 bool ValidateEndQueryEXT(const Context *context, QueryType targetPacked); 830 bool ValidateGenQueriesEXT(const Context *context, GLsizei n, const QueryID *idsPacked); 831 bool ValidateGetInteger64vEXT(const Context *context, GLenum pname, const GLint64 *data); 832 bool ValidateGetQueryObjecti64vEXT(const Context *context, 833 QueryID idPacked, 834 GLenum pname, 835 const GLint64 *params); 836 bool ValidateGetQueryObjectivEXT(const Context *context, 837 QueryID idPacked, 838 GLenum pname, 839 const GLint *params); 840 bool ValidateGetQueryObjectui64vEXT(const Context *context, 841 QueryID idPacked, 842 GLenum pname, 843 const GLuint64 *params); 844 bool ValidateGetQueryObjectuivEXT(const Context *context, 845 QueryID idPacked, 846 GLenum pname, 847 const GLuint *params); 848 bool ValidateGetQueryivEXT(const Context *context, 849 QueryType targetPacked, 850 GLenum pname, 851 const GLint *params); 852 bool ValidateIsQueryEXT(const Context *context, QueryID idPacked); 853 bool ValidateQueryCounterEXT(const Context *context, QueryID idPacked, QueryType targetPacked); 854 855 // GL_EXT_draw_buffers 856 bool ValidateDrawBuffersEXT(const Context *context, GLsizei n, const GLenum *bufs); 857 858 // GL_EXT_draw_buffers_indexed 859 bool ValidateBlendEquationSeparateiEXT(const Context *context, 860 GLuint buf, 861 GLenum modeRGB, 862 GLenum modeAlpha); 863 bool ValidateBlendEquationiEXT(const Context *context, GLuint buf, GLenum mode); 864 bool ValidateBlendFuncSeparateiEXT(const Context *context, 865 GLuint buf, 866 GLenum srcRGB, 867 GLenum dstRGB, 868 GLenum srcAlpha, 869 GLenum dstAlpha); 870 bool ValidateBlendFunciEXT(const Context *context, GLuint buf, GLenum src, GLenum dst); 871 bool ValidateColorMaskiEXT(const Context *context, 872 GLuint index, 873 GLboolean r, 874 GLboolean g, 875 GLboolean b, 876 GLboolean a); 877 bool ValidateDisableiEXT(const Context *context, GLenum target, GLuint index); 878 bool ValidateEnableiEXT(const Context *context, GLenum target, GLuint index); 879 bool ValidateIsEnablediEXT(const Context *context, GLenum target, GLuint index); 880 881 // GL_EXT_draw_elements_base_vertex 882 bool ValidateDrawElementsBaseVertexEXT(const Context *context, 883 PrimitiveMode modePacked, 884 GLsizei count, 885 DrawElementsType typePacked, 886 const void *indices, 887 GLint basevertex); 888 bool ValidateDrawElementsInstancedBaseVertexEXT(const Context *context, 889 PrimitiveMode modePacked, 890 GLsizei count, 891 DrawElementsType typePacked, 892 const void *indices, 893 GLsizei instancecount, 894 GLint basevertex); 895 bool ValidateDrawRangeElementsBaseVertexEXT(const Context *context, 896 PrimitiveMode modePacked, 897 GLuint start, 898 GLuint end, 899 GLsizei count, 900 DrawElementsType typePacked, 901 const void *indices, 902 GLint basevertex); 903 bool ValidateMultiDrawElementsBaseVertexEXT(const Context *context, 904 PrimitiveMode modePacked, 905 const GLsizei *count, 906 DrawElementsType typePacked, 907 const void *const *indices, 908 GLsizei primcount, 909 const GLint *basevertex); 910 911 // GL_EXT_external_buffer 912 bool ValidateBufferStorageExternalEXT(const Context *context, 913 BufferBinding targetPacked, 914 GLintptr offset, 915 GLsizeiptr size, 916 GLeglClientBufferEXT clientBuffer, 917 GLbitfield flags); 918 bool ValidateNamedBufferStorageExternalEXT(const Context *context, 919 GLuint buffer, 920 GLintptr offset, 921 GLsizeiptr size, 922 GLeglClientBufferEXT clientBuffer, 923 GLbitfield flags); 924 925 // GL_EXT_geometry_shader 926 bool ValidateFramebufferTextureEXT(const Context *context, 927 GLenum target, 928 GLenum attachment, 929 TextureID texturePacked, 930 GLint level); 931 932 // GL_EXT_instanced_arrays 933 bool ValidateDrawArraysInstancedEXT(const Context *context, 934 PrimitiveMode modePacked, 935 GLint start, 936 GLsizei count, 937 GLsizei primcount); 938 bool ValidateDrawElementsInstancedEXT(const Context *context, 939 PrimitiveMode modePacked, 940 GLsizei count, 941 DrawElementsType typePacked, 942 const void *indices, 943 GLsizei primcount); 944 bool ValidateVertexAttribDivisorEXT(const Context *context, GLuint index, GLuint divisor); 945 946 // GL_EXT_map_buffer_range 947 bool ValidateFlushMappedBufferRangeEXT(const Context *context, 948 BufferBinding targetPacked, 949 GLintptr offset, 950 GLsizeiptr length); 951 bool ValidateMapBufferRangeEXT(const Context *context, 952 BufferBinding targetPacked, 953 GLintptr offset, 954 GLsizeiptr length, 955 GLbitfield access); 956 957 // GL_EXT_memory_object 958 bool ValidateBufferStorageMemEXT(const Context *context, 959 TextureType targetPacked, 960 GLsizeiptr size, 961 MemoryObjectID memoryPacked, 962 GLuint64 offset); 963 bool ValidateCreateMemoryObjectsEXT(const Context *context, 964 GLsizei n, 965 const MemoryObjectID *memoryObjectsPacked); 966 bool ValidateDeleteMemoryObjectsEXT(const Context *context, 967 GLsizei n, 968 const MemoryObjectID *memoryObjectsPacked); 969 bool ValidateGetMemoryObjectParameterivEXT(const Context *context, 970 MemoryObjectID memoryObjectPacked, 971 GLenum pname, 972 const GLint *params); 973 bool ValidateGetUnsignedBytevEXT(const Context *context, GLenum pname, const GLubyte *data); 974 bool ValidateGetUnsignedBytei_vEXT(const Context *context, 975 GLenum target, 976 GLuint index, 977 const GLubyte *data); 978 bool ValidateIsMemoryObjectEXT(const Context *context, MemoryObjectID memoryObjectPacked); 979 bool ValidateMemoryObjectParameterivEXT(const Context *context, 980 MemoryObjectID memoryObjectPacked, 981 GLenum pname, 982 const GLint *params); 983 bool ValidateTexStorageMem2DEXT(const Context *context, 984 TextureType targetPacked, 985 GLsizei levels, 986 GLenum internalFormat, 987 GLsizei width, 988 GLsizei height, 989 MemoryObjectID memoryPacked, 990 GLuint64 offset); 991 bool ValidateTexStorageMem2DMultisampleEXT(const Context *context, 992 TextureType targetPacked, 993 GLsizei samples, 994 GLenum internalFormat, 995 GLsizei width, 996 GLsizei height, 997 GLboolean fixedSampleLocations, 998 MemoryObjectID memoryPacked, 999 GLuint64 offset); 1000 bool ValidateTexStorageMem3DEXT(const Context *context, 1001 TextureType targetPacked, 1002 GLsizei levels, 1003 GLenum internalFormat, 1004 GLsizei width, 1005 GLsizei height, 1006 GLsizei depth, 1007 MemoryObjectID memoryPacked, 1008 GLuint64 offset); 1009 bool ValidateTexStorageMem3DMultisampleEXT(const Context *context, 1010 TextureType targetPacked, 1011 GLsizei samples, 1012 GLenum internalFormat, 1013 GLsizei width, 1014 GLsizei height, 1015 GLsizei depth, 1016 GLboolean fixedSampleLocations, 1017 MemoryObjectID memoryPacked, 1018 GLuint64 offset); 1019 1020 // GL_EXT_memory_object_fd 1021 bool ValidateImportMemoryFdEXT(const Context *context, 1022 MemoryObjectID memoryPacked, 1023 GLuint64 size, 1024 HandleType handleTypePacked, 1025 GLint fd); 1026 1027 // GL_EXT_multisampled_render_to_texture 1028 bool ValidateFramebufferTexture2DMultisampleEXT(const Context *context, 1029 GLenum target, 1030 GLenum attachment, 1031 TextureTarget textargetPacked, 1032 TextureID texturePacked, 1033 GLint level, 1034 GLsizei samples); 1035 bool ValidateRenderbufferStorageMultisampleEXT(const Context *context, 1036 GLenum target, 1037 GLsizei samples, 1038 GLenum internalformat, 1039 GLsizei width, 1040 GLsizei height); 1041 1042 // GL_EXT_occlusion_query_boolean 1043 1044 // GL_EXT_primitive_bounding_box 1045 bool ValidatePrimitiveBoundingBoxEXT(const Context *context, 1046 GLfloat minX, 1047 GLfloat minY, 1048 GLfloat minZ, 1049 GLfloat minW, 1050 GLfloat maxX, 1051 GLfloat maxY, 1052 GLfloat maxZ, 1053 GLfloat maxW); 1054 1055 // GL_EXT_read_format_bgra 1056 1057 // GL_EXT_robustness 1058 bool ValidateGetGraphicsResetStatusEXT(const Context *context); 1059 bool ValidateGetnUniformfvEXT(const Context *context, 1060 ShaderProgramID programPacked, 1061 UniformLocation locationPacked, 1062 GLsizei bufSize, 1063 const GLfloat *params); 1064 bool ValidateGetnUniformivEXT(const Context *context, 1065 ShaderProgramID programPacked, 1066 UniformLocation locationPacked, 1067 GLsizei bufSize, 1068 const GLint *params); 1069 bool ValidateReadnPixelsEXT(const Context *context, 1070 GLint x, 1071 GLint y, 1072 GLsizei width, 1073 GLsizei height, 1074 GLenum format, 1075 GLenum type, 1076 GLsizei bufSize, 1077 const void *data); 1078 1079 // GL_EXT_sRGB 1080 1081 // GL_EXT_sRGB_write_control 1082 1083 // GL_EXT_semaphore 1084 bool ValidateDeleteSemaphoresEXT(const Context *context, 1085 GLsizei n, 1086 const SemaphoreID *semaphoresPacked); 1087 bool ValidateGenSemaphoresEXT(const Context *context, 1088 GLsizei n, 1089 const SemaphoreID *semaphoresPacked); 1090 bool ValidateGetSemaphoreParameterui64vEXT(const Context *context, 1091 SemaphoreID semaphorePacked, 1092 GLenum pname, 1093 const GLuint64 *params); 1094 bool ValidateIsSemaphoreEXT(const Context *context, SemaphoreID semaphorePacked); 1095 bool ValidateSemaphoreParameterui64vEXT(const Context *context, 1096 SemaphoreID semaphorePacked, 1097 GLenum pname, 1098 const GLuint64 *params); 1099 bool ValidateSignalSemaphoreEXT(const Context *context, 1100 SemaphoreID semaphorePacked, 1101 GLuint numBufferBarriers, 1102 const BufferID *buffersPacked, 1103 GLuint numTextureBarriers, 1104 const TextureID *texturesPacked, 1105 const GLenum *dstLayouts); 1106 bool ValidateWaitSemaphoreEXT(const Context *context, 1107 SemaphoreID semaphorePacked, 1108 GLuint numBufferBarriers, 1109 const BufferID *buffersPacked, 1110 GLuint numTextureBarriers, 1111 const TextureID *texturesPacked, 1112 const GLenum *srcLayouts); 1113 1114 // GL_EXT_semaphore_fd 1115 bool ValidateImportSemaphoreFdEXT(const Context *context, 1116 SemaphoreID semaphorePacked, 1117 HandleType handleTypePacked, 1118 GLint fd); 1119 1120 // GL_EXT_separate_shader_objects 1121 bool ValidateActiveShaderProgramEXT(const Context *context, 1122 ProgramPipelineID pipelinePacked, 1123 ShaderProgramID programPacked); 1124 bool ValidateBindProgramPipelineEXT(const Context *context, ProgramPipelineID pipelinePacked); 1125 bool ValidateCreateShaderProgramvEXT(const Context *context, 1126 ShaderType typePacked, 1127 GLsizei count, 1128 const GLchar **strings); 1129 bool ValidateDeleteProgramPipelinesEXT(const Context *context, 1130 GLsizei n, 1131 const ProgramPipelineID *pipelinesPacked); 1132 bool ValidateGenProgramPipelinesEXT(const Context *context, 1133 GLsizei n, 1134 const ProgramPipelineID *pipelinesPacked); 1135 bool ValidateGetProgramPipelineInfoLogEXT(const Context *context, 1136 ProgramPipelineID pipelinePacked, 1137 GLsizei bufSize, 1138 const GLsizei *length, 1139 const GLchar *infoLog); 1140 bool ValidateGetProgramPipelineivEXT(const Context *context, 1141 ProgramPipelineID pipelinePacked, 1142 GLenum pname, 1143 const GLint *params); 1144 bool ValidateIsProgramPipelineEXT(const Context *context, ProgramPipelineID pipelinePacked); 1145 bool ValidateProgramParameteriEXT(const Context *context, 1146 ShaderProgramID programPacked, 1147 GLenum pname, 1148 GLint value); 1149 bool ValidateProgramUniform1fEXT(const Context *context, 1150 ShaderProgramID programPacked, 1151 UniformLocation locationPacked, 1152 GLfloat v0); 1153 bool ValidateProgramUniform1fvEXT(const Context *context, 1154 ShaderProgramID programPacked, 1155 UniformLocation locationPacked, 1156 GLsizei count, 1157 const GLfloat *value); 1158 bool ValidateProgramUniform1iEXT(const Context *context, 1159 ShaderProgramID programPacked, 1160 UniformLocation locationPacked, 1161 GLint v0); 1162 bool ValidateProgramUniform1ivEXT(const Context *context, 1163 ShaderProgramID programPacked, 1164 UniformLocation locationPacked, 1165 GLsizei count, 1166 const GLint *value); 1167 bool ValidateProgramUniform1uiEXT(const Context *context, 1168 ShaderProgramID programPacked, 1169 UniformLocation locationPacked, 1170 GLuint v0); 1171 bool ValidateProgramUniform1uivEXT(const Context *context, 1172 ShaderProgramID programPacked, 1173 UniformLocation locationPacked, 1174 GLsizei count, 1175 const GLuint *value); 1176 bool ValidateProgramUniform2fEXT(const Context *context, 1177 ShaderProgramID programPacked, 1178 UniformLocation locationPacked, 1179 GLfloat v0, 1180 GLfloat v1); 1181 bool ValidateProgramUniform2fvEXT(const Context *context, 1182 ShaderProgramID programPacked, 1183 UniformLocation locationPacked, 1184 GLsizei count, 1185 const GLfloat *value); 1186 bool ValidateProgramUniform2iEXT(const Context *context, 1187 ShaderProgramID programPacked, 1188 UniformLocation locationPacked, 1189 GLint v0, 1190 GLint v1); 1191 bool ValidateProgramUniform2ivEXT(const Context *context, 1192 ShaderProgramID programPacked, 1193 UniformLocation locationPacked, 1194 GLsizei count, 1195 const GLint *value); 1196 bool ValidateProgramUniform2uiEXT(const Context *context, 1197 ShaderProgramID programPacked, 1198 UniformLocation locationPacked, 1199 GLuint v0, 1200 GLuint v1); 1201 bool ValidateProgramUniform2uivEXT(const Context *context, 1202 ShaderProgramID programPacked, 1203 UniformLocation locationPacked, 1204 GLsizei count, 1205 const GLuint *value); 1206 bool ValidateProgramUniform3fEXT(const Context *context, 1207 ShaderProgramID programPacked, 1208 UniformLocation locationPacked, 1209 GLfloat v0, 1210 GLfloat v1, 1211 GLfloat v2); 1212 bool ValidateProgramUniform3fvEXT(const Context *context, 1213 ShaderProgramID programPacked, 1214 UniformLocation locationPacked, 1215 GLsizei count, 1216 const GLfloat *value); 1217 bool ValidateProgramUniform3iEXT(const Context *context, 1218 ShaderProgramID programPacked, 1219 UniformLocation locationPacked, 1220 GLint v0, 1221 GLint v1, 1222 GLint v2); 1223 bool ValidateProgramUniform3ivEXT(const Context *context, 1224 ShaderProgramID programPacked, 1225 UniformLocation locationPacked, 1226 GLsizei count, 1227 const GLint *value); 1228 bool ValidateProgramUniform3uiEXT(const Context *context, 1229 ShaderProgramID programPacked, 1230 UniformLocation locationPacked, 1231 GLuint v0, 1232 GLuint v1, 1233 GLuint v2); 1234 bool ValidateProgramUniform3uivEXT(const Context *context, 1235 ShaderProgramID programPacked, 1236 UniformLocation locationPacked, 1237 GLsizei count, 1238 const GLuint *value); 1239 bool ValidateProgramUniform4fEXT(const Context *context, 1240 ShaderProgramID programPacked, 1241 UniformLocation locationPacked, 1242 GLfloat v0, 1243 GLfloat v1, 1244 GLfloat v2, 1245 GLfloat v3); 1246 bool ValidateProgramUniform4fvEXT(const Context *context, 1247 ShaderProgramID programPacked, 1248 UniformLocation locationPacked, 1249 GLsizei count, 1250 const GLfloat *value); 1251 bool ValidateProgramUniform4iEXT(const Context *context, 1252 ShaderProgramID programPacked, 1253 UniformLocation locationPacked, 1254 GLint v0, 1255 GLint v1, 1256 GLint v2, 1257 GLint v3); 1258 bool ValidateProgramUniform4ivEXT(const Context *context, 1259 ShaderProgramID programPacked, 1260 UniformLocation locationPacked, 1261 GLsizei count, 1262 const GLint *value); 1263 bool ValidateProgramUniform4uiEXT(const Context *context, 1264 ShaderProgramID programPacked, 1265 UniformLocation locationPacked, 1266 GLuint v0, 1267 GLuint v1, 1268 GLuint v2, 1269 GLuint v3); 1270 bool ValidateProgramUniform4uivEXT(const Context *context, 1271 ShaderProgramID programPacked, 1272 UniformLocation locationPacked, 1273 GLsizei count, 1274 const GLuint *value); 1275 bool ValidateProgramUniformMatrix2fvEXT(const Context *context, 1276 ShaderProgramID programPacked, 1277 UniformLocation locationPacked, 1278 GLsizei count, 1279 GLboolean transpose, 1280 const GLfloat *value); 1281 bool ValidateProgramUniformMatrix2x3fvEXT(const Context *context, 1282 ShaderProgramID programPacked, 1283 UniformLocation locationPacked, 1284 GLsizei count, 1285 GLboolean transpose, 1286 const GLfloat *value); 1287 bool ValidateProgramUniformMatrix2x4fvEXT(const Context *context, 1288 ShaderProgramID programPacked, 1289 UniformLocation locationPacked, 1290 GLsizei count, 1291 GLboolean transpose, 1292 const GLfloat *value); 1293 bool ValidateProgramUniformMatrix3fvEXT(const Context *context, 1294 ShaderProgramID programPacked, 1295 UniformLocation locationPacked, 1296 GLsizei count, 1297 GLboolean transpose, 1298 const GLfloat *value); 1299 bool ValidateProgramUniformMatrix3x2fvEXT(const Context *context, 1300 ShaderProgramID programPacked, 1301 UniformLocation locationPacked, 1302 GLsizei count, 1303 GLboolean transpose, 1304 const GLfloat *value); 1305 bool ValidateProgramUniformMatrix3x4fvEXT(const Context *context, 1306 ShaderProgramID programPacked, 1307 UniformLocation locationPacked, 1308 GLsizei count, 1309 GLboolean transpose, 1310 const GLfloat *value); 1311 bool ValidateProgramUniformMatrix4fvEXT(const Context *context, 1312 ShaderProgramID programPacked, 1313 UniformLocation locationPacked, 1314 GLsizei count, 1315 GLboolean transpose, 1316 const GLfloat *value); 1317 bool ValidateProgramUniformMatrix4x2fvEXT(const Context *context, 1318 ShaderProgramID programPacked, 1319 UniformLocation locationPacked, 1320 GLsizei count, 1321 GLboolean transpose, 1322 const GLfloat *value); 1323 bool ValidateProgramUniformMatrix4x3fvEXT(const Context *context, 1324 ShaderProgramID programPacked, 1325 UniformLocation locationPacked, 1326 GLsizei count, 1327 GLboolean transpose, 1328 const GLfloat *value); 1329 bool ValidateUseProgramStagesEXT(const Context *context, 1330 ProgramPipelineID pipelinePacked, 1331 GLbitfield stages, 1332 ShaderProgramID programPacked); 1333 bool ValidateValidateProgramPipelineEXT(const Context *context, ProgramPipelineID pipelinePacked); 1334 1335 // GL_EXT_shader_framebuffer_fetch_non_coherent 1336 bool ValidateFramebufferFetchBarrierEXT(const Context *context); 1337 1338 // GL_EXT_shader_io_blocks 1339 1340 // GL_EXT_tessellation_shader 1341 bool ValidatePatchParameteriEXT(const Context *context, GLenum pname, GLint value); 1342 1343 // GL_EXT_texture_border_clamp 1344 bool ValidateGetSamplerParameterIivEXT(const Context *context, 1345 SamplerID samplerPacked, 1346 GLenum pname, 1347 const GLint *params); 1348 bool ValidateGetSamplerParameterIuivEXT(const Context *context, 1349 SamplerID samplerPacked, 1350 GLenum pname, 1351 const GLuint *params); 1352 bool ValidateGetTexParameterIivEXT(const Context *context, 1353 TextureType targetPacked, 1354 GLenum pname, 1355 const GLint *params); 1356 bool ValidateGetTexParameterIuivEXT(const Context *context, 1357 TextureType targetPacked, 1358 GLenum pname, 1359 const GLuint *params); 1360 bool ValidateSamplerParameterIivEXT(const Context *context, 1361 SamplerID samplerPacked, 1362 GLenum pname, 1363 const GLint *param); 1364 bool ValidateSamplerParameterIuivEXT(const Context *context, 1365 SamplerID samplerPacked, 1366 GLenum pname, 1367 const GLuint *param); 1368 bool ValidateTexParameterIivEXT(const Context *context, 1369 TextureType targetPacked, 1370 GLenum pname, 1371 const GLint *params); 1372 bool ValidateTexParameterIuivEXT(const Context *context, 1373 TextureType targetPacked, 1374 GLenum pname, 1375 const GLuint *params); 1376 1377 // GL_EXT_texture_buffer 1378 bool ValidateTexBufferEXT(const Context *context, 1379 TextureType targetPacked, 1380 GLenum internalformat, 1381 BufferID bufferPacked); 1382 bool ValidateTexBufferRangeEXT(const Context *context, 1383 TextureType targetPacked, 1384 GLenum internalformat, 1385 BufferID bufferPacked, 1386 GLintptr offset, 1387 GLsizeiptr size); 1388 1389 // GL_EXT_texture_compression_bptc 1390 1391 // GL_EXT_texture_compression_dxt1 1392 1393 // GL_EXT_texture_compression_rgtc 1394 1395 // GL_EXT_texture_compression_s3tc 1396 1397 // GL_EXT_texture_compression_s3tc_srgb 1398 1399 // GL_EXT_texture_cube_map_array 1400 1401 // GL_EXT_texture_filter_anisotropic 1402 1403 // GL_EXT_texture_format_BGRA8888 1404 1405 // GL_EXT_texture_sRGB_R8 1406 1407 // GL_EXT_texture_sRGB_RG8 1408 1409 // GL_EXT_texture_storage 1410 bool ValidateTexStorage1DEXT(const Context *context, 1411 GLenum target, 1412 GLsizei levels, 1413 GLenum internalformat, 1414 GLsizei width); 1415 bool ValidateTexStorage2DEXT(const Context *context, 1416 TextureType targetPacked, 1417 GLsizei levels, 1418 GLenum internalformat, 1419 GLsizei width, 1420 GLsizei height); 1421 bool ValidateTexStorage3DEXT(const Context *context, 1422 TextureType targetPacked, 1423 GLsizei levels, 1424 GLenum internalformat, 1425 GLsizei width, 1426 GLsizei height, 1427 GLsizei depth); 1428 1429 // GL_KHR_blend_equation_advanced 1430 bool ValidateBlendBarrierKHR(const Context *context); 1431 1432 // GL_KHR_debug 1433 bool ValidateDebugMessageCallbackKHR(const Context *context, 1434 GLDEBUGPROCKHR callback, 1435 const void *userParam); 1436 bool ValidateDebugMessageControlKHR(const Context *context, 1437 GLenum source, 1438 GLenum type, 1439 GLenum severity, 1440 GLsizei count, 1441 const GLuint *ids, 1442 GLboolean enabled); 1443 bool ValidateDebugMessageInsertKHR(const Context *context, 1444 GLenum source, 1445 GLenum type, 1446 GLuint id, 1447 GLenum severity, 1448 GLsizei length, 1449 const GLchar *buf); 1450 bool ValidateGetDebugMessageLogKHR(const Context *context, 1451 GLuint count, 1452 GLsizei bufSize, 1453 const GLenum *sources, 1454 const GLenum *types, 1455 const GLuint *ids, 1456 const GLenum *severities, 1457 const GLsizei *lengths, 1458 const GLchar *messageLog); 1459 bool ValidateGetObjectLabelKHR(const Context *context, 1460 GLenum identifier, 1461 GLuint name, 1462 GLsizei bufSize, 1463 const GLsizei *length, 1464 const GLchar *label); 1465 bool ValidateGetObjectPtrLabelKHR(const Context *context, 1466 const void *ptr, 1467 GLsizei bufSize, 1468 const GLsizei *length, 1469 const GLchar *label); 1470 bool ValidateGetPointervKHR(const Context *context, GLenum pname, void *const *params); 1471 bool ValidateObjectLabelKHR(const Context *context, 1472 GLenum identifier, 1473 GLuint name, 1474 GLsizei length, 1475 const GLchar *label); 1476 bool ValidateObjectPtrLabelKHR(const Context *context, 1477 const void *ptr, 1478 GLsizei length, 1479 const GLchar *label); 1480 bool ValidatePopDebugGroupKHR(const Context *context); 1481 bool ValidatePushDebugGroupKHR(const Context *context, 1482 GLenum source, 1483 GLuint id, 1484 GLsizei length, 1485 const GLchar *message); 1486 1487 // GL_KHR_parallel_shader_compile 1488 bool ValidateMaxShaderCompilerThreadsKHR(const Context *context, GLuint count); 1489 1490 // GL_NV_fence 1491 bool ValidateDeleteFencesNV(const Context *context, GLsizei n, const FenceNVID *fencesPacked); 1492 bool ValidateFinishFenceNV(const Context *context, FenceNVID fencePacked); 1493 bool ValidateGenFencesNV(const Context *context, GLsizei n, const FenceNVID *fencesPacked); 1494 bool ValidateGetFenceivNV(const Context *context, 1495 FenceNVID fencePacked, 1496 GLenum pname, 1497 const GLint *params); 1498 bool ValidateIsFenceNV(const Context *context, FenceNVID fencePacked); 1499 bool ValidateSetFenceNV(const Context *context, FenceNVID fencePacked, GLenum condition); 1500 bool ValidateTestFenceNV(const Context *context, FenceNVID fencePacked); 1501 1502 // GL_NV_framebuffer_blit 1503 bool ValidateBlitFramebufferNV(const Context *context, 1504 GLint srcX0, 1505 GLint srcY0, 1506 GLint srcX1, 1507 GLint srcY1, 1508 GLint dstX0, 1509 GLint dstY0, 1510 GLint dstX1, 1511 GLint dstY1, 1512 GLbitfield mask, 1513 GLenum filter); 1514 1515 // GL_OES_EGL_image 1516 bool ValidateEGLImageTargetRenderbufferStorageOES(const Context *context, 1517 GLenum target, 1518 GLeglImageOES image); 1519 bool ValidateEGLImageTargetTexture2DOES(const Context *context, 1520 TextureType targetPacked, 1521 GLeglImageOES image); 1522 1523 // GL_OES_compressed_ETC1_RGB8_texture 1524 1525 // GL_OES_copy_image 1526 bool ValidateCopyImageSubDataOES(const Context *context, 1527 GLuint srcName, 1528 GLenum srcTarget, 1529 GLint srcLevel, 1530 GLint srcX, 1531 GLint srcY, 1532 GLint srcZ, 1533 GLuint dstName, 1534 GLenum dstTarget, 1535 GLint dstLevel, 1536 GLint dstX, 1537 GLint dstY, 1538 GLint dstZ, 1539 GLsizei srcWidth, 1540 GLsizei srcHeight, 1541 GLsizei srcDepth); 1542 1543 // GL_OES_depth32 1544 1545 // GL_OES_draw_buffers_indexed 1546 bool ValidateBlendEquationSeparateiOES(const Context *context, 1547 GLuint buf, 1548 GLenum modeRGB, 1549 GLenum modeAlpha); 1550 bool ValidateBlendEquationiOES(const Context *context, GLuint buf, GLenum mode); 1551 bool ValidateBlendFuncSeparateiOES(const Context *context, 1552 GLuint buf, 1553 GLenum srcRGB, 1554 GLenum dstRGB, 1555 GLenum srcAlpha, 1556 GLenum dstAlpha); 1557 bool ValidateBlendFunciOES(const Context *context, GLuint buf, GLenum src, GLenum dst); 1558 bool ValidateColorMaskiOES(const Context *context, 1559 GLuint index, 1560 GLboolean r, 1561 GLboolean g, 1562 GLboolean b, 1563 GLboolean a); 1564 bool ValidateDisableiOES(const Context *context, GLenum target, GLuint index); 1565 bool ValidateEnableiOES(const Context *context, GLenum target, GLuint index); 1566 bool ValidateIsEnablediOES(const Context *context, GLenum target, GLuint index); 1567 1568 // GL_OES_draw_elements_base_vertex 1569 bool ValidateDrawElementsBaseVertexOES(const Context *context, 1570 PrimitiveMode modePacked, 1571 GLsizei count, 1572 DrawElementsType typePacked, 1573 const void *indices, 1574 GLint basevertex); 1575 bool ValidateDrawElementsInstancedBaseVertexOES(const Context *context, 1576 PrimitiveMode modePacked, 1577 GLsizei count, 1578 DrawElementsType typePacked, 1579 const void *indices, 1580 GLsizei instancecount, 1581 GLint basevertex); 1582 bool ValidateDrawRangeElementsBaseVertexOES(const Context *context, 1583 PrimitiveMode modePacked, 1584 GLuint start, 1585 GLuint end, 1586 GLsizei count, 1587 DrawElementsType typePacked, 1588 const void *indices, 1589 GLint basevertex); 1590 1591 // GL_OES_draw_texture 1592 bool ValidateDrawTexfOES(const Context *context, 1593 GLfloat x, 1594 GLfloat y, 1595 GLfloat z, 1596 GLfloat width, 1597 GLfloat height); 1598 bool ValidateDrawTexfvOES(const Context *context, const GLfloat *coords); 1599 bool ValidateDrawTexiOES(const Context *context, 1600 GLint x, 1601 GLint y, 1602 GLint z, 1603 GLint width, 1604 GLint height); 1605 bool ValidateDrawTexivOES(const Context *context, const GLint *coords); 1606 bool ValidateDrawTexsOES(const Context *context, 1607 GLshort x, 1608 GLshort y, 1609 GLshort z, 1610 GLshort width, 1611 GLshort height); 1612 bool ValidateDrawTexsvOES(const Context *context, const GLshort *coords); 1613 bool ValidateDrawTexxOES(const Context *context, 1614 GLfixed x, 1615 GLfixed y, 1616 GLfixed z, 1617 GLfixed width, 1618 GLfixed height); 1619 bool ValidateDrawTexxvOES(const Context *context, const GLfixed *coords); 1620 1621 // GL_OES_framebuffer_object 1622 bool ValidateBindFramebufferOES(const Context *context, 1623 GLenum target, 1624 FramebufferID framebufferPacked); 1625 bool ValidateBindRenderbufferOES(const Context *context, 1626 GLenum target, 1627 RenderbufferID renderbufferPacked); 1628 bool ValidateCheckFramebufferStatusOES(const Context *context, GLenum target); 1629 bool ValidateDeleteFramebuffersOES(const Context *context, 1630 GLsizei n, 1631 const FramebufferID *framebuffersPacked); 1632 bool ValidateDeleteRenderbuffersOES(const Context *context, 1633 GLsizei n, 1634 const RenderbufferID *renderbuffersPacked); 1635 bool ValidateFramebufferRenderbufferOES(const Context *context, 1636 GLenum target, 1637 GLenum attachment, 1638 GLenum renderbuffertarget, 1639 RenderbufferID renderbufferPacked); 1640 bool ValidateFramebufferTexture2DOES(const Context *context, 1641 GLenum target, 1642 GLenum attachment, 1643 TextureTarget textargetPacked, 1644 TextureID texturePacked, 1645 GLint level); 1646 bool ValidateGenFramebuffersOES(const Context *context, 1647 GLsizei n, 1648 const FramebufferID *framebuffersPacked); 1649 bool ValidateGenRenderbuffersOES(const Context *context, 1650 GLsizei n, 1651 const RenderbufferID *renderbuffersPacked); 1652 bool ValidateGenerateMipmapOES(const Context *context, TextureType targetPacked); 1653 bool ValidateGetFramebufferAttachmentParameterivOES(const Context *context, 1654 GLenum target, 1655 GLenum attachment, 1656 GLenum pname, 1657 const GLint *params); 1658 bool ValidateGetRenderbufferParameterivOES(const Context *context, 1659 GLenum target, 1660 GLenum pname, 1661 const GLint *params); 1662 bool ValidateIsFramebufferOES(const Context *context, FramebufferID framebufferPacked); 1663 bool ValidateIsRenderbufferOES(const Context *context, RenderbufferID renderbufferPacked); 1664 bool ValidateRenderbufferStorageOES(const Context *context, 1665 GLenum target, 1666 GLenum internalformat, 1667 GLsizei width, 1668 GLsizei height); 1669 1670 // GL_OES_geometry_shader 1671 bool ValidateFramebufferTextureOES(const Context *context, 1672 GLenum target, 1673 GLenum attachment, 1674 TextureID texturePacked, 1675 GLint level); 1676 1677 // GL_OES_get_program_binary 1678 bool ValidateGetProgramBinaryOES(const Context *context, 1679 ShaderProgramID programPacked, 1680 GLsizei bufSize, 1681 const GLsizei *length, 1682 const GLenum *binaryFormat, 1683 const void *binary); 1684 bool ValidateProgramBinaryOES(const Context *context, 1685 ShaderProgramID programPacked, 1686 GLenum binaryFormat, 1687 const void *binary, 1688 GLint length); 1689 1690 // GL_OES_mapbuffer 1691 bool ValidateGetBufferPointervOES(const Context *context, 1692 BufferBinding targetPacked, 1693 GLenum pname, 1694 void *const *params); 1695 bool ValidateMapBufferOES(const Context *context, BufferBinding targetPacked, GLenum access); 1696 bool ValidateUnmapBufferOES(const Context *context, BufferBinding targetPacked); 1697 1698 // GL_OES_matrix_palette 1699 bool ValidateCurrentPaletteMatrixOES(const Context *context, GLuint matrixpaletteindex); 1700 bool ValidateLoadPaletteFromModelViewMatrixOES(const Context *context); 1701 bool ValidateMatrixIndexPointerOES(const Context *context, 1702 GLint size, 1703 GLenum type, 1704 GLsizei stride, 1705 const void *pointer); 1706 bool ValidateWeightPointerOES(const Context *context, 1707 GLint size, 1708 GLenum type, 1709 GLsizei stride, 1710 const void *pointer); 1711 1712 // GL_OES_point_size_array 1713 bool ValidatePointSizePointerOES(const Context *context, 1714 VertexAttribType typePacked, 1715 GLsizei stride, 1716 const void *pointer); 1717 1718 // GL_OES_query_matrix 1719 bool ValidateQueryMatrixxOES(const Context *context, 1720 const GLfixed *mantissa, 1721 const GLint *exponent); 1722 1723 // GL_OES_sample_shading 1724 bool ValidateMinSampleShadingOES(const Context *context, GLfloat value); 1725 1726 // GL_OES_shader_io_blocks 1727 1728 // GL_OES_texture_3D 1729 bool ValidateCompressedTexImage3DOES(const Context *context, 1730 TextureTarget targetPacked, 1731 GLint level, 1732 GLenum internalformat, 1733 GLsizei width, 1734 GLsizei height, 1735 GLsizei depth, 1736 GLint border, 1737 GLsizei imageSize, 1738 const void *data); 1739 bool ValidateCompressedTexSubImage3DOES(const Context *context, 1740 TextureTarget targetPacked, 1741 GLint level, 1742 GLint xoffset, 1743 GLint yoffset, 1744 GLint zoffset, 1745 GLsizei width, 1746 GLsizei height, 1747 GLsizei depth, 1748 GLenum format, 1749 GLsizei imageSize, 1750 const void *data); 1751 bool ValidateCopyTexSubImage3DOES(const Context *context, 1752 TextureTarget targetPacked, 1753 GLint level, 1754 GLint xoffset, 1755 GLint yoffset, 1756 GLint zoffset, 1757 GLint x, 1758 GLint y, 1759 GLsizei width, 1760 GLsizei height); 1761 bool ValidateFramebufferTexture3DOES(const Context *context, 1762 GLenum target, 1763 GLenum attachment, 1764 TextureTarget textargetPacked, 1765 TextureID texturePacked, 1766 GLint level, 1767 GLint zoffset); 1768 bool ValidateTexImage3DOES(const Context *context, 1769 TextureTarget targetPacked, 1770 GLint level, 1771 GLenum internalformat, 1772 GLsizei width, 1773 GLsizei height, 1774 GLsizei depth, 1775 GLint border, 1776 GLenum format, 1777 GLenum type, 1778 const void *pixels); 1779 bool ValidateTexSubImage3DOES(const Context *context, 1780 TextureTarget targetPacked, 1781 GLint level, 1782 GLint xoffset, 1783 GLint yoffset, 1784 GLint zoffset, 1785 GLsizei width, 1786 GLsizei height, 1787 GLsizei depth, 1788 GLenum format, 1789 GLenum type, 1790 const void *pixels); 1791 1792 // GL_OES_texture_border_clamp 1793 bool ValidateGetSamplerParameterIivOES(const Context *context, 1794 SamplerID samplerPacked, 1795 GLenum pname, 1796 const GLint *params); 1797 bool ValidateGetSamplerParameterIuivOES(const Context *context, 1798 SamplerID samplerPacked, 1799 GLenum pname, 1800 const GLuint *params); 1801 bool ValidateGetTexParameterIivOES(const Context *context, 1802 TextureType targetPacked, 1803 GLenum pname, 1804 const GLint *params); 1805 bool ValidateGetTexParameterIuivOES(const Context *context, 1806 TextureType targetPacked, 1807 GLenum pname, 1808 const GLuint *params); 1809 bool ValidateSamplerParameterIivOES(const Context *context, 1810 SamplerID samplerPacked, 1811 GLenum pname, 1812 const GLint *param); 1813 bool ValidateSamplerParameterIuivOES(const Context *context, 1814 SamplerID samplerPacked, 1815 GLenum pname, 1816 const GLuint *param); 1817 bool ValidateTexParameterIivOES(const Context *context, 1818 TextureType targetPacked, 1819 GLenum pname, 1820 const GLint *params); 1821 bool ValidateTexParameterIuivOES(const Context *context, 1822 TextureType targetPacked, 1823 GLenum pname, 1824 const GLuint *params); 1825 1826 // GL_OES_texture_buffer 1827 bool ValidateTexBufferOES(const Context *context, 1828 TextureType targetPacked, 1829 GLenum internalformat, 1830 BufferID bufferPacked); 1831 bool ValidateTexBufferRangeOES(const Context *context, 1832 TextureType targetPacked, 1833 GLenum internalformat, 1834 BufferID bufferPacked, 1835 GLintptr offset, 1836 GLsizeiptr size); 1837 1838 // GL_OES_texture_cube_map 1839 bool ValidateGetTexGenfvOES(const Context *context, 1840 GLenum coord, 1841 GLenum pname, 1842 const GLfloat *params); 1843 bool ValidateGetTexGenivOES(const Context *context, 1844 GLenum coord, 1845 GLenum pname, 1846 const GLint *params); 1847 bool ValidateGetTexGenxvOES(const Context *context, 1848 GLenum coord, 1849 GLenum pname, 1850 const GLfixed *params); 1851 bool ValidateTexGenfOES(const Context *context, GLenum coord, GLenum pname, GLfloat param); 1852 bool ValidateTexGenfvOES(const Context *context, GLenum coord, GLenum pname, const GLfloat *params); 1853 bool ValidateTexGeniOES(const Context *context, GLenum coord, GLenum pname, GLint param); 1854 bool ValidateTexGenivOES(const Context *context, GLenum coord, GLenum pname, const GLint *params); 1855 bool ValidateTexGenxOES(const Context *context, GLenum coord, GLenum pname, GLfixed param); 1856 bool ValidateTexGenxvOES(const Context *context, GLenum coord, GLenum pname, const GLfixed *params); 1857 1858 // GL_OES_texture_cube_map_array 1859 1860 // GL_OES_texture_half_float 1861 1862 // GL_OES_texture_stencil8 1863 1864 // GL_OES_texture_storage_multisample_2d_array 1865 bool ValidateTexStorage3DMultisampleOES(const Context *context, 1866 TextureType targetPacked, 1867 GLsizei samples, 1868 GLenum internalformat, 1869 GLsizei width, 1870 GLsizei height, 1871 GLsizei depth, 1872 GLboolean fixedsamplelocations); 1873 1874 // GL_OES_vertex_array_object 1875 bool ValidateBindVertexArrayOES(const Context *context, VertexArrayID arrayPacked); 1876 bool ValidateDeleteVertexArraysOES(const Context *context, 1877 GLsizei n, 1878 const VertexArrayID *arraysPacked); 1879 bool ValidateGenVertexArraysOES(const Context *context, 1880 GLsizei n, 1881 const VertexArrayID *arraysPacked); 1882 bool ValidateIsVertexArrayOES(const Context *context, VertexArrayID arrayPacked); 1883 1884 // GL_OVR_multiview 1885 bool ValidateFramebufferTextureMultiviewOVR(const Context *context, 1886 GLenum target, 1887 GLenum attachment, 1888 TextureID texturePacked, 1889 GLint level, 1890 GLint baseViewIndex, 1891 GLsizei numViews); 1892 1893 // GL_OVR_multiview2 1894 } // namespace gl 1895 1896 #endif // LIBANGLE_VALIDATION_ESEXT_AUTOGEN_H_ 1897