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