Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(508)

Side by Side Diff: src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp

Issue 133073009: Move GrGLInterface function pointers into a nested struct (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: tip of tree Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Modified from chromium/src/webkit/glue/gl_bindings_skia_cmd_buffer.cc 1 // Modified from chromium/src/webkit/glue/gl_bindings_skia_cmd_buffer.cc
2 2
3 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 3 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
4 // Use of this source code is governed by a BSD-style license that can be 4 // Use of this source code is governed by a BSD-style license that can be
5 // found in the LICENSE file. 5 // found in the LICENSE file.
6 6
7 #include "gl/GrGLExtensions.h" 7 #include "gl/GrGLExtensions.h"
8 #include "gl/GrGLInterface.h" 8 #include "gl/GrGLInterface.h"
9 #include "gl/GrGLUtil.h" 9 #include "gl/GrGLUtil.h"
10 10
11 #ifndef GL_GLEXT_PROTOTYPES 11 #ifndef GL_GLEXT_PROTOTYPES
12 #define GL_GLEXT_PROTOTYPES 12 #define GL_GLEXT_PROTOTYPES
13 #endif 13 #endif
14 14
15 #include <GLES2/gl2.h> 15 #include <GLES2/gl2.h>
16 #include <GLES2/gl2ext.h> 16 #include <GLES2/gl2ext.h>
17 17
18 #include <EGL/egl.h> 18 #include <EGL/egl.h>
19 19
20 static GrGLInterface* create_es_interface(GrGLVersion version, 20 static GrGLInterface* create_es_interface(GrGLVersion version,
21 const GrGLExtensions& extensions) { 21 const GrGLExtensions& extensions) {
22 if (version < GR_GL_VER(2,0)) { 22 if (version < GR_GL_VER(2,0)) {
23 return NULL; 23 return NULL;
24 } 24 }
25 25
26 GrGLInterface* interface = SkNEW(GrGLInterface); 26 GrGLInterface* interface = SkNEW(GrGLInterface);
27 interface->fStandard = kGLES_GrGLStandard; 27 interface->fStandard = kGLES_GrGLStandard;
28 GrGLInterface::Functions* functions = &interface->fFunctions;
28 29
29 interface->fActiveTexture = glActiveTexture; 30 functions->fActiveTexture = glActiveTexture;
30 interface->fAttachShader = glAttachShader; 31 functions->fAttachShader = glAttachShader;
31 interface->fBindAttribLocation = glBindAttribLocation; 32 functions->fBindAttribLocation = glBindAttribLocation;
32 interface->fBindBuffer = glBindBuffer; 33 functions->fBindBuffer = glBindBuffer;
33 interface->fBindTexture = glBindTexture; 34 functions->fBindTexture = glBindTexture;
34 interface->fBindVertexArray = glBindVertexArrayOES; 35 functions->fBindVertexArray = glBindVertexArrayOES;
35 interface->fBlendColor = glBlendColor; 36 functions->fBlendColor = glBlendColor;
36 interface->fBlendFunc = glBlendFunc; 37 functions->fBlendFunc = glBlendFunc;
37 interface->fBufferData = glBufferData; 38 functions->fBufferData = glBufferData;
38 interface->fBufferSubData = glBufferSubData; 39 functions->fBufferSubData = glBufferSubData;
39 interface->fClear = glClear; 40 functions->fClear = glClear;
40 interface->fClearColor = glClearColor; 41 functions->fClearColor = glClearColor;
41 interface->fClearStencil = glClearStencil; 42 functions->fClearStencil = glClearStencil;
42 interface->fColorMask = glColorMask; 43 functions->fColorMask = glColorMask;
43 interface->fCompileShader = glCompileShader; 44 functions->fCompileShader = glCompileShader;
44 interface->fCompressedTexImage2D = glCompressedTexImage2D; 45 functions->fCompressedTexImage2D = glCompressedTexImage2D;
45 interface->fCopyTexSubImage2D = glCopyTexSubImage2D; 46 functions->fCopyTexSubImage2D = glCopyTexSubImage2D;
46 interface->fCreateProgram = glCreateProgram; 47 functions->fCreateProgram = glCreateProgram;
47 interface->fCreateShader = glCreateShader; 48 functions->fCreateShader = glCreateShader;
48 interface->fCullFace = glCullFace; 49 functions->fCullFace = glCullFace;
49 interface->fDeleteBuffers = glDeleteBuffers; 50 functions->fDeleteBuffers = glDeleteBuffers;
50 interface->fDeleteProgram = glDeleteProgram; 51 functions->fDeleteProgram = glDeleteProgram;
51 interface->fDeleteShader = glDeleteShader; 52 functions->fDeleteShader = glDeleteShader;
52 interface->fDeleteTextures = glDeleteTextures; 53 functions->fDeleteTextures = glDeleteTextures;
53 interface->fDeleteVertexArrays = glDeleteVertexArraysOES; 54 functions->fDeleteVertexArrays = glDeleteVertexArraysOES;
54 interface->fDepthMask = glDepthMask; 55 functions->fDepthMask = glDepthMask;
55 interface->fDisable = glDisable; 56 functions->fDisable = glDisable;
56 interface->fDisableVertexAttribArray = glDisableVertexAttribArray; 57 functions->fDisableVertexAttribArray = glDisableVertexAttribArray;
57 interface->fDrawArrays = glDrawArrays; 58 functions->fDrawArrays = glDrawArrays;
58 interface->fDrawElements = glDrawElements; 59 functions->fDrawElements = glDrawElements;
59 interface->fEnable = glEnable; 60 functions->fEnable = glEnable;
60 interface->fEnableVertexAttribArray = glEnableVertexAttribArray; 61 functions->fEnableVertexAttribArray = glEnableVertexAttribArray;
61 interface->fFinish = glFinish; 62 functions->fFinish = glFinish;
62 interface->fFlush = glFlush; 63 functions->fFlush = glFlush;
63 interface->fFrontFace = glFrontFace; 64 functions->fFrontFace = glFrontFace;
64 interface->fGenBuffers = glGenBuffers; 65 functions->fGenBuffers = glGenBuffers;
65 interface->fGenerateMipmap = glGenerateMipmap; 66 functions->fGenerateMipmap = glGenerateMipmap;
66 interface->fGenTextures = glGenTextures; 67 functions->fGenTextures = glGenTextures;
67 interface->fGenVertexArrays = glGenVertexArraysOES; 68 functions->fGenVertexArrays = glGenVertexArraysOES;
68 interface->fGetBufferParameteriv = glGetBufferParameteriv; 69 functions->fGetBufferParameteriv = glGetBufferParameteriv;
69 interface->fGetError = glGetError; 70 functions->fGetError = glGetError;
70 interface->fGetIntegerv = glGetIntegerv; 71 functions->fGetIntegerv = glGetIntegerv;
71 interface->fGetProgramInfoLog = glGetProgramInfoLog; 72 functions->fGetProgramInfoLog = glGetProgramInfoLog;
72 interface->fGetProgramiv = glGetProgramiv; 73 functions->fGetProgramiv = glGetProgramiv;
73 interface->fGetShaderInfoLog = glGetShaderInfoLog; 74 functions->fGetShaderInfoLog = glGetShaderInfoLog;
74 interface->fGetShaderiv = glGetShaderiv; 75 functions->fGetShaderiv = glGetShaderiv;
75 interface->fGetString = glGetString; 76 functions->fGetString = glGetString;
76 #if GL_ES_VERSION_30 77 #if GL_ES_VERSION_30
77 interface->fGetStringi = glGetStringi; 78 functions->fGetStringi = glGetStringi;
78 #else 79 #else
79 interface->fGetStringi = (GrGLGetStringiProc) eglGetProcAddress("glGetString i"); 80 functions->fGetStringi = (GrGLGetStringiProc) eglGetProcAddress("glGetString i");
80 #endif 81 #endif
81 interface->fGetUniformLocation = glGetUniformLocation; 82 functions->fGetUniformLocation = glGetUniformLocation;
82 interface->fLineWidth = glLineWidth; 83 functions->fLineWidth = glLineWidth;
83 interface->fLinkProgram = glLinkProgram; 84 functions->fLinkProgram = glLinkProgram;
84 interface->fPixelStorei = glPixelStorei; 85 functions->fPixelStorei = glPixelStorei;
85 interface->fReadPixels = glReadPixels; 86 functions->fReadPixels = glReadPixels;
86 interface->fScissor = glScissor; 87 functions->fScissor = glScissor;
87 #if GR_GL_USE_NEW_SHADER_SOURCE_SIGNATURE 88 #if GR_GL_USE_NEW_SHADER_SOURCE_SIGNATURE
88 interface->fShaderSource = (GrGLShaderSourceProc) glShaderSource; 89 functions->fShaderSource = (GrGLShaderSourceProc) glShaderSource;
89 #else 90 #else
90 interface->fShaderSource = glShaderSource; 91 functions->fShaderSource = glShaderSource;
91 #endif 92 #endif
92 interface->fStencilFunc = glStencilFunc; 93 functions->fStencilFunc = glStencilFunc;
93 interface->fStencilFuncSeparate = glStencilFuncSeparate; 94 functions->fStencilFuncSeparate = glStencilFuncSeparate;
94 interface->fStencilMask = glStencilMask; 95 functions->fStencilMask = glStencilMask;
95 interface->fStencilMaskSeparate = glStencilMaskSeparate; 96 functions->fStencilMaskSeparate = glStencilMaskSeparate;
96 interface->fStencilOp = glStencilOp; 97 functions->fStencilOp = glStencilOp;
97 interface->fStencilOpSeparate = glStencilOpSeparate; 98 functions->fStencilOpSeparate = glStencilOpSeparate;
98 interface->fTexImage2D = glTexImage2D; 99 functions->fTexImage2D = glTexImage2D;
99 interface->fTexParameteri = glTexParameteri; 100 functions->fTexParameteri = glTexParameteri;
100 interface->fTexParameteriv = glTexParameteriv; 101 functions->fTexParameteriv = glTexParameteriv;
101 interface->fTexSubImage2D = glTexSubImage2D; 102 functions->fTexSubImage2D = glTexSubImage2D;
102 103
103 if (version >= GR_GL_VER(3,0)) { 104 if (version >= GR_GL_VER(3,0)) {
104 #if GL_ES_VERSION_3_0 105 #if GL_ES_VERSION_3_0
105 interface->fTexStorage2D = glTexStorage2D; 106 functions->fTexStorage2D = glTexStorage2D;
106 #else 107 #else
107 interface->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glT exStorage2D"); 108 functions->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glT exStorage2D");
108 #endif 109 #endif
109 } else { 110 } else {
110 #if GL_EXT_texture_storage 111 #if GL_EXT_texture_storage
111 interface->fTexStorage2D = glTexStorage2DEXT; 112 functions->fTexStorage2D = glTexStorage2DEXT;
112 #else 113 #else
113 interface->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glT exStorage2DEXT"); 114 functions->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glT exStorage2DEXT");
114 #endif 115 #endif
115 } 116 }
116 117
117 #if GL_EXT_discard_framebuffer 118 #if GL_EXT_discard_framebuffer
118 interface->fDiscardFramebuffer = glDiscardFramebufferEXT; 119 functions->fDiscardFramebuffer = glDiscardFramebufferEXT;
119 #endif 120 #endif
120 interface->fUniform1f = glUniform1f; 121 functions->fUniform1f = glUniform1f;
121 interface->fUniform1i = glUniform1i; 122 functions->fUniform1i = glUniform1i;
122 interface->fUniform1fv = glUniform1fv; 123 functions->fUniform1fv = glUniform1fv;
123 interface->fUniform1iv = glUniform1iv; 124 functions->fUniform1iv = glUniform1iv;
124 interface->fUniform2f = glUniform2f; 125 functions->fUniform2f = glUniform2f;
125 interface->fUniform2i = glUniform2i; 126 functions->fUniform2i = glUniform2i;
126 interface->fUniform2fv = glUniform2fv; 127 functions->fUniform2fv = glUniform2fv;
127 interface->fUniform2iv = glUniform2iv; 128 functions->fUniform2iv = glUniform2iv;
128 interface->fUniform3f = glUniform3f; 129 functions->fUniform3f = glUniform3f;
129 interface->fUniform3i = glUniform3i; 130 functions->fUniform3i = glUniform3i;
130 interface->fUniform3fv = glUniform3fv; 131 functions->fUniform3fv = glUniform3fv;
131 interface->fUniform3iv = glUniform3iv; 132 functions->fUniform3iv = glUniform3iv;
132 interface->fUniform4f = glUniform4f; 133 functions->fUniform4f = glUniform4f;
133 interface->fUniform4i = glUniform4i; 134 functions->fUniform4i = glUniform4i;
134 interface->fUniform4fv = glUniform4fv; 135 functions->fUniform4fv = glUniform4fv;
135 interface->fUniform4iv = glUniform4iv; 136 functions->fUniform4iv = glUniform4iv;
136 interface->fUniformMatrix2fv = glUniformMatrix2fv; 137 functions->fUniformMatrix2fv = glUniformMatrix2fv;
137 interface->fUniformMatrix3fv = glUniformMatrix3fv; 138 functions->fUniformMatrix3fv = glUniformMatrix3fv;
138 interface->fUniformMatrix4fv = glUniformMatrix4fv; 139 functions->fUniformMatrix4fv = glUniformMatrix4fv;
139 interface->fUseProgram = glUseProgram; 140 functions->fUseProgram = glUseProgram;
140 interface->fVertexAttrib4fv = glVertexAttrib4fv; 141 functions->fVertexAttrib4fv = glVertexAttrib4fv;
141 interface->fVertexAttribPointer = glVertexAttribPointer; 142 functions->fVertexAttribPointer = glVertexAttribPointer;
142 interface->fViewport = glViewport; 143 functions->fViewport = glViewport;
143 interface->fBindFramebuffer = glBindFramebuffer; 144 functions->fBindFramebuffer = glBindFramebuffer;
144 interface->fBindRenderbuffer = glBindRenderbuffer; 145 functions->fBindRenderbuffer = glBindRenderbuffer;
145 interface->fCheckFramebufferStatus = glCheckFramebufferStatus; 146 functions->fCheckFramebufferStatus = glCheckFramebufferStatus;
146 interface->fDeleteFramebuffers = glDeleteFramebuffers; 147 functions->fDeleteFramebuffers = glDeleteFramebuffers;
147 interface->fDeleteRenderbuffers = glDeleteRenderbuffers; 148 functions->fDeleteRenderbuffers = glDeleteRenderbuffers;
148 interface->fFramebufferRenderbuffer = glFramebufferRenderbuffer; 149 functions->fFramebufferRenderbuffer = glFramebufferRenderbuffer;
149 interface->fFramebufferTexture2D = glFramebufferTexture2D; 150 functions->fFramebufferTexture2D = glFramebufferTexture2D;
150 151
151 if (version >= GR_GL_VER(3,0)) { 152 if (version >= GR_GL_VER(3,0)) {
152 #if GL_ES_VERSION_3_0 153 #if GL_ES_VERSION_3_0
153 interface->fRenderbufferStorageMultisample = glRenderbufferStorageMultis ample; 154 functions->fRenderbufferStorageMultisample = glRenderbufferStorageMultis ample;
154 interface->fBlitFramebuffer = glBlitFramebuffer; 155 functions->fBlitFramebuffer = glBlitFramebuffer;
155 #else 156 #else
156 interface->fRenderbufferStorageMultisample = (GrGLRenderbufferStorageMul tisampleProc) eglGetProcAddress("glRenderbufferStorageMultisample"); 157 functions->fRenderbufferStorageMultisample = (GrGLRenderbufferStorageMul tisampleProc) eglGetProcAddress("glRenderbufferStorageMultisample");
157 interface->fBlitFramebuffer = (GrGLBlitFramebufferProc) eglGetProcAddres s("glBlitFramebuffer"); 158 functions->fBlitFramebuffer = (GrGLBlitFramebufferProc) eglGetProcAddres s("glBlitFramebuffer");
158 #endif 159 #endif
159 } 160 }
160 161
161 if (extensions.has("GL_EXT_multisampled_render_to_texture")) { 162 if (extensions.has("GL_EXT_multisampled_render_to_texture")) {
162 #if GL_EXT_multisampled_render_to_texture 163 #if GL_EXT_multisampled_render_to_texture
163 interface->fFramebufferTexture2DMultisample = glFramebufferTexture2DMult isampleEXT; 164 functions->fFramebufferTexture2DMultisample = glFramebufferTexture2DMult isampleEXT;
164 interface->fRenderbufferStorageMultisampleES2EXT = glRenderbufferStorage MultisampleEXT; 165 functions->fRenderbufferStorageMultisampleES2EXT = glRenderbufferStorage MultisampleEXT;
165 #else 166 #else
166 interface->fFramebufferTexture2DMultisample = (GrGLFramebufferTexture2DM ultisampleProc) eglGetProcAddress("glFramebufferTexture2DMultisampleEXT"); 167 functions->fFramebufferTexture2DMultisample = (GrGLFramebufferTexture2DM ultisampleProc) eglGetProcAddress("glFramebufferTexture2DMultisampleEXT");
167 interface->fRenderbufferStorageMultisampleES2EXT = (GrGLRenderbufferStor ageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisampleEXT"); 168 functions->fRenderbufferStorageMultisampleES2EXT = (GrGLRenderbufferStor ageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisampleEXT");
168 #endif 169 #endif
169 } else if (extensions.has("GL_IMG_multisampled_render_to_texture")) { 170 } else if (extensions.has("GL_IMG_multisampled_render_to_texture")) {
170 #if GL_IMG_multisampled_render_to_texture 171 #if GL_IMG_multisampled_render_to_texture
171 interface->fFramebufferTexture2DMultisample = glFramebufferTexture2DMult isampleIMG; 172 functions->fFramebufferTexture2DMultisample = glFramebufferTexture2DMult isampleIMG;
172 interface->fRenderbufferStorageMultisampleES2EXT = glRenderbufferStorage MultisampleIMG; 173 functions->fRenderbufferStorageMultisampleES2EXT = glRenderbufferStorage MultisampleIMG;
173 #else 174 #else
174 interface->fFramebufferTexture2DMultisample = (GrGLFramebufferTexture2DM ultisampleProc) eglGetProcAddress("glFramebufferTexture2DMultisampleIMG"); 175 functions->fFramebufferTexture2DMultisample = (GrGLFramebufferTexture2DM ultisampleProc) eglGetProcAddress("glFramebufferTexture2DMultisampleIMG");
175 interface->fRenderbufferStorageMultisampleES2EXT = (GrGLRenderbufferStor ageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisampleIMG"); 176 functions->fRenderbufferStorageMultisampleES2EXT = (GrGLRenderbufferStor ageMultisampleProc) eglGetProcAddress("glRenderbufferStorageMultisampleIMG");
176 #endif 177 #endif
177 } 178 }
178 179
179 interface->fGenFramebuffers = glGenFramebuffers; 180 functions->fGenFramebuffers = glGenFramebuffers;
180 interface->fGenRenderbuffers = glGenRenderbuffers; 181 functions->fGenRenderbuffers = glGenRenderbuffers;
181 interface->fGetFramebufferAttachmentParameteriv = glGetFramebufferAttachment Parameteriv; 182 functions->fGetFramebufferAttachmentParameteriv = glGetFramebufferAttachment Parameteriv;
182 interface->fGetRenderbufferParameteriv = glGetRenderbufferParameteriv; 183 functions->fGetRenderbufferParameteriv = glGetRenderbufferParameteriv;
183 interface->fRenderbufferStorage = glRenderbufferStorage; 184 functions->fRenderbufferStorage = glRenderbufferStorage;
184 #if GL_OES_mapbuffer 185 #if GL_OES_mapbuffer
185 interface->fMapBuffer = glMapBufferOES; 186 functions->fMapBuffer = glMapBufferOES;
186 interface->fUnmapBuffer = glUnmapBufferOES; 187 functions->fUnmapBuffer = glUnmapBufferOES;
187 #else 188 #else
188 interface->fMapBuffer = (GrGLMapBufferProc) eglGetProcAddress("glMapBufferOE S"); 189 functions->fMapBuffer = (GrGLMapBufferProc) eglGetProcAddress("glMapBufferOE S");
189 interface->fUnmapBuffer = (GrGLUnmapBufferProc) eglGetProcAddress("glUnmapBu fferOES"); 190 functions->fUnmapBuffer = (GrGLUnmapBufferProc) eglGetProcAddress("glUnmapBu fferOES");
190 #endif 191 #endif
191 192
192 return interface; 193 return interface;
193 } 194 }
194 195
195 static GrGLInterface* create_desktop_interface(GrGLVersion version, 196 static GrGLInterface* create_desktop_interface(GrGLVersion version,
196 const GrGLExtensions& extensions) { 197 const GrGLExtensions& extensions) {
197 // Currently this assumes a 4.4 context or later. Supporting lower GL versio ns would require 198 // Currently this assumes a 4.4 context or later. Supporting lower GL versio ns would require
198 // getting suffixed versions of pointers for supported extensions. 199 // getting suffixed versions of pointers for supported extensions.
199 if (version < GR_GL_VER(4,4)) { 200 if (version < GR_GL_VER(4,4)) {
200 return NULL; 201 return NULL;
201 } 202 }
202 203
203 GrGLInterface* interface = SkNEW(GrGLInterface); 204 GrGLInterface* interface = SkNEW(GrGLInterface);
204 interface->fStandard = kGL_GrGLStandard; 205 interface->fStandard = kGL_GrGLStandard;
206 GrGLInterface::Functions* functions = &interface->fFunctions;
205 207
206 interface->fActiveTexture = (GrGLActiveTextureProc) eglGetProcAddress("glAct iveTexture"); 208 functions->fActiveTexture = (GrGLActiveTextureProc) eglGetProcAddress("glAct iveTexture");
207 interface->fAttachShader = (GrGLAttachShaderProc) eglGetProcAddress("glAttac hShader"); 209 functions->fAttachShader = (GrGLAttachShaderProc) eglGetProcAddress("glAttac hShader");
208 interface->fBeginQuery = (GrGLBeginQueryProc) eglGetProcAddress("glBeginQuer y"); 210 functions->fBeginQuery = (GrGLBeginQueryProc) eglGetProcAddress("glBeginQuer y");
209 interface->fBindAttribLocation = (GrGLBindAttribLocationProc) eglGetProcAddr ess("glBindAttribLocation"); 211 functions->fBindAttribLocation = (GrGLBindAttribLocationProc) eglGetProcAddr ess("glBindAttribLocation");
210 interface->fBindBuffer = (GrGLBindBufferProc) eglGetProcAddress("glBindBuffe r"); 212 functions->fBindBuffer = (GrGLBindBufferProc) eglGetProcAddress("glBindBuffe r");
211 interface->fBindFragDataLocation = (GrGLBindFragDataLocationProc) eglGetProc Address("glBindFragDataLocation"); 213 functions->fBindFragDataLocation = (GrGLBindFragDataLocationProc) eglGetProc Address("glBindFragDataLocation");
212 interface->fBindFragDataLocationIndexed = (GrGLBindFragDataLocationIndexedPr oc) eglGetProcAddress("glBindFragDataLocationIndexed"); 214 functions->fBindFragDataLocationIndexed = (GrGLBindFragDataLocationIndexedPr oc) eglGetProcAddress("glBindFragDataLocationIndexed");
213 interface->fBindFramebuffer = (GrGLBindFramebufferProc) eglGetProcAddress("g lBindFramebuffer"); 215 functions->fBindFramebuffer = (GrGLBindFramebufferProc) eglGetProcAddress("g lBindFramebuffer");
214 interface->fBindRenderbuffer = (GrGLBindRenderbufferProc) eglGetProcAddress( "glBindRenderbuffer"); 216 functions->fBindRenderbuffer = (GrGLBindRenderbufferProc) eglGetProcAddress( "glBindRenderbuffer");
215 interface->fBindTexture = (GrGLBindTextureProc) eglGetProcAddress("glBindTex ture"); 217 functions->fBindTexture = (GrGLBindTextureProc) eglGetProcAddress("glBindTex ture");
216 interface->fBindVertexArray = (GrGLBindVertexArrayProc) eglGetProcAddress("g lBindVertexArray"); 218 functions->fBindVertexArray = (GrGLBindVertexArrayProc) eglGetProcAddress("g lBindVertexArray");
217 interface->fBlendColor = (GrGLBlendColorProc) eglGetProcAddress("glBlendColo r"); 219 functions->fBlendColor = (GrGLBlendColorProc) eglGetProcAddress("glBlendColo r");
218 interface->fBlendFunc = (GrGLBlendFuncProc) eglGetProcAddress("glBlendFunc") ; 220 functions->fBlendFunc = (GrGLBlendFuncProc) eglGetProcAddress("glBlendFunc") ;
219 interface->fBlitFramebuffer = (GrGLBlitFramebufferProc) eglGetProcAddress("g lBlitFramebuffer"); 221 functions->fBlitFramebuffer = (GrGLBlitFramebufferProc) eglGetProcAddress("g lBlitFramebuffer");
220 interface->fBufferData = (GrGLBufferDataProc) eglGetProcAddress("glBufferDat a"); 222 functions->fBufferData = (GrGLBufferDataProc) eglGetProcAddress("glBufferDat a");
221 interface->fBufferSubData = (GrGLBufferSubDataProc) eglGetProcAddress("glBuf ferSubData"); 223 functions->fBufferSubData = (GrGLBufferSubDataProc) eglGetProcAddress("glBuf ferSubData");
222 interface->fCheckFramebufferStatus = (GrGLCheckFramebufferStatusProc) eglGet ProcAddress("glCheckFramebufferStatus"); 224 functions->fCheckFramebufferStatus = (GrGLCheckFramebufferStatusProc) eglGet ProcAddress("glCheckFramebufferStatus");
223 interface->fClear = (GrGLClearProc) eglGetProcAddress("glClear"); 225 functions->fClear = (GrGLClearProc) eglGetProcAddress("glClear");
224 interface->fClearColor = (GrGLClearColorProc) eglGetProcAddress("glClearColo r"); 226 functions->fClearColor = (GrGLClearColorProc) eglGetProcAddress("glClearColo r");
225 interface->fClearStencil = (GrGLClearStencilProc) eglGetProcAddress("glClear Stencil"); 227 functions->fClearStencil = (GrGLClearStencilProc) eglGetProcAddress("glClear Stencil");
226 interface->fClientActiveTexture = (GrGLClientActiveTextureProc) eglGetProcAd dress("glClientActiveTexture"); 228 functions->fClientActiveTexture = (GrGLClientActiveTextureProc) eglGetProcAd dress("glClientActiveTexture");
227 interface->fColorMask = (GrGLColorMaskProc) eglGetProcAddress("glColorMask") ; 229 functions->fColorMask = (GrGLColorMaskProc) eglGetProcAddress("glColorMask") ;
228 interface->fCompileShader = (GrGLCompileShaderProc) eglGetProcAddress("glCom pileShader"); 230 functions->fCompileShader = (GrGLCompileShaderProc) eglGetProcAddress("glCom pileShader");
229 interface->fCompressedTexImage2D = (GrGLCompressedTexImage2DProc) eglGetProc Address("glCompressedTexImage2D"); 231 functions->fCompressedTexImage2D = (GrGLCompressedTexImage2DProc) eglGetProc Address("glCompressedTexImage2D");
230 interface->fCopyTexSubImage2D = (GrGLCopyTexSubImage2DProc) eglGetProcAddres s("glCopyTexSubImage2D"); 232 functions->fCopyTexSubImage2D = (GrGLCopyTexSubImage2DProc) eglGetProcAddres s("glCopyTexSubImage2D");
231 interface->fCreateProgram = (GrGLCreateProgramProc) eglGetProcAddress("glCre ateProgram"); 233 functions->fCreateProgram = (GrGLCreateProgramProc) eglGetProcAddress("glCre ateProgram");
232 interface->fCreateShader = (GrGLCreateShaderProc) eglGetProcAddress("glCreat eShader"); 234 functions->fCreateShader = (GrGLCreateShaderProc) eglGetProcAddress("glCreat eShader");
233 interface->fCullFace = (GrGLCullFaceProc) eglGetProcAddress("glCullFace"); 235 functions->fCullFace = (GrGLCullFaceProc) eglGetProcAddress("glCullFace");
234 interface->fDeleteBuffers = (GrGLDeleteBuffersProc) eglGetProcAddress("glDel eteBuffers"); 236 functions->fDeleteBuffers = (GrGLDeleteBuffersProc) eglGetProcAddress("glDel eteBuffers");
235 interface->fDeleteFramebuffers = (GrGLDeleteFramebuffersProc) eglGetProcAddr ess("glDeleteFramebuffers"); 237 functions->fDeleteFramebuffers = (GrGLDeleteFramebuffersProc) eglGetProcAddr ess("glDeleteFramebuffers");
236 interface->fDeleteProgram = (GrGLDeleteProgramProc) eglGetProcAddress("glDel eteProgram"); 238 functions->fDeleteProgram = (GrGLDeleteProgramProc) eglGetProcAddress("glDel eteProgram");
237 interface->fDeleteQueries = (GrGLDeleteQueriesProc) eglGetProcAddress("glDel eteQueries"); 239 functions->fDeleteQueries = (GrGLDeleteQueriesProc) eglGetProcAddress("glDel eteQueries");
238 interface->fDeleteRenderbuffers = (GrGLDeleteRenderbuffersProc) eglGetProcAd dress("glDeleteRenderbuffers"); 240 functions->fDeleteRenderbuffers = (GrGLDeleteRenderbuffersProc) eglGetProcAd dress("glDeleteRenderbuffers");
239 interface->fDeleteShader = (GrGLDeleteShaderProc) eglGetProcAddress("glDelet eShader"); 241 functions->fDeleteShader = (GrGLDeleteShaderProc) eglGetProcAddress("glDelet eShader");
240 interface->fDeleteTextures = (GrGLDeleteTexturesProc) eglGetProcAddress("glD eleteTextures"); 242 functions->fDeleteTextures = (GrGLDeleteTexturesProc) eglGetProcAddress("glD eleteTextures");
241 interface->fDeleteVertexArrays = (GrGLDeleteVertexArraysProc) eglGetProcAddr ess("glDeleteVertexArrays"); 243 functions->fDeleteVertexArrays = (GrGLDeleteVertexArraysProc) eglGetProcAddr ess("glDeleteVertexArrays");
242 interface->fDepthMask = (GrGLDepthMaskProc) eglGetProcAddress("glDepthMask") ; 244 functions->fDepthMask = (GrGLDepthMaskProc) eglGetProcAddress("glDepthMask") ;
243 interface->fDisable = (GrGLDisableProc) eglGetProcAddress("glDisable"); 245 functions->fDisable = (GrGLDisableProc) eglGetProcAddress("glDisable");
244 interface->fDisableClientState = (GrGLDisableClientStateProc) eglGetProcAddr ess("glDisableClientState"); 246 functions->fDisableClientState = (GrGLDisableClientStateProc) eglGetProcAddr ess("glDisableClientState");
245 interface->fDisableVertexAttribArray = (GrGLDisableVertexAttribArrayProc) eg lGetProcAddress("glDisableVertexAttribArray"); 247 functions->fDisableVertexAttribArray = (GrGLDisableVertexAttribArrayProc) eg lGetProcAddress("glDisableVertexAttribArray");
246 interface->fDrawArrays = (GrGLDrawArraysProc) eglGetProcAddress("glDrawArray s"); 248 functions->fDrawArrays = (GrGLDrawArraysProc) eglGetProcAddress("glDrawArray s");
247 interface->fDrawBuffer = (GrGLDrawBufferProc) eglGetProcAddress("glDrawBuffe r"); 249 functions->fDrawBuffer = (GrGLDrawBufferProc) eglGetProcAddress("glDrawBuffe r");
248 interface->fDrawBuffers = (GrGLDrawBuffersProc) eglGetProcAddress("glDrawBuf fers"); 250 functions->fDrawBuffers = (GrGLDrawBuffersProc) eglGetProcAddress("glDrawBuf fers");
249 interface->fDrawElements = (GrGLDrawElementsProc) eglGetProcAddress("glDrawE lements"); 251 functions->fDrawElements = (GrGLDrawElementsProc) eglGetProcAddress("glDrawE lements");
250 interface->fEnable = (GrGLEnableProc) eglGetProcAddress("glEnable"); 252 functions->fEnable = (GrGLEnableProc) eglGetProcAddress("glEnable");
251 interface->fEnableClientState = (GrGLEnableClientStateProc) eglGetProcAddres s("glEnableClientState"); 253 functions->fEnableClientState = (GrGLEnableClientStateProc) eglGetProcAddres s("glEnableClientState");
252 interface->fEnableVertexAttribArray = (GrGLEnableVertexAttribArrayProc) eglG etProcAddress("glEnableVertexAttribArray"); 254 functions->fEnableVertexAttribArray = (GrGLEnableVertexAttribArrayProc) eglG etProcAddress("glEnableVertexAttribArray");
253 interface->fEndQuery = (GrGLEndQueryProc) eglGetProcAddress("glEndQuery"); 255 functions->fEndQuery = (GrGLEndQueryProc) eglGetProcAddress("glEndQuery");
254 interface->fFinish = (GrGLFinishProc) eglGetProcAddress("glFinish"); 256 functions->fFinish = (GrGLFinishProc) eglGetProcAddress("glFinish");
255 interface->fFlush = (GrGLFlushProc) eglGetProcAddress("glFlush"); 257 functions->fFlush = (GrGLFlushProc) eglGetProcAddress("glFlush");
256 interface->fFramebufferRenderbuffer = (GrGLFramebufferRenderbufferProc) eglG etProcAddress("glFramebufferRenderbuffer"); 258 functions->fFramebufferRenderbuffer = (GrGLFramebufferRenderbufferProc) eglG etProcAddress("glFramebufferRenderbuffer");
257 interface->fFramebufferTexture2D = (GrGLFramebufferTexture2DProc) eglGetProc Address("glFramebufferTexture2D"); 259 functions->fFramebufferTexture2D = (GrGLFramebufferTexture2DProc) eglGetProc Address("glFramebufferTexture2D");
258 interface->fFrontFace = (GrGLFrontFaceProc) eglGetProcAddress("glFrontFace") ; 260 functions->fFrontFace = (GrGLFrontFaceProc) eglGetProcAddress("glFrontFace") ;
259 interface->fGenBuffers = (GrGLGenBuffersProc) eglGetProcAddress("glGenBuffer s"); 261 functions->fGenBuffers = (GrGLGenBuffersProc) eglGetProcAddress("glGenBuffer s");
260 interface->fGenFramebuffers = (GrGLGenFramebuffersProc) eglGetProcAddress("g lGenFramebuffers"); 262 functions->fGenFramebuffers = (GrGLGenFramebuffersProc) eglGetProcAddress("g lGenFramebuffers");
261 interface->fGenerateMipmap = (GrGLGenerateMipmapProc) eglGetProcAddress("glG enerateMipmap"); 263 functions->fGenerateMipmap = (GrGLGenerateMipmapProc) eglGetProcAddress("glG enerateMipmap");
262 interface->fGenQueries = (GrGLGenQueriesProc) eglGetProcAddress("glGenQuerie s"); 264 functions->fGenQueries = (GrGLGenQueriesProc) eglGetProcAddress("glGenQuerie s");
263 interface->fGenRenderbuffers = (GrGLGenRenderbuffersProc) eglGetProcAddress( "glGenRenderbuffers"); 265 functions->fGenRenderbuffers = (GrGLGenRenderbuffersProc) eglGetProcAddress( "glGenRenderbuffers");
264 interface->fGenTextures = (GrGLGenTexturesProc) eglGetProcAddress("glGenText ures"); 266 functions->fGenTextures = (GrGLGenTexturesProc) eglGetProcAddress("glGenText ures");
265 interface->fGenVertexArrays = (GrGLGenVertexArraysProc) eglGetProcAddress("g lGenVertexArrays"); 267 functions->fGenVertexArrays = (GrGLGenVertexArraysProc) eglGetProcAddress("g lGenVertexArrays");
266 interface->fGetBufferParameteriv = (GrGLGetBufferParameterivProc) eglGetProc Address("glGetBufferParameteriv"); 268 functions->fGetBufferParameteriv = (GrGLGetBufferParameterivProc) eglGetProc Address("glGetBufferParameteriv");
267 interface->fGetError = (GrGLGetErrorProc) eglGetProcAddress("glGetError"); 269 functions->fGetError = (GrGLGetErrorProc) eglGetProcAddress("glGetError");
268 interface->fGetFramebufferAttachmentParameteriv = (GrGLGetFramebufferAttachm entParameterivProc) eglGetProcAddress("glGetFramebufferAttachmentParameteriv"); 270 functions->fGetFramebufferAttachmentParameteriv = (GrGLGetFramebufferAttachm entParameterivProc) eglGetProcAddress("glGetFramebufferAttachmentParameteriv");
269 interface->fGetIntegerv = (GrGLGetIntegervProc) eglGetProcAddress("glGetInte gerv"); 271 functions->fGetIntegerv = (GrGLGetIntegervProc) eglGetProcAddress("glGetInte gerv");
270 interface->fGetQueryObjecti64v = (GrGLGetQueryObjecti64vProc) eglGetProcAddr ess("glGetQueryObjecti64v"); 272 functions->fGetQueryObjecti64v = (GrGLGetQueryObjecti64vProc) eglGetProcAddr ess("glGetQueryObjecti64v");
271 interface->fGetQueryObjectiv = (GrGLGetQueryObjectivProc) eglGetProcAddress( "glGetQueryObjectiv"); 273 functions->fGetQueryObjectiv = (GrGLGetQueryObjectivProc) eglGetProcAddress( "glGetQueryObjectiv");
272 interface->fGetQueryObjectui64v = (GrGLGetQueryObjectui64vProc) eglGetProcAd dress("glGetQueryObjectui64v"); 274 functions->fGetQueryObjectui64v = (GrGLGetQueryObjectui64vProc) eglGetProcAd dress("glGetQueryObjectui64v");
273 interface->fGetQueryObjectuiv = (GrGLGetQueryObjectuivProc) eglGetProcAddres s("glGetQueryObjectuiv"); 275 functions->fGetQueryObjectuiv = (GrGLGetQueryObjectuivProc) eglGetProcAddres s("glGetQueryObjectuiv");
274 interface->fGetQueryiv = (GrGLGetQueryivProc) eglGetProcAddress("glGetQueryi v"); 276 functions->fGetQueryiv = (GrGLGetQueryivProc) eglGetProcAddress("glGetQueryi v");
275 interface->fGetProgramInfoLog = (GrGLGetProgramInfoLogProc) eglGetProcAddres s("glGetProgramInfoLog"); 277 functions->fGetProgramInfoLog = (GrGLGetProgramInfoLogProc) eglGetProcAddres s("glGetProgramInfoLog");
276 interface->fGetProgramiv = (GrGLGetProgramivProc) eglGetProcAddress("glGetPr ogramiv"); 278 functions->fGetProgramiv = (GrGLGetProgramivProc) eglGetProcAddress("glGetPr ogramiv");
277 interface->fGetRenderbufferParameteriv = (GrGLGetRenderbufferParameterivProc ) eglGetProcAddress("glGetRenderbufferParameteriv"); 279 functions->fGetRenderbufferParameteriv = (GrGLGetRenderbufferParameterivProc ) eglGetProcAddress("glGetRenderbufferParameteriv");
278 interface->fGetShaderInfoLog = (GrGLGetShaderInfoLogProc) eglGetProcAddress( "glGetShaderInfoLog"); 280 functions->fGetShaderInfoLog = (GrGLGetShaderInfoLogProc) eglGetProcAddress( "glGetShaderInfoLog");
279 interface->fGetShaderiv = (GrGLGetShaderivProc) eglGetProcAddress("glGetShad eriv"); 281 functions->fGetShaderiv = (GrGLGetShaderivProc) eglGetProcAddress("glGetShad eriv");
280 interface->fGetString = (GrGLGetStringProc) eglGetProcAddress("glGetString") ; 282 functions->fGetString = (GrGLGetStringProc) eglGetProcAddress("glGetString") ;
281 interface->fGetStringi = (GrGLGetStringiProc) eglGetProcAddress("glGetString i"); 283 functions->fGetStringi = (GrGLGetStringiProc) eglGetProcAddress("glGetString i");
282 interface->fGetTexLevelParameteriv = (GrGLGetTexLevelParameterivProc) eglGet ProcAddress("glGetTexLevelParameteriv"); 284 functions->fGetTexLevelParameteriv = (GrGLGetTexLevelParameterivProc) eglGet ProcAddress("glGetTexLevelParameteriv");
283 interface->fGetUniformLocation = (GrGLGetUniformLocationProc) eglGetProcAddr ess("glGetUniformLocation"); 285 functions->fGetUniformLocation = (GrGLGetUniformLocationProc) eglGetProcAddr ess("glGetUniformLocation");
284 interface->fLineWidth = (GrGLLineWidthProc) eglGetProcAddress("glLineWidth") ; 286 functions->fLineWidth = (GrGLLineWidthProc) eglGetProcAddress("glLineWidth") ;
285 interface->fLinkProgram = (GrGLLinkProgramProc) eglGetProcAddress("glLinkPro gram"); 287 functions->fLinkProgram = (GrGLLinkProgramProc) eglGetProcAddress("glLinkPro gram");
286 interface->fLoadIdentity = (GrGLLoadIdentityProc) eglGetProcAddress("glLoadI dentity"); 288 functions->fLoadIdentity = (GrGLLoadIdentityProc) eglGetProcAddress("glLoadI dentity");
287 interface->fLoadMatrixf = (GrGLLoadMatrixfProc) eglGetProcAddress("glLoadMat rixf"); 289 functions->fLoadMatrixf = (GrGLLoadMatrixfProc) eglGetProcAddress("glLoadMat rixf");
288 interface->fMapBuffer = (GrGLMapBufferProc) eglGetProcAddress("glMapBuffer") ; 290 functions->fMapBuffer = (GrGLMapBufferProc) eglGetProcAddress("glMapBuffer") ;
289 interface->fMatrixMode = (GrGLMatrixModeProc) eglGetProcAddress("glMatrixMod e"); 291 functions->fMatrixMode = (GrGLMatrixModeProc) eglGetProcAddress("glMatrixMod e");
290 interface->fPixelStorei = (GrGLPixelStoreiProc) eglGetProcAddress("glPixelSt orei"); 292 functions->fPixelStorei = (GrGLPixelStoreiProc) eglGetProcAddress("glPixelSt orei");
291 interface->fQueryCounter = (GrGLQueryCounterProc) eglGetProcAddress("glQuery Counter"); 293 functions->fQueryCounter = (GrGLQueryCounterProc) eglGetProcAddress("glQuery Counter");
292 interface->fReadBuffer = (GrGLReadBufferProc) eglGetProcAddress("glReadBuffe r"); 294 functions->fReadBuffer = (GrGLReadBufferProc) eglGetProcAddress("glReadBuffe r");
293 interface->fReadPixels = (GrGLReadPixelsProc) eglGetProcAddress("glReadPixel s"); 295 functions->fReadPixels = (GrGLReadPixelsProc) eglGetProcAddress("glReadPixel s");
294 interface->fRenderbufferStorage = (GrGLRenderbufferStorageProc) eglGetProcAd dress("glRenderbufferStorage"); 296 functions->fRenderbufferStorage = (GrGLRenderbufferStorageProc) eglGetProcAd dress("glRenderbufferStorage");
295 interface->fRenderbufferStorageMultisample = (GrGLRenderbufferStorageMultisa mpleProc) eglGetProcAddress("glRenderbufferStorageMultisample"); 297 functions->fRenderbufferStorageMultisample = (GrGLRenderbufferStorageMultisa mpleProc) eglGetProcAddress("glRenderbufferStorageMultisample");
296 interface->fScissor = (GrGLScissorProc) eglGetProcAddress("glScissor"); 298 functions->fScissor = (GrGLScissorProc) eglGetProcAddress("glScissor");
297 interface->fShaderSource = (GrGLShaderSourceProc) eglGetProcAddress("glShade rSource"); 299 functions->fShaderSource = (GrGLShaderSourceProc) eglGetProcAddress("glShade rSource");
298 interface->fStencilFunc = (GrGLStencilFuncProc) eglGetProcAddress("glStencil Func"); 300 functions->fStencilFunc = (GrGLStencilFuncProc) eglGetProcAddress("glStencil Func");
299 interface->fStencilFuncSeparate = (GrGLStencilFuncSeparateProc) eglGetProcAd dress("glStencilFuncSeparate"); 301 functions->fStencilFuncSeparate = (GrGLStencilFuncSeparateProc) eglGetProcAd dress("glStencilFuncSeparate");
300 interface->fStencilMask = (GrGLStencilMaskProc) eglGetProcAddress("glStencil Mask"); 302 functions->fStencilMask = (GrGLStencilMaskProc) eglGetProcAddress("glStencil Mask");
301 interface->fStencilMaskSeparate = (GrGLStencilMaskSeparateProc) eglGetProcAd dress("glStencilMaskSeparate"); 303 functions->fStencilMaskSeparate = (GrGLStencilMaskSeparateProc) eglGetProcAd dress("glStencilMaskSeparate");
302 interface->fStencilOp = (GrGLStencilOpProc) eglGetProcAddress("glStencilOp") ; 304 functions->fStencilOp = (GrGLStencilOpProc) eglGetProcAddress("glStencilOp") ;
303 interface->fStencilOpSeparate = (GrGLStencilOpSeparateProc) eglGetProcAddres s("glStencilOpSeparate"); 305 functions->fStencilOpSeparate = (GrGLStencilOpSeparateProc) eglGetProcAddres s("glStencilOpSeparate");
304 interface->fTexGenf = (GrGLTexGenfProc) eglGetProcAddress("glTexGenf"); 306 functions->fTexGenf = (GrGLTexGenfProc) eglGetProcAddress("glTexGenf");
305 interface->fTexGenfv = (GrGLTexGenfvProc) eglGetProcAddress("glTexGenfv"); 307 functions->fTexGenfv = (GrGLTexGenfvProc) eglGetProcAddress("glTexGenfv");
306 interface->fTexGeni = (GrGLTexGeniProc) eglGetProcAddress("glTexGeni"); 308 functions->fTexGeni = (GrGLTexGeniProc) eglGetProcAddress("glTexGeni");
307 interface->fTexImage2D = (GrGLTexImage2DProc) eglGetProcAddress("glTexImage2 D"); 309 functions->fTexImage2D = (GrGLTexImage2DProc) eglGetProcAddress("glTexImage2 D");
308 interface->fTexParameteri = (GrGLTexParameteriProc) eglGetProcAddress("glTex Parameteri"); 310 functions->fTexParameteri = (GrGLTexParameteriProc) eglGetProcAddress("glTex Parameteri");
309 interface->fTexParameteriv = (GrGLTexParameterivProc) eglGetProcAddress("glT exParameteriv"); 311 functions->fTexParameteriv = (GrGLTexParameterivProc) eglGetProcAddress("glT exParameteriv");
310 interface->fTexSubImage2D = (GrGLTexSubImage2DProc) eglGetProcAddress("glTex SubImage2D"); 312 functions->fTexSubImage2D = (GrGLTexSubImage2DProc) eglGetProcAddress("glTex SubImage2D");
311 interface->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glTexSt orage2D"); 313 functions->fTexStorage2D = (GrGLTexStorage2DProc) eglGetProcAddress("glTexSt orage2D");
312 interface->fUniform1f = (GrGLUniform1fProc) eglGetProcAddress("glUniform1f") ; 314 functions->fUniform1f = (GrGLUniform1fProc) eglGetProcAddress("glUniform1f") ;
313 interface->fUniform1i = (GrGLUniform1iProc) eglGetProcAddress("glUniform1i") ; 315 functions->fUniform1i = (GrGLUniform1iProc) eglGetProcAddress("glUniform1i") ;
314 interface->fUniform1fv = (GrGLUniform1fvProc) eglGetProcAddress("glUniform1f v"); 316 functions->fUniform1fv = (GrGLUniform1fvProc) eglGetProcAddress("glUniform1f v");
315 interface->fUniform1iv = (GrGLUniform1ivProc) eglGetProcAddress("glUniform1i v"); 317 functions->fUniform1iv = (GrGLUniform1ivProc) eglGetProcAddress("glUniform1i v");
316 interface->fUniform2f = (GrGLUniform2fProc) eglGetProcAddress("glUniform2f") ; 318 functions->fUniform2f = (GrGLUniform2fProc) eglGetProcAddress("glUniform2f") ;
317 interface->fUniform2i = (GrGLUniform2iProc) eglGetProcAddress("glUniform2i") ; 319 functions->fUniform2i = (GrGLUniform2iProc) eglGetProcAddress("glUniform2i") ;
318 interface->fUniform2fv = (GrGLUniform2fvProc) eglGetProcAddress("glUniform2f v"); 320 functions->fUniform2fv = (GrGLUniform2fvProc) eglGetProcAddress("glUniform2f v");
319 interface->fUniform2iv = (GrGLUniform2ivProc) eglGetProcAddress("glUniform2i v"); 321 functions->fUniform2iv = (GrGLUniform2ivProc) eglGetProcAddress("glUniform2i v");
320 interface->fUniform3f = (GrGLUniform3fProc) eglGetProcAddress("glUniform3f") ; 322 functions->fUniform3f = (GrGLUniform3fProc) eglGetProcAddress("glUniform3f") ;
321 interface->fUniform3i = (GrGLUniform3iProc) eglGetProcAddress("glUniform3i") ; 323 functions->fUniform3i = (GrGLUniform3iProc) eglGetProcAddress("glUniform3i") ;
322 interface->fUniform3fv = (GrGLUniform3fvProc) eglGetProcAddress("glUniform3f v"); 324 functions->fUniform3fv = (GrGLUniform3fvProc) eglGetProcAddress("glUniform3f v");
323 interface->fUniform3iv = (GrGLUniform3ivProc) eglGetProcAddress("glUniform3i v"); 325 functions->fUniform3iv = (GrGLUniform3ivProc) eglGetProcAddress("glUniform3i v");
324 interface->fUniform4f = (GrGLUniform4fProc) eglGetProcAddress("glUniform4f") ; 326 functions->fUniform4f = (GrGLUniform4fProc) eglGetProcAddress("glUniform4f") ;
325 interface->fUniform4i = (GrGLUniform4iProc) eglGetProcAddress("glUniform4i") ; 327 functions->fUniform4i = (GrGLUniform4iProc) eglGetProcAddress("glUniform4i") ;
326 interface->fUniform4fv = (GrGLUniform4fvProc) eglGetProcAddress("glUniform4f v"); 328 functions->fUniform4fv = (GrGLUniform4fvProc) eglGetProcAddress("glUniform4f v");
327 interface->fUniform4iv = (GrGLUniform4ivProc) eglGetProcAddress("glUniform4i v"); 329 functions->fUniform4iv = (GrGLUniform4ivProc) eglGetProcAddress("glUniform4i v");
328 interface->fUniformMatrix2fv = (GrGLUniformMatrix2fvProc) eglGetProcAddress( "glUniformMatrix2fv"); 330 functions->fUniformMatrix2fv = (GrGLUniformMatrix2fvProc) eglGetProcAddress( "glUniformMatrix2fv");
329 interface->fUniformMatrix3fv = (GrGLUniformMatrix3fvProc) eglGetProcAddress( "glUniformMatrix3fv"); 331 functions->fUniformMatrix3fv = (GrGLUniformMatrix3fvProc) eglGetProcAddress( "glUniformMatrix3fv");
330 interface->fUniformMatrix4fv = (GrGLUniformMatrix4fvProc) eglGetProcAddress( "glUniformMatrix4fv"); 332 functions->fUniformMatrix4fv = (GrGLUniformMatrix4fvProc) eglGetProcAddress( "glUniformMatrix4fv");
331 interface->fUnmapBuffer = (GrGLUnmapBufferProc) eglGetProcAddress("glUnmapBu ffer"); 333 functions->fUnmapBuffer = (GrGLUnmapBufferProc) eglGetProcAddress("glUnmapBu ffer");
332 interface->fUseProgram = (GrGLUseProgramProc) eglGetProcAddress("glUseProgra m"); 334 functions->fUseProgram = (GrGLUseProgramProc) eglGetProcAddress("glUseProgra m");
333 interface->fVertexAttrib4fv = (GrGLVertexAttrib4fvProc) eglGetProcAddress("g lVertexAttrib4fv"); 335 functions->fVertexAttrib4fv = (GrGLVertexAttrib4fvProc) eglGetProcAddress("g lVertexAttrib4fv");
334 interface->fVertexAttribPointer = (GrGLVertexAttribPointerProc) eglGetProcAd dress("glVertexAttribPointer"); 336 functions->fVertexAttribPointer = (GrGLVertexAttribPointerProc) eglGetProcAd dress("glVertexAttribPointer");
335 interface->fVertexPointer = (GrGLVertexPointerProc) eglGetProcAddress("glVer texPointer"); 337 functions->fVertexPointer = (GrGLVertexPointerProc) eglGetProcAddress("glVer texPointer");
336 interface->fViewport = (GrGLViewportProc) eglGetProcAddress("glViewport"); 338 functions->fViewport = (GrGLViewportProc) eglGetProcAddress("glViewport");
337 339
338 if (extensions.has("GL_NV_path_rendering")) { 340 if (extensions.has("GL_NV_path_rendering")) {
339 interface->fPathCommands = (GrGLPathCommandsProc) eglGetProcAddress("glP athCommandsNV"); 341 functions->fPathCommands = (GrGLPathCommandsProc) eglGetProcAddress("glP athCommandsNV");
340 interface->fPathCoords = (GrGLPathCoordsProc) eglGetProcAddress("glPathC oordsNV"); 342 functions->fPathCoords = (GrGLPathCoordsProc) eglGetProcAddress("glPathC oordsNV");
341 interface->fPathSubCommands = (GrGLPathSubCommandsProc) eglGetProcAddres s("glPathSubCommandsNV"); 343 functions->fPathSubCommands = (GrGLPathSubCommandsProc) eglGetProcAddres s("glPathSubCommandsNV");
342 interface->fPathSubCoords = (GrGLPathSubCoordsProc) eglGetProcAddress("g lPathSubCoordsNV"); 344 functions->fPathSubCoords = (GrGLPathSubCoordsProc) eglGetProcAddress("g lPathSubCoordsNV");
343 interface->fPathString = (GrGLPathStringProc) eglGetProcAddress("glPathS tringNV"); 345 functions->fPathString = (GrGLPathStringProc) eglGetProcAddress("glPathS tringNV");
344 interface->fPathGlyphs = (GrGLPathGlyphsProc) eglGetProcAddress("glPathG lyphsNV"); 346 functions->fPathGlyphs = (GrGLPathGlyphsProc) eglGetProcAddress("glPathG lyphsNV");
345 interface->fPathGlyphRange = (GrGLPathGlyphRangeProc) eglGetProcAddress( "glPathGlyphRangeNV"); 347 functions->fPathGlyphRange = (GrGLPathGlyphRangeProc) eglGetProcAddress( "glPathGlyphRangeNV");
346 interface->fWeightPaths = (GrGLWeightPathsProc) eglGetProcAddress("glWei ghtPathsNV"); 348 functions->fWeightPaths = (GrGLWeightPathsProc) eglGetProcAddress("glWei ghtPathsNV");
347 interface->fCopyPath = (GrGLCopyPathProc) eglGetProcAddress("glCopyPathN V"); 349 functions->fCopyPath = (GrGLCopyPathProc) eglGetProcAddress("glCopyPathN V");
348 interface->fInterpolatePaths = (GrGLInterpolatePathsProc) eglGetProcAddr ess("glInterpolatePathsNV"); 350 functions->fInterpolatePaths = (GrGLInterpolatePathsProc) eglGetProcAddr ess("glInterpolatePathsNV");
349 interface->fTransformPath = (GrGLTransformPathProc) eglGetProcAddress("g lTransformPathNV"); 351 functions->fTransformPath = (GrGLTransformPathProc) eglGetProcAddress("g lTransformPathNV");
350 interface->fPathParameteriv = (GrGLPathParameterivProc) eglGetProcAddres s("glPathParameterivNV"); 352 functions->fPathParameteriv = (GrGLPathParameterivProc) eglGetProcAddres s("glPathParameterivNV");
351 interface->fPathParameteri = (GrGLPathParameteriProc) eglGetProcAddress( "glPathParameteriNV"); 353 functions->fPathParameteri = (GrGLPathParameteriProc) eglGetProcAddress( "glPathParameteriNV");
352 interface->fPathParameterfv = (GrGLPathParameterfvProc) eglGetProcAddres s("glPathParameterfvNV"); 354 functions->fPathParameterfv = (GrGLPathParameterfvProc) eglGetProcAddres s("glPathParameterfvNV");
353 interface->fPathParameterf = (GrGLPathParameterfProc) eglGetProcAddress( "glPathParameterfNV"); 355 functions->fPathParameterf = (GrGLPathParameterfProc) eglGetProcAddress( "glPathParameterfNV");
354 interface->fPathDashArray = (GrGLPathDashArrayProc) eglGetProcAddress("g lPathDashArrayNV"); 356 functions->fPathDashArray = (GrGLPathDashArrayProc) eglGetProcAddress("g lPathDashArrayNV");
355 interface->fGenPaths = (GrGLGenPathsProc) eglGetProcAddress("glGenPathsN V"); 357 functions->fGenPaths = (GrGLGenPathsProc) eglGetProcAddress("glGenPathsN V");
356 interface->fDeletePaths = (GrGLDeletePathsProc) eglGetProcAddress("glDel etePathsNV"); 358 functions->fDeletePaths = (GrGLDeletePathsProc) eglGetProcAddress("glDel etePathsNV");
357 interface->fIsPath = (GrGLIsPathProc) eglGetProcAddress("glIsPathNV"); 359 functions->fIsPath = (GrGLIsPathProc) eglGetProcAddress("glIsPathNV");
358 interface->fPathStencilFunc = (GrGLPathStencilFuncProc) eglGetProcAddres s("glPathStencilFuncNV"); 360 functions->fPathStencilFunc = (GrGLPathStencilFuncProc) eglGetProcAddres s("glPathStencilFuncNV");
359 interface->fPathStencilDepthOffset = (GrGLPathStencilDepthOffsetProc) eg lGetProcAddress("glPathStencilDepthOffsetNV"); 361 functions->fPathStencilDepthOffset = (GrGLPathStencilDepthOffsetProc) eg lGetProcAddress("glPathStencilDepthOffsetNV");
360 interface->fStencilFillPath = (GrGLStencilFillPathProc) eglGetProcAddres s("glStencilFillPathNV"); 362 functions->fStencilFillPath = (GrGLStencilFillPathProc) eglGetProcAddres s("glStencilFillPathNV");
361 interface->fStencilStrokePath = (GrGLStencilStrokePathProc) eglGetProcAd dress("glStencilStrokePathNV"); 363 functions->fStencilStrokePath = (GrGLStencilStrokePathProc) eglGetProcAd dress("glStencilStrokePathNV");
362 interface->fStencilFillPathInstanced = (GrGLStencilFillPathInstancedProc ) eglGetProcAddress("glStencilFillPathInstancedNV"); 364 functions->fStencilFillPathInstanced = (GrGLStencilFillPathInstancedProc ) eglGetProcAddress("glStencilFillPathInstancedNV");
363 interface->fStencilStrokePathInstanced = (GrGLStencilStrokePathInstanced Proc) eglGetProcAddress("glStencilStrokePathInstancedNV"); 365 functions->fStencilStrokePathInstanced = (GrGLStencilStrokePathInstanced Proc) eglGetProcAddress("glStencilStrokePathInstancedNV");
364 interface->fPathCoverDepthFunc = (GrGLPathCoverDepthFuncProc) eglGetProc Address("glPathCoverDepthFuncNV"); 366 functions->fPathCoverDepthFunc = (GrGLPathCoverDepthFuncProc) eglGetProc Address("glPathCoverDepthFuncNV");
365 interface->fPathColorGen = (GrGLPathColorGenProc) eglGetProcAddress("glP athColorGenNV"); 367 functions->fPathColorGen = (GrGLPathColorGenProc) eglGetProcAddress("glP athColorGenNV");
366 interface->fPathTexGen = (GrGLPathTexGenProc) eglGetProcAddress("glPathT exGenNV"); 368 functions->fPathTexGen = (GrGLPathTexGenProc) eglGetProcAddress("glPathT exGenNV");
367 interface->fPathFogGen = (GrGLPathFogGenProc) eglGetProcAddress("glPathF ogGenNV"); 369 functions->fPathFogGen = (GrGLPathFogGenProc) eglGetProcAddress("glPathF ogGenNV");
368 interface->fCoverFillPath = (GrGLCoverFillPathProc) eglGetProcAddress("g lCoverFillPathNV"); 370 functions->fCoverFillPath = (GrGLCoverFillPathProc) eglGetProcAddress("g lCoverFillPathNV");
369 interface->fCoverStrokePath = (GrGLCoverStrokePathProc) eglGetProcAddres s("glCoverStrokePathNV"); 371 functions->fCoverStrokePath = (GrGLCoverStrokePathProc) eglGetProcAddres s("glCoverStrokePathNV");
370 interface->fCoverFillPathInstanced = (GrGLCoverFillPathInstancedProc) eg lGetProcAddress("glCoverFillPathInstancedNV"); 372 functions->fCoverFillPathInstanced = (GrGLCoverFillPathInstancedProc) eg lGetProcAddress("glCoverFillPathInstancedNV");
371 interface->fCoverStrokePathInstanced = (GrGLCoverStrokePathInstancedProc ) eglGetProcAddress("glCoverStrokePathInstancedNV"); 373 functions->fCoverStrokePathInstanced = (GrGLCoverStrokePathInstancedProc ) eglGetProcAddress("glCoverStrokePathInstancedNV");
372 interface->fGetPathParameteriv = (GrGLGetPathParameterivProc) eglGetProc Address("glGetPathParameterivNV"); 374 functions->fGetPathParameteriv = (GrGLGetPathParameterivProc) eglGetProc Address("glGetPathParameterivNV");
373 interface->fGetPathParameterfv = (GrGLGetPathParameterfvProc) eglGetProc Address("glGetPathParameterfvNV"); 375 functions->fGetPathParameterfv = (GrGLGetPathParameterfvProc) eglGetProc Address("glGetPathParameterfvNV");
374 interface->fGetPathCommands = (GrGLGetPathCommandsProc) eglGetProcAddres s("glGetPathCommandsNV"); 376 functions->fGetPathCommands = (GrGLGetPathCommandsProc) eglGetProcAddres s("glGetPathCommandsNV");
375 interface->fGetPathCoords = (GrGLGetPathCoordsProc) eglGetProcAddress("g lGetPathCoordsNV"); 377 functions->fGetPathCoords = (GrGLGetPathCoordsProc) eglGetProcAddress("g lGetPathCoordsNV");
376 interface->fGetPathDashArray = (GrGLGetPathDashArrayProc) eglGetProcAddr ess("glGetPathDashArrayNV"); 378 functions->fGetPathDashArray = (GrGLGetPathDashArrayProc) eglGetProcAddr ess("glGetPathDashArrayNV");
377 interface->fGetPathMetrics = (GrGLGetPathMetricsProc) eglGetProcAddress( "glGetPathMetricsNV"); 379 functions->fGetPathMetrics = (GrGLGetPathMetricsProc) eglGetProcAddress( "glGetPathMetricsNV");
378 interface->fGetPathMetricRange = (GrGLGetPathMetricRangeProc) eglGetProc Address("glGetPathMetricRangeNV"); 380 functions->fGetPathMetricRange = (GrGLGetPathMetricRangeProc) eglGetProc Address("glGetPathMetricRangeNV");
379 interface->fGetPathSpacing = (GrGLGetPathSpacingProc) eglGetProcAddress( "glGetPathSpacingNV"); 381 functions->fGetPathSpacing = (GrGLGetPathSpacingProc) eglGetProcAddress( "glGetPathSpacingNV");
380 interface->fGetPathColorGeniv = (GrGLGetPathColorGenivProc) eglGetProcAd dress("glGetPathColorGenivNV"); 382 functions->fGetPathColorGeniv = (GrGLGetPathColorGenivProc) eglGetProcAd dress("glGetPathColorGenivNV");
381 interface->fGetPathColorGenfv = (GrGLGetPathColorGenfvProc) eglGetProcAd dress("glGetPathColorGenfvNV"); 383 functions->fGetPathColorGenfv = (GrGLGetPathColorGenfvProc) eglGetProcAd dress("glGetPathColorGenfvNV");
382 interface->fGetPathTexGeniv = (GrGLGetPathTexGenivProc) eglGetProcAddres s("glGetPathTexGenivNV"); 384 functions->fGetPathTexGeniv = (GrGLGetPathTexGenivProc) eglGetProcAddres s("glGetPathTexGenivNV");
383 interface->fGetPathTexGenfv = (GrGLGetPathTexGenfvProc) eglGetProcAddres s("glGetPathTexGenfvNV"); 385 functions->fGetPathTexGenfv = (GrGLGetPathTexGenfvProc) eglGetProcAddres s("glGetPathTexGenfvNV");
384 interface->fIsPointInFillPath = (GrGLIsPointInFillPathProc) eglGetProcAd dress("glIsPointInFillPathNV"); 386 functions->fIsPointInFillPath = (GrGLIsPointInFillPathProc) eglGetProcAd dress("glIsPointInFillPathNV");
385 interface->fIsPointInStrokePath = (GrGLIsPointInStrokePathProc) eglGetPr ocAddress("glIsPointInStrokePathNV"); 387 functions->fIsPointInStrokePath = (GrGLIsPointInStrokePathProc) eglGetPr ocAddress("glIsPointInStrokePathNV");
386 interface->fGetPathLength = (GrGLGetPathLengthProc) eglGetProcAddress("g lGetPathLengthNV"); 388 functions->fGetPathLength = (GrGLGetPathLengthProc) eglGetProcAddress("g lGetPathLengthNV");
387 interface->fPointAlongPath = (GrGLPointAlongPathProc) eglGetProcAddress( "glPointAlongPathNV"); 389 functions->fPointAlongPath = (GrGLPointAlongPathProc) eglGetProcAddress( "glPointAlongPathNV");
388 } 390 }
389 391
390 return interface; 392 return interface;
391 } 393 }
392 394
393 const GrGLInterface* GrGLCreateNativeInterface() { 395 const GrGLInterface* GrGLCreateNativeInterface() {
394 396
395 GrGLGetStringiProc getStringi = (GrGLGetStringiProc) eglGetProcAddress("glGe tStringi"); 397 GrGLGetStringiProc getStringi = (GrGLGetStringiProc) eglGetProcAddress("glGe tStringi");
396 398
397 const char* verStr = reinterpret_cast<const char*>(glGetString(GR_GL_VERSION )); 399 const char* verStr = reinterpret_cast<const char*>(glGetString(GR_GL_VERSION ));
(...skipping 11 matching lines...) Expand all
409 } else if (kGL_GrGLStandard == standard) { 411 } else if (kGL_GrGLStandard == standard) {
410 interface = create_desktop_interface(version, extensions); 412 interface = create_desktop_interface(version, extensions);
411 } 413 }
412 414
413 if (NULL != interface) { 415 if (NULL != interface) {
414 interface->fExtensions.swap(&extensions); 416 interface->fExtensions.swap(&extensions);
415 } 417 }
416 418
417 return interface; 419 return interface;
418 } 420 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698