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. 4 5 // This file contains Chromium-specific GLES2 extensions declarations. 6 7 #ifndef GPU_GLES2_GL2EXTCHROMIUM_H_ 8 #define GPU_GLES2_GL2EXTCHROMIUM_H_ 9 10 #include <GLES2/gl2.h> 11 #include <GLES2/gl2ext.h> 12 13 #ifdef __cplusplus 14 extern "C" { 15 #endif 16 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 */ 29 30 /* GL_CHROMIUM_gpu_memory_manager */ 31 #ifndef GL_CHROMIUM_gpu_memory_manager 32 #define GL_CHROMIUM_gpu_memory_manager 1 33 34 #ifndef GL_TEXTURE_POOL_UNMANAGED_CHROMIUM 35 #define GL_TEXTURE_POOL_UNMANAGED_CHROMIUM 0x6002 36 #endif 37 38 #ifndef GL_TEXTURE_POOL_CHROMIUM 39 #define GL_TEXTURE_POOL_CHROMIUM 0x6000 40 #endif 41 42 #ifndef GL_TEXTURE_POOL_MANAGED_CHROMIUM 43 #define GL_TEXTURE_POOL_MANAGED_CHROMIUM 0x6001 44 #endif 45 #endif /* GL_CHROMIUM_gpu_memory_manager */ 46 47 /* GL_CHROMIUM_texture_mailbox */ 48 #ifndef GL_CHROMIUM_texture_mailbox 49 #define GL_CHROMIUM_texture_mailbox 1 50 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 glConsumeTextureCHROMIUM( 59 GLenum target, const GLbyte* mailbox); 60 #endif 61 typedef void (GL_APIENTRYP PFNGLGENMAILBOXCHROMIUMPROC) (GLbyte* mailbox); 62 typedef void (GL_APIENTRYP PFNGLPRODUCETEXTURECHROMIUMPROC) ( 63 GLenum target, const GLbyte* mailbox); 64 typedef void (GL_APIENTRYP PFNGLCONSUMETEXTURECHROMIUMPROC) ( 65 GLenum target, const GLbyte* mailbox); 66 #endif /* GL_CHROMIUM_texture_mailbox */ 67 68 /* GL_CHROMIUM_pixel_transfer_buffer_object */ 69 #ifndef GL_CHROMIUM_pixel_transfer_buffer_object 70 #define GL_CHROMIUM_pixel_transfer_buffer_object 1 71 72 #ifndef GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM 73 // TODO(reveman): Get official numbers for this constants. 74 #define GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM 0x78EC 75 #define GL_PIXEL_PACK_TRANSFER_BUFFER_CHROMIUM 0x78ED 76 77 #ifdef GL_GLEXT_PROTOTYPES 78 GL_APICALL void* GL_APIENTRY glMapBufferCHROMIUM(GLuint target,GLenum access); 79 GL_APICALL GLboolean GL_APIENTRY glUnmapBufferCHROMIUM(GLuint target); 80 #endif 81 typedef void* (GL_APIENTRY PFNGLMAPBUFFERCHROMIUM) ( 82 GLuint target,GLenum access); 83 typedef GLboolean (GL_APIENTRY PFNGLUNMAPBUFFERCHROMIUM) (GLuint target); 84 #endif /* GL_CHROMIUM_pixel_transfer_buffer_object */ 85 86 #ifndef GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM 87 // TODO(reveman): Get official numbers for this constants. 88 #define GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM 0x78EF 89 #define GL_PIXEL_PACK_TRANSFER_BUFFER_BINDING_CHROMIUM 0x78EE 90 #endif 91 92 #ifndef GL_STREAM_READ 93 #define GL_STREAM_READ 0x88E1 94 #endif 95 #endif /* GL_CHROMIUM_pixel_transfer_buffer_object */ 96 97 /* GL_CHROMIUM_map_image */ 98 #ifndef GL_CHROMIUM_map_image 99 #define GL_CHROMIUM_map_image 1 100 101 #ifndef GL_IMAGE_ROWBYTES_CHROMIUM 102 #define GL_IMAGE_ROWBYTES_CHROMIUM 0x78F0 103 #endif 104 105 #ifndef GL_READ_WRITE 106 #define GL_READ_WRITE 0x88BA 107 #endif 108 109 #ifdef GL_GLEXT_PROTOTYPES 110 GL_APICALL GLuint GL_APIENTRY glCreateImageCHROMIUM( 111 GLsizei width, GLsizei height, GLenum internalformat); 112 GL_APICALL void GL_APIENTRY glDestroyImageCHROMIUM(GLuint image_id); 113 GL_APICALL void GL_APIENTRY glGetImageParameterivCHROMIUM( 114 GLuint image_id, GLenum pname, GLint* params); 115 GL_APICALL void* GL_APIENTRY glMapImageCHROMIUM(GLuint image_id, GLenum access); 116 GL_APICALL void GL_APIENTRY glUnmapImageCHROMIUM(GLuint image_id); 117 #endif 118 typedef GLuint (GL_APIENTRYP PFNGLCREATEIMAGECHROMIUMPROC) ( 119 GLsizei width, GLsizei height, GLenum internalformat); 120 typedef void ( 121 GL_APIENTRYP PFNGLDESTROYIMAGECHROMIUMPROC) (GLuint image_id); 122 typedef void ( 123 GL_APIENTRYP PFNGLGETIMAGEPARAMETERIVCHROMIUMPROC) ( 124 GLuint image_id, GLenum pname, GLint* params); 125 typedef void* (GL_APIENTRYP PFNGLMAPIMAGECHROMIUMPROC) ( 126 GLuint image_id, GLenum access); 127 typedef void (GL_APIENTRYP PFNGLUNMAPIMAGECHROMIUMPROC) (GLuint image_id); 128 #endif /* GL_CHROMIUM_map_image */ 129 130 /* GL_CHROMIUM_map_sub */ 131 #ifndef GL_CHROMIUM_map_sub 132 #define GL_CHROMIUM_map_sub 1 133 134 #ifndef GL_READ_ONLY 135 #define GL_READ_ONLY 0x88B8 136 #endif 137 138 #ifndef GL_WRITE_ONLY 139 #define GL_WRITE_ONLY 0x88B9 140 #endif 141 #ifdef GL_GLEXT_PROTOTYPES 142 GL_APICALL void* GL_APIENTRY glMapBufferSubDataCHROMIUM( 143 GLuint target, GLintptr offset, GLsizeiptr size, GLenum access); 144 GL_APICALL void GL_APIENTRY glUnmapBufferSubDataCHROMIUM(const void* mem); 145 GL_APICALL void* GL_APIENTRY glMapTexSubImage2DCHROMIUM( 146 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, 147 GLsizei height, GLenum format, GLenum type, GLenum access); 148 GL_APICALL void GL_APIENTRY glUnmapTexSubImage2DCHROMIUM(const void* mem); 149 #endif 150 typedef void* (GL_APIENTRYP PFNGLMAPBUFFERSUBDATACHROMIUMPROC) ( 151 GLuint target, GLintptr offset, GLsizeiptr size, GLenum access); 152 typedef void ( 153 GL_APIENTRYP PFNGLUNMAPBUFFERSUBDATACHROMIUMPROC) (const void* mem); 154 typedef void* (GL_APIENTRYP PFNGLMAPTEXSUBIMAGE2DCHROMIUMPROC) ( 155 GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, 156 GLsizei height, GLenum format, GLenum type, GLenum access); 157 typedef void ( 158 GL_APIENTRYP PFNGLUNMAPTEXSUBIMAGE2DCHROMIUMPROC) (const void* mem); 159 #endif /* GL_CHROMIUM_map_sub */ 160 161 /* GL_CHROMIUM_request_extension */ 162 #ifndef GL_CHROMIUM_request_extension 163 #define GL_CHROMIUM_request_extension 1 164 #ifdef GL_GLEXT_PROTOTYPES 165 GL_APICALL const GLchar* GL_APIENTRY glGetRequestableExtensionsCHROMIUM(); 166 GL_APICALL void GL_APIENTRY glRequestExtensionCHROMIUM(const char* extension); 167 #endif 168 typedef const GLchar* (GL_APIENTRYP PFNGLGETREQUESTABLEEXTENSIONSCHROMIUMPROC) ( 169 ); 170 typedef void (GL_APIENTRYP PFNGLREQUESTEXTENSIONCHROMIUMPROC) ( 171 const char* extension); 172 #endif /* GL_CHROMIUM_request_extension */ 173 174 /* GL_CHROMIUM_get_error_query */ 175 #ifndef GL_CHROMIUM_get_error_query 176 #define GL_CHROMIUM_get_error_query 1 177 178 #ifndef GL_GET_ERROR_QUERY_CHROMIUM 179 // TODO(gman): Get official numbers for this constants. 180 #define GL_GET_ERROR_QUERY_CHROMIUM 0x84F3 181 #endif 182 #endif /* GL_CHROMIUM_get_error_query */ 183 184 /* GL_CHROMIUM_texture_from_image */ 185 #ifndef GL_CHROMIUM_texture_from_image 186 #define GL_CHROMIUM_texture_from_image 1 187 #ifdef GL_GLEXT_PROTOTYPES 188 GL_APICALL void GL_APIENTRY glBindTexImage2DCHROMIUM( 189 GLenum target, GLint imageId); 190 GL_APICALL void GL_APIENTRY glReleaseTexImage2DCHROMIUM( 191 GLenum target, GLint imageId); 192 #endif 193 typedef void (GL_APIENTRYP PFNGLBINDTEXIMAGE2DCHROMIUMPROC) ( 194 GLenum target, GLint imageId); 195 typedef void (GL_APIENTRYP PFNGLRELEASETEXIMAGE2DCHROMIUMPROC) ( 196 GLenum target, GLint imageId); 197 #endif /* GL_CHROMIUM_texture_from_image */ 198 199 /* GL_CHROMIUM_rate_limit_offscreen_context */ 200 #ifndef GL_CHROMIUM_rate_limit_offscreen_context 201 #define GL_CHROMIUM_rate_limit_offscreen_context 1 202 #ifdef GL_GLEXT_PROTOTYPES 203 GL_APICALL void GL_APIENTRY glRateLimitOffscreenContextCHROMIUM(); 204 #endif 205 typedef void (GL_APIENTRYP PFNGLRATELIMITOFFSCREENCONTEXTCHROMIUMPROC) (); 206 #endif /* GL_CHROMIUM_rate_limit_offscreen_context */ 207 208 /* GL_CHROMIUM_post_sub_buffer */ 209 #ifndef GL_CHROMIUM_post_sub_buffer 210 #define GL_CHROMIUM_post_sub_buffer 1 211 #ifdef GL_GLEXT_PROTOTYPES 212 GL_APICALL void GL_APIENTRY glPostSubBufferCHROMIUM( 213 GLint x, GLint y, GLint width, GLint height); 214 #endif 215 typedef void (GL_APIENTRYP PFNGLPOSTSUBBUFFERCHROMIUMPROC) ( 216 GLint x, GLint y, GLint width, GLint height); 217 #endif /* GL_CHROMIUM_post_sub_buffer */ 218 219 /* GL_CHROMIUM_bind_uniform_location */ 220 #ifndef GL_CHROMIUM_bind_uniform_location 221 #define GL_CHROMIUM_bind_uniform_location 1 222 #ifdef GL_GLEXT_PROTOTYPES 223 GL_APICALL void GL_APIENTRY glBindUniformLocationCHROMIUM( 224 GLuint program, GLint location, const char* name); 225 #endif 226 typedef void (GL_APIENTRYP PFNGLBINDUNIFORMLOCATIONCHROMIUMPROC) ( 227 GLuint program, GLint location, const char* name); 228 #endif /* GL_CHROMIUM_bind_uniform_location */ 229 230 /* GL_CHROMIUM_command_buffer_query */ 231 #ifndef GL_CHROMIUM_command_buffer_query 232 #define GL_CHROMIUM_command_buffer_query 1 233 234 #ifndef GL_COMMANDS_ISSUED_CHROMIUM 235 // TODO(gman): Get official numbers for this constants. 236 #define GL_COMMANDS_ISSUED_CHROMIUM 0x84F2 237 #endif 238 #endif /* GL_CHROMIUM_command_buffer_query */ 239 240 /* GL_CHROMIUM_framebuffer_multisample */ 241 #ifndef GL_CHROMIUM_framebuffer_multisample 242 #define GL_CHROMIUM_framebuffer_multisample 1 243 244 #ifdef GL_GLEXT_PROTOTYPES 245 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleCHROMIUM (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 246 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); 247 #endif 248 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLECHROMIUMPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 249 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); 250 251 #ifndef GL_FRAMEBUFFER_BINDING_EXT 252 #define GL_FRAMEBUFFER_BINDING_EXT GL_FRAMEBUFFER_BINDING 253 #endif 254 255 #ifndef GL_DRAW_FRAMEBUFFER_BINDING_EXT 256 #define GL_DRAW_FRAMEBUFFER_BINDING_EXT GL_DRAW_FRAMEBUFFER_BINDING 257 #endif 258 259 #ifndef GL_RENDERBUFFER_BINDING_EXT 260 #define GL_RENDERBUFFER_BINDING_EXT GL_RENDERBUFFER_BINDING 261 #endif 262 263 #ifndef GL_RENDERBUFFER_SAMPLES 264 #define GL_RENDERBUFFER_SAMPLES 0x8CAB 265 #endif 266 267 #ifndef GL_READ_FRAMEBUFFER_EXT 268 #define GL_READ_FRAMEBUFFER_EXT GL_READ_FRAMEBUFFER 269 #endif 270 271 #ifndef GL_RENDERBUFFER_SAMPLES_EXT 272 #define GL_RENDERBUFFER_SAMPLES_EXT GL_RENDERBUFFER_SAMPLES 273 #endif 274 275 #ifndef GL_RENDERBUFFER_BINDING 276 #define GL_RENDERBUFFER_BINDING 0x8CA7 277 #endif 278 279 #ifndef GL_READ_FRAMEBUFFER_BINDING 280 #define GL_READ_FRAMEBUFFER_BINDING 0x8CAA 281 #endif 282 283 #ifndef GL_MAX_SAMPLES 284 #define GL_MAX_SAMPLES 0x8D57 285 #endif 286 287 #ifndef GL_READ_FRAMEBUFFER_BINDING_EXT 288 #define GL_READ_FRAMEBUFFER_BINDING_EXT GL_READ_FRAMEBUFFER_BINDING 289 #endif 290 291 #ifndef GL_DRAW_FRAMEBUFFER_BINDING 292 #define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6 293 #endif 294 295 #ifndef GL_MAX_SAMPLES_EXT 296 #define GL_MAX_SAMPLES_EXT GL_MAX_SAMPLES 297 #endif 298 299 #ifndef GL_DRAW_FRAMEBUFFER 300 #define GL_DRAW_FRAMEBUFFER 0x8CA9 301 #endif 302 303 #ifndef GL_READ_FRAMEBUFFER 304 #define GL_READ_FRAMEBUFFER 0x8CA8 305 #endif 306 307 #ifndef GL_DRAW_FRAMEBUFFER_EXT 308 #define GL_DRAW_FRAMEBUFFER_EXT GL_DRAW_FRAMEBUFFER 309 #endif 310 311 #ifndef GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 312 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56 313 #endif 314 315 #ifndef GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 316 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE // NOLINT 317 #endif 318 319 #ifndef GL_FRAMEBUFFER_BINDING 320 #define GL_FRAMEBUFFER_BINDING 0x8CA6 321 #endif 322 #endif /* GL_CHROMIUM_framebuffer_multisample */ 323 324 /* GL_CHROMIUM_texture_compression_dxt3 */ 325 #ifndef GL_CHROMIUM_texture_compression_dxt3 326 #define GL_CHROMIUM_texture_compression_dxt3 1 327 328 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 329 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2 330 #endif 331 #endif /* GL_CHROMIUM_texture_compression_dxt3 */ 332 333 /* GL_CHROMIUM_texture_compression_dxt5 */ 334 #ifndef GL_CHROMIUM_texture_compression_dxt5 335 #define GL_CHROMIUM_texture_compression_dxt5 1 336 337 #ifndef GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 338 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3 339 #endif 340 #endif /* GL_CHROMIUM_texture_compression_dxt5 */ 341 342 /* GL_CHROMIUM_async_pixel_transfers */ 343 #ifndef GL_CHROMIUM_async_pixel_transfers 344 #define GL_CHROMIUM_async_pixel_transfers 1 345 346 #ifndef GL_ASYNC_PIXEL_UNPACK_COMPLETED_CHROMIUM 347 #define GL_ASYNC_PIXEL_UNPACK_COMPLETED_CHROMIUM 0x84F5 348 #endif 349 #ifndef GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM 350 #define GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM 0x84F6 351 #endif 352 #endif /* GL_CHROMIUM_async_pixel_transfers */ 353 354 /* GL_CHROMIUM_copy_texture */ 355 #ifndef GL_CHROMIUM_copy_texture 356 #define GL_CHROMIUM_copy_texture 1 357 358 #ifndef GL_UNPACK_COLORSPACE_CONVERSION_CHROMIUM 359 #define GL_UNPACK_COLORSPACE_CONVERSION_CHROMIUM 0x9243 360 #endif 361 362 #ifndef GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM 363 #define GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM 0x9242 364 #endif 365 366 #ifndef GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM 367 #define GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM 0x9241 368 #endif 369 #ifdef GL_GLEXT_PROTOTYPES 370 GL_APICALL void GL_APIENTRY glCopyTextureCHROMIUM( 371 GLenum target, GLenum source_id, GLenum dest_id, GLint level, 372 GLint internalformat, GLenum dest_type); 373 #endif 374 typedef void (GL_APIENTRYP PFNGLCOPYTEXTURECHROMIUMPROC) ( 375 GLenum target, GLenum source_id, GLenum dest_id, GLint level, 376 GLint internalformat, GLenum dest_type); 377 #endif /* GL_CHROMIUM_copy_texture */ 378 379 /* GL_CHROMIUM_lose_context */ 380 #ifndef GL_CHROMIUM_lose_context 381 #define GL_CHROMIUM_lose_context 1 382 #ifdef GL_GLEXT_PROTOTYPES 383 GL_APICALL void GL_APIENTRY glLoseContextCHROMIUM(GLenum current, GLenum other); 384 #endif 385 typedef void (GL_APIENTRYP PFNGLLOSECONTEXTCHROMIUMPROC) ( 386 GLenum current, GLenum other); 387 #endif /* GL_CHROMIUM_lose_context */ 388 389 /* GL_CHROMIUM_flipy */ 390 #ifndef GL_CHROMIUM_flipy 391 #define GL_CHROMIUM_flipy 1 392 393 #ifndef GL_UNPACK_FLIP_Y_CHROMIUM 394 #define GL_UNPACK_FLIP_Y_CHROMIUM 0x9240 395 #endif 396 #endif /* GL_CHROMIUM_flipy */ 397 398 /* GL_ARB_texture_rectangle */ 399 #ifndef GL_ARB_texture_rectangle 400 #define GL_ARB_texture_rectangle 1 401 402 #ifndef GL_SAMPLER_2D_RECT_ARB 403 #define GL_SAMPLER_2D_RECT_ARB 0x8B63 404 #endif 405 406 #ifndef GL_TEXTURE_BINDING_RECTANGLE_ARB 407 #define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6 408 #endif 409 410 #ifndef GL_TEXTURE_RECTANGLE_ARB 411 #define GL_TEXTURE_RECTANGLE_ARB 0x84F5 412 #endif 413 #endif /* GL_ARB_texture_rectangle */ 414 415 /* GL_CHROMIUM_enable_feature */ 416 #ifndef GL_CHROMIUM_enable_feature 417 #define GL_CHROMIUM_enable_feature 1 418 #ifdef GL_GLEXT_PROTOTYPES 419 GL_APICALL GLboolean GL_APIENTRY glEnableFeatureCHROMIUM(const char* feature); 420 #endif 421 typedef GLboolean (GL_APIENTRYP PFNGLENABLEFEATURECHROMIUMPROC) ( 422 const char* feature); 423 #endif /* GL_CHROMIUM_enable_feature */ 424 425 /* GL_CHROMIUM_command_buffer_latency_query */ 426 #ifndef GL_CHROMIUM_command_buffer_latency_query 427 #define GL_CHROMIUM_command_buffer_latency_query 1 428 429 #ifndef GL_LATENCY_QUERY_CHROMIUM 430 // TODO(gman): Get official numbers for these constants. 431 #define GL_LATENCY_QUERY_CHROMIUM 0x84F4 432 #endif 433 #endif /* GL_CHROMIUM_command_buffer_latency_query */ 434 435 /* GL_ARB_robustness */ 436 #ifndef GL_ARB_robustness 437 #define GL_ARB_robustness 1 438 439 #ifndef GL_GUILTY_CONTEXT_RESET_ARB 440 #define GL_GUILTY_CONTEXT_RESET_ARB 0x8253 441 #endif 442 443 #ifndef GL_UNKNOWN_CONTEXT_RESET_ARB 444 #define GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255 445 #endif 446 447 #ifndef GL_INNOCENT_CONTEXT_RESET_ARB 448 #define GL_INNOCENT_CONTEXT_RESET_ARB 0x8254 449 #endif 450 #endif /* GL_ARB_robustness */ 451 452 /* GL_EXT_framebuffer_blit */ 453 #ifndef GL_EXT_framebuffer_blit 454 #define GL_EXT_framebuffer_blit 1 455 #ifdef GL_GLEXT_PROTOTYPES 456 GL_APICALL void GL_APIENTRY glBlitFramebufferEXT( 457 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, 458 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); 459 #endif 460 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFEREXTPROC) ( 461 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, 462 GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); 463 #endif /* GL_EXT_framebuffer_blit */ 464 465 /* GL_EXT_draw_buffers */ 466 #ifndef GL_EXT_draw_buffers 467 #define GL_EXT_draw_buffers 1 468 469 #ifdef GL_GLEXT_PROTOTYPES 470 GL_APICALL void GL_APIENTRY glDrawBuffersEXT( 471 GLsizei n, const GLenum* bufs); 472 #endif 473 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSEXTPROC) ( 474 GLsizei n, const GLenum* bufs); 475 476 #ifndef GL_COLOR_ATTACHMENT0_EXT 477 #define GL_COLOR_ATTACHMENT0_EXT 0x8CE0 478 #endif 479 #ifndef GL_COLOR_ATTACHMENT1_EXT 480 #define GL_COLOR_ATTACHMENT1_EXT 0x8CE1 481 #endif 482 #ifndef GL_COLOR_ATTACHMENT2_EXT 483 #define GL_COLOR_ATTACHMENT2_EXT 0x8CE2 484 #endif 485 #ifndef GL_COLOR_ATTACHMENT3_EXT 486 #define GL_COLOR_ATTACHMENT3_EXT 0x8CE3 487 #endif 488 #ifndef GL_COLOR_ATTACHMENT4_EXT 489 #define GL_COLOR_ATTACHMENT4_EXT 0x8CE4 490 #endif 491 #ifndef GL_COLOR_ATTACHMENT5_EXT 492 #define GL_COLOR_ATTACHMENT5_EXT 0x8CE5 493 #endif 494 #ifndef GL_COLOR_ATTACHMENT6_EXT 495 #define GL_COLOR_ATTACHMENT6_EXT 0x8CE6 496 #endif 497 #ifndef GL_COLOR_ATTACHMENT7_EXT 498 #define GL_COLOR_ATTACHMENT7_EXT 0x8CE7 499 #endif 500 #ifndef GL_COLOR_ATTACHMENT8_EXT 501 #define GL_COLOR_ATTACHMENT8_EXT 0x8CE8 502 #endif 503 #ifndef GL_COLOR_ATTACHMENT9_EXT 504 #define GL_COLOR_ATTACHMENT9_EXT 0x8CE9 505 #endif 506 #ifndef GL_COLOR_ATTACHMENT10_EXT 507 #define GL_COLOR_ATTACHMENT10_EXT 0x8CEA 508 #endif 509 #ifndef GL_COLOR_ATTACHMENT11_EXT 510 #define GL_COLOR_ATTACHMENT11_EXT 0x8CEB 511 #endif 512 #ifndef GL_COLOR_ATTACHMENT12_EXT 513 #define GL_COLOR_ATTACHMENT12_EXT 0x8CEC 514 #endif 515 #ifndef GL_COLOR_ATTACHMENT13_EXT 516 #define GL_COLOR_ATTACHMENT13_EXT 0x8CED 517 #endif 518 #ifndef GL_COLOR_ATTACHMENT14_EXT 519 #define GL_COLOR_ATTACHMENT14_EXT 0x8CEE 520 #endif 521 #ifndef GL_COLOR_ATTACHMENT15_EXT 522 #define GL_COLOR_ATTACHMENT15_EXT 0x8CEF 523 #endif 524 525 #ifndef GL_DRAW_BUFFER0_EXT 526 #define GL_DRAW_BUFFER0_EXT 0x8825 527 #endif 528 #ifndef GL_DRAW_BUFFER1_EXT 529 #define GL_DRAW_BUFFER1_EXT 0x8826 530 #endif 531 #ifndef GL_DRAW_BUFFER2_EXT 532 #define GL_DRAW_BUFFER2_EXT 0x8827 533 #endif 534 #ifndef GL_DRAW_BUFFER3_EXT 535 #define GL_DRAW_BUFFER3_EXT 0x8828 536 #endif 537 #ifndef GL_DRAW_BUFFER4_EXT 538 #define GL_DRAW_BUFFER4_EXT 0x8829 539 #endif 540 #ifndef GL_DRAW_BUFFER5_EXT 541 #define GL_DRAW_BUFFER5_EXT 0x882A 542 #endif 543 #ifndef GL_DRAW_BUFFER6_EXT 544 #define GL_DRAW_BUFFER6_EXT 0x882B 545 #endif 546 #ifndef GL_DRAW_BUFFER7_EXT 547 #define GL_DRAW_BUFFER7_EXT 0x882C 548 #endif 549 #ifndef GL_DRAW_BUFFER8_EXT 550 #define GL_DRAW_BUFFER8_EXT 0x882D 551 #endif 552 #ifndef GL_DRAW_BUFFER9_EXT 553 #define GL_DRAW_BUFFER9_EXT 0x882E 554 #endif 555 #ifndef GL_DRAW_BUFFER10_EXT 556 #define GL_DRAW_BUFFER10_EXT 0x882F 557 #endif 558 #ifndef GL_DRAW_BUFFER11_EXT 559 #define GL_DRAW_BUFFER11_EXT 0x8830 560 #endif 561 #ifndef GL_DRAW_BUFFER12_EXT 562 #define GL_DRAW_BUFFER12_EXT 0x8831 563 #endif 564 #ifndef GL_DRAW_BUFFER13_EXT 565 #define GL_DRAW_BUFFER13_EXT 0x8832 566 #endif 567 #ifndef GL_DRAW_BUFFER14_EXT 568 #define GL_DRAW_BUFFER14_EXT 0x8833 569 #endif 570 #ifndef GL_DRAW_BUFFER15_EXT 571 #define GL_DRAW_BUFFER15_EXT 0x8834 572 #endif 573 574 #ifndef GL_MAX_COLOR_ATTACHMENTS_EXT 575 #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF 576 #endif 577 578 #ifndef GL_MAX_DRAW_BUFFERS_EXT 579 #define GL_MAX_DRAW_BUFFERS_EXT 0x8824 580 #endif 581 582 #endif /* GL_EXT_draw_buffers */ 583 584 /* GL_CHROMIUM_resize */ 585 #ifndef GL_CHROMIUM_resize 586 #define GL_CHROMIUM_resize 1 587 #ifdef GL_GLEXT_PROTOTYPES 588 GL_APICALL void GL_APIENTRY glResizeCHROMIUM( 589 GLuint width, GLuint height, GLfloat scale_factor); 590 #endif 591 typedef void (GL_APIENTRYP PFNGLRESIZECHROMIUMPROC) ( 592 GLuint width, GLuint height); 593 #endif /* GL_CHROMIUM_resize */ 594 595 /* GL_CHROMIUM_get_multiple */ 596 #ifndef GL_CHROMIUM_get_multiple 597 #define GL_CHROMIUM_get_multiple 1 598 #ifdef GL_GLEXT_PROTOTYPES 599 GL_APICALL void GL_APIENTRY glGetMultipleIntegervCHROMIUM( 600 const GLenum* pnames, GLuint count, GLint* results, GLsizeiptr size); 601 GL_APICALL void GL_APIENTRY glGetProgramInfoCHROMIUM( 602 GLuint program, GLsizei bufsize, GLsizei* size, void* info); 603 #endif 604 typedef void (GL_APIENTRYP PFNGLGETMULTIPLEINTEGERVCHROMIUMPROC) ( 605 const GLenum* pnames, GLuint count, GLint* results, GLsizeiptr size); 606 typedef void (GL_APIENTRYP PFNGLGETPROGRAMINFOCHROMIUMPROC) ( 607 GLuint program, GLsizei bufsize, GLsizei* size, void* info); 608 #endif /* GL_CHROMIUM_get_multiple */ 609 610 /* GL_CHROMIUM_front_buffer_cached */ 611 #ifndef GL_CHROMIUM_front_buffer_cached 612 #define GL_CHROMIUM_front_buffer_cached 1 613 #endif /* GL_CHROMIUM_front_buffer_cached */ 614 615 /* GL_CHROMIUM_sync_point */ 616 #ifndef GL_CHROMIUM_sync_point 617 #define GL_CHROMIUM_sync_point 1 618 #ifdef GL_GLEXT_PROTOTYPES 619 GL_APICALL GLuint GL_APIENTRY glInsertSyncPointCHROMIUM(); 620 GL_APICALL void GL_APIENTRY glWaitSyncPointCHROMIUM(GLuint sync_point); 621 #endif 622 typedef GLuint (GL_APIENTRYP PFNGLINSERTSYNCPOINTCHROMIUMPROC) (); 623 typedef void (GL_APIENTRYP PFNGLWAITSYNCPOINTCHROMIUMPROC) (GLuint sync_point); 624 #endif /* GL_CHROMIUM_sync_point */ 625 626 #ifdef __cplusplus 627 } 628 #endif 629 630 #endif // GPU_GLES2_GL2EXTCHROMIUM_H_ 631