Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(439)

Side by Side Diff: Source/modules/webgl/WebGL2RenderingContextBase.h

Issue 1234883002: [Oilpan] Migrate classes under module/webgl onto oilpan heap (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebase Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "modules/webgl/WebGLExtension.h" 8 #include "modules/webgl/WebGLExtension.h"
9 #include "modules/webgl/WebGLRenderingContextBase.h" 9 #include "modules/webgl/WebGLRenderingContextBase.h"
10 #include "wtf/PassRefPtr.h" 10 #include "wtf/PassRefPtr.h"
sof 2015/08/01 18:49:13 can be removed.
peria 2015/08/03 09:00:35 Done.
11 11
12 namespace blink { 12 namespace blink {
13 13
14 class WebGLTexture; 14 class WebGLTexture;
15 15
16 class WebGLActiveInfo; 16 class WebGLActiveInfo;
17 class WebGLBuffer; 17 class WebGLBuffer;
18 class WebGLProgram; 18 class WebGLProgram;
19 class WebGLQuery; 19 class WebGLQuery;
20 class WebGLSampler; 20 class WebGLSampler;
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 void drawBuffers(const Vector<GLenum>&); 97 void drawBuffers(const Vector<GLenum>&);
98 void clearBufferiv(GLenum, GLint, DOMInt32Array*); 98 void clearBufferiv(GLenum, GLint, DOMInt32Array*);
99 void clearBufferiv(GLenum, GLint, const Vector<GLint>&); 99 void clearBufferiv(GLenum, GLint, const Vector<GLint>&);
100 void clearBufferuiv(GLenum, GLint, DOMUint32Array*); 100 void clearBufferuiv(GLenum, GLint, DOMUint32Array*);
101 void clearBufferuiv(GLenum, GLint, const Vector<GLuint>&); 101 void clearBufferuiv(GLenum, GLint, const Vector<GLuint>&);
102 void clearBufferfv(GLenum, GLint, DOMFloat32Array*); 102 void clearBufferfv(GLenum, GLint, DOMFloat32Array*);
103 void clearBufferfv(GLenum, GLint, const Vector<GLfloat>&); 103 void clearBufferfv(GLenum, GLint, const Vector<GLfloat>&);
104 void clearBufferfi(GLenum, GLint, GLfloat, GLint); 104 void clearBufferfi(GLenum, GLint, GLfloat, GLint);
105 105
106 /* Query Objects */ 106 /* Query Objects */
107 PassRefPtrWillBeRawPtr<WebGLQuery> createQuery(); 107 WebGLQuery* createQuery();
108 void deleteQuery(WebGLQuery*); 108 void deleteQuery(WebGLQuery*);
109 GLboolean isQuery(WebGLQuery*); 109 GLboolean isQuery(WebGLQuery*);
110 void beginQuery(GLenum, WebGLQuery*); 110 void beginQuery(GLenum, WebGLQuery*);
111 void endQuery(GLenum); 111 void endQuery(GLenum);
112 PassRefPtrWillBeRawPtr<WebGLQuery> getQuery(GLenum, GLenum); 112 WebGLQuery* getQuery(GLenum, GLenum);
113 ScriptValue getQueryParameter(ScriptState*, WebGLQuery*, GLenum); 113 ScriptValue getQueryParameter(ScriptState*, WebGLQuery*, GLenum);
114 114
115 /* Sampler Objects */ 115 /* Sampler Objects */
116 PassRefPtrWillBeRawPtr<WebGLSampler> createSampler(); 116 WebGLSampler* createSampler();
117 void deleteSampler(WebGLSampler*); 117 void deleteSampler(WebGLSampler*);
118 GLboolean isSampler(WebGLSampler*); 118 GLboolean isSampler(WebGLSampler*);
119 void bindSampler(GLuint, WebGLSampler*); 119 void bindSampler(GLuint, WebGLSampler*);
120 void samplerParameteri(WebGLSampler*, GLenum, GLint); 120 void samplerParameteri(WebGLSampler*, GLenum, GLint);
121 void samplerParameterf(WebGLSampler*, GLenum, GLfloat); 121 void samplerParameterf(WebGLSampler*, GLenum, GLfloat);
122 ScriptValue getSamplerParameter(ScriptState*, WebGLSampler*, GLenum); 122 ScriptValue getSamplerParameter(ScriptState*, WebGLSampler*, GLenum);
123 123
124 /* Sync objects */ 124 /* Sync objects */
125 PassRefPtrWillBeRawPtr<WebGLSync> fenceSync(GLenum, GLbitfield); 125 WebGLSync* fenceSync(GLenum, GLbitfield);
126 GLboolean isSync(WebGLSync*); 126 GLboolean isSync(WebGLSync*);
127 void deleteSync(WebGLSync*); 127 void deleteSync(WebGLSync*);
128 GLenum clientWaitSync(WebGLSync*, GLbitfield, GLint64); 128 GLenum clientWaitSync(WebGLSync*, GLbitfield, GLint64);
129 void waitSync(WebGLSync*, GLbitfield, GLint64); 129 void waitSync(WebGLSync*, GLbitfield, GLint64);
130 130
131 ScriptValue getSyncParameter(ScriptState*, WebGLSync*, GLenum); 131 ScriptValue getSyncParameter(ScriptState*, WebGLSync*, GLenum);
132 132
133 /* Transform Feedback */ 133 /* Transform Feedback */
134 PassRefPtrWillBeRawPtr<WebGLTransformFeedback> createTransformFeedback(); 134 WebGLTransformFeedback* createTransformFeedback();
135 void deleteTransformFeedback(WebGLTransformFeedback*); 135 void deleteTransformFeedback(WebGLTransformFeedback*);
136 GLboolean isTransformFeedback(WebGLTransformFeedback*); 136 GLboolean isTransformFeedback(WebGLTransformFeedback*);
137 void bindTransformFeedback(GLenum, WebGLTransformFeedback*); 137 void bindTransformFeedback(GLenum, WebGLTransformFeedback*);
138 void beginTransformFeedback(GLenum); 138 void beginTransformFeedback(GLenum);
139 void endTransformFeedback(); 139 void endTransformFeedback();
140 void transformFeedbackVaryings(WebGLProgram*, const Vector<String>&, GLenum) ; 140 void transformFeedbackVaryings(WebGLProgram*, const Vector<String>&, GLenum) ;
141 PassRefPtrWillBeRawPtr<WebGLActiveInfo> getTransformFeedbackVarying(WebGLPro gram*, GLuint); 141 WebGLActiveInfo* getTransformFeedbackVarying(WebGLProgram*, GLuint);
142 void pauseTransformFeedback(); 142 void pauseTransformFeedback();
143 void resumeTransformFeedback(); 143 void resumeTransformFeedback();
144 144
145 /* Uniform Buffer Objects and Transform Feedback Buffers */ 145 /* Uniform Buffer Objects and Transform Feedback Buffers */
146 void bindBufferBase(GLenum, GLuint, WebGLBuffer*); 146 void bindBufferBase(GLenum, GLuint, WebGLBuffer*);
147 void bindBufferRange(GLenum, GLuint, WebGLBuffer*, long long, long long); 147 void bindBufferRange(GLenum, GLuint, WebGLBuffer*, long long, long long);
148 ScriptValue getIndexedParameter(ScriptState*, GLenum, GLuint); 148 ScriptValue getIndexedParameter(ScriptState*, GLenum, GLuint);
149 Vector<GLuint> getUniformIndices(WebGLProgram*, const Vector<String>&); 149 Vector<GLuint> getUniformIndices(WebGLProgram*, const Vector<String>&);
150 Vector<GLint> getActiveUniforms(WebGLProgram*, const Vector<GLuint>&, GLenum ); 150 Vector<GLint> getActiveUniforms(WebGLProgram*, const Vector<GLuint>&, GLenum );
151 GLuint getUniformBlockIndex(WebGLProgram*, const String&); 151 GLuint getUniformBlockIndex(WebGLProgram*, const String&);
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<WebGLVertexArrayObject> createVertexArray(); 157 WebGLVertexArrayObject* createVertexArray();
158 void deleteVertexArray(WebGLVertexArrayObject*); 158 void deleteVertexArray(WebGLVertexArrayObject*);
159 GLboolean isVertexArray(WebGLVertexArrayObject*); 159 GLboolean isVertexArray(WebGLVertexArrayObject*);
160 void bindVertexArray(WebGLVertexArrayObject*); 160 void bindVertexArray(WebGLVertexArrayObject*);
161 161
162 /* WebGLRenderingContextBase overrides */ 162 /* WebGLRenderingContextBase overrides */
163 void initializeNewContext() override; 163 void initializeNewContext() override;
164 void bindFramebuffer(GLenum target, WebGLFramebuffer*) override; 164 void bindFramebuffer(GLenum target, WebGLFramebuffer*) override;
165 void deleteFramebuffer(WebGLFramebuffer*) override; 165 void deleteFramebuffer(WebGLFramebuffer*) override;
166 ScriptValue getParameter(ScriptState*, GLenum pname) override; 166 ScriptValue getParameter(ScriptState*, GLenum pname) override;
167 ScriptValue getTexParameter(ScriptState*, GLenum target, GLenum pname) overr ide; 167 ScriptValue getTexParameter(ScriptState*, GLenum target, GLenum pname) overr ide;
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 bool validateReadPixelsFormatAndType(GLenum format, GLenum type) override; 200 bool validateReadPixelsFormatAndType(GLenum format, GLenum type) override;
201 WebGLFramebuffer* getFramebufferBinding(GLenum target) override; 201 WebGLFramebuffer* getFramebufferBinding(GLenum target) override;
202 GLint getMaxTextureLevelForTarget(GLenum target) override; 202 GLint getMaxTextureLevelForTarget(GLenum target) override;
203 void renderbufferStorageImpl(GLenum target, GLsizei samples, GLenum internal format, GLsizei width, GLsizei height, const char* functionName) override; 203 void renderbufferStorageImpl(GLenum target, GLsizei samples, GLenum internal format, GLsizei width, GLsizei height, const char* functionName) override;
204 GLenum boundFramebufferColorFormat() override; 204 GLenum boundFramebufferColorFormat() override;
205 205
206 WebGLBuffer* validateBufferDataTarget(const char* functionName, GLenum targe t) override; 206 WebGLBuffer* validateBufferDataTarget(const char* functionName, GLenum targe t) override;
207 207
208 void removeBoundBuffer(WebGLBuffer*) override; 208 void removeBoundBuffer(WebGLBuffer*) override;
209 209
210 RefPtrWillBeMember<WebGLFramebuffer> m_readFramebufferBinding; 210 PersistentWillBeMember<WebGLFramebuffer> m_readFramebufferBinding;
211 RefPtrWillBeMember<WebGLTransformFeedback> m_transformFeedbackBinding; 211 PersistentWillBeMember<WebGLTransformFeedback> m_transformFeedbackBinding;
212 GLint m_max3DTextureSize; 212 GLint m_max3DTextureSize;
213 GLint m_max3DTextureLevel; 213 GLint m_max3DTextureLevel;
214 214
215 RefPtrWillBeMember<WebGLBuffer> m_boundCopyReadBuffer; 215 PersistentWillBeMember<WebGLBuffer> m_boundCopyReadBuffer;
216 RefPtrWillBeMember<WebGLBuffer> m_boundCopyWriteBuffer; 216 PersistentWillBeMember<WebGLBuffer> m_boundCopyWriteBuffer;
217 RefPtrWillBeMember<WebGLBuffer> m_boundPixelPackBuffer; 217 PersistentWillBeMember<WebGLBuffer> m_boundPixelPackBuffer;
218 RefPtrWillBeMember<WebGLBuffer> m_boundPixelUnpackBuffer; 218 PersistentWillBeMember<WebGLBuffer> m_boundPixelUnpackBuffer;
219 RefPtrWillBeMember<WebGLBuffer> m_boundTransformFeedbackBuffer; 219 PersistentWillBeMember<WebGLBuffer> m_boundTransformFeedbackBuffer;
220 RefPtrWillBeMember<WebGLBuffer> m_boundUniformBuffer; 220 PersistentWillBeMember<WebGLBuffer> m_boundUniformBuffer;
221 221
222 RefPtrWillBeMember<WebGLQuery> m_currentBooleanOcclusionQuery; 222 PersistentWillBeMember<WebGLQuery> m_currentBooleanOcclusionQuery;
223 RefPtrWillBeMember<WebGLQuery> m_currentTransformFeedbackPrimitivesWrittenQu ery; 223 PersistentWillBeMember<WebGLQuery> m_currentTransformFeedbackPrimitivesWritt enQuery;
224 WillBeHeapVector<RefPtrWillBeMember<WebGLSampler>> m_samplerUnits; 224 PersistentHeapVectorWillBeHeapVector<Member<WebGLSampler>> m_samplerUnits;
225 }; 225 };
226 226
227 DEFINE_TYPE_CASTS(WebGL2RenderingContextBase, CanvasRenderingContext, context, 227 DEFINE_TYPE_CASTS(WebGL2RenderingContextBase, CanvasRenderingContext, context,
228 context->is3d() && WebGLRenderingContextBase::getWebGLVersion(context) >= 2, 228 context->is3d() && WebGLRenderingContextBase::getWebGLVersion(context) >= 2,
229 context.is3d() && WebGLRenderingContextBase::getWebGLVersion(&context) >= 2) ; 229 context.is3d() && WebGLRenderingContextBase::getWebGLVersion(&context) >= 2) ;
230 230
231 } // namespace blink 231 } // namespace blink
232 232
233 #endif 233 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698