OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 WebGL2RenderingContextBase_h | 5 #ifndef WebGL2RenderingContextBase_h |
6 #define WebGL2RenderingContextBase_h | 6 #define WebGL2RenderingContextBase_h |
7 | 7 |
8 #include "core/html/canvas/WebGLExtension.h" | 8 #include "core/html/canvas/WebGLExtension.h" |
9 #include "core/html/canvas/WebGLRenderingContextBase.h" | 9 #include "core/html/canvas/WebGLRenderingContextBase.h" |
10 #include "wtf/PassRefPtr.h" | 10 #include "wtf/PassRefPtr.h" |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
152 ScriptValue getActiveUniformBlockParameter(ScriptState*, WebGLProgram*, GLui
nt, GLenum); | 152 ScriptValue getActiveUniformBlockParameter(ScriptState*, WebGLProgram*, GLui
nt, GLenum); |
153 String getActiveUniformBlockName(WebGLProgram*, GLuint); | 153 String getActiveUniformBlockName(WebGLProgram*, GLuint); |
154 void uniformBlockBinding(WebGLProgram*, GLuint, GLuint); | 154 void uniformBlockBinding(WebGLProgram*, GLuint, GLuint); |
155 | 155 |
156 /* Vertex Array Objects */ | 156 /* Vertex Array Objects */ |
157 PassRefPtrWillBeRawPtr<WebGLVertexArrayObjectOES> createVertexArray(); | 157 PassRefPtrWillBeRawPtr<WebGLVertexArrayObjectOES> createVertexArray(); |
158 void deleteVertexArray(WebGLVertexArrayObjectOES*); | 158 void deleteVertexArray(WebGLVertexArrayObjectOES*); |
159 GLboolean isVertexArray(WebGLVertexArrayObjectOES*); | 159 GLboolean isVertexArray(WebGLVertexArrayObjectOES*); |
160 void bindVertexArray(WebGLVertexArrayObjectOES*); | 160 void bindVertexArray(WebGLVertexArrayObjectOES*); |
161 | 161 |
| 162 /* WebGLRenderingContextBase APIs overrides */ |
| 163 ScriptValue getTexParameter(ScriptState*, GLenum target, GLenum pname) overr
ide; |
| 164 |
162 DECLARE_VIRTUAL_TRACE(); | 165 DECLARE_VIRTUAL_TRACE(); |
163 | 166 |
164 protected: | 167 protected: |
165 WebGL2RenderingContextBase(HTMLCanvasElement*, PassOwnPtr<blink::WebGraphics
Context3D>, const WebGLContextAttributes& requestedAttributes); | 168 WebGL2RenderingContextBase(HTMLCanvasElement*, PassOwnPtr<blink::WebGraphics
Context3D>, const WebGLContextAttributes& requestedAttributes); |
166 | 169 |
167 bool validateClearBuffer(const char* functionName, GLenum buffer, GLsizei le
ngth); | 170 bool validateClearBuffer(const char* functionName, GLenum buffer, GLsizei le
ngth); |
168 | 171 |
169 /* WebGLRenderingContextBase overrides */ | 172 /* WebGLRenderingContextBase helper functions overrides */ |
170 bool validateCapability(const char* functionName, GLenum) override; | 173 bool validateCapability(const char* functionName, GLenum) override; |
171 bool validateAndUpdateBufferBindTarget(const char* functionName, GLenum, Web
GLBuffer*) override; | 174 bool validateAndUpdateBufferBindTarget(const char* functionName, GLenum, Web
GLBuffer*) override; |
| 175 |
| 176 WebGLTexture* validateTextureBinding(const char* functionName, GLenum target
, bool useSixEnumsForCubeMap) override; |
172 }; | 177 }; |
173 | 178 |
174 DEFINE_TYPE_CASTS(WebGL2RenderingContextBase, CanvasRenderingContext, context, | 179 DEFINE_TYPE_CASTS(WebGL2RenderingContextBase, CanvasRenderingContext, context, |
175 context->is3d() && WebGLRenderingContextBase::getWebGLVersion(context) >= 2, | 180 context->is3d() && WebGLRenderingContextBase::getWebGLVersion(context) >= 2, |
176 context.is3d() && WebGLRenderingContextBase::getWebGLVersion(&context) >= 2)
; | 181 context.is3d() && WebGLRenderingContextBase::getWebGLVersion(&context) >= 2)
; |
177 | 182 |
178 } // namespace blink | 183 } // namespace blink |
179 | 184 |
180 #endif | 185 #endif |
OLD | NEW |