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 // validationES2_autogen.h:
9 //   Validation functions for the OpenGL ES 2.0 entry points.
10 
11 #ifndef LIBANGLE_VALIDATION_ES2_AUTOGEN_H_
12 #define LIBANGLE_VALIDATION_ES2_AUTOGEN_H_
13 
14 #include "common/PackedEnums.h"
15 
16 namespace gl
17 {
18 class Context;
19 
20 bool ValidateActiveTexture(const Context *context, GLenum texture);
21 bool ValidateAttachShader(const Context *context,
22                           ShaderProgramID programPacked,
23                           ShaderProgramID shaderPacked);
24 bool ValidateBindAttribLocation(const Context *context,
25                                 ShaderProgramID programPacked,
26                                 GLuint index,
27                                 const GLchar *name);
28 bool ValidateBindBuffer(const Context *context, BufferBinding targetPacked, BufferID bufferPacked);
29 bool ValidateBindFramebuffer(const Context *context,
30                              GLenum target,
31                              FramebufferID framebufferPacked);
32 bool ValidateBindRenderbuffer(const Context *context,
33                               GLenum target,
34                               RenderbufferID renderbufferPacked);
35 bool ValidateBindTexture(const Context *context, TextureType targetPacked, TextureID texturePacked);
36 bool ValidateBlendColor(const Context *context,
37                         GLfloat red,
38                         GLfloat green,
39                         GLfloat blue,
40                         GLfloat alpha);
41 bool ValidateBlendEquation(const Context *context, GLenum mode);
42 bool ValidateBlendEquationSeparate(const Context *context, GLenum modeRGB, GLenum modeAlpha);
43 bool ValidateBlendFunc(const Context *context, GLenum sfactor, GLenum dfactor);
44 bool ValidateBlendFuncSeparate(const Context *context,
45                                GLenum sfactorRGB,
46                                GLenum dfactorRGB,
47                                GLenum sfactorAlpha,
48                                GLenum dfactorAlpha);
49 bool ValidateBufferData(const Context *context,
50                         BufferBinding targetPacked,
51                         GLsizeiptr size,
52                         const void *data,
53                         BufferUsage usagePacked);
54 bool ValidateBufferSubData(const Context *context,
55                            BufferBinding targetPacked,
56                            GLintptr offset,
57                            GLsizeiptr size,
58                            const void *data);
59 bool ValidateCheckFramebufferStatus(const Context *context, GLenum target);
60 bool ValidateClear(const Context *context, GLbitfield mask);
61 bool ValidateClearColor(const Context *context,
62                         GLfloat red,
63                         GLfloat green,
64                         GLfloat blue,
65                         GLfloat alpha);
66 bool ValidateClearDepthf(const Context *context, GLfloat d);
67 bool ValidateClearStencil(const Context *context, GLint s);
68 bool ValidateColorMask(const Context *context,
69                        GLboolean red,
70                        GLboolean green,
71                        GLboolean blue,
72                        GLboolean alpha);
73 bool ValidateCompileShader(const Context *context, ShaderProgramID shaderPacked);
74 bool ValidateCompressedTexImage2D(const Context *context,
75                                   TextureTarget targetPacked,
76                                   GLint level,
77                                   GLenum internalformat,
78                                   GLsizei width,
79                                   GLsizei height,
80                                   GLint border,
81                                   GLsizei imageSize,
82                                   const void *data);
83 bool ValidateCompressedTexSubImage2D(const Context *context,
84                                      TextureTarget targetPacked,
85                                      GLint level,
86                                      GLint xoffset,
87                                      GLint yoffset,
88                                      GLsizei width,
89                                      GLsizei height,
90                                      GLenum format,
91                                      GLsizei imageSize,
92                                      const void *data);
93 bool ValidateCopyTexImage2D(const Context *context,
94                             TextureTarget targetPacked,
95                             GLint level,
96                             GLenum internalformat,
97                             GLint x,
98                             GLint y,
99                             GLsizei width,
100                             GLsizei height,
101                             GLint border);
102 bool ValidateCopyTexSubImage2D(const Context *context,
103                                TextureTarget targetPacked,
104                                GLint level,
105                                GLint xoffset,
106                                GLint yoffset,
107                                GLint x,
108                                GLint y,
109                                GLsizei width,
110                                GLsizei height);
111 bool ValidateCreateProgram(const Context *context);
112 bool ValidateCreateShader(const Context *context, ShaderType typePacked);
113 bool ValidateCullFace(const Context *context, CullFaceMode modePacked);
114 bool ValidateDeleteBuffers(const Context *context, GLsizei n, const BufferID *buffersPacked);
115 bool ValidateDeleteFramebuffers(const Context *context,
116                                 GLsizei n,
117                                 const FramebufferID *framebuffersPacked);
118 bool ValidateDeleteProgram(const Context *context, ShaderProgramID programPacked);
119 bool ValidateDeleteRenderbuffers(const Context *context,
120                                  GLsizei n,
121                                  const RenderbufferID *renderbuffersPacked);
122 bool ValidateDeleteShader(const Context *context, ShaderProgramID shaderPacked);
123 bool ValidateDeleteTextures(const Context *context, GLsizei n, const TextureID *texturesPacked);
124 bool ValidateDepthFunc(const Context *context, GLenum func);
125 bool ValidateDepthMask(const Context *context, GLboolean flag);
126 bool ValidateDepthRangef(const Context *context, GLfloat n, GLfloat f);
127 bool ValidateDetachShader(const Context *context,
128                           ShaderProgramID programPacked,
129                           ShaderProgramID shaderPacked);
130 bool ValidateDisable(const Context *context, GLenum cap);
131 bool ValidateDisableVertexAttribArray(const Context *context, GLuint index);
132 bool ValidateDrawArrays(const Context *context,
133                         PrimitiveMode modePacked,
134                         GLint first,
135                         GLsizei count);
136 bool ValidateDrawElements(const Context *context,
137                           PrimitiveMode modePacked,
138                           GLsizei count,
139                           DrawElementsType typePacked,
140                           const void *indices);
141 bool ValidateEnable(const Context *context, GLenum cap);
142 bool ValidateEnableVertexAttribArray(const Context *context, GLuint index);
143 bool ValidateFinish(const Context *context);
144 bool ValidateFlush(const Context *context);
145 bool ValidateFramebufferRenderbuffer(const Context *context,
146                                      GLenum target,
147                                      GLenum attachment,
148                                      GLenum renderbuffertarget,
149                                      RenderbufferID renderbufferPacked);
150 bool ValidateFramebufferTexture2D(const Context *context,
151                                   GLenum target,
152                                   GLenum attachment,
153                                   TextureTarget textargetPacked,
154                                   TextureID texturePacked,
155                                   GLint level);
156 bool ValidateFrontFace(const Context *context, GLenum mode);
157 bool ValidateGenBuffers(const Context *context, GLsizei n, const BufferID *buffersPacked);
158 bool ValidateGenFramebuffers(const Context *context,
159                              GLsizei n,
160                              const FramebufferID *framebuffersPacked);
161 bool ValidateGenRenderbuffers(const Context *context,
162                               GLsizei n,
163                               const RenderbufferID *renderbuffersPacked);
164 bool ValidateGenTextures(const Context *context, GLsizei n, const TextureID *texturesPacked);
165 bool ValidateGenerateMipmap(const Context *context, TextureType targetPacked);
166 bool ValidateGetActiveAttrib(const Context *context,
167                              ShaderProgramID programPacked,
168                              GLuint index,
169                              GLsizei bufSize,
170                              const GLsizei *length,
171                              const GLint *size,
172                              const GLenum *type,
173                              const GLchar *name);
174 bool ValidateGetActiveUniform(const Context *context,
175                               ShaderProgramID programPacked,
176                               GLuint index,
177                               GLsizei bufSize,
178                               const GLsizei *length,
179                               const GLint *size,
180                               const GLenum *type,
181                               const GLchar *name);
182 bool ValidateGetAttachedShaders(const Context *context,
183                                 ShaderProgramID programPacked,
184                                 GLsizei maxCount,
185                                 const GLsizei *count,
186                                 const ShaderProgramID *shadersPacked);
187 bool ValidateGetAttribLocation(const Context *context,
188                                ShaderProgramID programPacked,
189                                const GLchar *name);
190 bool ValidateGetBooleanv(const Context *context, GLenum pname, const GLboolean *data);
191 bool ValidateGetBufferParameteriv(const Context *context,
192                                   BufferBinding targetPacked,
193                                   GLenum pname,
194                                   const GLint *params);
195 bool ValidateGetError(const Context *context);
196 bool ValidateGetFloatv(const Context *context, GLenum pname, const GLfloat *data);
197 bool ValidateGetFramebufferAttachmentParameteriv(const Context *context,
198                                                  GLenum target,
199                                                  GLenum attachment,
200                                                  GLenum pname,
201                                                  const GLint *params);
202 bool ValidateGetIntegerv(const Context *context, GLenum pname, const GLint *data);
203 bool ValidateGetProgramInfoLog(const Context *context,
204                                ShaderProgramID programPacked,
205                                GLsizei bufSize,
206                                const GLsizei *length,
207                                const GLchar *infoLog);
208 bool ValidateGetProgramiv(const Context *context,
209                           ShaderProgramID programPacked,
210                           GLenum pname,
211                           const GLint *params);
212 bool ValidateGetRenderbufferParameteriv(const Context *context,
213                                         GLenum target,
214                                         GLenum pname,
215                                         const GLint *params);
216 bool ValidateGetShaderInfoLog(const Context *context,
217                               ShaderProgramID shaderPacked,
218                               GLsizei bufSize,
219                               const GLsizei *length,
220                               const GLchar *infoLog);
221 bool ValidateGetShaderPrecisionFormat(const Context *context,
222                                       GLenum shadertype,
223                                       GLenum precisiontype,
224                                       const GLint *range,
225                                       const GLint *precision);
226 bool ValidateGetShaderSource(const Context *context,
227                              ShaderProgramID shaderPacked,
228                              GLsizei bufSize,
229                              const GLsizei *length,
230                              const GLchar *source);
231 bool ValidateGetShaderiv(const Context *context,
232                          ShaderProgramID shaderPacked,
233                          GLenum pname,
234                          const GLint *params);
235 bool ValidateGetString(const Context *context, GLenum name);
236 bool ValidateGetTexParameterfv(const Context *context,
237                                TextureType targetPacked,
238                                GLenum pname,
239                                const GLfloat *params);
240 bool ValidateGetTexParameteriv(const Context *context,
241                                TextureType targetPacked,
242                                GLenum pname,
243                                const GLint *params);
244 bool ValidateGetUniformLocation(const Context *context,
245                                 ShaderProgramID programPacked,
246                                 const GLchar *name);
247 bool ValidateGetUniformfv(const Context *context,
248                           ShaderProgramID programPacked,
249                           UniformLocation locationPacked,
250                           const GLfloat *params);
251 bool ValidateGetUniformiv(const Context *context,
252                           ShaderProgramID programPacked,
253                           UniformLocation locationPacked,
254                           const GLint *params);
255 bool ValidateGetVertexAttribPointerv(const Context *context,
256                                      GLuint index,
257                                      GLenum pname,
258                                      void *const *pointer);
259 bool ValidateGetVertexAttribfv(const Context *context,
260                                GLuint index,
261                                GLenum pname,
262                                const GLfloat *params);
263 bool ValidateGetVertexAttribiv(const Context *context,
264                                GLuint index,
265                                GLenum pname,
266                                const GLint *params);
267 bool ValidateHint(const Context *context, GLenum target, GLenum mode);
268 bool ValidateIsBuffer(const Context *context, BufferID bufferPacked);
269 bool ValidateIsEnabled(const Context *context, GLenum cap);
270 bool ValidateIsFramebuffer(const Context *context, FramebufferID framebufferPacked);
271 bool ValidateIsProgram(const Context *context, ShaderProgramID programPacked);
272 bool ValidateIsRenderbuffer(const Context *context, RenderbufferID renderbufferPacked);
273 bool ValidateIsShader(const Context *context, ShaderProgramID shaderPacked);
274 bool ValidateIsTexture(const Context *context, TextureID texturePacked);
275 bool ValidateLineWidth(const Context *context, GLfloat width);
276 bool ValidateLinkProgram(const Context *context, ShaderProgramID programPacked);
277 bool ValidatePixelStorei(const Context *context, GLenum pname, GLint param);
278 bool ValidatePolygonOffset(const Context *context, GLfloat factor, GLfloat units);
279 bool ValidateReadPixels(const Context *context,
280                         GLint x,
281                         GLint y,
282                         GLsizei width,
283                         GLsizei height,
284                         GLenum format,
285                         GLenum type,
286                         const void *pixels);
287 bool ValidateReleaseShaderCompiler(const Context *context);
288 bool ValidateRenderbufferStorage(const Context *context,
289                                  GLenum target,
290                                  GLenum internalformat,
291                                  GLsizei width,
292                                  GLsizei height);
293 bool ValidateSampleCoverage(const Context *context, GLfloat value, GLboolean invert);
294 bool ValidateScissor(const Context *context, GLint x, GLint y, GLsizei width, GLsizei height);
295 bool ValidateShaderBinary(const Context *context,
296                           GLsizei count,
297                           const ShaderProgramID *shadersPacked,
298                           GLenum binaryformat,
299                           const void *binary,
300                           GLsizei length);
301 bool ValidateShaderSource(const Context *context,
302                           ShaderProgramID shaderPacked,
303                           GLsizei count,
304                           const GLchar *const *string,
305                           const GLint *length);
306 bool ValidateStencilFunc(const Context *context, GLenum func, GLint ref, GLuint mask);
307 bool ValidateStencilFuncSeparate(const Context *context,
308                                  GLenum face,
309                                  GLenum func,
310                                  GLint ref,
311                                  GLuint mask);
312 bool ValidateStencilMask(const Context *context, GLuint mask);
313 bool ValidateStencilMaskSeparate(const Context *context, GLenum face, GLuint mask);
314 bool ValidateStencilOp(const Context *context, GLenum fail, GLenum zfail, GLenum zpass);
315 bool ValidateStencilOpSeparate(const Context *context,
316                                GLenum face,
317                                GLenum sfail,
318                                GLenum dpfail,
319                                GLenum dppass);
320 bool ValidateTexImage2D(const Context *context,
321                         TextureTarget targetPacked,
322                         GLint level,
323                         GLint internalformat,
324                         GLsizei width,
325                         GLsizei height,
326                         GLint border,
327                         GLenum format,
328                         GLenum type,
329                         const void *pixels);
330 bool ValidateTexParameterf(const Context *context,
331                            TextureType targetPacked,
332                            GLenum pname,
333                            GLfloat param);
334 bool ValidateTexParameterfv(const Context *context,
335                             TextureType targetPacked,
336                             GLenum pname,
337                             const GLfloat *params);
338 bool ValidateTexParameteri(const Context *context,
339                            TextureType targetPacked,
340                            GLenum pname,
341                            GLint param);
342 bool ValidateTexParameteriv(const Context *context,
343                             TextureType targetPacked,
344                             GLenum pname,
345                             const GLint *params);
346 bool ValidateTexSubImage2D(const Context *context,
347                            TextureTarget targetPacked,
348                            GLint level,
349                            GLint xoffset,
350                            GLint yoffset,
351                            GLsizei width,
352                            GLsizei height,
353                            GLenum format,
354                            GLenum type,
355                            const void *pixels);
356 bool ValidateUniform1f(const Context *context, UniformLocation locationPacked, GLfloat v0);
357 bool ValidateUniform1fv(const Context *context,
358                         UniformLocation locationPacked,
359                         GLsizei count,
360                         const GLfloat *value);
361 bool ValidateUniform1i(const Context *context, UniformLocation locationPacked, GLint v0);
362 bool ValidateUniform1iv(const Context *context,
363                         UniformLocation locationPacked,
364                         GLsizei count,
365                         const GLint *value);
366 bool ValidateUniform2f(const Context *context,
367                        UniformLocation locationPacked,
368                        GLfloat v0,
369                        GLfloat v1);
370 bool ValidateUniform2fv(const Context *context,
371                         UniformLocation locationPacked,
372                         GLsizei count,
373                         const GLfloat *value);
374 bool ValidateUniform2i(const Context *context, UniformLocation locationPacked, GLint v0, GLint v1);
375 bool ValidateUniform2iv(const Context *context,
376                         UniformLocation locationPacked,
377                         GLsizei count,
378                         const GLint *value);
379 bool ValidateUniform3f(const Context *context,
380                        UniformLocation locationPacked,
381                        GLfloat v0,
382                        GLfloat v1,
383                        GLfloat v2);
384 bool ValidateUniform3fv(const Context *context,
385                         UniformLocation locationPacked,
386                         GLsizei count,
387                         const GLfloat *value);
388 bool ValidateUniform3i(const Context *context,
389                        UniformLocation locationPacked,
390                        GLint v0,
391                        GLint v1,
392                        GLint v2);
393 bool ValidateUniform3iv(const Context *context,
394                         UniformLocation locationPacked,
395                         GLsizei count,
396                         const GLint *value);
397 bool ValidateUniform4f(const Context *context,
398                        UniformLocation locationPacked,
399                        GLfloat v0,
400                        GLfloat v1,
401                        GLfloat v2,
402                        GLfloat v3);
403 bool ValidateUniform4fv(const Context *context,
404                         UniformLocation locationPacked,
405                         GLsizei count,
406                         const GLfloat *value);
407 bool ValidateUniform4i(const Context *context,
408                        UniformLocation locationPacked,
409                        GLint v0,
410                        GLint v1,
411                        GLint v2,
412                        GLint v3);
413 bool ValidateUniform4iv(const Context *context,
414                         UniformLocation locationPacked,
415                         GLsizei count,
416                         const GLint *value);
417 bool ValidateUniformMatrix2fv(const Context *context,
418                               UniformLocation locationPacked,
419                               GLsizei count,
420                               GLboolean transpose,
421                               const GLfloat *value);
422 bool ValidateUniformMatrix3fv(const Context *context,
423                               UniformLocation locationPacked,
424                               GLsizei count,
425                               GLboolean transpose,
426                               const GLfloat *value);
427 bool ValidateUniformMatrix4fv(const Context *context,
428                               UniformLocation locationPacked,
429                               GLsizei count,
430                               GLboolean transpose,
431                               const GLfloat *value);
432 bool ValidateUseProgram(const Context *context, ShaderProgramID programPacked);
433 bool ValidateValidateProgram(const Context *context, ShaderProgramID programPacked);
434 bool ValidateVertexAttrib1f(const Context *context, GLuint index, GLfloat x);
435 bool ValidateVertexAttrib1fv(const Context *context, GLuint index, const GLfloat *v);
436 bool ValidateVertexAttrib2f(const Context *context, GLuint index, GLfloat x, GLfloat y);
437 bool ValidateVertexAttrib2fv(const Context *context, GLuint index, const GLfloat *v);
438 bool ValidateVertexAttrib3f(const Context *context, GLuint index, GLfloat x, GLfloat y, GLfloat z);
439 bool ValidateVertexAttrib3fv(const Context *context, GLuint index, const GLfloat *v);
440 bool ValidateVertexAttrib4f(const Context *context,
441                             GLuint index,
442                             GLfloat x,
443                             GLfloat y,
444                             GLfloat z,
445                             GLfloat w);
446 bool ValidateVertexAttrib4fv(const Context *context, GLuint index, const GLfloat *v);
447 bool ValidateVertexAttribPointer(const Context *context,
448                                  GLuint index,
449                                  GLint size,
450                                  VertexAttribType typePacked,
451                                  GLboolean normalized,
452                                  GLsizei stride,
453                                  const void *pointer);
454 bool ValidateViewport(const Context *context, GLint x, GLint y, GLsizei width, GLsizei height);
455 }  // namespace gl
456 
457 #endif  // LIBANGLE_VALIDATION_ES2_AUTOGEN_H_
458