OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 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 CC_TEST_TEST_GLES2_INTERFACE_H_ | 5 #ifndef CC_TEST_TEST_GLES2_INTERFACE_H_ |
6 #define CC_TEST_TEST_GLES2_INTERFACE_H_ | 6 #define CC_TEST_TEST_GLES2_INTERFACE_H_ |
7 | 7 |
8 #include "gpu/command_buffer/client/gles2_interface_stub.h" | 8 #include "gpu/command_buffer/client/gles2_interface_stub.h" |
9 | 9 |
10 namespace cc { | 10 namespace cc { |
11 class TestWebGraphicsContext3D; | 11 class TestWebGraphicsContext3D; |
12 | 12 |
13 class TestGLES2Interface : public gpu::gles2::GLES2InterfaceStub { | 13 class TestGLES2Interface : public gpu::gles2::GLES2InterfaceStub { |
14 public: | 14 public: |
15 explicit TestGLES2Interface(TestWebGraphicsContext3D* test_context); | 15 explicit TestGLES2Interface(TestWebGraphicsContext3D* test_context); |
16 virtual ~TestGLES2Interface(); | 16 ~TestGLES2Interface() override; |
17 | 17 |
18 virtual void GenTextures(GLsizei n, GLuint* textures) override; | 18 void GenTextures(GLsizei n, GLuint* textures) override; |
19 virtual void GenBuffers(GLsizei n, GLuint* buffers) override; | 19 void GenBuffers(GLsizei n, GLuint* buffers) override; |
20 virtual void GenFramebuffers(GLsizei n, GLuint* framebuffers) override; | 20 void GenFramebuffers(GLsizei n, GLuint* framebuffers) override; |
21 virtual void GenRenderbuffers(GLsizei n, GLuint* renderbuffers) override; | 21 void GenRenderbuffers(GLsizei n, GLuint* renderbuffers) override; |
22 virtual void GenQueriesEXT(GLsizei n, GLuint* queries) override; | 22 void GenQueriesEXT(GLsizei n, GLuint* queries) override; |
23 | 23 |
24 virtual void DeleteTextures(GLsizei n, const GLuint* textures) override; | 24 void DeleteTextures(GLsizei n, const GLuint* textures) override; |
25 virtual void DeleteBuffers(GLsizei n, const GLuint* buffers) override; | 25 void DeleteBuffers(GLsizei n, const GLuint* buffers) override; |
26 virtual void DeleteFramebuffers(GLsizei n, | 26 void DeleteFramebuffers(GLsizei n, const GLuint* framebuffers) override; |
27 const GLuint* framebuffers) override; | 27 void DeleteQueriesEXT(GLsizei n, const GLuint* queries) override; |
28 virtual void DeleteQueriesEXT(GLsizei n, const GLuint* queries) override; | |
29 | 28 |
30 virtual GLuint CreateShader(GLenum type) override; | 29 GLuint CreateShader(GLenum type) override; |
31 virtual GLuint CreateProgram() override; | 30 GLuint CreateProgram() override; |
32 | 31 |
33 virtual void BindTexture(GLenum target, GLuint texture) override; | 32 void BindTexture(GLenum target, GLuint texture) override; |
34 | 33 |
35 virtual void GetIntegerv(GLenum pname, GLint* params) override; | 34 void GetIntegerv(GLenum pname, GLint* params) override; |
36 virtual void GetShaderiv(GLuint shader, GLenum pname, GLint* params) override; | 35 void GetShaderiv(GLuint shader, GLenum pname, GLint* params) override; |
37 virtual void GetProgramiv(GLuint program, | 36 void GetProgramiv(GLuint program, GLenum pname, GLint* params) override; |
38 GLenum pname, | 37 void GetShaderPrecisionFormat(GLenum shadertype, |
39 GLint* params) override; | 38 GLenum precisiontype, |
40 virtual void GetShaderPrecisionFormat(GLenum shadertype, | 39 GLint* range, |
41 GLenum precisiontype, | 40 GLint* precision) override; |
42 GLint* range, | 41 GLenum CheckFramebufferStatus(GLenum target) override; |
43 GLint* precision) override; | |
44 virtual GLenum CheckFramebufferStatus(GLenum target) override; | |
45 | 42 |
46 virtual void ActiveTexture(GLenum target) override; | 43 void ActiveTexture(GLenum target) override; |
47 virtual void Viewport(GLint x, GLint y, GLsizei width, GLsizei height) | 44 void Viewport(GLint x, GLint y, GLsizei width, GLsizei height) override; |
48 override; | 45 void UseProgram(GLuint program) override; |
49 virtual void UseProgram(GLuint program) override; | 46 void Scissor(GLint x, GLint y, GLsizei width, GLsizei height) override; |
50 virtual void Scissor(GLint x, GLint y, GLsizei width, GLsizei height) | 47 void DrawElements(GLenum mode, |
51 override; | 48 GLsizei count, |
52 virtual void DrawElements(GLenum mode, | 49 GLenum type, |
53 GLsizei count, | 50 const void* indices) override; |
54 GLenum type, | 51 void ClearColor(GLclampf red, |
55 const void* indices) override; | 52 GLclampf green, |
56 virtual void ClearColor(GLclampf red, | 53 GLclampf blue, |
57 GLclampf green, | 54 GLclampf alpha) override; |
58 GLclampf blue, | 55 void ClearStencil(GLint s) override; |
59 GLclampf alpha) override; | 56 void Clear(GLbitfield mask) override; |
60 virtual void ClearStencil(GLint s) override; | 57 void Flush() override; |
61 virtual void Clear(GLbitfield mask) override; | 58 void Finish() override; |
62 virtual void Flush() override; | 59 void ShallowFlushCHROMIUM() override; |
63 virtual void Finish() override; | 60 void Enable(GLenum cap) override; |
64 virtual void ShallowFlushCHROMIUM() override; | 61 void Disable(GLenum cap) override; |
65 virtual void Enable(GLenum cap) override; | |
66 virtual void Disable(GLenum cap) override; | |
67 | 62 |
68 virtual void BindBuffer(GLenum target, GLuint buffer) override; | 63 void BindBuffer(GLenum target, GLuint buffer) override; |
69 virtual void BindRenderbuffer(GLenum target, GLuint buffer) override; | 64 void BindRenderbuffer(GLenum target, GLuint buffer) override; |
70 virtual void BindFramebuffer(GLenum target, GLuint buffer) override; | 65 void BindFramebuffer(GLenum target, GLuint buffer) override; |
71 | 66 |
72 virtual void TexImage2D(GLenum target, | 67 void TexImage2D(GLenum target, |
73 GLint level, | 68 GLint level, |
74 GLint internalformat, | 69 GLint internalformat, |
75 GLsizei width, | 70 GLsizei width, |
76 GLsizei height, | 71 GLsizei height, |
77 GLint border, | 72 GLint border, |
78 GLenum format, | 73 GLenum format, |
79 GLenum type, | 74 GLenum type, |
80 const void* pixels) override; | 75 const void* pixels) override; |
81 virtual void TexSubImage2D(GLenum target, | 76 void TexSubImage2D(GLenum target, |
82 GLint level, | 77 GLint level, |
83 GLint xoffset, | 78 GLint xoffset, |
84 GLint yoffset, | 79 GLint yoffset, |
| 80 GLsizei width, |
| 81 GLsizei height, |
| 82 GLenum format, |
| 83 GLenum type, |
| 84 const void* pixels) override; |
| 85 void TexStorage2DEXT(GLenum target, |
| 86 GLsizei levels, |
| 87 GLenum internalformat, |
| 88 GLsizei width, |
| 89 GLsizei height) override; |
| 90 void TexImageIOSurface2DCHROMIUM(GLenum target, |
| 91 GLsizei width, |
| 92 GLsizei height, |
| 93 GLuint io_surface_id, |
| 94 GLuint plane) override; |
| 95 void TexParameteri(GLenum target, GLenum pname, GLint param) override; |
| 96 |
| 97 void AsyncTexImage2DCHROMIUM(GLenum target, |
| 98 GLint level, |
| 99 GLenum internalformat, |
| 100 GLsizei width, |
| 101 GLsizei height, |
| 102 GLint border, |
| 103 GLenum format, |
| 104 GLenum type, |
| 105 const void* pixels) override; |
| 106 void AsyncTexSubImage2DCHROMIUM(GLenum target, |
| 107 GLint level, |
| 108 GLint xoffset, |
| 109 GLint yoffset, |
| 110 GLsizei width, |
| 111 GLsizei height, |
| 112 GLenum format, |
| 113 GLenum type, |
| 114 const void* pixels) override; |
| 115 void CompressedTexImage2D(GLenum target, |
| 116 GLint level, |
| 117 GLenum internalformat, |
| 118 GLsizei width, |
| 119 GLsizei height, |
| 120 GLint border, |
| 121 GLsizei image_size, |
| 122 const void* data) override; |
| 123 void WaitAsyncTexImage2DCHROMIUM(GLenum target) override; |
| 124 GLuint CreateImageCHROMIUM(ClientBuffer buffer, |
85 GLsizei width, | 125 GLsizei width, |
86 GLsizei height, | 126 GLsizei height, |
87 GLenum format, | 127 GLenum internalformat) override; |
88 GLenum type, | 128 void DestroyImageCHROMIUM(GLuint image_id) override; |
89 const void* pixels) override; | 129 GLuint CreateGpuMemoryBufferImageCHROMIUM(GLsizei width, |
90 virtual void TexStorage2DEXT(GLenum target, | 130 GLsizei height, |
91 GLsizei levels, | 131 GLenum internalformat, |
92 GLenum internalformat, | 132 GLenum usage) override; |
93 GLsizei width, | 133 void BindTexImage2DCHROMIUM(GLenum target, GLint image_id) override; |
94 GLsizei height) override; | 134 void ReleaseTexImage2DCHROMIUM(GLenum target, GLint image_id) override; |
95 virtual void TexImageIOSurface2DCHROMIUM(GLenum target, | 135 void FramebufferRenderbuffer(GLenum target, |
96 GLsizei width, | 136 GLenum attachment, |
97 GLsizei height, | 137 GLenum renderbuffertarget, |
98 GLuint io_surface_id, | 138 GLuint renderbuffer) override; |
99 GLuint plane) override; | 139 void FramebufferTexture2D(GLenum target, |
100 virtual void TexParameteri(GLenum target, GLenum pname, GLint param) override; | 140 GLenum attachment, |
| 141 GLenum textarget, |
| 142 GLuint texture, |
| 143 GLint level) override; |
| 144 void RenderbufferStorage(GLenum target, |
| 145 GLenum internalformat, |
| 146 GLsizei width, |
| 147 GLsizei height) override; |
101 | 148 |
102 virtual void AsyncTexImage2DCHROMIUM(GLenum target, | 149 void* MapBufferCHROMIUM(GLuint target, GLenum access) override; |
103 GLint level, | 150 GLboolean UnmapBufferCHROMIUM(GLuint target) override; |
104 GLenum internalformat, | 151 void BufferData(GLenum target, |
105 GLsizei width, | 152 GLsizeiptr size, |
106 GLsizei height, | 153 const void* data, |
107 GLint border, | 154 GLenum usage) override; |
108 GLenum format, | |
109 GLenum type, | |
110 const void* pixels) override; | |
111 virtual void AsyncTexSubImage2DCHROMIUM(GLenum target, | |
112 GLint level, | |
113 GLint xoffset, | |
114 GLint yoffset, | |
115 GLsizei width, | |
116 GLsizei height, | |
117 GLenum format, | |
118 GLenum type, | |
119 const void* pixels) override; | |
120 virtual void CompressedTexImage2D(GLenum target, | |
121 GLint level, | |
122 GLenum internalformat, | |
123 GLsizei width, | |
124 GLsizei height, | |
125 GLint border, | |
126 GLsizei image_size, | |
127 const void* data) override; | |
128 virtual void WaitAsyncTexImage2DCHROMIUM(GLenum target) override; | |
129 virtual GLuint CreateImageCHROMIUM(ClientBuffer buffer, | |
130 GLsizei width, | |
131 GLsizei height, | |
132 GLenum internalformat) override; | |
133 virtual void DestroyImageCHROMIUM(GLuint image_id) override; | |
134 virtual GLuint CreateGpuMemoryBufferImageCHROMIUM(GLsizei width, | |
135 GLsizei height, | |
136 GLenum internalformat, | |
137 GLenum usage) override; | |
138 virtual void BindTexImage2DCHROMIUM(GLenum target, GLint image_id) override; | |
139 virtual void ReleaseTexImage2DCHROMIUM(GLenum target, | |
140 GLint image_id) override; | |
141 virtual void FramebufferRenderbuffer(GLenum target, | |
142 GLenum attachment, | |
143 GLenum renderbuffertarget, | |
144 GLuint renderbuffer) override; | |
145 virtual void FramebufferTexture2D(GLenum target, | |
146 GLenum attachment, | |
147 GLenum textarget, | |
148 GLuint texture, | |
149 GLint level) override; | |
150 virtual void RenderbufferStorage(GLenum target, | |
151 GLenum internalformat, | |
152 GLsizei width, | |
153 GLsizei height) override; | |
154 | 155 |
155 virtual void* MapBufferCHROMIUM(GLuint target, GLenum access) override; | 156 void WaitSyncPointCHROMIUM(GLuint sync_point) override; |
156 virtual GLboolean UnmapBufferCHROMIUM(GLuint target) override; | 157 GLuint InsertSyncPointCHROMIUM() override; |
157 virtual void BufferData(GLenum target, | |
158 GLsizeiptr size, | |
159 const void* data, | |
160 GLenum usage) override; | |
161 | 158 |
162 virtual void WaitSyncPointCHROMIUM(GLuint sync_point) override; | 159 void BeginQueryEXT(GLenum target, GLuint id) override; |
163 virtual GLuint InsertSyncPointCHROMIUM() override; | 160 void EndQueryEXT(GLenum target) override; |
| 161 void GetQueryObjectuivEXT(GLuint id, GLenum pname, GLuint* params) override; |
164 | 162 |
165 virtual void BeginQueryEXT(GLenum target, GLuint id) override; | 163 void DiscardFramebufferEXT(GLenum target, |
166 virtual void EndQueryEXT(GLenum target) override; | 164 GLsizei count, |
167 virtual void GetQueryObjectuivEXT(GLuint id, | 165 const GLenum* attachments) override; |
168 GLenum pname, | 166 void GenMailboxCHROMIUM(GLbyte* mailbox) override; |
169 GLuint* params) override; | 167 void ProduceTextureCHROMIUM(GLenum target, const GLbyte* mailbox) override; |
| 168 void ProduceTextureDirectCHROMIUM(GLuint texture, |
| 169 GLenum target, |
| 170 const GLbyte* mailbox) override; |
| 171 void ConsumeTextureCHROMIUM(GLenum target, const GLbyte* mailbox) override; |
| 172 GLuint CreateAndConsumeTextureCHROMIUM(GLenum target, |
| 173 const GLbyte* mailbox) override; |
170 | 174 |
171 virtual void DiscardFramebufferEXT(GLenum target, | 175 void ResizeCHROMIUM(GLuint width, GLuint height, float device_scale) override; |
172 GLsizei count, | 176 void LoseContextCHROMIUM(GLenum current, GLenum other) override; |
173 const GLenum* attachments) override; | |
174 virtual void GenMailboxCHROMIUM(GLbyte* mailbox) override; | |
175 virtual void ProduceTextureCHROMIUM(GLenum target, | |
176 const GLbyte* mailbox) override; | |
177 virtual void ProduceTextureDirectCHROMIUM(GLuint texture, | |
178 GLenum target, | |
179 const GLbyte* mailbox) override; | |
180 virtual void ConsumeTextureCHROMIUM(GLenum target, | |
181 const GLbyte* mailbox) override; | |
182 virtual GLuint CreateAndConsumeTextureCHROMIUM( | |
183 GLenum target, | |
184 const GLbyte* mailbox) override; | |
185 | |
186 virtual void ResizeCHROMIUM(GLuint width, | |
187 GLuint height, | |
188 float device_scale) override; | |
189 virtual void LoseContextCHROMIUM(GLenum current, GLenum other) override; | |
190 | 177 |
191 private: | 178 private: |
192 TestWebGraphicsContext3D* test_context_; | 179 TestWebGraphicsContext3D* test_context_; |
193 }; | 180 }; |
194 | 181 |
195 } // namespace cc | 182 } // namespace cc |
196 | 183 |
197 #endif // CC_TEST_TEST_GLES2_INTERFACE_H_ | 184 #endif // CC_TEST_TEST_GLES2_INTERFACE_H_ |
OLD | NEW |