chrome/browser/extensions: Remove use of MessageLoopProxy and deprecated MessageLoop...
[chromium-blink-merge.git] / gpu / GLES2 / gl2extchromium.h
blob5ca43fd8dc5a5ae027157d4bf53217388cad0810
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 typedef struct _ClientBuffer* ClientBuffer;
111 #ifdef GL_GLEXT_PROTOTYPES
112 GL_APICALL GLuint GL_APIENTRY glCreateImageCHROMIUM(ClientBuffer buffer,
113 GLsizei width,
114 GLsizei height,
115 GLenum internalformat);
116 GL_APICALL void GL_APIENTRY glDestroyImageCHROMIUM(GLuint image_id);
117 #endif
118 typedef GLuint(GL_APIENTRYP PFNGLCREATEIMAGECHROMIUMPROC)(
119 ClientBuffer buffer,
120 GLsizei width,
121 GLsizei height,
122 GLenum internalformat);
123 typedef void (
124 GL_APIENTRYP PFNGLDESTROYIMAGECHROMIUMPROC)(GLuint image_id);
125 #endif /* GL_CHROMIUM_image */
127 /* GL_CHROMIUM_gpu_memory_buffer_image */
128 #ifndef GL_CHROMIUM_gpu_memory_buffer_image
129 #define GL_CHROMIUM_gpu_memory_buffer_image 1
131 #ifndef GL_MAP_CHROMIUM
132 #define GL_MAP_CHROMIUM 0x78F1
133 #endif
135 #ifndef GL_SCANOUT_CHROMIUM
136 #define GL_SCANOUT_CHROMIUM 0x78F2
137 #endif
139 #ifndef GL_RGB_YUV_420_CHROMIUM
140 #define GL_RGB_YUV_420_CHROMIUM 0x78FA
141 #endif
143 #ifdef GL_GLEXT_PROTOTYPES
144 GL_APICALL GLuint GL_APIENTRY glCreateGpuMemoryBufferImageCHROMIUM(
145 GLsizei width,
146 GLsizei height,
147 GLenum internalformat,
148 GLenum usage);
149 #endif
150 typedef GLuint(GL_APIENTRYP PFNGLCREATEGPUMEMORYBUFFERIMAGECHROMIUMPROC)(
151 GLsizei width,
152 GLsizei height,
153 GLenum internalformat,
154 GLenum usage);
155 #endif /* GL_CHROMIUM_gpu_memory_buffer_image */
157 /* GL_CHROMIUM_map_sub */
158 #ifndef GL_CHROMIUM_map_sub
159 #define GL_CHROMIUM_map_sub 1
161 #ifndef GL_READ_ONLY
162 #define GL_READ_ONLY 0x88B8
163 #endif
165 #ifndef GL_WRITE_ONLY
166 #define GL_WRITE_ONLY 0x88B9
167 #endif
168 #ifdef GL_GLEXT_PROTOTYPES
169 GL_APICALL void* GL_APIENTRY glMapBufferSubDataCHROMIUM(
170 GLuint target, GLintptr offset, GLsizeiptr size, GLenum access);
171 GL_APICALL void GL_APIENTRY glUnmapBufferSubDataCHROMIUM(const void* mem);
172 GL_APICALL void* GL_APIENTRY glMapTexSubImage2DCHROMIUM(
173 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width,
174 GLsizei height, GLenum format, GLenum type, GLenum access);
175 GL_APICALL void GL_APIENTRY glUnmapTexSubImage2DCHROMIUM(const void* mem);
176 #endif
177 typedef void* (GL_APIENTRYP PFNGLMAPBUFFERSUBDATACHROMIUMPROC) (
178 GLuint target, GLintptr offset, GLsizeiptr size, GLenum access);
179 typedef void (
180 GL_APIENTRYP PFNGLUNMAPBUFFERSUBDATACHROMIUMPROC) (const void* mem);
181 typedef void* (GL_APIENTRYP PFNGLMAPTEXSUBIMAGE2DCHROMIUMPROC) (
182 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width,
183 GLsizei height, GLenum format, GLenum type, GLenum access);
184 typedef void (
185 GL_APIENTRYP PFNGLUNMAPTEXSUBIMAGE2DCHROMIUMPROC) (const void* mem);
186 #endif /* GL_CHROMIUM_map_sub */
188 /* GL_CHROMIUM_request_extension */
189 #ifndef GL_CHROMIUM_request_extension
190 #define GL_CHROMIUM_request_extension 1
191 #ifdef GL_GLEXT_PROTOTYPES
192 GL_APICALL const GLchar* GL_APIENTRY glGetRequestableExtensionsCHROMIUM();
193 GL_APICALL void GL_APIENTRY glRequestExtensionCHROMIUM(const char* extension);
194 #endif
195 typedef const GLchar* (GL_APIENTRYP PFNGLGETREQUESTABLEEXTENSIONSCHROMIUMPROC) (
197 typedef void (GL_APIENTRYP PFNGLREQUESTEXTENSIONCHROMIUMPROC) (
198 const char* extension);
199 #endif /* GL_CHROMIUM_request_extension */
201 /* GL_CHROMIUM_get_error_query */
202 #ifndef GL_CHROMIUM_get_error_query
203 #define GL_CHROMIUM_get_error_query 1
205 #ifndef GL_GET_ERROR_QUERY_CHROMIUM
206 // TODO(gman): Get official numbers for this constants.
207 #define GL_GET_ERROR_QUERY_CHROMIUM 0x6003
208 #endif
209 #endif /* GL_CHROMIUM_get_error_query */
211 /* GL_CHROMIUM_texture_from_image */
212 #ifndef GL_CHROMIUM_texture_from_image
213 #define GL_CHROMIUM_texture_from_image 1
214 #ifdef GL_GLEXT_PROTOTYPES
215 GL_APICALL void GL_APIENTRY glBindTexImage2DCHROMIUM(
216 GLenum target, GLint imageId);
217 GL_APICALL void GL_APIENTRY glReleaseTexImage2DCHROMIUM(
218 GLenum target, GLint imageId);
219 #endif
220 typedef void (GL_APIENTRYP PFNGLBINDTEXIMAGE2DCHROMIUMPROC) (
221 GLenum target, GLint imageId);
222 typedef void (GL_APIENTRYP PFNGLRELEASETEXIMAGE2DCHROMIUMPROC) (
223 GLenum target, GLint imageId);
224 #endif /* GL_CHROMIUM_texture_from_image */
226 /* GL_CHROMIUM_rate_limit_offscreen_context */
227 #ifndef GL_CHROMIUM_rate_limit_offscreen_context
228 #define GL_CHROMIUM_rate_limit_offscreen_context 1
229 #ifdef GL_GLEXT_PROTOTYPES
230 GL_APICALL void GL_APIENTRY glRateLimitOffscreenContextCHROMIUM();
231 #endif
232 typedef void (GL_APIENTRYP PFNGLRATELIMITOFFSCREENCONTEXTCHROMIUMPROC) ();
233 #endif /* GL_CHROMIUM_rate_limit_offscreen_context */
235 /* GL_CHROMIUM_post_sub_buffer */
236 #ifndef GL_CHROMIUM_post_sub_buffer
237 #define GL_CHROMIUM_post_sub_buffer 1
238 #ifdef GL_GLEXT_PROTOTYPES
239 GL_APICALL void GL_APIENTRY glPostSubBufferCHROMIUM(
240 GLint x, GLint y, GLint width, GLint height);
241 #endif
242 typedef void (GL_APIENTRYP PFNGLPOSTSUBBUFFERCHROMIUMPROC) (
243 GLint x, GLint y, GLint width, GLint height);
244 #endif /* GL_CHROMIUM_post_sub_buffer */
246 /* GL_CHROMIUM_bind_uniform_location */
247 #ifndef GL_CHROMIUM_bind_uniform_location
248 #define GL_CHROMIUM_bind_uniform_location 1
249 #ifdef GL_GLEXT_PROTOTYPES
250 GL_APICALL void GL_APIENTRY glBindUniformLocationCHROMIUM(
251 GLuint program, GLint location, const char* name);
252 #endif
253 typedef void (GL_APIENTRYP PFNGLBINDUNIFORMLOCATIONCHROMIUMPROC) (
254 GLuint program, GLint location, const char* name);
255 #endif /* GL_CHROMIUM_bind_uniform_location */
257 /* GL_CHROMIUM_command_buffer_query */
258 #ifndef GL_CHROMIUM_command_buffer_query
259 #define GL_CHROMIUM_command_buffer_query 1
261 #ifndef GL_COMMANDS_ISSUED_CHROMIUM
262 // TODO(gman): Get official numbers for this constants.
263 #define GL_COMMANDS_ISSUED_CHROMIUM 0x6004
264 #endif
265 #endif /* GL_CHROMIUM_command_buffer_query */
267 /* GL_CHROMIUM_framebuffer_multisample */
268 #ifndef GL_CHROMIUM_framebuffer_multisample
269 #define GL_CHROMIUM_framebuffer_multisample 1
271 #ifdef GL_GLEXT_PROTOTYPES
272 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleCHROMIUM (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
273 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);
274 #endif
275 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLECHROMIUMPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
276 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);
278 #ifndef GL_FRAMEBUFFER_BINDING_EXT
279 #define GL_FRAMEBUFFER_BINDING_EXT GL_FRAMEBUFFER_BINDING
280 #endif
282 #ifndef GL_DRAW_FRAMEBUFFER_BINDING_EXT
283 #define GL_DRAW_FRAMEBUFFER_BINDING_EXT GL_DRAW_FRAMEBUFFER_BINDING
284 #endif
286 #ifndef GL_RENDERBUFFER_BINDING_EXT
287 #define GL_RENDERBUFFER_BINDING_EXT GL_RENDERBUFFER_BINDING
288 #endif
290 #ifndef GL_RENDERBUFFER_SAMPLES
291 #define GL_RENDERBUFFER_SAMPLES 0x8CAB
292 #endif
294 #ifndef GL_READ_FRAMEBUFFER_EXT
295 #define GL_READ_FRAMEBUFFER_EXT GL_READ_FRAMEBUFFER
296 #endif
298 #ifndef GL_RENDERBUFFER_SAMPLES_EXT
299 #define GL_RENDERBUFFER_SAMPLES_EXT GL_RENDERBUFFER_SAMPLES
300 #endif
302 #ifndef GL_RENDERBUFFER_BINDING
303 #define GL_RENDERBUFFER_BINDING 0x8CA7
304 #endif
306 #ifndef GL_READ_FRAMEBUFFER_BINDING
307 #define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
308 #endif
310 #ifndef GL_MAX_SAMPLES
311 #define GL_MAX_SAMPLES 0x8D57
312 #endif
314 #ifndef GL_READ_FRAMEBUFFER_BINDING_EXT
315 #define GL_READ_FRAMEBUFFER_BINDING_EXT GL_READ_FRAMEBUFFER_BINDING
316 #endif
318 #ifndef GL_DRAW_FRAMEBUFFER_BINDING
319 #define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
320 #endif
322 #ifndef GL_MAX_SAMPLES_EXT
323 #define GL_MAX_SAMPLES_EXT GL_MAX_SAMPLES
324 #endif
326 #ifndef GL_DRAW_FRAMEBUFFER
327 #define GL_DRAW_FRAMEBUFFER 0x8CA9
328 #endif
330 #ifndef GL_READ_FRAMEBUFFER
331 #define GL_READ_FRAMEBUFFER 0x8CA8
332 #endif
334 #ifndef GL_DRAW_FRAMEBUFFER_EXT
335 #define GL_DRAW_FRAMEBUFFER_EXT GL_DRAW_FRAMEBUFFER
336 #endif
338 #ifndef GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE
339 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
340 #endif
342 #ifndef GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT
343 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE // NOLINT
344 #endif
346 #ifndef GL_FRAMEBUFFER_BINDING
347 #define GL_FRAMEBUFFER_BINDING 0x8CA6
348 #endif
349 #endif /* GL_CHROMIUM_framebuffer_multisample */
351 /* GL_CHROMIUM_texture_compression_dxt3 */
352 #ifndef GL_CHROMIUM_texture_compression_dxt3
353 #define GL_CHROMIUM_texture_compression_dxt3 1
355 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
356 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
357 #endif
358 #endif /* GL_CHROMIUM_texture_compression_dxt3 */
360 /* GL_CHROMIUM_texture_compression_dxt5 */
361 #ifndef GL_CHROMIUM_texture_compression_dxt5
362 #define GL_CHROMIUM_texture_compression_dxt5 1
364 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
365 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
366 #endif
367 #endif /* GL_CHROMIUM_texture_compression_dxt5 */
369 /* GL_CHROMIUM_async_pixel_transfers */
370 #ifndef GL_CHROMIUM_async_pixel_transfers
371 #define GL_CHROMIUM_async_pixel_transfers 1
373 #ifndef GL_ASYNC_PIXEL_UNPACK_COMPLETED_CHROMIUM
374 #define GL_ASYNC_PIXEL_UNPACK_COMPLETED_CHROMIUM 0x6005
375 #endif
376 #ifndef GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM
377 #define GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM 0x6006
378 #endif
379 #endif /* GL_CHROMIUM_async_pixel_transfers */
381 #ifndef GL_BIND_GENERATES_RESOURCE_CHROMIUM
382 #define GL_BIND_GENERATES_RESOURCE_CHROMIUM 0x9244
383 #endif
385 /* GL_CHROMIUM_copy_texture */
386 #ifndef GL_CHROMIUM_copy_texture
387 #define GL_CHROMIUM_copy_texture 1
389 #ifndef GL_UNPACK_COLORSPACE_CONVERSION_CHROMIUM
390 #define GL_UNPACK_COLORSPACE_CONVERSION_CHROMIUM 0x9243
391 #endif
393 #ifndef GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM
394 #define GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM 0x9242
395 #endif
397 #ifndef GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM
398 #define GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM 0x9241
399 #endif
400 #ifdef GL_GLEXT_PROTOTYPES
401 GL_APICALL void GL_APIENTRY glCopyTextureCHROMIUM(GLenum target,
402 GLenum source_id,
403 GLenum dest_id,
404 GLint internalformat,
405 GLenum dest_type);
407 GL_APICALL void GL_APIENTRY glCopySubTextureCHROMIUM(GLenum target,
408 GLenum source_id,
409 GLenum dest_id,
410 GLint xoffset,
411 GLint yoffset,
412 GLint x,
413 GLint y,
414 GLsizei width,
415 GLsizei height);
416 #endif
417 typedef void(GL_APIENTRYP PFNGLCOPYTEXTURECHROMIUMPROC)(GLenum target,
418 GLenum source_id,
419 GLenum dest_id,
420 GLint internalformat,
421 GLenum dest_type);
423 typedef void(GL_APIENTRYP PFNGLCOPYSUBTEXTURECHROMIUMPROC)(GLenum target,
424 GLenum source_id,
425 GLenum dest_id,
426 GLint xoffset,
427 GLint yoffset,
428 GLint x,
429 GLint y,
430 GLsizei width,
431 GLsizei height);
432 #endif /* GL_CHROMIUM_copy_texture */
434 /* GL_CHROMIUM_lose_context */
435 #ifndef GL_CHROMIUM_lose_context
436 #define GL_CHROMIUM_lose_context 1
437 #ifdef GL_GLEXT_PROTOTYPES
438 GL_APICALL void GL_APIENTRY glLoseContextCHROMIUM(GLenum current, GLenum other);
439 #endif
440 typedef void (GL_APIENTRYP PFNGLLOSECONTEXTCHROMIUMPROC) (
441 GLenum current, GLenum other);
442 #endif /* GL_CHROMIUM_lose_context */
444 /* GL_CHROMIUM_flipy */
445 #ifndef GL_CHROMIUM_flipy
446 #define GL_CHROMIUM_flipy 1
448 #ifndef GL_UNPACK_FLIP_Y_CHROMIUM
449 #define GL_UNPACK_FLIP_Y_CHROMIUM 0x9240
450 #endif
451 #endif /* GL_CHROMIUM_flipy */
453 /* GL_ARB_texture_rectangle */
454 #ifndef GL_ARB_texture_rectangle
455 #define GL_ARB_texture_rectangle 1
457 #ifndef GL_SAMPLER_2D_RECT_ARB
458 #define GL_SAMPLER_2D_RECT_ARB 0x8B63
459 #endif
461 #ifndef GL_TEXTURE_BINDING_RECTANGLE_ARB
462 #define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6
463 #endif
465 #ifndef GL_TEXTURE_RECTANGLE_ARB
466 #define GL_TEXTURE_RECTANGLE_ARB 0x84F5
467 #endif
468 #endif /* GL_ARB_texture_rectangle */
470 /* GL_CHROMIUM_enable_feature */
471 #ifndef GL_CHROMIUM_enable_feature
472 #define GL_CHROMIUM_enable_feature 1
473 #ifdef GL_GLEXT_PROTOTYPES
474 GL_APICALL GLboolean GL_APIENTRY glEnableFeatureCHROMIUM(const char* feature);
475 #endif
476 typedef GLboolean (GL_APIENTRYP PFNGLENABLEFEATURECHROMIUMPROC) (
477 const char* feature);
478 #endif /* GL_CHROMIUM_enable_feature */
480 /* GL_CHROMIUM_command_buffer_latency_query */
481 #ifndef GL_CHROMIUM_command_buffer_latency_query
482 #define GL_CHROMIUM_command_buffer_latency_query 1
484 #ifndef GL_LATENCY_QUERY_CHROMIUM
485 // TODO(gman): Get official numbers for these constants.
486 #define GL_LATENCY_QUERY_CHROMIUM 0x6007
487 #endif
488 #endif /* GL_CHROMIUM_command_buffer_latency_query */
490 /* GL_ARB_robustness */
491 #ifndef GL_ARB_robustness
492 #define GL_ARB_robustness 1
494 #ifndef GL_GUILTY_CONTEXT_RESET_ARB
495 #define GL_GUILTY_CONTEXT_RESET_ARB 0x8253
496 #endif
498 #ifndef GL_UNKNOWN_CONTEXT_RESET_ARB
499 #define GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255
500 #endif
502 #ifndef GL_INNOCENT_CONTEXT_RESET_ARB
503 #define GL_INNOCENT_CONTEXT_RESET_ARB 0x8254
504 #endif
505 #endif /* GL_ARB_robustness */
507 /* GL_EXT_framebuffer_blit */
508 #ifndef GL_EXT_framebuffer_blit
509 #define GL_EXT_framebuffer_blit 1
510 #ifdef GL_GLEXT_PROTOTYPES
511 GL_APICALL void GL_APIENTRY glBlitFramebufferEXT(
512 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0,
513 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
514 #endif
515 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFEREXTPROC) (
516 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0,
517 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
518 #endif /* GL_EXT_framebuffer_blit */
520 /* GL_EXT_draw_buffers */
521 #ifndef GL_EXT_draw_buffers
522 #define GL_EXT_draw_buffers 1
524 #ifdef GL_GLEXT_PROTOTYPES
525 GL_APICALL void GL_APIENTRY glDrawBuffersEXT(
526 GLsizei n, const GLenum* bufs);
527 #endif
528 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSEXTPROC) (
529 GLsizei n, const GLenum* bufs);
531 #ifndef GL_COLOR_ATTACHMENT0_EXT
532 #define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
533 #endif
534 #ifndef GL_COLOR_ATTACHMENT1_EXT
535 #define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
536 #endif
537 #ifndef GL_COLOR_ATTACHMENT2_EXT
538 #define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
539 #endif
540 #ifndef GL_COLOR_ATTACHMENT3_EXT
541 #define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
542 #endif
543 #ifndef GL_COLOR_ATTACHMENT4_EXT
544 #define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
545 #endif
546 #ifndef GL_COLOR_ATTACHMENT5_EXT
547 #define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
548 #endif
549 #ifndef GL_COLOR_ATTACHMENT6_EXT
550 #define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
551 #endif
552 #ifndef GL_COLOR_ATTACHMENT7_EXT
553 #define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
554 #endif
555 #ifndef GL_COLOR_ATTACHMENT8_EXT
556 #define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
557 #endif
558 #ifndef GL_COLOR_ATTACHMENT9_EXT
559 #define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
560 #endif
561 #ifndef GL_COLOR_ATTACHMENT10_EXT
562 #define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
563 #endif
564 #ifndef GL_COLOR_ATTACHMENT11_EXT
565 #define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
566 #endif
567 #ifndef GL_COLOR_ATTACHMENT12_EXT
568 #define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
569 #endif
570 #ifndef GL_COLOR_ATTACHMENT13_EXT
571 #define GL_COLOR_ATTACHMENT13_EXT 0x8CED
572 #endif
573 #ifndef GL_COLOR_ATTACHMENT14_EXT
574 #define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
575 #endif
576 #ifndef GL_COLOR_ATTACHMENT15_EXT
577 #define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
578 #endif
580 #ifndef GL_DRAW_BUFFER0_EXT
581 #define GL_DRAW_BUFFER0_EXT 0x8825
582 #endif
583 #ifndef GL_DRAW_BUFFER1_EXT
584 #define GL_DRAW_BUFFER1_EXT 0x8826
585 #endif
586 #ifndef GL_DRAW_BUFFER2_EXT
587 #define GL_DRAW_BUFFER2_EXT 0x8827
588 #endif
589 #ifndef GL_DRAW_BUFFER3_EXT
590 #define GL_DRAW_BUFFER3_EXT 0x8828
591 #endif
592 #ifndef GL_DRAW_BUFFER4_EXT
593 #define GL_DRAW_BUFFER4_EXT 0x8829
594 #endif
595 #ifndef GL_DRAW_BUFFER5_EXT
596 #define GL_DRAW_BUFFER5_EXT 0x882A
597 #endif
598 #ifndef GL_DRAW_BUFFER6_EXT
599 #define GL_DRAW_BUFFER6_EXT 0x882B
600 #endif
601 #ifndef GL_DRAW_BUFFER7_EXT
602 #define GL_DRAW_BUFFER7_EXT 0x882C
603 #endif
604 #ifndef GL_DRAW_BUFFER8_EXT
605 #define GL_DRAW_BUFFER8_EXT 0x882D
606 #endif
607 #ifndef GL_DRAW_BUFFER9_EXT
608 #define GL_DRAW_BUFFER9_EXT 0x882E
609 #endif
610 #ifndef GL_DRAW_BUFFER10_EXT
611 #define GL_DRAW_BUFFER10_EXT 0x882F
612 #endif
613 #ifndef GL_DRAW_BUFFER11_EXT
614 #define GL_DRAW_BUFFER11_EXT 0x8830
615 #endif
616 #ifndef GL_DRAW_BUFFER12_EXT
617 #define GL_DRAW_BUFFER12_EXT 0x8831
618 #endif
619 #ifndef GL_DRAW_BUFFER13_EXT
620 #define GL_DRAW_BUFFER13_EXT 0x8832
621 #endif
622 #ifndef GL_DRAW_BUFFER14_EXT
623 #define GL_DRAW_BUFFER14_EXT 0x8833
624 #endif
625 #ifndef GL_DRAW_BUFFER15_EXT
626 #define GL_DRAW_BUFFER15_EXT 0x8834
627 #endif
629 #ifndef GL_MAX_COLOR_ATTACHMENTS_EXT
630 #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
631 #endif
633 #ifndef GL_MAX_DRAW_BUFFERS_EXT
634 #define GL_MAX_DRAW_BUFFERS_EXT 0x8824
635 #endif
637 #endif /* GL_EXT_draw_buffers */
639 /* GL_CHROMIUM_resize */
640 #ifndef GL_CHROMIUM_resize
641 #define GL_CHROMIUM_resize 1
642 #ifdef GL_GLEXT_PROTOTYPES
643 GL_APICALL void GL_APIENTRY glResizeCHROMIUM(
644 GLuint width, GLuint height, GLfloat scale_factor);
645 #endif
646 typedef void (GL_APIENTRYP PFNGLRESIZECHROMIUMPROC) (
647 GLuint width, GLuint height);
648 #endif /* GL_CHROMIUM_resize */
650 /* GL_CHROMIUM_get_multiple */
651 #ifndef GL_CHROMIUM_get_multiple
652 #define GL_CHROMIUM_get_multiple 1
653 #ifdef GL_GLEXT_PROTOTYPES
654 GL_APICALL void GL_APIENTRY glGetProgramInfoCHROMIUM(
655 GLuint program, GLsizei bufsize, GLsizei* size, void* info);
656 #endif
657 typedef void (GL_APIENTRYP PFNGLGETPROGRAMINFOCHROMIUMPROC) (
658 GLuint program, GLsizei bufsize, GLsizei* size, void* info);
659 #endif /* GL_CHROMIUM_get_multiple */
661 /* GL_CHROMIUM_sync_point */
662 #ifndef GL_CHROMIUM_sync_point
663 #define GL_CHROMIUM_sync_point 1
664 #ifdef GL_GLEXT_PROTOTYPES
665 GL_APICALL GLuint GL_APIENTRY glInsertSyncPointCHROMIUM();
666 GL_APICALL void GL_APIENTRY glWaitSyncPointCHROMIUM(GLuint sync_point);
667 #endif
668 typedef GLuint (GL_APIENTRYP PFNGLINSERTSYNCPOINTCHROMIUMPROC) ();
669 typedef void (GL_APIENTRYP PFNGLWAITSYNCPOINTCHROMIUMPROC) (GLuint sync_point);
670 #endif /* GL_CHROMIUM_sync_point */
672 #ifndef GL_CHROMIUM_color_buffer_float_rgba
673 #define GL_CHROMIUM_color_buffer_float_rgba 1
674 #ifndef GL_RGBA32F
675 #define GL_RGBA32F 0x8814
676 #endif
677 #endif /* GL_CHROMIUM_color_buffer_float_rgba */
679 #ifndef GL_CHROMIUM_color_buffer_float_rgb
680 #define GL_CHROMIUM_color_buffer_float_rgb 1
681 #ifndef GL_RGB32F
682 #define GL_RGB32F 0x8815
683 #endif
684 #endif /* GL_CHROMIUM_color_buffer_float_rgb */
686 /* GL_CHROMIUM_schedule_overlay_plane */
687 #ifndef GL_CHROMIUM_schedule_overlay_plane
688 #define GL_CHROMIUM_schedule_overlay_plane 1
690 #ifndef GL_OVERLAY_TRANSFORM_NONE_CHROMIUM
691 #define GL_OVERLAY_TRANSFORM_NONE_CHROMIUM 0x9245
692 #endif
694 #ifndef GL_OVERLAY_TRANSFORM_FLIP_HORIZONTAL_CHROMIUM
695 #define GL_OVERLAY_TRANSFORM_FLIP_HORIZONTAL_CHROMIUM 0x9246
696 #endif
698 #ifndef GL_OVERLAY_TRANSFORM_FLIP_VERTICAL_CHROMIUM
699 #define GL_OVERLAY_TRANSFORM_FLIP_VERTICAL_CHROMIUM 0x9247
700 #endif
702 #ifndef GL_OVERLAY_TRANSFORM_ROTATE_90_CHROMIUM
703 #define GL_OVERLAY_TRANSFORM_ROTATE_90_CHROMIUM 0x9248
704 #endif
706 #ifndef GL_OVERLAY_TRANSFORM_ROTATE_180_CHROMIUM
707 #define GL_OVERLAY_TRANSFORM_ROTATE_180_CHROMIUM 0x9249
708 #endif
710 #ifndef GL_OVERLAY_TRANSFORM_ROTATE_270_CHROMIUM
711 #define GL_OVERLAY_TRANSFORM_ROTATE_270_CHROMIUM 0x924A
712 #endif
714 /* GL_CHROMIUM_subscribe_uniform */
715 #ifndef GL_CHROMIUM_subscribe_uniform
716 #define GL_CHROMIUM_subscribe_uniform 1
718 #ifndef GL_SUBSCRIBED_VALUES_BUFFER_CHROMIUM
719 #define GL_SUBSCRIBED_VALUES_BUFFER_CHROMIUM 0x924B
720 #endif
722 #ifndef GL_MOUSE_POSITION_CHROMIUM
723 #define GL_MOUSE_POSITION_CHROMIUM 0x924C
724 #endif
726 #ifdef GL_GLEXT_PROTOTYPES
727 GL_APICALL void GL_APIENTRY
728 glGenValuebuffersCHROMIUM(GLsizei n, GLuint* buffers);
729 GL_APICALL void GL_APIENTRY
730 glDeleteValuebuffersCHROMIUM(GLsizei n, const GLuint* valuebuffers);
731 GL_APICALL GLboolean GL_APIENTRY glIsValuebufferCHROMIUM(GLuint valuebuffer);
732 GL_APICALL void GL_APIENTRY
733 glBindValuebufferCHROMIUM(GLenum target, GLuint valuebuffer);
734 GL_APICALL void GL_APIENTRY
735 glSubscribeValueCHROMIUM(GLenum target, GLenum subscription);
736 GL_APICALL void GL_APIENTRY glPopulateSubscribedValuesCHROMIUM(GLenum target);
737 GL_APICALL void GL_APIENTRY glUniformValuebufferCHROMIUM(GLint location,
738 GLenum target,
739 GLenum subscription);
740 #endif
741 #endif /* GL_CHROMIUM_subscribe_uniform */
743 #ifdef GL_GLEXT_PROTOTYPES
744 GL_APICALL void GL_APIENTRY
745 glScheduleOverlayPlaneCHROMIUM(GLint plane_z_order,
746 GLenum plane_transform,
747 GLuint overlay_texture_id,
748 GLint bounds_x,
749 GLint bounds_y,
750 GLint bounds_width,
751 GLint bounds_height,
752 GLfloat uv_x,
753 GLfloat uv_y,
754 GLfloat uv_width,
755 GLfloat uv_height);
756 #endif
757 typedef void(GL_APIENTRYP PFNGLSCHEDULEOVERLAYPLANECHROMIUMPROC)(
758 GLint plane_z_order,
759 GLenum plane_transform,
760 GLuint overlay_texture_id,
761 GLint bounds_x,
762 GLint bounds_y,
763 GLint bounds_width,
764 GLint bounds_height,
765 GLfloat uv_x,
766 GLfloat uv_y,
767 GLfloat uv_width,
768 GLfloat uv_height);
769 #endif /* GL_CHROMIUM_schedule_overlay_plane */
771 /* GL_CHROMIUM_sync_query */
772 #ifndef GL_CHROMIUM_sync_query
773 #define GL_CHROMIUM_sync_query 1
775 #ifndef GL_COMMANDS_COMPLETED_CHROMIUM
776 #define GL_COMMANDS_COMPLETED_CHROMIUM 0x84F7
777 #endif
778 #endif /* GL_CHROMIUM_sync_query */
780 #ifndef GL_CHROMIUM_path_rendering
781 #define GL_CHROMIUM_path_rendering 1
783 #ifdef GL_GLEXT_PROTOTYPES
784 GL_APICALL void GL_APIENTRY
785 glMatrixLoadfCHROMIUM(GLenum mode, const GLfloat* m);
786 GL_APICALL void GL_APIENTRY glMatrixLoadIdentityCHROMIUM(GLenum mode);
787 #endif
789 typedef void(GL_APIENTRYP PFNGLMATRIXLOADFCHROMIUMPROC)(GLenum matrixMode,
790 const GLfloat* m);
791 typedef void(GL_APIENTRYP PFNGLMATRIXLOADIDENTITYCHROMIUMPROC)(
792 GLenum matrixMode);
794 #endif /* GL_CHROMIUM_path_rendering */
796 #ifdef __cplusplus
798 #endif
800 #endif // GPU_GLES2_GL2EXTCHROMIUM_H_