| 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 <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <string> | 10 #include <string> |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 class WebGraphicsContext3DErrorMessageCallback; | 30 class WebGraphicsContext3DErrorMessageCallback; |
| 31 | 31 |
| 32 class GPU_BLINK_EXPORT WebGraphicsContext3DImpl | 32 class GPU_BLINK_EXPORT WebGraphicsContext3DImpl |
| 33 : public NON_EXPORTED_BASE(blink::WebGraphicsContext3D) { | 33 : public NON_EXPORTED_BASE(blink::WebGraphicsContext3D) { |
| 34 public: | 34 public: |
| 35 ~WebGraphicsContext3DImpl() override; | 35 ~WebGraphicsContext3DImpl() override; |
| 36 | 36 |
| 37 //---------------------------------------------------------------------- | 37 //---------------------------------------------------------------------- |
| 38 // WebGraphicsContext3D methods | 38 // WebGraphicsContext3D methods |
| 39 | 39 |
| 40 uint32_t lastFlushID() override; | |
| 41 | |
| 42 blink::WGC3Duint64 insertFenceSyncCHROMIUM() override; | |
| 43 bool genSyncTokenCHROMIUM(blink::WGC3Duint64 fenceSync, | 40 bool genSyncTokenCHROMIUM(blink::WGC3Duint64 fenceSync, |
| 44 blink::WGC3Dbyte* syncToken) override; | 41 blink::WGC3Dbyte* syncToken) override; |
| 45 void waitSyncTokenCHROMIUM(const blink::WGC3Dbyte* syncToken) override; | |
| 46 | 42 |
| 47 void activeTexture(blink::WGC3Denum texture) override; | |
| 48 void applyScreenSpaceAntialiasingCHROMIUM() override; | |
| 49 void attachShader(blink::WebGLId program, blink::WebGLId shader) override; | |
| 50 void bindAttribLocation(blink::WebGLId program, | |
| 51 blink::WGC3Duint index, | |
| 52 const blink::WGC3Dchar* name) override; | |
| 53 void bindBuffer(blink::WGC3Denum target, blink::WebGLId buffer) override; | |
| 54 void bindFramebuffer(blink::WGC3Denum target, | |
| 55 blink::WebGLId framebuffer) override; | |
| 56 void bindRenderbuffer(blink::WGC3Denum target, | |
| 57 blink::WebGLId renderbuffer) override; | |
| 58 void bindTexture(blink::WGC3Denum target, blink::WebGLId texture) override; | |
| 59 void blendColor(blink::WGC3Dclampf red, | |
| 60 blink::WGC3Dclampf green, | |
| 61 blink::WGC3Dclampf blue, | |
| 62 blink::WGC3Dclampf alpha) override; | |
| 63 void blendEquation(blink::WGC3Denum mode) override; | |
| 64 void blendEquationSeparate(blink::WGC3Denum modeRGB, | |
| 65 blink::WGC3Denum modeAlpha) override; | |
| 66 void blendFunc(blink::WGC3Denum sfactor, blink::WGC3Denum dfactor) override; | |
| 67 void blendFuncSeparate(blink::WGC3Denum srcRGB, | |
| 68 blink::WGC3Denum dstRGB, | |
| 69 blink::WGC3Denum srcAlpha, | |
| 70 blink::WGC3Denum dstAlpha) override; | |
| 71 | |
| 72 void bufferData(blink::WGC3Denum target, | |
| 73 blink::WGC3Dsizeiptr size, | |
| 74 const void* data, | |
| 75 blink::WGC3Denum usage) override; | |
| 76 void bufferSubData(blink::WGC3Denum target, | |
| 77 blink::WGC3Dintptr offset, | |
| 78 blink::WGC3Dsizeiptr size, | |
| 79 const void* data) override; | |
| 80 | |
| 81 blink::WGC3Denum checkFramebufferStatus(blink::WGC3Denum target) override; | |
| 82 void clear(blink::WGC3Dbitfield mask) override; | |
| 83 void clearColor(blink::WGC3Dclampf red, | |
| 84 blink::WGC3Dclampf green, | |
| 85 blink::WGC3Dclampf blue, | |
| 86 blink::WGC3Dclampf alpha) override; | |
| 87 void clearDepth(blink::WGC3Dclampf depth) override; | |
| 88 void clearStencil(blink::WGC3Dint s) override; | |
| 89 void colorMask(blink::WGC3Dboolean red, | |
| 90 blink::WGC3Dboolean green, | |
| 91 blink::WGC3Dboolean blue, | |
| 92 blink::WGC3Dboolean alpha) override; | |
| 93 void compileShader(blink::WebGLId shader) override; | |
| 94 | |
| 95 void compressedTexImage2D(blink::WGC3Denum target, | |
| 96 blink::WGC3Dint level, | |
| 97 blink::WGC3Denum internalformat, | |
| 98 blink::WGC3Dsizei width, | |
| 99 blink::WGC3Dsizei height, | |
| 100 blink::WGC3Dint border, | |
| 101 blink::WGC3Dsizei imageSize, | |
| 102 const void* data) override; | |
| 103 void compressedTexSubImage2D(blink::WGC3Denum target, | |
| 104 blink::WGC3Dint level, | |
| 105 blink::WGC3Dint xoffset, | |
| 106 blink::WGC3Dint yoffset, | |
| 107 blink::WGC3Dsizei width, | |
| 108 blink::WGC3Dsizei height, | |
| 109 blink::WGC3Denum format, | |
| 110 blink::WGC3Dsizei imageSize, | |
| 111 const void* data) override; | |
| 112 void copyTexImage2D(blink::WGC3Denum target, | |
| 113 blink::WGC3Dint level, | |
| 114 blink::WGC3Denum internalformat, | |
| 115 blink::WGC3Dint x, | |
| 116 blink::WGC3Dint y, | |
| 117 blink::WGC3Dsizei width, | |
| 118 blink::WGC3Dsizei height, | |
| 119 blink::WGC3Dint border) override; | |
| 120 void copyTexSubImage2D(blink::WGC3Denum target, | |
| 121 blink::WGC3Dint level, | |
| 122 blink::WGC3Dint xoffset, | |
| 123 blink::WGC3Dint yoffset, | |
| 124 blink::WGC3Dint x, | |
| 125 blink::WGC3Dint y, | |
| 126 blink::WGC3Dsizei width, | |
| 127 blink::WGC3Dsizei height) override; | |
| 128 void cullFace(blink::WGC3Denum mode) override; | |
| 129 void depthFunc(blink::WGC3Denum func) override; | |
| 130 void depthMask(blink::WGC3Dboolean flag) override; | |
| 131 void depthRange(blink::WGC3Dclampf zNear, blink::WGC3Dclampf zFar) override; | |
| 132 void detachShader(blink::WebGLId program, blink::WebGLId shader) override; | |
| 133 void disable(blink::WGC3Denum cap) override; | |
| 134 void disableVertexAttribArray(blink::WGC3Duint index) override; | |
| 135 void drawArrays(blink::WGC3Denum mode, | |
| 136 blink::WGC3Dint first, | |
| 137 blink::WGC3Dsizei count) override; | |
| 138 void drawElements(blink::WGC3Denum mode, | 43 void drawElements(blink::WGC3Denum mode, |
| 139 blink::WGC3Dsizei count, | 44 blink::WGC3Dsizei count, |
| 140 blink::WGC3Denum type, | 45 blink::WGC3Denum type, |
| 141 blink::WGC3Dintptr offset) override; | 46 blink::WGC3Dintptr offset) override; |
| 142 | 47 |
| 143 void enable(blink::WGC3Denum cap) override; | |
| 144 void enableVertexAttribArray(blink::WGC3Duint index) override; | |
| 145 void finish() override; | 48 void finish() override; |
| 146 void flush() override; | 49 void flush() override; |
| 147 void frontFace(blink::WGC3Denum mode) override; | 50 void frontFace(blink::WGC3Denum mode) override; |
| 148 void generateMipmap(blink::WGC3Denum target) override; | 51 void generateMipmap(blink::WGC3Denum target) override; |
| 149 | 52 |
| 150 bool getActiveAttrib(blink::WebGLId program, | 53 bool getActiveAttrib(blink::WebGLId program, |
| 151 blink::WGC3Duint index, | 54 blink::WGC3Duint index, |
| 152 ActiveInfo&) override; | 55 ActiveInfo&) override; |
| 153 bool getActiveUniform(blink::WebGLId program, | 56 bool getActiveUniform(blink::WebGLId program, |
| 154 blink::WGC3Duint index, | 57 blink::WGC3Duint index, |
| (...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 435 void deleteTexture(blink::WebGLId) override; | 338 void deleteTexture(blink::WebGLId) override; |
| 436 | 339 |
| 437 blink::WebGLId createProgram() override; | 340 blink::WebGLId createProgram() override; |
| 438 blink::WebGLId createShader(blink::WGC3Denum) override; | 341 blink::WebGLId createShader(blink::WGC3Denum) override; |
| 439 | 342 |
| 440 void deleteProgram(blink::WebGLId) override; | 343 void deleteProgram(blink::WebGLId) override; |
| 441 void deleteShader(blink::WebGLId) override; | 344 void deleteShader(blink::WebGLId) override; |
| 442 | 345 |
| 443 void synthesizeGLError(blink::WGC3Denum) override; | 346 void synthesizeGLError(blink::WGC3Denum) override; |
| 444 | 347 |
| 445 void discardFramebufferEXT(blink::WGC3Denum target, | |
| 446 blink::WGC3Dsizei numAttachments, | |
| 447 const blink::WGC3Denum* attachments) override; | |
| 448 | |
| 449 blink::WebString getRequestableExtensionsCHROMIUM() override; | 348 blink::WebString getRequestableExtensionsCHROMIUM() override; |
| 450 void requestExtensionCHROMIUM(const char*) override; | |
| 451 | 349 |
| 452 void blitFramebufferCHROMIUM(blink::WGC3Dint srcX0, | 350 void blitFramebufferCHROMIUM(blink::WGC3Dint srcX0, |
| 453 blink::WGC3Dint srcY0, | 351 blink::WGC3Dint srcY0, |
| 454 blink::WGC3Dint srcX1, | 352 blink::WGC3Dint srcX1, |
| 455 blink::WGC3Dint srcY1, | 353 blink::WGC3Dint srcY1, |
| 456 blink::WGC3Dint dstX0, | 354 blink::WGC3Dint dstX0, |
| 457 blink::WGC3Dint dstY0, | 355 blink::WGC3Dint dstY0, |
| 458 blink::WGC3Dint dstX1, | 356 blink::WGC3Dint dstX1, |
| 459 blink::WGC3Dint dstY1, | 357 blink::WGC3Dint dstY1, |
| 460 blink::WGC3Dbitfield mask, | 358 blink::WGC3Dbitfield mask, |
| 461 blink::WGC3Denum filter) override; | 359 blink::WGC3Denum filter) override; |
| 462 void renderbufferStorageMultisampleCHROMIUM( | |
| 463 blink::WGC3Denum target, | |
| 464 blink::WGC3Dsizei samples, | |
| 465 blink::WGC3Denum internalformat, | |
| 466 blink::WGC3Dsizei width, | |
| 467 blink::WGC3Dsizei height) override; | |
| 468 | |
| 469 blink::WebString getTranslatedShaderSourceANGLE( | 360 blink::WebString getTranslatedShaderSourceANGLE( |
| 470 blink::WebGLId shader) override; | 361 blink::WebGLId shader) override; |
| 471 | 362 |
| 472 void setContextLostCallback( | 363 void setContextLostCallback( |
| 473 WebGraphicsContext3D::WebGraphicsContextLostCallback* callback) override; | 364 WebGraphicsContext3D::WebGraphicsContextLostCallback* callback) override; |
| 474 | 365 |
| 475 void setErrorMessageCallback( | 366 void setErrorMessageCallback( |
| 476 WebGraphicsContext3D::WebGraphicsErrorMessageCallback* callback) override; | 367 WebGraphicsContext3D::WebGraphicsErrorMessageCallback* callback) override; |
| 477 | 368 |
| 478 void texStorage2DEXT(blink::WGC3Denum target, | 369 void texStorage2DEXT(blink::WGC3Denum target, |
| (...skipping 427 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 906 // Errors raised by synthesizeGLError(). | 797 // Errors raised by synthesizeGLError(). |
| 907 std::vector<blink::WGC3Denum> synthetic_errors_; | 798 std::vector<blink::WGC3Denum> synthetic_errors_; |
| 908 | 799 |
| 909 ::gpu::gles2::GLES2Interface* gl_; | 800 ::gpu::gles2::GLES2Interface* gl_; |
| 910 bool lose_context_when_out_of_memory_; | 801 bool lose_context_when_out_of_memory_; |
| 911 }; | 802 }; |
| 912 | 803 |
| 913 } // namespace gpu_blink | 804 } // namespace gpu_blink |
| 914 | 805 |
| 915 #endif // GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ | 806 #endif // GPU_BLINK_WEBGRAPHICSCONTEXT3D_IMPL_H_ |
| OLD | NEW |