Add glCopyTexSubImage2D to GrGLInterface

Author: bsalomon@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13941006

git-svn-id: http://skia.googlecode.com/svn/trunk@8634 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
commit-bot@chromium.org 2013-04-11 22:00:34 +00:00
parent 63150afcc0
commit 98168bb394
14 changed files with 130 additions and 99 deletions

View File

@ -64,6 +64,7 @@ extern "C" {
typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLColorMaskProc)(GrGLboolean red, GrGLboolean green, GrGLboolean blue, GrGLboolean alpha); typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLColorMaskProc)(GrGLboolean red, GrGLboolean green, GrGLboolean blue, GrGLboolean alpha);
typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLCompileShaderProc)(GrGLuint shader); typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLCompileShaderProc)(GrGLuint shader);
typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLCompressedTexImage2DProc)(GrGLenum target, GrGLint level, GrGLenum internalformat, GrGLsizei width, GrGLsizei height, GrGLint border, GrGLsizei imageSize, const GrGLvoid* data); typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLCompressedTexImage2DProc)(GrGLenum target, GrGLint level, GrGLenum internalformat, GrGLsizei width, GrGLsizei height, GrGLint border, GrGLsizei imageSize, const GrGLvoid* data);
typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLCopyTexSubImage2DProc)(GrGLenum target, GrGLint level, GrGLint xoffset, GrGLint yoffset, GrGLint x, GrGLint y, GrGLsizei width, GrGLsizei height);
typedef GrGLuint (GR_GL_FUNCTION_TYPE* GrGLCreateProgramProc)(void); typedef GrGLuint (GR_GL_FUNCTION_TYPE* GrGLCreateProgramProc)(void);
typedef GrGLuint (GR_GL_FUNCTION_TYPE* GrGLCreateShaderProc)(GrGLenum type); typedef GrGLuint (GR_GL_FUNCTION_TYPE* GrGLCreateShaderProc)(GrGLenum type);
typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLCullFaceProc)(GrGLenum mode); typedef GrGLvoid (GR_GL_FUNCTION_TYPE* GrGLCullFaceProc)(GrGLenum mode);

View File

@ -159,6 +159,7 @@ public:
GLPtr<GrGLColorMaskProc> fColorMask; GLPtr<GrGLColorMaskProc> fColorMask;
GLPtr<GrGLCompileShaderProc> fCompileShader; GLPtr<GrGLCompileShaderProc> fCompileShader;
GLPtr<GrGLCompressedTexImage2DProc> fCompressedTexImage2D; GLPtr<GrGLCompressedTexImage2DProc> fCompressedTexImage2D;
GLPtr<GrGLCopyTexSubImage2DProc> fCopyTexSubImage2D;
GLPtr<GrGLCreateProgramProc> fCreateProgram; GLPtr<GrGLCreateProgramProc> fCreateProgram;
GLPtr<GrGLCreateShaderProc> fCreateShader; GLPtr<GrGLCreateShaderProc> fCreateShader;
GLPtr<GrGLCullFaceProc> fCullFace; GLPtr<GrGLCullFaceProc> fCullFace;

View File

@ -179,6 +179,7 @@ const GrGLInterface* GrGLCreateNullInterface() {
interface->fColorMask = noOpGLColorMask; interface->fColorMask = noOpGLColorMask;
interface->fCompileShader = noOpGLCompileShader; interface->fCompileShader = noOpGLCompileShader;
interface->fCompressedTexImage2D = noOpGLCompressedTexImage2D; interface->fCompressedTexImage2D = noOpGLCompressedTexImage2D;
interface->fCopyTexSubImage2D = noOpGLCopyTexSubImage2D;
interface->fCreateProgram = nullGLCreateProgram; interface->fCreateProgram = nullGLCreateProgram;
interface->fCreateShader = nullGLCreateShader; interface->fCreateShader = nullGLCreateShader;
interface->fCullFace = noOpGLCullFace; interface->fCullFace = noOpGLCullFace;

View File

@ -59,6 +59,9 @@ bool GrGLInterface::validate(GrGLBinding binding) const {
NULL == fClearStencil || NULL == fClearStencil ||
NULL == fColorMask || NULL == fColorMask ||
NULL == fCompileShader || NULL == fCompileShader ||
#if 0 // FIXME: Remove this once Chromium is updated to provide this function
NULL == fCopyTexSubImage2D ||
#endif
NULL == fCreateProgram || NULL == fCreateProgram ||
NULL == fCreateShader || NULL == fCreateShader ||
NULL == fCullFace || NULL == fCullFace ||

View File

@ -100,6 +100,16 @@ GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCompressedTexImage2D(GrGLenum target,
const GrGLvoid* data) { const GrGLvoid* data) {
} }
GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCopyTexSubImage2D(GrGLenum target,
GrGLint level,
GrGLint xoffset,
GrGLint yoffset,
GrGLint x,
GrGLint y,
GrGLsizei width,
GrGLsizei height) {
}
GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCullFace(GrGLenum mode) { GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCullFace(GrGLenum mode) {
} }

View File

@ -55,6 +55,15 @@ GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCompressedTexImage2D(GrGLenum target,
GrGLsizei imageSize, GrGLsizei imageSize,
const GrGLvoid* data); const GrGLvoid* data);
GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCopyTexSubImage2D(GrGLenum target,
GrGLint level,
GrGLint xoffset,
GrGLint yoffset,
GrGLint x,
GrGLint y,
GrGLsizei width,
GrGLsizei height);
GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCullFace(GrGLenum mode); GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCullFace(GrGLenum mode);
GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDepthMask(GrGLboolean flag); GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDepthMask(GrGLboolean flag);

View File

@ -37,6 +37,7 @@ const GrGLInterface* GrGLCreateNativeInterface() {
interface->fColorMask = glColorMask; interface->fColorMask = glColorMask;
interface->fCompileShader = glCompileShader; interface->fCompileShader = glCompileShader;
interface->fCompressedTexImage2D = glCompressedTexImage2D; interface->fCompressedTexImage2D = glCompressedTexImage2D;
interface->fCopyTexSubImage2D = glCopyTexSubImage2D;
interface->fCreateProgram = glCreateProgram; interface->fCreateProgram = glCreateProgram;
interface->fCreateShader = glCreateShader; interface->fCreateShader = glCreateShader;
interface->fCullFace = glCullFace; interface->fCullFace = glCullFace;

View File

@ -17,8 +17,8 @@
#include "GLES2/gl2ext.h" #include "GLES2/gl2ext.h"
#include "EGL/egl.h" #include "EGL/egl.h"
#define GR_GET_PROC(procType, baseName) \ #define GET_PROC(name) \
interface->f ## baseName = (procType) GetProcAddress(ghANGLELib, "gl" #baseName); interface->f ## name = (GrGL ## name ## Proc) GetProcAddress(ghANGLELib, "gl" #name);
const GrGLInterface* GrGLCreateANGLEInterface() { const GrGLInterface* GrGLCreateANGLEInterface() {
@ -39,117 +39,116 @@ const GrGLInterface* GrGLCreateANGLEInterface() {
glInterface.reset(interface); glInterface.reset(interface);
interface->fBindingsExported = kES2_GrGLBinding; interface->fBindingsExported = kES2_GrGLBinding;
GR_GET_PROC(GrGLActiveTextureProc, ActiveTexture); GET_PROC(ActiveTexture);
GR_GET_PROC(GrGLAttachShaderProc, AttachShader); GET_PROC(AttachShader);
GR_GET_PROC(GrGLBindAttribLocationProc, BindAttribLocation); GET_PROC(BindAttribLocation);
GR_GET_PROC(GrGLBindBufferProc, BindBuffer); GET_PROC(BindBuffer);
GR_GET_PROC(GrGLBindTextureProc, BindTexture); GET_PROC(BindTexture);
interface->fBindVertexArray = interface->fBindVertexArray =
(GrGLBindVertexArrayProc) eglGetProcAddress("glBindVertexArrayOES"); (GrGLBindVertexArrayProc) eglGetProcAddress("glBindVertexArrayOES");
GR_GET_PROC(GrGLBlendColorProc, BlendColor); GET_PROC(BlendColor);
GR_GET_PROC(GrGLBlendFuncProc, BlendFunc); GET_PROC(BlendFunc);
GR_GET_PROC(GrGLBufferDataProc, BufferData); GET_PROC(BufferData);
GR_GET_PROC(GrGLBufferSubDataProc, BufferSubData); GET_PROC(BufferSubData);
GR_GET_PROC(GrGLClearProc, Clear); GET_PROC(Clear);
GR_GET_PROC(GrGLClearColorProc, ClearColor); GET_PROC(ClearColor);
GR_GET_PROC(GrGLClearStencilProc, ClearStencil); GET_PROC(ClearStencil);
GR_GET_PROC(GrGLColorMaskProc, ColorMask); GET_PROC(ColorMask);
GR_GET_PROC(GrGLCompileShaderProc, CompileShader); GET_PROC(CompileShader);
GR_GET_PROC(GrGLCompressedTexImage2DProc, CompressedTexImage2D); GET_PROC(CompressedTexImage2D);
GR_GET_PROC(GrGLCreateProgramProc, CreateProgram); GET_PROC(CopyTexSubImage2D);
GR_GET_PROC(GrGLCreateShaderProc, CreateShader); GET_PROC(CreateProgram);
GR_GET_PROC(GrGLCullFaceProc, CullFace); GET_PROC(CreateShader);
GR_GET_PROC(GrGLDeleteBuffersProc, DeleteBuffers); GET_PROC(CullFace);
GR_GET_PROC(GrGLDeleteProgramProc, DeleteProgram); GET_PROC(DeleteBuffers);
GR_GET_PROC(GrGLDeleteShaderProc, DeleteShader); GET_PROC(DeleteProgram);
GR_GET_PROC(GrGLDeleteTexturesProc, DeleteTextures); GET_PROC(DeleteShader);
GET_PROC(DeleteTextures);
interface->fDeleteVertexArrays = interface->fDeleteVertexArrays =
(GrGLDeleteVertexArraysProc) eglGetProcAddress("glDeleteVertexArraysOES"); (GrGLDeleteVertexArraysProc) eglGetProcAddress("glDeleteVertexArraysOES");
GR_GET_PROC(GrGLDepthMaskProc, DepthMask); GET_PROC(DepthMask);
GR_GET_PROC(GrGLDisableProc, Disable); GET_PROC(Disable);
GR_GET_PROC(GrGLDisableVertexAttribArrayProc, DisableVertexAttribArray); GET_PROC(DisableVertexAttribArray);
GR_GET_PROC(GrGLDrawArraysProc, DrawArrays); GET_PROC(DrawArrays);
GR_GET_PROC(GrGLDrawElementsProc, DrawElements); GET_PROC(DrawElements);
GR_GET_PROC(GrGLEnableProc, Enable); GET_PROC(Enable);
GR_GET_PROC(GrGLEnableVertexAttribArrayProc, EnableVertexAttribArray); GET_PROC(EnableVertexAttribArray);
GR_GET_PROC(GrGLFinishProc, Finish); GET_PROC(Finish);
GR_GET_PROC(GrGLFlushProc, Flush); GET_PROC(Flush);
GR_GET_PROC(GrGLFrontFaceProc, FrontFace); GET_PROC(FrontFace);
GR_GET_PROC(GrGLGenBuffersProc, GenBuffers); GET_PROC(GenBuffers);
GR_GET_PROC(GrGLGenTexturesProc, GenTextures); GET_PROC(GenTextures);
interface->fGenVertexArrays = interface->fGenVertexArrays =
(GrGLGenVertexArraysProc) eglGetProcAddress("glGenVertexArraysOES"); (GrGLGenVertexArraysProc) eglGetProcAddress("glGenVertexArraysOES");
GR_GET_PROC(GrGLGetBufferParameterivProc, GetBufferParameteriv); GET_PROC(GetBufferParameteriv);
GR_GET_PROC(GrGLGetErrorProc, GetError); GET_PROC(GetError);
GR_GET_PROC(GrGLGetIntegervProc, GetIntegerv); GET_PROC(GetIntegerv);
GR_GET_PROC(GrGLGetProgramInfoLogProc, GetProgramInfoLog); GET_PROC(GetProgramInfoLog);
GR_GET_PROC(GrGLGetProgramivProc, GetProgramiv); GET_PROC(GetProgramiv);
GR_GET_PROC(GrGLGetShaderInfoLogProc, GetShaderInfoLog); GET_PROC(GetShaderInfoLog);
GR_GET_PROC(GrGLGetShaderivProc, GetShaderiv); GET_PROC(GetShaderiv);
GR_GET_PROC(GrGLGetStringProc, GetString); GET_PROC(GetString);
GR_GET_PROC(GrGLGetUniformLocationProc, GetUniformLocation); GET_PROC(GetUniformLocation);
GR_GET_PROC(GrGLLineWidthProc, LineWidth); GET_PROC(LineWidth);
GR_GET_PROC(GrGLLinkProgramProc, LinkProgram); GET_PROC(LinkProgram);
GR_GET_PROC(GrGLPixelStoreiProc, PixelStorei); GET_PROC(PixelStorei);
GR_GET_PROC(GrGLReadPixelsProc, ReadPixels); GET_PROC(ReadPixels);
GR_GET_PROC(GrGLScissorProc, Scissor); GET_PROC(Scissor);
GR_GET_PROC(GrGLShaderSourceProc, ShaderSource); GET_PROC(ShaderSource);
GR_GET_PROC(GrGLStencilFuncProc, StencilFunc); GET_PROC(StencilFunc);
GR_GET_PROC(GrGLStencilFuncSeparateProc, StencilFuncSeparate); GET_PROC(StencilFuncSeparate);
GR_GET_PROC(GrGLStencilMaskProc, StencilMask); GET_PROC(StencilMask);
GR_GET_PROC(GrGLStencilMaskSeparateProc, StencilMaskSeparate); GET_PROC(StencilMaskSeparate);
GR_GET_PROC(GrGLStencilOpProc, StencilOp); GET_PROC(StencilOp);
GR_GET_PROC(GrGLStencilOpSeparateProc, StencilOpSeparate); GET_PROC(StencilOpSeparate);
GR_GET_PROC(GrGLTexImage2DProc, TexImage2D); GET_PROC(TexImage2D);
GR_GET_PROC(GrGLTexParameteriProc, TexParameteri); GET_PROC(TexParameteri);
GR_GET_PROC(GrGLTexParameterivProc, TexParameteriv); GET_PROC(TexParameteriv);
GR_GET_PROC(GrGLTexSubImage2DProc, TexSubImage2D); GET_PROC(TexSubImage2D);
#if GL_ARB_texture_storage #if GL_ARB_texture_storage
GR_GET_PROC(GrGLTexStorage2DProc, TexStorage2D); GET_PROC(TexStorage2D);
#elif GL_EXT_texture_storage #elif GL_EXT_texture_storage
interface->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glTexStorage2DEXT"); interface->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glTexStorage2DEXT");
#endif #endif
GR_GET_PROC(GrGLUniform1fProc, Uniform1f); GET_PROC(Uniform1f);
GR_GET_PROC(GrGLUniform1iProc, Uniform1i); GET_PROC(Uniform1i);
GR_GET_PROC(GrGLUniform1fvProc, Uniform1fv); GET_PROC(Uniform1fv);
GR_GET_PROC(GrGLUniform1ivProc, Uniform1iv); GET_PROC(Uniform1iv);
GR_GET_PROC(GrGLUniform2fProc, Uniform2f); GET_PROC(Uniform2f);
GR_GET_PROC(GrGLUniform2iProc, Uniform2i); GET_PROC(Uniform2i);
GR_GET_PROC(GrGLUniform2fvProc, Uniform2fv); GET_PROC(Uniform2fv);
GR_GET_PROC(GrGLUniform2ivProc, Uniform2iv); GET_PROC(Uniform2iv);
GR_GET_PROC(GrGLUniform3fProc, Uniform3f); GET_PROC(Uniform3f);
GR_GET_PROC(GrGLUniform3iProc, Uniform3i); GET_PROC(Uniform3i);
GR_GET_PROC(GrGLUniform3fvProc, Uniform3fv); GET_PROC(Uniform3fv);
GR_GET_PROC(GrGLUniform3ivProc, Uniform3iv); GET_PROC(Uniform3iv);
GR_GET_PROC(GrGLUniform4fProc, Uniform4f); GET_PROC(Uniform4f);
GR_GET_PROC(GrGLUniform4iProc, Uniform4i); GET_PROC(Uniform4i);
GR_GET_PROC(GrGLUniform4fvProc, Uniform4fv); GET_PROC(Uniform4fv);
GR_GET_PROC(GrGLUniform4ivProc, Uniform4iv); GET_PROC(Uniform4iv);
GR_GET_PROC(GrGLUniformMatrix2fvProc, UniformMatrix2fv); GET_PROC(UniformMatrix2fv);
GR_GET_PROC(GrGLUniformMatrix3fvProc, UniformMatrix3fv); GET_PROC(UniformMatrix3fv);
GR_GET_PROC(GrGLUniformMatrix4fvProc, UniformMatrix4fv); GET_PROC(UniformMatrix4fv);
GR_GET_PROC(GrGLUseProgramProc, UseProgram); GET_PROC(UseProgram);
GR_GET_PROC(GrGLVertexAttrib4fvProc, VertexAttrib4fv); GET_PROC(VertexAttrib4fv);
GR_GET_PROC(GrGLVertexAttribPointerProc, VertexAttribPointer); GET_PROC(VertexAttribPointer);
GR_GET_PROC(GrGLViewportProc, Viewport); GET_PROC(Viewport);
GR_GET_PROC(GrGLBindFramebufferProc, BindFramebuffer); GET_PROC(BindFramebuffer);
GR_GET_PROC(GrGLBindRenderbufferProc, BindRenderbuffer); GET_PROC(BindRenderbuffer);
GR_GET_PROC(GrGLCheckFramebufferStatusProc, CheckFramebufferStatus); GET_PROC(CheckFramebufferStatus);
GR_GET_PROC(GrGLDeleteFramebuffersProc, DeleteFramebuffers); GET_PROC(DeleteFramebuffers);
GR_GET_PROC(GrGLDeleteRenderbuffersProc, DeleteRenderbuffers); GET_PROC(DeleteRenderbuffers);
GR_GET_PROC(GrGLFramebufferRenderbufferProc, FramebufferRenderbuffer); GET_PROC(FramebufferRenderbuffer);
GR_GET_PROC(GrGLFramebufferTexture2DProc, FramebufferTexture2D); GET_PROC(FramebufferTexture2D);
GR_GET_PROC(GrGLGenFramebuffersProc, GenFramebuffers); GET_PROC(GenFramebuffers);
GR_GET_PROC(GrGLGenRenderbuffersProc, GenRenderbuffers); GET_PROC(GenRenderbuffers);
GR_GET_PROC(GrGLGetFramebufferAttachmentParameterivProc, GET_PROC(GetFramebufferAttachmentParameteriv);
GetFramebufferAttachmentParameteriv); GET_PROC(GetRenderbufferParameteriv);
GR_GET_PROC(GrGLGetRenderbufferParameterivProc, GET_PROC(RenderbufferStorage);
GetRenderbufferParameteriv);
GR_GET_PROC(GrGLRenderbufferStorageProc, RenderbufferStorage);
interface->fMapBuffer = (GrGLMapBufferProc) eglGetProcAddress("glMapBufferOES"); interface->fMapBuffer = (GrGLMapBufferProc) eglGetProcAddress("glMapBufferOES");
interface->fUnmapBuffer = (GrGLUnmapBufferProc) eglGetProcAddress("glUnmapBufferOES"); interface->fUnmapBuffer = (GrGLUnmapBufferProc) eglGetProcAddress("glUnmapBufferOES");

View File

@ -797,6 +797,7 @@ const GrGLInterface* GrGLCreateDebugInterface() {
interface->fColorMask = noOpGLColorMask; interface->fColorMask = noOpGLColorMask;
interface->fCompileShader = noOpGLCompileShader; interface->fCompileShader = noOpGLCompileShader;
interface->fCompressedTexImage2D = noOpGLCompressedTexImage2D; interface->fCompressedTexImage2D = noOpGLCompressedTexImage2D;
interface->fCopyTexSubImage2D = noOpGLCopyTexSubImage2D;
interface->fCreateProgram = debugGLCreateProgram; interface->fCreateProgram = debugGLCreateProgram;
interface->fCreateShader = debugGLCreateShader; interface->fCreateShader = debugGLCreateShader;
interface->fCullFace = noOpGLCullFace; interface->fCullFace = noOpGLCullFace;

View File

@ -33,6 +33,7 @@ const GrGLInterface* GrGLCreateNativeInterface() {
interface->fColorMask = glColorMask; interface->fColorMask = glColorMask;
interface->fCompileShader = glCompileShader; interface->fCompileShader = glCompileShader;
interface->fCompressedTexImage2D = glCompressedTexImage2D; interface->fCompressedTexImage2D = glCompressedTexImage2D;
interface->fCopyTexSubImage2D = glCopyTexSubImage2D;
interface->fCreateProgram = glCreateProgram; interface->fCreateProgram = glCreateProgram;
interface->fCreateShader = glCreateShader; interface->fCreateShader = glCreateShader;
interface->fCullFace = glCullFace; interface->fCullFace = glCullFace;

View File

@ -87,6 +87,7 @@ const GrGLInterface* GrGLCreateNativeInterface() {
GET_PROC(ColorMask); GET_PROC(ColorMask);
GET_PROC(CompileShader); GET_PROC(CompileShader);
GET_PROC(CompressedTexImage2D); GET_PROC(CompressedTexImage2D);
GET_PROC(CopyTexSubImage2D);
GET_PROC(CreateProgram); GET_PROC(CreateProgram);
GET_PROC(CreateShader); GET_PROC(CreateShader);
GET_PROC(CullFace); GET_PROC(CullFace);

View File

@ -66,6 +66,7 @@ const GrGLInterface* GrGLCreateMesaInterface() {
GR_GL_GET_PROC(ColorMask); GR_GL_GET_PROC(ColorMask);
GR_GL_GET_PROC(CompileShader); GR_GL_GET_PROC(CompileShader);
GR_GL_GET_PROC(CompressedTexImage2D); GR_GL_GET_PROC(CompressedTexImage2D);
GR_GL_GET_PROC(CopyTexSubImage2D);
GR_GL_GET_PROC(CreateProgram); GR_GL_GET_PROC(CreateProgram);
GR_GL_GET_PROC(CreateShader); GR_GL_GET_PROC(CreateShader);
GR_GL_GET_PROC(CullFace); GR_GL_GET_PROC(CullFace);

View File

@ -66,6 +66,7 @@ const GrGLInterface* GrGLCreateNativeInterface() {
interface->fColorMask = glColorMask; interface->fColorMask = glColorMask;
GR_GL_GET_PROC(CompileShader); GR_GL_GET_PROC(CompileShader);
interface->fCompressedTexImage2D = glCompressedTexImage2D; interface->fCompressedTexImage2D = glCompressedTexImage2D;
interface->fCopyTexSubImage2D = glCopyTexSubImage2D;
GR_GL_GET_PROC(CreateProgram); GR_GL_GET_PROC(CreateProgram);
GR_GL_GET_PROC(CreateShader); GR_GL_GET_PROC(CreateShader);
interface->fCullFace = glCullFace; interface->fCullFace = glCullFace;

View File

@ -92,6 +92,7 @@ const GrGLInterface* GrGLCreateNativeInterface() {
SET_PROC(ClearColor) SET_PROC(ClearColor)
SET_PROC(ClearStencil) SET_PROC(ClearStencil)
SET_PROC(ColorMask) SET_PROC(ColorMask)
SET_PROC(CopyTexSubImage2D)
SET_PROC(CullFace) SET_PROC(CullFace)
SET_PROC(DeleteTextures) SET_PROC(DeleteTextures)
SET_PROC(DepthMask) SET_PROC(DepthMask)