| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ | 5 #ifndef GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ |
| 6 #define GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ | 6 #define GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| 11 #include "base/callback.h" | 11 #include "base/callback.h" |
| 12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
| 13 #include "gpu/blink/gpu_blink_export.h" | 13 #include "gpu/blink/gpu_blink_export.h" |
| 14 #include "third_party/WebKit/public/platform/WebGraphicsContext3D.h" | 14 #include "third_party/WebKit/public/platform/WebGraphicsContext3D.h" |
| 15 #include "third_party/WebKit/public/platform/WebString.h" | 15 #include "third_party/WebKit/public/platform/WebString.h" |
| 16 | 16 |
| 17 namespace gpu { | 17 namespace gpu { |
| 18 | 18 |
| 19 namespace gles2 { | 19 namespace gles2 { |
| 20 class GLES2Interface; | 20 class GLES2Interface; |
| 21 class GLES2ImplementationErrorMessageCallback; | 21 class GLES2ImplementationErrorMessageCallback; |
| 22 struct ContextCreationAttribHelper; | 22 struct ContextCreationAttribHelper; |
| 23 } | 23 } |
| 24 } | 24 } |
| 25 | 25 |
| 26 using blink::WebGLId; | |
| 27 | |
| 28 using blink::WGC3Dbyte; | |
| 29 using blink::WGC3Dchar; | |
| 30 using blink::WGC3Denum; | |
| 31 using blink::WGC3Dboolean; | |
| 32 using blink::WGC3Dbitfield; | |
| 33 using blink::WGC3Dint; | |
| 34 using blink::WGC3Dsizei; | |
| 35 using blink::WGC3Duint; | |
| 36 using blink::WGC3Dfloat; | |
| 37 using blink::WGC3Dclampf; | |
| 38 using blink::WGC3Dintptr; | |
| 39 using blink::WGC3Dsizeiptr; | |
| 40 using blink::WGC3Duint64; | |
| 41 | |
| 42 namespace gpu_blink { | 26 namespace gpu_blink { |
| 43 | 27 |
| 44 class WebGraphicsContext3DErrorMessageCallback; | 28 class WebGraphicsContext3DErrorMessageCallback; |
| 45 | 29 |
| 46 class GPU_BLINK_EXPORT WebGraphicsContext3DImpl | 30 class GPU_BLINK_EXPORT WebGraphicsContext3DImpl |
| 47 : public NON_EXPORTED_BASE(blink::WebGraphicsContext3D) { | 31 : public NON_EXPORTED_BASE(blink::WebGraphicsContext3D) { |
| 48 public: | 32 public: |
| 49 virtual ~WebGraphicsContext3DImpl(); | 33 virtual ~WebGraphicsContext3DImpl(); |
| 50 | 34 |
| 51 //---------------------------------------------------------------------- | 35 //---------------------------------------------------------------------- |
| 52 // WebGraphicsContext3D methods | 36 // WebGraphicsContext3D methods |
| 53 | 37 |
| 54 virtual uint32_t lastFlushID(); | 38 virtual uint32_t lastFlushID(); |
| 55 | 39 |
| 56 virtual unsigned int insertSyncPoint(); | 40 virtual unsigned int insertSyncPoint(); |
| 57 virtual void waitSyncPoint(unsigned int sync_point); | 41 virtual void waitSyncPoint(unsigned int sync_point); |
| 58 | 42 |
| 59 virtual void loseContextCHROMIUM(WGC3Denum current, WGC3Denum other); | 43 virtual void loseContextCHROMIUM(blink::WGC3Denum current, |
| 44 blink::WGC3Denum other); |
| 60 | 45 |
| 61 virtual void reshapeWithScaleFactor( | 46 virtual void reshapeWithScaleFactor( |
| 62 int width, int height, float scale_factor); | 47 int width, int height, float scale_factor); |
| 63 | 48 |
| 64 virtual void prepareTexture(); | 49 virtual void prepareTexture(); |
| 65 virtual void postSubBufferCHROMIUM(int x, int y, int width, int height); | 50 virtual void postSubBufferCHROMIUM(int x, int y, int width, int height); |
| 66 | 51 |
| 67 virtual void activeTexture(WGC3Denum texture); | 52 virtual void activeTexture(blink::WGC3Denum texture); |
| 68 virtual void attachShader(WebGLId program, WebGLId shader); | 53 virtual void attachShader(blink::WebGLId program, blink::WebGLId shader); |
| 69 virtual void bindAttribLocation(WebGLId program, WGC3Duint index, | 54 virtual void bindAttribLocation(blink::WebGLId program, |
| 70 const WGC3Dchar* name); | 55 blink::WGC3Duint index, |
| 71 virtual void bindBuffer(WGC3Denum target, WebGLId buffer); | 56 const blink::WGC3Dchar* name); |
| 72 virtual void bindFramebuffer(WGC3Denum target, WebGLId framebuffer); | 57 virtual void bindBuffer(blink::WGC3Denum target, blink::WebGLId buffer); |
| 73 virtual void bindRenderbuffer(WGC3Denum target, WebGLId renderbuffer); | 58 virtual void bindFramebuffer(blink::WGC3Denum target, |
| 74 virtual void bindTexture(WGC3Denum target, WebGLId texture); | 59 blink::WebGLId framebuffer); |
| 75 virtual void blendColor(WGC3Dclampf red, WGC3Dclampf green, | 60 virtual void bindRenderbuffer(blink::WGC3Denum target, |
| 76 WGC3Dclampf blue, WGC3Dclampf alpha); | 61 blink::WebGLId renderbuffer); |
| 77 virtual void blendEquation(WGC3Denum mode); | 62 virtual void bindTexture(blink::WGC3Denum target, blink::WebGLId texture); |
| 78 virtual void blendEquationSeparate(WGC3Denum modeRGB, | 63 virtual void blendColor(blink::WGC3Dclampf red, |
| 79 WGC3Denum modeAlpha); | 64 blink::WGC3Dclampf green, |
| 80 virtual void blendFunc(WGC3Denum sfactor, WGC3Denum dfactor); | 65 blink::WGC3Dclampf blue, |
| 81 virtual void blendFuncSeparate(WGC3Denum srcRGB, | 66 blink::WGC3Dclampf alpha); |
| 82 WGC3Denum dstRGB, | 67 virtual void blendEquation(blink::WGC3Denum mode); |
| 83 WGC3Denum srcAlpha, | 68 virtual void blendEquationSeparate(blink::WGC3Denum modeRGB, |
| 84 WGC3Denum dstAlpha); | 69 blink::WGC3Denum modeAlpha); |
| 85 | 70 virtual void blendFunc(blink::WGC3Denum sfactor, blink::WGC3Denum dfactor); |
| 86 virtual void bufferData(WGC3Denum target, WGC3Dsizeiptr size, | 71 virtual void blendFuncSeparate(blink::WGC3Denum srcRGB, |
| 87 const void* data, WGC3Denum usage); | 72 blink::WGC3Denum dstRGB, |
| 88 virtual void bufferSubData(WGC3Denum target, WGC3Dintptr offset, | 73 blink::WGC3Denum srcAlpha, |
| 89 WGC3Dsizeiptr size, const void* data); | 74 blink::WGC3Denum dstAlpha); |
| 90 | 75 |
| 91 virtual WGC3Denum checkFramebufferStatus(WGC3Denum target); | 76 virtual void bufferData(blink::WGC3Denum target, |
| 92 virtual void clear(WGC3Dbitfield mask); | 77 blink::WGC3Dsizeiptr size, |
| 93 virtual void clearColor(WGC3Dclampf red, WGC3Dclampf green, | 78 const void* data, |
| 94 WGC3Dclampf blue, WGC3Dclampf alpha); | 79 blink::WGC3Denum usage); |
| 95 virtual void clearDepth(WGC3Dclampf depth); | 80 virtual void bufferSubData(blink::WGC3Denum target, |
| 96 virtual void clearStencil(WGC3Dint s); | 81 blink::WGC3Dintptr offset, |
| 97 virtual void colorMask(WGC3Dboolean red, WGC3Dboolean green, | 82 blink::WGC3Dsizeiptr size, |
| 98 WGC3Dboolean blue, WGC3Dboolean alpha); | 83 const void* data); |
| 99 virtual void compileShader(WebGLId shader); | 84 |
| 100 | 85 virtual blink::WGC3Denum checkFramebufferStatus(blink::WGC3Denum target); |
| 101 virtual void compressedTexImage2D(WGC3Denum target, | 86 virtual void clear(blink::WGC3Dbitfield mask); |
| 102 WGC3Dint level, | 87 virtual void clearColor(blink::WGC3Dclampf red, |
| 103 WGC3Denum internalformat, | 88 blink::WGC3Dclampf green, |
| 104 WGC3Dsizei width, | 89 blink::WGC3Dclampf blue, |
| 105 WGC3Dsizei height, | 90 blink::WGC3Dclampf alpha); |
| 106 WGC3Dint border, | 91 virtual void clearDepth(blink::WGC3Dclampf depth); |
| 107 WGC3Dsizei imageSize, | 92 virtual void clearStencil(blink::WGC3Dint s); |
| 93 virtual void colorMask(blink::WGC3Dboolean red, |
| 94 blink::WGC3Dboolean green, |
| 95 blink::WGC3Dboolean blue, |
| 96 blink::WGC3Dboolean alpha); |
| 97 virtual void compileShader(blink::WebGLId shader); |
| 98 |
| 99 virtual void compressedTexImage2D(blink::WGC3Denum target, |
| 100 blink::WGC3Dint level, |
| 101 blink::WGC3Denum internalformat, |
| 102 blink::WGC3Dsizei width, |
| 103 blink::WGC3Dsizei height, |
| 104 blink::WGC3Dint border, |
| 105 blink::WGC3Dsizei imageSize, |
| 108 const void* data); | 106 const void* data); |
| 109 virtual void compressedTexSubImage2D(WGC3Denum target, | 107 virtual void compressedTexSubImage2D(blink::WGC3Denum target, |
| 110 WGC3Dint level, | 108 blink::WGC3Dint level, |
| 111 WGC3Dint xoffset, | 109 blink::WGC3Dint xoffset, |
| 112 WGC3Dint yoffset, | 110 blink::WGC3Dint yoffset, |
| 113 WGC3Dsizei width, | 111 blink::WGC3Dsizei width, |
| 114 WGC3Dsizei height, | 112 blink::WGC3Dsizei height, |
| 115 WGC3Denum format, | 113 blink::WGC3Denum format, |
| 116 WGC3Dsizei imageSize, | 114 blink::WGC3Dsizei imageSize, |
| 117 const void* data); | 115 const void* data); |
| 118 virtual void copyTexImage2D(WGC3Denum target, | 116 virtual void copyTexImage2D(blink::WGC3Denum target, |
| 119 WGC3Dint level, | 117 blink::WGC3Dint level, |
| 120 WGC3Denum internalformat, | 118 blink::WGC3Denum internalformat, |
| 121 WGC3Dint x, | 119 blink::WGC3Dint x, |
| 122 WGC3Dint y, | 120 blink::WGC3Dint y, |
| 123 WGC3Dsizei width, | 121 blink::WGC3Dsizei width, |
| 124 WGC3Dsizei height, | 122 blink::WGC3Dsizei height, |
| 125 WGC3Dint border); | 123 blink::WGC3Dint border); |
| 126 virtual void copyTexSubImage2D(WGC3Denum target, | 124 virtual void copyTexSubImage2D(blink::WGC3Denum target, |
| 127 WGC3Dint level, | 125 blink::WGC3Dint level, |
| 128 WGC3Dint xoffset, | 126 blink::WGC3Dint xoffset, |
| 129 WGC3Dint yoffset, | 127 blink::WGC3Dint yoffset, |
| 130 WGC3Dint x, | 128 blink::WGC3Dint x, |
| 131 WGC3Dint y, | 129 blink::WGC3Dint y, |
| 132 WGC3Dsizei width, | 130 blink::WGC3Dsizei width, |
| 133 WGC3Dsizei height); | 131 blink::WGC3Dsizei height); |
| 134 virtual void cullFace(WGC3Denum mode); | 132 virtual void cullFace(blink::WGC3Denum mode); |
| 135 virtual void depthFunc(WGC3Denum func); | 133 virtual void depthFunc(blink::WGC3Denum func); |
| 136 virtual void depthMask(WGC3Dboolean flag); | 134 virtual void depthMask(blink::WGC3Dboolean flag); |
| 137 virtual void depthRange(WGC3Dclampf zNear, WGC3Dclampf zFar); | 135 virtual void depthRange(blink::WGC3Dclampf zNear, blink::WGC3Dclampf zFar); |
| 138 virtual void detachShader(WebGLId program, WebGLId shader); | 136 virtual void detachShader(blink::WebGLId program, blink::WebGLId shader); |
| 139 virtual void disable(WGC3Denum cap); | 137 virtual void disable(blink::WGC3Denum cap); |
| 140 virtual void disableVertexAttribArray(WGC3Duint index); | 138 virtual void disableVertexAttribArray(blink::WGC3Duint index); |
| 141 virtual void drawArrays(WGC3Denum mode, WGC3Dint first, WGC3Dsizei count); | 139 virtual void drawArrays(blink::WGC3Denum mode, |
| 142 virtual void drawElements(WGC3Denum mode, | 140 blink::WGC3Dint first, |
| 143 WGC3Dsizei count, | 141 blink::WGC3Dsizei count); |
| 144 WGC3Denum type, | 142 virtual void drawElements(blink::WGC3Denum mode, |
| 145 WGC3Dintptr offset); | 143 blink::WGC3Dsizei count, |
| 146 | 144 blink::WGC3Denum type, |
| 147 virtual void enable(WGC3Denum cap); | 145 blink::WGC3Dintptr offset); |
| 148 virtual void enableVertexAttribArray(WGC3Duint index); | 146 |
| 147 virtual void enable(blink::WGC3Denum cap); |
| 148 virtual void enableVertexAttribArray(blink::WGC3Duint index); |
| 149 virtual void finish(); | 149 virtual void finish(); |
| 150 virtual void flush(); | 150 virtual void flush(); |
| 151 virtual void framebufferRenderbuffer(WGC3Denum target, | 151 virtual void framebufferRenderbuffer(blink::WGC3Denum target, |
| 152 WGC3Denum attachment, | 152 blink::WGC3Denum attachment, |
| 153 WGC3Denum renderbuffertarget, | 153 blink::WGC3Denum renderbuffertarget, |
| 154 WebGLId renderbuffer); | 154 blink::WebGLId renderbuffer); |
| 155 virtual void framebufferTexture2D(WGC3Denum target, | 155 virtual void framebufferTexture2D(blink::WGC3Denum target, |
| 156 WGC3Denum attachment, | 156 blink::WGC3Denum attachment, |
| 157 WGC3Denum textarget, | 157 blink::WGC3Denum textarget, |
| 158 WebGLId texture, | 158 blink::WebGLId texture, |
| 159 WGC3Dint level); | 159 blink::WGC3Dint level); |
| 160 virtual void frontFace(WGC3Denum mode); | 160 virtual void frontFace(blink::WGC3Denum mode); |
| 161 virtual void generateMipmap(WGC3Denum target); | 161 virtual void generateMipmap(blink::WGC3Denum target); |
| 162 | 162 |
| 163 virtual bool getActiveAttrib(WebGLId program, | 163 virtual bool getActiveAttrib(blink::WebGLId program, |
| 164 WGC3Duint index, | 164 blink::WGC3Duint index, |
| 165 ActiveInfo&); | 165 ActiveInfo&); |
| 166 virtual bool getActiveUniform(WebGLId program, | 166 virtual bool getActiveUniform(blink::WebGLId program, |
| 167 WGC3Duint index, | 167 blink::WGC3Duint index, |
| 168 ActiveInfo&); | 168 ActiveInfo&); |
| 169 | 169 |
| 170 virtual void getAttachedShaders(WebGLId program, | 170 virtual void getAttachedShaders(blink::WebGLId program, |
| 171 WGC3Dsizei maxCount, | 171 blink::WGC3Dsizei maxCount, |
| 172 WGC3Dsizei* count, | 172 blink::WGC3Dsizei* count, |
| 173 WebGLId* shaders); | 173 blink::WebGLId* shaders); |
| 174 | 174 |
| 175 virtual WGC3Dint getAttribLocation(WebGLId program, const WGC3Dchar* name); | 175 virtual blink::WGC3Dint getAttribLocation(blink::WebGLId program, |
| 176 | 176 const blink::WGC3Dchar* name); |
| 177 virtual void getBooleanv(WGC3Denum pname, WGC3Dboolean* value); | 177 |
| 178 | 178 virtual void getBooleanv(blink::WGC3Denum pname, blink::WGC3Dboolean* value); |
| 179 virtual void getBufferParameteriv(WGC3Denum target, | 179 |
| 180 WGC3Denum pname, | 180 virtual void getBufferParameteriv(blink::WGC3Denum target, |
| 181 WGC3Dint* value); | 181 blink::WGC3Denum pname, |
| 182 | 182 blink::WGC3Dint* value); |
| 183 virtual WGC3Denum getError(); | 183 |
| 184 | 184 virtual blink::WGC3Denum getError(); |
| 185 virtual void getFloatv(WGC3Denum pname, WGC3Dfloat* value); | 185 |
| 186 | 186 virtual void getFloatv(blink::WGC3Denum pname, blink::WGC3Dfloat* value); |
| 187 virtual void getFramebufferAttachmentParameteriv(WGC3Denum target, | 187 |
| 188 WGC3Denum attachment, | 188 virtual void getFramebufferAttachmentParameteriv(blink::WGC3Denum target, |
| 189 WGC3Denum pname, | 189 blink::WGC3Denum attachment, |
| 190 WGC3Dint* value); | 190 blink::WGC3Denum pname, |
| 191 | 191 blink::WGC3Dint* value); |
| 192 virtual void getIntegerv(WGC3Denum pname, WGC3Dint* value); | 192 |
| 193 | 193 virtual void getIntegerv(blink::WGC3Denum pname, blink::WGC3Dint* value); |
| 194 virtual void getProgramiv(WebGLId program, WGC3Denum pname, WGC3Dint* value); | 194 |
| 195 | 195 virtual void getProgramiv(blink::WebGLId program, |
| 196 virtual blink::WebString getProgramInfoLog(WebGLId program); | 196 blink::WGC3Denum pname, |
| 197 | 197 blink::WGC3Dint* value); |
| 198 virtual void getRenderbufferParameteriv(WGC3Denum target, | 198 |
| 199 WGC3Denum pname, | 199 virtual blink::WebString getProgramInfoLog(blink::WebGLId program); |
| 200 WGC3Dint* value); | 200 |
| 201 | 201 virtual void getRenderbufferParameteriv(blink::WGC3Denum target, |
| 202 virtual void getShaderiv(WebGLId shader, WGC3Denum pname, WGC3Dint* value); | 202 blink::WGC3Denum pname, |
| 203 | 203 blink::WGC3Dint* value); |
| 204 virtual blink::WebString getShaderInfoLog(WebGLId shader); | 204 |
| 205 | 205 virtual void getShaderiv(blink::WebGLId shader, |
| 206 virtual void getShaderPrecisionFormat(WGC3Denum shadertype, | 206 blink::WGC3Denum pname, |
| 207 WGC3Denum precisiontype, | 207 blink::WGC3Dint* value); |
| 208 WGC3Dint* range, | 208 |
| 209 WGC3Dint* precision); | 209 virtual blink::WebString getShaderInfoLog(blink::WebGLId shader); |
| 210 | 210 |
| 211 virtual blink::WebString getShaderSource(WebGLId shader); | 211 virtual void getShaderPrecisionFormat(blink::WGC3Denum shadertype, |
| 212 virtual blink::WebString getString(WGC3Denum name); | 212 blink::WGC3Denum precisiontype, |
| 213 | 213 blink::WGC3Dint* range, |
| 214 virtual void getTexParameterfv(WGC3Denum target, | 214 blink::WGC3Dint* precision); |
| 215 WGC3Denum pname, | 215 |
| 216 WGC3Dfloat* value); | 216 virtual blink::WebString getShaderSource(blink::WebGLId shader); |
| 217 virtual void getTexParameteriv(WGC3Denum target, | 217 virtual blink::WebString getString(blink::WGC3Denum name); |
| 218 WGC3Denum pname, | 218 |
| 219 WGC3Dint* value); | 219 virtual void getTexParameterfv(blink::WGC3Denum target, |
| 220 | 220 blink::WGC3Denum pname, |
| 221 virtual void getUniformfv(WebGLId program, | 221 blink::WGC3Dfloat* value); |
| 222 WGC3Dint location, | 222 virtual void getTexParameteriv(blink::WGC3Denum target, |
| 223 WGC3Dfloat* value); | 223 blink::WGC3Denum pname, |
| 224 virtual void getUniformiv(WebGLId program, | 224 blink::WGC3Dint* value); |
| 225 WGC3Dint location, | 225 |
| 226 WGC3Dint* value); | 226 virtual void getUniformfv(blink::WebGLId program, |
| 227 | 227 blink::WGC3Dint location, |
| 228 virtual WGC3Dint getUniformLocation(WebGLId program, const WGC3Dchar* name); | 228 blink::WGC3Dfloat* value); |
| 229 | 229 virtual void getUniformiv(blink::WebGLId program, |
| 230 virtual void getVertexAttribfv(WGC3Duint index, WGC3Denum pname, | 230 blink::WGC3Dint location, |
| 231 WGC3Dfloat* value); | 231 blink::WGC3Dint* value); |
| 232 virtual void getVertexAttribiv(WGC3Duint index, WGC3Denum pname, | 232 |
| 233 WGC3Dint* value); | 233 virtual blink::WGC3Dint getUniformLocation(blink::WebGLId program, |
| 234 | 234 const blink::WGC3Dchar* name); |
| 235 virtual WGC3Dsizeiptr getVertexAttribOffset(WGC3Duint index, WGC3Denum pname); | 235 |
| 236 | 236 virtual void getVertexAttribfv(blink::WGC3Duint index, |
| 237 virtual void hint(WGC3Denum target, WGC3Denum mode); | 237 blink::WGC3Denum pname, |
| 238 virtual WGC3Dboolean isBuffer(WebGLId buffer); | 238 blink::WGC3Dfloat* value); |
| 239 virtual WGC3Dboolean isEnabled(WGC3Denum cap); | 239 virtual void getVertexAttribiv(blink::WGC3Duint index, |
| 240 virtual WGC3Dboolean isFramebuffer(WebGLId framebuffer); | 240 blink::WGC3Denum pname, |
| 241 virtual WGC3Dboolean isProgram(WebGLId program); | 241 blink::WGC3Dint* value); |
| 242 virtual WGC3Dboolean isRenderbuffer(WebGLId renderbuffer); | 242 |
| 243 virtual WGC3Dboolean isShader(WebGLId shader); | 243 virtual blink::WGC3Dsizeiptr getVertexAttribOffset(blink::WGC3Duint index, |
| 244 virtual WGC3Dboolean isTexture(WebGLId texture); | 244 blink::WGC3Denum pname); |
| 245 virtual void lineWidth(WGC3Dfloat); | 245 |
| 246 virtual void linkProgram(WebGLId program); | 246 virtual void hint(blink::WGC3Denum target, blink::WGC3Denum mode); |
| 247 virtual void pixelStorei(WGC3Denum pname, WGC3Dint param); | 247 virtual blink::WGC3Dboolean isBuffer(blink::WebGLId buffer); |
| 248 virtual void polygonOffset(WGC3Dfloat factor, WGC3Dfloat units); | 248 virtual blink::WGC3Dboolean isEnabled(blink::WGC3Denum cap); |
| 249 | 249 virtual blink::WGC3Dboolean isFramebuffer(blink::WebGLId framebuffer); |
| 250 virtual void readPixels(WGC3Dint x, | 250 virtual blink::WGC3Dboolean isProgram(blink::WebGLId program); |
| 251 WGC3Dint y, | 251 virtual blink::WGC3Dboolean isRenderbuffer(blink::WebGLId renderbuffer); |
| 252 WGC3Dsizei width, | 252 virtual blink::WGC3Dboolean isShader(blink::WebGLId shader); |
| 253 WGC3Dsizei height, | 253 virtual blink::WGC3Dboolean isTexture(blink::WebGLId texture); |
| 254 WGC3Denum format, | 254 virtual void lineWidth(blink::WGC3Dfloat); |
| 255 WGC3Denum type, | 255 virtual void linkProgram(blink::WebGLId program); |
| 256 virtual void pixelStorei(blink::WGC3Denum pname, blink::WGC3Dint param); |
| 257 virtual void polygonOffset(blink::WGC3Dfloat factor, blink::WGC3Dfloat units); |
| 258 |
| 259 virtual void readPixels(blink::WGC3Dint x, |
| 260 blink::WGC3Dint y, |
| 261 blink::WGC3Dsizei width, |
| 262 blink::WGC3Dsizei height, |
| 263 blink::WGC3Denum format, |
| 264 blink::WGC3Denum type, |
| 256 void* pixels); | 265 void* pixels); |
| 257 | 266 |
| 258 virtual void releaseShaderCompiler(); | 267 virtual void releaseShaderCompiler(); |
| 259 virtual void renderbufferStorage(WGC3Denum target, | 268 virtual void renderbufferStorage(blink::WGC3Denum target, |
| 260 WGC3Denum internalformat, | 269 blink::WGC3Denum internalformat, |
| 261 WGC3Dsizei width, | 270 blink::WGC3Dsizei width, |
| 262 WGC3Dsizei height); | 271 blink::WGC3Dsizei height); |
| 263 virtual void sampleCoverage(WGC3Dfloat value, WGC3Dboolean invert); | 272 virtual void sampleCoverage(blink::WGC3Dfloat value, |
| 264 virtual void scissor(WGC3Dint x, WGC3Dint y, | 273 blink::WGC3Dboolean invert); |
| 265 WGC3Dsizei width, WGC3Dsizei height); | 274 virtual void scissor(blink::WGC3Dint x, |
| 266 virtual void shaderSource(WebGLId shader, const WGC3Dchar* string); | 275 blink::WGC3Dint y, |
| 267 virtual void stencilFunc(WGC3Denum func, WGC3Dint ref, WGC3Duint mask); | 276 blink::WGC3Dsizei width, |
| 268 virtual void stencilFuncSeparate(WGC3Denum face, | 277 blink::WGC3Dsizei height); |
| 269 WGC3Denum func, | 278 virtual void shaderSource(blink::WebGLId shader, |
| 270 WGC3Dint ref, | 279 const blink::WGC3Dchar* string); |
| 271 WGC3Duint mask); | 280 virtual void stencilFunc(blink::WGC3Denum func, |
| 272 virtual void stencilMask(WGC3Duint mask); | 281 blink::WGC3Dint ref, |
| 273 virtual void stencilMaskSeparate(WGC3Denum face, WGC3Duint mask); | 282 blink::WGC3Duint mask); |
| 274 virtual void stencilOp(WGC3Denum fail, | 283 virtual void stencilFuncSeparate(blink::WGC3Denum face, |
| 275 WGC3Denum zfail, | 284 blink::WGC3Denum func, |
| 276 WGC3Denum zpass); | 285 blink::WGC3Dint ref, |
| 277 virtual void stencilOpSeparate(WGC3Denum face, | 286 blink::WGC3Duint mask); |
| 278 WGC3Denum fail, | 287 virtual void stencilMask(blink::WGC3Duint mask); |
| 279 WGC3Denum zfail, | 288 virtual void stencilMaskSeparate(blink::WGC3Denum face, |
| 280 WGC3Denum zpass); | 289 blink::WGC3Duint mask); |
| 281 | 290 virtual void stencilOp(blink::WGC3Denum fail, |
| 282 virtual void texImage2D(WGC3Denum target, | 291 blink::WGC3Denum zfail, |
| 283 WGC3Dint level, | 292 blink::WGC3Denum zpass); |
| 284 WGC3Denum internalformat, | 293 virtual void stencilOpSeparate(blink::WGC3Denum face, |
| 285 WGC3Dsizei width, | 294 blink::WGC3Denum fail, |
| 286 WGC3Dsizei height, | 295 blink::WGC3Denum zfail, |
| 287 WGC3Dint border, | 296 blink::WGC3Denum zpass); |
| 288 WGC3Denum format, | 297 |
| 289 WGC3Denum type, | 298 virtual void texImage2D(blink::WGC3Denum target, |
| 299 blink::WGC3Dint level, |
| 300 blink::WGC3Denum internalformat, |
| 301 blink::WGC3Dsizei width, |
| 302 blink::WGC3Dsizei height, |
| 303 blink::WGC3Dint border, |
| 304 blink::WGC3Denum format, |
| 305 blink::WGC3Denum type, |
| 290 const void* pixels); | 306 const void* pixels); |
| 291 | 307 |
| 292 virtual void texParameterf(WGC3Denum target, | 308 virtual void texParameterf(blink::WGC3Denum target, |
| 293 WGC3Denum pname, | 309 blink::WGC3Denum pname, |
| 294 WGC3Dfloat param); | 310 blink::WGC3Dfloat param); |
| 295 virtual void texParameteri(WGC3Denum target, | 311 virtual void texParameteri(blink::WGC3Denum target, |
| 296 WGC3Denum pname, | 312 blink::WGC3Denum pname, |
| 297 WGC3Dint param); | 313 blink::WGC3Dint param); |
| 298 | 314 |
| 299 virtual void texSubImage2D(WGC3Denum target, | 315 virtual void texSubImage2D(blink::WGC3Denum target, |
| 300 WGC3Dint level, | 316 blink::WGC3Dint level, |
| 301 WGC3Dint xoffset, | 317 blink::WGC3Dint xoffset, |
| 302 WGC3Dint yoffset, | 318 blink::WGC3Dint yoffset, |
| 303 WGC3Dsizei width, | 319 blink::WGC3Dsizei width, |
| 304 WGC3Dsizei height, | 320 blink::WGC3Dsizei height, |
| 305 WGC3Denum format, | 321 blink::WGC3Denum format, |
| 306 WGC3Denum type, | 322 blink::WGC3Denum type, |
| 307 const void* pixels); | 323 const void* pixels); |
| 308 | 324 |
| 309 virtual void uniform1f(WGC3Dint location, WGC3Dfloat x); | 325 virtual void uniform1f(blink::WGC3Dint location, blink::WGC3Dfloat x); |
| 310 virtual void uniform1fv(WGC3Dint location, | 326 virtual void uniform1fv(blink::WGC3Dint location, |
| 311 WGC3Dsizei count, const WGC3Dfloat* v); | 327 blink::WGC3Dsizei count, |
| 312 virtual void uniform1i(WGC3Dint location, WGC3Dint x); | 328 const blink::WGC3Dfloat* v); |
| 313 virtual void uniform1iv(WGC3Dint location, | 329 virtual void uniform1i(blink::WGC3Dint location, blink::WGC3Dint x); |
| 314 WGC3Dsizei count, const WGC3Dint* v); | 330 virtual void uniform1iv(blink::WGC3Dint location, |
| 315 virtual void uniform2f(WGC3Dint location, WGC3Dfloat x, WGC3Dfloat y); | 331 blink::WGC3Dsizei count, |
| 316 virtual void uniform2fv(WGC3Dint location, | 332 const blink::WGC3Dint* v); |
| 317 WGC3Dsizei count, const WGC3Dfloat* v); | 333 virtual void uniform2f(blink::WGC3Dint location, |
| 318 virtual void uniform2i(WGC3Dint location, WGC3Dint x, WGC3Dint y); | 334 blink::WGC3Dfloat x, |
| 319 virtual void uniform2iv(WGC3Dint location, | 335 blink::WGC3Dfloat y); |
| 320 WGC3Dsizei count, const WGC3Dint* v); | 336 virtual void uniform2fv(blink::WGC3Dint location, |
| 321 virtual void uniform3f(WGC3Dint location, | 337 blink::WGC3Dsizei count, |
| 322 WGC3Dfloat x, WGC3Dfloat y, WGC3Dfloat z); | 338 const blink::WGC3Dfloat* v); |
| 323 virtual void uniform3fv(WGC3Dint location, | 339 virtual void uniform2i(blink::WGC3Dint location, |
| 324 WGC3Dsizei count, const WGC3Dfloat* v); | 340 blink::WGC3Dint x, |
| 325 virtual void uniform3i(WGC3Dint location, | 341 blink::WGC3Dint y); |
| 326 WGC3Dint x, WGC3Dint y, WGC3Dint z); | 342 virtual void uniform2iv(blink::WGC3Dint location, |
| 327 virtual void uniform3iv(WGC3Dint location, | 343 blink::WGC3Dsizei count, |
| 328 WGC3Dsizei count, const WGC3Dint* v); | 344 const blink::WGC3Dint* v); |
| 329 virtual void uniform4f(WGC3Dint location, | 345 virtual void uniform3f(blink::WGC3Dint location, |
| 330 WGC3Dfloat x, WGC3Dfloat y, | 346 blink::WGC3Dfloat x, |
| 331 WGC3Dfloat z, WGC3Dfloat w); | 347 blink::WGC3Dfloat y, |
| 332 virtual void uniform4fv(WGC3Dint location, | 348 blink::WGC3Dfloat z); |
| 333 WGC3Dsizei count, const WGC3Dfloat* v); | 349 virtual void uniform3fv(blink::WGC3Dint location, |
| 334 virtual void uniform4i(WGC3Dint location, | 350 blink::WGC3Dsizei count, |
| 335 WGC3Dint x, WGC3Dint y, WGC3Dint z, WGC3Dint w); | 351 const blink::WGC3Dfloat* v); |
| 336 virtual void uniform4iv(WGC3Dint location, | 352 virtual void uniform3i(blink::WGC3Dint location, |
| 337 WGC3Dsizei count, const WGC3Dint* v); | 353 blink::WGC3Dint x, |
| 338 virtual void uniformMatrix2fv(WGC3Dint location, | 354 blink::WGC3Dint y, |
| 339 WGC3Dsizei count, | 355 blink::WGC3Dint z); |
| 340 WGC3Dboolean transpose, | 356 virtual void uniform3iv(blink::WGC3Dint location, |
| 341 const WGC3Dfloat* value); | 357 blink::WGC3Dsizei count, |
| 342 virtual void uniformMatrix3fv(WGC3Dint location, | 358 const blink::WGC3Dint* v); |
| 343 WGC3Dsizei count, | 359 virtual void uniform4f(blink::WGC3Dint location, |
| 344 WGC3Dboolean transpose, | 360 blink::WGC3Dfloat x, |
| 345 const WGC3Dfloat* value); | 361 blink::WGC3Dfloat y, |
| 346 virtual void uniformMatrix4fv(WGC3Dint location, | 362 blink::WGC3Dfloat z, |
| 347 WGC3Dsizei count, | 363 blink::WGC3Dfloat w); |
| 348 WGC3Dboolean transpose, | 364 virtual void uniform4fv(blink::WGC3Dint location, |
| 349 const WGC3Dfloat* value); | 365 blink::WGC3Dsizei count, |
| 350 | 366 const blink::WGC3Dfloat* v); |
| 351 virtual void useProgram(WebGLId program); | 367 virtual void uniform4i(blink::WGC3Dint location, |
| 352 virtual void validateProgram(WebGLId program); | 368 blink::WGC3Dint x, |
| 353 | 369 blink::WGC3Dint y, |
| 354 virtual void vertexAttrib1f(WGC3Duint index, WGC3Dfloat x); | 370 blink::WGC3Dint z, |
| 355 virtual void vertexAttrib1fv(WGC3Duint index, const WGC3Dfloat* values); | 371 blink::WGC3Dint w); |
| 356 virtual void vertexAttrib2f(WGC3Duint index, WGC3Dfloat x, WGC3Dfloat y); | 372 virtual void uniform4iv(blink::WGC3Dint location, |
| 357 virtual void vertexAttrib2fv(WGC3Duint index, const WGC3Dfloat* values); | 373 blink::WGC3Dsizei count, |
| 358 virtual void vertexAttrib3f(WGC3Duint index, | 374 const blink::WGC3Dint* v); |
| 359 WGC3Dfloat x, WGC3Dfloat y, WGC3Dfloat z); | 375 virtual void uniformMatrix2fv(blink::WGC3Dint location, |
| 360 virtual void vertexAttrib3fv(WGC3Duint index, const WGC3Dfloat* values); | 376 blink::WGC3Dsizei count, |
| 361 virtual void vertexAttrib4f(WGC3Duint index, | 377 blink::WGC3Dboolean transpose, |
| 362 WGC3Dfloat x, WGC3Dfloat y, | 378 const blink::WGC3Dfloat* value); |
| 363 WGC3Dfloat z, WGC3Dfloat w); | 379 virtual void uniformMatrix3fv(blink::WGC3Dint location, |
| 364 virtual void vertexAttrib4fv(WGC3Duint index, const WGC3Dfloat* values); | 380 blink::WGC3Dsizei count, |
| 365 virtual void vertexAttribPointer(WGC3Duint index, | 381 blink::WGC3Dboolean transpose, |
| 366 WGC3Dint size, | 382 const blink::WGC3Dfloat* value); |
| 367 WGC3Denum type, | 383 virtual void uniformMatrix4fv(blink::WGC3Dint location, |
| 368 WGC3Dboolean normalized, | 384 blink::WGC3Dsizei count, |
| 369 WGC3Dsizei stride, | 385 blink::WGC3Dboolean transpose, |
| 370 WGC3Dintptr offset); | 386 const blink::WGC3Dfloat* value); |
| 371 | 387 |
| 372 virtual void viewport(WGC3Dint x, WGC3Dint y, | 388 virtual void useProgram(blink::WebGLId program); |
| 373 WGC3Dsizei width, WGC3Dsizei height); | 389 virtual void validateProgram(blink::WebGLId program); |
| 374 | 390 |
| 375 virtual WebGLId createBuffer(); | 391 virtual void vertexAttrib1f(blink::WGC3Duint index, blink::WGC3Dfloat x); |
| 376 virtual WebGLId createFramebuffer(); | 392 virtual void vertexAttrib1fv(blink::WGC3Duint index, |
| 377 virtual WebGLId createRenderbuffer(); | 393 const blink::WGC3Dfloat* values); |
| 378 virtual WebGLId createTexture(); | 394 virtual void vertexAttrib2f(blink::WGC3Duint index, |
| 379 | 395 blink::WGC3Dfloat x, |
| 380 virtual void deleteBuffer(WebGLId); | 396 blink::WGC3Dfloat y); |
| 381 virtual void deleteFramebuffer(WebGLId); | 397 virtual void vertexAttrib2fv(blink::WGC3Duint index, |
| 382 virtual void deleteRenderbuffer(WebGLId); | 398 const blink::WGC3Dfloat* values); |
| 383 virtual void deleteTexture(WebGLId); | 399 virtual void vertexAttrib3f(blink::WGC3Duint index, |
| 384 | 400 blink::WGC3Dfloat x, |
| 385 virtual WebGLId createProgram(); | 401 blink::WGC3Dfloat y, |
| 386 virtual WebGLId createShader(WGC3Denum); | 402 blink::WGC3Dfloat z); |
| 387 | 403 virtual void vertexAttrib3fv(blink::WGC3Duint index, |
| 388 virtual void deleteProgram(WebGLId); | 404 const blink::WGC3Dfloat* values); |
| 389 virtual void deleteShader(WebGLId); | 405 virtual void vertexAttrib4f(blink::WGC3Duint index, |
| 390 | 406 blink::WGC3Dfloat x, |
| 391 virtual void synthesizeGLError(WGC3Denum); | 407 blink::WGC3Dfloat y, |
| 392 | 408 blink::WGC3Dfloat z, |
| 393 virtual void* mapBufferSubDataCHROMIUM( | 409 blink::WGC3Dfloat w); |
| 394 WGC3Denum target, WGC3Dintptr offset, | 410 virtual void vertexAttrib4fv(blink::WGC3Duint index, |
| 395 WGC3Dsizeiptr size, WGC3Denum access); | 411 const blink::WGC3Dfloat* values); |
| 412 virtual void vertexAttribPointer(blink::WGC3Duint index, |
| 413 blink::WGC3Dint size, |
| 414 blink::WGC3Denum type, |
| 415 blink::WGC3Dboolean normalized, |
| 416 blink::WGC3Dsizei stride, |
| 417 blink::WGC3Dintptr offset); |
| 418 |
| 419 virtual void viewport(blink::WGC3Dint x, |
| 420 blink::WGC3Dint y, |
| 421 blink::WGC3Dsizei width, |
| 422 blink::WGC3Dsizei height); |
| 423 |
| 424 virtual blink::WebGLId createBuffer(); |
| 425 virtual blink::WebGLId createFramebuffer(); |
| 426 virtual blink::WebGLId createRenderbuffer(); |
| 427 virtual blink::WebGLId createTexture(); |
| 428 |
| 429 virtual void deleteBuffer(blink::WebGLId); |
| 430 virtual void deleteFramebuffer(blink::WebGLId); |
| 431 virtual void deleteRenderbuffer(blink::WebGLId); |
| 432 virtual void deleteTexture(blink::WebGLId); |
| 433 |
| 434 virtual blink::WebGLId createProgram(); |
| 435 virtual blink::WebGLId createShader(blink::WGC3Denum); |
| 436 |
| 437 virtual void deleteProgram(blink::WebGLId); |
| 438 virtual void deleteShader(blink::WebGLId); |
| 439 |
| 440 virtual void synthesizeGLError(blink::WGC3Denum); |
| 441 |
| 442 virtual void* mapBufferSubDataCHROMIUM(blink::WGC3Denum target, |
| 443 blink::WGC3Dintptr offset, |
| 444 blink::WGC3Dsizeiptr size, |
| 445 blink::WGC3Denum access); |
| 396 virtual void unmapBufferSubDataCHROMIUM(const void*); | 446 virtual void unmapBufferSubDataCHROMIUM(const void*); |
| 397 virtual void* mapTexSubImage2DCHROMIUM( | 447 virtual void* mapTexSubImage2DCHROMIUM(blink::WGC3Denum target, |
| 398 WGC3Denum target, | 448 blink::WGC3Dint level, |
| 399 WGC3Dint level, | 449 blink::WGC3Dint xoffset, |
| 400 WGC3Dint xoffset, | 450 blink::WGC3Dint yoffset, |
| 401 WGC3Dint yoffset, | 451 blink::WGC3Dsizei width, |
| 402 WGC3Dsizei width, | 452 blink::WGC3Dsizei height, |
| 403 WGC3Dsizei height, | 453 blink::WGC3Denum format, |
| 404 WGC3Denum format, | 454 blink::WGC3Denum type, |
| 405 WGC3Denum type, | 455 blink::WGC3Denum access); |
| 406 WGC3Denum access); | |
| 407 virtual void unmapTexSubImage2DCHROMIUM(const void*); | 456 virtual void unmapTexSubImage2DCHROMIUM(const void*); |
| 408 | 457 |
| 409 virtual void setVisibilityCHROMIUM(bool visible); | 458 virtual void setVisibilityCHROMIUM(bool visible); |
| 410 | 459 |
| 411 virtual void discardFramebufferEXT(WGC3Denum target, | 460 virtual void discardFramebufferEXT(blink::WGC3Denum target, |
| 412 WGC3Dsizei numAttachments, | 461 blink::WGC3Dsizei numAttachments, |
| 413 const WGC3Denum* attachments); | 462 const blink::WGC3Denum* attachments); |
| 414 virtual void copyTextureToParentTextureCHROMIUM( | 463 virtual void copyTextureToParentTextureCHROMIUM(blink::WebGLId texture, |
| 415 WebGLId texture, WebGLId parentTexture); | 464 blink::WebGLId parentTexture); |
| 416 | 465 |
| 417 virtual blink::WebString getRequestableExtensionsCHROMIUM(); | 466 virtual blink::WebString getRequestableExtensionsCHROMIUM(); |
| 418 virtual void requestExtensionCHROMIUM(const char*); | 467 virtual void requestExtensionCHROMIUM(const char*); |
| 419 | 468 |
| 420 virtual void blitFramebufferCHROMIUM( | 469 virtual void blitFramebufferCHROMIUM(blink::WGC3Dint srcX0, |
| 421 WGC3Dint srcX0, WGC3Dint srcY0, WGC3Dint srcX1, WGC3Dint srcY1, | 470 blink::WGC3Dint srcY0, |
| 422 WGC3Dint dstX0, WGC3Dint dstY0, WGC3Dint dstX1, WGC3Dint dstY1, | 471 blink::WGC3Dint srcX1, |
| 423 WGC3Dbitfield mask, WGC3Denum filter); | 472 blink::WGC3Dint srcY1, |
| 473 blink::WGC3Dint dstX0, |
| 474 blink::WGC3Dint dstY0, |
| 475 blink::WGC3Dint dstX1, |
| 476 blink::WGC3Dint dstY1, |
| 477 blink::WGC3Dbitfield mask, |
| 478 blink::WGC3Denum filter); |
| 424 virtual void renderbufferStorageMultisampleCHROMIUM( | 479 virtual void renderbufferStorageMultisampleCHROMIUM( |
| 425 WGC3Denum target, WGC3Dsizei samples, WGC3Denum internalformat, | 480 blink::WGC3Denum target, |
| 426 WGC3Dsizei width, WGC3Dsizei height); | 481 blink::WGC3Dsizei samples, |
| 427 | 482 blink::WGC3Denum internalformat, |
| 428 virtual blink::WebString getTranslatedShaderSourceANGLE(WebGLId shader); | 483 blink::WGC3Dsizei width, |
| 484 blink::WGC3Dsizei height); |
| 485 |
| 486 virtual blink::WebString getTranslatedShaderSourceANGLE( |
| 487 blink::WebGLId shader); |
| 429 | 488 |
| 430 virtual void setContextLostCallback( | 489 virtual void setContextLostCallback( |
| 431 WebGraphicsContext3D::WebGraphicsContextLostCallback* callback); | 490 WebGraphicsContext3D::WebGraphicsContextLostCallback* callback); |
| 432 | 491 |
| 433 virtual void setErrorMessageCallback( | 492 virtual void setErrorMessageCallback( |
| 434 WebGraphicsContext3D::WebGraphicsErrorMessageCallback* callback); | 493 WebGraphicsContext3D::WebGraphicsErrorMessageCallback* callback); |
| 435 | 494 |
| 436 virtual void texImageIOSurface2DCHROMIUM( | 495 virtual void texImageIOSurface2DCHROMIUM(blink::WGC3Denum target, |
| 437 WGC3Denum target, WGC3Dint width, WGC3Dint height, | 496 blink::WGC3Dint width, |
| 438 WGC3Duint ioSurfaceId, WGC3Duint plane); | 497 blink::WGC3Dint height, |
| 439 | 498 blink::WGC3Duint ioSurfaceId, |
| 440 virtual void texStorage2DEXT( | 499 blink::WGC3Duint plane); |
| 441 WGC3Denum target, WGC3Dint levels, WGC3Duint internalformat, | 500 |
| 442 WGC3Dint width, WGC3Dint height); | 501 virtual void texStorage2DEXT(blink::WGC3Denum target, |
| 443 | 502 blink::WGC3Dint levels, |
| 444 virtual WebGLId createQueryEXT(); | 503 blink::WGC3Duint internalformat, |
| 445 virtual void deleteQueryEXT(WebGLId query); | 504 blink::WGC3Dint width, |
| 446 virtual WGC3Dboolean isQueryEXT(WGC3Duint query); | 505 blink::WGC3Dint height); |
| 447 virtual void beginQueryEXT(WGC3Denum target, WebGLId query); | 506 |
| 448 virtual void endQueryEXT(WGC3Denum target); | 507 virtual blink::WebGLId createQueryEXT(); |
| 449 virtual void getQueryivEXT( | 508 virtual void deleteQueryEXT(blink::WebGLId query); |
| 450 WGC3Denum target, WGC3Denum pname, WGC3Dint* params); | 509 virtual blink::WGC3Dboolean isQueryEXT(blink::WGC3Duint query); |
| 451 virtual void getQueryObjectuivEXT( | 510 virtual void beginQueryEXT(blink::WGC3Denum target, blink::WebGLId query); |
| 452 WebGLId query, WGC3Denum pname, WGC3Duint* params); | 511 virtual void endQueryEXT(blink::WGC3Denum target); |
| 512 virtual void getQueryivEXT(blink::WGC3Denum target, |
| 513 blink::WGC3Denum pname, |
| 514 blink::WGC3Dint* params); |
| 515 virtual void getQueryObjectuivEXT(blink::WebGLId query, |
| 516 blink::WGC3Denum pname, |
| 517 blink::WGC3Duint* params); |
| 453 | 518 |
| 454 // TODO(dshwang): Remove |level| in Blink and then remove it. | 519 // TODO(dshwang): Remove |level| in Blink and then remove it. |
| 455 void copyTextureCHROMIUM(WGC3Denum target, | 520 void copyTextureCHROMIUM(blink::WGC3Denum target, |
| 456 WebGLId source_id, | 521 blink::WebGLId source_id, |
| 457 WebGLId dest_id, | 522 blink::WebGLId dest_id, |
| 458 WGC3Dint level, | 523 blink::WGC3Dint level, |
| 459 WGC3Denum internal_format, | 524 blink::WGC3Denum internal_format, |
| 460 WGC3Denum dest_type) override; | 525 blink::WGC3Denum dest_type) override; |
| 461 | 526 |
| 462 void copySubTextureCHROMIUM(WGC3Denum target, | 527 void copySubTextureCHROMIUM(blink::WGC3Denum target, |
| 463 WebGLId source_id, | 528 blink::WebGLId source_id, |
| 464 WebGLId dest_id, | 529 blink::WebGLId dest_id, |
| 465 WGC3Dint level, | 530 blink::WGC3Dint level, |
| 466 WGC3Dint xoffset, | 531 blink::WGC3Dint xoffset, |
| 467 WGC3Dint yoffset) override; | 532 blink::WGC3Dint yoffset) override; |
| 468 | 533 |
| 469 virtual void copyTextureCHROMIUM(WGC3Denum target, | 534 virtual void copyTextureCHROMIUM(blink::WGC3Denum target, |
| 470 WebGLId source_id, | 535 blink::WebGLId source_id, |
| 471 WebGLId dest_id, | 536 blink::WebGLId dest_id, |
| 472 WGC3Denum internal_format, | 537 blink::WGC3Denum internal_format, |
| 473 WGC3Denum dest_type); | 538 blink::WGC3Denum dest_type); |
| 474 | 539 |
| 475 virtual void copySubTextureCHROMIUM(WGC3Denum target, | 540 virtual void copySubTextureCHROMIUM(blink::WGC3Denum target, |
| 476 WebGLId sourceId, | 541 blink::WebGLId sourceId, |
| 477 WebGLId destId, | 542 blink::WebGLId destId, |
| 478 WGC3Dint xoffset, | 543 blink::WGC3Dint xoffset, |
| 479 WGC3Dint yoffset); | 544 blink::WGC3Dint yoffset); |
| 480 | 545 |
| 481 virtual void bindUniformLocationCHROMIUM(WebGLId program, WGC3Dint location, | 546 virtual void bindUniformLocationCHROMIUM(blink::WebGLId program, |
| 482 const WGC3Dchar* uniform); | 547 blink::WGC3Dint location, |
| 548 const blink::WGC3Dchar* uniform); |
| 483 | 549 |
| 484 virtual void shallowFlushCHROMIUM(); | 550 virtual void shallowFlushCHROMIUM(); |
| 485 virtual void shallowFinishCHROMIUM(); | 551 virtual void shallowFinishCHROMIUM(); |
| 486 | 552 |
| 487 virtual void genMailboxCHROMIUM(WGC3Dbyte* mailbox); | 553 virtual void genMailboxCHROMIUM(blink::WGC3Dbyte* mailbox); |
| 488 virtual void produceTextureCHROMIUM(WGC3Denum target, | 554 virtual void produceTextureCHROMIUM(blink::WGC3Denum target, |
| 489 const WGC3Dbyte* mailbox); | 555 const blink::WGC3Dbyte* mailbox); |
| 490 virtual void produceTextureDirectCHROMIUM(WebGLId texture, WGC3Denum target, | 556 virtual void produceTextureDirectCHROMIUM(blink::WebGLId texture, |
| 491 const WGC3Dbyte* mailbox); | 557 blink::WGC3Denum target, |
| 492 virtual void consumeTextureCHROMIUM(WGC3Denum target, | 558 const blink::WGC3Dbyte* mailbox); |
| 493 const WGC3Dbyte* mailbox); | 559 virtual void consumeTextureCHROMIUM(blink::WGC3Denum target, |
| 494 virtual WebGLId createAndConsumeTextureCHROMIUM(WGC3Denum target, | 560 const blink::WGC3Dbyte* mailbox); |
| 495 const WGC3Dbyte* mailbox); | 561 virtual blink::WebGLId createAndConsumeTextureCHROMIUM( |
| 496 | 562 blink::WGC3Denum target, |
| 497 virtual void genValuebuffersCHROMIUM(WGC3Dsizei count, WebGLId* ids); | 563 const blink::WGC3Dbyte* mailbox); |
| 498 virtual WebGLId createValuebufferCHROMIUM(); | 564 |
| 499 virtual void deleteValuebuffersCHROMIUM(WGC3Dsizei count, WebGLId* ids); | 565 virtual void genValuebuffersCHROMIUM(blink::WGC3Dsizei count, |
| 500 virtual void deleteValuebufferCHROMIUM(WebGLId); | 566 blink::WebGLId* ids); |
| 501 virtual void bindValuebufferCHROMIUM(WGC3Denum target, WebGLId valuebuffer); | 567 virtual blink::WebGLId createValuebufferCHROMIUM(); |
| 502 virtual WGC3Dboolean isValuebufferCHROMIUM(WebGLId renderbuffer); | 568 virtual void deleteValuebuffersCHROMIUM(blink::WGC3Dsizei count, |
| 503 virtual void subscribeValueCHROMIUM(WGC3Denum target, WGC3Denum subscription); | 569 blink::WebGLId* ids); |
| 504 virtual void populateSubscribedValuesCHROMIUM(WGC3Denum target); | 570 virtual void deleteValuebufferCHROMIUM(blink::WebGLId); |
| 505 virtual void uniformValuebufferCHROMIUM(WGC3Dint location, | 571 virtual void bindValuebufferCHROMIUM(blink::WGC3Denum target, |
| 506 WGC3Denum target, | 572 blink::WebGLId valuebuffer); |
| 507 WGC3Denum subscription); | 573 virtual blink::WGC3Dboolean isValuebufferCHROMIUM( |
| 508 virtual void traceBeginCHROMIUM(const WGC3Dchar* category_name, | 574 blink::WebGLId renderbuffer); |
| 509 const WGC3Dchar* trace_name); | 575 virtual void subscribeValueCHROMIUM(blink::WGC3Denum target, |
| 576 blink::WGC3Denum subscription); |
| 577 virtual void populateSubscribedValuesCHROMIUM(blink::WGC3Denum target); |
| 578 virtual void uniformValuebufferCHROMIUM(blink::WGC3Dint location, |
| 579 blink::WGC3Denum target, |
| 580 blink::WGC3Denum subscription); |
| 581 virtual void traceBeginCHROMIUM(const blink::WGC3Dchar* category_name, |
| 582 const blink::WGC3Dchar* trace_name); |
| 510 virtual void traceEndCHROMIUM(); | 583 virtual void traceEndCHROMIUM(); |
| 511 | 584 |
| 512 virtual void insertEventMarkerEXT(const WGC3Dchar* marker); | 585 virtual void insertEventMarkerEXT(const blink::WGC3Dchar* marker); |
| 513 virtual void pushGroupMarkerEXT(const WGC3Dchar* marker); | 586 virtual void pushGroupMarkerEXT(const blink::WGC3Dchar* marker); |
| 514 virtual void popGroupMarkerEXT(); | 587 virtual void popGroupMarkerEXT(); |
| 515 | 588 |
| 516 // GL_OES_vertex_array_object | 589 // GL_OES_vertex_array_object |
| 517 virtual WebGLId createVertexArrayOES(); | 590 virtual blink::WebGLId createVertexArrayOES(); |
| 518 virtual void deleteVertexArrayOES(WebGLId array); | 591 virtual void deleteVertexArrayOES(blink::WebGLId array); |
| 519 virtual WGC3Dboolean isVertexArrayOES(WebGLId array); | 592 virtual blink::WGC3Dboolean isVertexArrayOES(blink::WebGLId array); |
| 520 virtual void bindVertexArrayOES(WebGLId array); | 593 virtual void bindVertexArrayOES(blink::WebGLId array); |
| 521 | 594 |
| 522 virtual void bindTexImage2DCHROMIUM(WGC3Denum target, WGC3Dint image_id); | 595 virtual void bindTexImage2DCHROMIUM(blink::WGC3Denum target, |
| 523 virtual void releaseTexImage2DCHROMIUM(WGC3Denum target, WGC3Dint image_id); | 596 blink::WGC3Dint image_id); |
| 524 | 597 virtual void releaseTexImage2DCHROMIUM(blink::WGC3Denum target, |
| 525 virtual void* mapBufferCHROMIUM(WGC3Denum target, WGC3Denum access); | 598 blink::WGC3Dint image_id); |
| 526 virtual WGC3Dboolean unmapBufferCHROMIUM(WGC3Denum target); | 599 |
| 600 virtual void* mapBufferCHROMIUM(blink::WGC3Denum target, |
| 601 blink::WGC3Denum access); |
| 602 virtual blink::WGC3Dboolean unmapBufferCHROMIUM(blink::WGC3Denum target); |
| 527 | 603 |
| 528 // Async pixel transfer functions. | 604 // Async pixel transfer functions. |
| 529 virtual void asyncTexImage2DCHROMIUM( | 605 virtual void asyncTexImage2DCHROMIUM(blink::WGC3Denum target, |
| 530 WGC3Denum target, | 606 blink::WGC3Dint level, |
| 531 WGC3Dint level, | 607 blink::WGC3Denum internalformat, |
| 532 WGC3Denum internalformat, | 608 blink::WGC3Dsizei width, |
| 533 WGC3Dsizei width, | 609 blink::WGC3Dsizei height, |
| 534 WGC3Dsizei height, | 610 blink::WGC3Dint border, |
| 535 WGC3Dint border, | 611 blink::WGC3Denum format, |
| 536 WGC3Denum format, | 612 blink::WGC3Denum type, |
| 537 WGC3Denum type, | 613 const void* pixels); |
| 538 const void* pixels); | 614 virtual void asyncTexSubImage2DCHROMIUM(blink::WGC3Denum target, |
| 539 virtual void asyncTexSubImage2DCHROMIUM( | 615 blink::WGC3Dint level, |
| 540 WGC3Denum target, | 616 blink::WGC3Dint xoffset, |
| 541 WGC3Dint level, | 617 blink::WGC3Dint yoffset, |
| 542 WGC3Dint xoffset, | 618 blink::WGC3Dsizei width, |
| 543 WGC3Dint yoffset, | 619 blink::WGC3Dsizei height, |
| 544 WGC3Dsizei width, | 620 blink::WGC3Denum format, |
| 545 WGC3Dsizei height, | 621 blink::WGC3Denum type, |
| 546 WGC3Denum format, | 622 const void* pixels); |
| 547 WGC3Denum type, | 623 virtual void waitAsyncTexImage2DCHROMIUM(blink::WGC3Denum target); |
| 548 const void* pixels); | |
| 549 virtual void waitAsyncTexImage2DCHROMIUM(WGC3Denum target); | |
| 550 | 624 |
| 551 // GL_EXT_draw_buffers | 625 // GL_EXT_draw_buffers |
| 552 virtual void drawBuffersEXT( | 626 virtual void drawBuffersEXT(blink::WGC3Dsizei n, |
| 553 WGC3Dsizei n, | 627 const blink::WGC3Denum* bufs); |
| 554 const WGC3Denum* bufs); | |
| 555 | 628 |
| 556 // GL_ANGLE_instanced_arrays | 629 // GL_ANGLE_instanced_arrays |
| 557 virtual void drawArraysInstancedANGLE(WGC3Denum mode, WGC3Dint first, | 630 virtual void drawArraysInstancedANGLE(blink::WGC3Denum mode, |
| 558 WGC3Dsizei count, WGC3Dsizei primcount); | 631 blink::WGC3Dint first, |
| 559 virtual void drawElementsInstancedANGLE(WGC3Denum mode, WGC3Dsizei count, | 632 blink::WGC3Dsizei count, |
| 560 WGC3Denum type, WGC3Dintptr offset, WGC3Dsizei primcount); | 633 blink::WGC3Dsizei primcount); |
| 561 virtual void vertexAttribDivisorANGLE(WGC3Duint index, WGC3Duint divisor); | 634 virtual void drawElementsInstancedANGLE(blink::WGC3Denum mode, |
| 635 blink::WGC3Dsizei count, |
| 636 blink::WGC3Denum type, |
| 637 blink::WGC3Dintptr offset, |
| 638 blink::WGC3Dsizei primcount); |
| 639 virtual void vertexAttribDivisorANGLE(blink::WGC3Duint index, |
| 640 blink::WGC3Duint divisor); |
| 562 | 641 |
| 563 // GL_CHROMIUM_gpu_memory_buffer_image | 642 // GL_CHROMIUM_gpu_memory_buffer_image |
| 564 virtual WGC3Duint createGpuMemoryBufferImageCHROMIUM(WGC3Dsizei width, | 643 virtual blink::WGC3Duint createGpuMemoryBufferImageCHROMIUM( |
| 565 WGC3Dsizei height, | 644 blink::WGC3Dsizei width, |
| 566 WGC3Denum internalformat, | 645 blink::WGC3Dsizei height, |
| 567 WGC3Denum usage); | 646 blink::WGC3Denum internalformat, |
| 568 virtual void destroyImageCHROMIUM(WGC3Duint image_id); | 647 blink::WGC3Denum usage); |
| 648 virtual void destroyImageCHROMIUM(blink::WGC3Duint image_id); |
| 569 | 649 |
| 570 // GL_EXT_multisampled_render_to_texture | 650 // GL_EXT_multisampled_render_to_texture |
| 571 virtual void framebufferTexture2DMultisampleEXT(WGC3Denum target, | 651 virtual void framebufferTexture2DMultisampleEXT(blink::WGC3Denum target, |
| 572 WGC3Denum attachment, | 652 blink::WGC3Denum attachment, |
| 573 WGC3Denum textarget, | 653 blink::WGC3Denum textarget, |
| 574 WebGLId texture, | 654 blink::WebGLId texture, |
| 575 WGC3Dint level, | 655 blink::WGC3Dint level, |
| 576 WGC3Dsizei samples); | 656 blink::WGC3Dsizei samples); |
| 577 virtual void renderbufferStorageMultisampleEXT( | 657 virtual void renderbufferStorageMultisampleEXT( |
| 578 WGC3Denum target, WGC3Dsizei samples, WGC3Denum internalformat, | 658 blink::WGC3Denum target, |
| 579 WGC3Dsizei width, WGC3Dsizei height); | 659 blink::WGC3Dsizei samples, |
| 660 blink::WGC3Denum internalformat, |
| 661 blink::WGC3Dsizei width, |
| 662 blink::WGC3Dsizei height); |
| 580 | 663 |
| 581 // OpenGL ES 3.0 functions not represented by pre-existing extensions | 664 // OpenGL ES 3.0 functions not represented by pre-existing extensions |
| 582 virtual void beginTransformFeedback(WGC3Denum primitiveMode); | 665 virtual void beginTransformFeedback(blink::WGC3Denum primitiveMode); |
| 583 virtual void bindBufferBase(WGC3Denum target, WGC3Duint index, | 666 virtual void bindBufferBase(blink::WGC3Denum target, |
| 584 WGC3Duint buffer); | 667 blink::WGC3Duint index, |
| 585 virtual void bindBufferRange(WGC3Denum target, WGC3Duint index, | 668 blink::WGC3Duint buffer); |
| 586 WGC3Duint buffer, WGC3Dintptr offset, WGC3Dsizeiptr size); | 669 virtual void bindBufferRange(blink::WGC3Denum target, |
| 587 virtual void bindSampler(WGC3Duint unit, WebGLId sampler); | 670 blink::WGC3Duint index, |
| 588 virtual void bindTransformFeedback(WGC3Denum target, | 671 blink::WGC3Duint buffer, |
| 589 WebGLId transformfeedback); | 672 blink::WGC3Dintptr offset, |
| 590 virtual void clearBufferfi(WGC3Denum buffer, WGC3Dint drawbuffer, | 673 blink::WGC3Dsizeiptr size); |
| 591 WGC3Dfloat depth, WGC3Dint stencil); | 674 virtual void bindSampler(blink::WGC3Duint unit, blink::WebGLId sampler); |
| 592 virtual void clearBufferfv(WGC3Denum buffer, WGC3Dint drawbuffer, | 675 virtual void bindTransformFeedback(blink::WGC3Denum target, |
| 593 const WGC3Dfloat *value); | 676 blink::WebGLId transformfeedback); |
| 594 virtual void clearBufferiv(WGC3Denum buffer, WGC3Dint drawbuffer, | 677 virtual void clearBufferfi(blink::WGC3Denum buffer, |
| 595 const WGC3Dint *value); | 678 blink::WGC3Dint drawbuffer, |
| 596 virtual void clearBufferuiv(WGC3Denum buffer, WGC3Dint drawbuffer, | 679 blink::WGC3Dfloat depth, |
| 597 const WGC3Duint *value); | 680 blink::WGC3Dint stencil); |
| 598 //virtual WGC3Denum clientWaitSync(WebGLId sync, WGC3Dbitfield flags, | 681 virtual void clearBufferfv(blink::WGC3Denum buffer, |
| 599 // WGC3Duint64 timeout); | 682 blink::WGC3Dint drawbuffer, |
| 600 //virtual void compressedTexImage3D(WGC3Denum target, WGC3Dint level, | 683 const blink::WGC3Dfloat* value); |
| 601 // WGC3Denum internalformat, WGC3Dsizei width, WGC3Dsizei height, | 684 virtual void clearBufferiv(blink::WGC3Denum buffer, |
| 602 // WGC3Dsizei depth, WGC3Dint border, WGC3Dsizei imageSize, | 685 blink::WGC3Dint drawbuffer, |
| 603 // const void *data); | 686 const blink::WGC3Dint* value); |
| 604 //virtual void compressedTexSubImage3D(WGC3Denum target, WGC3Dint level, | 687 virtual void clearBufferuiv(blink::WGC3Denum buffer, |
| 605 // WGC3Dint xoffset, WGC3Dint yoffset, WGC3Dint zoffset, WGC3Dsizei width, | 688 blink::WGC3Dint drawbuffer, |
| 606 // WGC3Dsizei height, WGC3Dsizei depth, WGC3Denum format, | 689 const blink::WGC3Duint* value); |
| 690 // virtual blink::WGC3Denum clientWaitSync(blink::WebGLId sync, |
| 691 // blink::WGC3Dbitfield flags, |
| 692 // blink::WGC3Duint64 timeout); |
| 693 // virtual void compressedTexImage3D(blink::WGC3Denum target, blink::WGC3Dint |
| 694 // level, |
| 695 // blink::WGC3Denum internalformat, blink::WGC3Dsizei width, |
| 696 // WGC3Dsizei height, WGC3Dsizei depth, blink::WGC3Dint border, |
| 607 // WGC3Dsizei imageSize, const void *data); | 697 // WGC3Dsizei imageSize, const void *data); |
| 608 virtual void copyBufferSubData(WGC3Denum readTarget, WGC3Denum writeTarget, | 698 // virtual void compressedTexSubImage3D(blink::WGC3Denum target, |
| 609 WGC3Dintptr readOffset, WGC3Dintptr writeOffset, WGC3Dsizeiptr size); | 699 // blink::WGC3Dint level, blink::WGC3Dint xoffset, blink::WGC3Dint yoffset, |
| 610 virtual void copyTexSubImage3D(WGC3Denum target, WGC3Dint level, | 700 // blink::WGC3Dint zoffset, |
| 611 WGC3Dint xoffset, WGC3Dint yoffset, WGC3Dint zoffset, WGC3Dint x, | 701 // blink::WGC3Dsizei width, blink::WGC3Dsizei height, |
| 612 WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height); | 702 // blink::WGC3Dsizei depth, blink::WGC3Denum format, |
| 613 virtual WebGLId createSampler(); | 703 // blink::WGC3Dsizei imageSize, const void *data); |
| 614 virtual WebGLId createTransformFeedback(); | 704 virtual void copyBufferSubData(blink::WGC3Denum readTarget, |
| 615 virtual void deleteSampler(WebGLId sampler); | 705 blink::WGC3Denum writeTarget, |
| 616 //virtual void deleteSync(WebGLId sync); | 706 blink::WGC3Dintptr readOffset, |
| 617 virtual void deleteTransformFeedback(WebGLId transformfeedback); | 707 blink::WGC3Dintptr writeOffset, |
| 708 blink::WGC3Dsizeiptr size); |
| 709 virtual void copyTexSubImage3D(blink::WGC3Denum target, |
| 710 blink::WGC3Dint level, |
| 711 blink::WGC3Dint xoffset, |
| 712 blink::WGC3Dint yoffset, |
| 713 blink::WGC3Dint zoffset, |
| 714 blink::WGC3Dint x, |
| 715 blink::WGC3Dint y, |
| 716 blink::WGC3Dsizei width, |
| 717 blink::WGC3Dsizei height); |
| 718 virtual blink::WebGLId createSampler(); |
| 719 virtual blink::WebGLId createTransformFeedback(); |
| 720 virtual void deleteSampler(blink::WebGLId sampler); |
| 721 // virtual void deleteSync(blink::WebGLId sync); |
| 722 virtual void deleteTransformFeedback(blink::WebGLId transformfeedback); |
| 618 virtual void endTransformFeedback(void); | 723 virtual void endTransformFeedback(void); |
| 619 //virtual WebGLId fenceSync(WGC3Denum condition, WGC3Dbitfield flags); | 724 // virtual blink::WebGLId fenceSync(blink::WGC3Denum condition, |
| 620 virtual void framebufferTextureLayer(WGC3Denum target, WGC3Denum attachment, | 725 // blink::WGC3Dbitfield flags); |
| 621 WGC3Duint texture, WGC3Dint level, WGC3Dint layer); | 726 virtual void framebufferTextureLayer(blink::WGC3Denum target, |
| 622 virtual void getActiveUniformBlockName(WGC3Duint program, | 727 blink::WGC3Denum attachment, |
| 623 WGC3Duint uniformBlockIndex, WGC3Dsizei bufSize, WGC3Dsizei *length, | 728 blink::WGC3Duint texture, |
| 624 WGC3Dchar *uniformBlockName); | 729 blink::WGC3Dint level, |
| 625 virtual void getActiveUniformBlockiv(WGC3Duint program, | 730 blink::WGC3Dint layer); |
| 626 WGC3Duint uniformBlockIndex, WGC3Denum pname, WGC3Dint *params); | 731 virtual void getActiveUniformBlockName(blink::WGC3Duint program, |
| 627 //virtual void getActiveUniformsiv(WGC3Duint program, WGC3Dsizei uniformCount, | 732 blink::WGC3Duint uniformBlockIndex, |
| 628 // const WGC3Duint *uniformIndices, WGC3Denum pname, WGC3Dint *params); | 733 blink::WGC3Dsizei bufSize, |
| 629 virtual WGC3Dint getFragDataLocation(WGC3Duint program, | 734 blink::WGC3Dsizei* length, |
| 630 const WGC3Dchar *name); | 735 blink::WGC3Dchar* uniformBlockName); |
| 631 virtual void getInternalformativ(WGC3Denum target, WGC3Denum internalformat, | 736 virtual void getActiveUniformBlockiv(blink::WGC3Duint program, |
| 632 WGC3Denum pname, WGC3Dsizei bufSize, WGC3Dint *params); | 737 blink::WGC3Duint uniformBlockIndex, |
| 633 virtual void getSamplerParameterfv(WGC3Duint sampler, WGC3Denum pname, | 738 blink::WGC3Denum pname, |
| 634 WGC3Dfloat *params); | 739 blink::WGC3Dint* params); |
| 635 virtual void getSamplerParameteriv(WGC3Duint sampler, WGC3Denum pname, | 740 // virtual void getActiveUniformsiv(blink::WGC3Duint program, |
| 636 WGC3Dint *params); | 741 // blink::WGC3Dsizei uniformCount, const blink::WGC3Duint *uniformIndices, |
| 637 //virtual void getTransformFeedbackVarying(WGC3Duint program, WGC3Duint index, | 742 // blink::WGC3Denum pname, blink::WGC3Dint *params); |
| 638 // WGC3Dsizei bufSize, WGC3Dsizei *length, WGC3Dsizei *size, | 743 virtual blink::WGC3Dint getFragDataLocation(blink::WGC3Duint program, |
| 639 // WGC3Denum *type, WGC3Dchar *name); | 744 const blink::WGC3Dchar* name); |
| 640 virtual WGC3Duint getUniformBlockIndex(WGC3Duint program, | 745 virtual void getInternalformativ(blink::WGC3Denum target, |
| 641 const WGC3Dchar *uniformBlockName); | 746 blink::WGC3Denum internalformat, |
| 642 //virtual void getUniformIndices(WGC3Duint program, WGC3Dsizei uniformCount, | 747 blink::WGC3Denum pname, |
| 643 // const WGC3Dchar *const*uniformNames, WGC3Duint *uniformIndices); | 748 blink::WGC3Dsizei bufSize, |
| 644 //virtual void getUniformuiv(WGC3Duint program, WGC3Dint location, | 749 blink::WGC3Dint* params); |
| 645 // WGC3Duint *params); | 750 virtual void getSamplerParameterfv(blink::WGC3Duint sampler, |
| 646 //virtual void getVertexAttribIiv(WGC3Duint index, WGC3Denum pname, | 751 blink::WGC3Denum pname, |
| 647 // WGC3Dint *params); | 752 blink::WGC3Dfloat* params); |
| 648 //virtual void getVertexAttribIuiv(WGC3Duint index, WGC3Denum pname, | 753 virtual void getSamplerParameteriv(blink::WGC3Duint sampler, |
| 649 // WGC3Duint *params); | 754 blink::WGC3Denum pname, |
| 650 virtual void invalidateFramebuffer(WGC3Denum target, | 755 blink::WGC3Dint* params); |
| 651 WGC3Dsizei numAttachments, const WGC3Denum *attachments); | 756 // virtual void getTransformFeedbackVarying(blink::WGC3Duint program, |
| 652 virtual void invalidateSubFramebuffer(WGC3Denum target, | 757 // blink::WGC3Duint index, |
| 653 WGC3Dsizei numAttachments, const WGC3Denum *attachments, WGC3Dint x, | 758 // blink::WGC3Dsizei bufSize, blink::WGC3Dsizei *length, |
| 654 WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height); | 759 // blink::WGC3Dsizei *size, blink::WGC3Denum *type, |
| 655 virtual WGC3Dboolean isSampler(WebGLId sampler); | 760 // blink::WGC3Dchar *name); |
| 656 //virtual WGC3Dboolean isSync(WebGLId sync); | 761 virtual blink::WGC3Duint getUniformBlockIndex( |
| 657 virtual WGC3Dboolean isTransformFeedback(WGC3Duint id); | 762 blink::WGC3Duint program, |
| 763 const blink::WGC3Dchar* uniformBlockName); |
| 764 // virtual void getUniformIndices(blink::WGC3Duint program, |
| 765 // blink::WGC3Dsizei uniformCount, |
| 766 // const blink::WGC3Dchar *const*uniformNames, |
| 767 // blink::WGC3Duint *uniformIndices); |
| 768 // virtual void getUniformuiv(blink::WGC3Duint program, blink::WGC3Dint |
| 769 // location, |
| 770 // blink::WGC3Duint *params); |
| 771 // virtual void getVertexAttribIiv(blink::WGC3Duint index, blink::WGC3Denum |
| 772 // pname, |
| 773 // blink::WGC3Dint *params); |
| 774 // virtual void getVertexAttribIuiv(blink::WGC3Duint index, blink::WGC3Denum |
| 775 // pname, |
| 776 // blink::WGC3Duint *params); |
| 777 virtual void invalidateFramebuffer(blink::WGC3Denum target, |
| 778 blink::WGC3Dsizei numAttachments, |
| 779 const blink::WGC3Denum* attachments); |
| 780 virtual void invalidateSubFramebuffer(blink::WGC3Denum target, |
| 781 blink::WGC3Dsizei numAttachments, |
| 782 const blink::WGC3Denum* attachments, |
| 783 blink::WGC3Dint x, |
| 784 blink::WGC3Dint y, |
| 785 blink::WGC3Dsizei width, |
| 786 blink::WGC3Dsizei height); |
| 787 virtual blink::WGC3Dboolean isSampler(blink::WebGLId sampler); |
| 788 // virtual blink::WGC3Dboolean isSync(blink::WebGLId sync); |
| 789 virtual blink::WGC3Dboolean isTransformFeedback(blink::WGC3Duint id); |
| 658 virtual void pauseTransformFeedback(void); | 790 virtual void pauseTransformFeedback(void); |
| 659 //virtual void programParameteri(WGC3Duint program, WGC3Denum pname, | 791 // virtual void programParameteri(blink::WGC3Duint program, blink::WGC3Denum |
| 660 // WGC3Dint value); | 792 // pname, |
| 661 virtual void readBuffer(WGC3Denum src); | 793 // blink::WGC3Dint value); |
| 794 virtual void readBuffer(blink::WGC3Denum src); |
| 662 virtual void resumeTransformFeedback(void); | 795 virtual void resumeTransformFeedback(void); |
| 663 virtual void samplerParameterf(WGC3Duint sampler, WGC3Denum pname, | 796 virtual void samplerParameterf(blink::WGC3Duint sampler, |
| 664 WGC3Dfloat param); | 797 blink::WGC3Denum pname, |
| 665 virtual void samplerParameterfv(WGC3Duint sampler, WGC3Denum pname, | 798 blink::WGC3Dfloat param); |
| 666 const WGC3Dfloat *param); | 799 virtual void samplerParameterfv(blink::WGC3Duint sampler, |
| 667 virtual void samplerParameteri(WGC3Duint sampler, WGC3Denum pname, | 800 blink::WGC3Denum pname, |
| 668 WGC3Dint param); | 801 const blink::WGC3Dfloat* param); |
| 669 virtual void samplerParameteriv(WGC3Duint sampler, WGC3Denum pname, | 802 virtual void samplerParameteri(blink::WGC3Duint sampler, |
| 670 const WGC3Dint *param); | 803 blink::WGC3Denum pname, |
| 671 virtual void texImage3D(WGC3Denum target, WGC3Dint level, | 804 blink::WGC3Dint param); |
| 672 WGC3Dint internalformat, WGC3Dsizei width, WGC3Dsizei height, | 805 virtual void samplerParameteriv(blink::WGC3Duint sampler, |
| 673 WGC3Dsizei depth, WGC3Dint border, WGC3Denum format, WGC3Denum type, | 806 blink::WGC3Denum pname, |
| 674 const void *pixels); | 807 const blink::WGC3Dint* param); |
| 675 virtual void texStorage3D(WGC3Denum target, WGC3Dsizei levels, | 808 virtual void texImage3D(blink::WGC3Denum target, |
| 676 WGC3Denum internalformat, WGC3Dsizei width, WGC3Dsizei height, | 809 blink::WGC3Dint level, |
| 677 WGC3Dsizei depth); | 810 blink::WGC3Dint internalformat, |
| 678 virtual void texSubImage3D(WGC3Denum target, WGC3Dint level, WGC3Dint xoffset, | 811 blink::WGC3Dsizei width, |
| 679 WGC3Dint yoffset, WGC3Dint zoffset, WGC3Dsizei width, WGC3Dsizei height, | 812 blink::WGC3Dsizei height, |
| 680 WGC3Dsizei depth, WGC3Denum format, WGC3Denum type, const void *pixels); | 813 blink::WGC3Dsizei depth, |
| 681 virtual void transformFeedbackVaryings(WGC3Duint program, WGC3Dsizei count, | 814 blink::WGC3Dint border, |
| 682 const WGC3Dchar *const*varyings, WGC3Denum bufferMode); | 815 blink::WGC3Denum format, |
| 683 virtual void uniform1ui(WGC3Dint location, WGC3Duint x); | 816 blink::WGC3Denum type, |
| 684 virtual void uniform1uiv(WGC3Dint location, WGC3Dsizei count, | 817 const void* pixels); |
| 685 const WGC3Duint *value); | 818 virtual void texStorage3D(blink::WGC3Denum target, |
| 686 virtual void uniform2ui(WGC3Dint location, WGC3Duint x, WGC3Duint y); | 819 blink::WGC3Dsizei levels, |
| 687 virtual void uniform2uiv(WGC3Dint location, WGC3Dsizei count, | 820 blink::WGC3Denum internalformat, |
| 688 const WGC3Duint *value); | 821 blink::WGC3Dsizei width, |
| 689 virtual void uniform3ui(WGC3Dint location, WGC3Duint x, WGC3Duint y, | 822 blink::WGC3Dsizei height, |
| 690 WGC3Duint z); | 823 blink::WGC3Dsizei depth); |
| 691 virtual void uniform3uiv(WGC3Dint location, WGC3Dsizei count, | 824 virtual void texSubImage3D(blink::WGC3Denum target, |
| 692 const WGC3Duint *value); | 825 blink::WGC3Dint level, |
| 693 virtual void uniform4ui(WGC3Dint location, WGC3Duint x, WGC3Duint y, | 826 blink::WGC3Dint xoffset, |
| 694 WGC3Duint z, WGC3Duint w); | 827 blink::WGC3Dint yoffset, |
| 695 virtual void uniform4uiv(WGC3Dint location, WGC3Dsizei count, | 828 blink::WGC3Dint zoffset, |
| 696 const WGC3Duint *value); | 829 blink::WGC3Dsizei width, |
| 697 virtual void uniformBlockBinding(WGC3Duint program, | 830 blink::WGC3Dsizei height, |
| 698 WGC3Duint uniformBlockIndex, WGC3Duint uniformBlockBinding); | 831 blink::WGC3Dsizei depth, |
| 699 virtual void uniformMatrix2x3fv(WGC3Dint location, WGC3Dsizei count, | 832 blink::WGC3Denum format, |
| 700 WGC3Dboolean transpose, const WGC3Dfloat* value); | 833 blink::WGC3Denum type, |
| 701 virtual void uniformMatrix2x4fv(WGC3Dint location, WGC3Dsizei count, | 834 const void* pixels); |
| 702 WGC3Dboolean transpose, const WGC3Dfloat* value); | 835 virtual void transformFeedbackVaryings( |
| 703 virtual void uniformMatrix3x2fv(WGC3Dint location, WGC3Dsizei count, | 836 blink::WGC3Duint program, |
| 704 WGC3Dboolean transpose, const WGC3Dfloat* value); | 837 blink::WGC3Dsizei count, |
| 705 virtual void uniformMatrix3x4fv(WGC3Dint location, WGC3Dsizei count, | 838 const blink::WGC3Dchar* const* varyings, |
| 706 WGC3Dboolean transpose, const WGC3Dfloat* value); | 839 blink::WGC3Denum bufferMode); |
| 707 virtual void uniformMatrix4x2fv(WGC3Dint location, WGC3Dsizei count, | 840 virtual void uniform1ui(blink::WGC3Dint location, blink::WGC3Duint x); |
| 708 WGC3Dboolean transpose, const WGC3Dfloat* value); | 841 virtual void uniform1uiv(blink::WGC3Dint location, |
| 709 virtual void uniformMatrix4x3fv(WGC3Dint location, WGC3Dsizei count, | 842 blink::WGC3Dsizei count, |
| 710 WGC3Dboolean transpose, const WGC3Dfloat* value); | 843 const blink::WGC3Duint* value); |
| 711 virtual void vertexAttribI4i(WGC3Duint index, WGC3Dint x, WGC3Dint y, | 844 virtual void uniform2ui(blink::WGC3Dint location, |
| 712 WGC3Dint z, WGC3Dint w); | 845 blink::WGC3Duint x, |
| 713 virtual void vertexAttribI4iv(WGC3Duint index, const WGC3Dint *v); | 846 blink::WGC3Duint y); |
| 714 virtual void vertexAttribI4ui(WGC3Duint index, WGC3Duint x, WGC3Duint y, | 847 virtual void uniform2uiv(blink::WGC3Dint location, |
| 715 WGC3Duint z, WGC3Duint w); | 848 blink::WGC3Dsizei count, |
| 716 virtual void vertexAttribI4uiv(WGC3Duint index, const WGC3Duint *v); | 849 const blink::WGC3Duint* value); |
| 717 virtual void vertexAttribIPointer(WGC3Duint index, WGC3Dint size, | 850 virtual void uniform3ui(blink::WGC3Dint location, |
| 718 WGC3Denum type, WGC3Dsizei stride, WGC3Dintptr pointer); | 851 blink::WGC3Duint x, |
| 719 //virtual void waitSync(WebGLId sync, WGC3Dbitfield flags, | 852 blink::WGC3Duint y, |
| 720 // WGC3Duint64 timeout); | 853 blink::WGC3Duint z); |
| 854 virtual void uniform3uiv(blink::WGC3Dint location, |
| 855 blink::WGC3Dsizei count, |
| 856 const blink::WGC3Duint* value); |
| 857 virtual void uniform4ui(blink::WGC3Dint location, |
| 858 blink::WGC3Duint x, |
| 859 blink::WGC3Duint y, |
| 860 blink::WGC3Duint z, |
| 861 blink::WGC3Duint w); |
| 862 virtual void uniform4uiv(blink::WGC3Dint location, |
| 863 blink::WGC3Dsizei count, |
| 864 const blink::WGC3Duint* value); |
| 865 virtual void uniformBlockBinding(blink::WGC3Duint program, |
| 866 blink::WGC3Duint uniformBlockIndex, |
| 867 blink::WGC3Duint uniformBlockBinding); |
| 868 virtual void uniformMatrix2x3fv(blink::WGC3Dint location, |
| 869 blink::WGC3Dsizei count, |
| 870 blink::WGC3Dboolean transpose, |
| 871 const blink::WGC3Dfloat* value); |
| 872 virtual void uniformMatrix2x4fv(blink::WGC3Dint location, |
| 873 blink::WGC3Dsizei count, |
| 874 blink::WGC3Dboolean transpose, |
| 875 const blink::WGC3Dfloat* value); |
| 876 virtual void uniformMatrix3x2fv(blink::WGC3Dint location, |
| 877 blink::WGC3Dsizei count, |
| 878 blink::WGC3Dboolean transpose, |
| 879 const blink::WGC3Dfloat* value); |
| 880 virtual void uniformMatrix3x4fv(blink::WGC3Dint location, |
| 881 blink::WGC3Dsizei count, |
| 882 blink::WGC3Dboolean transpose, |
| 883 const blink::WGC3Dfloat* value); |
| 884 virtual void uniformMatrix4x2fv(blink::WGC3Dint location, |
| 885 blink::WGC3Dsizei count, |
| 886 blink::WGC3Dboolean transpose, |
| 887 const blink::WGC3Dfloat* value); |
| 888 virtual void uniformMatrix4x3fv(blink::WGC3Dint location, |
| 889 blink::WGC3Dsizei count, |
| 890 blink::WGC3Dboolean transpose, |
| 891 const blink::WGC3Dfloat* value); |
| 892 virtual void vertexAttribI4i(blink::WGC3Duint index, |
| 893 blink::WGC3Dint x, |
| 894 blink::WGC3Dint y, |
| 895 blink::WGC3Dint z, |
| 896 blink::WGC3Dint w); |
| 897 virtual void vertexAttribI4iv(blink::WGC3Duint index, |
| 898 const blink::WGC3Dint* v); |
| 899 virtual void vertexAttribI4ui(blink::WGC3Duint index, |
| 900 blink::WGC3Duint x, |
| 901 blink::WGC3Duint y, |
| 902 blink::WGC3Duint z, |
| 903 blink::WGC3Duint w); |
| 904 virtual void vertexAttribI4uiv(blink::WGC3Duint index, |
| 905 const blink::WGC3Duint* v); |
| 906 virtual void vertexAttribIPointer(blink::WGC3Duint index, |
| 907 blink::WGC3Dint size, |
| 908 blink::WGC3Denum type, |
| 909 blink::WGC3Dsizei stride, |
| 910 blink::WGC3Dintptr pointer); |
| 911 // virtual void waitSync(blink::WebGLId sync, blink::WGC3Dbitfield flags, |
| 912 // blink::WGC3Duint64 timeout); |
| 721 | 913 |
| 722 virtual GrGLInterface* createGrGLInterface(); | 914 virtual GrGLInterface* createGrGLInterface(); |
| 723 | 915 |
| 724 ::gpu::gles2::GLES2Interface* GetGLInterface() { | 916 ::gpu::gles2::GLES2Interface* GetGLInterface() { |
| 725 return gl_; | 917 return gl_; |
| 726 } | 918 } |
| 727 | 919 |
| 728 // Convert WebGL context creation attributes into command buffer / EGL size | 920 // Convert WebGL context creation attributes into command buffer / EGL size |
| 729 // requests. | 921 // requests. |
| 730 static void ConvertAttributes( | 922 static void ConvertAttributes( |
| (...skipping 10 matching lines...) Expand all Loading... |
| 741 virtual void OnErrorMessage(const std::string& message, int id); | 933 virtual void OnErrorMessage(const std::string& message, int id); |
| 742 | 934 |
| 743 void setGLInterface(::gpu::gles2::GLES2Interface* gl) { | 935 void setGLInterface(::gpu::gles2::GLES2Interface* gl) { |
| 744 gl_ = gl; | 936 gl_ = gl; |
| 745 } | 937 } |
| 746 | 938 |
| 747 bool initialized_; | 939 bool initialized_; |
| 748 bool initialize_failed_; | 940 bool initialize_failed_; |
| 749 | 941 |
| 750 WebGraphicsContext3D::WebGraphicsContextLostCallback* context_lost_callback_; | 942 WebGraphicsContext3D::WebGraphicsContextLostCallback* context_lost_callback_; |
| 751 WGC3Denum context_lost_reason_; | 943 blink::WGC3Denum context_lost_reason_; |
| 752 | 944 |
| 753 WebGraphicsContext3D::WebGraphicsErrorMessageCallback* | 945 WebGraphicsContext3D::WebGraphicsErrorMessageCallback* |
| 754 error_message_callback_; | 946 error_message_callback_; |
| 755 scoped_ptr<WebGraphicsContext3DErrorMessageCallback> | 947 scoped_ptr<WebGraphicsContext3DErrorMessageCallback> |
| 756 client_error_message_callback_; | 948 client_error_message_callback_; |
| 757 | 949 |
| 758 // Errors raised by synthesizeGLError(). | 950 // Errors raised by synthesizeGLError(). |
| 759 std::vector<WGC3Denum> synthetic_errors_; | 951 std::vector<blink::WGC3Denum> synthetic_errors_; |
| 760 | 952 |
| 761 ::gpu::gles2::GLES2Interface* gl_; | 953 ::gpu::gles2::GLES2Interface* gl_; |
| 762 bool lose_context_when_out_of_memory_; | 954 bool lose_context_when_out_of_memory_; |
| 763 uint32_t flush_id_; | 955 uint32_t flush_id_; |
| 764 }; | 956 }; |
| 765 | 957 |
| 766 } // namespace gpu_blink | 958 } // namespace gpu_blink |
| 767 | 959 |
| 768 #endif // GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ | 960 #endif // GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ |
| OLD | NEW |