1a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
2a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
3a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// found in the LICENSE file.
4a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
5a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#ifndef CC_TEST_TEST_GLES2_INTERFACE_H_
6a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#define CC_TEST_TEST_GLES2_INTERFACE_H_
7a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
8a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "gpu/command_buffer/client/gles2_interface_stub.h"
9a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
10a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)namespace cc {
11a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)class TestWebGraphicsContext3D;
12a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
13a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)class TestGLES2Interface : public gpu::gles2::GLES2InterfaceStub {
14a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) public:
15a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  explicit TestGLES2Interface(TestWebGraphicsContext3D* test_context);
16a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual ~TestGLES2Interface();
17a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
18a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GenTextures(GLsizei n, GLuint* textures) OVERRIDE;
19a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GenBuffers(GLsizei n, GLuint* buffers) OVERRIDE;
20a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GenFramebuffers(GLsizei n, GLuint* framebuffers) OVERRIDE;
211320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  virtual void GenRenderbuffers(GLsizei n, GLuint* renderbuffers) OVERRIDE;
22a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GenQueriesEXT(GLsizei n, GLuint* queries) OVERRIDE;
23a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
24a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void DeleteTextures(GLsizei n, const GLuint* textures) OVERRIDE;
25a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void DeleteBuffers(GLsizei n, const GLuint* buffers) OVERRIDE;
26a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void DeleteFramebuffers(GLsizei n,
27a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                  const GLuint* framebuffers) OVERRIDE;
28a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void DeleteQueriesEXT(GLsizei n, const GLuint* queries) OVERRIDE;
29a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
30a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual GLuint CreateShader(GLenum type) OVERRIDE;
31a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual GLuint CreateProgram() OVERRIDE;
32a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
33a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void BindTexture(GLenum target, GLuint texture) OVERRIDE;
34a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
35a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GetIntegerv(GLenum pname, GLint* params) OVERRIDE;
36a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GetShaderiv(GLuint shader, GLenum pname, GLint* params) OVERRIDE;
37a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GetProgramiv(GLuint program,
38a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                            GLenum pname,
39a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                            GLint* params) OVERRIDE;
40a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GetShaderPrecisionFormat(GLenum shadertype,
41a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                        GLenum precisiontype,
42a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                        GLint* range,
43a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                        GLint* precision) OVERRIDE;
44a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual GLenum CheckFramebufferStatus(GLenum target) OVERRIDE;
45a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
46a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void ActiveTexture(GLenum target) OVERRIDE;
47a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void Viewport(GLint x, GLint y, GLsizei width, GLsizei height)
48a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)      OVERRIDE;
49a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void UseProgram(GLuint program) OVERRIDE;
50a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void Scissor(GLint x, GLint y, GLsizei width, GLsizei height)
51a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)      OVERRIDE;
52a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void DrawElements(GLenum mode,
53a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                            GLsizei count,
54a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                            GLenum type,
55a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                            const void* indices) OVERRIDE;
56a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void ClearColor(GLclampf red,
57a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLclampf green,
58a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLclampf blue,
59a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLclampf alpha) OVERRIDE;
60a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void ClearStencil(GLint s) OVERRIDE;
61a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void Clear(GLbitfield mask) OVERRIDE;
62a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void Flush() OVERRIDE;
63a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void Finish() OVERRIDE;
64a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void ShallowFlushCHROMIUM() OVERRIDE;
65a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void Enable(GLenum cap) OVERRIDE;
66a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void Disable(GLenum cap) OVERRIDE;
67a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
68a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void BindBuffer(GLenum target, GLuint buffer) OVERRIDE;
691320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  virtual void BindRenderbuffer(GLenum target, GLuint buffer) OVERRIDE;
70a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void BindFramebuffer(GLenum target, GLuint buffer) OVERRIDE;
71a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
72a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void TexImage2D(GLenum target,
73a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLint level,
74a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLint internalformat,
75a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLsizei width,
76a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLsizei height,
77a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLint border,
78a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLenum format,
79a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLenum type,
80a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          const void* pixels) OVERRIDE;
81a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void TexSubImage2D(GLenum target,
82a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             GLint level,
83a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             GLint xoffset,
84a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             GLint yoffset,
85a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             GLsizei width,
86a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             GLsizei height,
87a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             GLenum format,
88a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             GLenum type,
89a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                             const void* pixels) OVERRIDE;
90a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void TexStorage2DEXT(GLenum target,
91a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                               GLsizei levels,
92a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                               GLenum internalformat,
93a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                               GLsizei width,
94a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                               GLsizei height) OVERRIDE;
955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  virtual void TexImageIOSurface2DCHROMIUM(GLenum target,
965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                                           GLsizei width,
975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                                           GLsizei height,
985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                                           GLuint io_surface_id,
995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                                           GLuint plane) OVERRIDE;
100a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void TexParameteri(GLenum target, GLenum pname, GLint param) OVERRIDE;
101a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
102a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void AsyncTexImage2DCHROMIUM(GLenum target,
103a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                       GLint level,
104f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                                       GLenum internalformat,
105a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                       GLsizei width,
106a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                       GLsizei height,
107a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                       GLint border,
108a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                       GLenum format,
109a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                       GLenum type,
110a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                       const void* pixels) OVERRIDE;
111a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void AsyncTexSubImage2DCHROMIUM(GLenum target,
112a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          GLint level,
113a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          GLint xoffset,
114a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          GLint yoffset,
115a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          GLsizei width,
116a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          GLsizei height,
117a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          GLenum format,
118a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          GLenum type,
119a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                          const void* pixels) OVERRIDE;
120a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void CompressedTexImage2D(GLenum target,
121a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLint level,
122a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLenum internalformat,
123a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLsizei width,
124a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLsizei height,
125a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLint border,
126a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLsizei image_size,
127a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    const void* data) OVERRIDE;
128a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void WaitAsyncTexImage2DCHROMIUM(GLenum target) OVERRIDE;
129a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual GLuint CreateImageCHROMIUM(GLsizei width,
130a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                     GLsizei height,
131010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                                     GLenum internalformat,
132010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                                     GLenum usage) OVERRIDE;
133a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void DestroyImageCHROMIUM(GLuint image_id) OVERRIDE;
134010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  virtual void* MapImageCHROMIUM(GLuint image_id) OVERRIDE;
135a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GetImageParameterivCHROMIUM(GLuint image_id,
136a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                           GLenum pname,
137a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                           GLint* params) OVERRIDE;
138a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void UnmapImageCHROMIUM(GLuint image_id) OVERRIDE;
139a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void BindTexImage2DCHROMIUM(GLenum target, GLint image_id) OVERRIDE;
140a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void ReleaseTexImage2DCHROMIUM(GLenum target,
141a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                         GLint image_id) OVERRIDE;
1421320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  virtual void FramebufferRenderbuffer(GLenum target,
1431320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                       GLenum attachment,
1441320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                       GLenum renderbuffertarget,
1451320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                       GLuint renderbuffer) OVERRIDE;
1461320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  virtual void FramebufferTexture2D(GLenum target,
1471320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                    GLenum attachment,
1481320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                    GLenum textarget,
1491320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                    GLuint texture,
1501320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                    GLint level) OVERRIDE;
1511320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  virtual void RenderbufferStorage(GLenum target,
1521320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                   GLenum internalformat,
1531320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                   GLsizei width,
1541320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                                   GLsizei height) OVERRIDE;
155a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
156a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void* MapBufferCHROMIUM(GLuint target, GLenum access) OVERRIDE;
157a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual GLboolean UnmapBufferCHROMIUM(GLuint target) OVERRIDE;
158a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void BufferData(GLenum target,
159a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLsizeiptr size,
160a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          const void* data,
161a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                          GLenum usage) OVERRIDE;
162a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
163a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void WaitSyncPointCHROMIUM(GLuint sync_point) OVERRIDE;
164a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual GLuint InsertSyncPointCHROMIUM() OVERRIDE;
165a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
166a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void BeginQueryEXT(GLenum target, GLuint id) OVERRIDE;
167a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void EndQueryEXT(GLenum target) OVERRIDE;
168a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GetQueryObjectuivEXT(GLuint id,
169a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLenum pname,
170a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                    GLuint* params) OVERRIDE;
171a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
172a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void DiscardFramebufferEXT(GLenum target,
173a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                     GLsizei count,
174a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                     const GLenum* attachments) OVERRIDE;
175a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void GenMailboxCHROMIUM(GLbyte* mailbox) OVERRIDE;
176a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void ProduceTextureCHROMIUM(GLenum target,
177a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                      const GLbyte* mailbox) OVERRIDE;
1785f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  virtual void ProduceTextureDirectCHROMIUM(GLuint texture,
1795f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)                                            GLenum target,
1805f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)                                            const GLbyte* mailbox) OVERRIDE;
181a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  virtual void ConsumeTextureCHROMIUM(GLenum target,
182a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                                      const GLbyte* mailbox) OVERRIDE;
1835f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  virtual GLuint CreateAndConsumeTextureCHROMIUM(
1845f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      GLenum target,
1855f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      const GLbyte* mailbox) OVERRIDE;
186a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
1875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  virtual void ResizeCHROMIUM(GLuint width,
1885d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                              GLuint height,
1895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                              float device_scale) OVERRIDE;
1905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  virtual void LoseContextCHROMIUM(GLenum current, GLenum other) OVERRIDE;
1915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
192a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) private:
193a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  TestWebGraphicsContext3D* test_context_;
194a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)};
195a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
196a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)}  // namespace cc
197a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
198a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#endif  // CC_TEST_TEST_GLES2_INTERFACE_H_
199