Index: third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h |
diff --git a/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h b/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h |
index f6738b88b58248e6ae101cf6b1e65dac499bdb38..71fdd650b744a28544082860d147cf1ee5fb72e6 100644 |
--- a/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h |
+++ b/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h |
@@ -412,6 +412,7 @@ public: |
void setFilterQuality(SkFilterQuality) override; |
bool isWebGL2OrHigher() { return version() >= 2; } |
+ virtual WebGLTexture* validateTexture3DBinding(const char* functionName, GLenum target) = 0; |
protected: |
friend class EXTDisjointTimerQuery; |
@@ -1088,6 +1089,15 @@ protected: |
CrossThreadWeakPersistentThisPointer<WebGLRenderingContextBase> createWeakThisPointer() { return CrossThreadWeakPersistentThisPointer<WebGLRenderingContextBase>(this); } |
ImageBitmap* transferToImageBitmapBase(); |
+ |
+ // Helper functions for tex(Sub)Image2D && texSubImage3D |
+ void texImageHelperDOMArrayBufferView(const char*, GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, GLsizei, GLint, GLint, GLint, DOMArrayBufferView*); |
+ void texImageHelperImageData(const char*, GLenum, GLint, GLint, GLint, GLenum, GLenum, GLsizei, GLint, GLint, GLint, ImageData*); |
+ bool texImageHelperHTMLImageElement(const char*, GLenum, GLint, GLint, GLenum, GLenum, GLint, GLint, GLint, HTMLImageElement*, ExceptionState&); |
+ WebGLTexture* texImageHelperHTMLCanvasElement(const char*, GLenum, GLint, GLint, GLenum, GLenum, GLint, GLint, GLint, HTMLCanvasElement*, ExceptionState&); |
+ WebGLTexture* texImageHelperHTMLVideoElement(const char*, GLenum, GLint, GLint, GLenum, GLenum, GLint, GLint, GLint, HTMLVideoElement*, ExceptionState&); |
+ void texImageHelperImageBitmap(const char*, GLenum, GLint, GLint, GLenum, GLenum, GLint, GLint, GLint, ImageBitmap*, ExceptionState&); |
+ |
private: |
WebGLRenderingContextBase(HTMLCanvasElement*, OffscreenCanvas*, PassOwnPtr<WebGraphicsContext3DProvider>, const WebGLContextAttributes&); |
static PassOwnPtr<WebGraphicsContext3DProvider> createContextProviderInternal(HTMLCanvasElement*, ScriptState*, WebGLContextAttributes, unsigned); |