ProjectingObserverChromeos: Drop DBusThreadManager dependency for better testing.
[chromium-blink-merge.git] / gpu / GLES2 / gl2extchromium.h
blob51998640741bb02a6687ac3bfaed1ce604d2edb4
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 contains Chromium-specific GLES2 extensions declarations.
7 #ifndef GPU_GLES2_GL2EXTCHROMIUM_H_
8 #define GPU_GLES2_GL2EXTCHROMIUM_H_
10 #include <GLES2/gl2.h>
11 #include <GLES2/gl2ext.h>
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
17 /* GL_CHROMIUM_iosurface */
18 #ifndef GL_CHROMIUM_iosurface
19 #define GL_CHROMIUM_iosurface 1
20 #ifdef GL_GLEXT_PROTOTYPES
21 GL_APICALL void GL_APIENTRY glTexImageIOSurface2DCHROMIUM(
22 GLenum target, GLsizei width, GLsizei height, GLuint ioSurfaceId,
23 GLuint plane);
24 #endif
25 typedef void (GL_APIENTRYP PFNGLTEXIMAGEIOSURFACE2DCHROMIUMPROC) (
26 GLenum target, GLsizei width, GLsizei height, GLuint ioSurfaceId,
27 GLuint plane);
28 #endif /* GL_CHROMIUM_iosurface */
30 /* GL_CHROMIUM_gpu_memory_manager */
31 #ifndef GL_CHROMIUM_gpu_memory_manager
32 #define GL_CHROMIUM_gpu_memory_manager 1
34 #ifndef GL_TEXTURE_POOL_UNMANAGED_CHROMIUM
35 #define GL_TEXTURE_POOL_UNMANAGED_CHROMIUM 0x6002
36 #endif
38 #ifndef GL_TEXTURE_POOL_CHROMIUM
39 #define GL_TEXTURE_POOL_CHROMIUM 0x6000
40 #endif
42 #ifndef GL_TEXTURE_POOL_MANAGED_CHROMIUM
43 #define GL_TEXTURE_POOL_MANAGED_CHROMIUM 0x6001
44 #endif
45 #endif /* GL_CHROMIUM_gpu_memory_manager */
47 /* GL_CHROMIUM_texture_mailbox */
48 #ifndef GL_CHROMIUM_texture_mailbox
49 #define GL_CHROMIUM_texture_mailbox 1
51 #ifndef GL_MAILBOX_SIZE_CHROMIUM
52 #define GL_MAILBOX_SIZE_CHROMIUM 64
53 #endif
54 #ifdef GL_GLEXT_PROTOTYPES
55 GL_APICALL void GL_APIENTRY glGenMailboxCHROMIUM(GLbyte* mailbox);
56 GL_APICALL void GL_APIENTRY glProduceTextureCHROMIUM(
57 GLenum target, const GLbyte* mailbox);
58 GL_APICALL void GL_APIENTRY glProduceTextureDirectCHROMIUM(
59 GLuint texture, GLenum target, const GLbyte* mailbox);
60 GL_APICALL void GL_APIENTRY glConsumeTextureCHROMIUM(
61 GLenum target, const GLbyte* mailbox);
62 GL_APICALL GLuint GL_APIENTRY glCreateAndConsumeTextureCHROMIUM(
63 GLenum target, const GLbyte* mailbox);
64 #endif
65 typedef void (GL_APIENTRYP PFNGLGENMAILBOXCHROMIUMPROC) (GLbyte* mailbox);
66 typedef void (GL_APIENTRYP PFNGLPRODUCETEXTURECHROMIUMPROC) (
67 GLenum target, const GLbyte* mailbox);
68 typedef void (GL_APIENTRYP PFNGLPRODUCETEXTUREDIRECTCHROMIUMPROC) (
69 GLuint texture, GLenum target, const GLbyte* mailbox);
70 typedef void (GL_APIENTRYP PFNGLCONSUMETEXTURECHROMIUMPROC) (
71 GLenum target, const GLbyte* mailbox);
72 typedef GLuint (GL_APIENTRYP PFNGLCREATEANDCONSUMETEXTURECHROMIUMPROC) (
73 GLenum target, const GLbyte* mailbox);
74 #endif /* GL_CHROMIUM_texture_mailbox */
76 /* GL_CHROMIUM_pixel_transfer_buffer_object */
77 #ifndef GL_CHROMIUM_pixel_transfer_buffer_object
78 #define GL_CHROMIUM_pixel_transfer_buffer_object 1
80 #ifndef GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM
81 // TODO(reveman): Get official numbers for this constants.
82 #define GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM 0x78EC
83 #define GL_PIXEL_PACK_TRANSFER_BUFFER_CHROMIUM 0x78ED
85 #ifdef GL_GLEXT_PROTOTYPES
86 GL_APICALL void* GL_APIENTRY glMapBufferCHROMIUM(GLuint target,GLenum access);
87 GL_APICALL GLboolean GL_APIENTRY glUnmapBufferCHROMIUM(GLuint target);
88 #endif
89 typedef void* (GL_APIENTRY PFNGLMAPBUFFERCHROMIUM) (
90 GLuint target,GLenum access);
91 typedef GLboolean (GL_APIENTRY PFNGLUNMAPBUFFERCHROMIUM) (GLuint target);
92 #endif /* GL_CHROMIUM_pixel_transfer_buffer_object */
94 #ifndef GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM
95 // TODO(reveman): Get official numbers for this constants.
96 #define GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM 0x78EF
97 #define GL_PIXEL_PACK_TRANSFER_BUFFER_BINDING_CHROMIUM 0x78EE
98 #endif
100 #ifndef GL_STREAM_READ
101 #define GL_STREAM_READ 0x88E1
102 #endif
103 #endif /* GL_CHROMIUM_pixel_transfer_buffer_object */
105 /* GL_CHROMIUM_image */
106 #ifndef GL_CHROMIUM_image
107 #define GL_CHROMIUM_image 1
109 #ifndef GL_IMAGE_ROWBYTES_CHROMIUM
110 #define GL_IMAGE_ROWBYTES_CHROMIUM 0x78F0
111 #endif
113 #ifndef GL_IMAGE_MAP_CHROMIUM
114 #define GL_IMAGE_MAP_CHROMIUM 0x78F1
115 #endif
117 #ifndef GL_IMAGE_SCANOUT_CHROMIUM
118 #define GL_IMAGE_SCANOUT_CHROMIUM 0x78F2
119 #endif
121 #ifdef GL_GLEXT_PROTOTYPES
122 GL_APICALL GLuint GL_APIENTRY glCreateImageCHROMIUM(GLsizei width,
123 GLsizei height,
124 GLenum internalformat,
125 GLenum usage);
126 GL_APICALL void GL_APIENTRY glDestroyImageCHROMIUM(GLuint image_id);
127 GL_APICALL void GL_APIENTRY glGetImageParameterivCHROMIUM(
128 GLuint image_id, GLenum pname, GLint* params);
129 GL_APICALL void* GL_APIENTRY glMapImageCHROMIUM(GLuint image_id);
130 GL_APICALL void GL_APIENTRY glUnmapImageCHROMIUM(GLuint image_id);
131 #endif
132 typedef GLuint(GL_APIENTRYP PFNGLCREATEIMAGECHROMIUMPROC)(
133 GLsizei width,
134 GLsizei height,
135 GLenum internalformat,
136 GLenum usage);
137 typedef void (
138 GL_APIENTRYP PFNGLDESTROYIMAGECHROMIUMPROC)(GLuint image_id);
139 typedef void* (GL_APIENTRYP PFNGLMAPIMAGECHROMIUMPROC)(GLuint image_id);
140 typedef void (GL_APIENTRYP PFNGLUNMAPIMAGECHROMIUMPROC)(GLuint image_id);
141 #endif /* GL_CHROMIUM_image */
143 /* GL_CHROMIUM_gpu_memory_buffer_image */
144 #ifndef GL_CHROMIUM_gpu_memory_buffer_image
145 #define GL_CHROMIUM_gpu_memory_buffer_image 1
147 #ifndef GL_MAP_CHROMIUM
148 #define GL_MAP_CHROMIUM 0x78F1
149 #endif
151 #ifndef GL_SCANOUT_CHROMIUM
152 #define GL_SCANOUT_CHROMIUM 0x78F2
153 #endif
155 #ifdef GL_GLEXT_PROTOTYPES
156 GL_APICALL GLuint GL_APIENTRY glCreateGpuMemoryBufferImageCHROMIUM(
157 GLsizei width,
158 GLsizei height,
159 GLenum internalformat,
160 GLenum usage);
161 #endif
162 typedef GLuint(GL_APIENTRYP PFNGLCREATEGPUMEMORYBUFFERIMAGECHROMIUMPROC) (
163 GLsizei width,
164 GLsizei height,
165 GLenum internalformat,
166 GLenum usage);
167 #endif /* GL_CHROMIUM_gpu_memory_buffer_image */
169 /* GL_CHROMIUM_map_sub */
170 #ifndef GL_CHROMIUM_map_sub
171 #define GL_CHROMIUM_map_sub 1
173 #ifndef GL_READ_ONLY
174 #define GL_READ_ONLY 0x88B8
175 #endif
177 #ifndef GL_WRITE_ONLY
178 #define GL_WRITE_ONLY 0x88B9
179 #endif
180 #ifdef GL_GLEXT_PROTOTYPES
181 GL_APICALL void* GL_APIENTRY glMapBufferSubDataCHROMIUM(
182 GLuint target, GLintptr offset, GLsizeiptr size, GLenum access);
183 GL_APICALL void GL_APIENTRY glUnmapBufferSubDataCHROMIUM(const void* mem);
184 GL_APICALL void* GL_APIENTRY glMapTexSubImage2DCHROMIUM(
185 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width,
186 GLsizei height, GLenum format, GLenum type, GLenum access);
187 GL_APICALL void GL_APIENTRY glUnmapTexSubImage2DCHROMIUM(const void* mem);
188 #endif
189 typedef void* (GL_APIENTRYP PFNGLMAPBUFFERSUBDATACHROMIUMPROC) (
190 GLuint target, GLintptr offset, GLsizeiptr size, GLenum access);
191 typedef void (
192 GL_APIENTRYP PFNGLUNMAPBUFFERSUBDATACHROMIUMPROC) (const void* mem);
193 typedef void* (GL_APIENTRYP PFNGLMAPTEXSUBIMAGE2DCHROMIUMPROC) (
194 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width,
195 GLsizei height, GLenum format, GLenum type, GLenum access);
196 typedef void (
197 GL_APIENTRYP PFNGLUNMAPTEXSUBIMAGE2DCHROMIUMPROC) (const void* mem);
198 #endif /* GL_CHROMIUM_map_sub */
200 /* GL_CHROMIUM_request_extension */
201 #ifndef GL_CHROMIUM_request_extension
202 #define GL_CHROMIUM_request_extension 1
203 #ifdef GL_GLEXT_PROTOTYPES
204 GL_APICALL const GLchar* GL_APIENTRY glGetRequestableExtensionsCHROMIUM();
205 GL_APICALL void GL_APIENTRY glRequestExtensionCHROMIUM(const char* extension);
206 #endif
207 typedef const GLchar* (GL_APIENTRYP PFNGLGETREQUESTABLEEXTENSIONSCHROMIUMPROC) (
209 typedef void (GL_APIENTRYP PFNGLREQUESTEXTENSIONCHROMIUMPROC) (
210 const char* extension);
211 #endif /* GL_CHROMIUM_request_extension */
213 /* GL_CHROMIUM_get_error_query */
214 #ifndef GL_CHROMIUM_get_error_query
215 #define GL_CHROMIUM_get_error_query 1
217 #ifndef GL_GET_ERROR_QUERY_CHROMIUM
218 // TODO(gman): Get official numbers for this constants.
219 #define GL_GET_ERROR_QUERY_CHROMIUM 0x84F3
220 #endif
221 #endif /* GL_CHROMIUM_get_error_query */
223 /* GL_CHROMIUM_texture_from_image */
224 #ifndef GL_CHROMIUM_texture_from_image
225 #define GL_CHROMIUM_texture_from_image 1
226 #ifdef GL_GLEXT_PROTOTYPES
227 GL_APICALL void GL_APIENTRY glBindTexImage2DCHROMIUM(
228 GLenum target, GLint imageId);
229 GL_APICALL void GL_APIENTRY glReleaseTexImage2DCHROMIUM(
230 GLenum target, GLint imageId);
231 #endif
232 typedef void (GL_APIENTRYP PFNGLBINDTEXIMAGE2DCHROMIUMPROC) (
233 GLenum target, GLint imageId);
234 typedef void (GL_APIENTRYP PFNGLRELEASETEXIMAGE2DCHROMIUMPROC) (
235 GLenum target, GLint imageId);
236 #endif /* GL_CHROMIUM_texture_from_image */
238 /* GL_CHROMIUM_rate_limit_offscreen_context */
239 #ifndef GL_CHROMIUM_rate_limit_offscreen_context
240 #define GL_CHROMIUM_rate_limit_offscreen_context 1
241 #ifdef GL_GLEXT_PROTOTYPES
242 GL_APICALL void GL_APIENTRY glRateLimitOffscreenContextCHROMIUM();
243 #endif
244 typedef void (GL_APIENTRYP PFNGLRATELIMITOFFSCREENCONTEXTCHROMIUMPROC) ();
245 #endif /* GL_CHROMIUM_rate_limit_offscreen_context */
247 /* GL_CHROMIUM_post_sub_buffer */
248 #ifndef GL_CHROMIUM_post_sub_buffer
249 #define GL_CHROMIUM_post_sub_buffer 1
250 #ifdef GL_GLEXT_PROTOTYPES
251 GL_APICALL void GL_APIENTRY glPostSubBufferCHROMIUM(
252 GLint x, GLint y, GLint width, GLint height);
253 #endif
254 typedef void (GL_APIENTRYP PFNGLPOSTSUBBUFFERCHROMIUMPROC) (
255 GLint x, GLint y, GLint width, GLint height);
256 #endif /* GL_CHROMIUM_post_sub_buffer */
258 /* GL_CHROMIUM_bind_uniform_location */
259 #ifndef GL_CHROMIUM_bind_uniform_location
260 #define GL_CHROMIUM_bind_uniform_location 1
261 #ifdef GL_GLEXT_PROTOTYPES
262 GL_APICALL void GL_APIENTRY glBindUniformLocationCHROMIUM(
263 GLuint program, GLint location, const char* name);
264 #endif
265 typedef void (GL_APIENTRYP PFNGLBINDUNIFORMLOCATIONCHROMIUMPROC) (
266 GLuint program, GLint location, const char* name);
267 #endif /* GL_CHROMIUM_bind_uniform_location */
269 /* GL_CHROMIUM_command_buffer_query */
270 #ifndef GL_CHROMIUM_command_buffer_query
271 #define GL_CHROMIUM_command_buffer_query 1
273 #ifndef GL_COMMANDS_ISSUED_CHROMIUM
274 // TODO(gman): Get official numbers for this constants.
275 #define GL_COMMANDS_ISSUED_CHROMIUM 0x84F2
276 #endif
277 #endif /* GL_CHROMIUM_command_buffer_query */
279 /* GL_CHROMIUM_framebuffer_multisample */
280 #ifndef GL_CHROMIUM_framebuffer_multisample
281 #define GL_CHROMIUM_framebuffer_multisample 1
283 #ifdef GL_GLEXT_PROTOTYPES
284 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleCHROMIUM (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
285 GL_APICALL void GL_APIENTRY glBlitFramebufferCHROMIUM (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
286 #endif
287 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLECHROMIUMPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
288 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERCHROMIUMPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
290 #ifndef GL_FRAMEBUFFER_BINDING_EXT
291 #define GL_FRAMEBUFFER_BINDING_EXT GL_FRAMEBUFFER_BINDING
292 #endif
294 #ifndef GL_DRAW_FRAMEBUFFER_BINDING_EXT
295 #define GL_DRAW_FRAMEBUFFER_BINDING_EXT GL_DRAW_FRAMEBUFFER_BINDING
296 #endif
298 #ifndef GL_RENDERBUFFER_BINDING_EXT
299 #define GL_RENDERBUFFER_BINDING_EXT GL_RENDERBUFFER_BINDING
300 #endif
302 #ifndef GL_RENDERBUFFER_SAMPLES
303 #define GL_RENDERBUFFER_SAMPLES 0x8CAB
304 #endif
306 #ifndef GL_READ_FRAMEBUFFER_EXT
307 #define GL_READ_FRAMEBUFFER_EXT GL_READ_FRAMEBUFFER
308 #endif
310 #ifndef GL_RENDERBUFFER_SAMPLES_EXT
311 #define GL_RENDERBUFFER_SAMPLES_EXT GL_RENDERBUFFER_SAMPLES
312 #endif
314 #ifndef GL_RENDERBUFFER_BINDING
315 #define GL_RENDERBUFFER_BINDING 0x8CA7
316 #endif
318 #ifndef GL_READ_FRAMEBUFFER_BINDING
319 #define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
320 #endif
322 #ifndef GL_MAX_SAMPLES
323 #define GL_MAX_SAMPLES 0x8D57
324 #endif
326 #ifndef GL_READ_FRAMEBUFFER_BINDING_EXT
327 #define GL_READ_FRAMEBUFFER_BINDING_EXT GL_READ_FRAMEBUFFER_BINDING
328 #endif
330 #ifndef GL_DRAW_FRAMEBUFFER_BINDING
331 #define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
332 #endif
334 #ifndef GL_MAX_SAMPLES_EXT
335 #define GL_MAX_SAMPLES_EXT GL_MAX_SAMPLES
336 #endif
338 #ifndef GL_DRAW_FRAMEBUFFER
339 #define GL_DRAW_FRAMEBUFFER 0x8CA9
340 #endif
342 #ifndef GL_READ_FRAMEBUFFER
343 #define GL_READ_FRAMEBUFFER 0x8CA8
344 #endif
346 #ifndef GL_DRAW_FRAMEBUFFER_EXT
347 #define GL_DRAW_FRAMEBUFFER_EXT GL_DRAW_FRAMEBUFFER
348 #endif
350 #ifndef GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE
351 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
352 #endif
354 #ifndef GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT
355 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE // NOLINT
356 #endif
358 #ifndef GL_FRAMEBUFFER_BINDING
359 #define GL_FRAMEBUFFER_BINDING 0x8CA6
360 #endif
361 #endif /* GL_CHROMIUM_framebuffer_multisample */
363 /* GL_CHROMIUM_texture_compression_dxt3 */
364 #ifndef GL_CHROMIUM_texture_compression_dxt3
365 #define GL_CHROMIUM_texture_compression_dxt3 1
367 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
368 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
369 #endif
370 #endif /* GL_CHROMIUM_texture_compression_dxt3 */
372 /* GL_CHROMIUM_texture_compression_dxt5 */
373 #ifndef GL_CHROMIUM_texture_compression_dxt5
374 #define GL_CHROMIUM_texture_compression_dxt5 1
376 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
377 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
378 #endif
379 #endif /* GL_CHROMIUM_texture_compression_dxt5 */
381 /* GL_CHROMIUM_async_pixel_transfers */
382 #ifndef GL_CHROMIUM_async_pixel_transfers
383 #define GL_CHROMIUM_async_pixel_transfers 1
385 #ifndef GL_ASYNC_PIXEL_UNPACK_COMPLETED_CHROMIUM
386 #define GL_ASYNC_PIXEL_UNPACK_COMPLETED_CHROMIUM 0x84F5
387 #endif
388 #ifndef GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM
389 #define GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM 0x84F6
390 #endif
391 #endif /* GL_CHROMIUM_async_pixel_transfers */
393 #ifndef GL_BIND_GENERATES_RESOURCE_CHROMIUM
394 #define GL_BIND_GENERATES_RESOURCE_CHROMIUM 0x9244
395 #endif
397 /* GL_CHROMIUM_copy_texture */
398 #ifndef GL_CHROMIUM_copy_texture
399 #define GL_CHROMIUM_copy_texture 1
401 #ifndef GL_UNPACK_COLORSPACE_CONVERSION_CHROMIUM
402 #define GL_UNPACK_COLORSPACE_CONVERSION_CHROMIUM 0x9243
403 #endif
405 #ifndef GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM
406 #define GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM 0x9242
407 #endif
409 #ifndef GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM
410 #define GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM 0x9241
411 #endif
412 #ifdef GL_GLEXT_PROTOTYPES
413 GL_APICALL void GL_APIENTRY glCopyTextureCHROMIUM(
414 GLenum target, GLenum source_id, GLenum dest_id, GLint level,
415 GLint internalformat, GLenum dest_type);
416 #endif
417 typedef void (GL_APIENTRYP PFNGLCOPYTEXTURECHROMIUMPROC) (
418 GLenum target, GLenum source_id, GLenum dest_id, GLint level,
419 GLint internalformat, GLenum dest_type);
420 #endif /* GL_CHROMIUM_copy_texture */
422 /* GL_CHROMIUM_lose_context */
423 #ifndef GL_CHROMIUM_lose_context
424 #define GL_CHROMIUM_lose_context 1
425 #ifdef GL_GLEXT_PROTOTYPES
426 GL_APICALL void GL_APIENTRY glLoseContextCHROMIUM(GLenum current, GLenum other);
427 #endif
428 typedef void (GL_APIENTRYP PFNGLLOSECONTEXTCHROMIUMPROC) (
429 GLenum current, GLenum other);
430 #endif /* GL_CHROMIUM_lose_context */
432 /* GL_CHROMIUM_flipy */
433 #ifndef GL_CHROMIUM_flipy
434 #define GL_CHROMIUM_flipy 1
436 #ifndef GL_UNPACK_FLIP_Y_CHROMIUM
437 #define GL_UNPACK_FLIP_Y_CHROMIUM 0x9240
438 #endif
439 #endif /* GL_CHROMIUM_flipy */
441 /* GL_ARB_texture_rectangle */
442 #ifndef GL_ARB_texture_rectangle
443 #define GL_ARB_texture_rectangle 1
445 #ifndef GL_SAMPLER_2D_RECT_ARB
446 #define GL_SAMPLER_2D_RECT_ARB 0x8B63
447 #endif
449 #ifndef GL_TEXTURE_BINDING_RECTANGLE_ARB
450 #define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6
451 #endif
453 #ifndef GL_TEXTURE_RECTANGLE_ARB
454 #define GL_TEXTURE_RECTANGLE_ARB 0x84F5
455 #endif
456 #endif /* GL_ARB_texture_rectangle */
458 /* GL_CHROMIUM_enable_feature */
459 #ifndef GL_CHROMIUM_enable_feature
460 #define GL_CHROMIUM_enable_feature 1
461 #ifdef GL_GLEXT_PROTOTYPES
462 GL_APICALL GLboolean GL_APIENTRY glEnableFeatureCHROMIUM(const char* feature);
463 #endif
464 typedef GLboolean (GL_APIENTRYP PFNGLENABLEFEATURECHROMIUMPROC) (
465 const char* feature);
466 #endif /* GL_CHROMIUM_enable_feature */
468 /* GL_CHROMIUM_command_buffer_latency_query */
469 #ifndef GL_CHROMIUM_command_buffer_latency_query
470 #define GL_CHROMIUM_command_buffer_latency_query 1
472 #ifndef GL_LATENCY_QUERY_CHROMIUM
473 // TODO(gman): Get official numbers for these constants.
474 #define GL_LATENCY_QUERY_CHROMIUM 0x84F4
475 #endif
476 #endif /* GL_CHROMIUM_command_buffer_latency_query */
478 /* GL_ARB_robustness */
479 #ifndef GL_ARB_robustness
480 #define GL_ARB_robustness 1
482 #ifndef GL_GUILTY_CONTEXT_RESET_ARB
483 #define GL_GUILTY_CONTEXT_RESET_ARB 0x8253
484 #endif
486 #ifndef GL_UNKNOWN_CONTEXT_RESET_ARB
487 #define GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255
488 #endif
490 #ifndef GL_INNOCENT_CONTEXT_RESET_ARB
491 #define GL_INNOCENT_CONTEXT_RESET_ARB 0x8254
492 #endif
493 #endif /* GL_ARB_robustness */
495 /* GL_EXT_framebuffer_blit */
496 #ifndef GL_EXT_framebuffer_blit
497 #define GL_EXT_framebuffer_blit 1
498 #ifdef GL_GLEXT_PROTOTYPES
499 GL_APICALL void GL_APIENTRY glBlitFramebufferEXT(
500 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0,
501 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
502 #endif
503 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFEREXTPROC) (
504 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0,
505 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
506 #endif /* GL_EXT_framebuffer_blit */
508 /* GL_EXT_draw_buffers */
509 #ifndef GL_EXT_draw_buffers
510 #define GL_EXT_draw_buffers 1
512 #ifdef GL_GLEXT_PROTOTYPES
513 GL_APICALL void GL_APIENTRY glDrawBuffersEXT(
514 GLsizei n, const GLenum* bufs);
515 #endif
516 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSEXTPROC) (
517 GLsizei n, const GLenum* bufs);
519 #ifndef GL_COLOR_ATTACHMENT0_EXT
520 #define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
521 #endif
522 #ifndef GL_COLOR_ATTACHMENT1_EXT
523 #define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
524 #endif
525 #ifndef GL_COLOR_ATTACHMENT2_EXT
526 #define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
527 #endif
528 #ifndef GL_COLOR_ATTACHMENT3_EXT
529 #define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
530 #endif
531 #ifndef GL_COLOR_ATTACHMENT4_EXT
532 #define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
533 #endif
534 #ifndef GL_COLOR_ATTACHMENT5_EXT
535 #define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
536 #endif
537 #ifndef GL_COLOR_ATTACHMENT6_EXT
538 #define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
539 #endif
540 #ifndef GL_COLOR_ATTACHMENT7_EXT
541 #define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
542 #endif
543 #ifndef GL_COLOR_ATTACHMENT8_EXT
544 #define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
545 #endif
546 #ifndef GL_COLOR_ATTACHMENT9_EXT
547 #define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
548 #endif
549 #ifndef GL_COLOR_ATTACHMENT10_EXT
550 #define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
551 #endif
552 #ifndef GL_COLOR_ATTACHMENT11_EXT
553 #define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
554 #endif
555 #ifndef GL_COLOR_ATTACHMENT12_EXT
556 #define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
557 #endif
558 #ifndef GL_COLOR_ATTACHMENT13_EXT
559 #define GL_COLOR_ATTACHMENT13_EXT 0x8CED
560 #endif
561 #ifndef GL_COLOR_ATTACHMENT14_EXT
562 #define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
563 #endif
564 #ifndef GL_COLOR_ATTACHMENT15_EXT
565 #define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
566 #endif
568 #ifndef GL_DRAW_BUFFER0_EXT
569 #define GL_DRAW_BUFFER0_EXT 0x8825
570 #endif
571 #ifndef GL_DRAW_BUFFER1_EXT
572 #define GL_DRAW_BUFFER1_EXT 0x8826
573 #endif
574 #ifndef GL_DRAW_BUFFER2_EXT
575 #define GL_DRAW_BUFFER2_EXT 0x8827
576 #endif
577 #ifndef GL_DRAW_BUFFER3_EXT
578 #define GL_DRAW_BUFFER3_EXT 0x8828
579 #endif
580 #ifndef GL_DRAW_BUFFER4_EXT
581 #define GL_DRAW_BUFFER4_EXT 0x8829
582 #endif
583 #ifndef GL_DRAW_BUFFER5_EXT
584 #define GL_DRAW_BUFFER5_EXT 0x882A
585 #endif
586 #ifndef GL_DRAW_BUFFER6_EXT
587 #define GL_DRAW_BUFFER6_EXT 0x882B
588 #endif
589 #ifndef GL_DRAW_BUFFER7_EXT
590 #define GL_DRAW_BUFFER7_EXT 0x882C
591 #endif
592 #ifndef GL_DRAW_BUFFER8_EXT
593 #define GL_DRAW_BUFFER8_EXT 0x882D
594 #endif
595 #ifndef GL_DRAW_BUFFER9_EXT
596 #define GL_DRAW_BUFFER9_EXT 0x882E
597 #endif
598 #ifndef GL_DRAW_BUFFER10_EXT
599 #define GL_DRAW_BUFFER10_EXT 0x882F
600 #endif
601 #ifndef GL_DRAW_BUFFER11_EXT
602 #define GL_DRAW_BUFFER11_EXT 0x8830
603 #endif
604 #ifndef GL_DRAW_BUFFER12_EXT
605 #define GL_DRAW_BUFFER12_EXT 0x8831
606 #endif
607 #ifndef GL_DRAW_BUFFER13_EXT
608 #define GL_DRAW_BUFFER13_EXT 0x8832
609 #endif
610 #ifndef GL_DRAW_BUFFER14_EXT
611 #define GL_DRAW_BUFFER14_EXT 0x8833
612 #endif
613 #ifndef GL_DRAW_BUFFER15_EXT
614 #define GL_DRAW_BUFFER15_EXT 0x8834
615 #endif
617 #ifndef GL_MAX_COLOR_ATTACHMENTS_EXT
618 #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
619 #endif
621 #ifndef GL_MAX_DRAW_BUFFERS_EXT
622 #define GL_MAX_DRAW_BUFFERS_EXT 0x8824
623 #endif
625 #endif /* GL_EXT_draw_buffers */
627 /* GL_CHROMIUM_resize */
628 #ifndef GL_CHROMIUM_resize
629 #define GL_CHROMIUM_resize 1
630 #ifdef GL_GLEXT_PROTOTYPES
631 GL_APICALL void GL_APIENTRY glResizeCHROMIUM(
632 GLuint width, GLuint height, GLfloat scale_factor);
633 #endif
634 typedef void (GL_APIENTRYP PFNGLRESIZECHROMIUMPROC) (
635 GLuint width, GLuint height);
636 #endif /* GL_CHROMIUM_resize */
638 /* GL_CHROMIUM_get_multiple */
639 #ifndef GL_CHROMIUM_get_multiple
640 #define GL_CHROMIUM_get_multiple 1
641 #ifdef GL_GLEXT_PROTOTYPES
642 GL_APICALL void GL_APIENTRY glGetMultipleIntegervCHROMIUM(
643 const GLenum* pnames, GLuint count, GLint* results, GLsizeiptr size);
644 GL_APICALL void GL_APIENTRY glGetProgramInfoCHROMIUM(
645 GLuint program, GLsizei bufsize, GLsizei* size, void* info);
646 #endif
647 typedef void (GL_APIENTRYP PFNGLGETMULTIPLEINTEGERVCHROMIUMPROC) (
648 const GLenum* pnames, GLuint count, GLint* results, GLsizeiptr size);
649 typedef void (GL_APIENTRYP PFNGLGETPROGRAMINFOCHROMIUMPROC) (
650 GLuint program, GLsizei bufsize, GLsizei* size, void* info);
651 #endif /* GL_CHROMIUM_get_multiple */
653 /* GL_CHROMIUM_sync_point */
654 #ifndef GL_CHROMIUM_sync_point
655 #define GL_CHROMIUM_sync_point 1
656 #ifdef GL_GLEXT_PROTOTYPES
657 GL_APICALL GLuint GL_APIENTRY glInsertSyncPointCHROMIUM();
658 GL_APICALL void GL_APIENTRY glWaitSyncPointCHROMIUM(GLuint sync_point);
659 #endif
660 typedef GLuint (GL_APIENTRYP PFNGLINSERTSYNCPOINTCHROMIUMPROC) ();
661 typedef void (GL_APIENTRYP PFNGLWAITSYNCPOINTCHROMIUMPROC) (GLuint sync_point);
662 #endif /* GL_CHROMIUM_sync_point */
664 #ifndef GL_CHROMIUM_color_buffer_float_rgba
665 #define GL_CHROMIUM_color_buffer_float_rgba 1
666 #ifndef GL_RGBA32F
667 #define GL_RGBA32F 0x8814
668 #endif
669 #endif /* GL_CHROMIUM_color_buffer_float_rgba */
671 #ifndef GL_CHROMIUM_color_buffer_float_rgb
672 #define GL_CHROMIUM_color_buffer_float_rgb 1
673 #ifndef GL_RGB32F
674 #define GL_RGB32F 0x8815
675 #endif
676 #endif /* GL_CHROMIUM_color_buffer_float_rgb */
678 /* GL_CHROMIUM_schedule_overlay_plane */
679 #ifndef GL_CHROMIUM_schedule_overlay_plane
680 #define GL_CHROMIUM_schedule_overlay_plane 1
682 #ifndef GL_OVERLAY_TRANSFORM_NONE_CHROMIUM
683 #define GL_OVERLAY_TRANSFORM_NONE_CHROMIUM 0x9245
684 #endif
686 #ifndef GL_OVERLAY_TRANSFORM_FLIP_HORIZONTAL_CHROMIUM
687 #define GL_OVERLAY_TRANSFORM_FLIP_HORIZONTAL_CHROMIUM 0x9246
688 #endif
690 #ifndef GL_OVERLAY_TRANSFORM_FLIP_VERTICAL_CHROMIUM
691 #define GL_OVERLAY_TRANSFORM_FLIP_VERTICAL_CHROMIUM 0x9247
692 #endif
694 #ifndef GL_OVERLAY_TRANSFORM_ROTATE_90_CHROMIUM
695 #define GL_OVERLAY_TRANSFORM_ROTATE_90_CHROMIUM 0x9248
696 #endif
698 #ifndef GL_OVERLAY_TRANSFORM_ROTATE_180_CHROMIUM
699 #define GL_OVERLAY_TRANSFORM_ROTATE_180_CHROMIUM 0x9249
700 #endif
702 #ifndef GL_OVERLAY_TRANSFORM_ROTATE_270_CHROMIUM
703 #define GL_OVERLAY_TRANSFORM_ROTATE_270_CHROMIUM 0x924A
704 #endif
706 #ifdef GL_GLEXT_PROTOTYPES
707 GL_APICALL void GL_APIENTRY
708 glScheduleOverlayPlaneCHROMIUM(GLint plane_z_order,
709 GLenum plane_transform,
710 GLuint overlay_texture_id,
711 GLint bounds_x,
712 GLint bounds_y,
713 GLint bounds_width,
714 GLint bounds_height,
715 GLfloat uv_x,
716 GLfloat uv_y,
717 GLfloat uv_width,
718 GLfloat uv_height);
719 #endif
720 typedef void(GL_APIENTRYP PFNGLSCHEDULEOVERLAYPLANECHROMIUMPROC)(
721 GLint plane_z_order,
722 GLenum plane_transform,
723 GLuint overlay_texture_id,
724 GLint bounds_x,
725 GLint bounds_y,
726 GLint bounds_width,
727 GLint bounds_height,
728 GLfloat uv_x,
729 GLfloat uv_y,
730 GLfloat uv_width,
731 GLfloat uv_height);
732 #endif /* GL_CHROMIUM_schedule_overlay_plane */
734 /* GL_CHROMIUM_sync_query */
735 #ifndef GL_CHROMIUM_sync_query
736 #define GL_CHROMIUM_sync_query 1
738 #ifndef GL_COMMANDS_COMPLETED_CHROMIUM
739 #define GL_COMMANDS_COMPLETED_CHROMIUM 0x84F7
740 #endif
741 #endif /* GL_CHROMIUM_sync_query */
743 #ifndef GL_CHROMIUM_path_rendering
744 #define GL_CHROMIUM_path_rendering 1
746 #ifdef GL_GLEXT_PROTOTYPES
747 GL_APICALL void GL_APIENTRY
748 glMatrixLoadfCHROMIUM(GLenum mode, const GLfloat* m);
749 GL_APICALL void GL_APIENTRY glMatrixLoadIdentityCHROMIUM(GLenum mode);
750 #endif
752 typedef void(GL_APIENTRYP PFNGLMATRIXLOADFCHROMIUMPROC)(GLenum matrixMode,
753 const GLfloat* m);
754 typedef void(GL_APIENTRYP PFNGLMATRIXLOADIDENTITYCHROMIUMPROC)(
755 GLenum matrixMode);
757 #endif /* GL_CHROMIUM_path_rendering */
759 #ifdef __cplusplus
761 #endif
763 #endif // GPU_GLES2_GL2EXTCHROMIUM_H_