OLD | NEW |
1 #ifndef __eglext_h_ | 1 #ifndef __eglext_h_ |
2 #define __eglext_h_ | 2 #define __eglext_h_ |
3 | 3 |
4 #ifdef __cplusplus | 4 #ifdef __cplusplus |
5 extern "C" { | 5 extern "C" { |
6 #endif | 6 #endif |
7 | 7 |
8 /* | 8 /* |
9 ** Copyright (c) 2007-2012 The Khronos Group Inc. | 9 ** Copyright (c) 2007-2013 The Khronos Group Inc. |
10 ** | 10 ** |
11 ** Permission is hereby granted, free of charge, to any person obtaining a | 11 ** Permission is hereby granted, free of charge, to any person obtaining a |
12 ** copy of this software and/or associated documentation files (the | 12 ** copy of this software and/or associated documentation files (the |
13 ** "Materials"), to deal in the Materials without restriction, including | 13 ** "Materials"), to deal in the Materials without restriction, including |
14 ** without limitation the rights to use, copy, modify, merge, publish, | 14 ** without limitation the rights to use, copy, modify, merge, publish, |
15 ** distribute, sublicense, and/or sell copies of the Materials, and to | 15 ** distribute, sublicense, and/or sell copies of the Materials, and to |
16 ** permit persons to whom the Materials are furnished to do so, subject to | 16 ** permit persons to whom the Materials are furnished to do so, subject to |
17 ** the following conditions: | 17 ** the following conditions: |
18 ** | 18 ** |
19 ** The above copyright notice and this permission notice shall be included | 19 ** The above copyright notice and this permission notice shall be included |
20 ** in all copies or substantial portions of the Materials. | 20 ** in all copies or substantial portions of the Materials. |
21 ** | 21 ** |
22 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | 22 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
23 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | 23 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
24 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | 24 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
25 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY | 25 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
26 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | 26 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
27 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | 27 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
28 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. | 28 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. |
29 */ | 29 */ |
30 | 30 |
31 #include <EGL/eglplatform.h> | 31 #include <EGL/eglplatform.h> |
32 | 32 |
33 /*************************************************************/ | 33 /*************************************************************/ |
34 | 34 |
35 /* Header file version number */ | 35 /* Header file version number */ |
36 /* Current version at http://www.khronos.org/registry/egl/ */ | 36 /* Current version at http://www.khronos.org/registry/egl/ */ |
37 /* $Revision: 19571 $ on $Date: 2012-10-31 10:10:33 -0700 (Wed, 31 Oct 2012) $ *
/ | 37 /* $Revision: 20690 $ on $Date: 2013-02-22 17:15:05 -0800 (Fri, 22 Feb 2013) $ *
/ |
38 #define EGL_EGLEXT_VERSION 14 | 38 #define EGL_EGLEXT_VERSION 15 |
39 | 39 |
40 #ifndef EGL_KHR_config_attribs | 40 #ifndef EGL_KHR_config_attribs |
41 #define EGL_KHR_config_attribs 1 | 41 #define EGL_KHR_config_attribs 1 |
42 #define EGL_CONFORMANT_KHR 0x3042 /* EGLConfig attribute *
/ | 42 #define EGL_CONFORMANT_KHR 0x3042 /* EGLConfig attribute *
/ |
43 #define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020 /* EGL_SURFACE_TYPE bitf
ield */ | 43 #define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020 /* EGL_SURFACE_TYPE bitf
ield */ |
44 #define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040 /* EGL_SURFACE_TYPE bitf
ield */ | 44 #define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040 /* EGL_SURFACE_TYPE bitf
ield */ |
45 #endif | 45 #endif |
46 | 46 |
47 #ifndef EGL_KHR_lock_surface | 47 #ifndef EGL_KHR_lock_surface |
48 #define EGL_KHR_lock_surface 1 | 48 #define EGL_KHR_lock_surface 1 |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
243 * Structure representing a client pixmap | 243 * Structure representing a client pixmap |
244 * (pixmap's data is in client-space memory). | 244 * (pixmap's data is in client-space memory). |
245 */ | 245 */ |
246 struct EGLClientPixmapHI | 246 struct EGLClientPixmapHI |
247 { | 247 { |
248 void* pData; | 248 void* pData; |
249 EGLint iWidth; | 249 EGLint iWidth; |
250 EGLint iHeight; | 250 EGLint iHeight; |
251 EGLint iStride; | 251 EGLint iStride; |
252 }; | 252 }; |
253 | |
254 #ifdef EGL_EGLEXT_PROTOTYPES | 253 #ifdef EGL_EGLEXT_PROTOTYPES |
255 EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurfaceHI(EGLDisplay dpy, EGLConfig
config, struct EGLClientPixmapHI* pixmap); | 254 EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurfaceHI(EGLDisplay dpy, EGLConfig
config, struct EGLClientPixmapHI* pixmap); |
256 #endif /* EGL_EGLEXT_PROTOTYPES */ | 255 #endif /* EGL_EGLEXT_PROTOTYPES */ |
257 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dp
y, EGLConfig config, struct EGLClientPixmapHI* pixmap); | 256 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dp
y, EGLConfig config, struct EGLClientPixmapHI* pixmap); |
258 #endif /* EGL_HI_clientpixmap */ | 257 #endif /* EGL_HI_clientpixmap */ |
259 | 258 |
260 #ifndef EGL_HI_colorformats | 259 #ifndef EGL_HI_colorformats |
261 #define EGL_HI_colorformats 1 | 260 #define EGL_HI_colorformats 1 |
262 /* Config Attribute */ | 261 /* Config Attribute */ |
263 #define EGL_COLOR_FORMAT_HI 0x8F70 | 262 #define EGL_COLOR_FORMAT_HI 0x8F70 |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
309 #ifndef EGL_NV_coverage_sample_resolve | 308 #ifndef EGL_NV_coverage_sample_resolve |
310 #define EGL_NV_coverage_sample_resolve 1 | 309 #define EGL_NV_coverage_sample_resolve 1 |
311 #define EGL_COVERAGE_SAMPLE_RESOLVE_NV 0x3131 | 310 #define EGL_COVERAGE_SAMPLE_RESOLVE_NV 0x3131 |
312 #define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV 0x3132 | 311 #define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV 0x3132 |
313 #define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV 0x3133 | 312 #define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV 0x3133 |
314 #endif | 313 #endif |
315 | 314 |
316 #if KHRONOS_SUPPORT_INT64 /* EGLuint64NV requires 64-bit uint support */ | 315 #if KHRONOS_SUPPORT_INT64 /* EGLuint64NV requires 64-bit uint support */ |
317 #ifndef EGL_NV_system_time | 316 #ifndef EGL_NV_system_time |
318 #define EGL_NV_system_time 1 | 317 #define EGL_NV_system_time 1 |
319 | |
320 typedef khronos_utime_nanoseconds_t EGLuint64NV; | 318 typedef khronos_utime_nanoseconds_t EGLuint64NV; |
321 | |
322 #ifdef EGL_EGLEXT_PROTOTYPES | 319 #ifdef EGL_EGLEXT_PROTOTYPES |
323 EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeFrequencyNV(void); | 320 EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeFrequencyNV(void); |
324 EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeNV(void); | 321 EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeNV(void); |
325 #endif /* EGL_EGLEXT_PROTOTYPES */ | 322 #endif /* EGL_EGLEXT_PROTOTYPES */ |
326 typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) (void); | 323 typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) (void); |
327 typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMENVPROC) (void); | 324 typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMENVPROC) (void); |
328 #endif | 325 #endif |
329 #endif | 326 #endif |
330 | 327 |
331 #if KHRONOS_SUPPORT_INT64 /* EGLuint64KHR requires 64-bit uint support */ | 328 #if KHRONOS_SUPPORT_INT64 /* EGLuint64KHR requires 64-bit uint support */ |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
463 #endif | 460 #endif |
464 | 461 |
465 #ifndef EGL_KHR_wait_sync | 462 #ifndef EGL_KHR_wait_sync |
466 #define EGL_KHR_wait_sync 1 | 463 #define EGL_KHR_wait_sync 1 |
467 #ifdef EGL_EGLEXT_PROTOTYPES | 464 #ifdef EGL_EGLEXT_PROTOTYPES |
468 EGLAPI EGLint EGLAPIENTRY eglWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint
flags); | 465 EGLAPI EGLint EGLAPIENTRY eglWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint
flags); |
469 #endif /* EGL_EGLEXT_PROTOTYPES */ | 466 #endif /* EGL_EGLEXT_PROTOTYPES */ |
470 typedef EGLint (EGLAPIENTRYP PFNEGLWAITSYNCKHRPROC)(EGLDisplay dpy, EGLSyncKHR s
ync, EGLint flags); | 467 typedef EGLint (EGLAPIENTRYP PFNEGLWAITSYNCKHRPROC)(EGLDisplay dpy, EGLSyncKHR s
ync, EGLint flags); |
471 #endif | 468 #endif |
472 | 469 |
| 470 #ifndef EGL_NV_post_convert_rounding |
| 471 #define EGL_NV_post_convert_rounding 1 |
| 472 /* No tokens or entry points, just relaxes behavior of SwapBuffers */ |
| 473 #endif |
| 474 |
| 475 #ifndef EGL_NV_native_query |
| 476 #define EGL_NV_native_query 1 |
| 477 #ifdef EGL_EGLEXT_PROTOTYPES |
| 478 EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeDisplayNV( EGLDisplay dpy, EGLNative
DisplayType* display_id); |
| 479 EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeWindowNV( EGLDisplay dpy, EGLSurface
surf, EGLNativeWindowType* window); |
| 480 EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativePixmapNV( EGLDisplay dpy, EGLSurface
surf, EGLNativePixmapType* pixmap); |
| 481 #endif /* EGL_EGLEXT_PROTOTYPES */ |
| 482 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEDISPLAYNVPROC)(EGLDisplay dpy,
EGLNativeDisplayType *display_id); |
| 483 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEWINDOWNVPROC)(EGLDisplay dpy,
EGLSurface surf, EGLNativeWindowType *window); |
| 484 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEPIXMAPNVPROC)(EGLDisplay dpy,
EGLSurface surf, EGLNativePixmapType *pixmap); |
| 485 #endif |
| 486 |
| 487 #ifndef EGL_NV_3dvision_surface |
| 488 #define EGL_NV_3dvision_surface 1 |
| 489 #define EGL_AUTO_STEREO_NV 0x3136 |
| 490 #endif |
| 491 |
| 492 #ifndef EGL_ANDROID_framebuffer_target |
| 493 #define EGL_ANDROID_framebuffer_target 1 |
| 494 #define EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147 |
| 495 #endif |
| 496 |
| 497 #ifndef EGL_ANDROID_blob_cache |
| 498 #define EGL_ANDROID_blob_cache 1 |
| 499 typedef khronos_ssize_t EGLsizeiANDROID; |
| 500 typedef void (*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize,
const void *value, EGLsizeiANDROID valueSize); |
| 501 typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDRO
ID keySize, void *value, EGLsizeiANDROID valueSize); |
| 502 #ifdef EGL_EGLEXT_PROTOTYPES |
| 503 EGLAPI void EGLAPIENTRY eglSetBlobCacheFuncsANDROID(EGLDisplay dpy, EGLSetBlobFu
ncANDROID set, EGLGetBlobFuncANDROID get); |
| 504 #endif /* EGL_EGLEXT_PROTOTYPES */ |
| 505 typedef void (EGLAPIENTRYP PFNEGLSETBLOBCACHEFUNCSANDROIDPROC)(EGLDisplay dpy, E
GLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get); |
| 506 #endif |
| 507 |
| 508 #ifndef EGL_ANDROID_image_native_buffer |
| 509 #define EGL_ANDROID_image_native_buffer 1 |
| 510 #define EGL_NATIVE_BUFFER_ANDROID 0x3140 |
| 511 #endif |
| 512 |
| 513 #ifndef EGL_ANDROID_native_fence_sync |
| 514 #define EGL_ANDROID_native_fence_sync 1 |
| 515 #define EGL_SYNC_NATIVE_FENCE_ANDROID 0x3144 |
| 516 #define EGL_SYNC_NATIVE_FENCE_FD_ANDROID 0x3145 |
| 517 #define EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID 0x3146 |
| 518 #define EGL_NO_NATIVE_FENCE_FD_ANDROID -1 |
| 519 #ifdef EGL_EGLEXT_PROTOTYPES |
| 520 EGLAPI EGLint EGLAPIENTRY eglDupNativeFenceFDANDROID( EGLDisplay dpy, EGLSyncKHR
); |
| 521 #endif /* EGL_EGLEXT_PROTOTYPES */ |
| 522 typedef EGLint (EGLAPIENTRYP PFNEGLDUPNATIVEFENCEFDANDROIDPROC)(EGLDisplay dpy,
EGLSyncKHR); |
| 523 #endif |
| 524 |
| 525 #ifndef EGL_ANDROID_recordable |
| 526 #define EGL_ANDROID_recordable 1 |
| 527 #define EGL_RECORDABLE_ANDROID 0x3142 |
| 528 #endif |
| 529 |
| 530 #ifndef EGL_EXT_buffer_age |
| 531 #define EGL_EXT_buffer_age 1 |
| 532 #define EGL_BUFFER_AGE_EXT 0x313D |
| 533 #endif |
| 534 |
| 535 #ifndef EGL_EXT_image_dma_buf_import |
| 536 #define EGL_EXT_image_dma_buf_import 1 |
| 537 #define EGL_LINUX_DMA_BUF_EXT 0x3270 |
| 538 #define EGL_LINUX_DRM_FOURCC_EXT 0x3271 |
| 539 #define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272 |
| 540 #define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273 |
| 541 #define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274 |
| 542 #define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275 |
| 543 #define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276 |
| 544 #define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277 |
| 545 #define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278 |
| 546 #define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279 |
| 547 #define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A |
| 548 #define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B |
| 549 #define EGL_SAMPLE_RANGE_HINT_EXT 0x327C |
| 550 #define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D |
| 551 #define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E |
| 552 #define EGL_ITU_REC601_EXT 0x327F |
| 553 #define EGL_ITU_REC709_EXT 0x3280 |
| 554 #define EGL_ITU_REC2020_EXT 0x3281 |
| 555 #define EGL_YUV_FULL_RANGE_EXT 0x3282 |
| 556 #define EGL_YUV_NARROW_RANGE_EXT 0x3283 |
| 557 #define EGL_YUV_CHROMA_SITING_0_EXT 0x3284 |
| 558 #define EGL_YUV_CHROMA_SITING_0_5_EXT 0x3285 |
| 559 #endif |
| 560 |
473 #ifdef __cplusplus | 561 #ifdef __cplusplus |
474 } | 562 } |
475 #endif | 563 #endif |
476 | 564 |
477 #endif | 565 #endif /* __eglext_h_ */ |
OLD | NEW |