Home | History | Annotate | Download | only in gles2
      1 // Copyright (c) 2012 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 // DO NOT EDIT!
      8 
      9 #ifndef GL_GLEXT_PROTOTYPES
     10 #define GL_GLEXT_PROTOTYPES
     11 #endif
     12 #include <GLES2/gl2.h>
     13 #include <GLES2/gl2ext.h>
     14 #include "ppapi/lib/gl/gles2/gl2ext_ppapi.h"
     15 
     16 void GL_APIENTRY glActiveTexture(GLenum texture) {
     17   glGetInterfacePPAPI()->ActiveTexture(glGetCurrentContextPPAPI(), texture);
     18 }
     19 
     20 void GL_APIENTRY glAttachShader(GLuint program, GLuint shader) {
     21   glGetInterfacePPAPI()->AttachShader(
     22       glGetCurrentContextPPAPI(), program, shader);
     23 }
     24 
     25 void GL_APIENTRY glBindAttribLocation(
     26     GLuint program, GLuint index, const char* name) {
     27   glGetInterfacePPAPI()->BindAttribLocation(
     28       glGetCurrentContextPPAPI(), program, index, name);
     29 }
     30 
     31 void GL_APIENTRY glBindBuffer(GLenum target, GLuint buffer) {
     32   glGetInterfacePPAPI()->BindBuffer(
     33       glGetCurrentContextPPAPI(), target, buffer);
     34 }
     35 
     36 void GL_APIENTRY glBindFramebuffer(GLenum target, GLuint framebuffer) {
     37   glGetInterfacePPAPI()->BindFramebuffer(
     38       glGetCurrentContextPPAPI(), target, framebuffer);
     39 }
     40 
     41 void GL_APIENTRY glBindRenderbuffer(GLenum target, GLuint renderbuffer) {
     42   glGetInterfacePPAPI()->BindRenderbuffer(
     43       glGetCurrentContextPPAPI(), target, renderbuffer);
     44 }
     45 
     46 void GL_APIENTRY glBindTexture(GLenum target, GLuint texture) {
     47   glGetInterfacePPAPI()->BindTexture(
     48       glGetCurrentContextPPAPI(), target, texture);
     49 }
     50 
     51 void GL_APIENTRY glBlendColor(
     52     GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) {
     53   glGetInterfacePPAPI()->BlendColor(
     54       glGetCurrentContextPPAPI(), red, green, blue, alpha);
     55 }
     56 
     57 void GL_APIENTRY glBlendEquation(GLenum mode) {
     58   glGetInterfacePPAPI()->BlendEquation(glGetCurrentContextPPAPI(), mode);
     59 }
     60 
     61 void GL_APIENTRY glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) {
     62   glGetInterfacePPAPI()->BlendEquationSeparate(
     63       glGetCurrentContextPPAPI(), modeRGB, modeAlpha);
     64 }
     65 
     66 void GL_APIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor) {
     67   glGetInterfacePPAPI()->BlendFunc(
     68       glGetCurrentContextPPAPI(), sfactor, dfactor);
     69 }
     70 
     71 void GL_APIENTRY glBlendFuncSeparate(
     72     GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) {
     73   glGetInterfacePPAPI()->BlendFuncSeparate(
     74       glGetCurrentContextPPAPI(), srcRGB, dstRGB, srcAlpha, dstAlpha);
     75 }
     76 
     77 void GL_APIENTRY glBufferData(
     78     GLenum target, GLsizeiptr size, const void* data, GLenum usage) {
     79   glGetInterfacePPAPI()->BufferData(
     80       glGetCurrentContextPPAPI(), target, size, data, usage);
     81 }
     82 
     83 void GL_APIENTRY glBufferSubData(
     84     GLenum target, GLintptr offset, GLsizeiptr size, const void* data) {
     85   glGetInterfacePPAPI()->BufferSubData(
     86       glGetCurrentContextPPAPI(), target, offset, size, data);
     87 }
     88 
     89 GLenum GL_APIENTRY glCheckFramebufferStatus(GLenum target) {
     90   return glGetInterfacePPAPI()->CheckFramebufferStatus(
     91       glGetCurrentContextPPAPI(), target);
     92 }
     93 
     94 void GL_APIENTRY glClear(GLbitfield mask) {
     95   glGetInterfacePPAPI()->Clear(glGetCurrentContextPPAPI(), mask);
     96 }
     97 
     98 void GL_APIENTRY glClearColor(
     99     GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) {
    100   glGetInterfacePPAPI()->ClearColor(
    101       glGetCurrentContextPPAPI(), red, green, blue, alpha);
    102 }
    103 
    104 void GL_APIENTRY glClearDepthf(GLclampf depth) {
    105   glGetInterfacePPAPI()->ClearDepthf(glGetCurrentContextPPAPI(), depth);
    106 }
    107 
    108 void GL_APIENTRY glClearStencil(GLint s) {
    109   glGetInterfacePPAPI()->ClearStencil(glGetCurrentContextPPAPI(), s);
    110 }
    111 
    112 void GL_APIENTRY glColorMask(
    113     GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) {
    114   glGetInterfacePPAPI()->ColorMask(
    115       glGetCurrentContextPPAPI(), red, green, blue, alpha);
    116 }
    117 
    118 void GL_APIENTRY glCompileShader(GLuint shader) {
    119   glGetInterfacePPAPI()->CompileShader(glGetCurrentContextPPAPI(), shader);
    120 }
    121 
    122 void GL_APIENTRY glCompressedTexImage2D(
    123     GLenum target, GLint level, GLenum internalformat, GLsizei width,
    124     GLsizei height, GLint border, GLsizei imageSize, const void* data) {
    125   glGetInterfacePPAPI()->CompressedTexImage2D(
    126       glGetCurrentContextPPAPI(), target, level, internalformat, width, height,
    127       border, imageSize, data);
    128 }
    129 
    130 void GL_APIENTRY glCompressedTexSubImage2D(
    131     GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width,
    132     GLsizei height, GLenum format, GLsizei imageSize, const void* data) {
    133   glGetInterfacePPAPI()->CompressedTexSubImage2D(
    134       glGetCurrentContextPPAPI(), target, level, xoffset, yoffset, width,
    135       height, format, imageSize, data);
    136 }
    137 
    138 void GL_APIENTRY glCopyTexImage2D(
    139     GLenum target, GLint level, GLenum internalformat, GLint x, GLint y,
    140     GLsizei width, GLsizei height, GLint border) {
    141   glGetInterfacePPAPI()->CopyTexImage2D(
    142       glGetCurrentContextPPAPI(), target, level, internalformat, x, y, width,
    143       height, border);
    144 }
    145 
    146 void GL_APIENTRY glCopyTexSubImage2D(
    147     GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y,
    148     GLsizei width, GLsizei height) {
    149   glGetInterfacePPAPI()->CopyTexSubImage2D(
    150       glGetCurrentContextPPAPI(), target, level, xoffset, yoffset, x, y, width,
    151       height);
    152 }
    153 
    154 GLuint GL_APIENTRY glCreateProgram() {
    155   return glGetInterfacePPAPI()->CreateProgram(glGetCurrentContextPPAPI());
    156 }
    157 
    158 GLuint GL_APIENTRY glCreateShader(GLenum type) {
    159   return glGetInterfacePPAPI()->CreateShader(glGetCurrentContextPPAPI(), type);
    160 }
    161 
    162 void GL_APIENTRY glCullFace(GLenum mode) {
    163   glGetInterfacePPAPI()->CullFace(glGetCurrentContextPPAPI(), mode);
    164 }
    165 
    166 void GL_APIENTRY glDeleteBuffers(GLsizei n, const GLuint* buffers) {
    167   glGetInterfacePPAPI()->DeleteBuffers(glGetCurrentContextPPAPI(), n, buffers);
    168 }
    169 
    170 void GL_APIENTRY glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers) {
    171   glGetInterfacePPAPI()->DeleteFramebuffers(
    172       glGetCurrentContextPPAPI(), n, framebuffers);
    173 }
    174 
    175 void GL_APIENTRY glDeleteProgram(GLuint program) {
    176   glGetInterfacePPAPI()->DeleteProgram(glGetCurrentContextPPAPI(), program);
    177 }
    178 
    179 void GL_APIENTRY glDeleteRenderbuffers(
    180     GLsizei n, const GLuint* renderbuffers) {
    181   glGetInterfacePPAPI()->DeleteRenderbuffers(
    182       glGetCurrentContextPPAPI(), n, renderbuffers);
    183 }
    184 
    185 void GL_APIENTRY glDeleteShader(GLuint shader) {
    186   glGetInterfacePPAPI()->DeleteShader(glGetCurrentContextPPAPI(), shader);
    187 }
    188 
    189 void GL_APIENTRY glDeleteTextures(GLsizei n, const GLuint* textures) {
    190   glGetInterfacePPAPI()->DeleteTextures(
    191       glGetCurrentContextPPAPI(), n, textures);
    192 }
    193 
    194 void GL_APIENTRY glDepthFunc(GLenum func) {
    195   glGetInterfacePPAPI()->DepthFunc(glGetCurrentContextPPAPI(), func);
    196 }
    197 
    198 void GL_APIENTRY glDepthMask(GLboolean flag) {
    199   glGetInterfacePPAPI()->DepthMask(glGetCurrentContextPPAPI(), flag);
    200 }
    201 
    202 void GL_APIENTRY glDepthRangef(GLclampf zNear, GLclampf zFar) {
    203   glGetInterfacePPAPI()->DepthRangef(glGetCurrentContextPPAPI(), zNear, zFar);
    204 }
    205 
    206 void GL_APIENTRY glDetachShader(GLuint program, GLuint shader) {
    207   glGetInterfacePPAPI()->DetachShader(
    208       glGetCurrentContextPPAPI(), program, shader);
    209 }
    210 
    211 void GL_APIENTRY glDisable(GLenum cap) {
    212   glGetInterfacePPAPI()->Disable(glGetCurrentContextPPAPI(), cap);
    213 }
    214 
    215 void GL_APIENTRY glDisableVertexAttribArray(GLuint index) {
    216   glGetInterfacePPAPI()->DisableVertexAttribArray(
    217       glGetCurrentContextPPAPI(), index);
    218 }
    219 
    220 void GL_APIENTRY glDrawArrays(GLenum mode, GLint first, GLsizei count) {
    221   glGetInterfacePPAPI()->DrawArrays(
    222       glGetCurrentContextPPAPI(), mode, first, count);
    223 }
    224 
    225 void GL_APIENTRY glDrawElements(
    226     GLenum mode, GLsizei count, GLenum type, const void* indices) {
    227   glGetInterfacePPAPI()->DrawElements(
    228       glGetCurrentContextPPAPI(), mode, count, type, indices);
    229 }
    230 
    231 void GL_APIENTRY glEnable(GLenum cap) {
    232   glGetInterfacePPAPI()->Enable(glGetCurrentContextPPAPI(), cap);
    233 }
    234 
    235 void GL_APIENTRY glEnableVertexAttribArray(GLuint index) {
    236   glGetInterfacePPAPI()->EnableVertexAttribArray(
    237       glGetCurrentContextPPAPI(), index);
    238 }
    239 
    240 void GL_APIENTRY glFinish() {
    241   glGetInterfacePPAPI()->Finish(glGetCurrentContextPPAPI());
    242 }
    243 
    244 void GL_APIENTRY glFlush() {
    245   glGetInterfacePPAPI()->Flush(glGetCurrentContextPPAPI());
    246 }
    247 
    248 void GL_APIENTRY glFramebufferRenderbuffer(
    249     GLenum target, GLenum attachment, GLenum renderbuffertarget,
    250     GLuint renderbuffer) {
    251   glGetInterfacePPAPI()->FramebufferRenderbuffer(
    252       glGetCurrentContextPPAPI(), target, attachment, renderbuffertarget,
    253       renderbuffer);
    254 }
    255 
    256 void GL_APIENTRY glFramebufferTexture2D(
    257     GLenum target, GLenum attachment, GLenum textarget, GLuint texture,
    258     GLint level) {
    259   glGetInterfacePPAPI()->FramebufferTexture2D(
    260       glGetCurrentContextPPAPI(), target, attachment, textarget, texture,
    261       level);
    262 }
    263 
    264 void GL_APIENTRY glFrontFace(GLenum mode) {
    265   glGetInterfacePPAPI()->FrontFace(glGetCurrentContextPPAPI(), mode);
    266 }
    267 
    268 void GL_APIENTRY glGenBuffers(GLsizei n, GLuint* buffers) {
    269   glGetInterfacePPAPI()->GenBuffers(glGetCurrentContextPPAPI(), n, buffers);
    270 }
    271 
    272 void GL_APIENTRY glGenerateMipmap(GLenum target) {
    273   glGetInterfacePPAPI()->GenerateMipmap(glGetCurrentContextPPAPI(), target);
    274 }
    275 
    276 void GL_APIENTRY glGenFramebuffers(GLsizei n, GLuint* framebuffers) {
    277   glGetInterfacePPAPI()->GenFramebuffers(
    278       glGetCurrentContextPPAPI(), n, framebuffers);
    279 }
    280 
    281 void GL_APIENTRY glGenRenderbuffers(GLsizei n, GLuint* renderbuffers) {
    282   glGetInterfacePPAPI()->GenRenderbuffers(
    283       glGetCurrentContextPPAPI(), n, renderbuffers);
    284 }
    285 
    286 void GL_APIENTRY glGenTextures(GLsizei n, GLuint* textures) {
    287   glGetInterfacePPAPI()->GenTextures(glGetCurrentContextPPAPI(), n, textures);
    288 }
    289 
    290 void GL_APIENTRY glGetActiveAttrib(
    291     GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size,
    292     GLenum* type, char* name) {
    293   glGetInterfacePPAPI()->GetActiveAttrib(
    294       glGetCurrentContextPPAPI(), program, index, bufsize, length, size, type,
    295       name);
    296 }
    297 
    298 void GL_APIENTRY glGetActiveUniform(
    299     GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size,
    300     GLenum* type, char* name) {
    301   glGetInterfacePPAPI()->GetActiveUniform(
    302       glGetCurrentContextPPAPI(), program, index, bufsize, length, size, type,
    303       name);
    304 }
    305 
    306 void GL_APIENTRY glGetAttachedShaders(
    307     GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) {
    308   glGetInterfacePPAPI()->GetAttachedShaders(
    309       glGetCurrentContextPPAPI(), program, maxcount, count, shaders);
    310 }
    311 
    312 GLint GL_APIENTRY glGetAttribLocation(GLuint program, const char* name) {
    313   return glGetInterfacePPAPI()->GetAttribLocation(
    314       glGetCurrentContextPPAPI(), program, name);
    315 }
    316 
    317 void GL_APIENTRY glGetBooleanv(GLenum pname, GLboolean* params) {
    318   glGetInterfacePPAPI()->GetBooleanv(
    319       glGetCurrentContextPPAPI(), pname, params);
    320 }
    321 
    322 void GL_APIENTRY glGetBufferParameteriv(
    323     GLenum target, GLenum pname, GLint* params) {
    324   glGetInterfacePPAPI()->GetBufferParameteriv(
    325       glGetCurrentContextPPAPI(), target, pname, params);
    326 }
    327 
    328 GLenum GL_APIENTRY glGetError() {
    329   return glGetInterfacePPAPI()->GetError(glGetCurrentContextPPAPI());
    330 }
    331 
    332 void GL_APIENTRY glGetFloatv(GLenum pname, GLfloat* params) {
    333   glGetInterfacePPAPI()->GetFloatv(glGetCurrentContextPPAPI(), pname, params);
    334 }
    335 
    336 void GL_APIENTRY glGetFramebufferAttachmentParameteriv(
    337     GLenum target, GLenum attachment, GLenum pname, GLint* params) {
    338   glGetInterfacePPAPI()->GetFramebufferAttachmentParameteriv(
    339       glGetCurrentContextPPAPI(), target, attachment, pname, params);
    340 }
    341 
    342 void GL_APIENTRY glGetIntegerv(GLenum pname, GLint* params) {
    343   glGetInterfacePPAPI()->GetIntegerv(
    344       glGetCurrentContextPPAPI(), pname, params);
    345 }
    346 
    347 void GL_APIENTRY glGetProgramiv(GLuint program, GLenum pname, GLint* params) {
    348   glGetInterfacePPAPI()->GetProgramiv(
    349       glGetCurrentContextPPAPI(), program, pname, params);
    350 }
    351 
    352 void GL_APIENTRY glGetProgramInfoLog(
    353     GLuint program, GLsizei bufsize, GLsizei* length, char* infolog) {
    354   glGetInterfacePPAPI()->GetProgramInfoLog(
    355       glGetCurrentContextPPAPI(), program, bufsize, length, infolog);
    356 }
    357 
    358 void GL_APIENTRY glGetRenderbufferParameteriv(
    359     GLenum target, GLenum pname, GLint* params) {
    360   glGetInterfacePPAPI()->GetRenderbufferParameteriv(
    361       glGetCurrentContextPPAPI(), target, pname, params);
    362 }
    363 
    364 void GL_APIENTRY glGetShaderiv(GLuint shader, GLenum pname, GLint* params) {
    365   glGetInterfacePPAPI()->GetShaderiv(
    366       glGetCurrentContextPPAPI(), shader, pname, params);
    367 }
    368 
    369 void GL_APIENTRY glGetShaderInfoLog(
    370     GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog) {
    371   glGetInterfacePPAPI()->GetShaderInfoLog(
    372       glGetCurrentContextPPAPI(), shader, bufsize, length, infolog);
    373 }
    374 
    375 void GL_APIENTRY glGetShaderPrecisionFormat(
    376     GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) {
    377   glGetInterfacePPAPI()->GetShaderPrecisionFormat(
    378       glGetCurrentContextPPAPI(), shadertype, precisiontype, range, precision);
    379 }
    380 
    381 void GL_APIENTRY glGetShaderSource(
    382     GLuint shader, GLsizei bufsize, GLsizei* length, char* source) {
    383   glGetInterfacePPAPI()->GetShaderSource(
    384       glGetCurrentContextPPAPI(), shader, bufsize, length, source);
    385 }
    386 
    387 const GLubyte* GL_APIENTRY glGetString(GLenum name) {
    388   return glGetInterfacePPAPI()->GetString(glGetCurrentContextPPAPI(), name);
    389 }
    390 
    391 void GL_APIENTRY glGetTexParameterfv(
    392     GLenum target, GLenum pname, GLfloat* params) {
    393   glGetInterfacePPAPI()->GetTexParameterfv(
    394       glGetCurrentContextPPAPI(), target, pname, params);
    395 }
    396 
    397 void GL_APIENTRY glGetTexParameteriv(
    398     GLenum target, GLenum pname, GLint* params) {
    399   glGetInterfacePPAPI()->GetTexParameteriv(
    400       glGetCurrentContextPPAPI(), target, pname, params);
    401 }
    402 
    403 void GL_APIENTRY glGetUniformfv(
    404     GLuint program, GLint location, GLfloat* params) {
    405   glGetInterfacePPAPI()->GetUniformfv(
    406       glGetCurrentContextPPAPI(), program, location, params);
    407 }
    408 
    409 void GL_APIENTRY glGetUniformiv(
    410     GLuint program, GLint location, GLint* params) {
    411   glGetInterfacePPAPI()->GetUniformiv(
    412       glGetCurrentContextPPAPI(), program, location, params);
    413 }
    414 
    415 GLint GL_APIENTRY glGetUniformLocation(GLuint program, const char* name) {
    416   return glGetInterfacePPAPI()->GetUniformLocation(
    417       glGetCurrentContextPPAPI(), program, name);
    418 }
    419 
    420 void GL_APIENTRY glGetVertexAttribfv(
    421     GLuint index, GLenum pname, GLfloat* params) {
    422   glGetInterfacePPAPI()->GetVertexAttribfv(
    423       glGetCurrentContextPPAPI(), index, pname, params);
    424 }
    425 
    426 void GL_APIENTRY glGetVertexAttribiv(
    427     GLuint index, GLenum pname, GLint* params) {
    428   glGetInterfacePPAPI()->GetVertexAttribiv(
    429       glGetCurrentContextPPAPI(), index, pname, params);
    430 }
    431 
    432 void GL_APIENTRY glGetVertexAttribPointerv(
    433     GLuint index, GLenum pname, void** pointer) {
    434   glGetInterfacePPAPI()->GetVertexAttribPointerv(
    435       glGetCurrentContextPPAPI(), index, pname, pointer);
    436 }
    437 
    438 void GL_APIENTRY glHint(GLenum target, GLenum mode) {
    439   glGetInterfacePPAPI()->Hint(glGetCurrentContextPPAPI(), target, mode);
    440 }
    441 
    442 GLboolean GL_APIENTRY glIsBuffer(GLuint buffer) {
    443   return glGetInterfacePPAPI()->IsBuffer(glGetCurrentContextPPAPI(), buffer);
    444 }
    445 
    446 GLboolean GL_APIENTRY glIsEnabled(GLenum cap) {
    447   return glGetInterfacePPAPI()->IsEnabled(glGetCurrentContextPPAPI(), cap);
    448 }
    449 
    450 GLboolean GL_APIENTRY glIsFramebuffer(GLuint framebuffer) {
    451   return glGetInterfacePPAPI()->IsFramebuffer(
    452       glGetCurrentContextPPAPI(), framebuffer);
    453 }
    454 
    455 GLboolean GL_APIENTRY glIsProgram(GLuint program) {
    456   return glGetInterfacePPAPI()->IsProgram(glGetCurrentContextPPAPI(), program);
    457 }
    458 
    459 GLboolean GL_APIENTRY glIsRenderbuffer(GLuint renderbuffer) {
    460   return glGetInterfacePPAPI()->IsRenderbuffer(
    461       glGetCurrentContextPPAPI(), renderbuffer);
    462 }
    463 
    464 GLboolean GL_APIENTRY glIsShader(GLuint shader) {
    465   return glGetInterfacePPAPI()->IsShader(glGetCurrentContextPPAPI(), shader);
    466 }
    467 
    468 GLboolean GL_APIENTRY glIsTexture(GLuint texture) {
    469   return glGetInterfacePPAPI()->IsTexture(glGetCurrentContextPPAPI(), texture);
    470 }
    471 
    472 void GL_APIENTRY glLineWidth(GLfloat width) {
    473   glGetInterfacePPAPI()->LineWidth(glGetCurrentContextPPAPI(), width);
    474 }
    475 
    476 void GL_APIENTRY glLinkProgram(GLuint program) {
    477   glGetInterfacePPAPI()->LinkProgram(glGetCurrentContextPPAPI(), program);
    478 }
    479 
    480 void GL_APIENTRY glPixelStorei(GLenum pname, GLint param) {
    481   glGetInterfacePPAPI()->PixelStorei(glGetCurrentContextPPAPI(), pname, param);
    482 }
    483 
    484 void GL_APIENTRY glPolygonOffset(GLfloat factor, GLfloat units) {
    485   glGetInterfacePPAPI()->PolygonOffset(
    486       glGetCurrentContextPPAPI(), factor, units);
    487 }
    488 
    489 void GL_APIENTRY glReadPixels(
    490     GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type,
    491     void* pixels) {
    492   glGetInterfacePPAPI()->ReadPixels(
    493       glGetCurrentContextPPAPI(), x, y, width, height, format, type, pixels);
    494 }
    495 
    496 void GL_APIENTRY glReleaseShaderCompiler() {
    497   glGetInterfacePPAPI()->ReleaseShaderCompiler(glGetCurrentContextPPAPI());
    498 }
    499 
    500 void GL_APIENTRY glRenderbufferStorage(
    501     GLenum target, GLenum internalformat, GLsizei width, GLsizei height) {
    502   glGetInterfacePPAPI()->RenderbufferStorage(
    503       glGetCurrentContextPPAPI(), target, internalformat, width, height);
    504 }
    505 
    506 void GL_APIENTRY glSampleCoverage(GLclampf value, GLboolean invert) {
    507   glGetInterfacePPAPI()->SampleCoverage(
    508       glGetCurrentContextPPAPI(), value, invert);
    509 }
    510 
    511 void GL_APIENTRY glScissor(GLint x, GLint y, GLsizei width, GLsizei height) {
    512   glGetInterfacePPAPI()->Scissor(
    513       glGetCurrentContextPPAPI(), x, y, width, height);
    514 }
    515 
    516 void GL_APIENTRY glShaderBinary(
    517     GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary,
    518     GLsizei length) {
    519   glGetInterfacePPAPI()->ShaderBinary(
    520       glGetCurrentContextPPAPI(), n, shaders, binaryformat, binary, length);
    521 }
    522 
    523 void GL_APIENTRY glShaderSource(
    524     GLuint shader, GLsizei count, const char** str, const GLint* length) {
    525   glGetInterfacePPAPI()->ShaderSource(
    526       glGetCurrentContextPPAPI(), shader, count, str, length);
    527 }
    528 
    529 void GL_APIENTRY glStencilFunc(GLenum func, GLint ref, GLuint mask) {
    530   glGetInterfacePPAPI()->StencilFunc(
    531       glGetCurrentContextPPAPI(), func, ref, mask);
    532 }
    533 
    534 void GL_APIENTRY glStencilFuncSeparate(
    535     GLenum face, GLenum func, GLint ref, GLuint mask) {
    536   glGetInterfacePPAPI()->StencilFuncSeparate(
    537       glGetCurrentContextPPAPI(), face, func, ref, mask);
    538 }
    539 
    540 void GL_APIENTRY glStencilMask(GLuint mask) {
    541   glGetInterfacePPAPI()->StencilMask(glGetCurrentContextPPAPI(), mask);
    542 }
    543 
    544 void GL_APIENTRY glStencilMaskSeparate(GLenum face, GLuint mask) {
    545   glGetInterfacePPAPI()->StencilMaskSeparate(
    546       glGetCurrentContextPPAPI(), face, mask);
    547 }
    548 
    549 void GL_APIENTRY glStencilOp(GLenum fail, GLenum zfail, GLenum zpass) {
    550   glGetInterfacePPAPI()->StencilOp(
    551       glGetCurrentContextPPAPI(), fail, zfail, zpass);
    552 }
    553 
    554 void GL_APIENTRY glStencilOpSeparate(
    555     GLenum face, GLenum fail, GLenum zfail, GLenum zpass) {
    556   glGetInterfacePPAPI()->StencilOpSeparate(
    557       glGetCurrentContextPPAPI(), face, fail, zfail, zpass);
    558 }
    559 
    560 void GL_APIENTRY glTexImage2D(
    561     GLenum target, GLint level, GLint internalformat, GLsizei width,
    562     GLsizei height, GLint border, GLenum format, GLenum type,
    563     const void* pixels) {
    564   glGetInterfacePPAPI()->TexImage2D(
    565       glGetCurrentContextPPAPI(), target, level, internalformat, width, height,
    566       border, format, type, pixels);
    567 }
    568 
    569 void GL_APIENTRY glTexParameterf(GLenum target, GLenum pname, GLfloat param) {
    570   glGetInterfacePPAPI()->TexParameterf(
    571       glGetCurrentContextPPAPI(), target, pname, param);
    572 }
    573 
    574 void GL_APIENTRY glTexParameterfv(
    575     GLenum target, GLenum pname, const GLfloat* params) {
    576   glGetInterfacePPAPI()->TexParameterfv(
    577       glGetCurrentContextPPAPI(), target, pname, params);
    578 }
    579 
    580 void GL_APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param) {
    581   glGetInterfacePPAPI()->TexParameteri(
    582       glGetCurrentContextPPAPI(), target, pname, param);
    583 }
    584 
    585 void GL_APIENTRY glTexParameteriv(
    586     GLenum target, GLenum pname, const GLint* params) {
    587   glGetInterfacePPAPI()->TexParameteriv(
    588       glGetCurrentContextPPAPI(), target, pname, params);
    589 }
    590 
    591 void GL_APIENTRY glTexSubImage2D(
    592     GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width,
    593     GLsizei height, GLenum format, GLenum type, const void* pixels) {
    594   glGetInterfacePPAPI()->TexSubImage2D(
    595       glGetCurrentContextPPAPI(), target, level, xoffset, yoffset, width,
    596       height, format, type, pixels);
    597 }
    598 
    599 void GL_APIENTRY glUniform1f(GLint location, GLfloat x) {
    600   glGetInterfacePPAPI()->Uniform1f(glGetCurrentContextPPAPI(), location, x);
    601 }
    602 
    603 void GL_APIENTRY glUniform1fv(
    604     GLint location, GLsizei count, const GLfloat* v) {
    605   glGetInterfacePPAPI()->Uniform1fv(
    606       glGetCurrentContextPPAPI(), location, count, v);
    607 }
    608 
    609 void GL_APIENTRY glUniform1i(GLint location, GLint x) {
    610   glGetInterfacePPAPI()->Uniform1i(glGetCurrentContextPPAPI(), location, x);
    611 }
    612 
    613 void GL_APIENTRY glUniform1iv(GLint location, GLsizei count, const GLint* v) {
    614   glGetInterfacePPAPI()->Uniform1iv(
    615       glGetCurrentContextPPAPI(), location, count, v);
    616 }
    617 
    618 void GL_APIENTRY glUniform2f(GLint location, GLfloat x, GLfloat y) {
    619   glGetInterfacePPAPI()->Uniform2f(glGetCurrentContextPPAPI(), location, x, y);
    620 }
    621 
    622 void GL_APIENTRY glUniform2fv(
    623     GLint location, GLsizei count, const GLfloat* v) {
    624   glGetInterfacePPAPI()->Uniform2fv(
    625       glGetCurrentContextPPAPI(), location, count, v);
    626 }
    627 
    628 void GL_APIENTRY glUniform2i(GLint location, GLint x, GLint y) {
    629   glGetInterfacePPAPI()->Uniform2i(glGetCurrentContextPPAPI(), location, x, y);
    630 }
    631 
    632 void GL_APIENTRY glUniform2iv(GLint location, GLsizei count, const GLint* v) {
    633   glGetInterfacePPAPI()->Uniform2iv(
    634       glGetCurrentContextPPAPI(), location, count, v);
    635 }
    636 
    637 void GL_APIENTRY glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) {
    638   glGetInterfacePPAPI()->Uniform3f(
    639       glGetCurrentContextPPAPI(), location, x, y, z);
    640 }
    641 
    642 void GL_APIENTRY glUniform3fv(
    643     GLint location, GLsizei count, const GLfloat* v) {
    644   glGetInterfacePPAPI()->Uniform3fv(
    645       glGetCurrentContextPPAPI(), location, count, v);
    646 }
    647 
    648 void GL_APIENTRY glUniform3i(GLint location, GLint x, GLint y, GLint z) {
    649   glGetInterfacePPAPI()->Uniform3i(
    650       glGetCurrentContextPPAPI(), location, x, y, z);
    651 }
    652 
    653 void GL_APIENTRY glUniform3iv(GLint location, GLsizei count, const GLint* v) {
    654   glGetInterfacePPAPI()->Uniform3iv(
    655       glGetCurrentContextPPAPI(), location, count, v);
    656 }
    657 
    658 void GL_APIENTRY glUniform4f(
    659     GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) {
    660   glGetInterfacePPAPI()->Uniform4f(
    661       glGetCurrentContextPPAPI(), location, x, y, z, w);
    662 }
    663 
    664 void GL_APIENTRY glUniform4fv(
    665     GLint location, GLsizei count, const GLfloat* v) {
    666   glGetInterfacePPAPI()->Uniform4fv(
    667       glGetCurrentContextPPAPI(), location, count, v);
    668 }
    669 
    670 void GL_APIENTRY glUniform4i(
    671     GLint location, GLint x, GLint y, GLint z, GLint w) {
    672   glGetInterfacePPAPI()->Uniform4i(
    673       glGetCurrentContextPPAPI(), location, x, y, z, w);
    674 }
    675 
    676 void GL_APIENTRY glUniform4iv(GLint location, GLsizei count, const GLint* v) {
    677   glGetInterfacePPAPI()->Uniform4iv(
    678       glGetCurrentContextPPAPI(), location, count, v);
    679 }
    680 
    681 void GL_APIENTRY glUniformMatrix2fv(
    682     GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) {
    683   glGetInterfacePPAPI()->UniformMatrix2fv(
    684       glGetCurrentContextPPAPI(), location, count, transpose, value);
    685 }
    686 
    687 void GL_APIENTRY glUniformMatrix3fv(
    688     GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) {
    689   glGetInterfacePPAPI()->UniformMatrix3fv(
    690       glGetCurrentContextPPAPI(), location, count, transpose, value);
    691 }
    692 
    693 void GL_APIENTRY glUniformMatrix4fv(
    694     GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) {
    695   glGetInterfacePPAPI()->UniformMatrix4fv(
    696       glGetCurrentContextPPAPI(), location, count, transpose, value);
    697 }
    698 
    699 void GL_APIENTRY glUseProgram(GLuint program) {
    700   glGetInterfacePPAPI()->UseProgram(glGetCurrentContextPPAPI(), program);
    701 }
    702 
    703 void GL_APIENTRY glValidateProgram(GLuint program) {
    704   glGetInterfacePPAPI()->ValidateProgram(glGetCurrentContextPPAPI(), program);
    705 }
    706 
    707 void GL_APIENTRY glVertexAttrib1f(GLuint indx, GLfloat x) {
    708   glGetInterfacePPAPI()->VertexAttrib1f(glGetCurrentContextPPAPI(), indx, x);
    709 }
    710 
    711 void GL_APIENTRY glVertexAttrib1fv(GLuint indx, const GLfloat* values) {
    712   glGetInterfacePPAPI()->VertexAttrib1fv(
    713       glGetCurrentContextPPAPI(), indx, values);
    714 }
    715 
    716 void GL_APIENTRY glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) {
    717   glGetInterfacePPAPI()->VertexAttrib2f(
    718       glGetCurrentContextPPAPI(), indx, x, y);
    719 }
    720 
    721 void GL_APIENTRY glVertexAttrib2fv(GLuint indx, const GLfloat* values) {
    722   glGetInterfacePPAPI()->VertexAttrib2fv(
    723       glGetCurrentContextPPAPI(), indx, values);
    724 }
    725 
    726 void GL_APIENTRY glVertexAttrib3f(
    727     GLuint indx, GLfloat x, GLfloat y, GLfloat z) {
    728   glGetInterfacePPAPI()->VertexAttrib3f(
    729       glGetCurrentContextPPAPI(), indx, x, y, z);
    730 }
    731 
    732 void GL_APIENTRY glVertexAttrib3fv(GLuint indx, const GLfloat* values) {
    733   glGetInterfacePPAPI()->VertexAttrib3fv(
    734       glGetCurrentContextPPAPI(), indx, values);
    735 }
    736 
    737 void GL_APIENTRY glVertexAttrib4f(
    738     GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) {
    739   glGetInterfacePPAPI()->VertexAttrib4f(
    740       glGetCurrentContextPPAPI(), indx, x, y, z, w);
    741 }
    742 
    743 void GL_APIENTRY glVertexAttrib4fv(GLuint indx, const GLfloat* values) {
    744   glGetInterfacePPAPI()->VertexAttrib4fv(
    745       glGetCurrentContextPPAPI(), indx, values);
    746 }
    747 
    748 void GL_APIENTRY glVertexAttribPointer(
    749     GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride,
    750     const void* ptr) {
    751   glGetInterfacePPAPI()->VertexAttribPointer(
    752       glGetCurrentContextPPAPI(), indx, size, type, normalized, stride, ptr);
    753 }
    754 
    755 void GL_APIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height) {
    756   glGetInterfacePPAPI()->Viewport(
    757       glGetCurrentContextPPAPI(), x, y, width, height);
    758 }
    759 
    760 void GL_APIENTRY glBlitFramebufferEXT(
    761     GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0,
    762     GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) {
    763   const struct PPB_OpenGLES2FramebufferBlit* ext =
    764       glGetFramebufferBlitInterfacePPAPI();
    765   if (ext)
    766     ext->BlitFramebufferEXT(
    767         glGetCurrentContextPPAPI(), srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
    768         dstX1, dstY1, mask, filter);
    769 }
    770 
    771 void GL_APIENTRY glRenderbufferStorageMultisampleEXT(
    772     GLenum target, GLsizei samples, GLenum internalformat, GLsizei width,
    773     GLsizei height) {
    774   const struct PPB_OpenGLES2FramebufferMultisample* ext =
    775       glGetFramebufferMultisampleInterfacePPAPI();
    776   if (ext)
    777     ext->RenderbufferStorageMultisampleEXT(
    778         glGetCurrentContextPPAPI(), target, samples, internalformat, width,
    779         height);
    780 }
    781 
    782 void GL_APIENTRY glGenQueriesEXT(GLsizei n, GLuint* queries) {
    783   const struct PPB_OpenGLES2Query* ext = glGetQueryInterfacePPAPI();
    784   if (ext)
    785     ext->GenQueriesEXT(glGetCurrentContextPPAPI(), n, queries);
    786 }
    787 
    788 void GL_APIENTRY glDeleteQueriesEXT(GLsizei n, const GLuint* queries) {
    789   const struct PPB_OpenGLES2Query* ext = glGetQueryInterfacePPAPI();
    790   if (ext)
    791     ext->DeleteQueriesEXT(glGetCurrentContextPPAPI(), n, queries);
    792 }
    793 
    794 GLboolean GL_APIENTRY glIsQueryEXT(GLuint id) {
    795   const struct PPB_OpenGLES2Query* ext = glGetQueryInterfacePPAPI();
    796   if (ext)
    797     return ext->IsQueryEXT(glGetCurrentContextPPAPI(), id);
    798   return 0;
    799 }
    800 
    801 void GL_APIENTRY glBeginQueryEXT(GLenum target, GLuint id) {
    802   const struct PPB_OpenGLES2Query* ext = glGetQueryInterfacePPAPI();
    803   if (ext)
    804     ext->BeginQueryEXT(glGetCurrentContextPPAPI(), target, id);
    805 }
    806 
    807 void GL_APIENTRY glEndQueryEXT(GLenum target) {
    808   const struct PPB_OpenGLES2Query* ext = glGetQueryInterfacePPAPI();
    809   if (ext)
    810     ext->EndQueryEXT(glGetCurrentContextPPAPI(), target);
    811 }
    812 
    813 void GL_APIENTRY glGetQueryivEXT(GLenum target, GLenum pname, GLint* params) {
    814   const struct PPB_OpenGLES2Query* ext = glGetQueryInterfacePPAPI();
    815   if (ext)
    816     ext->GetQueryivEXT(glGetCurrentContextPPAPI(), target, pname, params);
    817 }
    818 
    819 void GL_APIENTRY glGetQueryObjectuivEXT(
    820     GLuint id, GLenum pname, GLuint* params) {
    821   const struct PPB_OpenGLES2Query* ext = glGetQueryInterfacePPAPI();
    822   if (ext)
    823     ext->GetQueryObjectuivEXT(glGetCurrentContextPPAPI(), id, pname, params);
    824 }
    825 
    826 GLboolean GL_APIENTRY glEnableFeatureCHROMIUM(const char* feature) {
    827   const struct PPB_OpenGLES2ChromiumEnableFeature* ext =
    828       glGetChromiumEnableFeatureInterfacePPAPI();
    829   if (ext)
    830     return ext->EnableFeatureCHROMIUM(glGetCurrentContextPPAPI(), feature);
    831   return 0;
    832 }
    833 
    834 void* GL_APIENTRY glMapBufferSubDataCHROMIUM(
    835     GLuint target, GLintptr offset, GLsizeiptr size, GLenum access) {
    836   const struct PPB_OpenGLES2ChromiumMapSub* ext =
    837       glGetChromiumMapSubInterfacePPAPI();
    838   if (ext)
    839     return ext->MapBufferSubDataCHROMIUM(
    840         glGetCurrentContextPPAPI(), target, offset, size, access);
    841   return 0;
    842 }
    843 
    844 void GL_APIENTRY glUnmapBufferSubDataCHROMIUM(const void* mem) {
    845   const struct PPB_OpenGLES2ChromiumMapSub* ext =
    846       glGetChromiumMapSubInterfacePPAPI();
    847   if (ext)
    848     ext->UnmapBufferSubDataCHROMIUM(glGetCurrentContextPPAPI(), mem);
    849 }
    850 
    851 void* GL_APIENTRY glMapTexSubImage2DCHROMIUM(
    852     GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width,
    853     GLsizei height, GLenum format, GLenum type, GLenum access) {
    854   const struct PPB_OpenGLES2ChromiumMapSub* ext =
    855       glGetChromiumMapSubInterfacePPAPI();
    856   if (ext)
    857     return ext->MapTexSubImage2DCHROMIUM(
    858         glGetCurrentContextPPAPI(), target, level, xoffset, yoffset, width,
    859         height, format, type, access);
    860   return 0;
    861 }
    862 
    863 void GL_APIENTRY glUnmapTexSubImage2DCHROMIUM(const void* mem) {
    864   const struct PPB_OpenGLES2ChromiumMapSub* ext =
    865       glGetChromiumMapSubInterfacePPAPI();
    866   if (ext)
    867     ext->UnmapTexSubImage2DCHROMIUM(glGetCurrentContextPPAPI(), mem);
    868 }
    869 
    870 void GL_APIENTRY glDrawArraysInstancedANGLE(
    871     GLenum mode, GLint first, GLsizei count, GLsizei primcount) {
    872   const struct PPB_OpenGLES2InstancedArrays* ext =
    873       glGetInstancedArraysInterfacePPAPI();
    874   if (ext)
    875     ext->DrawArraysInstancedANGLE(
    876         glGetCurrentContextPPAPI(), mode, first, count, primcount);
    877 }
    878 
    879 void GL_APIENTRY glDrawElementsInstancedANGLE(
    880     GLenum mode, GLsizei count, GLenum type, const void* indices,
    881     GLsizei primcount) {
    882   const struct PPB_OpenGLES2InstancedArrays* ext =
    883       glGetInstancedArraysInterfacePPAPI();
    884   if (ext)
    885     ext->DrawElementsInstancedANGLE(
    886         glGetCurrentContextPPAPI(), mode, count, type, indices, primcount);
    887 }
    888 
    889 void GL_APIENTRY glVertexAttribDivisorANGLE(GLuint index, GLuint divisor) {
    890   const struct PPB_OpenGLES2InstancedArrays* ext =
    891       glGetInstancedArraysInterfacePPAPI();
    892   if (ext)
    893     ext->VertexAttribDivisorANGLE(glGetCurrentContextPPAPI(), index, divisor);
    894 }
    895 
    896