| The Android Open Source Project | edbf3b6 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 1 | #ifndef __eglext_h_ | 
|  | 2 | #define __eglext_h_ | 
|  | 3 |  | 
|  | 4 | #ifdef __cplusplus | 
|  | 5 | extern "C" { | 
|  | 6 | #endif | 
|  | 7 |  | 
|  | 8 | /* | 
| Mathias Agopian | e81a3cb | 2010-06-09 18:46:35 -0700 | [diff] [blame] | 9 | ** Copyright (c) 2007-2010 The Khronos Group Inc. | 
| The Android Open Source Project | edbf3b6 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 10 | ** | 
|  | 11 | ** Permission is hereby granted, free of charge, to any person obtaining a | 
|  | 12 | ** copy of this software and/or associated documentation files (the | 
|  | 13 | ** "Materials"), to deal in the Materials without restriction, including | 
|  | 14 | ** without limitation the rights to use, copy, modify, merge, publish, | 
|  | 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 | 
|  | 17 | ** the following conditions: | 
|  | 18 | ** | 
|  | 19 | ** The above copyright notice and this permission notice shall be included | 
|  | 20 | ** in all copies or substantial portions of the Materials. | 
|  | 21 | ** | 
|  | 22 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | 
|  | 23 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | 
|  | 24 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | 
|  | 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, | 
|  | 27 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | 
|  | 28 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. | 
|  | 29 | */ | 
|  | 30 |  | 
|  | 31 | #include <EGL/eglplatform.h> | 
|  | 32 |  | 
|  | 33 | /*************************************************************/ | 
|  | 34 |  | 
|  | 35 | /* Header file version number */ | 
|  | 36 | /* Current version at http://www.khronos.org/registry/egl/ */ | 
| Mathias Agopian | e81a3cb | 2010-06-09 18:46:35 -0700 | [diff] [blame] | 37 | /* $Revision: 11249 $ on $Date: 2010-05-05 09:54:28 -0700 (Wed, 05 May 2010) $ */ | 
|  | 38 | #define EGL_EGLEXT_VERSION 5 | 
| The Android Open Source Project | edbf3b6 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 39 |  | 
|  | 40 | #ifndef EGL_KHR_config_attribs | 
|  | 41 | #define EGL_KHR_config_attribs 1 | 
|  | 42 | #define EGL_CONFORMANT_KHR			0x3042	/* EGLConfig attribute */ | 
|  | 43 | #define EGL_VG_COLORSPACE_LINEAR_BIT_KHR	0x0020	/* EGL_SURFACE_TYPE bitfield */ | 
|  | 44 | #define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR		0x0040	/* EGL_SURFACE_TYPE bitfield */ | 
|  | 45 | #endif | 
|  | 46 |  | 
|  | 47 | #ifndef EGL_KHR_lock_surface | 
|  | 48 | #define EGL_KHR_lock_surface 1 | 
|  | 49 | #define EGL_READ_SURFACE_BIT_KHR		0x0001	/* EGL_LOCK_USAGE_HINT_KHR bitfield */ | 
|  | 50 | #define EGL_WRITE_SURFACE_BIT_KHR		0x0002	/* EGL_LOCK_USAGE_HINT_KHR bitfield */ | 
|  | 51 | #define EGL_LOCK_SURFACE_BIT_KHR		0x0080	/* EGL_SURFACE_TYPE bitfield */ | 
|  | 52 | #define EGL_OPTIMAL_FORMAT_BIT_KHR		0x0100	/* EGL_SURFACE_TYPE bitfield */ | 
|  | 53 | #define EGL_MATCH_FORMAT_KHR			0x3043	/* EGLConfig attribute */ | 
|  | 54 | #define EGL_FORMAT_RGB_565_EXACT_KHR		0x30C0	/* EGL_MATCH_FORMAT_KHR value */ | 
|  | 55 | #define EGL_FORMAT_RGB_565_KHR			0x30C1	/* EGL_MATCH_FORMAT_KHR value */ | 
|  | 56 | #define EGL_FORMAT_RGBA_8888_EXACT_KHR		0x30C2	/* EGL_MATCH_FORMAT_KHR value */ | 
|  | 57 | #define EGL_FORMAT_RGBA_8888_KHR		0x30C3	/* EGL_MATCH_FORMAT_KHR value */ | 
|  | 58 | #define EGL_MAP_PRESERVE_PIXELS_KHR		0x30C4	/* eglLockSurfaceKHR attribute */ | 
|  | 59 | #define EGL_LOCK_USAGE_HINT_KHR			0x30C5	/* eglLockSurfaceKHR attribute */ | 
|  | 60 | #define EGL_BITMAP_POINTER_KHR			0x30C6	/* eglQuerySurface attribute */ | 
|  | 61 | #define EGL_BITMAP_PITCH_KHR			0x30C7	/* eglQuerySurface attribute */ | 
|  | 62 | #define EGL_BITMAP_ORIGIN_KHR			0x30C8	/* eglQuerySurface attribute */ | 
|  | 63 | #define EGL_BITMAP_PIXEL_RED_OFFSET_KHR		0x30C9	/* eglQuerySurface attribute */ | 
|  | 64 | #define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR	0x30CA	/* eglQuerySurface attribute */ | 
|  | 65 | #define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR	0x30CB	/* eglQuerySurface attribute */ | 
|  | 66 | #define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR	0x30CC	/* eglQuerySurface attribute */ | 
|  | 67 | #define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR	0x30CD	/* eglQuerySurface attribute */ | 
|  | 68 | #define EGL_LOWER_LEFT_KHR			0x30CE	/* EGL_BITMAP_ORIGIN_KHR value */ | 
|  | 69 | #define EGL_UPPER_LEFT_KHR			0x30CF	/* EGL_BITMAP_ORIGIN_KHR value */ | 
|  | 70 | #ifdef EGL_EGLEXT_PROTOTYPES | 
|  | 71 | EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list); | 
|  | 72 | EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay display, EGLSurface surface); | 
|  | 73 | #endif /* EGL_EGLEXT_PROTOTYPES */ | 
|  | 74 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list); | 
|  | 75 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface); | 
|  | 76 | #endif | 
|  | 77 |  | 
|  | 78 | #ifndef EGL_KHR_image | 
|  | 79 | #define EGL_KHR_image 1 | 
|  | 80 | #define EGL_NATIVE_PIXMAP_KHR			0x30B0	/* eglCreateImageKHR target */ | 
|  | 81 | typedef void *EGLImageKHR; | 
|  | 82 | #define EGL_NO_IMAGE_KHR			((EGLImageKHR)0) | 
|  | 83 | #ifdef EGL_EGLEXT_PROTOTYPES | 
|  | 84 | EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); | 
|  | 85 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image); | 
|  | 86 | #endif /* EGL_EGLEXT_PROTOTYPES */ | 
|  | 87 | typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); | 
|  | 88 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image); | 
|  | 89 | #endif | 
|  | 90 |  | 
|  | 91 | #ifndef EGL_KHR_vg_parent_image | 
|  | 92 | #define EGL_KHR_vg_parent_image 1 | 
|  | 93 | #define EGL_VG_PARENT_IMAGE_KHR			0x30BA	/* eglCreateImageKHR target */ | 
|  | 94 | #endif | 
|  | 95 |  | 
|  | 96 | #ifndef EGL_KHR_gl_texture_2D_image | 
|  | 97 | #define EGL_KHR_gl_texture_2D_image 1 | 
|  | 98 | #define EGL_GL_TEXTURE_2D_KHR			0x30B1	/* eglCreateImageKHR target */ | 
|  | 99 | #define EGL_GL_TEXTURE_LEVEL_KHR		0x30BC	/* eglCreateImageKHR attribute */ | 
|  | 100 | #endif | 
|  | 101 |  | 
|  | 102 | #ifndef EGL_KHR_gl_texture_cubemap_image | 
|  | 103 | #define EGL_KHR_gl_texture_cubemap_image 1 | 
|  | 104 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR	0x30B3	/* eglCreateImageKHR target */ | 
|  | 105 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR	0x30B4	/* eglCreateImageKHR target */ | 
|  | 106 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR	0x30B5	/* eglCreateImageKHR target */ | 
|  | 107 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR	0x30B6	/* eglCreateImageKHR target */ | 
|  | 108 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR	0x30B7	/* eglCreateImageKHR target */ | 
|  | 109 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR	0x30B8	/* eglCreateImageKHR target */ | 
|  | 110 | #endif | 
|  | 111 |  | 
|  | 112 | #ifndef EGL_KHR_gl_texture_3D_image | 
|  | 113 | #define EGL_KHR_gl_texture_3D_image 1 | 
|  | 114 | #define EGL_GL_TEXTURE_3D_KHR			0x30B2	/* eglCreateImageKHR target */ | 
|  | 115 | #define EGL_GL_TEXTURE_ZOFFSET_KHR		0x30BD	/* eglCreateImageKHR attribute */ | 
|  | 116 | #endif | 
|  | 117 |  | 
|  | 118 | #ifndef EGL_KHR_gl_renderbuffer_image | 
|  | 119 | #define EGL_KHR_gl_renderbuffer_image 1 | 
|  | 120 | #define EGL_GL_RENDERBUFFER_KHR			0x30B9	/* eglCreateImageKHR target */ | 
|  | 121 | #endif | 
|  | 122 |  | 
| Mathias Agopian | e81a3cb | 2010-06-09 18:46:35 -0700 | [diff] [blame] | 123 | #ifndef EGL_KHR_reusable_sync | 
|  | 124 | #define EGL_KHR_reusable_sync 1 | 
|  | 125 |  | 
|  | 126 | typedef void* EGLSyncKHR; | 
|  | 127 | typedef khronos_utime_nanoseconds_t EGLTimeKHR; | 
|  | 128 |  | 
|  | 129 | #define EGL_SYNC_STATUS_KHR			0x30F1 | 
|  | 130 | #define EGL_SIGNALED_KHR			0x30F2 | 
|  | 131 | #define EGL_UNSIGNALED_KHR			0x30F3 | 
|  | 132 | #define EGL_TIMEOUT_EXPIRED_KHR			0x30F5 | 
|  | 133 | #define EGL_CONDITION_SATISFIED_KHR		0x30F6 | 
|  | 134 | #define EGL_SYNC_TYPE_KHR			0x30F7 | 
|  | 135 | #define EGL_SYNC_REUSABLE_KHR			0x30FA | 
|  | 136 | #define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR		0x0001	/* eglClientWaitSyncKHR <flags> bitfield */ | 
|  | 137 | #define EGL_FOREVER_KHR				0xFFFFFFFFFFFFFFFFull | 
|  | 138 | #define EGL_NO_SYNC_KHR				((EGLSyncKHR)0) | 
|  | 139 | #ifdef EGL_EGLEXT_PROTOTYPES | 
|  | 140 | EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGLint *attrib_list); | 
|  | 141 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync); | 
|  | 142 | EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout); | 
|  | 143 | EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode); | 
|  | 144 | EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value); | 
|  | 145 | #endif /* EGL_EGLEXT_PROTOTYPES */ | 
|  | 146 | typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list); | 
|  | 147 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync); | 
|  | 148 | typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout); | 
|  | 149 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode); | 
|  | 150 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value); | 
|  | 151 | #endif | 
|  | 152 |  | 
| The Android Open Source Project | edbf3b6 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 153 | #ifndef EGL_KHR_image_base | 
|  | 154 | #define EGL_KHR_image_base 1 | 
|  | 155 | /* Most interfaces defined by EGL_KHR_image_pixmap above */ | 
|  | 156 | #define EGL_IMAGE_PRESERVED_KHR			0x30D2	/* eglCreateImageKHR attribute */ | 
|  | 157 | #endif | 
|  | 158 |  | 
|  | 159 | #ifndef EGL_KHR_image_pixmap | 
|  | 160 | #define EGL_KHR_image_pixmap 1 | 
|  | 161 | /* Interfaces defined by EGL_KHR_image above */ | 
|  | 162 | #endif | 
|  | 163 |  | 
| Mathias Agopian | e81a3cb | 2010-06-09 18:46:35 -0700 | [diff] [blame] | 164 | #ifndef EGL_IMG_context_priority | 
|  | 165 | #define EGL_IMG_context_priority 1 | 
|  | 166 | #define EGL_CONTEXT_PRIORITY_LEVEL_IMG		0x3100 | 
|  | 167 | #define EGL_CONTEXT_PRIORITY_HIGH_IMG		0x3101 | 
|  | 168 | #define EGL_CONTEXT_PRIORITY_MEDIUM_IMG		0x3102 | 
|  | 169 | #define EGL_CONTEXT_PRIORITY_LOW_IMG		0x3103 | 
|  | 170 | #endif | 
|  | 171 |  | 
|  | 172 | #ifndef EGL_NV_coverage_sample | 
|  | 173 | #define EGL_NV_coverage_sample 1 | 
|  | 174 | #define EGL_COVERAGE_BUFFERS_NV 0x30E0 | 
|  | 175 | #define EGL_COVERAGE_SAMPLES_NV 0x30E1 | 
|  | 176 | #endif | 
|  | 177 |  | 
|  | 178 | #ifndef EGL_NV_depth_nonlinear | 
|  | 179 | #define EGL_NV_depth_nonlinear 1 | 
|  | 180 | #define EGL_DEPTH_ENCODING_NV 0x30E2 | 
|  | 181 | #define EGL_DEPTH_ENCODING_NONE_NV 0 | 
|  | 182 | #define EGL_DEPTH_ENCODING_NONLINEAR_NV 0x30E3 | 
|  | 183 | #endif | 
|  | 184 |  | 
|  | 185 | #ifndef EGL_NV_sync | 
|  | 186 | #define EGL_NV_sync 1 | 
|  | 187 | #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV	0x30E6 | 
|  | 188 | #define EGL_SYNC_STATUS_NV			0x30E7 | 
|  | 189 | #define EGL_SIGNALED_NV				0x30E8 | 
|  | 190 | #define EGL_UNSIGNALED_NV			0x30E9 | 
|  | 191 | #define EGL_SYNC_FLUSH_COMMANDS_BIT_NV		0x0001 | 
|  | 192 | #define EGL_FOREVER_NV				0xFFFFFFFFFFFFFFFFull | 
|  | 193 | #define EGL_ALREADY_SIGNALED_NV			0x30EA | 
|  | 194 | #define EGL_TIMEOUT_EXPIRED_NV			0x30EB | 
|  | 195 | #define EGL_CONDITION_SATISFIED_NV		0x30EC | 
|  | 196 | #define EGL_SYNC_TYPE_NV			0x30ED | 
|  | 197 | #define EGL_SYNC_CONDITION_NV			0x30EE | 
|  | 198 | #define EGL_SYNC_FENCE_NV			0x30EF | 
|  | 199 | #define EGL_NO_SYNC_NV				((EGLSyncNV)0) | 
|  | 200 | typedef void* EGLSyncNV; | 
|  | 201 | typedef unsigned long long EGLTimeNV; | 
|  | 202 | #ifdef EGL_EGLEXT_PROTOTYPES | 
|  | 203 | EGLSyncNV eglCreateFenceSyncNV (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list); | 
|  | 204 | EGLBoolean eglDestroySyncNV (EGLSyncNV sync); | 
|  | 205 | EGLBoolean eglFenceNV (EGLSyncNV sync); | 
|  | 206 | EGLint eglClientWaitSyncNV (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout); | 
|  | 207 | EGLBoolean eglSignalSyncNV (EGLSyncNV sync, EGLenum mode); | 
|  | 208 | EGLBoolean eglGetSyncAttribNV (EGLSyncNV sync, EGLint attribute, EGLint *value); | 
|  | 209 | #endif /* EGL_EGLEXT_PROTOTYPES */ | 
|  | 210 | typedef EGLSyncNV (EGLAPIENTRYP PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list); | 
|  | 211 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV sync); | 
|  | 212 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLFENCENVPROC) (EGLSyncNV sync); | 
|  | 213 | typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout); | 
|  | 214 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV sync, EGLenum mode); | 
|  | 215 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV sync, EGLint attribute, EGLint *value); | 
|  | 216 | #endif | 
|  | 217 |  | 
|  | 218 | #ifndef EGL_KHR_fence_sync | 
|  | 219 | #define EGL_KHR_fence_sync 1 | 
|  | 220 | /* Reuses most tokens and entry points from EGL_KHR_reusable_sync */ | 
|  | 221 | #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR	0x30F0 | 
|  | 222 | #define EGL_SYNC_CONDITION_KHR			0x30F8 | 
|  | 223 | #define EGL_SYNC_FENCE_KHR			0x30F9 | 
|  | 224 | #endif | 
| Mathias Agopian | df3ca30 | 2009-05-04 19:29:25 -0700 | [diff] [blame] | 225 |  | 
| Mathias Agopian | 8d2e83b | 2009-06-24 22:37:39 -0700 | [diff] [blame] | 226 | #ifndef EGL_ANDROID_image_native_buffer | 
|  | 227 | #define EGL_ANDROID_image_native_buffer 1 | 
| Iliyan Malchev | 697526b | 2011-05-01 11:33:26 -0700 | [diff] [blame] | 228 | struct ANativeWindowBuffer; | 
| Jamie Gennis | dc159f9 | 2011-07-17 18:42:09 -0700 | [diff] [blame] | 229 | #define EGL_NATIVE_BUFFER_ANDROID               0x3140  /* eglCreateImageKHR target */ | 
| Mathias Agopian | 8d2e83b | 2009-06-24 22:37:39 -0700 | [diff] [blame] | 230 | #endif | 
|  | 231 |  | 
| Jamie Gennis | dc159f9 | 2011-07-17 18:42:09 -0700 | [diff] [blame] | 232 | #ifndef EGL_ANDROID_recordable | 
|  | 233 | #define EGL_ANDROID_recordable 1 | 
|  | 234 | #define EGL_RECORDABLE_ANDROID                  0x3142  /* EGLConfig attribute */ | 
|  | 235 | #endif | 
|  | 236 |  | 
| Jonas Yang | 1c3d72a | 2011-08-26 20:04:39 +0800 | [diff] [blame] | 237 | /* EGL_NV_system_time | 
|  | 238 | */ | 
|  | 239 | #ifndef EGL_NV_system_time | 
|  | 240 | #define EGL_NV_system_time 1 | 
|  | 241 | typedef khronos_int64_t EGLint64NV; | 
|  | 242 | typedef khronos_uint64_t EGLuint64NV; | 
|  | 243 | #ifdef EGL_EGLEXT_PROTOTYPES | 
|  | 244 | EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeFrequencyNV(void); | 
|  | 245 | EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeNV(void); | 
|  | 246 | #endif | 
|  | 247 | typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC)(void); | 
|  | 248 | typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMENVPROC)(void); | 
|  | 249 | #endif | 
|  | 250 |  | 
| Jamie Gennis | 7660108 | 2011-11-06 14:14:33 -0800 | [diff] [blame] | 251 | /* EGL_ANDROID_blob_cache | 
|  | 252 | */ | 
|  | 253 | #ifndef EGL_ANDROID_blob_cache | 
|  | 254 | #define EGL_ANDROID_blob_cache 1 | 
| Jamie Gennis | c42fcf0 | 2011-11-09 15:35:34 -0800 | [diff] [blame] | 255 | typedef khronos_ssize_t EGLsizeiANDROID; | 
|  | 256 | typedef void (*EGLSetBlobFuncANDROID) (const void* key, EGLsizeiANDROID keySize, const void* value, EGLsizeiANDROID valueSize); | 
|  | 257 | typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void* key, EGLsizeiANDROID keySize, void* value, EGLsizeiANDROID valueSize); | 
| Jamie Gennis | 7660108 | 2011-11-06 14:14:33 -0800 | [diff] [blame] | 258 | #ifdef EGL_EGLEXT_PROTOTYPES | 
| Jamie Gennis | c42fcf0 | 2011-11-09 15:35:34 -0800 | [diff] [blame] | 259 | EGLAPI void EGLAPIENTRY eglSetBlobCacheFuncsANDROID(EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get); | 
| Jamie Gennis | 7660108 | 2011-11-06 14:14:33 -0800 | [diff] [blame] | 260 | #endif /* EGL_EGLEXT_PROTOTYPES */ | 
| Jamie Gennis | c42fcf0 | 2011-11-09 15:35:34 -0800 | [diff] [blame] | 261 | typedef void (EGLAPIENTRYP PFNEGLSETBLOBCACHEFUNCSANDROIDPROC) (EGLDisplay dpy, | 
|  | 262 | EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get); | 
| Jamie Gennis | 7660108 | 2011-11-06 14:14:33 -0800 | [diff] [blame] | 263 | #endif | 
|  | 264 |  | 
| Jesse Hall | 2583859 | 2012-04-05 15:53:28 -0700 | [diff] [blame] | 265 | /* EGL_IMG_hibernate_process | 
|  | 266 | */ | 
|  | 267 | #ifndef EGL_IMG_hibernate_process | 
|  | 268 | #define EGL_IMG_hibernate_process 1 | 
|  | 269 | typedef EGLBoolean (EGLAPIENTRYP PFEGLHIBERNATEPROCESSIMGPROC)(void); | 
|  | 270 | typedef EGLBoolean (EGLAPIENTRYP PFEGLAWAKENPROCESSIMGPROC)(void); | 
|  | 271 | #endif | 
|  | 272 |  | 
| The Android Open Source Project | edbf3b6 | 2009-03-03 19:31:44 -0800 | [diff] [blame] | 273 | #ifdef __cplusplus | 
|  | 274 | } | 
|  | 275 | #endif | 
|  | 276 |  | 
|  | 277 | #endif |