1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // This file is auto-generated from
6 // gpu/command_buffer/build_gles2_cmd_buffer.py
9 // This file is included by gles2_interface.h to declare the
11 #ifndef GPU_COMMAND_BUFFER_CLIENT_GLES2_INTERFACE_AUTOGEN_H_
12 #define GPU_COMMAND_BUFFER_CLIENT_GLES2_INTERFACE_AUTOGEN_H_
14 virtual void ActiveTexture(GLenum texture
) = 0;
15 virtual void AttachShader(GLuint program
, GLuint shader
) = 0;
16 virtual void BindAttribLocation(
17 GLuint program
, GLuint index
, const char* name
) = 0;
18 virtual void BindBuffer(GLenum target
, GLuint buffer
) = 0;
19 virtual void BindFramebuffer(GLenum target
, GLuint framebuffer
) = 0;
20 virtual void BindRenderbuffer(GLenum target
, GLuint renderbuffer
) = 0;
21 virtual void BindTexture(GLenum target
, GLuint texture
) = 0;
22 virtual void BlendColor(
23 GLclampf red
, GLclampf green
, GLclampf blue
, GLclampf alpha
) = 0;
24 virtual void BlendEquation(GLenum mode
) = 0;
25 virtual void BlendEquationSeparate(GLenum modeRGB
, GLenum modeAlpha
) = 0;
26 virtual void BlendFunc(GLenum sfactor
, GLenum dfactor
) = 0;
27 virtual void BlendFuncSeparate(
28 GLenum srcRGB
, GLenum dstRGB
, GLenum srcAlpha
, GLenum dstAlpha
) = 0;
29 virtual void BufferData(
30 GLenum target
, GLsizeiptr size
, const void* data
, GLenum usage
) = 0;
31 virtual void BufferSubData(
32 GLenum target
, GLintptr offset
, GLsizeiptr size
, const void* data
) = 0;
33 virtual GLenum
CheckFramebufferStatus(GLenum target
) = 0;
34 virtual void Clear(GLbitfield mask
) = 0;
35 virtual void ClearColor(
36 GLclampf red
, GLclampf green
, GLclampf blue
, GLclampf alpha
) = 0;
37 virtual void ClearDepthf(GLclampf depth
) = 0;
38 virtual void ClearStencil(GLint s
) = 0;
39 virtual void ColorMask(
40 GLboolean red
, GLboolean green
, GLboolean blue
, GLboolean alpha
) = 0;
41 virtual void CompileShader(GLuint shader
) = 0;
42 virtual void CompressedTexImage2D(
43 GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
,
44 GLsizei height
, GLint border
, GLsizei imageSize
, const void* data
) = 0;
45 virtual void CompressedTexSubImage2D(
46 GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
,
47 GLsizei height
, GLenum format
, GLsizei imageSize
, const void* data
) = 0;
48 virtual void CopyTexImage2D(
49 GLenum target
, GLint level
, GLenum internalformat
, GLint x
, GLint y
,
50 GLsizei width
, GLsizei height
, GLint border
) = 0;
51 virtual void CopyTexSubImage2D(
52 GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint x
, GLint y
,
53 GLsizei width
, GLsizei height
) = 0;
54 virtual GLuint
CreateProgram() = 0;
55 virtual GLuint
CreateShader(GLenum type
) = 0;
56 virtual void CullFace(GLenum mode
) = 0;
57 virtual void DeleteBuffers(GLsizei n
, const GLuint
* buffers
) = 0;
58 virtual void DeleteFramebuffers(GLsizei n
, const GLuint
* framebuffers
) = 0;
59 virtual void DeleteProgram(GLuint program
) = 0;
60 virtual void DeleteRenderbuffers(GLsizei n
, const GLuint
* renderbuffers
) = 0;
61 virtual void DeleteShader(GLuint shader
) = 0;
62 virtual void DeleteTextures(GLsizei n
, const GLuint
* textures
) = 0;
63 virtual void DepthFunc(GLenum func
) = 0;
64 virtual void DepthMask(GLboolean flag
) = 0;
65 virtual void DepthRangef(GLclampf zNear
, GLclampf zFar
) = 0;
66 virtual void DetachShader(GLuint program
, GLuint shader
) = 0;
67 virtual void Disable(GLenum cap
) = 0;
68 virtual void DisableVertexAttribArray(GLuint index
) = 0;
69 virtual void DrawArrays(GLenum mode
, GLint first
, GLsizei count
) = 0;
70 virtual void DrawElements(
71 GLenum mode
, GLsizei count
, GLenum type
, const void* indices
) = 0;
72 virtual void Enable(GLenum cap
) = 0;
73 virtual void EnableVertexAttribArray(GLuint index
) = 0;
74 virtual void Finish() = 0;
75 virtual void Flush() = 0;
76 virtual void FramebufferRenderbuffer(
77 GLenum target
, GLenum attachment
, GLenum renderbuffertarget
,
78 GLuint renderbuffer
) = 0;
79 virtual void FramebufferTexture2D(
80 GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
,
82 virtual void FrontFace(GLenum mode
) = 0;
83 virtual void GenBuffers(GLsizei n
, GLuint
* buffers
) = 0;
84 virtual void GenerateMipmap(GLenum target
) = 0;
85 virtual void GenFramebuffers(GLsizei n
, GLuint
* framebuffers
) = 0;
86 virtual void GenRenderbuffers(GLsizei n
, GLuint
* renderbuffers
) = 0;
87 virtual void GenTextures(GLsizei n
, GLuint
* textures
) = 0;
88 virtual void GetActiveAttrib(
89 GLuint program
, GLuint index
, GLsizei bufsize
, GLsizei
* length
, GLint
* size
,
90 GLenum
* type
, char* name
) = 0;
91 virtual void GetActiveUniform(
92 GLuint program
, GLuint index
, GLsizei bufsize
, GLsizei
* length
, GLint
* size
,
93 GLenum
* type
, char* name
) = 0;
94 virtual void GetAttachedShaders(
95 GLuint program
, GLsizei maxcount
, GLsizei
* count
, GLuint
* shaders
) = 0;
96 virtual GLint
GetAttribLocation(GLuint program
, const char* name
) = 0;
97 virtual void GetBooleanv(GLenum pname
, GLboolean
* params
) = 0;
98 virtual void GetBufferParameteriv(GLenum target
, GLenum pname
, GLint
* params
) =
100 virtual GLenum
GetError() = 0;
101 virtual void GetFloatv(GLenum pname
, GLfloat
* params
) = 0;
102 virtual void GetFramebufferAttachmentParameteriv(
103 GLenum target
, GLenum attachment
, GLenum pname
, GLint
* params
) = 0;
104 virtual void GetIntegerv(GLenum pname
, GLint
* params
) = 0;
105 virtual void GetProgramiv(GLuint program
, GLenum pname
, GLint
* params
) = 0;
106 virtual void GetProgramInfoLog(
107 GLuint program
, GLsizei bufsize
, GLsizei
* length
, char* infolog
) = 0;
108 virtual void GetRenderbufferParameteriv(
109 GLenum target
, GLenum pname
, GLint
* params
) = 0;
110 virtual void GetShaderiv(GLuint shader
, GLenum pname
, GLint
* params
) = 0;
111 virtual void GetShaderInfoLog(
112 GLuint shader
, GLsizei bufsize
, GLsizei
* length
, char* infolog
) = 0;
113 virtual void GetShaderPrecisionFormat(
114 GLenum shadertype
, GLenum precisiontype
, GLint
* range
, GLint
* precision
) =
116 virtual void GetShaderSource(
117 GLuint shader
, GLsizei bufsize
, GLsizei
* length
, char* source
) = 0;
118 virtual const GLubyte
* GetString(GLenum name
) = 0;
119 virtual void GetTexParameterfv(GLenum target
, GLenum pname
, GLfloat
* params
) =
121 virtual void GetTexParameteriv(GLenum target
, GLenum pname
, GLint
* params
) = 0;
122 virtual void GetUniformfv(GLuint program
, GLint location
, GLfloat
* params
) = 0;
123 virtual void GetUniformiv(GLuint program
, GLint location
, GLint
* params
) = 0;
124 virtual GLint
GetUniformLocation(GLuint program
, const char* name
) = 0;
125 virtual void GetVertexAttribfv(GLuint index
, GLenum pname
, GLfloat
* params
) =
127 virtual void GetVertexAttribiv(GLuint index
, GLenum pname
, GLint
* params
) = 0;
128 virtual void GetVertexAttribPointerv(
129 GLuint index
, GLenum pname
, void** pointer
) = 0;
130 virtual void Hint(GLenum target
, GLenum mode
) = 0;
131 virtual GLboolean
IsBuffer(GLuint buffer
) = 0;
132 virtual GLboolean
IsEnabled(GLenum cap
) = 0;
133 virtual GLboolean
IsFramebuffer(GLuint framebuffer
) = 0;
134 virtual GLboolean
IsProgram(GLuint program
) = 0;
135 virtual GLboolean
IsRenderbuffer(GLuint renderbuffer
) = 0;
136 virtual GLboolean
IsShader(GLuint shader
) = 0;
137 virtual GLboolean
IsTexture(GLuint texture
) = 0;
138 virtual void LineWidth(GLfloat width
) = 0;
139 virtual void LinkProgram(GLuint program
) = 0;
140 virtual void PixelStorei(GLenum pname
, GLint param
) = 0;
141 virtual void PolygonOffset(GLfloat factor
, GLfloat units
) = 0;
142 virtual void ReadPixels(
143 GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
,
145 virtual void ReleaseShaderCompiler() = 0;
146 virtual void RenderbufferStorage(
147 GLenum target
, GLenum internalformat
, GLsizei width
, GLsizei height
) = 0;
148 virtual void SampleCoverage(GLclampf value
, GLboolean invert
) = 0;
149 virtual void Scissor(GLint x
, GLint y
, GLsizei width
, GLsizei height
) = 0;
150 virtual void ShaderBinary(
151 GLsizei n
, const GLuint
* shaders
, GLenum binaryformat
, const void* binary
,
153 virtual void ShaderSource(
154 GLuint shader
, GLsizei count
, const GLchar
* const* str
,
155 const GLint
* length
) = 0;
156 virtual void ShallowFinishCHROMIUM() = 0;
157 virtual void ShallowFlushCHROMIUM() = 0;
158 virtual void StencilFunc(GLenum func
, GLint ref
, GLuint mask
) = 0;
159 virtual void StencilFuncSeparate(
160 GLenum face
, GLenum func
, GLint ref
, GLuint mask
) = 0;
161 virtual void StencilMask(GLuint mask
) = 0;
162 virtual void StencilMaskSeparate(GLenum face
, GLuint mask
) = 0;
163 virtual void StencilOp(GLenum fail
, GLenum zfail
, GLenum zpass
) = 0;
164 virtual void StencilOpSeparate(
165 GLenum face
, GLenum fail
, GLenum zfail
, GLenum zpass
) = 0;
166 virtual void TexImage2D(
167 GLenum target
, GLint level
, GLint internalformat
, GLsizei width
,
168 GLsizei height
, GLint border
, GLenum format
, GLenum type
,
169 const void* pixels
) = 0;
170 virtual void TexParameterf(GLenum target
, GLenum pname
, GLfloat param
) = 0;
171 virtual void TexParameterfv(
172 GLenum target
, GLenum pname
, const GLfloat
* params
) = 0;
173 virtual void TexParameteri(GLenum target
, GLenum pname
, GLint param
) = 0;
174 virtual void TexParameteriv(GLenum target
, GLenum pname
, const GLint
* params
) =
176 virtual void TexSubImage2D(
177 GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
,
178 GLsizei height
, GLenum format
, GLenum type
, const void* pixels
) = 0;
179 virtual void Uniform1f(GLint location
, GLfloat x
) = 0;
180 virtual void Uniform1fv(GLint location
, GLsizei count
, const GLfloat
* v
) = 0;
181 virtual void Uniform1i(GLint location
, GLint x
) = 0;
182 virtual void Uniform1iv(GLint location
, GLsizei count
, const GLint
* v
) = 0;
183 virtual void Uniform2f(GLint location
, GLfloat x
, GLfloat y
) = 0;
184 virtual void Uniform2fv(GLint location
, GLsizei count
, const GLfloat
* v
) = 0;
185 virtual void Uniform2i(GLint location
, GLint x
, GLint y
) = 0;
186 virtual void Uniform2iv(GLint location
, GLsizei count
, const GLint
* v
) = 0;
187 virtual void Uniform3f(GLint location
, GLfloat x
, GLfloat y
, GLfloat z
) = 0;
188 virtual void Uniform3fv(GLint location
, GLsizei count
, const GLfloat
* v
) = 0;
189 virtual void Uniform3i(GLint location
, GLint x
, GLint y
, GLint z
) = 0;
190 virtual void Uniform3iv(GLint location
, GLsizei count
, const GLint
* v
) = 0;
191 virtual void Uniform4f(
192 GLint location
, GLfloat x
, GLfloat y
, GLfloat z
, GLfloat w
) = 0;
193 virtual void Uniform4fv(GLint location
, GLsizei count
, const GLfloat
* v
) = 0;
194 virtual void Uniform4i(GLint location
, GLint x
, GLint y
, GLint z
, GLint w
) = 0;
195 virtual void Uniform4iv(GLint location
, GLsizei count
, const GLint
* v
) = 0;
196 virtual void UniformMatrix2fv(
197 GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
* value
) =
199 virtual void UniformMatrix3fv(
200 GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
* value
) =
202 virtual void UniformMatrix4fv(
203 GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
* value
) =
205 virtual void UseProgram(GLuint program
) = 0;
206 virtual void ValidateProgram(GLuint program
) = 0;
207 virtual void VertexAttrib1f(GLuint indx
, GLfloat x
) = 0;
208 virtual void VertexAttrib1fv(GLuint indx
, const GLfloat
* values
) = 0;
209 virtual void VertexAttrib2f(GLuint indx
, GLfloat x
, GLfloat y
) = 0;
210 virtual void VertexAttrib2fv(GLuint indx
, const GLfloat
* values
) = 0;
211 virtual void VertexAttrib3f(GLuint indx
, GLfloat x
, GLfloat y
, GLfloat z
) = 0;
212 virtual void VertexAttrib3fv(GLuint indx
, const GLfloat
* values
) = 0;
213 virtual void VertexAttrib4f(
214 GLuint indx
, GLfloat x
, GLfloat y
, GLfloat z
, GLfloat w
) = 0;
215 virtual void VertexAttrib4fv(GLuint indx
, const GLfloat
* values
) = 0;
216 virtual void VertexAttribPointer(
217 GLuint indx
, GLint size
, GLenum type
, GLboolean normalized
, GLsizei stride
,
218 const void* ptr
) = 0;
219 virtual void Viewport(GLint x
, GLint y
, GLsizei width
, GLsizei height
) = 0;
220 virtual void BlitFramebufferEXT(
221 GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
,
222 GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
) = 0;
223 virtual void RenderbufferStorageMultisampleEXT(
224 GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
,
226 virtual void FramebufferTexture2DMultisampleEXT(
227 GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
,
228 GLint level
, GLsizei samples
) = 0;
229 virtual void TexStorage2DEXT(
230 GLenum target
, GLsizei levels
, GLenum internalFormat
, GLsizei width
,
232 virtual void GenQueriesEXT(GLsizei n
, GLuint
* queries
) = 0;
233 virtual void DeleteQueriesEXT(GLsizei n
, const GLuint
* queries
) = 0;
234 virtual GLboolean
IsQueryEXT(GLuint id
) = 0;
235 virtual void BeginQueryEXT(GLenum target
, GLuint id
) = 0;
236 virtual void EndQueryEXT(GLenum target
) = 0;
237 virtual void GetQueryivEXT(GLenum target
, GLenum pname
, GLint
* params
) = 0;
238 virtual void GetQueryObjectuivEXT(GLuint id
, GLenum pname
, GLuint
* params
) = 0;
239 virtual void InsertEventMarkerEXT(GLsizei length
, const GLchar
* marker
) = 0;
240 virtual void PushGroupMarkerEXT(GLsizei length
, const GLchar
* marker
) = 0;
241 virtual void PopGroupMarkerEXT() = 0;
242 virtual void GenVertexArraysOES(GLsizei n
, GLuint
* arrays
) = 0;
243 virtual void DeleteVertexArraysOES(GLsizei n
, const GLuint
* arrays
) = 0;
244 virtual GLboolean
IsVertexArrayOES(GLuint array
) = 0;
245 virtual void BindVertexArrayOES(GLuint array
) = 0;
246 virtual void SwapBuffers() = 0;
247 virtual GLuint
GetMaxValueInBufferCHROMIUM(
248 GLuint buffer_id
, GLsizei count
, GLenum type
, GLuint offset
) = 0;
249 virtual void GenSharedIdsCHROMIUM(
250 GLuint namespace_id
, GLuint id_offset
, GLsizei n
, GLuint
* ids
) = 0;
251 virtual void DeleteSharedIdsCHROMIUM(
252 GLuint namespace_id
, GLsizei n
, const GLuint
* ids
) = 0;
253 virtual void RegisterSharedIdsCHROMIUM(
254 GLuint namespace_id
, GLsizei n
, const GLuint
* ids
) = 0;
255 virtual GLboolean
EnableFeatureCHROMIUM(const char* feature
) = 0;
256 virtual void* MapBufferCHROMIUM(GLuint target
, GLenum access
) = 0;
257 virtual GLboolean
UnmapBufferCHROMIUM(GLuint target
) = 0;
258 virtual void* MapImageCHROMIUM(GLuint image_id
, GLenum access
) = 0;
259 virtual void UnmapImageCHROMIUM(GLuint image_id
) = 0;
260 virtual void* MapBufferSubDataCHROMIUM(
261 GLuint target
, GLintptr offset
, GLsizeiptr size
, GLenum access
) = 0;
262 virtual void UnmapBufferSubDataCHROMIUM(const void* mem
) = 0;
263 virtual void* MapTexSubImage2DCHROMIUM(
264 GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
,
265 GLsizei height
, GLenum format
, GLenum type
, GLenum access
) = 0;
266 virtual void UnmapTexSubImage2DCHROMIUM(const void* mem
) = 0;
267 virtual void ResizeCHROMIUM(GLuint width
, GLuint height
, GLfloat scale_factor
) =
269 virtual const GLchar
* GetRequestableExtensionsCHROMIUM() = 0;
270 virtual void RequestExtensionCHROMIUM(const char* extension
) = 0;
271 virtual void RateLimitOffscreenContextCHROMIUM() = 0;
272 virtual void GetMultipleIntegervCHROMIUM(
273 const GLenum
* pnames
, GLuint count
, GLint
* results
, GLsizeiptr size
) = 0;
274 virtual void GetProgramInfoCHROMIUM(
275 GLuint program
, GLsizei bufsize
, GLsizei
* size
, void* info
) = 0;
276 virtual GLuint
CreateStreamTextureCHROMIUM(GLuint texture
) = 0;
277 virtual void DestroyStreamTextureCHROMIUM(GLuint texture
) = 0;
278 virtual GLuint
CreateImageCHROMIUM(
279 GLsizei width
, GLsizei height
, GLenum internalformat
) = 0;
280 virtual void DestroyImageCHROMIUM(GLuint image_id
) = 0;
281 virtual void GetImageParameterivCHROMIUM(
282 GLuint image_id
, GLenum pname
, GLint
* params
) = 0;
283 virtual void GetTranslatedShaderSourceANGLE(
284 GLuint shader
, GLsizei bufsize
, GLsizei
* length
, char* source
) = 0;
285 virtual void PostSubBufferCHROMIUM(
286 GLint x
, GLint y
, GLint width
, GLint height
) = 0;
287 virtual void TexImageIOSurface2DCHROMIUM(
288 GLenum target
, GLsizei width
, GLsizei height
, GLuint ioSurfaceId
,
290 virtual void CopyTextureCHROMIUM(
291 GLenum target
, GLenum source_id
, GLenum dest_id
, GLint level
,
292 GLint internalformat
, GLenum dest_type
) = 0;
293 virtual void DrawArraysInstancedANGLE(
294 GLenum mode
, GLint first
, GLsizei count
, GLsizei primcount
) = 0;
295 virtual void DrawElementsInstancedANGLE(
296 GLenum mode
, GLsizei count
, GLenum type
, const void* indices
,
297 GLsizei primcount
) = 0;
298 virtual void VertexAttribDivisorANGLE(GLuint index
, GLuint divisor
) = 0;
299 virtual void GenMailboxCHROMIUM(GLbyte
* mailbox
) = 0;
300 virtual void ProduceTextureCHROMIUM(GLenum target
, const GLbyte
* mailbox
) = 0;
301 virtual void ConsumeTextureCHROMIUM(GLenum target
, const GLbyte
* mailbox
) = 0;
302 virtual void BindUniformLocationCHROMIUM(
303 GLuint program
, GLint location
, const char* name
) = 0;
304 virtual void BindTexImage2DCHROMIUM(GLenum target
, GLint imageId
) = 0;
305 virtual void ReleaseTexImage2DCHROMIUM(GLenum target
, GLint imageId
) = 0;
306 virtual void TraceBeginCHROMIUM(const char* name
) = 0;
307 virtual void TraceEndCHROMIUM() = 0;
308 virtual void AsyncTexSubImage2DCHROMIUM(
309 GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLsizei width
,
310 GLsizei height
, GLenum format
, GLenum type
, const void* data
) = 0;
311 virtual void AsyncTexImage2DCHROMIUM(
312 GLenum target
, GLint level
, GLint internalformat
, GLsizei width
,
313 GLsizei height
, GLint border
, GLenum format
, GLenum type
,
314 const void* pixels
) = 0;
315 virtual void WaitAsyncTexImage2DCHROMIUM(GLenum target
) = 0;
316 virtual void DiscardFramebufferEXT(
317 GLenum target
, GLsizei count
, const GLenum
* attachments
) = 0;
318 virtual void LoseContextCHROMIUM(GLenum current
, GLenum other
) = 0;
319 virtual GLuint
InsertSyncPointCHROMIUM() = 0;
320 virtual void WaitSyncPointCHROMIUM(GLuint sync_point
) = 0;
321 virtual void DrawBuffersEXT(GLsizei count
, const GLenum
* bufs
) = 0;
322 #endif // GPU_COMMAND_BUFFER_CLIENT_GLES2_INTERFACE_AUTOGEN_H_