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 // validationES3_autogen.h:
9 //   Validation functions for the OpenGL ES 3.0 entry points.
10 
11 #ifndef LIBANGLE_VALIDATION_ES3_AUTOGEN_H_
12 #define LIBANGLE_VALIDATION_ES3_AUTOGEN_H_
13 
14 #include "common/PackedEnums.h"
15 
16 namespace gl
17 {
18 class Context;
19 
20 bool ValidateBeginQuery(const Context *context, QueryType targetPacked, QueryID idPacked);
21 bool ValidateBeginTransformFeedback(const Context *context, PrimitiveMode primitiveModePacked);
22 bool ValidateBindBufferBase(const Context *context,
23                             BufferBinding targetPacked,
24                             GLuint index,
25                             BufferID bufferPacked);
26 bool ValidateBindBufferRange(const Context *context,
27                              BufferBinding targetPacked,
28                              GLuint index,
29                              BufferID bufferPacked,
30                              GLintptr offset,
31                              GLsizeiptr size);
32 bool ValidateBindSampler(const Context *context, GLuint unit, SamplerID samplerPacked);
33 bool ValidateBindTransformFeedback(const Context *context,
34                                    GLenum target,
35                                    TransformFeedbackID idPacked);
36 bool ValidateBindVertexArray(const Context *context, VertexArrayID arrayPacked);
37 bool ValidateBlitFramebuffer(const Context *context,
38                              GLint srcX0,
39                              GLint srcY0,
40                              GLint srcX1,
41                              GLint srcY1,
42                              GLint dstX0,
43                              GLint dstY0,
44                              GLint dstX1,
45                              GLint dstY1,
46                              GLbitfield mask,
47                              GLenum filter);
48 bool ValidateClearBufferfi(const Context *context,
49                            GLenum buffer,
50                            GLint drawbuffer,
51                            GLfloat depth,
52                            GLint stencil);
53 bool ValidateClearBufferfv(const Context *context,
54                            GLenum buffer,
55                            GLint drawbuffer,
56                            const GLfloat *value);
57 bool ValidateClearBufferiv(const Context *context,
58                            GLenum buffer,
59                            GLint drawbuffer,
60                            const GLint *value);
61 bool ValidateClearBufferuiv(const Context *context,
62                             GLenum buffer,
63                             GLint drawbuffer,
64                             const GLuint *value);
65 bool ValidateClientWaitSync(const Context *context,
66                             GLsync sync,
67                             GLbitfield flags,
68                             GLuint64 timeout);
69 bool ValidateCompressedTexImage3D(const Context *context,
70                                   TextureTarget targetPacked,
71                                   GLint level,
72                                   GLenum internalformat,
73                                   GLsizei width,
74                                   GLsizei height,
75                                   GLsizei depth,
76                                   GLint border,
77                                   GLsizei imageSize,
78                                   const void *data);
79 bool ValidateCompressedTexSubImage3D(const Context *context,
80                                      TextureTarget targetPacked,
81                                      GLint level,
82                                      GLint xoffset,
83                                      GLint yoffset,
84                                      GLint zoffset,
85                                      GLsizei width,
86                                      GLsizei height,
87                                      GLsizei depth,
88                                      GLenum format,
89                                      GLsizei imageSize,
90                                      const void *data);
91 bool ValidateCopyBufferSubData(const Context *context,
92                                BufferBinding readTargetPacked,
93                                BufferBinding writeTargetPacked,
94                                GLintptr readOffset,
95                                GLintptr writeOffset,
96                                GLsizeiptr size);
97 bool ValidateCopyTexSubImage3D(const Context *context,
98                                TextureTarget targetPacked,
99                                GLint level,
100                                GLint xoffset,
101                                GLint yoffset,
102                                GLint zoffset,
103                                GLint x,
104                                GLint y,
105                                GLsizei width,
106                                GLsizei height);
107 bool ValidateDeleteQueries(const Context *context, GLsizei n, const QueryID *idsPacked);
108 bool ValidateDeleteSamplers(const Context *context, GLsizei count, const SamplerID *samplersPacked);
109 bool ValidateDeleteSync(const Context *context, GLsync sync);
110 bool ValidateDeleteTransformFeedbacks(const Context *context,
111                                       GLsizei n,
112                                       const TransformFeedbackID *idsPacked);
113 bool ValidateDeleteVertexArrays(const Context *context,
114                                 GLsizei n,
115                                 const VertexArrayID *arraysPacked);
116 bool ValidateDrawArraysInstanced(const Context *context,
117                                  PrimitiveMode modePacked,
118                                  GLint first,
119                                  GLsizei count,
120                                  GLsizei instancecount);
121 bool ValidateDrawBuffers(const Context *context, GLsizei n, const GLenum *bufs);
122 bool ValidateDrawElementsInstanced(const Context *context,
123                                    PrimitiveMode modePacked,
124                                    GLsizei count,
125                                    DrawElementsType typePacked,
126                                    const void *indices,
127                                    GLsizei instancecount);
128 bool ValidateDrawRangeElements(const Context *context,
129                                PrimitiveMode modePacked,
130                                GLuint start,
131                                GLuint end,
132                                GLsizei count,
133                                DrawElementsType typePacked,
134                                const void *indices);
135 bool ValidateEndQuery(const Context *context, QueryType targetPacked);
136 bool ValidateEndTransformFeedback(const Context *context);
137 bool ValidateFenceSync(const Context *context, GLenum condition, GLbitfield flags);
138 bool ValidateFlushMappedBufferRange(const Context *context,
139                                     BufferBinding targetPacked,
140                                     GLintptr offset,
141                                     GLsizeiptr length);
142 bool ValidateFramebufferTextureLayer(const Context *context,
143                                      GLenum target,
144                                      GLenum attachment,
145                                      TextureID texturePacked,
146                                      GLint level,
147                                      GLint layer);
148 bool ValidateGenQueries(const Context *context, GLsizei n, const QueryID *idsPacked);
149 bool ValidateGenSamplers(const Context *context, GLsizei count, const SamplerID *samplersPacked);
150 bool ValidateGenTransformFeedbacks(const Context *context,
151                                    GLsizei n,
152                                    const TransformFeedbackID *idsPacked);
153 bool ValidateGenVertexArrays(const Context *context, GLsizei n, const VertexArrayID *arraysPacked);
154 bool ValidateGetActiveUniformBlockName(const Context *context,
155                                        ShaderProgramID programPacked,
156                                        UniformBlockIndex uniformBlockIndexPacked,
157                                        GLsizei bufSize,
158                                        const GLsizei *length,
159                                        const GLchar *uniformBlockName);
160 bool ValidateGetActiveUniformBlockiv(const Context *context,
161                                      ShaderProgramID programPacked,
162                                      UniformBlockIndex uniformBlockIndexPacked,
163                                      GLenum pname,
164                                      const GLint *params);
165 bool ValidateGetActiveUniformsiv(const Context *context,
166                                  ShaderProgramID programPacked,
167                                  GLsizei uniformCount,
168                                  const GLuint *uniformIndices,
169                                  GLenum pname,
170                                  const GLint *params);
171 bool ValidateGetBufferParameteri64v(const Context *context,
172                                     BufferBinding targetPacked,
173                                     GLenum pname,
174                                     const GLint64 *params);
175 bool ValidateGetBufferPointerv(const Context *context,
176                                BufferBinding targetPacked,
177                                GLenum pname,
178                                void *const *params);
179 bool ValidateGetFragDataLocation(const Context *context,
180                                  ShaderProgramID programPacked,
181                                  const GLchar *name);
182 bool ValidateGetInteger64i_v(const Context *context,
183                              GLenum target,
184                              GLuint index,
185                              const GLint64 *data);
186 bool ValidateGetInteger64v(const Context *context, GLenum pname, const GLint64 *data);
187 bool ValidateGetIntegeri_v(const Context *context, GLenum target, GLuint index, const GLint *data);
188 bool ValidateGetInternalformativ(const Context *context,
189                                  GLenum target,
190                                  GLenum internalformat,
191                                  GLenum pname,
192                                  GLsizei bufSize,
193                                  const GLint *params);
194 bool ValidateGetProgramBinary(const Context *context,
195                               ShaderProgramID programPacked,
196                               GLsizei bufSize,
197                               const GLsizei *length,
198                               const GLenum *binaryFormat,
199                               const void *binary);
200 bool ValidateGetQueryObjectuiv(const Context *context,
201                                QueryID idPacked,
202                                GLenum pname,
203                                const GLuint *params);
204 bool ValidateGetQueryiv(const Context *context,
205                         QueryType targetPacked,
206                         GLenum pname,
207                         const GLint *params);
208 bool ValidateGetSamplerParameterfv(const Context *context,
209                                    SamplerID samplerPacked,
210                                    GLenum pname,
211                                    const GLfloat *params);
212 bool ValidateGetSamplerParameteriv(const Context *context,
213                                    SamplerID samplerPacked,
214                                    GLenum pname,
215                                    const GLint *params);
216 bool ValidateGetStringi(const Context *context, GLenum name, GLuint index);
217 bool ValidateGetSynciv(const Context *context,
218                        GLsync sync,
219                        GLenum pname,
220                        GLsizei bufSize,
221                        const GLsizei *length,
222                        const GLint *values);
223 bool ValidateGetTransformFeedbackVarying(const Context *context,
224                                          ShaderProgramID programPacked,
225                                          GLuint index,
226                                          GLsizei bufSize,
227                                          const GLsizei *length,
228                                          const GLsizei *size,
229                                          const GLenum *type,
230                                          const GLchar *name);
231 bool ValidateGetUniformBlockIndex(const Context *context,
232                                   ShaderProgramID programPacked,
233                                   const GLchar *uniformBlockName);
234 bool ValidateGetUniformIndices(const Context *context,
235                                ShaderProgramID programPacked,
236                                GLsizei uniformCount,
237                                const GLchar *const *uniformNames,
238                                const GLuint *uniformIndices);
239 bool ValidateGetUniformuiv(const Context *context,
240                            ShaderProgramID programPacked,
241                            UniformLocation locationPacked,
242                            const GLuint *params);
243 bool ValidateGetVertexAttribIiv(const Context *context,
244                                 GLuint index,
245                                 GLenum pname,
246                                 const GLint *params);
247 bool ValidateGetVertexAttribIuiv(const Context *context,
248                                  GLuint index,
249                                  GLenum pname,
250                                  const GLuint *params);
251 bool ValidateInvalidateFramebuffer(const Context *context,
252                                    GLenum target,
253                                    GLsizei numAttachments,
254                                    const GLenum *attachments);
255 bool ValidateInvalidateSubFramebuffer(const Context *context,
256                                       GLenum target,
257                                       GLsizei numAttachments,
258                                       const GLenum *attachments,
259                                       GLint x,
260                                       GLint y,
261                                       GLsizei width,
262                                       GLsizei height);
263 bool ValidateIsQuery(const Context *context, QueryID idPacked);
264 bool ValidateIsSampler(const Context *context, SamplerID samplerPacked);
265 bool ValidateIsSync(const Context *context, GLsync sync);
266 bool ValidateIsTransformFeedback(const Context *context, TransformFeedbackID idPacked);
267 bool ValidateIsVertexArray(const Context *context, VertexArrayID arrayPacked);
268 bool ValidateMapBufferRange(const Context *context,
269                             BufferBinding targetPacked,
270                             GLintptr offset,
271                             GLsizeiptr length,
272                             GLbitfield access);
273 bool ValidatePauseTransformFeedback(const Context *context);
274 bool ValidateProgramBinary(const Context *context,
275                            ShaderProgramID programPacked,
276                            GLenum binaryFormat,
277                            const void *binary,
278                            GLsizei length);
279 bool ValidateProgramParameteri(const Context *context,
280                                ShaderProgramID programPacked,
281                                GLenum pname,
282                                GLint value);
283 bool ValidateReadBuffer(const Context *context, GLenum src);
284 bool ValidateRenderbufferStorageMultisample(const Context *context,
285                                             GLenum target,
286                                             GLsizei samples,
287                                             GLenum internalformat,
288                                             GLsizei width,
289                                             GLsizei height);
290 bool ValidateResumeTransformFeedback(const Context *context);
291 bool ValidateSamplerParameterf(const Context *context,
292                                SamplerID samplerPacked,
293                                GLenum pname,
294                                GLfloat param);
295 bool ValidateSamplerParameterfv(const Context *context,
296                                 SamplerID samplerPacked,
297                                 GLenum pname,
298                                 const GLfloat *param);
299 bool ValidateSamplerParameteri(const Context *context,
300                                SamplerID samplerPacked,
301                                GLenum pname,
302                                GLint param);
303 bool ValidateSamplerParameteriv(const Context *context,
304                                 SamplerID samplerPacked,
305                                 GLenum pname,
306                                 const GLint *param);
307 bool ValidateTexImage3D(const Context *context,
308                         TextureTarget targetPacked,
309                         GLint level,
310                         GLint internalformat,
311                         GLsizei width,
312                         GLsizei height,
313                         GLsizei depth,
314                         GLint border,
315                         GLenum format,
316                         GLenum type,
317                         const void *pixels);
318 bool ValidateTexStorage2D(const Context *context,
319                           TextureType targetPacked,
320                           GLsizei levels,
321                           GLenum internalformat,
322                           GLsizei width,
323                           GLsizei height);
324 bool ValidateTexStorage3D(const Context *context,
325                           TextureType targetPacked,
326                           GLsizei levels,
327                           GLenum internalformat,
328                           GLsizei width,
329                           GLsizei height,
330                           GLsizei depth);
331 bool ValidateTexSubImage3D(const Context *context,
332                            TextureTarget targetPacked,
333                            GLint level,
334                            GLint xoffset,
335                            GLint yoffset,
336                            GLint zoffset,
337                            GLsizei width,
338                            GLsizei height,
339                            GLsizei depth,
340                            GLenum format,
341                            GLenum type,
342                            const void *pixels);
343 bool ValidateTransformFeedbackVaryings(const Context *context,
344                                        ShaderProgramID programPacked,
345                                        GLsizei count,
346                                        const GLchar *const *varyings,
347                                        GLenum bufferMode);
348 bool ValidateUniform1ui(const Context *context, UniformLocation locationPacked, GLuint v0);
349 bool ValidateUniform1uiv(const Context *context,
350                          UniformLocation locationPacked,
351                          GLsizei count,
352                          const GLuint *value);
353 bool ValidateUniform2ui(const Context *context,
354                         UniformLocation locationPacked,
355                         GLuint v0,
356                         GLuint v1);
357 bool ValidateUniform2uiv(const Context *context,
358                          UniformLocation locationPacked,
359                          GLsizei count,
360                          const GLuint *value);
361 bool ValidateUniform3ui(const Context *context,
362                         UniformLocation locationPacked,
363                         GLuint v0,
364                         GLuint v1,
365                         GLuint v2);
366 bool ValidateUniform3uiv(const Context *context,
367                          UniformLocation locationPacked,
368                          GLsizei count,
369                          const GLuint *value);
370 bool ValidateUniform4ui(const Context *context,
371                         UniformLocation locationPacked,
372                         GLuint v0,
373                         GLuint v1,
374                         GLuint v2,
375                         GLuint v3);
376 bool ValidateUniform4uiv(const Context *context,
377                          UniformLocation locationPacked,
378                          GLsizei count,
379                          const GLuint *value);
380 bool ValidateUniformBlockBinding(const Context *context,
381                                  ShaderProgramID programPacked,
382                                  UniformBlockIndex uniformBlockIndexPacked,
383                                  GLuint uniformBlockBinding);
384 bool ValidateUniformMatrix2x3fv(const Context *context,
385                                 UniformLocation locationPacked,
386                                 GLsizei count,
387                                 GLboolean transpose,
388                                 const GLfloat *value);
389 bool ValidateUniformMatrix2x4fv(const Context *context,
390                                 UniformLocation locationPacked,
391                                 GLsizei count,
392                                 GLboolean transpose,
393                                 const GLfloat *value);
394 bool ValidateUniformMatrix3x2fv(const Context *context,
395                                 UniformLocation locationPacked,
396                                 GLsizei count,
397                                 GLboolean transpose,
398                                 const GLfloat *value);
399 bool ValidateUniformMatrix3x4fv(const Context *context,
400                                 UniformLocation locationPacked,
401                                 GLsizei count,
402                                 GLboolean transpose,
403                                 const GLfloat *value);
404 bool ValidateUniformMatrix4x2fv(const Context *context,
405                                 UniformLocation locationPacked,
406                                 GLsizei count,
407                                 GLboolean transpose,
408                                 const GLfloat *value);
409 bool ValidateUniformMatrix4x3fv(const Context *context,
410                                 UniformLocation locationPacked,
411                                 GLsizei count,
412                                 GLboolean transpose,
413                                 const GLfloat *value);
414 bool ValidateUnmapBuffer(const Context *context, BufferBinding targetPacked);
415 bool ValidateVertexAttribDivisor(const Context *context, GLuint index, GLuint divisor);
416 bool ValidateVertexAttribI4i(const Context *context,
417                              GLuint index,
418                              GLint x,
419                              GLint y,
420                              GLint z,
421                              GLint w);
422 bool ValidateVertexAttribI4iv(const Context *context, GLuint index, const GLint *v);
423 bool ValidateVertexAttribI4ui(const Context *context,
424                               GLuint index,
425                               GLuint x,
426                               GLuint y,
427                               GLuint z,
428                               GLuint w);
429 bool ValidateVertexAttribI4uiv(const Context *context, GLuint index, const GLuint *v);
430 bool ValidateVertexAttribIPointer(const Context *context,
431                                   GLuint index,
432                                   GLint size,
433                                   VertexAttribType typePacked,
434                                   GLsizei stride,
435                                   const void *pointer);
436 bool ValidateWaitSync(const Context *context, GLsync sync, GLbitfield flags, GLuint64 timeout);
437 }  // namespace gl
438 
439 #endif  // LIBANGLE_VALIDATION_ES3_AUTOGEN_H_
440