Index: gpu/blink/webgraphicscontext3d_impl.h |
diff --git a/gpu/blink/webgraphicscontext3d_impl.h b/gpu/blink/webgraphicscontext3d_impl.h |
index 11a3dc5c018fbd4bb3e549190d7456216cc3737d..ff2ca9707627dee98b1680931f59e27ba1d8e307 100644 |
--- a/gpu/blink/webgraphicscontext3d_impl.h |
+++ b/gpu/blink/webgraphicscontext3d_impl.h |
@@ -37,6 +37,7 @@ using blink::WGC3Dfloat; |
using blink::WGC3Dclampf; |
using blink::WGC3Dintptr; |
using blink::WGC3Dsizeiptr; |
+using blink::WGC3Duint64; |
namespace gpu_blink { |
@@ -371,17 +372,6 @@ class GPU_BLINK_EXPORT WebGraphicsContext3DImpl |
virtual void viewport(WGC3Dint x, WGC3Dint y, |
WGC3Dsizei width, WGC3Dsizei height); |
- // Support for buffer creation and deletion |
- virtual void genBuffers(WGC3Dsizei count, WebGLId* ids); |
- virtual void genFramebuffers(WGC3Dsizei count, WebGLId* ids); |
- virtual void genRenderbuffers(WGC3Dsizei count, WebGLId* ids); |
- virtual void genTextures(WGC3Dsizei count, WebGLId* ids); |
- |
- virtual void deleteBuffers(WGC3Dsizei count, WebGLId* ids); |
- virtual void deleteFramebuffers(WGC3Dsizei count, WebGLId* ids); |
- virtual void deleteRenderbuffers(WGC3Dsizei count, WebGLId* ids); |
- virtual void deleteTextures(WGC3Dsizei count, WebGLId* ids); |
- |
virtual WebGLId createBuffer(); |
virtual WebGLId createFramebuffer(); |
virtual WebGLId createRenderbuffer(); |
@@ -566,6 +556,147 @@ class GPU_BLINK_EXPORT WebGraphicsContext3DImpl |
WGC3Denum target, WGC3Dsizei samples, WGC3Denum internalformat, |
WGC3Dsizei width, WGC3Dsizei height); |
+ // OpenGL ES 3.0 functions not represented by pre-existing extensions |
+ virtual void beginTransformFeedback(WGC3Denum primitiveMode); |
+ virtual void bindBufferBase(WGC3Denum target, WGC3Duint index, |
+ WGC3Duint buffer); |
+ virtual void bindBufferRange(WGC3Denum target, WGC3Duint index, |
+ WGC3Duint buffer, WGC3Dintptr offset, WGC3Dsizeiptr size); |
+ virtual void bindSampler(WGC3Duint unit, WebGLId sampler); |
+ virtual void bindTransformFeedback(WGC3Denum target, |
+ WebGLId transformfeedback); |
+ virtual void clearBufferfi(WGC3Denum buffer, WGC3Dint drawbuffer, |
+ WGC3Dfloat depth, WGC3Dint stencil); |
+ virtual void clearBufferfv(WGC3Denum buffer, WGC3Dint drawbuffer, |
+ const WGC3Dfloat *value); |
+ virtual void clearBufferiv(WGC3Denum buffer, WGC3Dint drawbuffer, |
+ const WGC3Dint *value); |
+ virtual void clearBufferuiv(WGC3Denum buffer, WGC3Dint drawbuffer, |
+ const WGC3Duint *value); |
+ //virtual WGC3Denum clientWaitSync(WebGLId sync, WGC3Dbitfield flags, |
+ // WGC3Duint64 timeout); |
+ //virtual void compressedTexImage3D(WGC3Denum target, WGC3Dint level, |
+ // WGC3Denum internalformat, WGC3Dsizei width, WGC3Dsizei height, |
+ // WGC3Dsizei depth, WGC3Dint border, WGC3Dsizei imageSize, |
+ // const void *data); |
+ //virtual void compressedTexSubImage3D(WGC3Denum target, WGC3Dint level, |
+ // WGC3Dint xoffset, WGC3Dint yoffset, WGC3Dint zoffset, WGC3Dsizei width, |
+ // WGC3Dsizei height, WGC3Dsizei depth, WGC3Denum format, |
+ // WGC3Dsizei imageSize, const void *data); |
+ virtual void copyBufferSubData(WGC3Denum readTarget, WGC3Denum writeTarget, |
+ WGC3Dintptr readOffset, WGC3Dintptr writeOffset, WGC3Dsizeiptr size); |
+ virtual void copyTexSubImage3D(WGC3Denum target, WGC3Dint level, |
+ WGC3Dint xoffset, WGC3Dint yoffset, WGC3Dint zoffset, WGC3Dint x, |
+ WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height); |
+ virtual WebGLId createSampler(); |
+ virtual WebGLId createTransformFeedback(); |
+ virtual void deleteSampler(WebGLId sampler); |
+ //virtual void deleteSync(WebGLId sync); |
+ virtual void deleteTransformFeedback(WebGLId transformfeedback); |
+ virtual void endTransformFeedback(void); |
+ //virtual WebGLId fenceSync(WGC3Denum condition, WGC3Dbitfield flags); |
+ virtual void framebufferTextureLayer(WGC3Denum target, WGC3Denum attachment, |
+ WGC3Duint texture, WGC3Dint level, WGC3Dint layer); |
+ virtual void getActiveUniformBlockName(WGC3Duint program, |
+ WGC3Duint uniformBlockIndex, WGC3Dsizei bufSize, WGC3Dsizei *length, |
+ WGC3Dchar *uniformBlockName); |
+ virtual void getActiveUniformBlockiv(WGC3Duint program, |
+ WGC3Duint uniformBlockIndex, WGC3Denum pname, WGC3Dint *params); |
+ //virtual void getActiveUniformsiv(WGC3Duint program, WGC3Dsizei uniformCount, |
+ // const WGC3Duint *uniformIndices, WGC3Denum pname, WGC3Dint *params); |
+ virtual WGC3Dint getFragDataLocation(WGC3Duint program, |
+ const WGC3Dchar *name); |
+ virtual void getInternalformativ(WGC3Denum target, WGC3Denum internalformat, |
+ WGC3Denum pname, WGC3Dsizei bufSize, WGC3Dint *params); |
+ virtual void getSamplerParameterfv(WGC3Duint sampler, WGC3Denum pname, |
+ WGC3Dfloat *params); |
+ virtual void getSamplerParameteriv(WGC3Duint sampler, WGC3Denum pname, |
+ WGC3Dint *params); |
+ //virtual void getTransformFeedbackVarying(WGC3Duint program, WGC3Duint index, |
+ // WGC3Dsizei bufSize, WGC3Dsizei *length, WGC3Dsizei *size, |
+ // WGC3Denum *type, WGC3Dchar *name); |
+ virtual WGC3Duint getUniformBlockIndex(WGC3Duint program, |
+ const WGC3Dchar *uniformBlockName); |
+ //virtual void getUniformIndices(WGC3Duint program, WGC3Dsizei uniformCount, |
+ // const WGC3Dchar *const*uniformNames, WGC3Duint *uniformIndices); |
+ //virtual void getUniformuiv(WGC3Duint program, WGC3Dint location, |
+ // WGC3Duint *params); |
+ //virtual void getVertexAttribIiv(WGC3Duint index, WGC3Denum pname, |
+ // WGC3Dint *params); |
+ //virtual void getVertexAttribIuiv(WGC3Duint index, WGC3Denum pname, |
+ // WGC3Duint *params); |
+ virtual void invalidateFramebuffer(WGC3Denum target, |
+ WGC3Dsizei numAttachments, const WGC3Denum *attachments); |
+ virtual void invalidateSubFramebuffer(WGC3Denum target, |
+ WGC3Dsizei numAttachments, const WGC3Denum *attachments, WGC3Dint x, |
+ WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height); |
+ virtual WGC3Dboolean isSampler(WebGLId sampler); |
+ //virtual WGC3Dboolean isSync(WebGLId sync); |
+ virtual WGC3Dboolean isTransformFeedback(WGC3Duint id); |
+ virtual void pauseTransformFeedback(void); |
+ //virtual void programParameteri(WGC3Duint program, WGC3Denum pname, |
+ // WGC3Dint value); |
+ virtual void readBuffer(WGC3Denum src); |
+ virtual void resumeTransformFeedback(void); |
+ virtual void samplerParameterf(WGC3Duint sampler, WGC3Denum pname, |
+ WGC3Dfloat param); |
+ virtual void samplerParameterfv(WGC3Duint sampler, WGC3Denum pname, |
+ const WGC3Dfloat *param); |
+ virtual void samplerParameteri(WGC3Duint sampler, WGC3Denum pname, |
+ WGC3Dint param); |
+ virtual void samplerParameteriv(WGC3Duint sampler, WGC3Denum pname, |
+ const WGC3Dint *param); |
+ virtual void texImage3D(WGC3Denum target, WGC3Dint level, |
+ WGC3Dint internalformat, WGC3Dsizei width, WGC3Dsizei height, |
+ WGC3Dsizei depth, WGC3Dint border, WGC3Denum format, WGC3Denum type, |
+ const void *pixels); |
+ virtual void texStorage3D(WGC3Denum target, WGC3Dsizei levels, |
+ WGC3Denum internalformat, WGC3Dsizei width, WGC3Dsizei height, |
+ WGC3Dsizei depth); |
+ virtual void texSubImage3D(WGC3Denum target, WGC3Dint level, WGC3Dint xoffset, |
+ WGC3Dint yoffset, WGC3Dint zoffset, WGC3Dsizei width, WGC3Dsizei height, |
+ WGC3Dsizei depth, WGC3Denum format, WGC3Denum type, const void *pixels); |
+ virtual void transformFeedbackVaryings(WGC3Duint program, WGC3Dsizei count, |
+ const WGC3Dchar *const*varyings, WGC3Denum bufferMode); |
+ virtual void uniform1ui(WGC3Dint location, WGC3Duint x); |
+ virtual void uniform1uiv(WGC3Dint location, WGC3Dsizei count, |
+ const WGC3Duint *value); |
+ virtual void uniform2ui(WGC3Dint location, WGC3Duint x, WGC3Duint y); |
+ virtual void uniform2uiv(WGC3Dint location, WGC3Dsizei count, |
+ const WGC3Duint *value); |
+ virtual void uniform3ui(WGC3Dint location, WGC3Duint x, WGC3Duint y, |
+ WGC3Duint z); |
+ virtual void uniform3uiv(WGC3Dint location, WGC3Dsizei count, |
+ const WGC3Duint *value); |
+ virtual void uniform4ui(WGC3Dint location, WGC3Duint x, WGC3Duint y, |
+ WGC3Duint z, WGC3Duint w); |
+ virtual void uniform4uiv(WGC3Dint location, WGC3Dsizei count, |
+ const WGC3Duint *value); |
+ virtual void uniformBlockBinding(WGC3Duint program, |
+ WGC3Duint uniformBlockIndex, WGC3Duint uniformBlockBinding); |
+ virtual void uniformMatrix2x3fv(WGC3Dint location, WGC3Dsizei count, |
+ WGC3Dboolean transpose, const WGC3Dfloat* value); |
+ virtual void uniformMatrix2x4fv(WGC3Dint location, WGC3Dsizei count, |
+ WGC3Dboolean transpose, const WGC3Dfloat* value); |
+ virtual void uniformMatrix3x2fv(WGC3Dint location, WGC3Dsizei count, |
+ WGC3Dboolean transpose, const WGC3Dfloat* value); |
+ virtual void uniformMatrix3x4fv(WGC3Dint location, WGC3Dsizei count, |
+ WGC3Dboolean transpose, const WGC3Dfloat* value); |
+ virtual void uniformMatrix4x2fv(WGC3Dint location, WGC3Dsizei count, |
+ WGC3Dboolean transpose, const WGC3Dfloat* value); |
+ virtual void uniformMatrix4x3fv(WGC3Dint location, WGC3Dsizei count, |
+ WGC3Dboolean transpose, const WGC3Dfloat* value); |
+ virtual void vertexAttribI4i(WGC3Duint index, WGC3Dint x, WGC3Dint y, |
+ WGC3Dint z, WGC3Dint w); |
+ virtual void vertexAttribI4iv(WGC3Duint index, const WGC3Dint *v); |
+ virtual void vertexAttribI4ui(WGC3Duint index, WGC3Duint x, WGC3Duint y, |
+ WGC3Duint z, WGC3Duint w); |
+ virtual void vertexAttribI4uiv(WGC3Duint index, const WGC3Duint *v); |
+ virtual void vertexAttribIPointer(WGC3Duint index, WGC3Dint size, |
+ WGC3Denum type, WGC3Dsizei stride, WGC3Dintptr pointer); |
+ //virtual void waitSync(WebGLId sync, WGC3Dbitfield flags, |
+ // WGC3Duint64 timeout); |
+ |
virtual GrGLInterface* createGrGLInterface(); |
::gpu::gles2::GLES2Interface* GetGLInterface() { |