1 | /* |
2 | Simple DirectMedia Layer |
3 | Copyright (C) 1997-2021 Sam Lantinga <slouken@libsdl.org> |
4 | |
5 | This software is provided 'as-is', without any express or implied |
6 | warranty. In no event will the authors be held liable for any damages |
7 | arising from the use of this software. |
8 | |
9 | Permission is granted to anyone to use this software for any purpose, |
10 | including commercial applications, and to alter it and redistribute it |
11 | freely, subject to the following restrictions: |
12 | |
13 | 1. The origin of this software must not be misrepresented; you must not |
14 | claim that you wrote the original software. If you use this software |
15 | in a product, an acknowledgment in the product documentation would be |
16 | appreciated but is not required. |
17 | 2. Altered source versions must be plainly marked as such, and must not be |
18 | misrepresented as being the original software. |
19 | 3. This notice may not be removed or altered from any source distribution. |
20 | */ |
21 | |
22 | /** |
23 | * \file SDL_egl.h |
24 | * |
25 | * This is a simple file to encapsulate the EGL API headers. |
26 | */ |
27 | #if !defined(_MSC_VER) && !defined(__ANDROID__) |
28 | |
29 | #include <EGL/egl.h> |
30 | #include <EGL/eglext.h> |
31 | |
32 | #else /* _MSC_VER */ |
33 | |
34 | /* EGL headers for Visual Studio */ |
35 | |
36 | #ifndef __khrplatform_h_ |
37 | #define __khrplatform_h_ |
38 | |
39 | /* |
40 | ** Copyright (c) 2008-2009 The Khronos Group Inc. |
41 | ** |
42 | ** Permission is hereby granted, free of charge, to any person obtaining a |
43 | ** copy of this software and/or associated documentation files (the |
44 | ** "Materials"), to deal in the Materials without restriction, including |
45 | ** without limitation the rights to use, copy, modify, merge, publish, |
46 | ** distribute, sublicense, and/or sell copies of the Materials, and to |
47 | ** permit persons to whom the Materials are furnished to do so, subject to |
48 | ** the following conditions: |
49 | ** |
50 | ** The above copyright notice and this permission notice shall be included |
51 | ** in all copies or substantial portions of the Materials. |
52 | ** |
53 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
54 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
55 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
56 | ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
57 | ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
58 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
59 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. |
60 | */ |
61 | |
62 | /* Khronos platform-specific types and definitions. |
63 | * |
64 | * $Revision: 23298 $ on $Date: 2013-09-30 17:07:13 -0700 (Mon, 30 Sep 2013) $ |
65 | * |
66 | * Adopters may modify this file to suit their platform. Adopters are |
67 | * encouraged to submit platform specific modifications to the Khronos |
68 | * group so that they can be included in future versions of this file. |
69 | * Please submit changes by sending them to the public Khronos Bugzilla |
70 | * (http://khronos.org/bugzilla) by filing a bug against product |
71 | * "Khronos (general)" component "Registry". |
72 | * |
73 | * A predefined template which fills in some of the bug fields can be |
74 | * reached using http://tinyurl.com/khrplatform-h-bugreport, but you |
75 | * must create a Bugzilla login first. |
76 | * |
77 | * |
78 | * See the Implementer's Guidelines for information about where this file |
79 | * should be located on your system and for more details of its use: |
80 | * http://www.khronos.org/registry/implementers_guide.pdf |
81 | * |
82 | * This file should be included as |
83 | * #include <KHR/khrplatform.h> |
84 | * by Khronos client API header files that use its types and defines. |
85 | * |
86 | * The types in khrplatform.h should only be used to define API-specific types. |
87 | * |
88 | * Types defined in khrplatform.h: |
89 | * khronos_int8_t signed 8 bit |
90 | * khronos_uint8_t unsigned 8 bit |
91 | * khronos_int16_t signed 16 bit |
92 | * khronos_uint16_t unsigned 16 bit |
93 | * khronos_int32_t signed 32 bit |
94 | * khronos_uint32_t unsigned 32 bit |
95 | * khronos_int64_t signed 64 bit |
96 | * khronos_uint64_t unsigned 64 bit |
97 | * khronos_intptr_t signed same number of bits as a pointer |
98 | * khronos_uintptr_t unsigned same number of bits as a pointer |
99 | * khronos_ssize_t signed size |
100 | * khronos_usize_t unsigned size |
101 | * khronos_float_t signed 32 bit floating point |
102 | * khronos_time_ns_t unsigned 64 bit time in nanoseconds |
103 | * khronos_utime_nanoseconds_t unsigned time interval or absolute time in |
104 | * nanoseconds |
105 | * khronos_stime_nanoseconds_t signed time interval in nanoseconds |
106 | * khronos_boolean_enum_t enumerated boolean type. This should |
107 | * only be used as a base type when a client API's boolean type is |
108 | * an enum. Client APIs which use an integer or other type for |
109 | * booleans cannot use this as the base type for their boolean. |
110 | * |
111 | * Tokens defined in khrplatform.h: |
112 | * |
113 | * KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values. |
114 | * |
115 | * KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0. |
116 | * KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0. |
117 | * |
118 | * Calling convention macros defined in this file: |
119 | * KHRONOS_APICALL |
120 | * KHRONOS_APIENTRY |
121 | * KHRONOS_APIATTRIBUTES |
122 | * |
123 | * These may be used in function prototypes as: |
124 | * |
125 | * KHRONOS_APICALL void KHRONOS_APIENTRY funcname( |
126 | * int arg1, |
127 | * int arg2) KHRONOS_APIATTRIBUTES; |
128 | */ |
129 | |
130 | /*------------------------------------------------------------------------- |
131 | * Definition of KHRONOS_APICALL |
132 | *------------------------------------------------------------------------- |
133 | * This precedes the return type of the function in the function prototype. |
134 | */ |
135 | #if defined(_WIN32) && !defined(__SCITECH_SNAP__) && !defined(SDL_VIDEO_STATIC_ANGLE) |
136 | # define KHRONOS_APICALL __declspec(dllimport) |
137 | #elif defined (__SYMBIAN32__) |
138 | # define KHRONOS_APICALL IMPORT_C |
139 | #else |
140 | # define KHRONOS_APICALL |
141 | #endif |
142 | |
143 | /*------------------------------------------------------------------------- |
144 | * Definition of KHRONOS_APIENTRY |
145 | *------------------------------------------------------------------------- |
146 | * This follows the return type of the function and precedes the function |
147 | * name in the function prototype. |
148 | */ |
149 | #if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__) |
150 | /* Win32 but not WinCE */ |
151 | # define KHRONOS_APIENTRY __stdcall |
152 | #else |
153 | # define KHRONOS_APIENTRY |
154 | #endif |
155 | |
156 | /*------------------------------------------------------------------------- |
157 | * Definition of KHRONOS_APIATTRIBUTES |
158 | *------------------------------------------------------------------------- |
159 | * This follows the closing parenthesis of the function prototype arguments. |
160 | */ |
161 | #if defined (__ARMCC_2__) |
162 | #define KHRONOS_APIATTRIBUTES __softfp |
163 | #else |
164 | #define KHRONOS_APIATTRIBUTES |
165 | #endif |
166 | |
167 | /*------------------------------------------------------------------------- |
168 | * basic type definitions |
169 | *-----------------------------------------------------------------------*/ |
170 | #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) |
171 | |
172 | |
173 | /* |
174 | * Using <stdint.h> |
175 | */ |
176 | #include <stdint.h> |
177 | typedef int32_t khronos_int32_t; |
178 | typedef uint32_t khronos_uint32_t; |
179 | typedef int64_t khronos_int64_t; |
180 | typedef uint64_t khronos_uint64_t; |
181 | #define KHRONOS_SUPPORT_INT64 1 |
182 | #define KHRONOS_SUPPORT_FLOAT 1 |
183 | |
184 | #elif defined(__VMS ) || defined(__sgi) |
185 | |
186 | /* |
187 | * Using <inttypes.h> |
188 | */ |
189 | #include <inttypes.h> |
190 | typedef int32_t khronos_int32_t; |
191 | typedef uint32_t khronos_uint32_t; |
192 | typedef int64_t khronos_int64_t; |
193 | typedef uint64_t khronos_uint64_t; |
194 | #define KHRONOS_SUPPORT_INT64 1 |
195 | #define KHRONOS_SUPPORT_FLOAT 1 |
196 | |
197 | #elif defined(_WIN32) && !defined(__SCITECH_SNAP__) |
198 | |
199 | /* |
200 | * Win32 |
201 | */ |
202 | typedef __int32 khronos_int32_t; |
203 | typedef unsigned __int32 khronos_uint32_t; |
204 | typedef __int64 khronos_int64_t; |
205 | typedef unsigned __int64 khronos_uint64_t; |
206 | #define KHRONOS_SUPPORT_INT64 1 |
207 | #define KHRONOS_SUPPORT_FLOAT 1 |
208 | |
209 | #elif defined(__sun__) || defined(__digital__) |
210 | |
211 | /* |
212 | * Sun or Digital |
213 | */ |
214 | typedef int khronos_int32_t; |
215 | typedef unsigned int khronos_uint32_t; |
216 | #if defined(__arch64__) || defined(_LP64) |
217 | typedef long int khronos_int64_t; |
218 | typedef unsigned long int khronos_uint64_t; |
219 | #else |
220 | typedef long long int khronos_int64_t; |
221 | typedef unsigned long long int khronos_uint64_t; |
222 | #endif /* __arch64__ */ |
223 | #define KHRONOS_SUPPORT_INT64 1 |
224 | #define KHRONOS_SUPPORT_FLOAT 1 |
225 | |
226 | #elif 0 |
227 | |
228 | /* |
229 | * Hypothetical platform with no float or int64 support |
230 | */ |
231 | typedef int khronos_int32_t; |
232 | typedef unsigned int khronos_uint32_t; |
233 | #define KHRONOS_SUPPORT_INT64 0 |
234 | #define KHRONOS_SUPPORT_FLOAT 0 |
235 | |
236 | #else |
237 | |
238 | /* |
239 | * Generic fallback |
240 | */ |
241 | #include <stdint.h> |
242 | typedef int32_t khronos_int32_t; |
243 | typedef uint32_t khronos_uint32_t; |
244 | typedef int64_t khronos_int64_t; |
245 | typedef uint64_t khronos_uint64_t; |
246 | #define KHRONOS_SUPPORT_INT64 1 |
247 | #define KHRONOS_SUPPORT_FLOAT 1 |
248 | |
249 | #endif |
250 | |
251 | |
252 | /* |
253 | * Types that are (so far) the same on all platforms |
254 | */ |
255 | typedef signed char khronos_int8_t; |
256 | typedef unsigned char khronos_uint8_t; |
257 | typedef signed short int khronos_int16_t; |
258 | typedef unsigned short int khronos_uint16_t; |
259 | |
260 | /* |
261 | * Types that differ between LLP64 and LP64 architectures - in LLP64, |
262 | * pointers are 64 bits, but 'long' is still 32 bits. Win64 appears |
263 | * to be the only LLP64 architecture in current use. |
264 | */ |
265 | #ifdef _WIN64 |
266 | typedef signed long long int khronos_intptr_t; |
267 | typedef unsigned long long int khronos_uintptr_t; |
268 | typedef signed long long int khronos_ssize_t; |
269 | typedef unsigned long long int khronos_usize_t; |
270 | #else |
271 | typedef signed long int khronos_intptr_t; |
272 | typedef unsigned long int khronos_uintptr_t; |
273 | typedef signed long int khronos_ssize_t; |
274 | typedef unsigned long int khronos_usize_t; |
275 | #endif |
276 | |
277 | #if KHRONOS_SUPPORT_FLOAT |
278 | /* |
279 | * Float type |
280 | */ |
281 | typedef float khronos_float_t; |
282 | #endif |
283 | |
284 | #if KHRONOS_SUPPORT_INT64 |
285 | /* Time types |
286 | * |
287 | * These types can be used to represent a time interval in nanoseconds or |
288 | * an absolute Unadjusted System Time. Unadjusted System Time is the number |
289 | * of nanoseconds since some arbitrary system event (e.g. since the last |
290 | * time the system booted). The Unadjusted System Time is an unsigned |
291 | * 64 bit value that wraps back to 0 every 584 years. Time intervals |
292 | * may be either signed or unsigned. |
293 | */ |
294 | typedef khronos_uint64_t khronos_utime_nanoseconds_t; |
295 | typedef khronos_int64_t khronos_stime_nanoseconds_t; |
296 | #endif |
297 | |
298 | /* |
299 | * Dummy value used to pad enum types to 32 bits. |
300 | */ |
301 | #ifndef KHRONOS_MAX_ENUM |
302 | #define KHRONOS_MAX_ENUM 0x7FFFFFFF |
303 | #endif |
304 | |
305 | /* |
306 | * Enumerated boolean type |
307 | * |
308 | * Values other than zero should be considered to be true. Therefore |
309 | * comparisons should not be made against KHRONOS_TRUE. |
310 | */ |
311 | typedef enum { |
312 | KHRONOS_FALSE = 0, |
313 | KHRONOS_TRUE = 1, |
314 | KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM |
315 | } khronos_boolean_enum_t; |
316 | |
317 | #endif /* __khrplatform_h_ */ |
318 | |
319 | |
320 | #ifndef __eglplatform_h_ |
321 | #define __eglplatform_h_ |
322 | |
323 | /* |
324 | ** Copyright (c) 2007-2009 The Khronos Group Inc. |
325 | ** |
326 | ** Permission is hereby granted, free of charge, to any person obtaining a |
327 | ** copy of this software and/or associated documentation files (the |
328 | ** "Materials"), to deal in the Materials without restriction, including |
329 | ** without limitation the rights to use, copy, modify, merge, publish, |
330 | ** distribute, sublicense, and/or sell copies of the Materials, and to |
331 | ** permit persons to whom the Materials are furnished to do so, subject to |
332 | ** the following conditions: |
333 | ** |
334 | ** The above copyright notice and this permission notice shall be included |
335 | ** in all copies or substantial portions of the Materials. |
336 | ** |
337 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
338 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
339 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
340 | ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
341 | ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
342 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
343 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. |
344 | */ |
345 | |
346 | /* Platform-specific types and definitions for egl.h |
347 | * $Revision: 12306 $ on $Date: 2010-08-25 09:51:28 -0700 (Wed, 25 Aug 2010) $ |
348 | * |
349 | * Adopters may modify khrplatform.h and this file to suit their platform. |
350 | * You are encouraged to submit all modifications to the Khronos group so that |
351 | * they can be included in future versions of this file. Please submit changes |
352 | * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla) |
353 | * by filing a bug against product "EGL" component "Registry". |
354 | */ |
355 | |
356 | /*#include <KHR/khrplatform.h>*/ |
357 | |
358 | /* Macros used in EGL function prototype declarations. |
359 | * |
360 | * EGL functions should be prototyped as: |
361 | * |
362 | * EGLAPI return-type EGLAPIENTRY eglFunction(arguments); |
363 | * typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments); |
364 | * |
365 | * KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h |
366 | */ |
367 | |
368 | #ifndef EGLAPI |
369 | #define EGLAPI KHRONOS_APICALL |
370 | #endif |
371 | |
372 | #ifndef EGLAPIENTRY |
373 | #define EGLAPIENTRY KHRONOS_APIENTRY |
374 | #endif |
375 | #define EGLAPIENTRYP EGLAPIENTRY* |
376 | |
377 | /* The types NativeDisplayType, NativeWindowType, and NativePixmapType |
378 | * are aliases of window-system-dependent types, such as X Display * or |
379 | * Windows Device Context. They must be defined in platform-specific |
380 | * code below. The EGL-prefixed versions of Native*Type are the same |
381 | * types, renamed in EGL 1.3 so all types in the API start with "EGL". |
382 | * |
383 | * Khronos STRONGLY RECOMMENDS that you use the default definitions |
384 | * provided below, since these changes affect both binary and source |
385 | * portability of applications using EGL running on different EGL |
386 | * implementations. |
387 | */ |
388 | |
389 | #if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */ |
390 | #ifndef WIN32_LEAN_AND_MEAN |
391 | #define WIN32_LEAN_AND_MEAN 1 |
392 | #endif |
393 | #ifndef NOMINMAX /* don't define min() and max(). */ |
394 | #define NOMINMAX |
395 | #endif |
396 | #include <windows.h> |
397 | |
398 | #if __WINRT__ |
399 | #include <Unknwn.h> |
400 | typedef IUnknown * EGLNativeWindowType; |
401 | typedef IUnknown * EGLNativePixmapType; |
402 | typedef IUnknown * EGLNativeDisplayType; |
403 | #else |
404 | typedef HDC EGLNativeDisplayType; |
405 | typedef HBITMAP EGLNativePixmapType; |
406 | typedef HWND EGLNativeWindowType; |
407 | #endif |
408 | |
409 | #elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */ |
410 | |
411 | typedef int EGLNativeDisplayType; |
412 | typedef void *EGLNativeWindowType; |
413 | typedef void *EGLNativePixmapType; |
414 | |
415 | #elif defined(WL_EGL_PLATFORM) |
416 | |
417 | typedef struct wl_display *EGLNativeDisplayType; |
418 | typedef struct wl_egl_pixmap *EGLNativePixmapType; |
419 | typedef struct wl_egl_window *EGLNativeWindowType; |
420 | |
421 | #elif defined(__GBM__) |
422 | |
423 | typedef struct gbm_device *EGLNativeDisplayType; |
424 | typedef struct gbm_bo *EGLNativePixmapType; |
425 | typedef void *EGLNativeWindowType; |
426 | |
427 | #elif defined(__ANDROID__) /* Android */ |
428 | |
429 | struct ANativeWindow; |
430 | struct egl_native_pixmap_t; |
431 | |
432 | typedef struct ANativeWindow *EGLNativeWindowType; |
433 | typedef struct egl_native_pixmap_t *EGLNativePixmapType; |
434 | typedef void *EGLNativeDisplayType; |
435 | |
436 | #elif defined(MIR_EGL_PLATFORM) |
437 | |
438 | #include <mir_toolkit/mir_client_library.h> |
439 | typedef MirEGLNativeDisplayType EGLNativeDisplayType; |
440 | typedef void *EGLNativePixmapType; |
441 | typedef MirEGLNativeWindowType EGLNativeWindowType; |
442 | |
443 | #elif defined(__unix__) |
444 | |
445 | #ifdef MESA_EGL_NO_X11_HEADERS |
446 | |
447 | typedef void *EGLNativeDisplayType; |
448 | typedef khronos_uintptr_t EGLNativePixmapType; |
449 | typedef khronos_uintptr_t EGLNativeWindowType; |
450 | |
451 | #else |
452 | |
453 | /* X11 (tentative) */ |
454 | #include <X11/Xlib.h> |
455 | #include <X11/Xutil.h> |
456 | |
457 | typedef Display *EGLNativeDisplayType; |
458 | typedef Pixmap EGLNativePixmapType; |
459 | typedef Window EGLNativeWindowType; |
460 | |
461 | #endif /* MESA_EGL_NO_X11_HEADERS */ |
462 | |
463 | #else |
464 | #error "Platform not recognized" |
465 | #endif |
466 | |
467 | /* EGL 1.2 types, renamed for consistency in EGL 1.3 */ |
468 | typedef EGLNativeDisplayType NativeDisplayType; |
469 | typedef EGLNativePixmapType NativePixmapType; |
470 | typedef EGLNativeWindowType NativeWindowType; |
471 | |
472 | |
473 | /* Define EGLint. This must be a signed integral type large enough to contain |
474 | * all legal attribute names and values passed into and out of EGL, whether |
475 | * their type is boolean, bitmask, enumerant (symbolic constant), integer, |
476 | * handle, or other. While in general a 32-bit integer will suffice, if |
477 | * handles are 64 bit types, then EGLint should be defined as a signed 64-bit |
478 | * integer type. |
479 | */ |
480 | typedef khronos_int32_t EGLint; |
481 | |
482 | #endif /* __eglplatform_h */ |
483 | |
484 | #ifndef __egl_h_ |
485 | #define __egl_h_ 1 |
486 | |
487 | #ifdef __cplusplus |
488 | extern "C" { |
489 | #endif |
490 | |
491 | /* |
492 | ** Copyright (c) 2013-2015 The Khronos Group Inc. |
493 | ** |
494 | ** Permission is hereby granted, free of charge, to any person obtaining a |
495 | ** copy of this software and/or associated documentation files (the |
496 | ** "Materials"), to deal in the Materials without restriction, including |
497 | ** without limitation the rights to use, copy, modify, merge, publish, |
498 | ** distribute, sublicense, and/or sell copies of the Materials, and to |
499 | ** permit persons to whom the Materials are furnished to do so, subject to |
500 | ** the following conditions: |
501 | ** |
502 | ** The above copyright notice and this permission notice shall be included |
503 | ** in all copies or substantial portions of the Materials. |
504 | ** |
505 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
506 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
507 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
508 | ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
509 | ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
510 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
511 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. |
512 | */ |
513 | /* |
514 | ** This header is generated from the Khronos OpenGL / OpenGL ES XML |
515 | ** API Registry. The current version of the Registry, generator scripts |
516 | ** used to make the header, and the header can be found at |
517 | ** http://www.opengl.org/registry/ |
518 | ** |
519 | ** Khronos $Revision: 31566 $ on $Date: 2015-06-23 08:48:48 -0700 (Tue, 23 Jun 2015) $ |
520 | */ |
521 | |
522 | /*#include <EGL/eglplatform.h>*/ |
523 | |
524 | /* Generated on date 20150623 */ |
525 | |
526 | /* Generated C header for: |
527 | * API: egl |
528 | * Versions considered: .* |
529 | * Versions emitted: .* |
530 | * Default extensions included: None |
531 | * Additional extensions included: _nomatch_^ |
532 | * Extensions removed: _nomatch_^ |
533 | */ |
534 | |
535 | #ifndef EGL_VERSION_1_0 |
536 | #define EGL_VERSION_1_0 1 |
537 | typedef unsigned int EGLBoolean; |
538 | typedef void *EGLDisplay; |
539 | typedef void *EGLConfig; |
540 | typedef void *EGLSurface; |
541 | typedef void *EGLContext; |
542 | typedef void (*__eglMustCastToProperFunctionPointerType)(void); |
543 | #define EGL_ALPHA_SIZE 0x3021 |
544 | #define EGL_BAD_ACCESS 0x3002 |
545 | #define EGL_BAD_ALLOC 0x3003 |
546 | #define EGL_BAD_ATTRIBUTE 0x3004 |
547 | #define EGL_BAD_CONFIG 0x3005 |
548 | #define EGL_BAD_CONTEXT 0x3006 |
549 | #define EGL_BAD_CURRENT_SURFACE 0x3007 |
550 | #define EGL_BAD_DISPLAY 0x3008 |
551 | #define EGL_BAD_MATCH 0x3009 |
552 | #define EGL_BAD_NATIVE_PIXMAP 0x300A |
553 | #define EGL_BAD_NATIVE_WINDOW 0x300B |
554 | #define EGL_BAD_PARAMETER 0x300C |
555 | #define EGL_BAD_SURFACE 0x300D |
556 | #define EGL_BLUE_SIZE 0x3022 |
557 | #define EGL_BUFFER_SIZE 0x3020 |
558 | #define EGL_CONFIG_CAVEAT 0x3027 |
559 | #define EGL_CONFIG_ID 0x3028 |
560 | #define EGL_CORE_NATIVE_ENGINE 0x305B |
561 | #define EGL_DEPTH_SIZE 0x3025 |
562 | #define EGL_DONT_CARE ((EGLint)-1) |
563 | #define EGL_DRAW 0x3059 |
564 | #define EGL_EXTENSIONS 0x3055 |
565 | #define EGL_FALSE 0 |
566 | #define EGL_GREEN_SIZE 0x3023 |
567 | #define EGL_HEIGHT 0x3056 |
568 | #define EGL_LARGEST_PBUFFER 0x3058 |
569 | #define EGL_LEVEL 0x3029 |
570 | #define EGL_MAX_PBUFFER_HEIGHT 0x302A |
571 | #define EGL_MAX_PBUFFER_PIXELS 0x302B |
572 | #define EGL_MAX_PBUFFER_WIDTH 0x302C |
573 | #define EGL_NATIVE_RENDERABLE 0x302D |
574 | #define EGL_NATIVE_VISUAL_ID 0x302E |
575 | #define EGL_NATIVE_VISUAL_TYPE 0x302F |
576 | #define EGL_NONE 0x3038 |
577 | #define EGL_NON_CONFORMANT_CONFIG 0x3051 |
578 | #define EGL_NOT_INITIALIZED 0x3001 |
579 | #define EGL_NO_CONTEXT ((EGLContext)0) |
580 | #define EGL_NO_DISPLAY ((EGLDisplay)0) |
581 | #define EGL_NO_SURFACE ((EGLSurface)0) |
582 | #define EGL_PBUFFER_BIT 0x0001 |
583 | #define EGL_PIXMAP_BIT 0x0002 |
584 | #define EGL_READ 0x305A |
585 | #define EGL_RED_SIZE 0x3024 |
586 | #define EGL_SAMPLES 0x3031 |
587 | #define EGL_SAMPLE_BUFFERS 0x3032 |
588 | #define EGL_SLOW_CONFIG 0x3050 |
589 | #define EGL_STENCIL_SIZE 0x3026 |
590 | #define EGL_SUCCESS 0x3000 |
591 | #define EGL_SURFACE_TYPE 0x3033 |
592 | #define EGL_TRANSPARENT_BLUE_VALUE 0x3035 |
593 | #define EGL_TRANSPARENT_GREEN_VALUE 0x3036 |
594 | #define EGL_TRANSPARENT_RED_VALUE 0x3037 |
595 | #define EGL_TRANSPARENT_RGB 0x3052 |
596 | #define EGL_TRANSPARENT_TYPE 0x3034 |
597 | #define EGL_TRUE 1 |
598 | #define EGL_VENDOR 0x3053 |
599 | #define EGL_VERSION 0x3054 |
600 | #define EGL_WIDTH 0x3057 |
601 | #define EGL_WINDOW_BIT 0x0004 |
602 | EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig (EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config); |
603 | EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target); |
604 | EGLAPI EGLContext EGLAPIENTRY eglCreateContext (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list); |
605 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface (EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list); |
606 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list); |
607 | EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list); |
608 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext (EGLDisplay dpy, EGLContext ctx); |
609 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface (EGLDisplay dpy, EGLSurface surface); |
610 | EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value); |
611 | EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs (EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config); |
612 | EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay (void); |
613 | EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface (EGLint readdraw); |
614 | EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay (EGLNativeDisplayType display_id); |
615 | EGLAPI EGLint EGLAPIENTRY eglGetError (void); |
616 | EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname); |
617 | EGLAPI EGLBoolean EGLAPIENTRY eglInitialize (EGLDisplay dpy, EGLint *major, EGLint *minor); |
618 | EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx); |
619 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value); |
620 | EGLAPI const char *EGLAPIENTRY eglQueryString (EGLDisplay dpy, EGLint name); |
621 | EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value); |
622 | EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers (EGLDisplay dpy, EGLSurface surface); |
623 | EGLAPI EGLBoolean EGLAPIENTRY eglTerminate (EGLDisplay dpy); |
624 | EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL (void); |
625 | EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative (EGLint engine); |
626 | #endif /* EGL_VERSION_1_0 */ |
627 | |
628 | #ifndef EGL_VERSION_1_1 |
629 | #define EGL_VERSION_1_1 1 |
630 | #define EGL_BACK_BUFFER 0x3084 |
631 | #define EGL_BIND_TO_TEXTURE_RGB 0x3039 |
632 | #define EGL_BIND_TO_TEXTURE_RGBA 0x303A |
633 | #define EGL_CONTEXT_LOST 0x300E |
634 | #define EGL_MIN_SWAP_INTERVAL 0x303B |
635 | #define EGL_MAX_SWAP_INTERVAL 0x303C |
636 | #define EGL_MIPMAP_TEXTURE 0x3082 |
637 | #define EGL_MIPMAP_LEVEL 0x3083 |
638 | #define EGL_NO_TEXTURE 0x305C |
639 | #define EGL_TEXTURE_2D 0x305F |
640 | #define EGL_TEXTURE_FORMAT 0x3080 |
641 | #define EGL_TEXTURE_RGB 0x305D |
642 | #define EGL_TEXTURE_RGBA 0x305E |
643 | #define EGL_TEXTURE_TARGET 0x3081 |
644 | EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer); |
645 | EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer); |
646 | EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value); |
647 | EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval (EGLDisplay dpy, EGLint interval); |
648 | #endif /* EGL_VERSION_1_1 */ |
649 | |
650 | #ifndef EGL_VERSION_1_2 |
651 | #define EGL_VERSION_1_2 1 |
652 | typedef unsigned int EGLenum; |
653 | typedef void *EGLClientBuffer; |
654 | #define EGL_ALPHA_FORMAT 0x3088 |
655 | #define EGL_ALPHA_FORMAT_NONPRE 0x308B |
656 | #define EGL_ALPHA_FORMAT_PRE 0x308C |
657 | #define EGL_ALPHA_MASK_SIZE 0x303E |
658 | #define EGL_BUFFER_PRESERVED 0x3094 |
659 | #define EGL_BUFFER_DESTROYED 0x3095 |
660 | #define EGL_CLIENT_APIS 0x308D |
661 | #define EGL_COLORSPACE 0x3087 |
662 | #define EGL_COLORSPACE_sRGB 0x3089 |
663 | #define EGL_COLORSPACE_LINEAR 0x308A |
664 | #define EGL_COLOR_BUFFER_TYPE 0x303F |
665 | #define EGL_CONTEXT_CLIENT_TYPE 0x3097 |
666 | #define EGL_DISPLAY_SCALING 10000 |
667 | #define EGL_HORIZONTAL_RESOLUTION 0x3090 |
668 | #define EGL_LUMINANCE_BUFFER 0x308F |
669 | #define EGL_LUMINANCE_SIZE 0x303D |
670 | #define EGL_OPENGL_ES_BIT 0x0001 |
671 | #define EGL_OPENVG_BIT 0x0002 |
672 | #define EGL_OPENGL_ES_API 0x30A0 |
673 | #define EGL_OPENVG_API 0x30A1 |
674 | #define EGL_OPENVG_IMAGE 0x3096 |
675 | #define EGL_PIXEL_ASPECT_RATIO 0x3092 |
676 | #define EGL_RENDERABLE_TYPE 0x3040 |
677 | #define EGL_RENDER_BUFFER 0x3086 |
678 | #define EGL_RGB_BUFFER 0x308E |
679 | #define EGL_SINGLE_BUFFER 0x3085 |
680 | #define EGL_SWAP_BEHAVIOR 0x3093 |
681 | #define EGL_UNKNOWN ((EGLint)-1) |
682 | #define EGL_VERTICAL_RESOLUTION 0x3091 |
683 | EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI (EGLenum api); |
684 | EGLAPI EGLenum EGLAPIENTRY eglQueryAPI (void); |
685 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list); |
686 | EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread (void); |
687 | EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient (void); |
688 | #endif /* EGL_VERSION_1_2 */ |
689 | |
690 | #ifndef EGL_VERSION_1_3 |
691 | #define EGL_VERSION_1_3 1 |
692 | #define EGL_CONFORMANT 0x3042 |
693 | #define EGL_CONTEXT_CLIENT_VERSION 0x3098 |
694 | #define EGL_MATCH_NATIVE_PIXMAP 0x3041 |
695 | #define EGL_OPENGL_ES2_BIT 0x0004 |
696 | #define EGL_VG_ALPHA_FORMAT 0x3088 |
697 | #define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B |
698 | #define EGL_VG_ALPHA_FORMAT_PRE 0x308C |
699 | #define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040 |
700 | #define EGL_VG_COLORSPACE 0x3087 |
701 | #define EGL_VG_COLORSPACE_sRGB 0x3089 |
702 | #define EGL_VG_COLORSPACE_LINEAR 0x308A |
703 | #define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020 |
704 | #endif /* EGL_VERSION_1_3 */ |
705 | |
706 | #ifndef EGL_VERSION_1_4 |
707 | #define EGL_VERSION_1_4 1 |
708 | #define EGL_DEFAULT_DISPLAY ((EGLNativeDisplayType)0) |
709 | #define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200 |
710 | #define EGL_MULTISAMPLE_RESOLVE 0x3099 |
711 | #define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A |
712 | #define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B |
713 | #define EGL_OPENGL_API 0x30A2 |
714 | #define EGL_OPENGL_BIT 0x0008 |
715 | #define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400 |
716 | EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext (void); |
717 | #endif /* EGL_VERSION_1_4 */ |
718 | |
719 | #ifndef EGL_VERSION_1_5 |
720 | #define EGL_VERSION_1_5 1 |
721 | typedef void *EGLSync; |
722 | typedef intptr_t EGLAttrib; |
723 | typedef khronos_utime_nanoseconds_t EGLTime; |
724 | typedef void *EGLImage; |
725 | #define EGL_CONTEXT_MAJOR_VERSION 0x3098 |
726 | #define EGL_CONTEXT_MINOR_VERSION 0x30FB |
727 | #define EGL_CONTEXT_OPENGL_PROFILE_MASK 0x30FD |
728 | #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD |
729 | #define EGL_NO_RESET_NOTIFICATION 0x31BE |
730 | #define EGL_LOSE_CONTEXT_ON_RESET 0x31BF |
731 | #define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT 0x00000001 |
732 | #define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT 0x00000002 |
733 | #define EGL_CONTEXT_OPENGL_DEBUG 0x31B0 |
734 | #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1 |
735 | #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2 |
736 | #define EGL_OPENGL_ES3_BIT 0x00000040 |
737 | #define EGL_CL_EVENT_HANDLE 0x309C |
738 | #define EGL_SYNC_CL_EVENT 0x30FE |
739 | #define EGL_SYNC_CL_EVENT_COMPLETE 0x30FF |
740 | #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE 0x30F0 |
741 | #define EGL_SYNC_TYPE 0x30F7 |
742 | #define EGL_SYNC_STATUS 0x30F1 |
743 | #define EGL_SYNC_CONDITION 0x30F8 |
744 | #define EGL_SIGNALED 0x30F2 |
745 | #define EGL_UNSIGNALED 0x30F3 |
746 | #define EGL_SYNC_FLUSH_COMMANDS_BIT 0x0001 |
747 | #define EGL_FOREVER 0xFFFFFFFFFFFFFFFFull |
748 | #define EGL_TIMEOUT_EXPIRED 0x30F5 |
749 | #define EGL_CONDITION_SATISFIED 0x30F6 |
750 | #define EGL_NO_SYNC ((EGLSync)0) |
751 | #define EGL_SYNC_FENCE 0x30F9 |
752 | #define EGL_GL_COLORSPACE 0x309D |
753 | #define EGL_GL_COLORSPACE_SRGB 0x3089 |
754 | #define EGL_GL_COLORSPACE_LINEAR 0x308A |
755 | #define EGL_GL_RENDERBUFFER 0x30B9 |
756 | #define EGL_GL_TEXTURE_2D 0x30B1 |
757 | #define EGL_GL_TEXTURE_LEVEL 0x30BC |
758 | #define EGL_GL_TEXTURE_3D 0x30B2 |
759 | #define EGL_GL_TEXTURE_ZOFFSET 0x30BD |
760 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x30B3 |
761 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x30B4 |
762 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x30B5 |
763 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x30B6 |
764 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x30B7 |
765 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x30B8 |
766 | #define EGL_IMAGE_PRESERVED 0x30D2 |
767 | #define EGL_NO_IMAGE ((EGLImage)0) |
768 | EGLAPI EGLSync EGLAPIENTRY eglCreateSync (EGLDisplay dpy, EGLenum type, const EGLAttrib *attrib_list); |
769 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroySync (EGLDisplay dpy, EGLSync sync); |
770 | EGLAPI EGLint EGLAPIENTRY eglClientWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout); |
771 | EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttrib (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib *value); |
772 | EGLAPI EGLImage EGLAPIENTRY eglCreateImage (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib *attrib_list); |
773 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImage (EGLDisplay dpy, EGLImage image); |
774 | EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplay (EGLenum platform, void *native_display, const EGLAttrib *attrib_list); |
775 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformWindowSurface (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLAttrib *attrib_list); |
776 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformPixmapSurface (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLAttrib *attrib_list); |
777 | EGLAPI EGLBoolean EGLAPIENTRY eglWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags); |
778 | #endif /* EGL_VERSION_1_5 */ |
779 | |
780 | #ifdef __cplusplus |
781 | } |
782 | #endif |
783 | |
784 | #endif /* __egl_h_ */ |
785 | |
786 | |
787 | |
788 | #ifndef __eglext_h_ |
789 | #define __eglext_h_ 1 |
790 | |
791 | #ifdef __cplusplus |
792 | extern "C" { |
793 | #endif |
794 | |
795 | /* |
796 | ** Copyright (c) 2013-2015 The Khronos Group Inc. |
797 | ** |
798 | ** Permission is hereby granted, free of charge, to any person obtaining a |
799 | ** copy of this software and/or associated documentation files (the |
800 | ** "Materials"), to deal in the Materials without restriction, including |
801 | ** without limitation the rights to use, copy, modify, merge, publish, |
802 | ** distribute, sublicense, and/or sell copies of the Materials, and to |
803 | ** permit persons to whom the Materials are furnished to do so, subject to |
804 | ** the following conditions: |
805 | ** |
806 | ** The above copyright notice and this permission notice shall be included |
807 | ** in all copies or substantial portions of the Materials. |
808 | ** |
809 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
810 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
811 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
812 | ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
813 | ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
814 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
815 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. |
816 | */ |
817 | /* |
818 | ** This header is generated from the Khronos OpenGL / OpenGL ES XML |
819 | ** API Registry. The current version of the Registry, generator scripts |
820 | ** used to make the header, and the header can be found at |
821 | ** http://www.opengl.org/registry/ |
822 | ** |
823 | ** Khronos $Revision: 31566 $ on $Date: 2015-06-23 08:48:48 -0700 (Tue, 23 Jun 2015) $ |
824 | */ |
825 | |
826 | /*#include <EGL/eglplatform.h>*/ |
827 | |
828 | #define EGL_EGLEXT_VERSION 20150623 |
829 | |
830 | /* Generated C header for: |
831 | * API: egl |
832 | * Versions considered: .* |
833 | * Versions emitted: _nomatch_^ |
834 | * Default extensions included: egl |
835 | * Additional extensions included: _nomatch_^ |
836 | * Extensions removed: _nomatch_^ |
837 | */ |
838 | |
839 | #ifndef EGL_KHR_cl_event |
840 | #define EGL_KHR_cl_event 1 |
841 | #define EGL_CL_EVENT_HANDLE_KHR 0x309C |
842 | #define EGL_SYNC_CL_EVENT_KHR 0x30FE |
843 | #define EGL_SYNC_CL_EVENT_COMPLETE_KHR 0x30FF |
844 | #endif /* EGL_KHR_cl_event */ |
845 | |
846 | #ifndef EGL_KHR_cl_event2 |
847 | #define EGL_KHR_cl_event2 1 |
848 | typedef void *EGLSyncKHR; |
849 | typedef intptr_t EGLAttribKHR; |
850 | typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNC64KHRPROC) (EGLDisplay dpy, EGLenum type, const EGLAttribKHR *attrib_list); |
851 | #ifdef EGL_EGLEXT_PROTOTYPES |
852 | EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSync64KHR (EGLDisplay dpy, EGLenum type, const EGLAttribKHR *attrib_list); |
853 | #endif |
854 | #endif /* EGL_KHR_cl_event2 */ |
855 | |
856 | #ifndef EGL_KHR_client_get_all_proc_addresses |
857 | #define EGL_KHR_client_get_all_proc_addresses 1 |
858 | #endif /* EGL_KHR_client_get_all_proc_addresses */ |
859 | |
860 | #ifndef EGL_KHR_config_attribs |
861 | #define EGL_KHR_config_attribs 1 |
862 | #define EGL_CONFORMANT_KHR 0x3042 |
863 | #define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020 |
864 | #define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040 |
865 | #endif /* EGL_KHR_config_attribs */ |
866 | |
867 | #ifndef EGL_KHR_create_context |
868 | #define EGL_KHR_create_context 1 |
869 | #define EGL_CONTEXT_MAJOR_VERSION_KHR 0x3098 |
870 | #define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB |
871 | #define EGL_CONTEXT_FLAGS_KHR 0x30FC |
872 | #define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD |
873 | #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD |
874 | #define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE |
875 | #define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF |
876 | #define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001 |
877 | #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002 |
878 | #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004 |
879 | #define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001 |
880 | #define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002 |
881 | #define EGL_OPENGL_ES3_BIT_KHR 0x00000040 |
882 | #endif /* EGL_KHR_create_context */ |
883 | |
884 | #ifndef EGL_KHR_create_context_no_error |
885 | #define EGL_KHR_create_context_no_error 1 |
886 | #define EGL_CONTEXT_OPENGL_NO_ERROR_KHR 0x31B3 |
887 | #endif /* EGL_KHR_create_context_no_error */ |
888 | |
889 | #ifndef EGL_KHR_fence_sync |
890 | #define EGL_KHR_fence_sync 1 |
891 | typedef khronos_utime_nanoseconds_t EGLTimeKHR; |
892 | #ifdef KHRONOS_SUPPORT_INT64 |
893 | #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0 |
894 | #define EGL_SYNC_CONDITION_KHR 0x30F8 |
895 | #define EGL_SYNC_FENCE_KHR 0x30F9 |
896 | typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list); |
897 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync); |
898 | typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout); |
899 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value); |
900 | #ifdef EGL_EGLEXT_PROTOTYPES |
901 | EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list); |
902 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR (EGLDisplay dpy, EGLSyncKHR sync); |
903 | EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout); |
904 | EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value); |
905 | #endif |
906 | #endif /* KHRONOS_SUPPORT_INT64 */ |
907 | #endif /* EGL_KHR_fence_sync */ |
908 | |
909 | #ifndef EGL_KHR_get_all_proc_addresses |
910 | #define EGL_KHR_get_all_proc_addresses 1 |
911 | #endif /* EGL_KHR_get_all_proc_addresses */ |
912 | |
913 | #ifndef EGL_KHR_gl_colorspace |
914 | #define EGL_KHR_gl_colorspace 1 |
915 | #define EGL_GL_COLORSPACE_KHR 0x309D |
916 | #define EGL_GL_COLORSPACE_SRGB_KHR 0x3089 |
917 | #define EGL_GL_COLORSPACE_LINEAR_KHR 0x308A |
918 | #endif /* EGL_KHR_gl_colorspace */ |
919 | |
920 | #ifndef EGL_KHR_gl_renderbuffer_image |
921 | #define EGL_KHR_gl_renderbuffer_image 1 |
922 | #define EGL_GL_RENDERBUFFER_KHR 0x30B9 |
923 | #endif /* EGL_KHR_gl_renderbuffer_image */ |
924 | |
925 | #ifndef EGL_KHR_gl_texture_2D_image |
926 | #define EGL_KHR_gl_texture_2D_image 1 |
927 | #define EGL_GL_TEXTURE_2D_KHR 0x30B1 |
928 | #define EGL_GL_TEXTURE_LEVEL_KHR 0x30BC |
929 | #endif /* EGL_KHR_gl_texture_2D_image */ |
930 | |
931 | #ifndef EGL_KHR_gl_texture_3D_image |
932 | #define EGL_KHR_gl_texture_3D_image 1 |
933 | #define EGL_GL_TEXTURE_3D_KHR 0x30B2 |
934 | #define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD |
935 | #endif /* EGL_KHR_gl_texture_3D_image */ |
936 | |
937 | #ifndef EGL_KHR_gl_texture_cubemap_image |
938 | #define EGL_KHR_gl_texture_cubemap_image 1 |
939 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR 0x30B3 |
940 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR 0x30B4 |
941 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR 0x30B5 |
942 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR 0x30B6 |
943 | #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR 0x30B7 |
944 | #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR 0x30B8 |
945 | #endif /* EGL_KHR_gl_texture_cubemap_image */ |
946 | |
947 | #ifndef EGL_KHR_image |
948 | #define EGL_KHR_image 1 |
949 | typedef void *EGLImageKHR; |
950 | #define EGL_NATIVE_PIXMAP_KHR 0x30B0 |
951 | #define EGL_NO_IMAGE_KHR ((EGLImageKHR)0) |
952 | typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); |
953 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image); |
954 | #ifdef EGL_EGLEXT_PROTOTYPES |
955 | EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); |
956 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image); |
957 | #endif |
958 | #endif /* EGL_KHR_image */ |
959 | |
960 | #ifndef EGL_KHR_image_base |
961 | #define EGL_KHR_image_base 1 |
962 | #define EGL_IMAGE_PRESERVED_KHR 0x30D2 |
963 | #endif /* EGL_KHR_image_base */ |
964 | |
965 | #ifndef EGL_KHR_image_pixmap |
966 | #define EGL_KHR_image_pixmap 1 |
967 | #endif /* EGL_KHR_image_pixmap */ |
968 | |
969 | #ifndef EGL_KHR_lock_surface |
970 | #define EGL_KHR_lock_surface 1 |
971 | #define EGL_READ_SURFACE_BIT_KHR 0x0001 |
972 | #define EGL_WRITE_SURFACE_BIT_KHR 0x0002 |
973 | #define EGL_LOCK_SURFACE_BIT_KHR 0x0080 |
974 | #define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100 |
975 | #define EGL_MATCH_FORMAT_KHR 0x3043 |
976 | #define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0 |
977 | #define EGL_FORMAT_RGB_565_KHR 0x30C1 |
978 | #define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2 |
979 | #define EGL_FORMAT_RGBA_8888_KHR 0x30C3 |
980 | #define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4 |
981 | #define EGL_LOCK_USAGE_HINT_KHR 0x30C5 |
982 | #define EGL_BITMAP_POINTER_KHR 0x30C6 |
983 | #define EGL_BITMAP_PITCH_KHR 0x30C7 |
984 | #define EGL_BITMAP_ORIGIN_KHR 0x30C8 |
985 | #define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9 |
986 | #define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA |
987 | #define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB |
988 | #define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC |
989 | #define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD |
990 | #define EGL_LOWER_LEFT_KHR 0x30CE |
991 | #define EGL_UPPER_LEFT_KHR 0x30CF |
992 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface, const EGLint *attrib_list); |
993 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface); |
994 | #ifdef EGL_EGLEXT_PROTOTYPES |
995 | EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay dpy, EGLSurface surface, const EGLint *attrib_list); |
996 | EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay dpy, EGLSurface surface); |
997 | #endif |
998 | #endif /* EGL_KHR_lock_surface */ |
999 | |
1000 | #ifndef EGL_KHR_lock_surface2 |
1001 | #define EGL_KHR_lock_surface2 1 |
1002 | #define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110 |
1003 | #endif /* EGL_KHR_lock_surface2 */ |
1004 | |
1005 | #ifndef EGL_KHR_lock_surface3 |
1006 | #define EGL_KHR_lock_surface3 1 |
1007 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACE64KHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR *value); |
1008 | #ifdef EGL_EGLEXT_PROTOTYPES |
1009 | EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface64KHR (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR *value); |
1010 | #endif |
1011 | #endif /* EGL_KHR_lock_surface3 */ |
1012 | |
1013 | #ifndef EGL_KHR_partial_update |
1014 | #define EGL_KHR_partial_update 1 |
1015 | #define EGL_BUFFER_AGE_KHR 0x313D |
1016 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSETDAMAGEREGIONKHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects); |
1017 | #ifdef EGL_EGLEXT_PROTOTYPES |
1018 | EGLAPI EGLBoolean EGLAPIENTRY eglSetDamageRegionKHR (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects); |
1019 | #endif |
1020 | #endif /* EGL_KHR_partial_update */ |
1021 | |
1022 | #ifndef EGL_KHR_platform_android |
1023 | #define EGL_KHR_platform_android 1 |
1024 | #define EGL_PLATFORM_ANDROID_KHR 0x3141 |
1025 | #endif /* EGL_KHR_platform_android */ |
1026 | |
1027 | #ifndef EGL_KHR_platform_gbm |
1028 | #define EGL_KHR_platform_gbm 1 |
1029 | #define EGL_PLATFORM_GBM_KHR 0x31D7 |
1030 | #endif /* EGL_KHR_platform_gbm */ |
1031 | |
1032 | #ifndef EGL_KHR_platform_wayland |
1033 | #define EGL_KHR_platform_wayland 1 |
1034 | #define EGL_PLATFORM_WAYLAND_KHR 0x31D8 |
1035 | #endif /* EGL_KHR_platform_wayland */ |
1036 | |
1037 | #ifndef EGL_KHR_platform_x11 |
1038 | #define EGL_KHR_platform_x11 1 |
1039 | #define EGL_PLATFORM_X11_KHR 0x31D5 |
1040 | #define EGL_PLATFORM_X11_SCREEN_KHR 0x31D6 |
1041 | #endif /* EGL_KHR_platform_x11 */ |
1042 | |
1043 | #ifndef EGL_KHR_reusable_sync |
1044 | #define EGL_KHR_reusable_sync 1 |
1045 | #ifdef KHRONOS_SUPPORT_INT64 |
1046 | #define EGL_SYNC_STATUS_KHR 0x30F1 |
1047 | #define EGL_SIGNALED_KHR 0x30F2 |
1048 | #define EGL_UNSIGNALED_KHR 0x30F3 |
1049 | #define EGL_TIMEOUT_EXPIRED_KHR 0x30F5 |
1050 | #define EGL_CONDITION_SATISFIED_KHR 0x30F6 |
1051 | #define EGL_SYNC_TYPE_KHR 0x30F7 |
1052 | #define EGL_SYNC_REUSABLE_KHR 0x30FA |
1053 | #define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR 0x0001 |
1054 | #define EGL_FOREVER_KHR 0xFFFFFFFFFFFFFFFFull |
1055 | #define EGL_NO_SYNC_KHR ((EGLSyncKHR)0) |
1056 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode); |
1057 | #ifdef EGL_EGLEXT_PROTOTYPES |
1058 | EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode); |
1059 | #endif |
1060 | #endif /* KHRONOS_SUPPORT_INT64 */ |
1061 | #endif /* EGL_KHR_reusable_sync */ |
1062 | |
1063 | #ifndef EGL_KHR_stream |
1064 | #define EGL_KHR_stream 1 |
1065 | typedef void *EGLStreamKHR; |
1066 | typedef khronos_uint64_t EGLuint64KHR; |
1067 | #ifdef KHRONOS_SUPPORT_INT64 |
1068 | #define EGL_NO_STREAM_KHR ((EGLStreamKHR)0) |
1069 | #define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210 |
1070 | #define EGL_PRODUCER_FRAME_KHR 0x3212 |
1071 | #define EGL_CONSUMER_FRAME_KHR 0x3213 |
1072 | #define EGL_STREAM_STATE_KHR 0x3214 |
1073 | #define EGL_STREAM_STATE_CREATED_KHR 0x3215 |
1074 | #define EGL_STREAM_STATE_CONNECTING_KHR 0x3216 |
1075 | #define EGL_STREAM_STATE_EMPTY_KHR 0x3217 |
1076 | #define EGL_STREAM_STATE_NEW_FRAME_AVAILABLE_KHR 0x3218 |
1077 | #define EGL_STREAM_STATE_OLD_FRAME_AVAILABLE_KHR 0x3219 |
1078 | #define EGL_STREAM_STATE_DISCONNECTED_KHR 0x321A |
1079 | #define EGL_BAD_STREAM_KHR 0x321B |
1080 | #define EGL_BAD_STATE_KHR 0x321C |
1081 | typedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMKHRPROC) (EGLDisplay dpy, const EGLint *attrib_list); |
1082 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream); |
1083 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value); |
1084 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value); |
1085 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMU64KHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value); |
1086 | #ifdef EGL_EGLEXT_PROTOTYPES |
1087 | EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamKHR (EGLDisplay dpy, const EGLint *attrib_list); |
1088 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroyStreamKHR (EGLDisplay dpy, EGLStreamKHR stream); |
1089 | EGLAPI EGLBoolean EGLAPIENTRY eglStreamAttribKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value); |
1090 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value); |
1091 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamu64KHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value); |
1092 | #endif |
1093 | #endif /* KHRONOS_SUPPORT_INT64 */ |
1094 | #endif /* EGL_KHR_stream */ |
1095 | |
1096 | #ifndef EGL_KHR_stream_consumer_gltexture |
1097 | #define EGL_KHR_stream_consumer_gltexture 1 |
1098 | #ifdef EGL_KHR_stream |
1099 | #define EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR 0x321E |
1100 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream); |
1101 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERACQUIREKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream); |
1102 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERRELEASEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream); |
1103 | #ifdef EGL_EGLEXT_PROTOTYPES |
1104 | EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerGLTextureExternalKHR (EGLDisplay dpy, EGLStreamKHR stream); |
1105 | EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerAcquireKHR (EGLDisplay dpy, EGLStreamKHR stream); |
1106 | EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerReleaseKHR (EGLDisplay dpy, EGLStreamKHR stream); |
1107 | #endif |
1108 | #endif /* EGL_KHR_stream */ |
1109 | #endif /* EGL_KHR_stream_consumer_gltexture */ |
1110 | |
1111 | #ifndef EGL_KHR_stream_cross_process_fd |
1112 | #define EGL_KHR_stream_cross_process_fd 1 |
1113 | typedef int EGLNativeFileDescriptorKHR; |
1114 | #ifdef EGL_KHR_stream |
1115 | #define EGL_NO_FILE_DESCRIPTOR_KHR ((EGLNativeFileDescriptorKHR)(-1)) |
1116 | typedef EGLNativeFileDescriptorKHR (EGLAPIENTRYP PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream); |
1117 | typedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor); |
1118 | #ifdef EGL_EGLEXT_PROTOTYPES |
1119 | EGLAPI EGLNativeFileDescriptorKHR EGLAPIENTRY eglGetStreamFileDescriptorKHR (EGLDisplay dpy, EGLStreamKHR stream); |
1120 | EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamFromFileDescriptorKHR (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor); |
1121 | #endif |
1122 | #endif /* EGL_KHR_stream */ |
1123 | #endif /* EGL_KHR_stream_cross_process_fd */ |
1124 | |
1125 | #ifndef EGL_KHR_stream_fifo |
1126 | #define EGL_KHR_stream_fifo 1 |
1127 | #ifdef EGL_KHR_stream |
1128 | #define EGL_STREAM_FIFO_LENGTH_KHR 0x31FC |
1129 | #define EGL_STREAM_TIME_NOW_KHR 0x31FD |
1130 | #define EGL_STREAM_TIME_CONSUMER_KHR 0x31FE |
1131 | #define EGL_STREAM_TIME_PRODUCER_KHR 0x31FF |
1132 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMTIMEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value); |
1133 | #ifdef EGL_EGLEXT_PROTOTYPES |
1134 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamTimeKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value); |
1135 | #endif |
1136 | #endif /* EGL_KHR_stream */ |
1137 | #endif /* EGL_KHR_stream_fifo */ |
1138 | |
1139 | #ifndef EGL_KHR_stream_producer_aldatalocator |
1140 | #define EGL_KHR_stream_producer_aldatalocator 1 |
1141 | #ifdef EGL_KHR_stream |
1142 | #endif /* EGL_KHR_stream */ |
1143 | #endif /* EGL_KHR_stream_producer_aldatalocator */ |
1144 | |
1145 | #ifndef EGL_KHR_stream_producer_eglsurface |
1146 | #define EGL_KHR_stream_producer_eglsurface 1 |
1147 | #ifdef EGL_KHR_stream |
1148 | #define EGL_STREAM_BIT_KHR 0x0800 |
1149 | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC) (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list); |
1150 | #ifdef EGL_EGLEXT_PROTOTYPES |
1151 | EGLAPI EGLSurface EGLAPIENTRY eglCreateStreamProducerSurfaceKHR (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list); |
1152 | #endif |
1153 | #endif /* EGL_KHR_stream */ |
1154 | #endif /* EGL_KHR_stream_producer_eglsurface */ |
1155 | |
1156 | #ifndef EGL_KHR_surfaceless_context |
1157 | #define EGL_KHR_surfaceless_context 1 |
1158 | #endif /* EGL_KHR_surfaceless_context */ |
1159 | |
1160 | #ifndef EGL_KHR_swap_buffers_with_damage |
1161 | #define EGL_KHR_swap_buffers_with_damage 1 |
1162 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects); |
1163 | #ifdef EGL_EGLEXT_PROTOTYPES |
1164 | EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersWithDamageKHR (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects); |
1165 | #endif |
1166 | #endif /* EGL_KHR_swap_buffers_with_damage */ |
1167 | |
1168 | #ifndef EGL_KHR_vg_parent_image |
1169 | #define EGL_KHR_vg_parent_image 1 |
1170 | #define EGL_VG_PARENT_IMAGE_KHR 0x30BA |
1171 | #endif /* EGL_KHR_vg_parent_image */ |
1172 | |
1173 | #ifndef EGL_KHR_wait_sync |
1174 | #define EGL_KHR_wait_sync 1 |
1175 | typedef EGLint (EGLAPIENTRYP PFNEGLWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags); |
1176 | #ifdef EGL_EGLEXT_PROTOTYPES |
1177 | EGLAPI EGLint EGLAPIENTRY eglWaitSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags); |
1178 | #endif |
1179 | #endif /* EGL_KHR_wait_sync */ |
1180 | |
1181 | #ifndef EGL_ANDROID_blob_cache |
1182 | #define EGL_ANDROID_blob_cache 1 |
1183 | typedef khronos_ssize_t EGLsizeiANDROID; |
1184 | typedef void (*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, const void *value, EGLsizeiANDROID valueSize); |
1185 | typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, void *value, EGLsizeiANDROID valueSize); |
1186 | typedef void (EGLAPIENTRYP PFNEGLSETBLOBCACHEFUNCSANDROIDPROC) (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get); |
1187 | #ifdef EGL_EGLEXT_PROTOTYPES |
1188 | EGLAPI void EGLAPIENTRY eglSetBlobCacheFuncsANDROID (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get); |
1189 | #endif |
1190 | #endif /* EGL_ANDROID_blob_cache */ |
1191 | |
1192 | #ifndef EGL_ANDROID_framebuffer_target |
1193 | #define EGL_ANDROID_framebuffer_target 1 |
1194 | #define EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147 |
1195 | #endif /* EGL_ANDROID_framebuffer_target */ |
1196 | |
1197 | #ifndef EGL_ANDROID_image_native_buffer |
1198 | #define EGL_ANDROID_image_native_buffer 1 |
1199 | #define EGL_NATIVE_BUFFER_ANDROID 0x3140 |
1200 | #endif /* EGL_ANDROID_image_native_buffer */ |
1201 | |
1202 | #ifndef EGL_ANDROID_native_fence_sync |
1203 | #define EGL_ANDROID_native_fence_sync 1 |
1204 | #define EGL_SYNC_NATIVE_FENCE_ANDROID 0x3144 |
1205 | #define EGL_SYNC_NATIVE_FENCE_FD_ANDROID 0x3145 |
1206 | #define EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID 0x3146 |
1207 | #define EGL_NO_NATIVE_FENCE_FD_ANDROID -1 |
1208 | typedef EGLint (EGLAPIENTRYP PFNEGLDUPNATIVEFENCEFDANDROIDPROC) (EGLDisplay dpy, EGLSyncKHR sync); |
1209 | #ifdef EGL_EGLEXT_PROTOTYPES |
1210 | EGLAPI EGLint EGLAPIENTRY eglDupNativeFenceFDANDROID (EGLDisplay dpy, EGLSyncKHR sync); |
1211 | #endif |
1212 | #endif /* EGL_ANDROID_native_fence_sync */ |
1213 | |
1214 | #ifndef EGL_ANDROID_recordable |
1215 | #define EGL_ANDROID_recordable 1 |
1216 | #define EGL_RECORDABLE_ANDROID 0x3142 |
1217 | #endif /* EGL_ANDROID_recordable */ |
1218 | |
1219 | #ifndef EGL_ANGLE_d3d_share_handle_client_buffer |
1220 | #define EGL_ANGLE_d3d_share_handle_client_buffer 1 |
1221 | #define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200 |
1222 | #endif /* EGL_ANGLE_d3d_share_handle_client_buffer */ |
1223 | |
1224 | #ifndef EGL_ANGLE_device_d3d |
1225 | #define EGL_ANGLE_device_d3d 1 |
1226 | #define EGL_D3D9_DEVICE_ANGLE 0x33A0 |
1227 | #define EGL_D3D11_DEVICE_ANGLE 0x33A1 |
1228 | #endif /* EGL_ANGLE_device_d3d */ |
1229 | |
1230 | #ifndef EGL_ANGLE_query_surface_pointer |
1231 | #define EGL_ANGLE_query_surface_pointer 1 |
1232 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value); |
1233 | #ifdef EGL_EGLEXT_PROTOTYPES |
1234 | EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurfacePointerANGLE (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value); |
1235 | #endif |
1236 | #endif /* EGL_ANGLE_query_surface_pointer */ |
1237 | |
1238 | #ifndef EGL_ANGLE_surface_d3d_texture_2d_share_handle |
1239 | #define EGL_ANGLE_surface_d3d_texture_2d_share_handle 1 |
1240 | #endif /* EGL_ANGLE_surface_d3d_texture_2d_share_handle */ |
1241 | |
1242 | #ifndef EGL_ANGLE_window_fixed_size |
1243 | #define EGL_ANGLE_window_fixed_size 1 |
1244 | #define EGL_FIXED_SIZE_ANGLE 0x3201 |
1245 | #endif /* EGL_ANGLE_window_fixed_size */ |
1246 | |
1247 | #ifndef EGL_ARM_pixmap_multisample_discard |
1248 | #define EGL_ARM_pixmap_multisample_discard 1 |
1249 | #define EGL_DISCARD_SAMPLES_ARM 0x3286 |
1250 | #endif /* EGL_ARM_pixmap_multisample_discard */ |
1251 | |
1252 | #ifndef EGL_EXT_buffer_age |
1253 | #define EGL_EXT_buffer_age 1 |
1254 | #define EGL_BUFFER_AGE_EXT 0x313D |
1255 | #endif /* EGL_EXT_buffer_age */ |
1256 | |
1257 | #ifndef EGL_EXT_client_extensions |
1258 | #define EGL_EXT_client_extensions 1 |
1259 | #endif /* EGL_EXT_client_extensions */ |
1260 | |
1261 | #ifndef EGL_EXT_create_context_robustness |
1262 | #define EGL_EXT_create_context_robustness 1 |
1263 | #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF |
1264 | #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT 0x3138 |
1265 | #define EGL_NO_RESET_NOTIFICATION_EXT 0x31BE |
1266 | #define EGL_LOSE_CONTEXT_ON_RESET_EXT 0x31BF |
1267 | #endif /* EGL_EXT_create_context_robustness */ |
1268 | |
1269 | #ifndef EGL_EXT_device_base |
1270 | #define EGL_EXT_device_base 1 |
1271 | typedef void *EGLDeviceEXT; |
1272 | #define EGL_NO_DEVICE_EXT ((EGLDeviceEXT)(0)) |
1273 | #define EGL_BAD_DEVICE_EXT 0x322B |
1274 | #define EGL_DEVICE_EXT 0x322C |
1275 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEVICEATTRIBEXTPROC) (EGLDeviceEXT device, EGLint attribute, EGLAttrib *value); |
1276 | typedef const char *(EGLAPIENTRYP PFNEGLQUERYDEVICESTRINGEXTPROC) (EGLDeviceEXT device, EGLint name); |
1277 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEVICESEXTPROC) (EGLint max_devices, EGLDeviceEXT *devices, EGLint *num_devices); |
1278 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDISPLAYATTRIBEXTPROC) (EGLDisplay dpy, EGLint attribute, EGLAttrib *value); |
1279 | #ifdef EGL_EGLEXT_PROTOTYPES |
1280 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryDeviceAttribEXT (EGLDeviceEXT device, EGLint attribute, EGLAttrib *value); |
1281 | EGLAPI const char *EGLAPIENTRY eglQueryDeviceStringEXT (EGLDeviceEXT device, EGLint name); |
1282 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryDevicesEXT (EGLint max_devices, EGLDeviceEXT *devices, EGLint *num_devices); |
1283 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryDisplayAttribEXT (EGLDisplay dpy, EGLint attribute, EGLAttrib *value); |
1284 | #endif |
1285 | #endif /* EGL_EXT_device_base */ |
1286 | |
1287 | #ifndef EGL_EXT_device_drm |
1288 | #define EGL_EXT_device_drm 1 |
1289 | #define EGL_DRM_DEVICE_FILE_EXT 0x3233 |
1290 | #endif /* EGL_EXT_device_drm */ |
1291 | |
1292 | #ifndef EGL_EXT_device_enumeration |
1293 | #define EGL_EXT_device_enumeration 1 |
1294 | #endif /* EGL_EXT_device_enumeration */ |
1295 | |
1296 | #ifndef EGL_EXT_device_openwf |
1297 | #define EGL_EXT_device_openwf 1 |
1298 | #define EGL_OPENWF_DEVICE_ID_EXT 0x3237 |
1299 | #endif /* EGL_EXT_device_openwf */ |
1300 | |
1301 | #ifndef EGL_EXT_device_query |
1302 | #define EGL_EXT_device_query 1 |
1303 | #endif /* EGL_EXT_device_query */ |
1304 | |
1305 | #ifndef EGL_EXT_image_dma_buf_import |
1306 | #define EGL_EXT_image_dma_buf_import 1 |
1307 | #define EGL_LINUX_DMA_BUF_EXT 0x3270 |
1308 | #define EGL_LINUX_DRM_FOURCC_EXT 0x3271 |
1309 | #define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272 |
1310 | #define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273 |
1311 | #define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274 |
1312 | #define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275 |
1313 | #define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276 |
1314 | #define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277 |
1315 | #define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278 |
1316 | #define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279 |
1317 | #define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A |
1318 | #define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B |
1319 | #define EGL_SAMPLE_RANGE_HINT_EXT 0x327C |
1320 | #define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D |
1321 | #define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E |
1322 | #define EGL_ITU_REC601_EXT 0x327F |
1323 | #define EGL_ITU_REC709_EXT 0x3280 |
1324 | #define EGL_ITU_REC2020_EXT 0x3281 |
1325 | #define EGL_YUV_FULL_RANGE_EXT 0x3282 |
1326 | #define EGL_YUV_NARROW_RANGE_EXT 0x3283 |
1327 | #define EGL_YUV_CHROMA_SITING_0_EXT 0x3284 |
1328 | #define EGL_YUV_CHROMA_SITING_0_5_EXT 0x3285 |
1329 | #endif /* EGL_EXT_image_dma_buf_import */ |
1330 | |
1331 | #ifndef EGL_EXT_multiview_window |
1332 | #define EGL_EXT_multiview_window 1 |
1333 | #define EGL_MULTIVIEW_VIEW_COUNT_EXT 0x3134 |
1334 | #endif /* EGL_EXT_multiview_window */ |
1335 | |
1336 | #ifndef EGL_EXT_output_base |
1337 | #define EGL_EXT_output_base 1 |
1338 | typedef void *EGLOutputLayerEXT; |
1339 | typedef void *EGLOutputPortEXT; |
1340 | #define EGL_NO_OUTPUT_LAYER_EXT ((EGLOutputLayerEXT)0) |
1341 | #define EGL_NO_OUTPUT_PORT_EXT ((EGLOutputPortEXT)0) |
1342 | #define EGL_BAD_OUTPUT_LAYER_EXT 0x322D |
1343 | #define EGL_BAD_OUTPUT_PORT_EXT 0x322E |
1344 | #define EGL_SWAP_INTERVAL_EXT 0x322F |
1345 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputLayerEXT *layers, EGLint max_layers, EGLint *num_layers); |
1346 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputPortEXT *ports, EGLint max_ports, EGLint *num_ports); |
1347 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value); |
1348 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib *value); |
1349 | typedef const char *(EGLAPIENTRYP PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name); |
1350 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value); |
1351 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib *value); |
1352 | typedef const char *(EGLAPIENTRYP PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name); |
1353 | #ifdef EGL_EGLEXT_PROTOTYPES |
1354 | EGLAPI EGLBoolean EGLAPIENTRY eglGetOutputLayersEXT (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputLayerEXT *layers, EGLint max_layers, EGLint *num_layers); |
1355 | EGLAPI EGLBoolean EGLAPIENTRY eglGetOutputPortsEXT (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputPortEXT *ports, EGLint max_ports, EGLint *num_ports); |
1356 | EGLAPI EGLBoolean EGLAPIENTRY eglOutputLayerAttribEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value); |
1357 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryOutputLayerAttribEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib *value); |
1358 | EGLAPI const char *EGLAPIENTRY eglQueryOutputLayerStringEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name); |
1359 | EGLAPI EGLBoolean EGLAPIENTRY eglOutputPortAttribEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value); |
1360 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryOutputPortAttribEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib *value); |
1361 | EGLAPI const char *EGLAPIENTRY eglQueryOutputPortStringEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name); |
1362 | #endif |
1363 | #endif /* EGL_EXT_output_base */ |
1364 | |
1365 | #ifndef EGL_EXT_output_drm |
1366 | #define EGL_EXT_output_drm 1 |
1367 | #define EGL_DRM_CRTC_EXT 0x3234 |
1368 | #define EGL_DRM_PLANE_EXT 0x3235 |
1369 | #define EGL_DRM_CONNECTOR_EXT 0x3236 |
1370 | #endif /* EGL_EXT_output_drm */ |
1371 | |
1372 | #ifndef EGL_EXT_output_openwf |
1373 | #define EGL_EXT_output_openwf 1 |
1374 | #define EGL_OPENWF_PIPELINE_ID_EXT 0x3238 |
1375 | #define EGL_OPENWF_PORT_ID_EXT 0x3239 |
1376 | #endif /* EGL_EXT_output_openwf */ |
1377 | |
1378 | #ifndef EGL_EXT_platform_base |
1379 | #define EGL_EXT_platform_base 1 |
1380 | typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLenum platform, void *native_display, const EGLint *attrib_list); |
1381 | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLint *attrib_list); |
1382 | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLint *attrib_list); |
1383 | #ifdef EGL_EGLEXT_PROTOTYPES |
1384 | EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplayEXT (EGLenum platform, void *native_display, const EGLint *attrib_list); |
1385 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformWindowSurfaceEXT (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLint *attrib_list); |
1386 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformPixmapSurfaceEXT (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLint *attrib_list); |
1387 | #endif |
1388 | #endif /* EGL_EXT_platform_base */ |
1389 | |
1390 | #ifndef EGL_EXT_platform_device |
1391 | #define EGL_EXT_platform_device 1 |
1392 | #define EGL_PLATFORM_DEVICE_EXT 0x313F |
1393 | #endif /* EGL_EXT_platform_device */ |
1394 | |
1395 | #ifndef EGL_EXT_platform_wayland |
1396 | #define EGL_EXT_platform_wayland 1 |
1397 | #define EGL_PLATFORM_WAYLAND_EXT 0x31D8 |
1398 | #endif /* EGL_EXT_platform_wayland */ |
1399 | |
1400 | #ifndef EGL_EXT_platform_x11 |
1401 | #define EGL_EXT_platform_x11 1 |
1402 | #define EGL_PLATFORM_X11_EXT 0x31D5 |
1403 | #define EGL_PLATFORM_X11_SCREEN_EXT 0x31D6 |
1404 | #endif /* EGL_EXT_platform_x11 */ |
1405 | |
1406 | #ifndef EGL_EXT_protected_surface |
1407 | #define EGL_EXT_protected_surface 1 |
1408 | #define EGL_PROTECTED_CONTENT_EXT 0x32C0 |
1409 | #endif /* EGL_EXT_protected_surface */ |
1410 | |
1411 | #ifndef EGL_EXT_stream_consumer_egloutput |
1412 | #define EGL_EXT_stream_consumer_egloutput 1 |
1413 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMEROUTPUTEXTPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer); |
1414 | #ifdef EGL_EGLEXT_PROTOTYPES |
1415 | EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerOutputEXT (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer); |
1416 | #endif |
1417 | #endif /* EGL_EXT_stream_consumer_egloutput */ |
1418 | |
1419 | #ifndef EGL_EXT_swap_buffers_with_damage |
1420 | #define EGL_EXT_swap_buffers_with_damage 1 |
1421 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects); |
1422 | #ifdef EGL_EGLEXT_PROTOTYPES |
1423 | EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersWithDamageEXT (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects); |
1424 | #endif |
1425 | #endif /* EGL_EXT_swap_buffers_with_damage */ |
1426 | |
1427 | #ifndef EGL_EXT_yuv_surface |
1428 | #define EGL_EXT_yuv_surface 1 |
1429 | #define EGL_YUV_ORDER_EXT 0x3301 |
1430 | #define EGL_YUV_NUMBER_OF_PLANES_EXT 0x3311 |
1431 | #define EGL_YUV_SUBSAMPLE_EXT 0x3312 |
1432 | #define EGL_YUV_DEPTH_RANGE_EXT 0x3317 |
1433 | #define EGL_YUV_CSC_STANDARD_EXT 0x330A |
1434 | #define EGL_YUV_PLANE_BPP_EXT 0x331A |
1435 | #define EGL_YUV_BUFFER_EXT 0x3300 |
1436 | #define EGL_YUV_ORDER_YUV_EXT 0x3302 |
1437 | #define EGL_YUV_ORDER_YVU_EXT 0x3303 |
1438 | #define EGL_YUV_ORDER_YUYV_EXT 0x3304 |
1439 | #define EGL_YUV_ORDER_UYVY_EXT 0x3305 |
1440 | #define EGL_YUV_ORDER_YVYU_EXT 0x3306 |
1441 | #define EGL_YUV_ORDER_VYUY_EXT 0x3307 |
1442 | #define EGL_YUV_ORDER_AYUV_EXT 0x3308 |
1443 | #define EGL_YUV_SUBSAMPLE_4_2_0_EXT 0x3313 |
1444 | #define EGL_YUV_SUBSAMPLE_4_2_2_EXT 0x3314 |
1445 | #define EGL_YUV_SUBSAMPLE_4_4_4_EXT 0x3315 |
1446 | #define EGL_YUV_DEPTH_RANGE_LIMITED_EXT 0x3318 |
1447 | #define EGL_YUV_DEPTH_RANGE_FULL_EXT 0x3319 |
1448 | #define EGL_YUV_CSC_STANDARD_601_EXT 0x330B |
1449 | #define EGL_YUV_CSC_STANDARD_709_EXT 0x330C |
1450 | #define EGL_YUV_CSC_STANDARD_2020_EXT 0x330D |
1451 | #define EGL_YUV_PLANE_BPP_0_EXT 0x331B |
1452 | #define EGL_YUV_PLANE_BPP_8_EXT 0x331C |
1453 | #define EGL_YUV_PLANE_BPP_10_EXT 0x331D |
1454 | #endif /* EGL_EXT_yuv_surface */ |
1455 | |
1456 | #ifndef EGL_HI_clientpixmap |
1457 | #define EGL_HI_clientpixmap 1 |
1458 | struct EGLClientPixmapHI { |
1459 | void *pData; |
1460 | EGLint iWidth; |
1461 | EGLint iHeight; |
1462 | EGLint iStride; |
1463 | }; |
1464 | #define EGL_CLIENT_PIXMAP_POINTER_HI 0x8F74 |
1465 | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI *pixmap); |
1466 | #ifdef EGL_EGLEXT_PROTOTYPES |
1467 | EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurfaceHI (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI *pixmap); |
1468 | #endif |
1469 | #endif /* EGL_HI_clientpixmap */ |
1470 | |
1471 | #ifndef EGL_HI_colorformats |
1472 | #define EGL_HI_colorformats 1 |
1473 | #define EGL_COLOR_FORMAT_HI 0x8F70 |
1474 | #define EGL_COLOR_RGB_HI 0x8F71 |
1475 | #define EGL_COLOR_RGBA_HI 0x8F72 |
1476 | #define EGL_COLOR_ARGB_HI 0x8F73 |
1477 | #endif /* EGL_HI_colorformats */ |
1478 | |
1479 | #ifndef EGL_IMG_context_priority |
1480 | #define EGL_IMG_context_priority 1 |
1481 | #define EGL_CONTEXT_PRIORITY_LEVEL_IMG 0x3100 |
1482 | #define EGL_CONTEXT_PRIORITY_HIGH_IMG 0x3101 |
1483 | #define EGL_CONTEXT_PRIORITY_MEDIUM_IMG 0x3102 |
1484 | #define EGL_CONTEXT_PRIORITY_LOW_IMG 0x3103 |
1485 | #endif /* EGL_IMG_context_priority */ |
1486 | |
1487 | #ifndef EGL_MESA_drm_image |
1488 | #define EGL_MESA_drm_image 1 |
1489 | #define EGL_DRM_BUFFER_FORMAT_MESA 0x31D0 |
1490 | #define EGL_DRM_BUFFER_USE_MESA 0x31D1 |
1491 | #define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA 0x31D2 |
1492 | #define EGL_DRM_BUFFER_MESA 0x31D3 |
1493 | #define EGL_DRM_BUFFER_STRIDE_MESA 0x31D4 |
1494 | #define EGL_DRM_BUFFER_USE_SCANOUT_MESA 0x00000001 |
1495 | #define EGL_DRM_BUFFER_USE_SHARE_MESA 0x00000002 |
1496 | typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay dpy, const EGLint *attrib_list); |
1497 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride); |
1498 | #ifdef EGL_EGLEXT_PROTOTYPES |
1499 | EGLAPI EGLImageKHR EGLAPIENTRY eglCreateDRMImageMESA (EGLDisplay dpy, const EGLint *attrib_list); |
1500 | EGLAPI EGLBoolean EGLAPIENTRY eglExportDRMImageMESA (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride); |
1501 | #endif |
1502 | #endif /* EGL_MESA_drm_image */ |
1503 | |
1504 | #ifndef EGL_MESA_image_dma_buf_export |
1505 | #define EGL_MESA_image_dma_buf_export 1 |
1506 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers); |
1507 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDMABUFIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets); |
1508 | #ifdef EGL_EGLEXT_PROTOTYPES |
1509 | EGLAPI EGLBoolean EGLAPIENTRY eglExportDMABUFImageQueryMESA (EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers); |
1510 | EGLAPI EGLBoolean EGLAPIENTRY eglExportDMABUFImageMESA (EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets); |
1511 | #endif |
1512 | #endif /* EGL_MESA_image_dma_buf_export */ |
1513 | |
1514 | #ifndef EGL_MESA_platform_gbm |
1515 | #define EGL_MESA_platform_gbm 1 |
1516 | #define EGL_PLATFORM_GBM_MESA 0x31D7 |
1517 | #endif /* EGL_MESA_platform_gbm */ |
1518 | |
1519 | #ifndef EGL_NOK_swap_region |
1520 | #define EGL_NOK_swap_region 1 |
1521 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects); |
1522 | #ifdef EGL_EGLEXT_PROTOTYPES |
1523 | EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersRegionNOK (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects); |
1524 | #endif |
1525 | #endif /* EGL_NOK_swap_region */ |
1526 | |
1527 | #ifndef EGL_NOK_swap_region2 |
1528 | #define EGL_NOK_swap_region2 1 |
1529 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGION2NOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects); |
1530 | #ifdef EGL_EGLEXT_PROTOTYPES |
1531 | EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersRegion2NOK (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects); |
1532 | #endif |
1533 | #endif /* EGL_NOK_swap_region2 */ |
1534 | |
1535 | #ifndef EGL_NOK_texture_from_pixmap |
1536 | #define EGL_NOK_texture_from_pixmap 1 |
1537 | #define EGL_Y_INVERTED_NOK 0x307F |
1538 | #endif /* EGL_NOK_texture_from_pixmap */ |
1539 | |
1540 | #ifndef EGL_NV_3dvision_surface |
1541 | #define EGL_NV_3dvision_surface 1 |
1542 | #define EGL_AUTO_STEREO_NV 0x3136 |
1543 | #endif /* EGL_NV_3dvision_surface */ |
1544 | |
1545 | #ifndef EGL_NV_coverage_sample |
1546 | #define EGL_NV_coverage_sample 1 |
1547 | #define EGL_COVERAGE_BUFFERS_NV 0x30E0 |
1548 | #define EGL_COVERAGE_SAMPLES_NV 0x30E1 |
1549 | #endif /* EGL_NV_coverage_sample */ |
1550 | |
1551 | #ifndef EGL_NV_coverage_sample_resolve |
1552 | #define EGL_NV_coverage_sample_resolve 1 |
1553 | #define EGL_COVERAGE_SAMPLE_RESOLVE_NV 0x3131 |
1554 | #define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV 0x3132 |
1555 | #define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV 0x3133 |
1556 | #endif /* EGL_NV_coverage_sample_resolve */ |
1557 | |
1558 | #ifndef EGL_NV_cuda_event |
1559 | #define EGL_NV_cuda_event 1 |
1560 | #define EGL_CUDA_EVENT_HANDLE_NV 0x323B |
1561 | #define EGL_SYNC_CUDA_EVENT_NV 0x323C |
1562 | #define EGL_SYNC_CUDA_EVENT_COMPLETE_NV 0x323D |
1563 | #endif /* EGL_NV_cuda_event */ |
1564 | |
1565 | #ifndef EGL_NV_depth_nonlinear |
1566 | #define EGL_NV_depth_nonlinear 1 |
1567 | #define EGL_DEPTH_ENCODING_NV 0x30E2 |
1568 | #define EGL_DEPTH_ENCODING_NONE_NV 0 |
1569 | #define EGL_DEPTH_ENCODING_NONLINEAR_NV 0x30E3 |
1570 | #endif /* EGL_NV_depth_nonlinear */ |
1571 | |
1572 | #ifndef EGL_NV_device_cuda |
1573 | #define EGL_NV_device_cuda 1 |
1574 | #define EGL_CUDA_DEVICE_NV 0x323A |
1575 | #endif /* EGL_NV_device_cuda */ |
1576 | |
1577 | #ifndef EGL_NV_native_query |
1578 | #define EGL_NV_native_query 1 |
1579 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEDISPLAYNVPROC) (EGLDisplay dpy, EGLNativeDisplayType *display_id); |
1580 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEWINDOWNVPROC) (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType *window); |
1581 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEPIXMAPNVPROC) (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType *pixmap); |
1582 | #ifdef EGL_EGLEXT_PROTOTYPES |
1583 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeDisplayNV (EGLDisplay dpy, EGLNativeDisplayType *display_id); |
1584 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeWindowNV (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType *window); |
1585 | EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativePixmapNV (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType *pixmap); |
1586 | #endif |
1587 | #endif /* EGL_NV_native_query */ |
1588 | |
1589 | #ifndef EGL_NV_post_convert_rounding |
1590 | #define EGL_NV_post_convert_rounding 1 |
1591 | #endif /* EGL_NV_post_convert_rounding */ |
1592 | |
1593 | #ifndef EGL_NV_post_sub_buffer |
1594 | #define EGL_NV_post_sub_buffer 1 |
1595 | #define EGL_POST_SUB_BUFFER_SUPPORTED_NV 0x30BE |
1596 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLPOSTSUBBUFFERNVPROC) (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height); |
1597 | #ifdef EGL_EGLEXT_PROTOTYPES |
1598 | EGLAPI EGLBoolean EGLAPIENTRY eglPostSubBufferNV (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height); |
1599 | #endif |
1600 | #endif /* EGL_NV_post_sub_buffer */ |
1601 | |
1602 | #ifndef EGL_NV_stream_sync |
1603 | #define EGL_NV_stream_sync 1 |
1604 | #define EGL_SYNC_NEW_FRAME_NV 0x321F |
1605 | typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESTREAMSYNCNVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint *attrib_list); |
1606 | #ifdef EGL_EGLEXT_PROTOTYPES |
1607 | EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateStreamSyncNV (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint *attrib_list); |
1608 | #endif |
1609 | #endif /* EGL_NV_stream_sync */ |
1610 | |
1611 | #ifndef EGL_NV_sync |
1612 | #define EGL_NV_sync 1 |
1613 | typedef void *EGLSyncNV; |
1614 | typedef khronos_utime_nanoseconds_t EGLTimeNV; |
1615 | #ifdef KHRONOS_SUPPORT_INT64 |
1616 | #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV 0x30E6 |
1617 | #define EGL_SYNC_STATUS_NV 0x30E7 |
1618 | #define EGL_SIGNALED_NV 0x30E8 |
1619 | #define EGL_UNSIGNALED_NV 0x30E9 |
1620 | #define EGL_SYNC_FLUSH_COMMANDS_BIT_NV 0x0001 |
1621 | #define EGL_FOREVER_NV 0xFFFFFFFFFFFFFFFFull |
1622 | #define EGL_ALREADY_SIGNALED_NV 0x30EA |
1623 | #define EGL_TIMEOUT_EXPIRED_NV 0x30EB |
1624 | #define EGL_CONDITION_SATISFIED_NV 0x30EC |
1625 | #define EGL_SYNC_TYPE_NV 0x30ED |
1626 | #define EGL_SYNC_CONDITION_NV 0x30EE |
1627 | #define EGL_SYNC_FENCE_NV 0x30EF |
1628 | #define EGL_NO_SYNC_NV ((EGLSyncNV)0) |
1629 | typedef EGLSyncNV (EGLAPIENTRYP PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list); |
1630 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV sync); |
1631 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLFENCENVPROC) (EGLSyncNV sync); |
1632 | typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout); |
1633 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV sync, EGLenum mode); |
1634 | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV sync, EGLint attribute, EGLint *value); |
1635 | #ifdef EGL_EGLEXT_PROTOTYPES |
1636 | EGLAPI EGLSyncNV EGLAPIENTRY eglCreateFenceSyncNV (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list); |
1637 | EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncNV (EGLSyncNV sync); |
1638 | EGLAPI EGLBoolean EGLAPIENTRY eglFenceNV (EGLSyncNV sync); |
1639 | EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncNV (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout); |
1640 | EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncNV (EGLSyncNV sync, EGLenum mode); |
1641 | EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribNV (EGLSyncNV sync, EGLint attribute, EGLint *value); |
1642 | #endif |
1643 | #endif /* KHRONOS_SUPPORT_INT64 */ |
1644 | #endif /* EGL_NV_sync */ |
1645 | |
1646 | #ifndef EGL_NV_system_time |
1647 | #define EGL_NV_system_time 1 |
1648 | typedef khronos_utime_nanoseconds_t EGLuint64NV; |
1649 | #ifdef KHRONOS_SUPPORT_INT64 |
1650 | typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) (void); |
1651 | typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMENVPROC) (void); |
1652 | #ifdef EGL_EGLEXT_PROTOTYPES |
1653 | EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeFrequencyNV (void); |
1654 | EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeNV (void); |
1655 | #endif |
1656 | #endif /* KHRONOS_SUPPORT_INT64 */ |
1657 | #endif /* EGL_NV_system_time */ |
1658 | |
1659 | #ifndef EGL_TIZEN_image_native_buffer |
1660 | #define EGL_TIZEN_image_native_buffer 1 |
1661 | #define EGL_NATIVE_BUFFER_TIZEN 0x32A0 |
1662 | #endif /* EGL_TIZEN_image_native_buffer */ |
1663 | |
1664 | #ifndef EGL_TIZEN_image_native_surface |
1665 | #define EGL_TIZEN_image_native_surface 1 |
1666 | #define EGL_NATIVE_SURFACE_TIZEN 0x32A1 |
1667 | #endif /* EGL_TIZEN_image_native_surface */ |
1668 | |
1669 | #ifdef __cplusplus |
1670 | } |
1671 | #endif |
1672 | |
1673 | #endif /* __eglext_h_ */ |
1674 | |
1675 | |
1676 | #endif /* _MSC_VER */ |
1677 | |