EGL: sync headers with Khronos
[mesa.git] / include / EGL / egl.h
1 #ifndef __egl_h_
2 #define __egl_h_ 1
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 /*
9 ** Copyright (c) 2013-2017 The Khronos Group Inc.
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 ** This header is generated from the Khronos EGL XML API Registry.
32 ** The current version of the Registry, generator scripts
33 ** used to make the header, and the header can be found at
34 ** http://www.khronos.org/registry/egl
35 **
36 ** Khronos $Git commit SHA1: b5409265f3 $ on $Git commit date: 2020-02-20 08:24:34 -0800 $
37 */
38
39 #include <EGL/eglplatform.h>
40
41 #ifndef EGL_EGL_PROTOTYPES
42 #define EGL_EGL_PROTOTYPES 1
43 #endif
44
45 /* Generated on date 20200220 */
46
47 /* Generated C header for:
48 * API: egl
49 * Versions considered: .*
50 * Versions emitted: .*
51 * Default extensions included: None
52 * Additional extensions included: _nomatch_^
53 * Extensions removed: _nomatch_^
54 */
55
56 #ifndef EGL_VERSION_1_0
57 #define EGL_VERSION_1_0 1
58 typedef unsigned int EGLBoolean;
59 typedef void *EGLDisplay;
60 #include <KHR/khrplatform.h>
61 #include <EGL/eglplatform.h>
62 typedef void *EGLConfig;
63 typedef void *EGLSurface;
64 typedef void *EGLContext;
65 typedef void (*__eglMustCastToProperFunctionPointerType)(void);
66 #define EGL_ALPHA_SIZE 0x3021
67 #define EGL_BAD_ACCESS 0x3002
68 #define EGL_BAD_ALLOC 0x3003
69 #define EGL_BAD_ATTRIBUTE 0x3004
70 #define EGL_BAD_CONFIG 0x3005
71 #define EGL_BAD_CONTEXT 0x3006
72 #define EGL_BAD_CURRENT_SURFACE 0x3007
73 #define EGL_BAD_DISPLAY 0x3008
74 #define EGL_BAD_MATCH 0x3009
75 #define EGL_BAD_NATIVE_PIXMAP 0x300A
76 #define EGL_BAD_NATIVE_WINDOW 0x300B
77 #define EGL_BAD_PARAMETER 0x300C
78 #define EGL_BAD_SURFACE 0x300D
79 #define EGL_BLUE_SIZE 0x3022
80 #define EGL_BUFFER_SIZE 0x3020
81 #define EGL_CONFIG_CAVEAT 0x3027
82 #define EGL_CONFIG_ID 0x3028
83 #define EGL_CORE_NATIVE_ENGINE 0x305B
84 #define EGL_DEPTH_SIZE 0x3025
85 #define EGL_DONT_CARE EGL_CAST(EGLint,-1)
86 #define EGL_DRAW 0x3059
87 #define EGL_EXTENSIONS 0x3055
88 #define EGL_FALSE 0
89 #define EGL_GREEN_SIZE 0x3023
90 #define EGL_HEIGHT 0x3056
91 #define EGL_LARGEST_PBUFFER 0x3058
92 #define EGL_LEVEL 0x3029
93 #define EGL_MAX_PBUFFER_HEIGHT 0x302A
94 #define EGL_MAX_PBUFFER_PIXELS 0x302B
95 #define EGL_MAX_PBUFFER_WIDTH 0x302C
96 #define EGL_NATIVE_RENDERABLE 0x302D
97 #define EGL_NATIVE_VISUAL_ID 0x302E
98 #define EGL_NATIVE_VISUAL_TYPE 0x302F
99 #define EGL_NONE 0x3038
100 #define EGL_NON_CONFORMANT_CONFIG 0x3051
101 #define EGL_NOT_INITIALIZED 0x3001
102 #define EGL_NO_CONTEXT EGL_CAST(EGLContext,0)
103 #define EGL_NO_DISPLAY EGL_CAST(EGLDisplay,0)
104 #define EGL_NO_SURFACE EGL_CAST(EGLSurface,0)
105 #define EGL_PBUFFER_BIT 0x0001
106 #define EGL_PIXMAP_BIT 0x0002
107 #define EGL_READ 0x305A
108 #define EGL_RED_SIZE 0x3024
109 #define EGL_SAMPLES 0x3031
110 #define EGL_SAMPLE_BUFFERS 0x3032
111 #define EGL_SLOW_CONFIG 0x3050
112 #define EGL_STENCIL_SIZE 0x3026
113 #define EGL_SUCCESS 0x3000
114 #define EGL_SURFACE_TYPE 0x3033
115 #define EGL_TRANSPARENT_BLUE_VALUE 0x3035
116 #define EGL_TRANSPARENT_GREEN_VALUE 0x3036
117 #define EGL_TRANSPARENT_RED_VALUE 0x3037
118 #define EGL_TRANSPARENT_RGB 0x3052
119 #define EGL_TRANSPARENT_TYPE 0x3034
120 #define EGL_TRUE 1
121 #define EGL_VENDOR 0x3053
122 #define EGL_VERSION 0x3054
123 #define EGL_WIDTH 0x3057
124 #define EGL_WINDOW_BIT 0x0004
125 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCHOOSECONFIGPROC) (EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config);
126 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOPYBUFFERSPROC) (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target);
127 typedef EGLContext (EGLAPIENTRYP PFNEGLCREATECONTEXTPROC) (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list);
128 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPBUFFERSURFACEPROC) (EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list);
129 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEPROC) (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list);
130 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEWINDOWSURFACEPROC) (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list);
131 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYCONTEXTPROC) (EGLDisplay dpy, EGLContext ctx);
132 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSURFACEPROC) (EGLDisplay dpy, EGLSurface surface);
133 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETCONFIGATTRIBPROC) (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value);
134 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETCONFIGSPROC) (EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config);
135 typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETCURRENTDISPLAYPROC) (void);
136 typedef EGLSurface (EGLAPIENTRYP PFNEGLGETCURRENTSURFACEPROC) (EGLint readdraw);
137 typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETDISPLAYPROC) (EGLNativeDisplayType display_id);
138 typedef EGLint (EGLAPIENTRYP PFNEGLGETERRORPROC) (void);
139 typedef __eglMustCastToProperFunctionPointerType (EGLAPIENTRYP PFNEGLGETPROCADDRESSPROC) (const char *procname);
140 typedef EGLBoolean (EGLAPIENTRYP PFNEGLINITIALIZEPROC) (EGLDisplay dpy, EGLint *major, EGLint *minor);
141 typedef EGLBoolean (EGLAPIENTRYP PFNEGLMAKECURRENTPROC) (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx);
142 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYCONTEXTPROC) (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value);
143 typedef const char *(EGLAPIENTRYP PFNEGLQUERYSTRINGPROC) (EGLDisplay dpy, EGLint name);
144 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value);
145 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSPROC) (EGLDisplay dpy, EGLSurface surface);
146 typedef EGLBoolean (EGLAPIENTRYP PFNEGLTERMINATEPROC) (EGLDisplay dpy);
147 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITGLPROC) (void);
148 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITNATIVEPROC) (EGLint engine);
149 #if EGL_EGL_PROTOTYPES
150 EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig (EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config);
151 EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target);
152 EGLAPI EGLContext EGLAPIENTRY eglCreateContext (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list);
153 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface (EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list);
154 EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list);
155 EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list);
156 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext (EGLDisplay dpy, EGLContext ctx);
157 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface (EGLDisplay dpy, EGLSurface surface);
158 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value);
159 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs (EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config);
160 EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay (void);
161 EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface (EGLint readdraw);
162 EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay (EGLNativeDisplayType display_id);
163 EGLAPI EGLint EGLAPIENTRY eglGetError (void);
164 EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname);
165 EGLAPI EGLBoolean EGLAPIENTRY eglInitialize (EGLDisplay dpy, EGLint *major, EGLint *minor);
166 EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx);
167 EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value);
168 EGLAPI const char *EGLAPIENTRY eglQueryString (EGLDisplay dpy, EGLint name);
169 EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value);
170 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers (EGLDisplay dpy, EGLSurface surface);
171 EGLAPI EGLBoolean EGLAPIENTRY eglTerminate (EGLDisplay dpy);
172 EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL (void);
173 EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative (EGLint engine);
174 #endif
175 #endif /* EGL_VERSION_1_0 */
176
177 #ifndef EGL_VERSION_1_1
178 #define EGL_VERSION_1_1 1
179 #define EGL_BACK_BUFFER 0x3084
180 #define EGL_BIND_TO_TEXTURE_RGB 0x3039
181 #define EGL_BIND_TO_TEXTURE_RGBA 0x303A
182 #define EGL_CONTEXT_LOST 0x300E
183 #define EGL_MIN_SWAP_INTERVAL 0x303B
184 #define EGL_MAX_SWAP_INTERVAL 0x303C
185 #define EGL_MIPMAP_TEXTURE 0x3082
186 #define EGL_MIPMAP_LEVEL 0x3083
187 #define EGL_NO_TEXTURE 0x305C
188 #define EGL_TEXTURE_2D 0x305F
189 #define EGL_TEXTURE_FORMAT 0x3080
190 #define EGL_TEXTURE_RGB 0x305D
191 #define EGL_TEXTURE_RGBA 0x305E
192 #define EGL_TEXTURE_TARGET 0x3081
193 typedef EGLBoolean (EGLAPIENTRYP PFNEGLBINDTEXIMAGEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
194 typedef EGLBoolean (EGLAPIENTRYP PFNEGLRELEASETEXIMAGEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
195 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSURFACEATTRIBPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value);
196 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPINTERVALPROC) (EGLDisplay dpy, EGLint interval);
197 #if EGL_EGL_PROTOTYPES
198 EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
199 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
200 EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value);
201 EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval (EGLDisplay dpy, EGLint interval);
202 #endif
203 #endif /* EGL_VERSION_1_1 */
204
205 #ifndef EGL_VERSION_1_2
206 #define EGL_VERSION_1_2 1
207 typedef unsigned int EGLenum;
208 typedef void *EGLClientBuffer;
209 #define EGL_ALPHA_FORMAT 0x3088
210 #define EGL_ALPHA_FORMAT_NONPRE 0x308B
211 #define EGL_ALPHA_FORMAT_PRE 0x308C
212 #define EGL_ALPHA_MASK_SIZE 0x303E
213 #define EGL_BUFFER_PRESERVED 0x3094
214 #define EGL_BUFFER_DESTROYED 0x3095
215 #define EGL_CLIENT_APIS 0x308D
216 #define EGL_COLORSPACE 0x3087
217 #define EGL_COLORSPACE_sRGB 0x3089
218 #define EGL_COLORSPACE_LINEAR 0x308A
219 #define EGL_COLOR_BUFFER_TYPE 0x303F
220 #define EGL_CONTEXT_CLIENT_TYPE 0x3097
221 #define EGL_DISPLAY_SCALING 10000
222 #define EGL_HORIZONTAL_RESOLUTION 0x3090
223 #define EGL_LUMINANCE_BUFFER 0x308F
224 #define EGL_LUMINANCE_SIZE 0x303D
225 #define EGL_OPENGL_ES_BIT 0x0001
226 #define EGL_OPENVG_BIT 0x0002
227 #define EGL_OPENGL_ES_API 0x30A0
228 #define EGL_OPENVG_API 0x30A1
229 #define EGL_OPENVG_IMAGE 0x3096
230 #define EGL_PIXEL_ASPECT_RATIO 0x3092
231 #define EGL_RENDERABLE_TYPE 0x3040
232 #define EGL_RENDER_BUFFER 0x3086
233 #define EGL_RGB_BUFFER 0x308E
234 #define EGL_SINGLE_BUFFER 0x3085
235 #define EGL_SWAP_BEHAVIOR 0x3093
236 #define EGL_UNKNOWN EGL_CAST(EGLint,-1)
237 #define EGL_VERTICAL_RESOLUTION 0x3091
238 typedef EGLBoolean (EGLAPIENTRYP PFNEGLBINDAPIPROC) (EGLenum api);
239 typedef EGLenum (EGLAPIENTRYP PFNEGLQUERYAPIPROC) (void);
240 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC) (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list);
241 typedef EGLBoolean (EGLAPIENTRYP PFNEGLRELEASETHREADPROC) (void);
242 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITCLIENTPROC) (void);
243 #if EGL_EGL_PROTOTYPES
244 EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI (EGLenum api);
245 EGLAPI EGLenum EGLAPIENTRY eglQueryAPI (void);
246 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list);
247 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread (void);
248 EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient (void);
249 #endif
250 #endif /* EGL_VERSION_1_2 */
251
252 #ifndef EGL_VERSION_1_3
253 #define EGL_VERSION_1_3 1
254 #define EGL_CONFORMANT 0x3042
255 #define EGL_CONTEXT_CLIENT_VERSION 0x3098
256 #define EGL_MATCH_NATIVE_PIXMAP 0x3041
257 #define EGL_OPENGL_ES2_BIT 0x0004
258 #define EGL_VG_ALPHA_FORMAT 0x3088
259 #define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B
260 #define EGL_VG_ALPHA_FORMAT_PRE 0x308C
261 #define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040
262 #define EGL_VG_COLORSPACE 0x3087
263 #define EGL_VG_COLORSPACE_sRGB 0x3089
264 #define EGL_VG_COLORSPACE_LINEAR 0x308A
265 #define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020
266 #endif /* EGL_VERSION_1_3 */
267
268 #ifndef EGL_VERSION_1_4
269 #define EGL_VERSION_1_4 1
270 #define EGL_DEFAULT_DISPLAY EGL_CAST(EGLNativeDisplayType,0)
271 #define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200
272 #define EGL_MULTISAMPLE_RESOLVE 0x3099
273 #define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A
274 #define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B
275 #define EGL_OPENGL_API 0x30A2
276 #define EGL_OPENGL_BIT 0x0008
277 #define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400
278 typedef EGLContext (EGLAPIENTRYP PFNEGLGETCURRENTCONTEXTPROC) (void);
279 #if EGL_EGL_PROTOTYPES
280 EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext (void);
281 #endif
282 #endif /* EGL_VERSION_1_4 */
283
284 #ifndef EGL_VERSION_1_5
285 #define EGL_VERSION_1_5 1
286 typedef void *EGLSync;
287 typedef intptr_t EGLAttrib;
288 typedef khronos_utime_nanoseconds_t EGLTime;
289 typedef void *EGLImage;
290 #define EGL_CONTEXT_MAJOR_VERSION 0x3098
291 #define EGL_CONTEXT_MINOR_VERSION 0x30FB
292 #define EGL_CONTEXT_OPENGL_PROFILE_MASK 0x30FD
293 #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD
294 #define EGL_NO_RESET_NOTIFICATION 0x31BE
295 #define EGL_LOSE_CONTEXT_ON_RESET 0x31BF
296 #define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT 0x00000001
297 #define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT 0x00000002
298 #define EGL_CONTEXT_OPENGL_DEBUG 0x31B0
299 #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1
300 #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2
301 #define EGL_OPENGL_ES3_BIT 0x00000040
302 #define EGL_CL_EVENT_HANDLE 0x309C
303 #define EGL_SYNC_CL_EVENT 0x30FE
304 #define EGL_SYNC_CL_EVENT_COMPLETE 0x30FF
305 #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE 0x30F0
306 #define EGL_SYNC_TYPE 0x30F7
307 #define EGL_SYNC_STATUS 0x30F1
308 #define EGL_SYNC_CONDITION 0x30F8
309 #define EGL_SIGNALED 0x30F2
310 #define EGL_UNSIGNALED 0x30F3
311 #define EGL_SYNC_FLUSH_COMMANDS_BIT 0x0001
312 #define EGL_FOREVER 0xFFFFFFFFFFFFFFFFull
313 #define EGL_TIMEOUT_EXPIRED 0x30F5
314 #define EGL_CONDITION_SATISFIED 0x30F6
315 #define EGL_NO_SYNC EGL_CAST(EGLSync,0)
316 #define EGL_SYNC_FENCE 0x30F9
317 #define EGL_GL_COLORSPACE 0x309D
318 #define EGL_GL_COLORSPACE_SRGB 0x3089
319 #define EGL_GL_COLORSPACE_LINEAR 0x308A
320 #define EGL_GL_RENDERBUFFER 0x30B9
321 #define EGL_GL_TEXTURE_2D 0x30B1
322 #define EGL_GL_TEXTURE_LEVEL 0x30BC
323 #define EGL_GL_TEXTURE_3D 0x30B2
324 #define EGL_GL_TEXTURE_ZOFFSET 0x30BD
325 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x30B3
326 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x30B4
327 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x30B5
328 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x30B6
329 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x30B7
330 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x30B8
331 #define EGL_IMAGE_PRESERVED 0x30D2
332 #define EGL_NO_IMAGE EGL_CAST(EGLImage,0)
333 typedef EGLSync (EGLAPIENTRYP PFNEGLCREATESYNCPROC) (EGLDisplay dpy, EGLenum type, const EGLAttrib *attrib_list);
334 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCPROC) (EGLDisplay dpy, EGLSync sync);
335 typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCPROC) (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout);
336 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBPROC) (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib *value);
337 typedef EGLImage (EGLAPIENTRYP PFNEGLCREATEIMAGEPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib *attrib_list);
338 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEPROC) (EGLDisplay dpy, EGLImage image);
339 typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYPROC) (EGLenum platform, void *native_display, const EGLAttrib *attrib_list);
340 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEPROC) (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLAttrib *attrib_list);
341 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC) (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLAttrib *attrib_list);
342 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITSYNCPROC) (EGLDisplay dpy, EGLSync sync, EGLint flags);
343 #if EGL_EGL_PROTOTYPES
344 EGLAPI EGLSync EGLAPIENTRY eglCreateSync (EGLDisplay dpy, EGLenum type, const EGLAttrib *attrib_list);
345 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySync (EGLDisplay dpy, EGLSync sync);
346 EGLAPI EGLint EGLAPIENTRY eglClientWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout);
347 EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttrib (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib *value);
348 EGLAPI EGLImage EGLAPIENTRY eglCreateImage (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib *attrib_list);
349 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImage (EGLDisplay dpy, EGLImage image);
350 EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplay (EGLenum platform, void *native_display, const EGLAttrib *attrib_list);
351 EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformWindowSurface (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLAttrib *attrib_list);
352 EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformPixmapSurface (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLAttrib *attrib_list);
353 EGLAPI EGLBoolean EGLAPIENTRY eglWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags);
354 #endif
355 #endif /* EGL_VERSION_1_5 */
356
357 #ifdef __cplusplus
358 }
359 #endif
360
361 #endif