• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// This file is auto-generated from
6// gpu/command_buffer/build_gles2_cmd_buffer.py
7// It's formatted by clang-format using chromium coding style:
8//    clang-format -i -style=chromium filename
9// DO NOT EDIT!
10
11label Chrome {
12  M39 = 1.0
13};
14
15[version=1.0]
16describe {
17  GLbitfield;
18  GLbitfield_ptr_t;
19  GLboolean;
20  GLboolean_ptr_t;
21  GLbyte;
22  GLbyte_ptr_t;
23  GLclampf;
24  GLclampf_ptr_t;
25  GLclampx;
26  GLclampx_ptr_t;
27  GLenum;
28  GLenum_ptr_t;
29  GLfixed;
30  GLfixed_ptr_t;
31  GLfloat;
32  GLfloat_ptr_t;
33  GLint;
34  GLint_ptr_t;
35  GLintptr;
36  GLintptr_ptr_t;
37  GLshort;
38  GLshort_ptr_t;
39  GLsizei;
40  GLsizei_ptr_t;
41  GLsizeiptr;
42  GLsizeiptr_ptr_t;
43  GLubyte;
44  GLubyte_ptr_t;
45  GLuint;
46  GLuint_ptr_t;
47  GLushort;
48  GLushort_ptr_t;
49};
50
51#inline c
52#include "ppapi/c/pp_resource.h"
53
54#ifndef __gl2_h_
55typedef void GLvoid;
56typedef int GLsizei;
57typedef unsigned short GLushort;
58typedef short GLshort;
59typedef unsigned char GLubyte;
60typedef unsigned int GLenum;
61typedef int GLint;
62typedef unsigned char GLboolean;
63typedef unsigned int GLbitfield;
64typedef float GLfloat;
65typedef float GLclampf;
66typedef signed char GLbyte;
67typedef unsigned int GLuint;
68typedef int GLfixed;
69typedef int GLclampx;
70#ifdef _WIN64
71typedef long long int GLintptr;
72typedef long long int GLsizeiptr;
73#else
74typedef long int GLintptr;
75typedef long int GLsizeiptr;
76#endif  // _WIN64
77#endif  // __gl2_h_
78
79#endinl
80
81[macro="PPB_OPENGLES2_INTERFACE", force_struct_namespace]
82interface PPB_OpenGLES2 {
83  void ActiveTexture([in] PP_Resource context,
84                     [in] GLenum texture);
85  void AttachShader([in] PP_Resource context,
86                    [in] GLuint program,
87                    [in] GLuint shader);
88  void BindAttribLocation([in] PP_Resource context,
89                          [in] GLuint program,
90                          [in] GLuint index,
91                          [in] cstr_t name);
92  void BindBuffer([in] PP_Resource context,
93                  [in] GLenum target,
94                  [in] GLuint buffer);
95  void BindFramebuffer([in] PP_Resource context,
96                       [in] GLenum target,
97                       [in] GLuint framebuffer);
98  void BindRenderbuffer([in] PP_Resource context,
99                        [in] GLenum target,
100                        [in] GLuint renderbuffer);
101  void BindTexture([in] PP_Resource context,
102                   [in] GLenum target,
103                   [in] GLuint texture);
104  void BlendColor([in] PP_Resource context,
105                  [in] GLclampf red,
106                  [in] GLclampf green,
107                  [in] GLclampf blue,
108                  [in] GLclampf alpha);
109  void BlendEquation([in] PP_Resource context,
110                     [in] GLenum mode);
111  void BlendEquationSeparate([in] PP_Resource context,
112                             [in] GLenum modeRGB,
113                             [in] GLenum modeAlpha);
114  void BlendFunc([in] PP_Resource context,
115                 [in] GLenum sfactor,
116                 [in] GLenum dfactor);
117  void BlendFuncSeparate([in] PP_Resource context,
118                         [in] GLenum srcRGB,
119                         [in] GLenum dstRGB,
120                         [in] GLenum srcAlpha,
121                         [in] GLenum dstAlpha);
122  void BufferData([in] PP_Resource context,
123                  [in] GLenum target,
124                  [in] GLsizeiptr size,
125                  [in] mem_t data,
126                  [in] GLenum usage);
127  void BufferSubData([in] PP_Resource context,
128                     [in] GLenum target,
129                     [in] GLintptr offset,
130                     [in] GLsizeiptr size,
131                     [in] mem_t data);
132  GLenum CheckFramebufferStatus([in] PP_Resource context,
133                                [in] GLenum target);
134  void Clear([in] PP_Resource context,
135             [in] GLbitfield mask);
136  void ClearColor([in] PP_Resource context,
137                  [in] GLclampf red,
138                  [in] GLclampf green,
139                  [in] GLclampf blue,
140                  [in] GLclampf alpha);
141  void ClearDepthf([in] PP_Resource context,
142                   [in] GLclampf depth);
143  void ClearStencil([in] PP_Resource context,
144                    [in] GLint s);
145  void ColorMask([in] PP_Resource context,
146                 [in] GLboolean red,
147                 [in] GLboolean green,
148                 [in] GLboolean blue,
149                 [in] GLboolean alpha);
150  void CompileShader([in] PP_Resource context,
151                     [in] GLuint shader);
152  void CompressedTexImage2D([in] PP_Resource context,
153                            [in] GLenum target,
154                            [in] GLint level,
155                            [in] GLenum internalformat,
156                            [in] GLsizei width,
157                            [in] GLsizei height,
158                            [in] GLint border,
159                            [in] GLsizei imageSize,
160                            [in] mem_t data);
161  void CompressedTexSubImage2D([in] PP_Resource context,
162                               [in] GLenum target,
163                               [in] GLint level,
164                               [in] GLint xoffset,
165                               [in] GLint yoffset,
166                               [in] GLsizei width,
167                               [in] GLsizei height,
168                               [in] GLenum format,
169                               [in] GLsizei imageSize,
170                               [in] mem_t data);
171  void CopyTexImage2D([in] PP_Resource context,
172                      [in] GLenum target,
173                      [in] GLint level,
174                      [in] GLenum internalformat,
175                      [in] GLint x,
176                      [in] GLint y,
177                      [in] GLsizei width,
178                      [in] GLsizei height,
179                      [in] GLint border);
180  void CopyTexSubImage2D([in] PP_Resource context,
181                         [in] GLenum target,
182                         [in] GLint level,
183                         [in] GLint xoffset,
184                         [in] GLint yoffset,
185                         [in] GLint x,
186                         [in] GLint y,
187                         [in] GLsizei width,
188                         [in] GLsizei height);
189  GLuint CreateProgram([in] PP_Resource context);
190  GLuint CreateShader([in] PP_Resource context,
191                      [in] GLenum type);
192  void CullFace([in] PP_Resource context,
193                [in] GLenum mode);
194  void DeleteBuffers([in] PP_Resource context,
195                     [in] GLsizei n,
196                     [in] GLuint_ptr_t buffers);
197  void DeleteFramebuffers([in] PP_Resource context,
198                          [in] GLsizei n,
199                          [in] GLuint_ptr_t framebuffers);
200  void DeleteProgram([in] PP_Resource context,
201                     [in] GLuint program);
202  void DeleteRenderbuffers([in] PP_Resource context,
203                           [in] GLsizei n,
204                           [in] GLuint_ptr_t renderbuffers);
205  void DeleteShader([in] PP_Resource context,
206                    [in] GLuint shader);
207  void DeleteTextures([in] PP_Resource context,
208                      [in] GLsizei n,
209                      [in] GLuint_ptr_t textures);
210  void DepthFunc([in] PP_Resource context,
211                 [in] GLenum func);
212  void DepthMask([in] PP_Resource context,
213                 [in] GLboolean flag);
214  void DepthRangef([in] PP_Resource context,
215                   [in] GLclampf zNear,
216                   [in] GLclampf zFar);
217  void DetachShader([in] PP_Resource context,
218                    [in] GLuint program,
219                    [in] GLuint shader);
220  void Disable([in] PP_Resource context,
221               [in] GLenum cap);
222  void DisableVertexAttribArray([in] PP_Resource context,
223                                [in] GLuint index);
224  void DrawArrays([in] PP_Resource context,
225                  [in] GLenum mode,
226                  [in] GLint first,
227                  [in] GLsizei count);
228  void DrawElements([in] PP_Resource context,
229                    [in] GLenum mode,
230                    [in] GLsizei count,
231                    [in] GLenum type,
232                    [in] mem_t indices);
233  void Enable([in] PP_Resource context,
234              [in] GLenum cap);
235  void EnableVertexAttribArray([in] PP_Resource context,
236                               [in] GLuint index);
237  void Finish([in] PP_Resource context);
238  void Flush([in] PP_Resource context);
239  void FramebufferRenderbuffer([in] PP_Resource context,
240                               [in] GLenum target,
241                               [in] GLenum attachment,
242                               [in] GLenum renderbuffertarget,
243                               [in] GLuint renderbuffer);
244  void FramebufferTexture2D([in] PP_Resource context,
245                            [in] GLenum target,
246                            [in] GLenum attachment,
247                            [in] GLenum textarget,
248                            [in] GLuint texture,
249                            [in] GLint level);
250  void FrontFace([in] PP_Resource context,
251                 [in] GLenum mode);
252  void GenBuffers([in] PP_Resource context,
253                  [in] GLsizei n,
254                  [out] GLuint_ptr_t buffers);
255  void GenerateMipmap([in] PP_Resource context,
256                      [in] GLenum target);
257  void GenFramebuffers([in] PP_Resource context,
258                       [in] GLsizei n,
259                       [out] GLuint_ptr_t framebuffers);
260  void GenRenderbuffers([in] PP_Resource context,
261                        [in] GLsizei n,
262                        [out] GLuint_ptr_t renderbuffers);
263  void GenTextures([in] PP_Resource context,
264                   [in] GLsizei n,
265                   [out] GLuint_ptr_t textures);
266  void GetActiveAttrib([in] PP_Resource context,
267                       [in] GLuint program,
268                       [in] GLuint index,
269                       [in] GLsizei bufsize,
270                       [out] GLsizei_ptr_t length,
271                       [out] GLint_ptr_t size,
272                       [out] GLenum_ptr_t type,
273                       [out] str_t name);
274  void GetActiveUniform([in] PP_Resource context,
275                        [in] GLuint program,
276                        [in] GLuint index,
277                        [in] GLsizei bufsize,
278                        [out] GLsizei_ptr_t length,
279                        [out] GLint_ptr_t size,
280                        [out] GLenum_ptr_t type,
281                        [out] str_t name);
282  void GetAttachedShaders([in] PP_Resource context,
283                          [in] GLuint program,
284                          [in] GLsizei maxcount,
285                          [out] GLsizei_ptr_t count,
286                          [out] GLuint_ptr_t shaders);
287  GLint GetAttribLocation([in] PP_Resource context,
288                          [in] GLuint program,
289                          [in] cstr_t name);
290  void GetBooleanv([in] PP_Resource context,
291                   [in] GLenum pname,
292                   [out] GLboolean_ptr_t params);
293  void GetBufferParameteriv([in] PP_Resource context,
294                            [in] GLenum target,
295                            [in] GLenum pname,
296                            [out] GLint_ptr_t params);
297  GLenum GetError([in] PP_Resource context);
298  void GetFloatv([in] PP_Resource context,
299                 [in] GLenum pname,
300                 [out] GLfloat_ptr_t params);
301  void GetFramebufferAttachmentParameteriv([in] PP_Resource context,
302                                           [in] GLenum target,
303                                           [in] GLenum attachment,
304                                           [in] GLenum pname,
305                                           [out] GLint_ptr_t params);
306  void GetIntegerv([in] PP_Resource context,
307                   [in] GLenum pname,
308                   [out] GLint_ptr_t params);
309  void GetProgramiv([in] PP_Resource context,
310                    [in] GLuint program,
311                    [in] GLenum pname,
312                    [out] GLint_ptr_t params);
313  void GetProgramInfoLog([in] PP_Resource context,
314                         [in] GLuint program,
315                         [in] GLsizei bufsize,
316                         [out] GLsizei_ptr_t length,
317                         [out] str_t infolog);
318  void GetRenderbufferParameteriv([in] PP_Resource context,
319                                  [in] GLenum target,
320                                  [in] GLenum pname,
321                                  [out] GLint_ptr_t params);
322  void GetShaderiv([in] PP_Resource context,
323                   [in] GLuint shader,
324                   [in] GLenum pname,
325                   [out] GLint_ptr_t params);
326  void GetShaderInfoLog([in] PP_Resource context,
327                        [in] GLuint shader,
328                        [in] GLsizei bufsize,
329                        [out] GLsizei_ptr_t length,
330                        [out] str_t infolog);
331  void GetShaderPrecisionFormat([in] PP_Resource context,
332                                [in] GLenum shadertype,
333                                [in] GLenum precisiontype,
334                                [out] GLint_ptr_t range,
335                                [out] GLint_ptr_t precision);
336  void GetShaderSource([in] PP_Resource context,
337                       [in] GLuint shader,
338                       [in] GLsizei bufsize,
339                       [out] GLsizei_ptr_t length,
340                       [out] str_t source);
341  GLubyte_ptr_t GetString([in] PP_Resource context,
342                          [in] GLenum name);
343  void GetTexParameterfv([in] PP_Resource context,
344                         [in] GLenum target,
345                         [in] GLenum pname,
346                         [out] GLfloat_ptr_t params);
347  void GetTexParameteriv([in] PP_Resource context,
348                         [in] GLenum target,
349                         [in] GLenum pname,
350                         [out] GLint_ptr_t params);
351  void GetUniformfv([in] PP_Resource context,
352                    [in] GLuint program,
353                    [in] GLint location,
354                    [out] GLfloat_ptr_t params);
355  void GetUniformiv([in] PP_Resource context,
356                    [in] GLuint program,
357                    [in] GLint location,
358                    [out] GLint_ptr_t params);
359  GLint GetUniformLocation([in] PP_Resource context,
360                           [in] GLuint program,
361                           [in] cstr_t name);
362  void GetVertexAttribfv([in] PP_Resource context,
363                         [in] GLuint index,
364                         [in] GLenum pname,
365                         [out] GLfloat_ptr_t params);
366  void GetVertexAttribiv([in] PP_Resource context,
367                         [in] GLuint index,
368                         [in] GLenum pname,
369                         [out] GLint_ptr_t params);
370  void GetVertexAttribPointerv([in] PP_Resource context,
371                               [in] GLuint index,
372                               [in] GLenum pname,
373                               [out] mem_ptr_t pointer);
374  void Hint([in] PP_Resource context,
375            [in] GLenum target,
376            [in] GLenum mode);
377  GLboolean IsBuffer([in] PP_Resource context,
378                     [in] GLuint buffer);
379  GLboolean IsEnabled([in] PP_Resource context,
380                      [in] GLenum cap);
381  GLboolean IsFramebuffer([in] PP_Resource context,
382                          [in] GLuint framebuffer);
383  GLboolean IsProgram([in] PP_Resource context,
384                      [in] GLuint program);
385  GLboolean IsRenderbuffer([in] PP_Resource context,
386                           [in] GLuint renderbuffer);
387  GLboolean IsShader([in] PP_Resource context,
388                     [in] GLuint shader);
389  GLboolean IsTexture([in] PP_Resource context,
390                      [in] GLuint texture);
391  void LineWidth([in] PP_Resource context,
392                 [in] GLfloat width);
393  void LinkProgram([in] PP_Resource context,
394                   [in] GLuint program);
395  void PixelStorei([in] PP_Resource context,
396                   [in] GLenum pname,
397                   [in] GLint param);
398  void PolygonOffset([in] PP_Resource context,
399                     [in] GLfloat factor,
400                     [in] GLfloat units);
401  void ReadPixels([in] PP_Resource context,
402                  [in] GLint x,
403                  [in] GLint y,
404                  [in] GLsizei width,
405                  [in] GLsizei height,
406                  [in] GLenum format,
407                  [in] GLenum type,
408                  [out] mem_t pixels);
409  void ReleaseShaderCompiler([in] PP_Resource context);
410  void RenderbufferStorage([in] PP_Resource context,
411                           [in] GLenum target,
412                           [in] GLenum internalformat,
413                           [in] GLsizei width,
414                           [in] GLsizei height);
415  void SampleCoverage([in] PP_Resource context,
416                      [in] GLclampf value,
417                      [in] GLboolean invert);
418  void Scissor([in] PP_Resource context,
419               [in] GLint x,
420               [in] GLint y,
421               [in] GLsizei width,
422               [in] GLsizei height);
423  void ShaderBinary([in] PP_Resource context,
424                    [in] GLsizei n,
425                    [in] GLuint_ptr_t shaders,
426                    [in] GLenum binaryformat,
427                    [in] mem_t binary,
428                    [in] GLsizei length);
429  void ShaderSource([in] PP_Resource context,
430                    [in] GLuint shader,
431                    [in] GLsizei count,
432                    [out] cstr_t str,
433                    [in] GLint_ptr_t length);
434  void StencilFunc([in] PP_Resource context,
435                   [in] GLenum func,
436                   [in] GLint ref,
437                   [in] GLuint mask);
438  void StencilFuncSeparate([in] PP_Resource context,
439                           [in] GLenum face,
440                           [in] GLenum func,
441                           [in] GLint ref,
442                           [in] GLuint mask);
443  void StencilMask([in] PP_Resource context,
444                   [in] GLuint mask);
445  void StencilMaskSeparate([in] PP_Resource context,
446                           [in] GLenum face,
447                           [in] GLuint mask);
448  void StencilOp([in] PP_Resource context,
449                 [in] GLenum fail,
450                 [in] GLenum zfail,
451                 [in] GLenum zpass);
452  void StencilOpSeparate([in] PP_Resource context,
453                         [in] GLenum face,
454                         [in] GLenum fail,
455                         [in] GLenum zfail,
456                         [in] GLenum zpass);
457  void TexImage2D([in] PP_Resource context,
458                  [in] GLenum target,
459                  [in] GLint level,
460                  [in] GLint internalformat,
461                  [in] GLsizei width,
462                  [in] GLsizei height,
463                  [in] GLint border,
464                  [in] GLenum format,
465                  [in] GLenum type,
466                  [in] mem_t pixels);
467  void TexParameterf([in] PP_Resource context,
468                     [in] GLenum target,
469                     [in] GLenum pname,
470                     [in] GLfloat param);
471  void TexParameterfv([in] PP_Resource context,
472                      [in] GLenum target,
473                      [in] GLenum pname,
474                      [in] GLfloat_ptr_t params);
475  void TexParameteri([in] PP_Resource context,
476                     [in] GLenum target,
477                     [in] GLenum pname,
478                     [in] GLint param);
479  void TexParameteriv([in] PP_Resource context,
480                      [in] GLenum target,
481                      [in] GLenum pname,
482                      [in] GLint_ptr_t params);
483  void TexSubImage2D([in] PP_Resource context,
484                     [in] GLenum target,
485                     [in] GLint level,
486                     [in] GLint xoffset,
487                     [in] GLint yoffset,
488                     [in] GLsizei width,
489                     [in] GLsizei height,
490                     [in] GLenum format,
491                     [in] GLenum type,
492                     [in] mem_t pixels);
493  void Uniform1f([in] PP_Resource context,
494                 [in] GLint location,
495                 [in] GLfloat x);
496  void Uniform1fv([in] PP_Resource context,
497                  [in] GLint location,
498                  [in] GLsizei count,
499                  [in] GLfloat_ptr_t v);
500  void Uniform1i([in] PP_Resource context,
501                 [in] GLint location,
502                 [in] GLint x);
503  void Uniform1iv([in] PP_Resource context,
504                  [in] GLint location,
505                  [in] GLsizei count,
506                  [in] GLint_ptr_t v);
507  void Uniform2f([in] PP_Resource context,
508                 [in] GLint location,
509                 [in] GLfloat x,
510                 [in] GLfloat y);
511  void Uniform2fv([in] PP_Resource context,
512                  [in] GLint location,
513                  [in] GLsizei count,
514                  [in] GLfloat_ptr_t v);
515  void Uniform2i([in] PP_Resource context,
516                 [in] GLint location,
517                 [in] GLint x,
518                 [in] GLint y);
519  void Uniform2iv([in] PP_Resource context,
520                  [in] GLint location,
521                  [in] GLsizei count,
522                  [in] GLint_ptr_t v);
523  void Uniform3f([in] PP_Resource context,
524                 [in] GLint location,
525                 [in] GLfloat x,
526                 [in] GLfloat y,
527                 [in] GLfloat z);
528  void Uniform3fv([in] PP_Resource context,
529                  [in] GLint location,
530                  [in] GLsizei count,
531                  [in] GLfloat_ptr_t v);
532  void Uniform3i([in] PP_Resource context,
533                 [in] GLint location,
534                 [in] GLint x,
535                 [in] GLint y,
536                 [in] GLint z);
537  void Uniform3iv([in] PP_Resource context,
538                  [in] GLint location,
539                  [in] GLsizei count,
540                  [in] GLint_ptr_t v);
541  void Uniform4f([in] PP_Resource context,
542                 [in] GLint location,
543                 [in] GLfloat x,
544                 [in] GLfloat y,
545                 [in] GLfloat z,
546                 [in] GLfloat w);
547  void Uniform4fv([in] PP_Resource context,
548                  [in] GLint location,
549                  [in] GLsizei count,
550                  [in] GLfloat_ptr_t v);
551  void Uniform4i([in] PP_Resource context,
552                 [in] GLint location,
553                 [in] GLint x,
554                 [in] GLint y,
555                 [in] GLint z,
556                 [in] GLint w);
557  void Uniform4iv([in] PP_Resource context,
558                  [in] GLint location,
559                  [in] GLsizei count,
560                  [in] GLint_ptr_t v);
561  void UniformMatrix2fv([in] PP_Resource context,
562                        [in] GLint location,
563                        [in] GLsizei count,
564                        [in] GLboolean transpose,
565                        [in] GLfloat_ptr_t value);
566  void UniformMatrix3fv([in] PP_Resource context,
567                        [in] GLint location,
568                        [in] GLsizei count,
569                        [in] GLboolean transpose,
570                        [in] GLfloat_ptr_t value);
571  void UniformMatrix4fv([in] PP_Resource context,
572                        [in] GLint location,
573                        [in] GLsizei count,
574                        [in] GLboolean transpose,
575                        [in] GLfloat_ptr_t value);
576  void UseProgram([in] PP_Resource context,
577                  [in] GLuint program);
578  void ValidateProgram([in] PP_Resource context,
579                       [in] GLuint program);
580  void VertexAttrib1f([in] PP_Resource context,
581                      [in] GLuint indx,
582                      [in] GLfloat x);
583  void VertexAttrib1fv([in] PP_Resource context,
584                       [in] GLuint indx,
585                       [in] GLfloat_ptr_t values);
586  void VertexAttrib2f([in] PP_Resource context,
587                      [in] GLuint indx,
588                      [in] GLfloat x,
589                      [in] GLfloat y);
590  void VertexAttrib2fv([in] PP_Resource context,
591                       [in] GLuint indx,
592                       [in] GLfloat_ptr_t values);
593  void VertexAttrib3f([in] PP_Resource context,
594                      [in] GLuint indx,
595                      [in] GLfloat x,
596                      [in] GLfloat y,
597                      [in] GLfloat z);
598  void VertexAttrib3fv([in] PP_Resource context,
599                       [in] GLuint indx,
600                       [in] GLfloat_ptr_t values);
601  void VertexAttrib4f([in] PP_Resource context,
602                      [in] GLuint indx,
603                      [in] GLfloat x,
604                      [in] GLfloat y,
605                      [in] GLfloat z,
606                      [in] GLfloat w);
607  void VertexAttrib4fv([in] PP_Resource context,
608                       [in] GLuint indx,
609                       [in] GLfloat_ptr_t values);
610  void VertexAttribPointer([in] PP_Resource context,
611                           [in] GLuint indx,
612                           [in] GLint size,
613                           [in] GLenum type,
614                           [in] GLboolean normalized,
615                           [in] GLsizei stride,
616                           [in] mem_t ptr);
617  void Viewport([in] PP_Resource context,
618                [in] GLint x,
619                [in] GLint y,
620                [in] GLsizei width,
621                [in] GLsizei height);
622};
623
624
625[macro="PPB_OPENGLES2_INSTANCEDARRAYS_INTERFACE", force_struct_namespace]
626interface PPB_OpenGLES2InstancedArrays {
627  void DrawArraysInstancedANGLE([in] PP_Resource context,
628                                [in] GLenum mode,
629                                [in] GLint first,
630                                [in] GLsizei count,
631                                [in] GLsizei primcount);
632  void DrawElementsInstancedANGLE([in] PP_Resource context,
633                                  [in] GLenum mode,
634                                  [in] GLsizei count,
635                                  [in] GLenum type,
636                                  [in] mem_t indices,
637                                  [in] GLsizei primcount);
638  void VertexAttribDivisorANGLE([in] PP_Resource context,
639                                [in] GLuint index,
640                                [in] GLuint divisor);
641};
642
643
644[macro="PPB_OPENGLES2_FRAMEBUFFERBLIT_INTERFACE", force_struct_namespace]
645interface PPB_OpenGLES2FramebufferBlit {
646  void BlitFramebufferEXT([in] PP_Resource context,
647                          [in] GLint srcX0,
648                          [in] GLint srcY0,
649                          [in] GLint srcX1,
650                          [in] GLint srcY1,
651                          [in] GLint dstX0,
652                          [in] GLint dstY0,
653                          [in] GLint dstX1,
654                          [in] GLint dstY1,
655                          [in] GLbitfield mask,
656                          [in] GLenum filter);
657};
658
659
660[macro="PPB_OPENGLES2_FRAMEBUFFERMULTISAMPLE_INTERFACE", force_struct_namespace]
661interface PPB_OpenGLES2FramebufferMultisample {
662  void RenderbufferStorageMultisampleEXT([in] PP_Resource context,
663                                         [in] GLenum target,
664                                         [in] GLsizei samples,
665                                         [in] GLenum internalformat,
666                                         [in] GLsizei width,
667                                         [in] GLsizei height);
668};
669
670
671[macro="PPB_OPENGLES2_CHROMIUMENABLEFEATURE_INTERFACE", force_struct_namespace]
672interface PPB_OpenGLES2ChromiumEnableFeature {
673  GLboolean EnableFeatureCHROMIUM([in] PP_Resource context,
674                                  [in] cstr_t feature);
675};
676
677
678[macro="PPB_OPENGLES2_CHROMIUMMAPSUB_INTERFACE", force_struct_namespace]
679interface PPB_OpenGLES2ChromiumMapSub {
680  mem_t MapBufferSubDataCHROMIUM([in] PP_Resource context,
681                                 [in] GLuint target,
682                                 [in] GLintptr offset,
683                                 [in] GLsizeiptr size,
684                                 [in] GLenum access);
685  void UnmapBufferSubDataCHROMIUM([in] PP_Resource context,
686                                  [in] mem_t mem);
687  mem_t MapTexSubImage2DCHROMIUM([in] PP_Resource context,
688                                 [in] GLenum target,
689                                 [in] GLint level,
690                                 [in] GLint xoffset,
691                                 [in] GLint yoffset,
692                                 [in] GLsizei width,
693                                 [in] GLsizei height,
694                                 [in] GLenum format,
695                                 [in] GLenum type,
696                                 [in] GLenum access);
697  void UnmapTexSubImage2DCHROMIUM([in] PP_Resource context,
698                                  [in] mem_t mem);
699};
700
701
702[macro="PPB_OPENGLES2_QUERY_INTERFACE", force_struct_namespace]
703interface PPB_OpenGLES2Query {
704  void GenQueriesEXT([in] PP_Resource context,
705                     [in] GLsizei n,
706                     [out] GLuint_ptr_t queries);
707  void DeleteQueriesEXT([in] PP_Resource context,
708                        [in] GLsizei n,
709                        [in] GLuint_ptr_t queries);
710  GLboolean IsQueryEXT([in] PP_Resource context,
711                       [in] GLuint id);
712  void BeginQueryEXT([in] PP_Resource context,
713                     [in] GLenum target,
714                     [in] GLuint id);
715  void EndQueryEXT([in] PP_Resource context,
716                   [in] GLenum target);
717  void GetQueryivEXT([in] PP_Resource context,
718                     [in] GLenum target,
719                     [in] GLenum pname,
720                     [out] GLint_ptr_t params);
721  void GetQueryObjectuivEXT([in] PP_Resource context,
722                            [in] GLuint id,
723                            [in] GLenum pname,
724                            [out] GLuint_ptr_t params);
725};
726
727
728[macro="PPB_OPENGLES2_VERTEXARRAYOBJECT_INTERFACE", force_struct_namespace]
729interface PPB_OpenGLES2VertexArrayObject {
730  void GenVertexArraysOES([in] PP_Resource context,
731                          [in] GLsizei n,
732                          [out] GLuint_ptr_t arrays);
733  void DeleteVertexArraysOES([in] PP_Resource context,
734                             [in] GLsizei n,
735                             [in] GLuint_ptr_t arrays);
736  GLboolean IsVertexArrayOES([in] PP_Resource context,
737                             [in] GLuint array);
738  void BindVertexArrayOES([in] PP_Resource context,
739                          [in] GLuint array);
740};
741
742