gfx/skia/trunk/src/gpu/gl/GrGLNoOpInterface.h

branch
TOR_BUG_3246
changeset 7
129ffea94266
equal deleted inserted replaced
-1:000000000000 0:dec8366d4896
1 /*
2 * Copyright 2013 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8 #ifndef GrGLNoOpInterface_DEFINED
9 #define GrGLNoOpInterface_DEFINED
10
11 #include "gl/GrGLDefines.h"
12 #include "gl/GrGLFunctions.h"
13
14 // These are constants/functions that are common to the Null and Debug GL interface implementations.
15
16 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlendColor(GrGLclampf red,
17 GrGLclampf green,
18 GrGLclampf blue,
19 GrGLclampf alpha);
20
21 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBindFragDataLocation(GrGLuint program,
22 GrGLuint colorNumber,
23 const GrGLchar* name);
24
25 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlendFunc(GrGLenum sfactor,
26 GrGLenum dfactor);
27
28 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBufferSubData(GrGLenum target,
29 GrGLintptr offset,
30 GrGLsizeiptr size,
31 const GrGLvoid* data);
32
33 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLClear(GrGLbitfield mask);
34
35 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLClearColor(GrGLclampf red,
36 GrGLclampf green,
37 GrGLclampf blue,
38 GrGLclampf alpha);
39
40 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLClearStencil(GrGLint s);
41
42 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLColorMask(GrGLboolean red,
43 GrGLboolean green,
44 GrGLboolean blue,
45 GrGLboolean alpha);
46
47 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCompileShader(GrGLuint shader);
48
49 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCompressedTexImage2D(GrGLenum target,
50 GrGLint level,
51 GrGLenum internalformat,
52 GrGLsizei width,
53 GrGLsizei height,
54 GrGLint border,
55 GrGLsizei imageSize,
56 const GrGLvoid* data);
57
58 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCopyTexSubImage2D(GrGLenum target,
59 GrGLint level,
60 GrGLint xoffset,
61 GrGLint yoffset,
62 GrGLint x,
63 GrGLint y,
64 GrGLsizei width,
65 GrGLsizei height);
66
67 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLCullFace(GrGLenum mode);
68
69 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDepthMask(GrGLboolean flag);
70
71 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDisable(GrGLenum cap);
72
73 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDisableVertexAttribArray(GrGLuint index);
74
75 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDrawArrays(GrGLenum mode, GrGLint first, GrGLsizei count);
76
77 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDrawBuffer(GrGLenum mode);
78
79 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDrawBuffers(GrGLsizei n,
80 const GrGLenum* bufs);
81
82 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDrawElements(GrGLenum mode,
83 GrGLsizei count,
84 GrGLenum type,
85 const GrGLvoid* indices);
86
87 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLEnable(GrGLenum cap);
88
89 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLEnableVertexAttribArray(GrGLuint index);
90
91 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLEndQuery(GrGLenum target);
92
93 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLFinish();
94
95 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLFlush();
96
97 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLFrontFace(GrGLenum mode);
98
99 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLLoadIdentity();
100
101 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLLoadMatrixf(const GrGLfloat*);
102
103 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLLineWidth(GrGLfloat width);
104
105 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLLinkProgram(GrGLuint program);
106
107 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLMatrixMode(GrGLenum);
108
109 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLQueryCounter(GrGLuint id,
110 GrGLenum target);
111
112 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLReadBuffer(GrGLenum src);
113
114 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLScissor(GrGLint x,
115 GrGLint y,
116 GrGLsizei width,
117 GrGLsizei height);
118
119 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLShaderSource(GrGLuint shader,
120 GrGLsizei count,
121 #if GR_GL_USE_NEW_SHADER_SOURCE_SIGNATURE
122 const char* const * str,
123 #else
124 const char** str,
125 #endif
126 const GrGLint* length);
127
128 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLStencilFunc(GrGLenum func, GrGLint ref, GrGLuint mask);
129
130 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLStencilFuncSeparate(GrGLenum face,
131 GrGLenum func,
132 GrGLint ref,
133 GrGLuint mask);
134
135 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLStencilMask(GrGLuint mask);
136
137 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLStencilMaskSeparate(GrGLenum face, GrGLuint mask);
138
139 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLStencilOp(GrGLenum fail, GrGLenum zfail, GrGLenum zpass);
140
141 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLStencilOpSeparate(GrGLenum face,
142 GrGLenum fail,
143 GrGLenum zfail,
144 GrGLenum zpass);
145
146 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexImage2D(GrGLenum target,
147 GrGLint level,
148 GrGLint internalformat,
149 GrGLsizei width,
150 GrGLsizei height,
151 GrGLint border,
152 GrGLenum format,
153 GrGLenum type,
154 const GrGLvoid* pixels);
155
156 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexParameteri(GrGLenum target, GrGLenum pname, GrGLint param);
157
158 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexParameteriv(GrGLenum target,
159 GrGLenum pname,
160 const GrGLint* params);
161
162 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexStorage2D(GrGLenum target,
163 GrGLsizei levels,
164 GrGLenum internalformat,
165 GrGLsizei width,
166 GrGLsizei height);
167
168 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexGenf(GrGLenum, GrGLenum, GrGLfloat);
169
170 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexGenfv(GrGLenum, GrGLenum, const GrGLfloat*);
171
172 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexGeni(GrGLenum, GrGLenum, GrGLint);
173
174 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDiscardFramebuffer(GrGLenum target,
175 GrGLsizei numAttachments,
176 const GrGLenum* attachments);
177
178 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLTexSubImage2D(GrGLenum target,
179 GrGLint level,
180 GrGLint xoffset,
181 GrGLint yoffset,
182 GrGLsizei width,
183 GrGLsizei height,
184 GrGLenum format,
185 GrGLenum type,
186 const GrGLvoid* pixels);
187
188 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform1f(GrGLint location, GrGLfloat v0);
189
190 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform1i(GrGLint location, GrGLint v0);
191
192 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform1fv(GrGLint location,
193 GrGLsizei count,
194 const GrGLfloat* v);
195
196 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform1iv(GrGLint location,
197 GrGLsizei count,
198 const GrGLint* v);
199
200 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform2f(GrGLint location,
201 GrGLfloat v0,
202 GrGLfloat v1);
203
204 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform2i(GrGLint location, GrGLint v0, GrGLint v1);
205
206 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform2fv(GrGLint location,
207 GrGLsizei count,
208 const GrGLfloat* v);
209
210 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform2iv(GrGLint location,
211 GrGLsizei count,
212 const GrGLint* v);
213
214 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform3f(GrGLint location,
215 GrGLfloat v0,
216 GrGLfloat v1,
217 GrGLfloat v2);
218
219 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform3i(GrGLint location,
220 GrGLint v0,
221 GrGLint v1,
222 GrGLint v2);
223
224 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform3fv(GrGLint location,
225 GrGLsizei count,
226 const GrGLfloat* v);
227
228 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform3iv(GrGLint location,
229 GrGLsizei count,
230 const GrGLint* v);
231
232 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform4f(GrGLint location,
233 GrGLfloat v0,
234 GrGLfloat v1,
235 GrGLfloat v2,
236 GrGLfloat v3);
237
238 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform4i(GrGLint location,
239 GrGLint v0,
240 GrGLint v1,
241 GrGLint v2,
242 GrGLint v3);
243
244 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform4fv(GrGLint location,
245 GrGLsizei count,
246 const GrGLfloat* v);
247
248 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniform4iv(GrGLint location,
249 GrGLsizei count,
250 const GrGLint* v);
251
252 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniformMatrix2fv(GrGLint location,
253 GrGLsizei count,
254 GrGLboolean transpose,
255 const GrGLfloat* value);
256
257 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniformMatrix3fv(GrGLint location,
258 GrGLsizei count,
259 GrGLboolean transpose,
260 const GrGLfloat* value);
261
262 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLUniformMatrix4fv(GrGLint location,
263 GrGLsizei count,
264 GrGLboolean transpose,
265 const GrGLfloat* value);
266
267 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLVertexAttrib4fv(GrGLuint indx, const GrGLfloat* values);
268
269 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLVertexAttribPointer(GrGLuint indx,
270 GrGLint size,
271 GrGLenum type,
272 GrGLboolean normalized,
273 GrGLsizei stride,
274 const GrGLvoid* ptr);
275
276 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLViewport(GrGLint x,
277 GrGLint y,
278 GrGLsizei width,
279 GrGLsizei height);
280
281 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetFramebufferAttachmentParameteriv(GrGLenum target,
282 GrGLenum attachment,
283 GrGLenum pname,
284 GrGLint* params);
285
286 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetRenderbufferParameteriv(GrGLenum target,
287 GrGLenum pname,
288 GrGLint* params);
289
290 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLRenderbufferStorage(GrGLenum target,
291 GrGLenum internalformat,
292 GrGLsizei width,
293 GrGLsizei height);
294
295 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLRenderbufferStorageMultisample(GrGLenum target,
296 GrGLsizei samples,
297 GrGLenum internalformat,
298 GrGLsizei width,
299 GrGLsizei height);
300
301 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlitFramebuffer(GrGLint srcX0,
302 GrGLint srcY0,
303 GrGLint srcX1,
304 GrGLint srcY1,
305 GrGLint dstX0,
306 GrGLint dstY0,
307 GrGLint dstX1,
308 GrGLint dstY1,
309 GrGLbitfield mask,
310 GrGLenum filter);
311
312 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLResolveMultisampleFramebuffer();
313
314 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBindFragDataLocationIndexed(GrGLuint program,
315 GrGLuint colorNumber,
316 GrGLuint index,
317 const GrGLchar * name);
318
319 GrGLenum GR_GL_FUNCTION_TYPE noOpGLCheckFramebufferStatus(GrGLenum target);
320
321 // this function can be used for all glGen*(GLsize i, GLuint*) functions
322 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGenIds(GrGLsizei n, GrGLuint* ids);
323
324 // this function function can be used for all glDelete*(GLsize i, const GLuint*)
325 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLDeleteIds(GrGLsizei n, const GrGLuint* ids);
326
327 GrGLenum GR_GL_FUNCTION_TYPE noOpGLGetError();
328
329 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetIntegerv(GrGLenum pname, GrGLint* params);
330
331 // can be used for both the program and shader info logs
332 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetInfoLog(GrGLuint program,
333 GrGLsizei bufsize,
334 GrGLsizei* length,
335 char* infolog);
336
337 // can be used for both the program and shader params
338 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetShaderOrProgramiv(GrGLuint program,
339 GrGLenum pname,
340 GrGLint* params);
341
342 // Queries on bogus GLs just don't do anything at all. We could potentially make the timers work.
343 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetQueryiv(GrGLenum GLtarget,
344 GrGLenum pname,
345 GrGLint *params);
346
347 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetQueryObjecti64v(GrGLuint id,
348 GrGLenum pname,
349 GrGLint64 *params);
350
351 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetQueryObjectiv(GrGLuint id, GrGLenum pname, GrGLint *params);
352
353 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetQueryObjectui64v(GrGLuint id,
354 GrGLenum pname,
355 GrGLuint64 *params);
356
357 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetQueryObjectuiv(GrGLuint id,
358 GrGLenum pname,
359 GrGLuint *params);
360
361 const GrGLubyte* GR_GL_FUNCTION_TYPE noOpGLGetString(GrGLenum name);
362
363 const GrGLubyte* GR_GL_FUNCTION_TYPE noOpGLGetStringi(GrGLenum name, GrGLuint i);
364
365 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLGetTexLevelParameteriv(GrGLenum target,
366 GrGLint level,
367 GrGLenum pname,
368 GrGLint* params);
369
370 GrGLint GR_GL_FUNCTION_TYPE noOpGLGetUniformLocation(GrGLuint program, const char* name);
371
372 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLInsertEventMarker(GrGLsizei length, const char* marker);
373 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLPushGroupMarker(GrGLsizei length , const char* marker);
374 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLPopGroupMarker();
375
376 #endif

mercurial