1 // GENERATED FILE - DO NOT EDIT.
2 // Generated by generate_entry_points.py using data from gl.xml and wgl.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 // validationGL45_autogen.h:
9 //   Validation functions for the OpenGL 4.5 entry points.
10 
11 #ifndef LIBANGLE_VALIDATION_GL45_AUTOGEN_H_
12 #define LIBANGLE_VALIDATION_GL45_AUTOGEN_H_
13 
14 #include "common/PackedEnums.h"
15 
16 namespace gl
17 {
18 class Context;
19 
20 bool ValidateBindTextureUnit(const Context *context, GLuint unit, TextureID texturePacked);
21 bool ValidateBlitNamedFramebuffer(const Context *context,
22                                   GLuint readFramebuffer,
23                                   GLuint drawFramebuffer,
24                                   GLint srcX0,
25                                   GLint srcY0,
26                                   GLint srcX1,
27                                   GLint srcY1,
28                                   GLint dstX0,
29                                   GLint dstY0,
30                                   GLint dstX1,
31                                   GLint dstY1,
32                                   GLbitfield mask,
33                                   GLenum filter);
34 bool ValidateCheckNamedFramebufferStatus(const Context *context,
35                                          FramebufferID framebufferPacked,
36                                          GLenum target);
37 bool ValidateClearNamedBufferData(const Context *context,
38                                   BufferID bufferPacked,
39                                   GLenum internalformat,
40                                   GLenum format,
41                                   GLenum type,
42                                   const void *data);
43 bool ValidateClearNamedBufferSubData(const Context *context,
44                                      BufferID bufferPacked,
45                                      GLenum internalformat,
46                                      GLintptr offset,
47                                      GLsizeiptr size,
48                                      GLenum format,
49                                      GLenum type,
50                                      const void *data);
51 bool ValidateClearNamedFramebufferfi(const Context *context,
52                                      FramebufferID framebufferPacked,
53                                      GLenum buffer,
54                                      GLint drawbuffer,
55                                      GLfloat depth,
56                                      GLint stencil);
57 bool ValidateClearNamedFramebufferfv(const Context *context,
58                                      FramebufferID framebufferPacked,
59                                      GLenum buffer,
60                                      GLint drawbuffer,
61                                      const GLfloat *value);
62 bool ValidateClearNamedFramebufferiv(const Context *context,
63                                      FramebufferID framebufferPacked,
64                                      GLenum buffer,
65                                      GLint drawbuffer,
66                                      const GLint *value);
67 bool ValidateClearNamedFramebufferuiv(const Context *context,
68                                       FramebufferID framebufferPacked,
69                                       GLenum buffer,
70                                       GLint drawbuffer,
71                                       const GLuint *value);
72 bool ValidateClipControl(const Context *context, GLenum origin, GLenum depth);
73 bool ValidateCompressedTextureSubImage1D(const Context *context,
74                                          TextureID texturePacked,
75                                          GLint level,
76                                          GLint xoffset,
77                                          GLsizei width,
78                                          GLenum format,
79                                          GLsizei imageSize,
80                                          const void *data);
81 bool ValidateCompressedTextureSubImage2D(const Context *context,
82                                          TextureID texturePacked,
83                                          GLint level,
84                                          GLint xoffset,
85                                          GLint yoffset,
86                                          GLsizei width,
87                                          GLsizei height,
88                                          GLenum format,
89                                          GLsizei imageSize,
90                                          const void *data);
91 bool ValidateCompressedTextureSubImage3D(const Context *context,
92                                          TextureID texturePacked,
93                                          GLint level,
94                                          GLint xoffset,
95                                          GLint yoffset,
96                                          GLint zoffset,
97                                          GLsizei width,
98                                          GLsizei height,
99                                          GLsizei depth,
100                                          GLenum format,
101                                          GLsizei imageSize,
102                                          const void *data);
103 bool ValidateCopyNamedBufferSubData(const Context *context,
104                                     GLuint readBuffer,
105                                     GLuint writeBuffer,
106                                     GLintptr readOffset,
107                                     GLintptr writeOffset,
108                                     GLsizeiptr size);
109 bool ValidateCopyTextureSubImage1D(const Context *context,
110                                    TextureID texturePacked,
111                                    GLint level,
112                                    GLint xoffset,
113                                    GLint x,
114                                    GLint y,
115                                    GLsizei width);
116 bool ValidateCopyTextureSubImage2D(const Context *context,
117                                    TextureID texturePacked,
118                                    GLint level,
119                                    GLint xoffset,
120                                    GLint yoffset,
121                                    GLint x,
122                                    GLint y,
123                                    GLsizei width,
124                                    GLsizei height);
125 bool ValidateCopyTextureSubImage3D(const Context *context,
126                                    TextureID texturePacked,
127                                    GLint level,
128                                    GLint xoffset,
129                                    GLint yoffset,
130                                    GLint zoffset,
131                                    GLint x,
132                                    GLint y,
133                                    GLsizei width,
134                                    GLsizei height);
135 bool ValidateCreateBuffers(const Context *context, GLsizei n, const BufferID *buffersPacked);
136 bool ValidateCreateFramebuffers(const Context *context, GLsizei n, const GLuint *framebuffers);
137 bool ValidateCreateProgramPipelines(const Context *context, GLsizei n, const GLuint *pipelines);
138 bool ValidateCreateQueries(const Context *context, GLenum target, GLsizei n, const GLuint *ids);
139 bool ValidateCreateRenderbuffers(const Context *context,
140                                  GLsizei n,
141                                  const RenderbufferID *renderbuffersPacked);
142 bool ValidateCreateSamplers(const Context *context, GLsizei n, const GLuint *samplers);
143 bool ValidateCreateTextures(const Context *context,
144                             GLenum target,
145                             GLsizei n,
146                             const GLuint *textures);
147 bool ValidateCreateTransformFeedbacks(const Context *context, GLsizei n, const GLuint *ids);
148 bool ValidateCreateVertexArrays(const Context *context,
149                                 GLsizei n,
150                                 const VertexArrayID *arraysPacked);
151 bool ValidateDisableVertexArrayAttrib(const Context *context,
152                                       VertexArrayID vaobjPacked,
153                                       GLuint index);
154 bool ValidateEnableVertexArrayAttrib(const Context *context,
155                                      VertexArrayID vaobjPacked,
156                                      GLuint index);
157 bool ValidateFlushMappedNamedBufferRange(const Context *context,
158                                          BufferID bufferPacked,
159                                          GLintptr offset,
160                                          GLsizeiptr length);
161 bool ValidateGenerateTextureMipmap(const Context *context, TextureID texturePacked);
162 bool ValidateGetCompressedTextureImage(const Context *context,
163                                        TextureID texturePacked,
164                                        GLint level,
165                                        GLsizei bufSize,
166                                        const void *pixels);
167 bool ValidateGetCompressedTextureSubImage(const Context *context,
168                                           TextureID texturePacked,
169                                           GLint level,
170                                           GLint xoffset,
171                                           GLint yoffset,
172                                           GLint zoffset,
173                                           GLsizei width,
174                                           GLsizei height,
175                                           GLsizei depth,
176                                           GLsizei bufSize,
177                                           const void *pixels);
178 bool ValidateGetNamedBufferParameteri64v(const Context *context,
179                                          BufferID bufferPacked,
180                                          GLenum pname,
181                                          const GLint64 *params);
182 bool ValidateGetNamedBufferParameteriv(const Context *context,
183                                        BufferID bufferPacked,
184                                        GLenum pname,
185                                        const GLint *params);
186 bool ValidateGetNamedBufferPointerv(const Context *context,
187                                     BufferID bufferPacked,
188                                     GLenum pname,
189                                     void *const *params);
190 bool ValidateGetNamedBufferSubData(const Context *context,
191                                    BufferID bufferPacked,
192                                    GLintptr offset,
193                                    GLsizeiptr size,
194                                    const void *data);
195 bool ValidateGetNamedFramebufferAttachmentParameteriv(const Context *context,
196                                                       FramebufferID framebufferPacked,
197                                                       GLenum attachment,
198                                                       GLenum pname,
199                                                       const GLint *params);
200 bool ValidateGetNamedFramebufferParameteriv(const Context *context,
201                                             FramebufferID framebufferPacked,
202                                             GLenum pname,
203                                             const GLint *param);
204 bool ValidateGetNamedRenderbufferParameteriv(const Context *context,
205                                              RenderbufferID renderbufferPacked,
206                                              GLenum pname,
207                                              const GLint *params);
208 bool ValidateGetQueryBufferObjecti64v(const Context *context,
209                                       GLuint id,
210                                       BufferID bufferPacked,
211                                       GLenum pname,
212                                       GLintptr offset);
213 bool ValidateGetQueryBufferObjectiv(const Context *context,
214                                     GLuint id,
215                                     BufferID bufferPacked,
216                                     GLenum pname,
217                                     GLintptr offset);
218 bool ValidateGetQueryBufferObjectui64v(const Context *context,
219                                        GLuint id,
220                                        BufferID bufferPacked,
221                                        GLenum pname,
222                                        GLintptr offset);
223 bool ValidateGetQueryBufferObjectuiv(const Context *context,
224                                      GLuint id,
225                                      BufferID bufferPacked,
226                                      GLenum pname,
227                                      GLintptr offset);
228 bool ValidateGetTextureImage(const Context *context,
229                              TextureID texturePacked,
230                              GLint level,
231                              GLenum format,
232                              GLenum type,
233                              GLsizei bufSize,
234                              const void *pixels);
235 bool ValidateGetTextureLevelParameterfv(const Context *context,
236                                         TextureID texturePacked,
237                                         GLint level,
238                                         GLenum pname,
239                                         const GLfloat *params);
240 bool ValidateGetTextureLevelParameteriv(const Context *context,
241                                         TextureID texturePacked,
242                                         GLint level,
243                                         GLenum pname,
244                                         const GLint *params);
245 bool ValidateGetTextureParameterIiv(const Context *context,
246                                     TextureID texturePacked,
247                                     GLenum pname,
248                                     const GLint *params);
249 bool ValidateGetTextureParameterIuiv(const Context *context,
250                                      TextureID texturePacked,
251                                      GLenum pname,
252                                      const GLuint *params);
253 bool ValidateGetTextureParameterfv(const Context *context,
254                                    TextureID texturePacked,
255                                    GLenum pname,
256                                    const GLfloat *params);
257 bool ValidateGetTextureParameteriv(const Context *context,
258                                    TextureID texturePacked,
259                                    GLenum pname,
260                                    const GLint *params);
261 bool ValidateGetTextureSubImage(const Context *context,
262                                 TextureID texturePacked,
263                                 GLint level,
264                                 GLint xoffset,
265                                 GLint yoffset,
266                                 GLint zoffset,
267                                 GLsizei width,
268                                 GLsizei height,
269                                 GLsizei depth,
270                                 GLenum format,
271                                 GLenum type,
272                                 GLsizei bufSize,
273                                 const void *pixels);
274 bool ValidateGetTransformFeedbacki64_v(const Context *context,
275                                        GLuint xfb,
276                                        GLenum pname,
277                                        GLuint index,
278                                        const GLint64 *param);
279 bool ValidateGetTransformFeedbacki_v(const Context *context,
280                                      GLuint xfb,
281                                      GLenum pname,
282                                      GLuint index,
283                                      const GLint *param);
284 bool ValidateGetTransformFeedbackiv(const Context *context,
285                                     GLuint xfb,
286                                     GLenum pname,
287                                     const GLint *param);
288 bool ValidateGetVertexArrayIndexed64iv(const Context *context,
289                                        VertexArrayID vaobjPacked,
290                                        GLuint index,
291                                        GLenum pname,
292                                        const GLint64 *param);
293 bool ValidateGetVertexArrayIndexediv(const Context *context,
294                                      VertexArrayID vaobjPacked,
295                                      GLuint index,
296                                      GLenum pname,
297                                      const GLint *param);
298 bool ValidateGetVertexArrayiv(const Context *context,
299                               VertexArrayID vaobjPacked,
300                               GLenum pname,
301                               const GLint *param);
302 bool ValidateGetnColorTable(const Context *context,
303                             GLenum target,
304                             GLenum format,
305                             GLenum type,
306                             GLsizei bufSize,
307                             const void *table);
308 bool ValidateGetnCompressedTexImage(const Context *context,
309                                     GLenum target,
310                                     GLint lod,
311                                     GLsizei bufSize,
312                                     const void *pixels);
313 bool ValidateGetnConvolutionFilter(const Context *context,
314                                    GLenum target,
315                                    GLenum format,
316                                    GLenum type,
317                                    GLsizei bufSize,
318                                    const void *image);
319 bool ValidateGetnHistogram(const Context *context,
320                            GLenum target,
321                            GLboolean reset,
322                            GLenum format,
323                            GLenum type,
324                            GLsizei bufSize,
325                            const void *values);
326 bool ValidateGetnMapdv(const Context *context,
327                        GLenum target,
328                        GLenum query,
329                        GLsizei bufSize,
330                        const GLdouble *v);
331 bool ValidateGetnMapfv(const Context *context,
332                        GLenum target,
333                        GLenum query,
334                        GLsizei bufSize,
335                        const GLfloat *v);
336 bool ValidateGetnMapiv(const Context *context,
337                        GLenum target,
338                        GLenum query,
339                        GLsizei bufSize,
340                        const GLint *v);
341 bool ValidateGetnMinmax(const Context *context,
342                         GLenum target,
343                         GLboolean reset,
344                         GLenum format,
345                         GLenum type,
346                         GLsizei bufSize,
347                         const void *values);
348 bool ValidateGetnPixelMapfv(const Context *context,
349                             GLenum map,
350                             GLsizei bufSize,
351                             const GLfloat *values);
352 bool ValidateGetnPixelMapuiv(const Context *context,
353                              GLenum map,
354                              GLsizei bufSize,
355                              const GLuint *values);
356 bool ValidateGetnPixelMapusv(const Context *context,
357                              GLenum map,
358                              GLsizei bufSize,
359                              const GLushort *values);
360 bool ValidateGetnPolygonStipple(const Context *context, GLsizei bufSize, const GLubyte *pattern);
361 bool ValidateGetnSeparableFilter(const Context *context,
362                                  GLenum target,
363                                  GLenum format,
364                                  GLenum type,
365                                  GLsizei rowBufSize,
366                                  const void *row,
367                                  GLsizei columnBufSize,
368                                  const void *column,
369                                  const void *span);
370 bool ValidateGetnTexImage(const Context *context,
371                           GLenum target,
372                           GLint level,
373                           GLenum format,
374                           GLenum type,
375                           GLsizei bufSize,
376                           const void *pixels);
377 bool ValidateGetnUniformdv(const Context *context,
378                            ShaderProgramID programPacked,
379                            UniformLocation locationPacked,
380                            GLsizei bufSize,
381                            const GLdouble *params);
382 bool ValidateInvalidateNamedFramebufferData(const Context *context,
383                                             FramebufferID framebufferPacked,
384                                             GLsizei numAttachments,
385                                             const GLenum *attachments);
386 bool ValidateInvalidateNamedFramebufferSubData(const Context *context,
387                                                FramebufferID framebufferPacked,
388                                                GLsizei numAttachments,
389                                                const GLenum *attachments,
390                                                GLint x,
391                                                GLint y,
392                                                GLsizei width,
393                                                GLsizei height);
394 bool ValidateMapNamedBuffer(const Context *context, BufferID bufferPacked, GLenum access);
395 bool ValidateMapNamedBufferRange(const Context *context,
396                                  BufferID bufferPacked,
397                                  GLintptr offset,
398                                  GLsizeiptr length,
399                                  GLbitfield access);
400 bool ValidateNamedBufferData(const Context *context,
401                              BufferID bufferPacked,
402                              GLsizeiptr size,
403                              const void *data,
404                              GLenum usage);
405 bool ValidateNamedBufferStorage(const Context *context,
406                                 BufferID bufferPacked,
407                                 GLsizeiptr size,
408                                 const void *data,
409                                 GLbitfield flags);
410 bool ValidateNamedBufferSubData(const Context *context,
411                                 BufferID bufferPacked,
412                                 GLintptr offset,
413                                 GLsizeiptr size,
414                                 const void *data);
415 bool ValidateNamedFramebufferDrawBuffer(const Context *context,
416                                         FramebufferID framebufferPacked,
417                                         GLenum buf);
418 bool ValidateNamedFramebufferDrawBuffers(const Context *context,
419                                          FramebufferID framebufferPacked,
420                                          GLsizei n,
421                                          const GLenum *bufs);
422 bool ValidateNamedFramebufferParameteri(const Context *context,
423                                         FramebufferID framebufferPacked,
424                                         GLenum pname,
425                                         GLint param);
426 bool ValidateNamedFramebufferReadBuffer(const Context *context,
427                                         FramebufferID framebufferPacked,
428                                         GLenum src);
429 bool ValidateNamedFramebufferRenderbuffer(const Context *context,
430                                           FramebufferID framebufferPacked,
431                                           GLenum attachment,
432                                           GLenum renderbuffertarget,
433                                           RenderbufferID renderbufferPacked);
434 bool ValidateNamedFramebufferTexture(const Context *context,
435                                      FramebufferID framebufferPacked,
436                                      GLenum attachment,
437                                      TextureID texturePacked,
438                                      GLint level);
439 bool ValidateNamedFramebufferTextureLayer(const Context *context,
440                                           FramebufferID framebufferPacked,
441                                           GLenum attachment,
442                                           TextureID texturePacked,
443                                           GLint level,
444                                           GLint layer);
445 bool ValidateNamedRenderbufferStorage(const Context *context,
446                                       RenderbufferID renderbufferPacked,
447                                       GLenum internalformat,
448                                       GLsizei width,
449                                       GLsizei height);
450 bool ValidateNamedRenderbufferStorageMultisample(const Context *context,
451                                                  RenderbufferID renderbufferPacked,
452                                                  GLsizei samples,
453                                                  GLenum internalformat,
454                                                  GLsizei width,
455                                                  GLsizei height);
456 bool ValidateTextureBarrier(const Context *context);
457 bool ValidateTextureBuffer(const Context *context,
458                            TextureID texturePacked,
459                            GLenum internalformat,
460                            BufferID bufferPacked);
461 bool ValidateTextureBufferRange(const Context *context,
462                                 TextureID texturePacked,
463                                 GLenum internalformat,
464                                 BufferID bufferPacked,
465                                 GLintptr offset,
466                                 GLsizeiptr size);
467 bool ValidateTextureParameterIiv(const Context *context,
468                                  TextureID texturePacked,
469                                  GLenum pname,
470                                  const GLint *params);
471 bool ValidateTextureParameterIuiv(const Context *context,
472                                   TextureID texturePacked,
473                                   GLenum pname,
474                                   const GLuint *params);
475 bool ValidateTextureParameterf(const Context *context,
476                                TextureID texturePacked,
477                                GLenum pname,
478                                GLfloat param);
479 bool ValidateTextureParameterfv(const Context *context,
480                                 TextureID texturePacked,
481                                 GLenum pname,
482                                 const GLfloat *param);
483 bool ValidateTextureParameteri(const Context *context,
484                                TextureID texturePacked,
485                                GLenum pname,
486                                GLint param);
487 bool ValidateTextureParameteriv(const Context *context,
488                                 TextureID texturePacked,
489                                 GLenum pname,
490                                 const GLint *param);
491 bool ValidateTextureStorage1D(const Context *context,
492                               TextureID texturePacked,
493                               GLsizei levels,
494                               GLenum internalformat,
495                               GLsizei width);
496 bool ValidateTextureStorage2D(const Context *context,
497                               TextureID texturePacked,
498                               GLsizei levels,
499                               GLenum internalformat,
500                               GLsizei width,
501                               GLsizei height);
502 bool ValidateTextureStorage2DMultisample(const Context *context,
503                                          TextureID texturePacked,
504                                          GLsizei samples,
505                                          GLenum internalformat,
506                                          GLsizei width,
507                                          GLsizei height,
508                                          GLboolean fixedsamplelocations);
509 bool ValidateTextureStorage3D(const Context *context,
510                               TextureID texturePacked,
511                               GLsizei levels,
512                               GLenum internalformat,
513                               GLsizei width,
514                               GLsizei height,
515                               GLsizei depth);
516 bool ValidateTextureStorage3DMultisample(const Context *context,
517                                          TextureID texturePacked,
518                                          GLsizei samples,
519                                          GLenum internalformat,
520                                          GLsizei width,
521                                          GLsizei height,
522                                          GLsizei depth,
523                                          GLboolean fixedsamplelocations);
524 bool ValidateTextureSubImage1D(const Context *context,
525                                TextureID texturePacked,
526                                GLint level,
527                                GLint xoffset,
528                                GLsizei width,
529                                GLenum format,
530                                GLenum type,
531                                const void *pixels);
532 bool ValidateTextureSubImage2D(const Context *context,
533                                TextureID texturePacked,
534                                GLint level,
535                                GLint xoffset,
536                                GLint yoffset,
537                                GLsizei width,
538                                GLsizei height,
539                                GLenum format,
540                                GLenum type,
541                                const void *pixels);
542 bool ValidateTextureSubImage3D(const Context *context,
543                                TextureID texturePacked,
544                                GLint level,
545                                GLint xoffset,
546                                GLint yoffset,
547                                GLint zoffset,
548                                GLsizei width,
549                                GLsizei height,
550                                GLsizei depth,
551                                GLenum format,
552                                GLenum type,
553                                const void *pixels);
554 bool ValidateTransformFeedbackBufferBase(const Context *context,
555                                          GLuint xfb,
556                                          GLuint index,
557                                          BufferID bufferPacked);
558 bool ValidateTransformFeedbackBufferRange(const Context *context,
559                                           GLuint xfb,
560                                           GLuint index,
561                                           BufferID bufferPacked,
562                                           GLintptr offset,
563                                           GLsizeiptr size);
564 bool ValidateUnmapNamedBuffer(const Context *context, BufferID bufferPacked);
565 bool ValidateVertexArrayAttribBinding(const Context *context,
566                                       VertexArrayID vaobjPacked,
567                                       GLuint attribindex,
568                                       GLuint bindingindex);
569 bool ValidateVertexArrayAttribFormat(const Context *context,
570                                      VertexArrayID vaobjPacked,
571                                      GLuint attribindex,
572                                      GLint size,
573                                      GLenum type,
574                                      GLboolean normalized,
575                                      GLuint relativeoffset);
576 bool ValidateVertexArrayAttribIFormat(const Context *context,
577                                       VertexArrayID vaobjPacked,
578                                       GLuint attribindex,
579                                       GLint size,
580                                       GLenum type,
581                                       GLuint relativeoffset);
582 bool ValidateVertexArrayAttribLFormat(const Context *context,
583                                       VertexArrayID vaobjPacked,
584                                       GLuint attribindex,
585                                       GLint size,
586                                       GLenum type,
587                                       GLuint relativeoffset);
588 bool ValidateVertexArrayBindingDivisor(const Context *context,
589                                        VertexArrayID vaobjPacked,
590                                        GLuint bindingindex,
591                                        GLuint divisor);
592 bool ValidateVertexArrayElementBuffer(const Context *context,
593                                       VertexArrayID vaobjPacked,
594                                       BufferID bufferPacked);
595 bool ValidateVertexArrayVertexBuffer(const Context *context,
596                                      VertexArrayID vaobjPacked,
597                                      GLuint bindingindex,
598                                      BufferID bufferPacked,
599                                      GLintptr offset,
600                                      GLsizei stride);
601 bool ValidateVertexArrayVertexBuffers(const Context *context,
602                                       VertexArrayID vaobjPacked,
603                                       GLuint first,
604                                       GLsizei count,
605                                       const BufferID *buffersPacked,
606                                       const GLintptr *offsets,
607                                       const GLsizei *strides);
608 }  // namespace gl
609 
610 #endif  // LIBANGLE_VALIDATION_GL45_AUTOGEN_H_
611