| Index: gpu/skia_bindings/gl_bindings_skia_cmd_buffer.cc
|
| diff --git a/gpu/skia_bindings/gl_bindings_skia_cmd_buffer.cc b/gpu/skia_bindings/gl_bindings_skia_cmd_buffer.cc
|
| index e0ff4df3ce7615915d2cf88b5d07293689c3c6bb..7f96b3b1216ad67a665263f0b60c7064c3763c7d 100644
|
| --- a/gpu/skia_bindings/gl_bindings_skia_cmd_buffer.cc
|
| +++ b/gpu/skia_bindings/gl_bindings_skia_cmd_buffer.cc
|
| @@ -4,179 +4,248 @@
|
|
|
| #include "gpu/skia_bindings/gl_bindings_skia_cmd_buffer.h"
|
|
|
| -#ifndef GL_GLEXT_PROTOTYPES
|
| -#define GL_GLEXT_PROTOTYPES
|
| -#endif
|
| -#include "base/logging.h"
|
| -#include "gpu/GLES2/gl2extchromium.h"
|
| -#include "third_party/khronos/GLES2/gl2.h"
|
| -#include "third_party/khronos/GLES2/gl2ext.h"
|
| +#include "gpu/command_buffer/client/gles2_interface.h"
|
| #include "third_party/skia/include/gpu/gl/GrGLInterface.h"
|
|
|
| +using gpu::gles2::GLES2Interface;
|
| +
|
| +namespace {
|
| +template <typename R, typename... Args>
|
| +std::function<R(Args...)> gles_bind(R (GLES2Interface::*func)(Args...),
|
| + GLES2Interface* gles2Interface) {
|
| + return [func, gles2Interface](Args... args) {
|
| + return (gles2Interface->*func)(args...);
|
| + };
|
| +}
|
| +} // namespace
|
| +
|
| namespace skia_bindings {
|
|
|
| -void InitCommandBufferSkiaGLBinding(GrGLInterface* interface) {
|
| +void InitGLES2InterfaceBindings(GrGLInterface* interface,
|
| + GLES2Interface* impl) {
|
| interface->fStandard = kGLES_GrGLStandard;
|
| - interface->fExtensions.init(kGLES_GrGLStandard,
|
| - glGetString,
|
| - nullptr,
|
| - glGetIntegerv);
|
| + interface->fExtensions.init(
|
| + kGLES_GrGLStandard, gles_bind(&GLES2Interface::GetString, impl), nullptr,
|
| + gles_bind(&GLES2Interface::GetIntegerv, impl));
|
|
|
| GrGLInterface::Functions* functions = &interface->fFunctions;
|
| - functions->fActiveTexture = glActiveTexture;
|
| - functions->fAttachShader = glAttachShader;
|
| - functions->fBindAttribLocation = glBindAttribLocation;
|
| - functions->fBindBuffer = glBindBuffer;
|
| - functions->fBindTexture = glBindTexture;
|
| - functions->fBindVertexArray = glBindVertexArrayOES;
|
| - functions->fBlendBarrier = glBlendBarrierKHR;
|
| - functions->fBlendColor = glBlendColor;
|
| - functions->fBlendEquation = glBlendEquation;
|
| - functions->fBlendFunc = glBlendFunc;
|
| - functions->fBufferData = glBufferData;
|
| - functions->fBufferSubData = glBufferSubData;
|
| - functions->fClear = glClear;
|
| - functions->fClearColor = glClearColor;
|
| - functions->fClearStencil = glClearStencil;
|
| - functions->fColorMask = glColorMask;
|
| - functions->fCompileShader = glCompileShader;
|
| - functions->fCompressedTexImage2D = glCompressedTexImage2D;
|
| - functions->fCopyTexSubImage2D = glCopyTexSubImage2D;
|
| - functions->fCreateProgram = glCreateProgram;
|
| - functions->fCreateShader = glCreateShader;
|
| - functions->fCullFace = glCullFace;
|
| - functions->fDeleteBuffers = glDeleteBuffers;
|
| - functions->fDeleteProgram = glDeleteProgram;
|
| - functions->fDeleteShader = glDeleteShader;
|
| - functions->fDeleteTextures = glDeleteTextures;
|
| - functions->fDeleteVertexArrays = glDeleteVertexArraysOES;
|
| - functions->fDepthMask = glDepthMask;
|
| - functions->fDisable = glDisable;
|
| - functions->fDisableVertexAttribArray = glDisableVertexAttribArray;
|
| - functions->fDiscardFramebuffer = glDiscardFramebufferEXT;
|
| - functions->fDrawArrays = glDrawArrays;
|
| - functions->fDrawElements = glDrawElements;
|
| - functions->fEnable = glEnable;
|
| - functions->fEnableVertexAttribArray = glEnableVertexAttribArray;
|
| - functions->fFinish = glFinish;
|
| - functions->fFlush = glFlush;
|
| - functions->fFrontFace = glFrontFace;
|
| - functions->fGenBuffers = glGenBuffers;
|
| - functions->fGenTextures = glGenTextures;
|
| - functions->fGenVertexArrays = glGenVertexArraysOES;
|
| - functions->fGetBufferParameteriv = glGetBufferParameteriv;
|
| - functions->fGetError = glGetError;
|
| - functions->fGetIntegerv = glGetIntegerv;
|
| - functions->fGetProgramInfoLog = glGetProgramInfoLog;
|
| - functions->fGetProgramiv = glGetProgramiv;
|
| - functions->fGetShaderInfoLog = glGetShaderInfoLog;
|
| - functions->fGetShaderiv = glGetShaderiv;
|
| - functions->fGetShaderPrecisionFormat = glGetShaderPrecisionFormat;
|
| - functions->fGetString = glGetString;
|
| - functions->fGetUniformLocation = glGetUniformLocation;
|
| - functions->fInsertEventMarker = glInsertEventMarkerEXT;
|
| - functions->fLineWidth = glLineWidth;
|
| - functions->fLinkProgram = glLinkProgram;
|
| - functions->fMapBufferSubData = glMapBufferSubDataCHROMIUM;
|
| - functions->fMapTexSubImage2D = glMapTexSubImage2DCHROMIUM;
|
| - functions->fPixelStorei = glPixelStorei;
|
| - functions->fPopGroupMarker = glPopGroupMarkerEXT;
|
| - functions->fPushGroupMarker = glPushGroupMarkerEXT;
|
| - functions->fReadPixels = glReadPixels;
|
| - functions->fScissor = glScissor;
|
| - functions->fShaderSource = glShaderSource;
|
| - functions->fStencilFunc = glStencilFunc;
|
| - functions->fStencilFuncSeparate = glStencilFuncSeparate;
|
| - functions->fStencilMask = glStencilMask;
|
| - functions->fStencilMaskSeparate = glStencilMaskSeparate;
|
| - functions->fStencilOp = glStencilOp;
|
| - functions->fStencilOpSeparate = glStencilOpSeparate;
|
| - functions->fTexImage2D = glTexImage2D;
|
| - functions->fTexParameteri = glTexParameteri;
|
| - functions->fTexParameteriv = glTexParameteriv;
|
| - functions->fTexStorage2D = glTexStorage2DEXT;
|
| - functions->fTexSubImage2D = glTexSubImage2D;
|
| - functions->fUniform1f = glUniform1f;
|
| - functions->fUniform1i = glUniform1i;
|
| - functions->fUniform1fv = glUniform1fv;
|
| - functions->fUniform1iv = glUniform1iv;
|
| - functions->fUniform2f = glUniform2f;
|
| - functions->fUniform2i = glUniform2i;
|
| - functions->fUniform2fv = glUniform2fv;
|
| - functions->fUniform2iv = glUniform2iv;
|
| - functions->fUniform3f = glUniform3f;
|
| - functions->fUniform3i = glUniform3i;
|
| - functions->fUniform3fv = glUniform3fv;
|
| - functions->fUniform3iv = glUniform3iv;
|
| - functions->fUniform4f = glUniform4f;
|
| - functions->fUniform4i = glUniform4i;
|
| - functions->fUniform4fv = glUniform4fv;
|
| - functions->fUniform4iv = glUniform4iv;
|
| - functions->fUniformMatrix2fv = glUniformMatrix2fv;
|
| - functions->fUniformMatrix3fv = glUniformMatrix3fv;
|
| - functions->fUniformMatrix4fv = glUniformMatrix4fv;
|
| - functions->fUnmapBufferSubData = glUnmapBufferSubDataCHROMIUM;
|
| - functions->fUnmapTexSubImage2D = glUnmapTexSubImage2DCHROMIUM;
|
| - functions->fUseProgram = glUseProgram;
|
| - functions->fVertexAttrib1f = glVertexAttrib1f;
|
| - functions->fVertexAttrib2fv = glVertexAttrib2fv;
|
| - functions->fVertexAttrib3fv = glVertexAttrib3fv;
|
| - functions->fVertexAttrib4fv = glVertexAttrib4fv;
|
| - functions->fVertexAttribPointer = glVertexAttribPointer;
|
| - functions->fViewport = glViewport;
|
| - functions->fBindFramebuffer = glBindFramebuffer;
|
| - functions->fBindRenderbuffer = glBindRenderbuffer;
|
| - functions->fCheckFramebufferStatus = glCheckFramebufferStatus;
|
| - functions->fDeleteFramebuffers = glDeleteFramebuffers;
|
| - functions->fDeleteRenderbuffers = glDeleteRenderbuffers;
|
| - functions->fFramebufferRenderbuffer = glFramebufferRenderbuffer;
|
| - functions->fFramebufferTexture2D = glFramebufferTexture2D;
|
| + functions->fActiveTexture = gles_bind(&GLES2Interface::ActiveTexture, impl);
|
| + functions->fAttachShader = gles_bind(&GLES2Interface::AttachShader, impl);
|
| + functions->fBindAttribLocation =
|
| + gles_bind(&GLES2Interface::BindAttribLocation, impl);
|
| + functions->fBindBuffer = gles_bind(&GLES2Interface::BindBuffer, impl);
|
| + functions->fBindTexture = gles_bind(&GLES2Interface::BindTexture, impl);
|
| + functions->fBindVertexArray =
|
| + gles_bind(&GLES2Interface::BindVertexArrayOES, impl);
|
| + functions->fBlendBarrier = gles_bind(&GLES2Interface::BlendBarrierKHR, impl);
|
| + functions->fBlendColor = gles_bind(&GLES2Interface::BlendColor, impl);
|
| + functions->fBlendEquation = gles_bind(&GLES2Interface::BlendEquation, impl);
|
| + functions->fBlendFunc = gles_bind(&GLES2Interface::BlendFunc, impl);
|
| + functions->fBufferData = gles_bind(&GLES2Interface::BufferData, impl);
|
| + functions->fBufferSubData = gles_bind(&GLES2Interface::BufferSubData, impl);
|
| + functions->fClear = gles_bind(&GLES2Interface::Clear, impl);
|
| + functions->fClearColor = gles_bind(&GLES2Interface::ClearColor, impl);
|
| + functions->fClearStencil = gles_bind(&GLES2Interface::ClearStencil, impl);
|
| + functions->fColorMask = gles_bind(&GLES2Interface::ColorMask, impl);
|
| + functions->fCompileShader = gles_bind(&GLES2Interface::CompileShader, impl);
|
| + functions->fCompressedTexImage2D =
|
| + gles_bind(&GLES2Interface::CompressedTexImage2D, impl);
|
| + functions->fCopyTexSubImage2D =
|
| + gles_bind(&GLES2Interface::CopyTexSubImage2D, impl);
|
| + functions->fCreateProgram = gles_bind(&GLES2Interface::CreateProgram, impl);
|
| + functions->fCreateShader = gles_bind(&GLES2Interface::CreateShader, impl);
|
| + functions->fCullFace = gles_bind(&GLES2Interface::CullFace, impl);
|
| + functions->fDeleteBuffers = gles_bind(&GLES2Interface::DeleteBuffers, impl);
|
| + functions->fDeleteProgram = gles_bind(&GLES2Interface::DeleteProgram, impl);
|
| + functions->fDeleteShader = gles_bind(&GLES2Interface::DeleteShader, impl);
|
| + functions->fDeleteTextures = gles_bind(&GLES2Interface::DeleteTextures, impl);
|
| + functions->fDeleteVertexArrays =
|
| + gles_bind(&GLES2Interface::DeleteVertexArraysOES, impl);
|
| + functions->fDepthMask = gles_bind(&GLES2Interface::DepthMask, impl);
|
| + functions->fDisable = gles_bind(&GLES2Interface::Disable, impl);
|
| + functions->fDisableVertexAttribArray =
|
| + gles_bind(&GLES2Interface::DisableVertexAttribArray, impl);
|
| + functions->fDiscardFramebuffer =
|
| + gles_bind(&GLES2Interface::DiscardFramebufferEXT, impl);
|
| + functions->fDrawArrays = gles_bind(&GLES2Interface::DrawArrays, impl);
|
| + functions->fDrawElements = gles_bind(&GLES2Interface::DrawElements, impl);
|
| + functions->fEnable = gles_bind(&GLES2Interface::Enable, impl);
|
| + functions->fEnableVertexAttribArray =
|
| + gles_bind(&GLES2Interface::EnableVertexAttribArray, impl);
|
| + functions->fFinish = gles_bind(&GLES2Interface::Finish, impl);
|
| + functions->fFlush = gles_bind(&GLES2Interface::Flush, impl);
|
| + functions->fFrontFace = gles_bind(&GLES2Interface::FrontFace, impl);
|
| + functions->fGenBuffers = gles_bind(&GLES2Interface::GenBuffers, impl);
|
| + functions->fGenTextures = gles_bind(&GLES2Interface::GenTextures, impl);
|
| + functions->fGenVertexArrays =
|
| + gles_bind(&GLES2Interface::GenVertexArraysOES, impl);
|
| + functions->fGetBufferParameteriv =
|
| + gles_bind(&GLES2Interface::GetBufferParameteriv, impl);
|
| + functions->fGetError = gles_bind(&GLES2Interface::GetError, impl);
|
| + functions->fGetIntegerv = gles_bind(&GLES2Interface::GetIntegerv, impl);
|
| + functions->fGetProgramInfoLog =
|
| + gles_bind(&GLES2Interface::GetProgramInfoLog, impl);
|
| + functions->fGetProgramiv = gles_bind(&GLES2Interface::GetProgramiv, impl);
|
| + functions->fGetShaderInfoLog =
|
| + gles_bind(&GLES2Interface::GetShaderInfoLog, impl);
|
| + functions->fGetShaderiv = gles_bind(&GLES2Interface::GetShaderiv, impl);
|
| + functions->fGetShaderPrecisionFormat =
|
| + gles_bind(&GLES2Interface::GetShaderPrecisionFormat, impl);
|
| + functions->fGetString = gles_bind(&GLES2Interface::GetString, impl);
|
| + functions->fGetUniformLocation =
|
| + gles_bind(&GLES2Interface::GetUniformLocation, impl);
|
| + functions->fInsertEventMarker =
|
| + gles_bind(&GLES2Interface::InsertEventMarkerEXT, impl);
|
| + functions->fLineWidth = gles_bind(&GLES2Interface::LineWidth, impl);
|
| + functions->fLinkProgram = gles_bind(&GLES2Interface::LinkProgram, impl);
|
| + functions->fMapBufferSubData =
|
| + gles_bind(&GLES2Interface::MapBufferSubDataCHROMIUM, impl);
|
| + functions->fMapTexSubImage2D =
|
| + gles_bind(&GLES2Interface::MapTexSubImage2DCHROMIUM, impl);
|
| + functions->fPixelStorei = gles_bind(&GLES2Interface::PixelStorei, impl);
|
| + functions->fPopGroupMarker =
|
| + gles_bind(&GLES2Interface::PopGroupMarkerEXT, impl);
|
| + functions->fPushGroupMarker =
|
| + gles_bind(&GLES2Interface::PushGroupMarkerEXT, impl);
|
| + functions->fReadPixels = gles_bind(&GLES2Interface::ReadPixels, impl);
|
| + functions->fScissor = gles_bind(&GLES2Interface::Scissor, impl);
|
| + functions->fShaderSource = gles_bind(&GLES2Interface::ShaderSource, impl);
|
| + functions->fStencilFunc = gles_bind(&GLES2Interface::StencilFunc, impl);
|
| + functions->fStencilFuncSeparate =
|
| + gles_bind(&GLES2Interface::StencilFuncSeparate, impl);
|
| + functions->fStencilMask = gles_bind(&GLES2Interface::StencilMask, impl);
|
| + functions->fStencilMaskSeparate =
|
| + gles_bind(&GLES2Interface::StencilMaskSeparate, impl);
|
| + functions->fStencilOp = gles_bind(&GLES2Interface::StencilOp, impl);
|
| + functions->fStencilOpSeparate =
|
| + gles_bind(&GLES2Interface::StencilOpSeparate, impl);
|
| + functions->fTexImage2D = gles_bind(&GLES2Interface::TexImage2D, impl);
|
| + functions->fTexParameteri = gles_bind(&GLES2Interface::TexParameteri, impl);
|
| + functions->fTexParameteriv = gles_bind(&GLES2Interface::TexParameteriv, impl);
|
| + functions->fTexStorage2D = gles_bind(&GLES2Interface::TexStorage2DEXT, impl);
|
| + functions->fTexSubImage2D = gles_bind(&GLES2Interface::TexSubImage2D, impl);
|
| + functions->fUniform1f = gles_bind(&GLES2Interface::Uniform1f, impl);
|
| + functions->fUniform1i = gles_bind(&GLES2Interface::Uniform1i, impl);
|
| + functions->fUniform1fv = gles_bind(&GLES2Interface::Uniform1fv, impl);
|
| + functions->fUniform1iv = gles_bind(&GLES2Interface::Uniform1iv, impl);
|
| + functions->fUniform2f = gles_bind(&GLES2Interface::Uniform2f, impl);
|
| + functions->fUniform2i = gles_bind(&GLES2Interface::Uniform2i, impl);
|
| + functions->fUniform2fv = gles_bind(&GLES2Interface::Uniform2fv, impl);
|
| + functions->fUniform2iv = gles_bind(&GLES2Interface::Uniform2iv, impl);
|
| + functions->fUniform3f = gles_bind(&GLES2Interface::Uniform3f, impl);
|
| + functions->fUniform3i = gles_bind(&GLES2Interface::Uniform3i, impl);
|
| + functions->fUniform3fv = gles_bind(&GLES2Interface::Uniform3fv, impl);
|
| + functions->fUniform3iv = gles_bind(&GLES2Interface::Uniform3iv, impl);
|
| + functions->fUniform4f = gles_bind(&GLES2Interface::Uniform4f, impl);
|
| + functions->fUniform4i = gles_bind(&GLES2Interface::Uniform4i, impl);
|
| + functions->fUniform4fv = gles_bind(&GLES2Interface::Uniform4fv, impl);
|
| + functions->fUniform4iv = gles_bind(&GLES2Interface::Uniform4iv, impl);
|
| + functions->fUniformMatrix2fv =
|
| + gles_bind(&GLES2Interface::UniformMatrix2fv, impl);
|
| + functions->fUniformMatrix3fv =
|
| + gles_bind(&GLES2Interface::UniformMatrix3fv, impl);
|
| + functions->fUniformMatrix4fv =
|
| + gles_bind(&GLES2Interface::UniformMatrix4fv, impl);
|
| + functions->fUnmapBufferSubData =
|
| + gles_bind(&GLES2Interface::UnmapBufferSubDataCHROMIUM, impl);
|
| + functions->fUnmapTexSubImage2D =
|
| + gles_bind(&GLES2Interface::UnmapTexSubImage2DCHROMIUM, impl);
|
| + functions->fUseProgram = gles_bind(&GLES2Interface::UseProgram, impl);
|
| + functions->fVertexAttrib1f = gles_bind(&GLES2Interface::VertexAttrib1f, impl);
|
| + functions->fVertexAttrib2fv =
|
| + gles_bind(&GLES2Interface::VertexAttrib2fv, impl);
|
| + functions->fVertexAttrib3fv =
|
| + gles_bind(&GLES2Interface::VertexAttrib3fv, impl);
|
| + functions->fVertexAttrib4fv =
|
| + gles_bind(&GLES2Interface::VertexAttrib4fv, impl);
|
| + functions->fVertexAttribPointer =
|
| + gles_bind(&GLES2Interface::VertexAttribPointer, impl);
|
| + functions->fViewport = gles_bind(&GLES2Interface::Viewport, impl);
|
| + functions->fBindFramebuffer =
|
| + gles_bind(&GLES2Interface::BindFramebuffer, impl);
|
| + functions->fBindRenderbuffer =
|
| + gles_bind(&GLES2Interface::BindRenderbuffer, impl);
|
| + functions->fCheckFramebufferStatus =
|
| + gles_bind(&GLES2Interface::CheckFramebufferStatus, impl);
|
| + functions->fDeleteFramebuffers =
|
| + gles_bind(&GLES2Interface::DeleteFramebuffers, impl);
|
| + functions->fDeleteRenderbuffers =
|
| + gles_bind(&GLES2Interface::DeleteRenderbuffers, impl);
|
| + functions->fFramebufferRenderbuffer =
|
| + gles_bind(&GLES2Interface::FramebufferRenderbuffer, impl);
|
| + functions->fFramebufferTexture2D =
|
| + gles_bind(&GLES2Interface::FramebufferTexture2D, impl);
|
| functions->fFramebufferTexture2DMultisample =
|
| - glFramebufferTexture2DMultisampleEXT;
|
| - functions->fGenFramebuffers = glGenFramebuffers;
|
| - functions->fGenRenderbuffers = glGenRenderbuffers;
|
| + gles_bind(&GLES2Interface::FramebufferTexture2DMultisampleEXT, impl);
|
| + functions->fGenFramebuffers =
|
| + gles_bind(&GLES2Interface::GenFramebuffers, impl);
|
| + functions->fGenRenderbuffers =
|
| + gles_bind(&GLES2Interface::GenRenderbuffers, impl);
|
| functions->fGetFramebufferAttachmentParameteriv =
|
| - glGetFramebufferAttachmentParameteriv;
|
| - functions->fGetRenderbufferParameteriv = glGetRenderbufferParameteriv;
|
| - functions->fRenderbufferStorage = glRenderbufferStorage;
|
| + gles_bind(&GLES2Interface::GetFramebufferAttachmentParameteriv, impl);
|
| + functions->fGetRenderbufferParameteriv =
|
| + gles_bind(&GLES2Interface::GetRenderbufferParameteriv, impl);
|
| + functions->fRenderbufferStorage =
|
| + gles_bind(&GLES2Interface::RenderbufferStorage, impl);
|
| functions->fRenderbufferStorageMultisample =
|
| - glRenderbufferStorageMultisampleCHROMIUM;
|
| + gles_bind(&GLES2Interface::RenderbufferStorageMultisampleCHROMIUM, impl);
|
| functions->fRenderbufferStorageMultisampleES2EXT =
|
| - glRenderbufferStorageMultisampleEXT;
|
| - functions->fBindFragDataLocation = glBindFragDataLocationEXT;
|
| - functions->fBindFragDataLocationIndexed = glBindFragDataLocationIndexedEXT;
|
| - functions->fBindUniformLocation = glBindUniformLocationCHROMIUM;
|
| - functions->fBlitFramebuffer = glBlitFramebufferCHROMIUM;
|
| - functions->fGenerateMipmap = glGenerateMipmap;
|
| - functions->fMatrixLoadf = glMatrixLoadfCHROMIUM;
|
| - functions->fMatrixLoadIdentity = glMatrixLoadIdentityCHROMIUM;
|
| - functions->fPathCommands = glPathCommandsCHROMIUM;
|
| - functions->fPathParameteri = glPathParameteriCHROMIUM;
|
| - functions->fPathParameterf = glPathParameterfCHROMIUM;
|
| - functions->fGenPaths = glGenPathsCHROMIUM;
|
| - functions->fIsPath = glIsPathCHROMIUM;
|
| - functions->fDeletePaths = glDeletePathsCHROMIUM;
|
| - functions->fPathStencilFunc = glPathStencilFuncCHROMIUM;
|
| - functions->fStencilFillPath = glStencilFillPathCHROMIUM;
|
| - functions->fStencilStrokePath = glStencilStrokePathCHROMIUM;
|
| - functions->fCoverFillPath = glCoverFillPathCHROMIUM;
|
| - functions->fCoverStrokePath = glCoverStrokePathCHROMIUM;
|
| - functions->fStencilThenCoverFillPath = glStencilThenCoverFillPathCHROMIUM;
|
| + gles_bind(&GLES2Interface::RenderbufferStorageMultisampleEXT, impl);
|
| + functions->fBindFragDataLocation =
|
| + gles_bind(&GLES2Interface::BindFragDataLocationEXT, impl);
|
| + functions->fBindFragDataLocationIndexed =
|
| + gles_bind(&GLES2Interface::BindFragDataLocationIndexedEXT, impl);
|
| + functions->fBindUniformLocation =
|
| + gles_bind(&GLES2Interface::BindUniformLocationCHROMIUM, impl);
|
| + functions->fBlitFramebuffer =
|
| + gles_bind(&GLES2Interface::BlitFramebufferCHROMIUM, impl);
|
| + functions->fGenerateMipmap = gles_bind(&GLES2Interface::GenerateMipmap, impl);
|
| + functions->fMatrixLoadf =
|
| + gles_bind(&GLES2Interface::MatrixLoadfCHROMIUM, impl);
|
| + functions->fMatrixLoadIdentity =
|
| + gles_bind(&GLES2Interface::MatrixLoadIdentityCHROMIUM, impl);
|
| + functions->fPathCommands =
|
| + gles_bind(&GLES2Interface::PathCommandsCHROMIUM, impl);
|
| + functions->fPathParameteri =
|
| + gles_bind(&GLES2Interface::PathParameteriCHROMIUM, impl);
|
| + functions->fPathParameterf =
|
| + gles_bind(&GLES2Interface::PathParameterfCHROMIUM, impl);
|
| + functions->fGenPaths = gles_bind(&GLES2Interface::GenPathsCHROMIUM, impl);
|
| + functions->fIsPath = gles_bind(&GLES2Interface::IsPathCHROMIUM, impl);
|
| + functions->fDeletePaths =
|
| + gles_bind(&GLES2Interface::DeletePathsCHROMIUM, impl);
|
| + functions->fPathStencilFunc =
|
| + gles_bind(&GLES2Interface::PathStencilFuncCHROMIUM, impl);
|
| + functions->fStencilFillPath =
|
| + gles_bind(&GLES2Interface::StencilFillPathCHROMIUM, impl);
|
| + functions->fStencilStrokePath =
|
| + gles_bind(&GLES2Interface::StencilStrokePathCHROMIUM, impl);
|
| + functions->fCoverFillPath =
|
| + gles_bind(&GLES2Interface::CoverFillPathCHROMIUM, impl);
|
| + functions->fCoverStrokePath =
|
| + gles_bind(&GLES2Interface::CoverStrokePathCHROMIUM, impl);
|
| + functions->fStencilThenCoverFillPath =
|
| + gles_bind(&GLES2Interface::StencilThenCoverFillPathCHROMIUM, impl);
|
| functions->fStencilThenCoverStrokePath =
|
| - glStencilThenCoverStrokePathCHROMIUM;
|
| - functions->fStencilFillPathInstanced = glStencilFillPathInstancedCHROMIUM;
|
| + gles_bind(&GLES2Interface::StencilThenCoverStrokePathCHROMIUM, impl);
|
| + functions->fStencilFillPathInstanced =
|
| + gles_bind(&GLES2Interface::StencilFillPathInstancedCHROMIUM, impl);
|
| functions->fStencilStrokePathInstanced =
|
| - glStencilStrokePathInstancedCHROMIUM;
|
| - functions->fCoverFillPathInstanced = glCoverFillPathInstancedCHROMIUM;
|
| - functions->fCoverStrokePathInstanced = glCoverStrokePathInstancedCHROMIUM;
|
| - functions->fStencilThenCoverFillPathInstanced =
|
| - glStencilThenCoverFillPathInstancedCHROMIUM;
|
| - functions->fStencilThenCoverStrokePathInstanced =
|
| - glStencilThenCoverStrokePathInstancedCHROMIUM;
|
| + gles_bind(&GLES2Interface::StencilStrokePathInstancedCHROMIUM, impl);
|
| + functions->fCoverFillPathInstanced =
|
| + gles_bind(&GLES2Interface::CoverFillPathInstancedCHROMIUM, impl);
|
| + functions->fCoverStrokePathInstanced =
|
| + gles_bind(&GLES2Interface::CoverStrokePathInstancedCHROMIUM, impl);
|
| + functions->fStencilThenCoverFillPathInstanced = gles_bind(
|
| + &GLES2Interface::StencilThenCoverFillPathInstancedCHROMIUM, impl);
|
| + functions->fStencilThenCoverStrokePathInstanced = gles_bind(
|
| + &GLES2Interface::StencilThenCoverStrokePathInstancedCHROMIUM, impl);
|
| functions->fProgramPathFragmentInputGen =
|
| - glProgramPathFragmentInputGenCHROMIUM;
|
| - functions->fBindFragmentInputLocation = glBindFragmentInputLocationCHROMIUM;
|
| - functions->fCoverageModulation = glCoverageModulationCHROMIUM;
|
| + gles_bind(&GLES2Interface::ProgramPathFragmentInputGenCHROMIUM, impl);
|
| + functions->fBindFragmentInputLocation =
|
| + gles_bind(&GLES2Interface::BindFragmentInputLocationCHROMIUM, impl);
|
| + functions->fCoverageModulation =
|
| + gles_bind(&GLES2Interface::CoverageModulationCHROMIUM, impl);
|
| }
|
|
|
| -} // namespace skia
|
| +} // namespace skia_bindings
|
|
|