1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CC_DEBUG_FAKE_WEB_GRAPHICS_CONTEXT_3D_H_ 6 #define CC_DEBUG_FAKE_WEB_GRAPHICS_CONTEXT_3D_H_ 7 8 #include <string> 9 10 #include "base/compiler_specific.h" 11 #include "cc/base/cc_export.h" 12 #include "third_party/WebKit/public/platform/WebGraphicsContext3D.h" 13 14 namespace cc { 15 16 // WebGraphicsContext3D base class for use in unit tests. 17 // All operations are no-ops (returning 0 if necessary). 18 class CC_EXPORT FakeWebGraphicsContext3D 19 : public NON_EXPORTED_BASE(WebKit::WebGraphicsContext3D) { 20 public: 21 FakeWebGraphicsContext3D(); 22 virtual ~FakeWebGraphicsContext3D(); 23 24 virtual bool makeContextCurrent(); 25 26 virtual int width(); 27 virtual int height(); 28 29 virtual void reshape(int width, int height); 30 31 virtual bool isGLES2Compliant(); 32 33 virtual WebKit::WebGLId getPlatformTextureId(); 34 35 virtual void prepareTexture() {} 36 37 virtual void postSubBufferCHROMIUM(int x, int y, int width, int height) {} 38 39 virtual void synthesizeGLError(WebKit::WGC3Denum) {} 40 41 virtual bool isContextLost(); 42 virtual WebKit::WGC3Denum getGraphicsResetStatusARB(); 43 44 virtual void* mapBufferSubDataCHROMIUM( 45 WebKit::WGC3Denum target, 46 WebKit::WGC3Dintptr offset, 47 WebKit::WGC3Dsizeiptr size, 48 WebKit::WGC3Denum access); 49 50 virtual void unmapBufferSubDataCHROMIUM(const void*) {} 51 virtual void* mapTexSubImage2DCHROMIUM( 52 WebKit::WGC3Denum target, 53 WebKit::WGC3Dint level, 54 WebKit::WGC3Dint xoffset, 55 WebKit::WGC3Dint yoffset, 56 WebKit::WGC3Dsizei width, 57 WebKit::WGC3Dsizei height, 58 WebKit::WGC3Denum format, 59 WebKit::WGC3Denum type, 60 WebKit::WGC3Denum access); 61 virtual void unmapTexSubImage2DCHROMIUM(const void*) {} 62 63 virtual void setVisibilityCHROMIUM(bool visible) {} 64 65 virtual void discardFramebufferEXT( 66 WebKit::WGC3Denum target, 67 WebKit::WGC3Dsizei num_attachments, 68 const WebKit::WGC3Denum* attachments) {} 69 70 virtual void setMemoryAllocationChangedCallbackCHROMIUM( 71 WebGraphicsMemoryAllocationChangedCallbackCHROMIUM* callback) {} 72 73 virtual WebKit::WebString getRequestableExtensionsCHROMIUM(); 74 virtual void requestExtensionCHROMIUM(const char*) {} 75 76 virtual void blitFramebufferCHROMIUM( 77 WebKit::WGC3Dint src_x0, 78 WebKit::WGC3Dint src_y0, 79 WebKit::WGC3Dint src_x1, 80 WebKit::WGC3Dint src_y1, 81 WebKit::WGC3Dint dst_x0, 82 WebKit::WGC3Dint dst_y0, 83 WebKit::WGC3Dint dst_x1, 84 WebKit::WGC3Dint dst_y1, 85 WebKit::WGC3Dbitfield mask, 86 WebKit::WGC3Denum filter) {} 87 virtual void renderbufferStorageMultisampleCHROMIUM( 88 WebKit::WGC3Denum target, 89 WebKit::WGC3Dsizei samples, 90 WebKit::WGC3Denum internalformat, 91 WebKit::WGC3Dsizei width, 92 WebKit::WGC3Dsizei height) {} 93 94 virtual void activeTexture(WebKit::WGC3Denum texture) {} 95 virtual void attachShader(WebKit::WebGLId program, WebKit::WebGLId shader); 96 virtual void bindAttribLocation( 97 WebKit::WebGLId program, 98 WebKit::WGC3Duint index, 99 const WebKit::WGC3Dchar* name) {} 100 virtual void bindBuffer(WebKit::WGC3Denum target, WebKit::WebGLId buffer); 101 virtual void bindFramebuffer( 102 WebKit::WGC3Denum target, WebKit::WebGLId framebuffer); 103 virtual void bindRenderbuffer( 104 WebKit::WGC3Denum target, WebKit::WebGLId renderbuffer); 105 virtual void bindTexture( 106 WebKit::WGC3Denum target, 107 WebKit::WebGLId texture_id); 108 virtual void blendColor( 109 WebKit::WGC3Dclampf red, 110 WebKit::WGC3Dclampf green, 111 WebKit::WGC3Dclampf blue, 112 WebKit::WGC3Dclampf alpha) {} 113 virtual void blendEquation(WebKit::WGC3Denum mode) {} 114 virtual void blendEquationSeparate( 115 WebKit::WGC3Denum mode_rgb, 116 WebKit::WGC3Denum mode_alpha) {} 117 virtual void blendFunc( 118 WebKit::WGC3Denum sfactor, 119 WebKit::WGC3Denum dfactor) {} 120 virtual void blendFuncSeparate( 121 WebKit::WGC3Denum src_rgb, 122 WebKit::WGC3Denum dst_rgb, 123 WebKit::WGC3Denum src_alpha, 124 WebKit::WGC3Denum dst_alpha) {} 125 126 virtual void bufferData( 127 WebKit::WGC3Denum target, 128 WebKit::WGC3Dsizeiptr size, 129 const void* data, 130 WebKit::WGC3Denum usage) {} 131 virtual void bufferSubData( 132 WebKit::WGC3Denum target, 133 WebKit::WGC3Dintptr offset, 134 WebKit::WGC3Dsizeiptr size, 135 const void* data) {} 136 137 virtual WebKit::WGC3Denum checkFramebufferStatus(WebKit::WGC3Denum target); 138 139 virtual void clear(WebKit::WGC3Dbitfield mask) {} 140 virtual void clearColor( 141 WebKit::WGC3Dclampf red, 142 WebKit::WGC3Dclampf green, 143 WebKit::WGC3Dclampf blue, 144 WebKit::WGC3Dclampf alpha) {} 145 virtual void clearDepth(WebKit::WGC3Dclampf depth) {} 146 virtual void clearStencil(WebKit::WGC3Dint s) {} 147 virtual void colorMask( 148 WebKit::WGC3Dboolean red, 149 WebKit::WGC3Dboolean green, 150 WebKit::WGC3Dboolean blue, 151 WebKit::WGC3Dboolean alpha) {} 152 virtual void compileShader(WebKit::WebGLId shader) {} 153 154 virtual void compressedTexImage2D( 155 WebKit::WGC3Denum target, 156 WebKit::WGC3Dint level, 157 WebKit::WGC3Denum internal_format, 158 WebKit::WGC3Dsizei width, 159 WebKit::WGC3Dsizei height, 160 WebKit::WGC3Dint border, 161 WebKit::WGC3Dsizei image_size, 162 const void* data) {} 163 virtual void compressedTexSubImage2D( 164 WebKit::WGC3Denum target, 165 WebKit::WGC3Dint level, 166 WebKit::WGC3Dint xoffset, 167 WebKit::WGC3Dint yoffset, 168 WebKit::WGC3Dsizei width, 169 WebKit::WGC3Dsizei height, 170 WebKit::WGC3Denum format, 171 WebKit::WGC3Dsizei image_size, 172 const void* data) {} 173 virtual void copyTexImage2D( 174 WebKit::WGC3Denum target, 175 WebKit::WGC3Dint level, 176 WebKit::WGC3Denum internalformat, 177 WebKit::WGC3Dint x, 178 WebKit::WGC3Dint y, 179 WebKit::WGC3Dsizei width, 180 WebKit::WGC3Dsizei height, 181 WebKit::WGC3Dint border) {} 182 virtual void copyTexSubImage2D( 183 WebKit::WGC3Denum target, 184 WebKit::WGC3Dint level, 185 WebKit::WGC3Dint xoffset, 186 WebKit::WGC3Dint yoffset, 187 WebKit::WGC3Dint x, 188 WebKit::WGC3Dint y, 189 WebKit::WGC3Dsizei width, 190 WebKit::WGC3Dsizei height) {} 191 virtual void cullFace(WebKit::WGC3Denum mode) {} 192 virtual void depthFunc(WebKit::WGC3Denum func) {} 193 virtual void depthMask(WebKit::WGC3Dboolean flag) {} 194 virtual void depthRange( 195 WebKit::WGC3Dclampf z_near, 196 WebKit::WGC3Dclampf z_far) {} 197 virtual void detachShader(WebKit::WebGLId program, WebKit::WebGLId shader) {} 198 virtual void disable(WebKit::WGC3Denum cap) {} 199 virtual void disableVertexAttribArray(WebKit::WGC3Duint index) {} 200 virtual void drawArrays( 201 WebKit::WGC3Denum mode, 202 WebKit::WGC3Dint first, 203 WebKit::WGC3Dsizei count) {} 204 virtual void drawElements( 205 WebKit::WGC3Denum mode, 206 WebKit::WGC3Dsizei count, 207 WebKit::WGC3Denum type, 208 WebKit::WGC3Dintptr offset) {} 209 210 virtual void enable(WebKit::WGC3Denum cap) {} 211 virtual void enableVertexAttribArray(WebKit::WGC3Duint index) {} 212 virtual void finish() {} 213 virtual void flush() {} 214 virtual void framebufferRenderbuffer( 215 WebKit::WGC3Denum target, 216 WebKit::WGC3Denum attachment, 217 WebKit::WGC3Denum renderbuffertarget, 218 WebKit::WebGLId renderbuffer) {} 219 virtual void framebufferTexture2D( 220 WebKit::WGC3Denum target, 221 WebKit::WGC3Denum attachment, 222 WebKit::WGC3Denum textarget, 223 WebKit::WebGLId texture, 224 WebKit::WGC3Dint level) {} 225 virtual void frontFace(WebKit::WGC3Denum mode) {} 226 virtual void generateMipmap(WebKit::WGC3Denum target) {} 227 228 virtual bool getActiveAttrib( 229 WebKit::WebGLId program, 230 WebKit::WGC3Duint index, ActiveInfo&); 231 virtual bool getActiveUniform( 232 WebKit::WebGLId program, 233 WebKit::WGC3Duint index, 234 ActiveInfo&); 235 virtual void getAttachedShaders( 236 WebKit::WebGLId program, 237 WebKit::WGC3Dsizei max_count, 238 WebKit::WGC3Dsizei* count, 239 WebKit::WebGLId* shaders) {} 240 virtual WebKit::WGC3Dint getAttribLocation( 241 WebKit::WebGLId program, 242 const WebKit::WGC3Dchar* name); 243 virtual void getBooleanv( 244 WebKit::WGC3Denum pname, 245 WebKit::WGC3Dboolean* value) {} 246 virtual void getBufferParameteriv( 247 WebKit::WGC3Denum target, 248 WebKit::WGC3Denum pname, 249 WebKit::WGC3Dint* value) {} 250 virtual Attributes getContextAttributes(); 251 virtual WebKit::WGC3Denum getError(); 252 virtual void getFloatv( 253 WebKit::WGC3Denum pname, 254 WebKit::WGC3Dfloat* value) {} 255 virtual void getFramebufferAttachmentParameteriv( 256 WebKit::WGC3Denum target, 257 WebKit::WGC3Denum attachment, 258 WebKit::WGC3Denum pname, 259 WebKit::WGC3Dint* value) {} 260 261 virtual void getIntegerv( 262 WebKit::WGC3Denum pname, 263 WebKit::WGC3Dint* value); 264 265 virtual void getProgramiv( 266 WebKit::WebGLId program, 267 WebKit::WGC3Denum pname, 268 WebKit::WGC3Dint* value); 269 270 virtual WebKit::WebString getProgramInfoLog(WebKit::WebGLId program); 271 virtual void getRenderbufferParameteriv( 272 WebKit::WGC3Denum target, 273 WebKit::WGC3Denum pname, 274 WebKit::WGC3Dint* value) {} 275 276 virtual void getShaderiv( 277 WebKit::WebGLId shader, 278 WebKit::WGC3Denum pname, 279 WebKit::WGC3Dint* value); 280 281 virtual WebKit::WebString getShaderInfoLog(WebKit::WebGLId shader); 282 virtual void getShaderPrecisionFormat( 283 WebKit::WGC3Denum shadertype, 284 WebKit::WGC3Denum precisiontype, 285 WebKit::WGC3Dint* range, 286 WebKit::WGC3Dint* precision); 287 virtual WebKit::WebString getShaderSource(WebKit::WebGLId shader); 288 virtual WebKit::WebString getString(WebKit::WGC3Denum name); 289 virtual void getTexParameterfv( 290 WebKit::WGC3Denum target, 291 WebKit::WGC3Denum pname, 292 WebKit::WGC3Dfloat* value) {} 293 virtual void getTexParameteriv( 294 WebKit::WGC3Denum target, 295 WebKit::WGC3Denum pname, 296 WebKit::WGC3Dint* value) {} 297 virtual void getUniformfv( 298 WebKit::WebGLId program, 299 WebKit::WGC3Dint location, 300 WebKit::WGC3Dfloat* value) {} 301 virtual void getUniformiv( 302 WebKit::WebGLId program, 303 WebKit::WGC3Dint location, 304 WebKit::WGC3Dint* value) {} 305 virtual WebKit::WGC3Dint getUniformLocation( 306 WebKit::WebGLId program, 307 const WebKit::WGC3Dchar* name); 308 virtual void getVertexAttribfv( 309 WebKit::WGC3Duint index, 310 WebKit::WGC3Denum pname, 311 WebKit::WGC3Dfloat* value) {} 312 virtual void getVertexAttribiv( 313 WebKit::WGC3Duint index, 314 WebKit::WGC3Denum pname, 315 WebKit::WGC3Dint* value) {} 316 virtual WebKit::WGC3Dsizeiptr getVertexAttribOffset( 317 WebKit::WGC3Duint index, 318 WebKit::WGC3Denum pname); 319 320 virtual void hint(WebKit::WGC3Denum target, WebKit::WGC3Denum mode) {} 321 virtual WebKit::WGC3Dboolean isBuffer(WebKit::WebGLId buffer); 322 virtual WebKit::WGC3Dboolean isEnabled(WebKit::WGC3Denum cap); 323 virtual WebKit::WGC3Dboolean isFramebuffer(WebKit::WebGLId framebuffer); 324 virtual WebKit::WGC3Dboolean isProgram(WebKit::WebGLId program); 325 virtual WebKit::WGC3Dboolean isRenderbuffer(WebKit::WebGLId renderbuffer); 326 virtual WebKit::WGC3Dboolean isShader(WebKit::WebGLId shader); 327 virtual WebKit::WGC3Dboolean isTexture(WebKit::WebGLId texture); 328 virtual void lineWidth(WebKit::WGC3Dfloat) {} 329 virtual void linkProgram(WebKit::WebGLId program) {} 330 virtual void pixelStorei(WebKit::WGC3Denum pname, WebKit::WGC3Dint param) {} 331 virtual void polygonOffset( 332 WebKit::WGC3Dfloat factor, 333 WebKit::WGC3Dfloat units) {} 334 335 virtual void readPixels( 336 WebKit::WGC3Dint x, 337 WebKit::WGC3Dint y, 338 WebKit::WGC3Dsizei width, 339 WebKit::WGC3Dsizei height, 340 WebKit::WGC3Denum format, 341 WebKit::WGC3Denum type, 342 void* pixels) {} 343 344 virtual void releaseShaderCompiler() {} 345 346 virtual void renderbufferStorage( 347 WebKit::WGC3Denum target, 348 WebKit::WGC3Denum internalformat, 349 WebKit::WGC3Dsizei width, 350 WebKit::WGC3Dsizei height) {} 351 virtual void sampleCoverage( 352 WebKit::WGC3Dclampf value, 353 WebKit::WGC3Dboolean invert) {} 354 virtual void scissor( 355 WebKit::WGC3Dint x, 356 WebKit::WGC3Dint y, 357 WebKit::WGC3Dsizei width, 358 WebKit::WGC3Dsizei height) {} 359 virtual void shaderSource( 360 WebKit::WebGLId shader, 361 const WebKit::WGC3Dchar* string) {} 362 virtual void stencilFunc( 363 WebKit::WGC3Denum func, 364 WebKit::WGC3Dint ref, 365 WebKit::WGC3Duint mask) {} 366 virtual void stencilFuncSeparate( 367 WebKit::WGC3Denum face, 368 WebKit::WGC3Denum func, 369 WebKit::WGC3Dint ref, 370 WebKit::WGC3Duint mask) {} 371 virtual void stencilMask(WebKit::WGC3Duint mask) {} 372 virtual void stencilMaskSeparate( 373 WebKit::WGC3Denum face, 374 WebKit::WGC3Duint mask) {} 375 virtual void stencilOp( 376 WebKit::WGC3Denum fail, 377 WebKit::WGC3Denum zfail, 378 WebKit::WGC3Denum zpass) {} 379 virtual void stencilOpSeparate( 380 WebKit::WGC3Denum face, 381 WebKit::WGC3Denum fail, 382 WebKit::WGC3Denum zfail, 383 WebKit::WGC3Denum zpass) {} 384 385 virtual void texImage2D( 386 WebKit::WGC3Denum target, 387 WebKit::WGC3Dint level, 388 WebKit::WGC3Denum internalformat, 389 WebKit::WGC3Dsizei width, 390 WebKit::WGC3Dsizei height, 391 WebKit::WGC3Dint border, 392 WebKit::WGC3Denum format, 393 WebKit::WGC3Denum type, 394 const void* pixels) {} 395 396 virtual void texParameterf( 397 WebKit::WGC3Denum target, 398 WebKit::WGC3Denum pname, 399 WebKit::WGC3Dfloat param) {} 400 virtual void texParameteri( 401 WebKit::WGC3Denum target, 402 WebKit::WGC3Denum pname, 403 WebKit::WGC3Dint param) {} 404 405 virtual void texSubImage2D( 406 WebKit::WGC3Denum target, 407 WebKit::WGC3Dint level, 408 WebKit::WGC3Dint xoffset, 409 WebKit::WGC3Dint yoffset, 410 WebKit::WGC3Dsizei width, 411 WebKit::WGC3Dsizei height, 412 WebKit::WGC3Denum format, 413 WebKit::WGC3Denum type, 414 const void* pixels) {} 415 416 virtual void uniform1f(WebKit::WGC3Dint location, WebKit::WGC3Dfloat x) {} 417 virtual void uniform1fv( 418 WebKit::WGC3Dint location, 419 WebKit::WGC3Dsizei count, 420 const WebKit::WGC3Dfloat* v) {} 421 virtual void uniform1i(WebKit::WGC3Dint location, WebKit::WGC3Dint x) {} 422 virtual void uniform1iv( 423 WebKit::WGC3Dint location, 424 WebKit::WGC3Dsizei count, 425 const WebKit::WGC3Dint* v) {} 426 virtual void uniform2f( 427 WebKit::WGC3Dint location, 428 WebKit::WGC3Dfloat x, 429 WebKit::WGC3Dfloat y) {} 430 virtual void uniform2fv( 431 WebKit::WGC3Dint location, 432 WebKit::WGC3Dsizei count, 433 const WebKit::WGC3Dfloat* v) {} 434 virtual void uniform2i( 435 WebKit::WGC3Dint location, 436 WebKit::WGC3Dint x, 437 WebKit::WGC3Dint y) {} 438 virtual void uniform2iv( 439 WebKit::WGC3Dint location, 440 WebKit::WGC3Dsizei count, 441 const WebKit::WGC3Dint* v) {} 442 virtual void uniform3f( 443 WebKit::WGC3Dint location, 444 WebKit::WGC3Dfloat x, 445 WebKit::WGC3Dfloat y, 446 WebKit::WGC3Dfloat z) {} 447 virtual void uniform3fv( 448 WebKit::WGC3Dint location, 449 WebKit::WGC3Dsizei count, 450 const WebKit::WGC3Dfloat* v) {} 451 virtual void uniform3i( 452 WebKit::WGC3Dint location, 453 WebKit::WGC3Dint x, 454 WebKit::WGC3Dint y, 455 WebKit::WGC3Dint z) {} 456 virtual void uniform3iv( 457 WebKit::WGC3Dint location, 458 WebKit::WGC3Dsizei count, 459 const WebKit::WGC3Dint* v) {} 460 virtual void uniform4f( 461 WebKit::WGC3Dint location, 462 WebKit::WGC3Dfloat x, 463 WebKit::WGC3Dfloat y, 464 WebKit::WGC3Dfloat z, 465 WebKit::WGC3Dfloat w) {} 466 virtual void uniform4fv( 467 WebKit::WGC3Dint location, 468 WebKit::WGC3Dsizei count, 469 const WebKit::WGC3Dfloat* v) {} 470 virtual void uniform4i( 471 WebKit::WGC3Dint location, 472 WebKit::WGC3Dint x, 473 WebKit::WGC3Dint y, 474 WebKit::WGC3Dint z, 475 WebKit::WGC3Dint w) {} 476 virtual void uniform4iv( 477 WebKit::WGC3Dint location, 478 WebKit::WGC3Dsizei count, 479 const WebKit::WGC3Dint* v) {} 480 virtual void uniformMatrix2fv( 481 WebKit::WGC3Dint location, 482 WebKit::WGC3Dsizei count, 483 WebKit::WGC3Dboolean transpose, 484 const WebKit::WGC3Dfloat* value) {} 485 virtual void uniformMatrix3fv( 486 WebKit::WGC3Dint location, 487 WebKit::WGC3Dsizei count, 488 WebKit::WGC3Dboolean transpose, 489 const WebKit::WGC3Dfloat* value) {} 490 virtual void uniformMatrix4fv( 491 WebKit::WGC3Dint location, 492 WebKit::WGC3Dsizei count, 493 WebKit::WGC3Dboolean transpose, 494 const WebKit::WGC3Dfloat* value) {} 495 496 virtual void useProgram(WebKit::WebGLId program); 497 virtual void validateProgram(WebKit::WebGLId program) {} 498 499 virtual void vertexAttrib1f(WebKit::WGC3Duint index, WebKit::WGC3Dfloat x) {} 500 virtual void vertexAttrib1fv( 501 WebKit::WGC3Duint index, 502 const WebKit::WGC3Dfloat* values) {} 503 virtual void vertexAttrib2f( 504 WebKit::WGC3Duint index, 505 WebKit::WGC3Dfloat x, 506 WebKit::WGC3Dfloat y) {} 507 virtual void vertexAttrib2fv( 508 WebKit::WGC3Duint index, 509 const WebKit::WGC3Dfloat* values) {} 510 virtual void vertexAttrib3f( 511 WebKit::WGC3Duint index, 512 WebKit::WGC3Dfloat x, 513 WebKit::WGC3Dfloat y, 514 WebKit::WGC3Dfloat z) {} 515 virtual void vertexAttrib3fv( 516 WebKit::WGC3Duint index, 517 const WebKit::WGC3Dfloat* values) {} 518 virtual void vertexAttrib4f( 519 WebKit::WGC3Duint index, 520 WebKit::WGC3Dfloat x, 521 WebKit::WGC3Dfloat y, 522 WebKit::WGC3Dfloat z, 523 WebKit::WGC3Dfloat w) {} 524 virtual void vertexAttrib4fv( 525 WebKit::WGC3Duint index, 526 const WebKit::WGC3Dfloat* values) {} 527 virtual void vertexAttribPointer( 528 WebKit::WGC3Duint index, 529 WebKit::WGC3Dint size, 530 WebKit::WGC3Denum type, 531 WebKit::WGC3Dboolean normalized, 532 WebKit::WGC3Dsizei stride, 533 WebKit::WGC3Dintptr offset) {} 534 535 virtual void viewport( 536 WebKit::WGC3Dint x, 537 WebKit::WGC3Dint y, 538 WebKit::WGC3Dsizei width, 539 WebKit::WGC3Dsizei height) {} 540 541 virtual WebKit::WebGLId createBuffer(); 542 virtual WebKit::WebGLId createFramebuffer(); 543 virtual WebKit::WebGLId createProgram(); 544 virtual WebKit::WebGLId createRenderbuffer(); 545 virtual WebKit::WebGLId createShader(WebKit::WGC3Denum); 546 virtual WebKit::WebGLId createTexture(); 547 548 virtual void deleteBuffer(WebKit::WebGLId id); 549 virtual void deleteFramebuffer(WebKit::WebGLId id); 550 virtual void deleteProgram(WebKit::WebGLId id); 551 virtual void deleteRenderbuffer(WebKit::WebGLId id); 552 virtual void deleteShader(WebKit::WebGLId id); 553 virtual void deleteTexture(WebKit::WebGLId texture_id); 554 555 virtual void texStorage2DEXT( 556 WebKit::WGC3Denum target, 557 WebKit::WGC3Dint levels, 558 WebKit::WGC3Duint internalformat, 559 WebKit::WGC3Dint width, 560 WebKit::WGC3Dint height) {} 561 562 virtual WebKit::WebGLId createQueryEXT(); 563 virtual void deleteQueryEXT(WebKit::WebGLId query) {} 564 virtual WebKit::WGC3Dboolean isQueryEXT(WebKit::WebGLId query); 565 virtual void beginQueryEXT( 566 WebKit::WGC3Denum target, 567 WebKit::WebGLId query) {} 568 virtual void endQueryEXT(WebKit::WGC3Denum target); 569 virtual void getQueryivEXT( 570 WebKit::WGC3Denum target, 571 WebKit::WGC3Denum pname, 572 WebKit::WGC3Dint* params) {} 573 virtual void getQueryObjectuivEXT( 574 WebKit::WebGLId query, 575 WebKit::WGC3Denum pname, 576 WebKit::WGC3Duint* params); 577 578 virtual void setContextLostCallback( 579 WebGraphicsContextLostCallback* callback); 580 581 virtual void loseContextCHROMIUM(WebKit::WGC3Denum current, 582 WebKit::WGC3Denum other); 583 584 virtual void drawBuffersEXT(WebKit::WGC3Dsizei m, 585 const WebKit::WGC3Denum* bufs) {} 586 587 virtual void bindTexImage2DCHROMIUM(WebKit::WGC3Denum target, 588 WebKit::WGC3Dint image_id) {} 589 590 // GL_CHROMIUM_gpu_memory_buffer 591 virtual WebKit::WGC3Duint createImageCHROMIUM( 592 WebKit::WGC3Dsizei width, 593 WebKit::WGC3Dsizei height, 594 WebKit::WGC3Denum internalformat); 595 virtual void destroyImageCHROMIUM(WebKit::WGC3Duint image_id) {} 596 virtual void getImageParameterivCHROMIUM( 597 WebKit::WGC3Duint image_id, 598 WebKit::WGC3Denum pname, 599 WebKit::WGC3Dint* params) {} 600 virtual void* mapImageCHROMIUM( 601 WebKit::WGC3Duint image_id, 602 WebKit::WGC3Denum access); 603 virtual void unmapImageCHROMIUM(WebKit::WGC3Duint image_id) {} 604 605 private: 606 DISALLOW_COPY_AND_ASSIGN(FakeWebGraphicsContext3D); 607 }; 608 609 } // namespace cc 610 611 #endif // CC_DEBUG_FAKE_WEB_GRAPHICS_CONTEXT_3D_H_ 612