|
1
|
1 /*
|
|
|
2 Simple DirectMedia Layer
|
|
|
3 Copyright (C) 1997-2025 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 * This is a simple file to encapsulate the EGL API headers.
|
|
|
24 */
|
|
|
25
|
|
|
26 #include <SDL3/SDL_platform_defines.h>
|
|
|
27
|
|
|
28 #if !defined(_MSC_VER) && !defined(SDL_PLATFORM_ANDROID) && !defined(SDL_USE_BUILTIN_OPENGL_DEFINITIONS)
|
|
|
29
|
|
|
30 #if defined(SDL_PLATFORM_VITA)
|
|
|
31 #include <psp2/display.h>
|
|
|
32 #include <psp2/gxm.h>
|
|
|
33 #include <psp2/types.h>
|
|
|
34 #endif
|
|
|
35
|
|
|
36 #include <EGL/egl.h>
|
|
|
37 #include <EGL/eglext.h>
|
|
|
38
|
|
|
39 #else /* _MSC_VER */
|
|
|
40
|
|
|
41 /* EGL headers for Visual Studio */
|
|
|
42
|
|
|
43 #ifndef __khrplatform_h_
|
|
|
44 #define __khrplatform_h_
|
|
|
45
|
|
|
46 /*
|
|
|
47 ** Copyright (c) 2008-2018 The Khronos Group Inc.
|
|
|
48 **
|
|
|
49 ** Permission is hereby granted, free of charge, to any person obtaining a
|
|
|
50 ** copy of this software and/or associated documentation files (the
|
|
|
51 ** "Materials"), to deal in the Materials without restriction, including
|
|
|
52 ** without limitation the rights to use, copy, modify, merge, publish,
|
|
|
53 ** distribute, sublicense, and/or sell copies of the Materials, and to
|
|
|
54 ** permit persons to whom the Materials are furnished to do so, subject to
|
|
|
55 ** the following conditions:
|
|
|
56 **
|
|
|
57 ** The above copyright notice and this permission notice shall be included
|
|
|
58 ** in all copies or substantial portions of the Materials.
|
|
|
59 **
|
|
|
60 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
|
61 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
|
62 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
|
63 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
|
64 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
|
65 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
|
66 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
|
|
67 */
|
|
|
68
|
|
|
69 /* Khronos platform-specific types and definitions.
|
|
|
70 *
|
|
|
71 * The master copy of khrplatform.h is maintained in the Khronos EGL
|
|
|
72 * Registry repository at https://github.com/KhronosGroup/EGL-Registry
|
|
|
73 * The last semantic modification to khrplatform.h was at commit ID:
|
|
|
74 * 67a3e0864c2d75ea5287b9f3d2eb74a745936692
|
|
|
75 *
|
|
|
76 * Adopters may modify this file to suit their platform. Adopters are
|
|
|
77 * encouraged to submit platform specific modifications to the Khronos
|
|
|
78 * group so that they can be included in future versions of this file.
|
|
|
79 * Please submit changes by filing pull requests or issues on
|
|
|
80 * the EGL Registry repository linked above.
|
|
|
81 *
|
|
|
82 *
|
|
|
83 * See the Implementer's Guidelines for information about where this file
|
|
|
84 * should be located on your system and for more details of its use:
|
|
|
85 * http://www.khronos.org/registry/implementers_guide.pdf
|
|
|
86 *
|
|
|
87 * This file should be included as
|
|
|
88 * #include <KHR/khrplatform.h>
|
|
|
89 * by Khronos client API header files that use its types and defines.
|
|
|
90 *
|
|
|
91 * The types in khrplatform.h should only be used to define API-specific types.
|
|
|
92 *
|
|
|
93 * Types defined in khrplatform.h:
|
|
|
94 * khronos_int8_t signed 8 bit
|
|
|
95 * khronos_uint8_t unsigned 8 bit
|
|
|
96 * khronos_int16_t signed 16 bit
|
|
|
97 * khronos_uint16_t unsigned 16 bit
|
|
|
98 * khronos_int32_t signed 32 bit
|
|
|
99 * khronos_uint32_t unsigned 32 bit
|
|
|
100 * khronos_int64_t signed 64 bit
|
|
|
101 * khronos_uint64_t unsigned 64 bit
|
|
|
102 * khronos_intptr_t signed same number of bits as a pointer
|
|
|
103 * khronos_uintptr_t unsigned same number of bits as a pointer
|
|
|
104 * khronos_ssize_t signed size
|
|
|
105 * khronos_usize_t unsigned size
|
|
|
106 * khronos_float_t signed 32 bit floating point
|
|
|
107 * khronos_time_ns_t unsigned 64 bit time in nanoseconds
|
|
|
108 * khronos_utime_nanoseconds_t unsigned time interval or absolute time in
|
|
|
109 * nanoseconds
|
|
|
110 * khronos_stime_nanoseconds_t signed time interval in nanoseconds
|
|
|
111 * khronos_boolean_enum_t enumerated boolean type. This should
|
|
|
112 * only be used as a base type when a client API's boolean type is
|
|
|
113 * an enum. Client APIs which use an integer or other type for
|
|
|
114 * booleans cannot use this as the base type for their boolean.
|
|
|
115 *
|
|
|
116 * Tokens defined in khrplatform.h:
|
|
|
117 *
|
|
|
118 * KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
|
|
|
119 *
|
|
|
120 * KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
|
|
|
121 * KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
|
|
|
122 *
|
|
|
123 * Calling convention macros defined in this file:
|
|
|
124 * KHRONOS_APICALL
|
|
|
125 * KHRONOS_APIENTRY
|
|
|
126 * KHRONOS_APIATTRIBUTES
|
|
|
127 *
|
|
|
128 * These may be used in function prototypes as:
|
|
|
129 *
|
|
|
130 * KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
|
|
|
131 * int arg1,
|
|
|
132 * int arg2) KHRONOS_APIATTRIBUTES;
|
|
|
133 */
|
|
|
134
|
|
|
135 #if defined(__SCITECH_SNAP__) && !defined(KHRONOS_STATIC)
|
|
|
136 # define KHRONOS_STATIC 1
|
|
|
137 #endif
|
|
|
138
|
|
|
139 /*-------------------------------------------------------------------------
|
|
|
140 * Definition of KHRONOS_APICALL
|
|
|
141 *-------------------------------------------------------------------------
|
|
|
142 * This precedes the return type of the function in the function prototype.
|
|
|
143 */
|
|
|
144 #if defined(KHRONOS_STATIC)
|
|
|
145 /* If the preprocessor constant KHRONOS_STATIC is defined, make the
|
|
|
146 * header compatible with static linking. */
|
|
|
147 # define KHRONOS_APICALL
|
|
|
148 #elif defined(_WIN32)
|
|
|
149 # define KHRONOS_APICALL __declspec(dllimport)
|
|
|
150 #elif defined (__SYMBIAN32__)
|
|
|
151 # define KHRONOS_APICALL IMPORT_C
|
|
|
152 #elif defined(__ANDROID__)
|
|
|
153 # define KHRONOS_APICALL __attribute__((visibility("default")))
|
|
|
154 #else
|
|
|
155 # define KHRONOS_APICALL
|
|
|
156 #endif
|
|
|
157
|
|
|
158 /*-------------------------------------------------------------------------
|
|
|
159 * Definition of KHRONOS_APIENTRY
|
|
|
160 *-------------------------------------------------------------------------
|
|
|
161 * This follows the return type of the function and precedes the function
|
|
|
162 * name in the function prototype.
|
|
|
163 */
|
|
|
164 #if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
|
|
|
165 /* Win32 but not WinCE */
|
|
|
166 # define KHRONOS_APIENTRY __stdcall
|
|
|
167 #else
|
|
|
168 # define KHRONOS_APIENTRY
|
|
|
169 #endif
|
|
|
170
|
|
|
171 /*-------------------------------------------------------------------------
|
|
|
172 * Definition of KHRONOS_APIATTRIBUTES
|
|
|
173 *-------------------------------------------------------------------------
|
|
|
174 * This follows the closing parenthesis of the function prototype arguments.
|
|
|
175 */
|
|
|
176 #if defined (__ARMCC_2__)
|
|
|
177 #define KHRONOS_APIATTRIBUTES __softfp
|
|
|
178 #else
|
|
|
179 #define KHRONOS_APIATTRIBUTES
|
|
|
180 #endif
|
|
|
181
|
|
|
182 /*-------------------------------------------------------------------------
|
|
|
183 * basic type definitions
|
|
|
184 *-----------------------------------------------------------------------*/
|
|
|
185 #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
|
|
|
186
|
|
|
187
|
|
|
188 /*
|
|
|
189 * Using <stdint.h>
|
|
|
190 */
|
|
|
191 #include <stdint.h>
|
|
|
192 typedef int32_t khronos_int32_t;
|
|
|
193 typedef uint32_t khronos_uint32_t;
|
|
|
194 typedef int64_t khronos_int64_t;
|
|
|
195 typedef uint64_t khronos_uint64_t;
|
|
|
196 #define KHRONOS_SUPPORT_INT64 1
|
|
|
197 #define KHRONOS_SUPPORT_FLOAT 1
|
|
|
198 /*
|
|
|
199 * To support platform where unsigned long cannot be used interchangeably with
|
|
|
200 * inptr_t (e.g. CHERI-extended ISAs), we can use the stdint.h intptr_t.
|
|
|
201 * Ideally, we could just use (u)intptr_t everywhere, but this could result in
|
|
|
202 * ABI breakage if khronos_uintptr_t is changed from unsigned long to
|
|
|
203 * unsigned long long or similar (this results in different C++ name mangling).
|
|
|
204 * To avoid changes for existing platforms, we restrict usage of intptr_t to
|
|
|
205 * platforms where the size of a pointer is larger than the size of long.
|
|
|
206 */
|
|
|
207 #if defined(__SIZEOF_LONG__) && defined(__SIZEOF_POINTER__)
|
|
|
208 #if __SIZEOF_POINTER__ > __SIZEOF_LONG__
|
|
|
209 #define KHRONOS_USE_INTPTR_T
|
|
|
210 #endif
|
|
|
211 #endif
|
|
|
212
|
|
|
213 #elif defined(__VMS ) || defined(__sgi)
|
|
|
214
|
|
|
215 /*
|
|
|
216 * Using <inttypes.h>
|
|
|
217 */
|
|
|
218 #include <inttypes.h>
|
|
|
219 typedef int32_t khronos_int32_t;
|
|
|
220 typedef uint32_t khronos_uint32_t;
|
|
|
221 typedef int64_t khronos_int64_t;
|
|
|
222 typedef uint64_t khronos_uint64_t;
|
|
|
223 #define KHRONOS_SUPPORT_INT64 1
|
|
|
224 #define KHRONOS_SUPPORT_FLOAT 1
|
|
|
225
|
|
|
226 #elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
|
|
|
227
|
|
|
228 /*
|
|
|
229 * Win32
|
|
|
230 */
|
|
|
231 typedef __int32 khronos_int32_t;
|
|
|
232 typedef unsigned __int32 khronos_uint32_t;
|
|
|
233 typedef __int64 khronos_int64_t;
|
|
|
234 typedef unsigned __int64 khronos_uint64_t;
|
|
|
235 #define KHRONOS_SUPPORT_INT64 1
|
|
|
236 #define KHRONOS_SUPPORT_FLOAT 1
|
|
|
237
|
|
|
238 #elif defined(__sun__) || defined(__digital__)
|
|
|
239
|
|
|
240 /*
|
|
|
241 * Sun or Digital
|
|
|
242 */
|
|
|
243 typedef int khronos_int32_t;
|
|
|
244 typedef unsigned int khronos_uint32_t;
|
|
|
245 #if defined(__arch64__) || defined(_LP64)
|
|
|
246 typedef long int khronos_int64_t;
|
|
|
247 typedef unsigned long int khronos_uint64_t;
|
|
|
248 #else
|
|
|
249 typedef long long int khronos_int64_t;
|
|
|
250 typedef unsigned long long int khronos_uint64_t;
|
|
|
251 #endif /* __arch64__ */
|
|
|
252 #define KHRONOS_SUPPORT_INT64 1
|
|
|
253 #define KHRONOS_SUPPORT_FLOAT 1
|
|
|
254
|
|
|
255 #elif 0
|
|
|
256
|
|
|
257 /*
|
|
|
258 * Hypothetical platform with no float or int64 support
|
|
|
259 */
|
|
|
260 typedef int khronos_int32_t;
|
|
|
261 typedef unsigned int khronos_uint32_t;
|
|
|
262 #define KHRONOS_SUPPORT_INT64 0
|
|
|
263 #define KHRONOS_SUPPORT_FLOAT 0
|
|
|
264
|
|
|
265 #else
|
|
|
266
|
|
|
267 /*
|
|
|
268 * Generic fallback
|
|
|
269 */
|
|
|
270 #include <stdint.h>
|
|
|
271 typedef int32_t khronos_int32_t;
|
|
|
272 typedef uint32_t khronos_uint32_t;
|
|
|
273 typedef int64_t khronos_int64_t;
|
|
|
274 typedef uint64_t khronos_uint64_t;
|
|
|
275 #define KHRONOS_SUPPORT_INT64 1
|
|
|
276 #define KHRONOS_SUPPORT_FLOAT 1
|
|
|
277
|
|
|
278 #endif
|
|
|
279
|
|
|
280
|
|
|
281 /*
|
|
|
282 * Types that are (so far) the same on all platforms
|
|
|
283 */
|
|
|
284 typedef signed char khronos_int8_t;
|
|
|
285 typedef unsigned char khronos_uint8_t;
|
|
|
286 typedef signed short int khronos_int16_t;
|
|
|
287 typedef unsigned short int khronos_uint16_t;
|
|
|
288
|
|
|
289 /*
|
|
|
290 * Types that differ between LLP64 and LP64 architectures - in LLP64,
|
|
|
291 * pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
|
|
|
292 * to be the only LLP64 architecture in current use.
|
|
|
293 */
|
|
|
294 #ifdef KHRONOS_USE_INTPTR_T
|
|
|
295 typedef intptr_t khronos_intptr_t;
|
|
|
296 typedef uintptr_t khronos_uintptr_t;
|
|
|
297 #elif defined(_WIN64)
|
|
|
298 typedef signed long long int khronos_intptr_t;
|
|
|
299 typedef unsigned long long int khronos_uintptr_t;
|
|
|
300 #else
|
|
|
301 typedef signed long int khronos_intptr_t;
|
|
|
302 typedef unsigned long int khronos_uintptr_t;
|
|
|
303 #endif
|
|
|
304
|
|
|
305 #if defined(_WIN64)
|
|
|
306 typedef signed long long int khronos_ssize_t;
|
|
|
307 typedef unsigned long long int khronos_usize_t;
|
|
|
308 #else
|
|
|
309 typedef signed long int khronos_ssize_t;
|
|
|
310 typedef unsigned long int khronos_usize_t;
|
|
|
311 #endif
|
|
|
312
|
|
|
313 #if KHRONOS_SUPPORT_FLOAT
|
|
|
314 /*
|
|
|
315 * Float type
|
|
|
316 */
|
|
|
317 typedef float khronos_float_t;
|
|
|
318 #endif
|
|
|
319
|
|
|
320 #if KHRONOS_SUPPORT_INT64
|
|
|
321 /* Time types
|
|
|
322 *
|
|
|
323 * These types can be used to represent a time interval in nanoseconds or
|
|
|
324 * an absolute Unadjusted System Time. Unadjusted System Time is the number
|
|
|
325 * of nanoseconds since some arbitrary system event (e.g. since the last
|
|
|
326 * time the system booted). The Unadjusted System Time is an unsigned
|
|
|
327 * 64 bit value that wraps back to 0 every 584 years. Time intervals
|
|
|
328 * may be either signed or unsigned.
|
|
|
329 */
|
|
|
330 typedef khronos_uint64_t khronos_utime_nanoseconds_t;
|
|
|
331 typedef khronos_int64_t khronos_stime_nanoseconds_t;
|
|
|
332 #endif
|
|
|
333
|
|
|
334 /*
|
|
|
335 * Dummy value used to pad enum types to 32 bits.
|
|
|
336 */
|
|
|
337 #ifndef KHRONOS_MAX_ENUM
|
|
|
338 #define KHRONOS_MAX_ENUM 0x7FFFFFFF
|
|
|
339 #endif
|
|
|
340
|
|
|
341 /*
|
|
|
342 * Enumerated boolean type
|
|
|
343 *
|
|
|
344 * Values other than zero should be considered to be true. Therefore
|
|
|
345 * comparisons should not be made against KHRONOS_TRUE.
|
|
|
346 */
|
|
|
347 typedef enum {
|
|
|
348 KHRONOS_FALSE = 0,
|
|
|
349 KHRONOS_TRUE = 1,
|
|
|
350 KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
|
|
|
351 } khronos_boolean_enum_t;
|
|
|
352
|
|
|
353 #endif /* __khrplatform_h_ */
|
|
|
354
|
|
|
355
|
|
|
356 #ifndef __eglplatform_h_
|
|
|
357 #define __eglplatform_h_
|
|
|
358
|
|
|
359 /*
|
|
|
360 ** Copyright 2007-2020 The Khronos Group Inc.
|
|
|
361 ** SPDX-License-Identifier: Apache-2.0
|
|
|
362 */
|
|
|
363
|
|
|
364 /* Platform-specific types and definitions for egl.h
|
|
|
365 *
|
|
|
366 * Adopters may modify khrplatform.h and this file to suit their platform.
|
|
|
367 * You are encouraged to submit all modifications to the Khronos group so that
|
|
|
368 * they can be included in future versions of this file. Please submit changes
|
|
|
369 * by filing an issue or pull request on the public Khronos EGL Registry, at
|
|
|
370 * https://www.github.com/KhronosGroup/EGL-Registry/
|
|
|
371 */
|
|
|
372
|
|
|
373 /*#include <KHR/khrplatform.h>*/
|
|
|
374
|
|
|
375 /* Macros used in EGL function prototype declarations.
|
|
|
376 *
|
|
|
377 * EGL functions should be prototyped as:
|
|
|
378 *
|
|
|
379 * EGLAPI return-type EGLAPIENTRY eglFunction(arguments);
|
|
|
380 * typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments);
|
|
|
381 *
|
|
|
382 * KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h
|
|
|
383 */
|
|
|
384
|
|
|
385 #ifndef EGLAPI
|
|
|
386 #define EGLAPI KHRONOS_APICALL
|
|
|
387 #endif
|
|
|
388
|
|
|
389 #ifndef EGLAPIENTRY
|
|
|
390 #define EGLAPIENTRY KHRONOS_APIENTRY
|
|
|
391 #endif
|
|
|
392 #define EGLAPIENTRYP EGLAPIENTRY*
|
|
|
393
|
|
|
394 /* The types NativeDisplayType, NativeWindowType, and NativePixmapType
|
|
|
395 * are aliases of window-system-dependent types, such as X Display * or
|
|
|
396 * Windows Device Context. They must be defined in platform-specific
|
|
|
397 * code below. The EGL-prefixed versions of Native*Type are the same
|
|
|
398 * types, renamed in EGL 1.3 so all types in the API start with "EGL".
|
|
|
399 *
|
|
|
400 * Khronos STRONGLY RECOMMENDS that you use the default definitions
|
|
|
401 * provided below, since these changes affect both binary and source
|
|
|
402 * portability of applications using EGL running on different EGL
|
|
|
403 * implementations.
|
|
|
404 */
|
|
|
405
|
|
|
406 #if defined(EGL_NO_PLATFORM_SPECIFIC_TYPES)
|
|
|
407
|
|
|
408 typedef void *EGLNativeDisplayType;
|
|
|
409 typedef void *EGLNativePixmapType;
|
|
|
410 typedef void *EGLNativeWindowType;
|
|
|
411
|
|
|
412 #elif defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */
|
|
|
413 #ifndef WIN32_LEAN_AND_MEAN
|
|
|
414 #define WIN32_LEAN_AND_MEAN 1
|
|
|
415 #endif
|
|
|
416 #include <windows.h>
|
|
|
417
|
|
|
418 typedef HDC EGLNativeDisplayType;
|
|
|
419 typedef HBITMAP EGLNativePixmapType;
|
|
|
420 typedef HWND EGLNativeWindowType;
|
|
|
421
|
|
|
422 #elif defined(SDL_PLATFORM_EMSCRIPTEN)
|
|
|
423
|
|
|
424 typedef int EGLNativeDisplayType;
|
|
|
425 typedef int EGLNativePixmapType;
|
|
|
426 typedef int EGLNativeWindowType;
|
|
|
427
|
|
|
428 #elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */
|
|
|
429
|
|
|
430 typedef int EGLNativeDisplayType;
|
|
|
431 typedef void *EGLNativePixmapType;
|
|
|
432 typedef void *EGLNativeWindowType;
|
|
|
433
|
|
|
434 #elif defined(WL_EGL_PLATFORM)
|
|
|
435
|
|
|
436 typedef struct wl_display *EGLNativeDisplayType;
|
|
|
437 typedef struct wl_egl_pixmap *EGLNativePixmapType;
|
|
|
438 typedef struct wl_egl_window *EGLNativeWindowType;
|
|
|
439
|
|
|
440 #elif defined(__GBM__)
|
|
|
441
|
|
|
442 typedef struct gbm_device *EGLNativeDisplayType;
|
|
|
443 typedef struct gbm_bo *EGLNativePixmapType;
|
|
|
444 typedef void *EGLNativeWindowType;
|
|
|
445
|
|
|
446 #elif defined(__ANDROID__) || defined(ANDROID)
|
|
|
447
|
|
|
448 struct ANativeWindow;
|
|
|
449 struct egl_native_pixmap_t;
|
|
|
450
|
|
|
451 typedef void* EGLNativeDisplayType;
|
|
|
452 typedef struct egl_native_pixmap_t* EGLNativePixmapType;
|
|
|
453 typedef struct ANativeWindow* EGLNativeWindowType;
|
|
|
454
|
|
|
455 #elif defined(USE_OZONE)
|
|
|
456
|
|
|
457 typedef intptr_t EGLNativeDisplayType;
|
|
|
458 typedef intptr_t EGLNativePixmapType;
|
|
|
459 typedef intptr_t EGLNativeWindowType;
|
|
|
460
|
|
|
461 #elif defined(USE_X11)
|
|
|
462
|
|
|
463 /* X11 (tentative) */
|
|
|
464 #include <X11/Xlib.h>
|
|
|
465 #include <X11/Xutil.h>
|
|
|
466
|
|
|
467 typedef Display *EGLNativeDisplayType;
|
|
|
468 typedef Pixmap EGLNativePixmapType;
|
|
|
469 typedef Window EGLNativeWindowType;
|
|
|
470
|
|
|
471 #elif defined(__unix__)
|
|
|
472
|
|
|
473 typedef void *EGLNativeDisplayType;
|
|
|
474 typedef khronos_uintptr_t EGLNativePixmapType;
|
|
|
475 typedef khronos_uintptr_t EGLNativeWindowType;
|
|
|
476
|
|
|
477 #elif defined(__APPLE__)
|
|
|
478
|
|
|
479 typedef int EGLNativeDisplayType;
|
|
|
480 typedef void *EGLNativePixmapType;
|
|
|
481 typedef void *EGLNativeWindowType;
|
|
|
482
|
|
|
483 #elif defined(__HAIKU__)
|
|
|
484
|
|
|
485 #include <kernel/image.h>
|
|
|
486
|
|
|
487 typedef void *EGLNativeDisplayType;
|
|
|
488 typedef khronos_uintptr_t EGLNativePixmapType;
|
|
|
489 typedef khronos_uintptr_t EGLNativeWindowType;
|
|
|
490
|
|
|
491 #elif defined(__Fuchsia__)
|
|
|
492
|
|
|
493 typedef void *EGLNativeDisplayType;
|
|
|
494 typedef khronos_uintptr_t EGLNativePixmapType;
|
|
|
495 typedef khronos_uintptr_t EGLNativeWindowType;
|
|
|
496
|
|
|
497 #else
|
|
|
498 #error "Platform not recognized"
|
|
|
499 #endif
|
|
|
500
|
|
|
501 /* EGL 1.2 types, renamed for consistency in EGL 1.3 */
|
|
|
502 typedef EGLNativeDisplayType NativeDisplayType;
|
|
|
503 typedef EGLNativePixmapType NativePixmapType;
|
|
|
504 typedef EGLNativeWindowType NativeWindowType;
|
|
|
505
|
|
|
506
|
|
|
507 /* Define EGLint. This must be a signed integral type large enough to contain
|
|
|
508 * all legal attribute names and values passed into and out of EGL, whether
|
|
|
509 * their type is boolean, bitmask, enumerant (symbolic constant), integer,
|
|
|
510 * handle, or other. While in general a 32-bit integer will suffice, if
|
|
|
511 * handles are 64 bit types, then EGLint should be defined as a signed 64-bit
|
|
|
512 * integer type.
|
|
|
513 */
|
|
|
514 typedef khronos_int32_t EGLint;
|
|
|
515
|
|
|
516
|
|
|
517 /* C++ / C typecast macros for special EGL handle values */
|
|
|
518 #if defined(__cplusplus)
|
|
|
519 #define EGL_CAST(type, value) (static_cast<type>(value))
|
|
|
520 #else
|
|
|
521 #define EGL_CAST(type, value) ((type) (value))
|
|
|
522 #endif
|
|
|
523
|
|
|
524 #endif /* __eglplatform_h */
|
|
|
525
|
|
|
526
|
|
|
527 #ifndef __egl_h_
|
|
|
528 #define __egl_h_ 1
|
|
|
529
|
|
|
530 #ifdef __cplusplus
|
|
|
531 extern "C" {
|
|
|
532 #endif
|
|
|
533
|
|
|
534 /*
|
|
|
535 ** Copyright 2013-2020 The Khronos Group Inc.
|
|
|
536 ** SPDX-License-Identifier: Apache-2.0
|
|
|
537 **
|
|
|
538 ** This header is generated from the Khronos EGL XML API Registry.
|
|
|
539 ** The current version of the Registry, generator scripts
|
|
|
540 ** used to make the header, and the header can be found at
|
|
|
541 ** http://www.khronos.org/registry/egl
|
|
|
542 **
|
|
|
543 ** Khronos $Git commit SHA1: 6fb1daea15 $ on $Git commit date: 2022-05-25 09:41:13 -0600 $
|
|
|
544 */
|
|
|
545
|
|
|
546 /*#include <EGL/eglplatform.h>*/
|
|
|
547
|
|
|
548 #ifndef EGL_EGL_PROTOTYPES
|
|
|
549 #define EGL_EGL_PROTOTYPES 1
|
|
|
550 #endif
|
|
|
551
|
|
|
552 /* Generated on date 20220525 */
|
|
|
553
|
|
|
554 /* Generated C header for:
|
|
|
555 * API: egl
|
|
|
556 * Versions considered: .*
|
|
|
557 * Versions emitted: .*
|
|
|
558 * Default extensions included: None
|
|
|
559 * Additional extensions included: _nomatch_^
|
|
|
560 * Extensions removed: _nomatch_^
|
|
|
561 */
|
|
|
562
|
|
|
563 #ifndef EGL_VERSION_1_0
|
|
|
564 #define EGL_VERSION_1_0 1
|
|
|
565 typedef unsigned int EGLBoolean;
|
|
|
566 typedef void *EGLDisplay;
|
|
|
567 /*#include <KHR/khrplatform.h>*/
|
|
|
568 /*#include <EGL/eglplatform.h>*/
|
|
|
569 typedef void *EGLConfig;
|
|
|
570 typedef void *EGLSurface;
|
|
|
571 typedef void *EGLContext;
|
|
|
572 typedef void (*__eglMustCastToProperFunctionPointerType)(void);
|
|
|
573 #define EGL_ALPHA_SIZE 0x3021
|
|
|
574 #define EGL_BAD_ACCESS 0x3002
|
|
|
575 #define EGL_BAD_ALLOC 0x3003
|
|
|
576 #define EGL_BAD_ATTRIBUTE 0x3004
|
|
|
577 #define EGL_BAD_CONFIG 0x3005
|
|
|
578 #define EGL_BAD_CONTEXT 0x3006
|
|
|
579 #define EGL_BAD_CURRENT_SURFACE 0x3007
|
|
|
580 #define EGL_BAD_DISPLAY 0x3008
|
|
|
581 #define EGL_BAD_MATCH 0x3009
|
|
|
582 #define EGL_BAD_NATIVE_PIXMAP 0x300A
|
|
|
583 #define EGL_BAD_NATIVE_WINDOW 0x300B
|
|
|
584 #define EGL_BAD_PARAMETER 0x300C
|
|
|
585 #define EGL_BAD_SURFACE 0x300D
|
|
|
586 #define EGL_BLUE_SIZE 0x3022
|
|
|
587 #define EGL_BUFFER_SIZE 0x3020
|
|
|
588 #define EGL_CONFIG_CAVEAT 0x3027
|
|
|
589 #define EGL_CONFIG_ID 0x3028
|
|
|
590 #define EGL_CORE_NATIVE_ENGINE 0x305B
|
|
|
591 #define EGL_DEPTH_SIZE 0x3025
|
|
|
592 #define EGL_DONT_CARE EGL_CAST(EGLint,-1)
|
|
|
593 #define EGL_DRAW 0x3059
|
|
|
594 #define EGL_EXTENSIONS 0x3055
|
|
|
595 #define EGL_FALSE 0
|
|
|
596 #define EGL_GREEN_SIZE 0x3023
|
|
|
597 #define EGL_HEIGHT 0x3056
|
|
|
598 #define EGL_LARGEST_PBUFFER 0x3058
|
|
|
599 #define EGL_LEVEL 0x3029
|
|
|
600 #define EGL_MAX_PBUFFER_HEIGHT 0x302A
|
|
|
601 #define EGL_MAX_PBUFFER_PIXELS 0x302B
|
|
|
602 #define EGL_MAX_PBUFFER_WIDTH 0x302C
|
|
|
603 #define EGL_NATIVE_RENDERABLE 0x302D
|
|
|
604 #define EGL_NATIVE_VISUAL_ID 0x302E
|
|
|
605 #define EGL_NATIVE_VISUAL_TYPE 0x302F
|
|
|
606 #define EGL_NONE 0x3038
|
|
|
607 #define EGL_NON_CONFORMANT_CONFIG 0x3051
|
|
|
608 #define EGL_NOT_INITIALIZED 0x3001
|
|
|
609 #define EGL_NO_CONTEXT EGL_CAST(EGLContext,0)
|
|
|
610 #define EGL_NO_DISPLAY EGL_CAST(EGLDisplay,0)
|
|
|
611 #define EGL_NO_SURFACE EGL_CAST(EGLSurface,0)
|
|
|
612 #define EGL_PBUFFER_BIT 0x0001
|
|
|
613 #define EGL_PIXMAP_BIT 0x0002
|
|
|
614 #define EGL_READ 0x305A
|
|
|
615 #define EGL_RED_SIZE 0x3024
|
|
|
616 #define EGL_SAMPLES 0x3031
|
|
|
617 #define EGL_SAMPLE_BUFFERS 0x3032
|
|
|
618 #define EGL_SLOW_CONFIG 0x3050
|
|
|
619 #define EGL_STENCIL_SIZE 0x3026
|
|
|
620 #define EGL_SUCCESS 0x3000
|
|
|
621 #define EGL_SURFACE_TYPE 0x3033
|
|
|
622 #define EGL_TRANSPARENT_BLUE_VALUE 0x3035
|
|
|
623 #define EGL_TRANSPARENT_GREEN_VALUE 0x3036
|
|
|
624 #define EGL_TRANSPARENT_RED_VALUE 0x3037
|
|
|
625 #define EGL_TRANSPARENT_RGB 0x3052
|
|
|
626 #define EGL_TRANSPARENT_TYPE 0x3034
|
|
|
627 #define EGL_TRUE 1
|
|
|
628 #define EGL_VENDOR 0x3053
|
|
|
629 #define EGL_VERSION 0x3054
|
|
|
630 #define EGL_WIDTH 0x3057
|
|
|
631 #define EGL_WINDOW_BIT 0x0004
|
|
|
632 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCHOOSECONFIGPROC) (EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config);
|
|
|
633 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOPYBUFFERSPROC) (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target);
|
|
|
634 typedef EGLContext (EGLAPIENTRYP PFNEGLCREATECONTEXTPROC) (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list);
|
|
|
635 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPBUFFERSURFACEPROC) (EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list);
|
|
|
636 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEPROC) (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list);
|
|
|
637 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEWINDOWSURFACEPROC) (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list);
|
|
|
638 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYCONTEXTPROC) (EGLDisplay dpy, EGLContext ctx);
|
|
|
639 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSURFACEPROC) (EGLDisplay dpy, EGLSurface surface);
|
|
|
640 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETCONFIGATTRIBPROC) (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value);
|
|
|
641 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETCONFIGSPROC) (EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config);
|
|
|
642 typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETCURRENTDISPLAYPROC) (void);
|
|
|
643 typedef EGLSurface (EGLAPIENTRYP PFNEGLGETCURRENTSURFACEPROC) (EGLint readdraw);
|
|
|
644 typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETDISPLAYPROC) (EGLNativeDisplayType display_id);
|
|
|
645 typedef EGLint (EGLAPIENTRYP PFNEGLGETERRORPROC) (void);
|
|
|
646 typedef __eglMustCastToProperFunctionPointerType (EGLAPIENTRYP PFNEGLGETPROCADDRESSPROC) (const char *procname);
|
|
|
647 typedef EGLBoolean (EGLAPIENTRYP PFNEGLINITIALIZEPROC) (EGLDisplay dpy, EGLint *major, EGLint *minor);
|
|
|
648 typedef EGLBoolean (EGLAPIENTRYP PFNEGLMAKECURRENTPROC) (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx);
|
|
|
649 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYCONTEXTPROC) (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value);
|
|
|
650 typedef const char *(EGLAPIENTRYP PFNEGLQUERYSTRINGPROC) (EGLDisplay dpy, EGLint name);
|
|
|
651 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value);
|
|
|
652 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSPROC) (EGLDisplay dpy, EGLSurface surface);
|
|
|
653 typedef EGLBoolean (EGLAPIENTRYP PFNEGLTERMINATEPROC) (EGLDisplay dpy);
|
|
|
654 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITGLPROC) (void);
|
|
|
655 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITNATIVEPROC) (EGLint engine);
|
|
|
656 #if EGL_EGL_PROTOTYPES
|
|
|
657 EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig (EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config);
|
|
|
658 EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target);
|
|
|
659 EGLAPI EGLContext EGLAPIENTRY eglCreateContext (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list);
|
|
|
660 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface (EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list);
|
|
|
661 EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list);
|
|
|
662 EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list);
|
|
|
663 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext (EGLDisplay dpy, EGLContext ctx);
|
|
|
664 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface (EGLDisplay dpy, EGLSurface surface);
|
|
|
665 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value);
|
|
|
666 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs (EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config);
|
|
|
667 EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay (void);
|
|
|
668 EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface (EGLint readdraw);
|
|
|
669 EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay (EGLNativeDisplayType display_id);
|
|
|
670 EGLAPI EGLint EGLAPIENTRY eglGetError (void);
|
|
|
671 EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname);
|
|
|
672 EGLAPI EGLBoolean EGLAPIENTRY eglInitialize (EGLDisplay dpy, EGLint *major, EGLint *minor);
|
|
|
673 EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx);
|
|
|
674 EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value);
|
|
|
675 EGLAPI const char *EGLAPIENTRY eglQueryString (EGLDisplay dpy, EGLint name);
|
|
|
676 EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value);
|
|
|
677 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers (EGLDisplay dpy, EGLSurface surface);
|
|
|
678 EGLAPI EGLBoolean EGLAPIENTRY eglTerminate (EGLDisplay dpy);
|
|
|
679 EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL (void);
|
|
|
680 EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative (EGLint engine);
|
|
|
681 #endif
|
|
|
682 #endif /* EGL_VERSION_1_0 */
|
|
|
683
|
|
|
684 #ifndef EGL_VERSION_1_1
|
|
|
685 #define EGL_VERSION_1_1 1
|
|
|
686 #define EGL_BACK_BUFFER 0x3084
|
|
|
687 #define EGL_BIND_TO_TEXTURE_RGB 0x3039
|
|
|
688 #define EGL_BIND_TO_TEXTURE_RGBA 0x303A
|
|
|
689 #define EGL_CONTEXT_LOST 0x300E
|
|
|
690 #define EGL_MIN_SWAP_INTERVAL 0x303B
|
|
|
691 #define EGL_MAX_SWAP_INTERVAL 0x303C
|
|
|
692 #define EGL_MIPMAP_TEXTURE 0x3082
|
|
|
693 #define EGL_MIPMAP_LEVEL 0x3083
|
|
|
694 #define EGL_NO_TEXTURE 0x305C
|
|
|
695 #define EGL_TEXTURE_2D 0x305F
|
|
|
696 #define EGL_TEXTURE_FORMAT 0x3080
|
|
|
697 #define EGL_TEXTURE_RGB 0x305D
|
|
|
698 #define EGL_TEXTURE_RGBA 0x305E
|
|
|
699 #define EGL_TEXTURE_TARGET 0x3081
|
|
|
700 typedef EGLBoolean (EGLAPIENTRYP PFNEGLBINDTEXIMAGEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
|
|
|
701 typedef EGLBoolean (EGLAPIENTRYP PFNEGLRELEASETEXIMAGEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
|
|
|
702 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSURFACEATTRIBPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value);
|
|
|
703 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPINTERVALPROC) (EGLDisplay dpy, EGLint interval);
|
|
|
704 #if EGL_EGL_PROTOTYPES
|
|
|
705 EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
|
|
|
706 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
|
|
|
707 EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value);
|
|
|
708 EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval (EGLDisplay dpy, EGLint interval);
|
|
|
709 #endif
|
|
|
710 #endif /* EGL_VERSION_1_1 */
|
|
|
711
|
|
|
712 #ifndef EGL_VERSION_1_2
|
|
|
713 #define EGL_VERSION_1_2 1
|
|
|
714 typedef unsigned int EGLenum;
|
|
|
715 typedef void *EGLClientBuffer;
|
|
|
716 #define EGL_ALPHA_FORMAT 0x3088
|
|
|
717 #define EGL_ALPHA_FORMAT_NONPRE 0x308B
|
|
|
718 #define EGL_ALPHA_FORMAT_PRE 0x308C
|
|
|
719 #define EGL_ALPHA_MASK_SIZE 0x303E
|
|
|
720 #define EGL_BUFFER_PRESERVED 0x3094
|
|
|
721 #define EGL_BUFFER_DESTROYED 0x3095
|
|
|
722 #define EGL_CLIENT_APIS 0x308D
|
|
|
723 #define EGL_COLORSPACE 0x3087
|
|
|
724 #define EGL_COLORSPACE_sRGB 0x3089
|
|
|
725 #define EGL_COLORSPACE_LINEAR 0x308A
|
|
|
726 #define EGL_COLOR_BUFFER_TYPE 0x303F
|
|
|
727 #define EGL_CONTEXT_CLIENT_TYPE 0x3097
|
|
|
728 #define EGL_DISPLAY_SCALING 10000
|
|
|
729 #define EGL_HORIZONTAL_RESOLUTION 0x3090
|
|
|
730 #define EGL_LUMINANCE_BUFFER 0x308F
|
|
|
731 #define EGL_LUMINANCE_SIZE 0x303D
|
|
|
732 #define EGL_OPENGL_ES_BIT 0x0001
|
|
|
733 #define EGL_OPENVG_BIT 0x0002
|
|
|
734 #define EGL_OPENGL_ES_API 0x30A0
|
|
|
735 #define EGL_OPENVG_API 0x30A1
|
|
|
736 #define EGL_OPENVG_IMAGE 0x3096
|
|
|
737 #define EGL_PIXEL_ASPECT_RATIO 0x3092
|
|
|
738 #define EGL_RENDERABLE_TYPE 0x3040
|
|
|
739 #define EGL_RENDER_BUFFER 0x3086
|
|
|
740 #define EGL_RGB_BUFFER 0x308E
|
|
|
741 #define EGL_SINGLE_BUFFER 0x3085
|
|
|
742 #define EGL_SWAP_BEHAVIOR 0x3093
|
|
|
743 #define EGL_UNKNOWN EGL_CAST(EGLint,-1)
|
|
|
744 #define EGL_VERTICAL_RESOLUTION 0x3091
|
|
|
745 typedef EGLBoolean (EGLAPIENTRYP PFNEGLBINDAPIPROC) (EGLenum api);
|
|
|
746 typedef EGLenum (EGLAPIENTRYP PFNEGLQUERYAPIPROC) (void);
|
|
|
747 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC) (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list);
|
|
|
748 typedef EGLBoolean (EGLAPIENTRYP PFNEGLRELEASETHREADPROC) (void);
|
|
|
749 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITCLIENTPROC) (void);
|
|
|
750 #if EGL_EGL_PROTOTYPES
|
|
|
751 EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI (EGLenum api);
|
|
|
752 EGLAPI EGLenum EGLAPIENTRY eglQueryAPI (void);
|
|
|
753 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list);
|
|
|
754 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread (void);
|
|
|
755 EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient (void);
|
|
|
756 #endif
|
|
|
757 #endif /* EGL_VERSION_1_2 */
|
|
|
758
|
|
|
759 #ifndef EGL_VERSION_1_3
|
|
|
760 #define EGL_VERSION_1_3 1
|
|
|
761 #define EGL_CONFORMANT 0x3042
|
|
|
762 #define EGL_CONTEXT_CLIENT_VERSION 0x3098
|
|
|
763 #define EGL_MATCH_NATIVE_PIXMAP 0x3041
|
|
|
764 #define EGL_OPENGL_ES2_BIT 0x0004
|
|
|
765 #define EGL_VG_ALPHA_FORMAT 0x3088
|
|
|
766 #define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B
|
|
|
767 #define EGL_VG_ALPHA_FORMAT_PRE 0x308C
|
|
|
768 #define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040
|
|
|
769 #define EGL_VG_COLORSPACE 0x3087
|
|
|
770 #define EGL_VG_COLORSPACE_sRGB 0x3089
|
|
|
771 #define EGL_VG_COLORSPACE_LINEAR 0x308A
|
|
|
772 #define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020
|
|
|
773 #endif /* EGL_VERSION_1_3 */
|
|
|
774
|
|
|
775 #ifndef EGL_VERSION_1_4
|
|
|
776 #define EGL_VERSION_1_4 1
|
|
|
777 #define EGL_DEFAULT_DISPLAY EGL_CAST(EGLNativeDisplayType,0)
|
|
|
778 #define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200
|
|
|
779 #define EGL_MULTISAMPLE_RESOLVE 0x3099
|
|
|
780 #define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A
|
|
|
781 #define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B
|
|
|
782 #define EGL_OPENGL_API 0x30A2
|
|
|
783 #define EGL_OPENGL_BIT 0x0008
|
|
|
784 #define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400
|
|
|
785 typedef EGLContext (EGLAPIENTRYP PFNEGLGETCURRENTCONTEXTPROC) (void);
|
|
|
786 #if EGL_EGL_PROTOTYPES
|
|
|
787 EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext (void);
|
|
|
788 #endif
|
|
|
789 #endif /* EGL_VERSION_1_4 */
|
|
|
790
|
|
|
791 #ifndef EGL_VERSION_1_5
|
|
|
792 #define EGL_VERSION_1_5 1
|
|
|
793 typedef void *EGLSync;
|
|
|
794 typedef intptr_t EGLAttrib;
|
|
|
795 typedef khronos_utime_nanoseconds_t EGLTime;
|
|
|
796 typedef void *EGLImage;
|
|
|
797 #define EGL_CONTEXT_MAJOR_VERSION 0x3098
|
|
|
798 #define EGL_CONTEXT_MINOR_VERSION 0x30FB
|
|
|
799 #define EGL_CONTEXT_OPENGL_PROFILE_MASK 0x30FD
|
|
|
800 #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD
|
|
|
801 #define EGL_NO_RESET_NOTIFICATION 0x31BE
|
|
|
802 #define EGL_LOSE_CONTEXT_ON_RESET 0x31BF
|
|
|
803 #define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT 0x00000001
|
|
|
804 #define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT 0x00000002
|
|
|
805 #define EGL_CONTEXT_OPENGL_DEBUG 0x31B0
|
|
|
806 #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1
|
|
|
807 #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2
|
|
|
808 #define EGL_OPENGL_ES3_BIT 0x00000040
|
|
|
809 #define EGL_CL_EVENT_HANDLE 0x309C
|
|
|
810 #define EGL_SYNC_CL_EVENT 0x30FE
|
|
|
811 #define EGL_SYNC_CL_EVENT_COMPLETE 0x30FF
|
|
|
812 #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE 0x30F0
|
|
|
813 #define EGL_SYNC_TYPE 0x30F7
|
|
|
814 #define EGL_SYNC_STATUS 0x30F1
|
|
|
815 #define EGL_SYNC_CONDITION 0x30F8
|
|
|
816 #define EGL_SIGNALED 0x30F2
|
|
|
817 #define EGL_UNSIGNALED 0x30F3
|
|
|
818 #define EGL_SYNC_FLUSH_COMMANDS_BIT 0x0001
|
|
|
819 #define EGL_FOREVER 0xFFFFFFFFFFFFFFFFull
|
|
|
820 #define EGL_TIMEOUT_EXPIRED 0x30F5
|
|
|
821 #define EGL_CONDITION_SATISFIED 0x30F6
|
|
|
822 #define EGL_NO_SYNC EGL_CAST(EGLSync,0)
|
|
|
823 #define EGL_SYNC_FENCE 0x30F9
|
|
|
824 #define EGL_GL_COLORSPACE 0x309D
|
|
|
825 #define EGL_GL_COLORSPACE_SRGB 0x3089
|
|
|
826 #define EGL_GL_COLORSPACE_LINEAR 0x308A
|
|
|
827 #define EGL_GL_RENDERBUFFER 0x30B9
|
|
|
828 #define EGL_GL_TEXTURE_2D 0x30B1
|
|
|
829 #define EGL_GL_TEXTURE_LEVEL 0x30BC
|
|
|
830 #define EGL_GL_TEXTURE_3D 0x30B2
|
|
|
831 #define EGL_GL_TEXTURE_ZOFFSET 0x30BD
|
|
|
832 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x30B3
|
|
|
833 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x30B4
|
|
|
834 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x30B5
|
|
|
835 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x30B6
|
|
|
836 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x30B7
|
|
|
837 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x30B8
|
|
|
838 #define EGL_IMAGE_PRESERVED 0x30D2
|
|
|
839 #define EGL_NO_IMAGE EGL_CAST(EGLImage,0)
|
|
|
840 typedef EGLSync (EGLAPIENTRYP PFNEGLCREATESYNCPROC) (EGLDisplay dpy, EGLenum type, const EGLAttrib *attrib_list);
|
|
|
841 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCPROC) (EGLDisplay dpy, EGLSync sync);
|
|
|
842 typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCPROC) (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout);
|
|
|
843 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBPROC) (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib *value);
|
|
|
844 typedef EGLImage (EGLAPIENTRYP PFNEGLCREATEIMAGEPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib *attrib_list);
|
|
|
845 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEPROC) (EGLDisplay dpy, EGLImage image);
|
|
|
846 typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYPROC) (EGLenum platform, void *native_display, const EGLAttrib *attrib_list);
|
|
|
847 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEPROC) (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLAttrib *attrib_list);
|
|
|
848 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC) (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLAttrib *attrib_list);
|
|
|
849 typedef EGLBoolean (EGLAPIENTRYP PFNEGLWAITSYNCPROC) (EGLDisplay dpy, EGLSync sync, EGLint flags);
|
|
|
850 #if EGL_EGL_PROTOTYPES
|
|
|
851 EGLAPI EGLSync EGLAPIENTRY eglCreateSync (EGLDisplay dpy, EGLenum type, const EGLAttrib *attrib_list);
|
|
|
852 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySync (EGLDisplay dpy, EGLSync sync);
|
|
|
853 EGLAPI EGLint EGLAPIENTRY eglClientWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout);
|
|
|
854 EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttrib (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib *value);
|
|
|
855 EGLAPI EGLImage EGLAPIENTRY eglCreateImage (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib *attrib_list);
|
|
|
856 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImage (EGLDisplay dpy, EGLImage image);
|
|
|
857 EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplay (EGLenum platform, void *native_display, const EGLAttrib *attrib_list);
|
|
|
858 EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformWindowSurface (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLAttrib *attrib_list);
|
|
|
859 EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformPixmapSurface (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLAttrib *attrib_list);
|
|
|
860 EGLAPI EGLBoolean EGLAPIENTRY eglWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags);
|
|
|
861 #endif
|
|
|
862 #endif /* EGL_VERSION_1_5 */
|
|
|
863
|
|
|
864 #ifdef __cplusplus
|
|
|
865 }
|
|
|
866 #endif
|
|
|
867
|
|
|
868 #endif /* __egl_h_ */
|
|
|
869
|
|
|
870
|
|
|
871 #ifndef __eglext_h_
|
|
|
872 #define __eglext_h_ 1
|
|
|
873
|
|
|
874 #ifdef __cplusplus
|
|
|
875 extern "C" {
|
|
|
876 #endif
|
|
|
877
|
|
|
878 /*
|
|
|
879 ** Copyright 2013-2020 The Khronos Group Inc.
|
|
|
880 ** SPDX-License-Identifier: Apache-2.0
|
|
|
881 **
|
|
|
882 ** This header is generated from the Khronos EGL XML API Registry.
|
|
|
883 ** The current version of the Registry, generator scripts
|
|
|
884 ** used to make the header, and the header can be found at
|
|
|
885 ** http://www.khronos.org/registry/egl
|
|
|
886 **
|
|
|
887 ** Khronos $Git commit SHA1: 6fb1daea15 $ on $Git commit date: 2022-05-25 09:41:13 -0600 $
|
|
|
888 */
|
|
|
889
|
|
|
890 /*#include <EGL/eglplatform.h>*/
|
|
|
891
|
|
|
892 #define EGL_EGLEXT_VERSION 20220525
|
|
|
893
|
|
|
894 /* Generated C header for:
|
|
|
895 * API: egl
|
|
|
896 * Versions considered: .*
|
|
|
897 * Versions emitted: _nomatch_^
|
|
|
898 * Default extensions included: egl
|
|
|
899 * Additional extensions included: _nomatch_^
|
|
|
900 * Extensions removed: _nomatch_^
|
|
|
901 */
|
|
|
902
|
|
|
903 #ifndef EGL_KHR_cl_event
|
|
|
904 #define EGL_KHR_cl_event 1
|
|
|
905 #define EGL_CL_EVENT_HANDLE_KHR 0x309C
|
|
|
906 #define EGL_SYNC_CL_EVENT_KHR 0x30FE
|
|
|
907 #define EGL_SYNC_CL_EVENT_COMPLETE_KHR 0x30FF
|
|
|
908 #endif /* EGL_KHR_cl_event */
|
|
|
909
|
|
|
910 #ifndef EGL_KHR_cl_event2
|
|
|
911 #define EGL_KHR_cl_event2 1
|
|
|
912 typedef void *EGLSyncKHR;
|
|
|
913 typedef intptr_t EGLAttribKHR;
|
|
|
914 typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNC64KHRPROC) (EGLDisplay dpy, EGLenum type, const EGLAttribKHR *attrib_list);
|
|
|
915 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
916 EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSync64KHR (EGLDisplay dpy, EGLenum type, const EGLAttribKHR *attrib_list);
|
|
|
917 #endif
|
|
|
918 #endif /* EGL_KHR_cl_event2 */
|
|
|
919
|
|
|
920 #ifndef EGL_KHR_client_get_all_proc_addresses
|
|
|
921 #define EGL_KHR_client_get_all_proc_addresses 1
|
|
|
922 #endif /* EGL_KHR_client_get_all_proc_addresses */
|
|
|
923
|
|
|
924 #ifndef EGL_KHR_config_attribs
|
|
|
925 #define EGL_KHR_config_attribs 1
|
|
|
926 #define EGL_CONFORMANT_KHR 0x3042
|
|
|
927 #define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020
|
|
|
928 #define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040
|
|
|
929 #endif /* EGL_KHR_config_attribs */
|
|
|
930
|
|
|
931 #ifndef EGL_KHR_context_flush_control
|
|
|
932 #define EGL_KHR_context_flush_control 1
|
|
|
933 #define EGL_CONTEXT_RELEASE_BEHAVIOR_NONE_KHR 0
|
|
|
934 #define EGL_CONTEXT_RELEASE_BEHAVIOR_KHR 0x2097
|
|
|
935 #define EGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR 0x2098
|
|
|
936 #endif /* EGL_KHR_context_flush_control */
|
|
|
937
|
|
|
938 #ifndef EGL_KHR_create_context
|
|
|
939 #define EGL_KHR_create_context 1
|
|
|
940 #define EGL_CONTEXT_MAJOR_VERSION_KHR 0x3098
|
|
|
941 #define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB
|
|
|
942 #define EGL_CONTEXT_FLAGS_KHR 0x30FC
|
|
|
943 #define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD
|
|
|
944 #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD
|
|
|
945 #define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE
|
|
|
946 #define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF
|
|
|
947 #define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001
|
|
|
948 #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002
|
|
|
949 #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004
|
|
|
950 #define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001
|
|
|
951 #define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002
|
|
|
952 #define EGL_OPENGL_ES3_BIT_KHR 0x00000040
|
|
|
953 #endif /* EGL_KHR_create_context */
|
|
|
954
|
|
|
955 #ifndef EGL_KHR_create_context_no_error
|
|
|
956 #define EGL_KHR_create_context_no_error 1
|
|
|
957 #define EGL_CONTEXT_OPENGL_NO_ERROR_KHR 0x31B3
|
|
|
958 #endif /* EGL_KHR_create_context_no_error */
|
|
|
959
|
|
|
960 #ifndef EGL_KHR_debug
|
|
|
961 #define EGL_KHR_debug 1
|
|
|
962 typedef void *EGLLabelKHR;
|
|
|
963 typedef void *EGLObjectKHR;
|
|
|
964 typedef void (EGLAPIENTRY *EGLDEBUGPROCKHR)(EGLenum error,const char *command,EGLint messageType,EGLLabelKHR threadLabel,EGLLabelKHR objectLabel,const char* message);
|
|
|
965 #define EGL_OBJECT_THREAD_KHR 0x33B0
|
|
|
966 #define EGL_OBJECT_DISPLAY_KHR 0x33B1
|
|
|
967 #define EGL_OBJECT_CONTEXT_KHR 0x33B2
|
|
|
968 #define EGL_OBJECT_SURFACE_KHR 0x33B3
|
|
|
969 #define EGL_OBJECT_IMAGE_KHR 0x33B4
|
|
|
970 #define EGL_OBJECT_SYNC_KHR 0x33B5
|
|
|
971 #define EGL_OBJECT_STREAM_KHR 0x33B6
|
|
|
972 #define EGL_DEBUG_MSG_CRITICAL_KHR 0x33B9
|
|
|
973 #define EGL_DEBUG_MSG_ERROR_KHR 0x33BA
|
|
|
974 #define EGL_DEBUG_MSG_WARN_KHR 0x33BB
|
|
|
975 #define EGL_DEBUG_MSG_INFO_KHR 0x33BC
|
|
|
976 #define EGL_DEBUG_CALLBACK_KHR 0x33B8
|
|
|
977 typedef EGLint (EGLAPIENTRYP PFNEGLDEBUGMESSAGECONTROLKHRPROC) (EGLDEBUGPROCKHR callback, const EGLAttrib *attrib_list);
|
|
|
978 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEBUGKHRPROC) (EGLint attribute, EGLAttrib *value);
|
|
|
979 typedef EGLint (EGLAPIENTRYP PFNEGLLABELOBJECTKHRPROC) (EGLDisplay display, EGLenum objectType, EGLObjectKHR object, EGLLabelKHR label);
|
|
|
980 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
981 EGLAPI EGLint EGLAPIENTRY eglDebugMessageControlKHR (EGLDEBUGPROCKHR callback, const EGLAttrib *attrib_list);
|
|
|
982 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDebugKHR (EGLint attribute, EGLAttrib *value);
|
|
|
983 EGLAPI EGLint EGLAPIENTRY eglLabelObjectKHR (EGLDisplay display, EGLenum objectType, EGLObjectKHR object, EGLLabelKHR label);
|
|
|
984 #endif
|
|
|
985 #endif /* EGL_KHR_debug */
|
|
|
986
|
|
|
987 #ifndef EGL_KHR_display_reference
|
|
|
988 #define EGL_KHR_display_reference 1
|
|
|
989 #define EGL_TRACK_REFERENCES_KHR 0x3352
|
|
|
990 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDISPLAYATTRIBKHRPROC) (EGLDisplay dpy, EGLint name, EGLAttrib *value);
|
|
|
991 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
992 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDisplayAttribKHR (EGLDisplay dpy, EGLint name, EGLAttrib *value);
|
|
|
993 #endif
|
|
|
994 #endif /* EGL_KHR_display_reference */
|
|
|
995
|
|
|
996 #ifndef EGL_KHR_fence_sync
|
|
|
997 #define EGL_KHR_fence_sync 1
|
|
|
998 typedef khronos_utime_nanoseconds_t EGLTimeKHR;
|
|
|
999 #ifdef KHRONOS_SUPPORT_INT64
|
|
|
1000 #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0
|
|
|
1001 #define EGL_SYNC_CONDITION_KHR 0x30F8
|
|
|
1002 #define EGL_SYNC_FENCE_KHR 0x30F9
|
|
|
1003 typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
|
|
|
1004 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync);
|
|
|
1005 typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
|
|
|
1006 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
|
|
|
1007 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1008 EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
|
|
|
1009 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR (EGLDisplay dpy, EGLSyncKHR sync);
|
|
|
1010 EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
|
|
|
1011 EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
|
|
|
1012 #endif
|
|
|
1013 #endif /* KHRONOS_SUPPORT_INT64 */
|
|
|
1014 #endif /* EGL_KHR_fence_sync */
|
|
|
1015
|
|
|
1016 #ifndef EGL_KHR_get_all_proc_addresses
|
|
|
1017 #define EGL_KHR_get_all_proc_addresses 1
|
|
|
1018 #endif /* EGL_KHR_get_all_proc_addresses */
|
|
|
1019
|
|
|
1020 #ifndef EGL_KHR_gl_colorspace
|
|
|
1021 #define EGL_KHR_gl_colorspace 1
|
|
|
1022 #define EGL_GL_COLORSPACE_KHR 0x309D
|
|
|
1023 #define EGL_GL_COLORSPACE_SRGB_KHR 0x3089
|
|
|
1024 #define EGL_GL_COLORSPACE_LINEAR_KHR 0x308A
|
|
|
1025 #endif /* EGL_KHR_gl_colorspace */
|
|
|
1026
|
|
|
1027 #ifndef EGL_KHR_gl_renderbuffer_image
|
|
|
1028 #define EGL_KHR_gl_renderbuffer_image 1
|
|
|
1029 #define EGL_GL_RENDERBUFFER_KHR 0x30B9
|
|
|
1030 #endif /* EGL_KHR_gl_renderbuffer_image */
|
|
|
1031
|
|
|
1032 #ifndef EGL_KHR_gl_texture_2D_image
|
|
|
1033 #define EGL_KHR_gl_texture_2D_image 1
|
|
|
1034 #define EGL_GL_TEXTURE_2D_KHR 0x30B1
|
|
|
1035 #define EGL_GL_TEXTURE_LEVEL_KHR 0x30BC
|
|
|
1036 #endif /* EGL_KHR_gl_texture_2D_image */
|
|
|
1037
|
|
|
1038 #ifndef EGL_KHR_gl_texture_3D_image
|
|
|
1039 #define EGL_KHR_gl_texture_3D_image 1
|
|
|
1040 #define EGL_GL_TEXTURE_3D_KHR 0x30B2
|
|
|
1041 #define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD
|
|
|
1042 #endif /* EGL_KHR_gl_texture_3D_image */
|
|
|
1043
|
|
|
1044 #ifndef EGL_KHR_gl_texture_cubemap_image
|
|
|
1045 #define EGL_KHR_gl_texture_cubemap_image 1
|
|
|
1046 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR 0x30B3
|
|
|
1047 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR 0x30B4
|
|
|
1048 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR 0x30B5
|
|
|
1049 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR 0x30B6
|
|
|
1050 #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR 0x30B7
|
|
|
1051 #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR 0x30B8
|
|
|
1052 #endif /* EGL_KHR_gl_texture_cubemap_image */
|
|
|
1053
|
|
|
1054 #ifndef EGL_KHR_image
|
|
|
1055 #define EGL_KHR_image 1
|
|
|
1056 typedef void *EGLImageKHR;
|
|
|
1057 #define EGL_NATIVE_PIXMAP_KHR 0x30B0
|
|
|
1058 #define EGL_NO_IMAGE_KHR EGL_CAST(EGLImageKHR,0)
|
|
|
1059 typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
|
|
|
1060 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image);
|
|
|
1061 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1062 EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
|
|
|
1063 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image);
|
|
|
1064 #endif
|
|
|
1065 #endif /* EGL_KHR_image */
|
|
|
1066
|
|
|
1067 #ifndef EGL_KHR_image_base
|
|
|
1068 #define EGL_KHR_image_base 1
|
|
|
1069 #define EGL_IMAGE_PRESERVED_KHR 0x30D2
|
|
|
1070 #endif /* EGL_KHR_image_base */
|
|
|
1071
|
|
|
1072 #ifndef EGL_KHR_image_pixmap
|
|
|
1073 #define EGL_KHR_image_pixmap 1
|
|
|
1074 #endif /* EGL_KHR_image_pixmap */
|
|
|
1075
|
|
|
1076 #ifndef EGL_KHR_lock_surface
|
|
|
1077 #define EGL_KHR_lock_surface 1
|
|
|
1078 #define EGL_READ_SURFACE_BIT_KHR 0x0001
|
|
|
1079 #define EGL_WRITE_SURFACE_BIT_KHR 0x0002
|
|
|
1080 #define EGL_LOCK_SURFACE_BIT_KHR 0x0080
|
|
|
1081 #define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100
|
|
|
1082 #define EGL_MATCH_FORMAT_KHR 0x3043
|
|
|
1083 #define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0
|
|
|
1084 #define EGL_FORMAT_RGB_565_KHR 0x30C1
|
|
|
1085 #define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2
|
|
|
1086 #define EGL_FORMAT_RGBA_8888_KHR 0x30C3
|
|
|
1087 #define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4
|
|
|
1088 #define EGL_LOCK_USAGE_HINT_KHR 0x30C5
|
|
|
1089 #define EGL_BITMAP_POINTER_KHR 0x30C6
|
|
|
1090 #define EGL_BITMAP_PITCH_KHR 0x30C7
|
|
|
1091 #define EGL_BITMAP_ORIGIN_KHR 0x30C8
|
|
|
1092 #define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9
|
|
|
1093 #define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA
|
|
|
1094 #define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB
|
|
|
1095 #define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC
|
|
|
1096 #define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD
|
|
|
1097 #define EGL_LOWER_LEFT_KHR 0x30CE
|
|
|
1098 #define EGL_UPPER_LEFT_KHR 0x30CF
|
|
|
1099 typedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface, const EGLint *attrib_list);
|
|
|
1100 typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface);
|
|
|
1101 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1102 EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay dpy, EGLSurface surface, const EGLint *attrib_list);
|
|
|
1103 EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay dpy, EGLSurface surface);
|
|
|
1104 #endif
|
|
|
1105 #endif /* EGL_KHR_lock_surface */
|
|
|
1106
|
|
|
1107 #ifndef EGL_KHR_lock_surface2
|
|
|
1108 #define EGL_KHR_lock_surface2 1
|
|
|
1109 #define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110
|
|
|
1110 #endif /* EGL_KHR_lock_surface2 */
|
|
|
1111
|
|
|
1112 #ifndef EGL_KHR_lock_surface3
|
|
|
1113 #define EGL_KHR_lock_surface3 1
|
|
|
1114 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACE64KHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR *value);
|
|
|
1115 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1116 EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface64KHR (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR *value);
|
|
|
1117 #endif
|
|
|
1118 #endif /* EGL_KHR_lock_surface3 */
|
|
|
1119
|
|
|
1120 #ifndef EGL_KHR_mutable_render_buffer
|
|
|
1121 #define EGL_KHR_mutable_render_buffer 1
|
|
|
1122 #define EGL_MUTABLE_RENDER_BUFFER_BIT_KHR 0x1000
|
|
|
1123 #endif /* EGL_KHR_mutable_render_buffer */
|
|
|
1124
|
|
|
1125 #ifndef EGL_KHR_no_config_context
|
|
|
1126 #define EGL_KHR_no_config_context 1
|
|
|
1127 #define EGL_NO_CONFIG_KHR EGL_CAST(EGLConfig,0)
|
|
|
1128 #endif /* EGL_KHR_no_config_context */
|
|
|
1129
|
|
|
1130 #ifndef EGL_KHR_partial_update
|
|
|
1131 #define EGL_KHR_partial_update 1
|
|
|
1132 #define EGL_BUFFER_AGE_KHR 0x313D
|
|
|
1133 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSETDAMAGEREGIONKHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
|
|
|
1134 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1135 EGLAPI EGLBoolean EGLAPIENTRY eglSetDamageRegionKHR (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
|
|
|
1136 #endif
|
|
|
1137 #endif /* EGL_KHR_partial_update */
|
|
|
1138
|
|
|
1139 #ifndef EGL_KHR_platform_android
|
|
|
1140 #define EGL_KHR_platform_android 1
|
|
|
1141 #define EGL_PLATFORM_ANDROID_KHR 0x3141
|
|
|
1142 #endif /* EGL_KHR_platform_android */
|
|
|
1143
|
|
|
1144 #ifndef EGL_KHR_platform_gbm
|
|
|
1145 #define EGL_KHR_platform_gbm 1
|
|
|
1146 #define EGL_PLATFORM_GBM_KHR 0x31D7
|
|
|
1147 #endif /* EGL_KHR_platform_gbm */
|
|
|
1148
|
|
|
1149 #ifndef EGL_KHR_platform_wayland
|
|
|
1150 #define EGL_KHR_platform_wayland 1
|
|
|
1151 #define EGL_PLATFORM_WAYLAND_KHR 0x31D8
|
|
|
1152 #endif /* EGL_KHR_platform_wayland */
|
|
|
1153
|
|
|
1154 #ifndef EGL_KHR_platform_x11
|
|
|
1155 #define EGL_KHR_platform_x11 1
|
|
|
1156 #define EGL_PLATFORM_X11_KHR 0x31D5
|
|
|
1157 #define EGL_PLATFORM_X11_SCREEN_KHR 0x31D6
|
|
|
1158 #endif /* EGL_KHR_platform_x11 */
|
|
|
1159
|
|
|
1160 #ifndef EGL_KHR_reusable_sync
|
|
|
1161 #define EGL_KHR_reusable_sync 1
|
|
|
1162 #ifdef KHRONOS_SUPPORT_INT64
|
|
|
1163 #define EGL_SYNC_STATUS_KHR 0x30F1
|
|
|
1164 #define EGL_SIGNALED_KHR 0x30F2
|
|
|
1165 #define EGL_UNSIGNALED_KHR 0x30F3
|
|
|
1166 #define EGL_TIMEOUT_EXPIRED_KHR 0x30F5
|
|
|
1167 #define EGL_CONDITION_SATISFIED_KHR 0x30F6
|
|
|
1168 #define EGL_SYNC_TYPE_KHR 0x30F7
|
|
|
1169 #define EGL_SYNC_REUSABLE_KHR 0x30FA
|
|
|
1170 #define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR 0x0001
|
|
|
1171 #define EGL_FOREVER_KHR 0xFFFFFFFFFFFFFFFFull
|
|
|
1172 #define EGL_NO_SYNC_KHR EGL_CAST(EGLSyncKHR,0)
|
|
|
1173 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
|
|
|
1174 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1175 EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
|
|
|
1176 #endif
|
|
|
1177 #endif /* KHRONOS_SUPPORT_INT64 */
|
|
|
1178 #endif /* EGL_KHR_reusable_sync */
|
|
|
1179
|
|
|
1180 #ifndef EGL_KHR_stream
|
|
|
1181 #define EGL_KHR_stream 1
|
|
|
1182 typedef void *EGLStreamKHR;
|
|
|
1183 typedef khronos_uint64_t EGLuint64KHR;
|
|
|
1184 #ifdef KHRONOS_SUPPORT_INT64
|
|
|
1185 #define EGL_NO_STREAM_KHR EGL_CAST(EGLStreamKHR,0)
|
|
|
1186 #define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210
|
|
|
1187 #define EGL_PRODUCER_FRAME_KHR 0x3212
|
|
|
1188 #define EGL_CONSUMER_FRAME_KHR 0x3213
|
|
|
1189 #define EGL_STREAM_STATE_KHR 0x3214
|
|
|
1190 #define EGL_STREAM_STATE_CREATED_KHR 0x3215
|
|
|
1191 #define EGL_STREAM_STATE_CONNECTING_KHR 0x3216
|
|
|
1192 #define EGL_STREAM_STATE_EMPTY_KHR 0x3217
|
|
|
1193 #define EGL_STREAM_STATE_NEW_FRAME_AVAILABLE_KHR 0x3218
|
|
|
1194 #define EGL_STREAM_STATE_OLD_FRAME_AVAILABLE_KHR 0x3219
|
|
|
1195 #define EGL_STREAM_STATE_DISCONNECTED_KHR 0x321A
|
|
|
1196 #define EGL_BAD_STREAM_KHR 0x321B
|
|
|
1197 #define EGL_BAD_STATE_KHR 0x321C
|
|
|
1198 typedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMKHRPROC) (EGLDisplay dpy, const EGLint *attrib_list);
|
|
|
1199 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1200 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
|
|
|
1201 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
|
|
|
1202 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMU64KHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
|
|
|
1203 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1204 EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamKHR (EGLDisplay dpy, const EGLint *attrib_list);
|
|
|
1205 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyStreamKHR (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1206 EGLAPI EGLBoolean EGLAPIENTRY eglStreamAttribKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
|
|
|
1207 EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
|
|
|
1208 EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamu64KHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
|
|
|
1209 #endif
|
|
|
1210 #endif /* KHRONOS_SUPPORT_INT64 */
|
|
|
1211 #endif /* EGL_KHR_stream */
|
|
|
1212
|
|
|
1213 #ifndef EGL_KHR_stream_attrib
|
|
|
1214 #define EGL_KHR_stream_attrib 1
|
|
|
1215 #ifdef KHRONOS_SUPPORT_INT64
|
|
|
1216 typedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMATTRIBKHRPROC) (EGLDisplay dpy, const EGLAttrib *attrib_list);
|
|
|
1217 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSETSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib value);
|
|
|
1218 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib *value);
|
|
|
1219 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);
|
|
|
1220 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);
|
|
|
1221 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1222 EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamAttribKHR (EGLDisplay dpy, const EGLAttrib *attrib_list);
|
|
|
1223 EGLAPI EGLBoolean EGLAPIENTRY eglSetStreamAttribKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib value);
|
|
|
1224 EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamAttribKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib *value);
|
|
|
1225 EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerAcquireAttribKHR (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);
|
|
|
1226 EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerReleaseAttribKHR (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);
|
|
|
1227 #endif
|
|
|
1228 #endif /* KHRONOS_SUPPORT_INT64 */
|
|
|
1229 #endif /* EGL_KHR_stream_attrib */
|
|
|
1230
|
|
|
1231 #ifndef EGL_KHR_stream_consumer_gltexture
|
|
|
1232 #define EGL_KHR_stream_consumer_gltexture 1
|
|
|
1233 #ifdef EGL_KHR_stream
|
|
|
1234 #define EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR 0x321E
|
|
|
1235 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1236 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERACQUIREKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1237 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERRELEASEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1238 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1239 EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerGLTextureExternalKHR (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1240 EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerAcquireKHR (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1241 EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerReleaseKHR (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1242 #endif
|
|
|
1243 #endif /* EGL_KHR_stream */
|
|
|
1244 #endif /* EGL_KHR_stream_consumer_gltexture */
|
|
|
1245
|
|
|
1246 #ifndef EGL_KHR_stream_cross_process_fd
|
|
|
1247 #define EGL_KHR_stream_cross_process_fd 1
|
|
|
1248 typedef int EGLNativeFileDescriptorKHR;
|
|
|
1249 #ifdef EGL_KHR_stream
|
|
|
1250 #define EGL_NO_FILE_DESCRIPTOR_KHR EGL_CAST(EGLNativeFileDescriptorKHR,-1)
|
|
|
1251 typedef EGLNativeFileDescriptorKHR (EGLAPIENTRYP PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1252 typedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
|
|
|
1253 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1254 EGLAPI EGLNativeFileDescriptorKHR EGLAPIENTRY eglGetStreamFileDescriptorKHR (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
1255 EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamFromFileDescriptorKHR (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
|
|
|
1256 #endif
|
|
|
1257 #endif /* EGL_KHR_stream */
|
|
|
1258 #endif /* EGL_KHR_stream_cross_process_fd */
|
|
|
1259
|
|
|
1260 #ifndef EGL_KHR_stream_fifo
|
|
|
1261 #define EGL_KHR_stream_fifo 1
|
|
|
1262 #ifdef EGL_KHR_stream
|
|
|
1263 #define EGL_STREAM_FIFO_LENGTH_KHR 0x31FC
|
|
|
1264 #define EGL_STREAM_TIME_NOW_KHR 0x31FD
|
|
|
1265 #define EGL_STREAM_TIME_CONSUMER_KHR 0x31FE
|
|
|
1266 #define EGL_STREAM_TIME_PRODUCER_KHR 0x31FF
|
|
|
1267 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMTIMEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
|
|
|
1268 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1269 EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamTimeKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
|
|
|
1270 #endif
|
|
|
1271 #endif /* EGL_KHR_stream */
|
|
|
1272 #endif /* EGL_KHR_stream_fifo */
|
|
|
1273
|
|
|
1274 #ifndef EGL_KHR_stream_producer_aldatalocator
|
|
|
1275 #define EGL_KHR_stream_producer_aldatalocator 1
|
|
|
1276 #ifdef EGL_KHR_stream
|
|
|
1277 #endif /* EGL_KHR_stream */
|
|
|
1278 #endif /* EGL_KHR_stream_producer_aldatalocator */
|
|
|
1279
|
|
|
1280 #ifndef EGL_KHR_stream_producer_eglsurface
|
|
|
1281 #define EGL_KHR_stream_producer_eglsurface 1
|
|
|
1282 #ifdef EGL_KHR_stream
|
|
|
1283 #define EGL_STREAM_BIT_KHR 0x0800
|
|
|
1284 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC) (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
|
|
|
1285 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1286 EGLAPI EGLSurface EGLAPIENTRY eglCreateStreamProducerSurfaceKHR (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
|
|
|
1287 #endif
|
|
|
1288 #endif /* EGL_KHR_stream */
|
|
|
1289 #endif /* EGL_KHR_stream_producer_eglsurface */
|
|
|
1290
|
|
|
1291 #ifndef EGL_KHR_surfaceless_context
|
|
|
1292 #define EGL_KHR_surfaceless_context 1
|
|
|
1293 #endif /* EGL_KHR_surfaceless_context */
|
|
|
1294
|
|
|
1295 #ifndef EGL_KHR_swap_buffers_with_damage
|
|
|
1296 #define EGL_KHR_swap_buffers_with_damage 1
|
|
|
1297 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC) (EGLDisplay dpy, EGLSurface surface, const EGLint *rects, EGLint n_rects);
|
|
|
1298 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1299 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersWithDamageKHR (EGLDisplay dpy, EGLSurface surface, const EGLint *rects, EGLint n_rects);
|
|
|
1300 #endif
|
|
|
1301 #endif /* EGL_KHR_swap_buffers_with_damage */
|
|
|
1302
|
|
|
1303 #ifndef EGL_KHR_vg_parent_image
|
|
|
1304 #define EGL_KHR_vg_parent_image 1
|
|
|
1305 #define EGL_VG_PARENT_IMAGE_KHR 0x30BA
|
|
|
1306 #endif /* EGL_KHR_vg_parent_image */
|
|
|
1307
|
|
|
1308 #ifndef EGL_KHR_wait_sync
|
|
|
1309 #define EGL_KHR_wait_sync 1
|
|
|
1310 typedef EGLint (EGLAPIENTRYP PFNEGLWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags);
|
|
|
1311 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1312 EGLAPI EGLint EGLAPIENTRY eglWaitSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags);
|
|
|
1313 #endif
|
|
|
1314 #endif /* EGL_KHR_wait_sync */
|
|
|
1315
|
|
|
1316 #ifndef EGL_ANDROID_GLES_layers
|
|
|
1317 #define EGL_ANDROID_GLES_layers 1
|
|
|
1318 #endif /* EGL_ANDROID_GLES_layers */
|
|
|
1319
|
|
|
1320 #ifndef EGL_ANDROID_blob_cache
|
|
|
1321 #define EGL_ANDROID_blob_cache 1
|
|
|
1322 typedef khronos_ssize_t EGLsizeiANDROID;
|
|
|
1323 typedef void (*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, const void *value, EGLsizeiANDROID valueSize);
|
|
|
1324 typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, void *value, EGLsizeiANDROID valueSize);
|
|
|
1325 typedef void (EGLAPIENTRYP PFNEGLSETBLOBCACHEFUNCSANDROIDPROC) (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get);
|
|
|
1326 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1327 EGLAPI void EGLAPIENTRY eglSetBlobCacheFuncsANDROID (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get);
|
|
|
1328 #endif
|
|
|
1329 #endif /* EGL_ANDROID_blob_cache */
|
|
|
1330
|
|
|
1331 #ifndef EGL_ANDROID_create_native_client_buffer
|
|
|
1332 #define EGL_ANDROID_create_native_client_buffer 1
|
|
|
1333 #define EGL_NATIVE_BUFFER_USAGE_ANDROID 0x3143
|
|
|
1334 #define EGL_NATIVE_BUFFER_USAGE_PROTECTED_BIT_ANDROID 0x00000001
|
|
|
1335 #define EGL_NATIVE_BUFFER_USAGE_RENDERBUFFER_BIT_ANDROID 0x00000002
|
|
|
1336 #define EGL_NATIVE_BUFFER_USAGE_TEXTURE_BIT_ANDROID 0x00000004
|
|
|
1337 typedef EGLClientBuffer (EGLAPIENTRYP PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC) (const EGLint *attrib_list);
|
|
|
1338 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1339 EGLAPI EGLClientBuffer EGLAPIENTRY eglCreateNativeClientBufferANDROID (const EGLint *attrib_list);
|
|
|
1340 #endif
|
|
|
1341 #endif /* EGL_ANDROID_create_native_client_buffer */
|
|
|
1342
|
|
|
1343 #ifndef EGL_ANDROID_framebuffer_target
|
|
|
1344 #define EGL_ANDROID_framebuffer_target 1
|
|
|
1345 #define EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147
|
|
|
1346 #endif /* EGL_ANDROID_framebuffer_target */
|
|
|
1347
|
|
|
1348 #ifndef EGL_ANDROID_front_buffer_auto_refresh
|
|
|
1349 #define EGL_ANDROID_front_buffer_auto_refresh 1
|
|
|
1350 #define EGL_FRONT_BUFFER_AUTO_REFRESH_ANDROID 0x314C
|
|
|
1351 #endif /* EGL_ANDROID_front_buffer_auto_refresh */
|
|
|
1352
|
|
|
1353 #ifndef EGL_ANDROID_get_frame_timestamps
|
|
|
1354 #define EGL_ANDROID_get_frame_timestamps 1
|
|
|
1355 typedef khronos_stime_nanoseconds_t EGLnsecsANDROID;
|
|
|
1356 #define EGL_TIMESTAMP_PENDING_ANDROID EGL_CAST(EGLnsecsANDROID,-2)
|
|
|
1357 #define EGL_TIMESTAMP_INVALID_ANDROID EGL_CAST(EGLnsecsANDROID,-1)
|
|
|
1358 #define EGL_TIMESTAMPS_ANDROID 0x3430
|
|
|
1359 #define EGL_COMPOSITE_DEADLINE_ANDROID 0x3431
|
|
|
1360 #define EGL_COMPOSITE_INTERVAL_ANDROID 0x3432
|
|
|
1361 #define EGL_COMPOSITE_TO_PRESENT_LATENCY_ANDROID 0x3433
|
|
|
1362 #define EGL_REQUESTED_PRESENT_TIME_ANDROID 0x3434
|
|
|
1363 #define EGL_RENDERING_COMPLETE_TIME_ANDROID 0x3435
|
|
|
1364 #define EGL_COMPOSITION_LATCH_TIME_ANDROID 0x3436
|
|
|
1365 #define EGL_FIRST_COMPOSITION_START_TIME_ANDROID 0x3437
|
|
|
1366 #define EGL_LAST_COMPOSITION_START_TIME_ANDROID 0x3438
|
|
|
1367 #define EGL_FIRST_COMPOSITION_GPU_FINISHED_TIME_ANDROID 0x3439
|
|
|
1368 #define EGL_DISPLAY_PRESENT_TIME_ANDROID 0x343A
|
|
|
1369 #define EGL_DEQUEUE_READY_TIME_ANDROID 0x343B
|
|
|
1370 #define EGL_READS_DONE_TIME_ANDROID 0x343C
|
|
|
1371 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETCOMPOSITORTIMINGSUPPORTEDANDROIDPROC) (EGLDisplay dpy, EGLSurface surface, EGLint name);
|
|
|
1372 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETCOMPOSITORTIMINGANDROIDPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numTimestamps, const EGLint *names, EGLnsecsANDROID *values);
|
|
|
1373 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETNEXTFRAMEIDANDROIDPROC) (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR *frameId);
|
|
|
1374 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETFRAMETIMESTAMPSUPPORTEDANDROIDPROC) (EGLDisplay dpy, EGLSurface surface, EGLint timestamp);
|
|
|
1375 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETFRAMETIMESTAMPSANDROIDPROC) (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR frameId, EGLint numTimestamps, const EGLint *timestamps, EGLnsecsANDROID *values);
|
|
|
1376 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1377 EGLAPI EGLBoolean EGLAPIENTRY eglGetCompositorTimingSupportedANDROID (EGLDisplay dpy, EGLSurface surface, EGLint name);
|
|
|
1378 EGLAPI EGLBoolean EGLAPIENTRY eglGetCompositorTimingANDROID (EGLDisplay dpy, EGLSurface surface, EGLint numTimestamps, const EGLint *names, EGLnsecsANDROID *values);
|
|
|
1379 EGLAPI EGLBoolean EGLAPIENTRY eglGetNextFrameIdANDROID (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR *frameId);
|
|
|
1380 EGLAPI EGLBoolean EGLAPIENTRY eglGetFrameTimestampSupportedANDROID (EGLDisplay dpy, EGLSurface surface, EGLint timestamp);
|
|
|
1381 EGLAPI EGLBoolean EGLAPIENTRY eglGetFrameTimestampsANDROID (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR frameId, EGLint numTimestamps, const EGLint *timestamps, EGLnsecsANDROID *values);
|
|
|
1382 #endif
|
|
|
1383 #endif /* EGL_ANDROID_get_frame_timestamps */
|
|
|
1384
|
|
|
1385 #ifndef EGL_ANDROID_get_native_client_buffer
|
|
|
1386 #define EGL_ANDROID_get_native_client_buffer 1
|
|
|
1387 struct AHardwareBuffer;
|
|
|
1388 typedef EGLClientBuffer (EGLAPIENTRYP PFNEGLGETNATIVECLIENTBUFFERANDROIDPROC) (const struct AHardwareBuffer *buffer);
|
|
|
1389 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1390 EGLAPI EGLClientBuffer EGLAPIENTRY eglGetNativeClientBufferANDROID (const struct AHardwareBuffer *buffer);
|
|
|
1391 #endif
|
|
|
1392 #endif /* EGL_ANDROID_get_native_client_buffer */
|
|
|
1393
|
|
|
1394 #ifndef EGL_ANDROID_image_native_buffer
|
|
|
1395 #define EGL_ANDROID_image_native_buffer 1
|
|
|
1396 #define EGL_NATIVE_BUFFER_ANDROID 0x3140
|
|
|
1397 #endif /* EGL_ANDROID_image_native_buffer */
|
|
|
1398
|
|
|
1399 #ifndef EGL_ANDROID_native_fence_sync
|
|
|
1400 #define EGL_ANDROID_native_fence_sync 1
|
|
|
1401 #define EGL_SYNC_NATIVE_FENCE_ANDROID 0x3144
|
|
|
1402 #define EGL_SYNC_NATIVE_FENCE_FD_ANDROID 0x3145
|
|
|
1403 #define EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID 0x3146
|
|
|
1404 #define EGL_NO_NATIVE_FENCE_FD_ANDROID -1
|
|
|
1405 typedef EGLint (EGLAPIENTRYP PFNEGLDUPNATIVEFENCEFDANDROIDPROC) (EGLDisplay dpy, EGLSyncKHR sync);
|
|
|
1406 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1407 EGLAPI EGLint EGLAPIENTRY eglDupNativeFenceFDANDROID (EGLDisplay dpy, EGLSyncKHR sync);
|
|
|
1408 #endif
|
|
|
1409 #endif /* EGL_ANDROID_native_fence_sync */
|
|
|
1410
|
|
|
1411 #ifndef EGL_ANDROID_presentation_time
|
|
|
1412 #define EGL_ANDROID_presentation_time 1
|
|
|
1413 typedef EGLBoolean (EGLAPIENTRYP PFNEGLPRESENTATIONTIMEANDROIDPROC) (EGLDisplay dpy, EGLSurface surface, EGLnsecsANDROID time);
|
|
|
1414 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1415 EGLAPI EGLBoolean EGLAPIENTRY eglPresentationTimeANDROID (EGLDisplay dpy, EGLSurface surface, EGLnsecsANDROID time);
|
|
|
1416 #endif
|
|
|
1417 #endif /* EGL_ANDROID_presentation_time */
|
|
|
1418
|
|
|
1419 #ifndef EGL_ANDROID_recordable
|
|
|
1420 #define EGL_ANDROID_recordable 1
|
|
|
1421 #define EGL_RECORDABLE_ANDROID 0x3142
|
|
|
1422 #endif /* EGL_ANDROID_recordable */
|
|
|
1423
|
|
|
1424 #ifndef EGL_ANGLE_d3d_share_handle_client_buffer
|
|
|
1425 #define EGL_ANGLE_d3d_share_handle_client_buffer 1
|
|
|
1426 #define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200
|
|
|
1427 #endif /* EGL_ANGLE_d3d_share_handle_client_buffer */
|
|
|
1428
|
|
|
1429 #ifndef EGL_ANGLE_device_d3d
|
|
|
1430 #define EGL_ANGLE_device_d3d 1
|
|
|
1431 #define EGL_D3D9_DEVICE_ANGLE 0x33A0
|
|
|
1432 #define EGL_D3D11_DEVICE_ANGLE 0x33A1
|
|
|
1433 #endif /* EGL_ANGLE_device_d3d */
|
|
|
1434
|
|
|
1435 #ifndef EGL_ANGLE_query_surface_pointer
|
|
|
1436 #define EGL_ANGLE_query_surface_pointer 1
|
|
|
1437 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
|
|
|
1438 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1439 EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurfacePointerANGLE (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
|
|
|
1440 #endif
|
|
|
1441 #endif /* EGL_ANGLE_query_surface_pointer */
|
|
|
1442
|
|
|
1443 #ifndef EGL_ANGLE_surface_d3d_texture_2d_share_handle
|
|
|
1444 #define EGL_ANGLE_surface_d3d_texture_2d_share_handle 1
|
|
|
1445 #endif /* EGL_ANGLE_surface_d3d_texture_2d_share_handle */
|
|
|
1446
|
|
|
1447 #ifndef EGL_ANGLE_sync_control_rate
|
|
|
1448 #define EGL_ANGLE_sync_control_rate 1
|
|
|
1449 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETMSCRATEANGLEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *numerator, EGLint *denominator);
|
|
|
1450 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1451 EGLAPI EGLBoolean EGLAPIENTRY eglGetMscRateANGLE (EGLDisplay dpy, EGLSurface surface, EGLint *numerator, EGLint *denominator);
|
|
|
1452 #endif
|
|
|
1453 #endif /* EGL_ANGLE_sync_control_rate */
|
|
|
1454
|
|
|
1455 #ifndef EGL_ANGLE_window_fixed_size
|
|
|
1456 #define EGL_ANGLE_window_fixed_size 1
|
|
|
1457 #define EGL_FIXED_SIZE_ANGLE 0x3201
|
|
|
1458 #endif /* EGL_ANGLE_window_fixed_size */
|
|
|
1459
|
|
|
1460 #ifndef EGL_ARM_image_format
|
|
|
1461 #define EGL_ARM_image_format 1
|
|
|
1462 #define EGL_COLOR_COMPONENT_TYPE_UNSIGNED_INTEGER_ARM 0x3287
|
|
|
1463 #define EGL_COLOR_COMPONENT_TYPE_INTEGER_ARM 0x3288
|
|
|
1464 #endif /* EGL_ARM_image_format */
|
|
|
1465
|
|
|
1466 #ifndef EGL_ARM_implicit_external_sync
|
|
|
1467 #define EGL_ARM_implicit_external_sync 1
|
|
|
1468 #define EGL_SYNC_PRIOR_COMMANDS_IMPLICIT_EXTERNAL_ARM 0x328A
|
|
|
1469 #endif /* EGL_ARM_implicit_external_sync */
|
|
|
1470
|
|
|
1471 #ifndef EGL_ARM_pixmap_multisample_discard
|
|
|
1472 #define EGL_ARM_pixmap_multisample_discard 1
|
|
|
1473 #define EGL_DISCARD_SAMPLES_ARM 0x3286
|
|
|
1474 #endif /* EGL_ARM_pixmap_multisample_discard */
|
|
|
1475
|
|
|
1476 #ifndef EGL_EXT_bind_to_front
|
|
|
1477 #define EGL_EXT_bind_to_front 1
|
|
|
1478 #define EGL_FRONT_BUFFER_EXT 0x3464
|
|
|
1479 #endif /* EGL_EXT_bind_to_front */
|
|
|
1480
|
|
|
1481 #ifndef EGL_EXT_buffer_age
|
|
|
1482 #define EGL_EXT_buffer_age 1
|
|
|
1483 #define EGL_BUFFER_AGE_EXT 0x313D
|
|
|
1484 #endif /* EGL_EXT_buffer_age */
|
|
|
1485
|
|
|
1486 #ifndef EGL_EXT_client_extensions
|
|
|
1487 #define EGL_EXT_client_extensions 1
|
|
|
1488 #endif /* EGL_EXT_client_extensions */
|
|
|
1489
|
|
|
1490 #ifndef EGL_EXT_client_sync
|
|
|
1491 #define EGL_EXT_client_sync 1
|
|
|
1492 #define EGL_SYNC_CLIENT_EXT 0x3364
|
|
|
1493 #define EGL_SYNC_CLIENT_SIGNAL_EXT 0x3365
|
|
|
1494 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCLIENTSIGNALSYNCEXTPROC) (EGLDisplay dpy, EGLSync sync, const EGLAttrib *attrib_list);
|
|
|
1495 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1496 EGLAPI EGLBoolean EGLAPIENTRY eglClientSignalSyncEXT (EGLDisplay dpy, EGLSync sync, const EGLAttrib *attrib_list);
|
|
|
1497 #endif
|
|
|
1498 #endif /* EGL_EXT_client_sync */
|
|
|
1499
|
|
|
1500 #ifndef EGL_EXT_compositor
|
|
|
1501 #define EGL_EXT_compositor 1
|
|
|
1502 #define EGL_PRIMARY_COMPOSITOR_CONTEXT_EXT 0x3460
|
|
|
1503 #define EGL_EXTERNAL_REF_ID_EXT 0x3461
|
|
|
1504 #define EGL_COMPOSITOR_DROP_NEWEST_FRAME_EXT 0x3462
|
|
|
1505 #define EGL_COMPOSITOR_KEEP_NEWEST_FRAME_EXT 0x3463
|
|
|
1506 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOMPOSITORSETCONTEXTLISTEXTPROC) (const EGLint *external_ref_ids, EGLint num_entries);
|
|
|
1507 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOMPOSITORSETCONTEXTATTRIBUTESEXTPROC) (EGLint external_ref_id, const EGLint *context_attributes, EGLint num_entries);
|
|
|
1508 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOMPOSITORSETWINDOWLISTEXTPROC) (EGLint external_ref_id, const EGLint *external_win_ids, EGLint num_entries);
|
|
|
1509 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOMPOSITORSETWINDOWATTRIBUTESEXTPROC) (EGLint external_win_id, const EGLint *window_attributes, EGLint num_entries);
|
|
|
1510 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOMPOSITORBINDTEXWINDOWEXTPROC) (EGLint external_win_id);
|
|
|
1511 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOMPOSITORSETSIZEEXTPROC) (EGLint external_win_id, EGLint width, EGLint height);
|
|
|
1512 typedef EGLBoolean (EGLAPIENTRYP PFNEGLCOMPOSITORSWAPPOLICYEXTPROC) (EGLint external_win_id, EGLint policy);
|
|
|
1513 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1514 EGLAPI EGLBoolean EGLAPIENTRY eglCompositorSetContextListEXT (const EGLint *external_ref_ids, EGLint num_entries);
|
|
|
1515 EGLAPI EGLBoolean EGLAPIENTRY eglCompositorSetContextAttributesEXT (EGLint external_ref_id, const EGLint *context_attributes, EGLint num_entries);
|
|
|
1516 EGLAPI EGLBoolean EGLAPIENTRY eglCompositorSetWindowListEXT (EGLint external_ref_id, const EGLint *external_win_ids, EGLint num_entries);
|
|
|
1517 EGLAPI EGLBoolean EGLAPIENTRY eglCompositorSetWindowAttributesEXT (EGLint external_win_id, const EGLint *window_attributes, EGLint num_entries);
|
|
|
1518 EGLAPI EGLBoolean EGLAPIENTRY eglCompositorBindTexWindowEXT (EGLint external_win_id);
|
|
|
1519 EGLAPI EGLBoolean EGLAPIENTRY eglCompositorSetSizeEXT (EGLint external_win_id, EGLint width, EGLint height);
|
|
|
1520 EGLAPI EGLBoolean EGLAPIENTRY eglCompositorSwapPolicyEXT (EGLint external_win_id, EGLint policy);
|
|
|
1521 #endif
|
|
|
1522 #endif /* EGL_EXT_compositor */
|
|
|
1523
|
|
|
1524 #ifndef EGL_EXT_config_select_group
|
|
|
1525 #define EGL_EXT_config_select_group 1
|
|
|
1526 #define EGL_CONFIG_SELECT_GROUP_EXT 0x34C0
|
|
|
1527 #endif /* EGL_EXT_config_select_group */
|
|
|
1528
|
|
|
1529 #ifndef EGL_EXT_create_context_robustness
|
|
|
1530 #define EGL_EXT_create_context_robustness 1
|
|
|
1531 #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF
|
|
|
1532 #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT 0x3138
|
|
|
1533 #define EGL_NO_RESET_NOTIFICATION_EXT 0x31BE
|
|
|
1534 #define EGL_LOSE_CONTEXT_ON_RESET_EXT 0x31BF
|
|
|
1535 #endif /* EGL_EXT_create_context_robustness */
|
|
|
1536
|
|
|
1537 #ifndef EGL_EXT_device_base
|
|
|
1538 #define EGL_EXT_device_base 1
|
|
|
1539 typedef void *EGLDeviceEXT;
|
|
|
1540 #define EGL_NO_DEVICE_EXT EGL_CAST(EGLDeviceEXT,0)
|
|
|
1541 #define EGL_BAD_DEVICE_EXT 0x322B
|
|
|
1542 #define EGL_DEVICE_EXT 0x322C
|
|
|
1543 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEVICEATTRIBEXTPROC) (EGLDeviceEXT device, EGLint attribute, EGLAttrib *value);
|
|
|
1544 typedef const char *(EGLAPIENTRYP PFNEGLQUERYDEVICESTRINGEXTPROC) (EGLDeviceEXT device, EGLint name);
|
|
|
1545 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEVICESEXTPROC) (EGLint max_devices, EGLDeviceEXT *devices, EGLint *num_devices);
|
|
|
1546 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDISPLAYATTRIBEXTPROC) (EGLDisplay dpy, EGLint attribute, EGLAttrib *value);
|
|
|
1547 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1548 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDeviceAttribEXT (EGLDeviceEXT device, EGLint attribute, EGLAttrib *value);
|
|
|
1549 EGLAPI const char *EGLAPIENTRY eglQueryDeviceStringEXT (EGLDeviceEXT device, EGLint name);
|
|
|
1550 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDevicesEXT (EGLint max_devices, EGLDeviceEXT *devices, EGLint *num_devices);
|
|
|
1551 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDisplayAttribEXT (EGLDisplay dpy, EGLint attribute, EGLAttrib *value);
|
|
|
1552 #endif
|
|
|
1553 #endif /* EGL_EXT_device_base */
|
|
|
1554
|
|
|
1555 #ifndef EGL_EXT_device_drm
|
|
|
1556 #define EGL_EXT_device_drm 1
|
|
|
1557 #define EGL_DRM_DEVICE_FILE_EXT 0x3233
|
|
|
1558 #define EGL_DRM_MASTER_FD_EXT 0x333C
|
|
|
1559 #endif /* EGL_EXT_device_drm */
|
|
|
1560
|
|
|
1561 #ifndef EGL_EXT_device_drm_render_node
|
|
|
1562 #define EGL_EXT_device_drm_render_node 1
|
|
|
1563 #define EGL_DRM_RENDER_NODE_FILE_EXT 0x3377
|
|
|
1564 #endif /* EGL_EXT_device_drm_render_node */
|
|
|
1565
|
|
|
1566 #ifndef EGL_EXT_device_enumeration
|
|
|
1567 #define EGL_EXT_device_enumeration 1
|
|
|
1568 #endif /* EGL_EXT_device_enumeration */
|
|
|
1569
|
|
|
1570 #ifndef EGL_EXT_device_openwf
|
|
|
1571 #define EGL_EXT_device_openwf 1
|
|
|
1572 #define EGL_OPENWF_DEVICE_ID_EXT 0x3237
|
|
|
1573 #define EGL_OPENWF_DEVICE_EXT 0x333D
|
|
|
1574 #endif /* EGL_EXT_device_openwf */
|
|
|
1575
|
|
|
1576 #ifndef EGL_EXT_device_persistent_id
|
|
|
1577 #define EGL_EXT_device_persistent_id 1
|
|
|
1578 #define EGL_DEVICE_UUID_EXT 0x335C
|
|
|
1579 #define EGL_DRIVER_UUID_EXT 0x335D
|
|
|
1580 #define EGL_DRIVER_NAME_EXT 0x335E
|
|
|
1581 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEVICEBINARYEXTPROC) (EGLDeviceEXT device, EGLint name, EGLint max_size, void *value, EGLint *size);
|
|
|
1582 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1583 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDeviceBinaryEXT (EGLDeviceEXT device, EGLint name, EGLint max_size, void *value, EGLint *size);
|
|
|
1584 #endif
|
|
|
1585 #endif /* EGL_EXT_device_persistent_id */
|
|
|
1586
|
|
|
1587 #ifndef EGL_EXT_device_query
|
|
|
1588 #define EGL_EXT_device_query 1
|
|
|
1589 #endif /* EGL_EXT_device_query */
|
|
|
1590
|
|
|
1591 #ifndef EGL_EXT_device_query_name
|
|
|
1592 #define EGL_EXT_device_query_name 1
|
|
|
1593 #define EGL_RENDERER_EXT 0x335F
|
|
|
1594 #endif /* EGL_EXT_device_query_name */
|
|
|
1595
|
|
|
1596 #ifndef EGL_EXT_explicit_device
|
|
|
1597 #define EGL_EXT_explicit_device 1
|
|
|
1598 #endif /* EGL_EXT_explicit_device */
|
|
|
1599
|
|
|
1600 #ifndef EGL_EXT_gl_colorspace_bt2020_linear
|
|
|
1601 #define EGL_EXT_gl_colorspace_bt2020_linear 1
|
|
|
1602 #define EGL_GL_COLORSPACE_BT2020_LINEAR_EXT 0x333F
|
|
|
1603 #endif /* EGL_EXT_gl_colorspace_bt2020_linear */
|
|
|
1604
|
|
|
1605 #ifndef EGL_EXT_gl_colorspace_bt2020_pq
|
|
|
1606 #define EGL_EXT_gl_colorspace_bt2020_pq 1
|
|
|
1607 #define EGL_GL_COLORSPACE_BT2020_PQ_EXT 0x3340
|
|
|
1608 #endif /* EGL_EXT_gl_colorspace_bt2020_pq */
|
|
|
1609
|
|
|
1610 #ifndef EGL_EXT_gl_colorspace_display_p3
|
|
|
1611 #define EGL_EXT_gl_colorspace_display_p3 1
|
|
|
1612 #define EGL_GL_COLORSPACE_DISPLAY_P3_EXT 0x3363
|
|
|
1613 #endif /* EGL_EXT_gl_colorspace_display_p3 */
|
|
|
1614
|
|
|
1615 #ifndef EGL_EXT_gl_colorspace_display_p3_linear
|
|
|
1616 #define EGL_EXT_gl_colorspace_display_p3_linear 1
|
|
|
1617 #define EGL_GL_COLORSPACE_DISPLAY_P3_LINEAR_EXT 0x3362
|
|
|
1618 #endif /* EGL_EXT_gl_colorspace_display_p3_linear */
|
|
|
1619
|
|
|
1620 #ifndef EGL_EXT_gl_colorspace_display_p3_passthrough
|
|
|
1621 #define EGL_EXT_gl_colorspace_display_p3_passthrough 1
|
|
|
1622 #define EGL_GL_COLORSPACE_DISPLAY_P3_PASSTHROUGH_EXT 0x3490
|
|
|
1623 #endif /* EGL_EXT_gl_colorspace_display_p3_passthrough */
|
|
|
1624
|
|
|
1625 #ifndef EGL_EXT_gl_colorspace_scrgb
|
|
|
1626 #define EGL_EXT_gl_colorspace_scrgb 1
|
|
|
1627 #define EGL_GL_COLORSPACE_SCRGB_EXT 0x3351
|
|
|
1628 #endif /* EGL_EXT_gl_colorspace_scrgb */
|
|
|
1629
|
|
|
1630 #ifndef EGL_EXT_gl_colorspace_scrgb_linear
|
|
|
1631 #define EGL_EXT_gl_colorspace_scrgb_linear 1
|
|
|
1632 #define EGL_GL_COLORSPACE_SCRGB_LINEAR_EXT 0x3350
|
|
|
1633 #endif /* EGL_EXT_gl_colorspace_scrgb_linear */
|
|
|
1634
|
|
|
1635 #ifndef EGL_EXT_image_dma_buf_import
|
|
|
1636 #define EGL_EXT_image_dma_buf_import 1
|
|
|
1637 #define EGL_LINUX_DMA_BUF_EXT 0x3270
|
|
|
1638 #define EGL_LINUX_DRM_FOURCC_EXT 0x3271
|
|
|
1639 #define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272
|
|
|
1640 #define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273
|
|
|
1641 #define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274
|
|
|
1642 #define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275
|
|
|
1643 #define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276
|
|
|
1644 #define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277
|
|
|
1645 #define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278
|
|
|
1646 #define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279
|
|
|
1647 #define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A
|
|
|
1648 #define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B
|
|
|
1649 #define EGL_SAMPLE_RANGE_HINT_EXT 0x327C
|
|
|
1650 #define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D
|
|
|
1651 #define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E
|
|
|
1652 #define EGL_ITU_REC601_EXT 0x327F
|
|
|
1653 #define EGL_ITU_REC709_EXT 0x3280
|
|
|
1654 #define EGL_ITU_REC2020_EXT 0x3281
|
|
|
1655 #define EGL_YUV_FULL_RANGE_EXT 0x3282
|
|
|
1656 #define EGL_YUV_NARROW_RANGE_EXT 0x3283
|
|
|
1657 #define EGL_YUV_CHROMA_SITING_0_EXT 0x3284
|
|
|
1658 #define EGL_YUV_CHROMA_SITING_0_5_EXT 0x3285
|
|
|
1659 #endif /* EGL_EXT_image_dma_buf_import */
|
|
|
1660
|
|
|
1661 #ifndef EGL_EXT_image_dma_buf_import_modifiers
|
|
|
1662 #define EGL_EXT_image_dma_buf_import_modifiers 1
|
|
|
1663 #define EGL_DMA_BUF_PLANE3_FD_EXT 0x3440
|
|
|
1664 #define EGL_DMA_BUF_PLANE3_OFFSET_EXT 0x3441
|
|
|
1665 #define EGL_DMA_BUF_PLANE3_PITCH_EXT 0x3442
|
|
|
1666 #define EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT 0x3443
|
|
|
1667 #define EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT 0x3444
|
|
|
1668 #define EGL_DMA_BUF_PLANE1_MODIFIER_LO_EXT 0x3445
|
|
|
1669 #define EGL_DMA_BUF_PLANE1_MODIFIER_HI_EXT 0x3446
|
|
|
1670 #define EGL_DMA_BUF_PLANE2_MODIFIER_LO_EXT 0x3447
|
|
|
1671 #define EGL_DMA_BUF_PLANE2_MODIFIER_HI_EXT 0x3448
|
|
|
1672 #define EGL_DMA_BUF_PLANE3_MODIFIER_LO_EXT 0x3449
|
|
|
1673 #define EGL_DMA_BUF_PLANE3_MODIFIER_HI_EXT 0x344A
|
|
|
1674 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDMABUFFORMATSEXTPROC) (EGLDisplay dpy, EGLint max_formats, EGLint *formats, EGLint *num_formats);
|
|
|
1675 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDMABUFMODIFIERSEXTPROC) (EGLDisplay dpy, EGLint format, EGLint max_modifiers, EGLuint64KHR *modifiers, EGLBoolean *external_only, EGLint *num_modifiers);
|
|
|
1676 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1677 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDmaBufFormatsEXT (EGLDisplay dpy, EGLint max_formats, EGLint *formats, EGLint *num_formats);
|
|
|
1678 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDmaBufModifiersEXT (EGLDisplay dpy, EGLint format, EGLint max_modifiers, EGLuint64KHR *modifiers, EGLBoolean *external_only, EGLint *num_modifiers);
|
|
|
1679 #endif
|
|
|
1680 #endif /* EGL_EXT_image_dma_buf_import_modifiers */
|
|
|
1681
|
|
|
1682 #ifndef EGL_EXT_image_gl_colorspace
|
|
|
1683 #define EGL_EXT_image_gl_colorspace 1
|
|
|
1684 #define EGL_GL_COLORSPACE_DEFAULT_EXT 0x314D
|
|
|
1685 #endif /* EGL_EXT_image_gl_colorspace */
|
|
|
1686
|
|
|
1687 #ifndef EGL_EXT_image_implicit_sync_control
|
|
|
1688 #define EGL_EXT_image_implicit_sync_control 1
|
|
|
1689 #define EGL_IMPORT_SYNC_TYPE_EXT 0x3470
|
|
|
1690 #define EGL_IMPORT_IMPLICIT_SYNC_EXT 0x3471
|
|
|
1691 #define EGL_IMPORT_EXPLICIT_SYNC_EXT 0x3472
|
|
|
1692 #endif /* EGL_EXT_image_implicit_sync_control */
|
|
|
1693
|
|
|
1694 #ifndef EGL_EXT_multiview_window
|
|
|
1695 #define EGL_EXT_multiview_window 1
|
|
|
1696 #define EGL_MULTIVIEW_VIEW_COUNT_EXT 0x3134
|
|
|
1697 #endif /* EGL_EXT_multiview_window */
|
|
|
1698
|
|
|
1699 #ifndef EGL_EXT_output_base
|
|
|
1700 #define EGL_EXT_output_base 1
|
|
|
1701 typedef void *EGLOutputLayerEXT;
|
|
|
1702 typedef void *EGLOutputPortEXT;
|
|
|
1703 #define EGL_NO_OUTPUT_LAYER_EXT EGL_CAST(EGLOutputLayerEXT,0)
|
|
|
1704 #define EGL_NO_OUTPUT_PORT_EXT EGL_CAST(EGLOutputPortEXT,0)
|
|
|
1705 #define EGL_BAD_OUTPUT_LAYER_EXT 0x322D
|
|
|
1706 #define EGL_BAD_OUTPUT_PORT_EXT 0x322E
|
|
|
1707 #define EGL_SWAP_INTERVAL_EXT 0x322F
|
|
|
1708 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputLayerEXT *layers, EGLint max_layers, EGLint *num_layers);
|
|
|
1709 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputPortEXT *ports, EGLint max_ports, EGLint *num_ports);
|
|
|
1710 typedef EGLBoolean (EGLAPIENTRYP PFNEGLOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value);
|
|
|
1711 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib *value);
|
|
|
1712 typedef const char *(EGLAPIENTRYP PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name);
|
|
|
1713 typedef EGLBoolean (EGLAPIENTRYP PFNEGLOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value);
|
|
|
1714 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib *value);
|
|
|
1715 typedef const char *(EGLAPIENTRYP PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name);
|
|
|
1716 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1717 EGLAPI EGLBoolean EGLAPIENTRY eglGetOutputLayersEXT (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputLayerEXT *layers, EGLint max_layers, EGLint *num_layers);
|
|
|
1718 EGLAPI EGLBoolean EGLAPIENTRY eglGetOutputPortsEXT (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputPortEXT *ports, EGLint max_ports, EGLint *num_ports);
|
|
|
1719 EGLAPI EGLBoolean EGLAPIENTRY eglOutputLayerAttribEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value);
|
|
|
1720 EGLAPI EGLBoolean EGLAPIENTRY eglQueryOutputLayerAttribEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib *value);
|
|
|
1721 EGLAPI const char *EGLAPIENTRY eglQueryOutputLayerStringEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name);
|
|
|
1722 EGLAPI EGLBoolean EGLAPIENTRY eglOutputPortAttribEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value);
|
|
|
1723 EGLAPI EGLBoolean EGLAPIENTRY eglQueryOutputPortAttribEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib *value);
|
|
|
1724 EGLAPI const char *EGLAPIENTRY eglQueryOutputPortStringEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name);
|
|
|
1725 #endif
|
|
|
1726 #endif /* EGL_EXT_output_base */
|
|
|
1727
|
|
|
1728 #ifndef EGL_EXT_output_drm
|
|
|
1729 #define EGL_EXT_output_drm 1
|
|
|
1730 #define EGL_DRM_CRTC_EXT 0x3234
|
|
|
1731 #define EGL_DRM_PLANE_EXT 0x3235
|
|
|
1732 #define EGL_DRM_CONNECTOR_EXT 0x3236
|
|
|
1733 #endif /* EGL_EXT_output_drm */
|
|
|
1734
|
|
|
1735 #ifndef EGL_EXT_output_openwf
|
|
|
1736 #define EGL_EXT_output_openwf 1
|
|
|
1737 #define EGL_OPENWF_PIPELINE_ID_EXT 0x3238
|
|
|
1738 #define EGL_OPENWF_PORT_ID_EXT 0x3239
|
|
|
1739 #endif /* EGL_EXT_output_openwf */
|
|
|
1740
|
|
|
1741 #ifndef EGL_EXT_pixel_format_float
|
|
|
1742 #define EGL_EXT_pixel_format_float 1
|
|
|
1743 #define EGL_COLOR_COMPONENT_TYPE_EXT 0x3339
|
|
|
1744 #define EGL_COLOR_COMPONENT_TYPE_FIXED_EXT 0x333A
|
|
|
1745 #define EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT 0x333B
|
|
|
1746 #endif /* EGL_EXT_pixel_format_float */
|
|
|
1747
|
|
|
1748 #ifndef EGL_EXT_platform_base
|
|
|
1749 #define EGL_EXT_platform_base 1
|
|
|
1750 typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLenum platform, void *native_display, const EGLint *attrib_list);
|
|
|
1751 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLint *attrib_list);
|
|
|
1752 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLint *attrib_list);
|
|
|
1753 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1754 EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplayEXT (EGLenum platform, void *native_display, const EGLint *attrib_list);
|
|
|
1755 EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformWindowSurfaceEXT (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLint *attrib_list);
|
|
|
1756 EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformPixmapSurfaceEXT (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLint *attrib_list);
|
|
|
1757 #endif
|
|
|
1758 #endif /* EGL_EXT_platform_base */
|
|
|
1759
|
|
|
1760 #ifndef EGL_EXT_platform_device
|
|
|
1761 #define EGL_EXT_platform_device 1
|
|
|
1762 #define EGL_PLATFORM_DEVICE_EXT 0x313F
|
|
|
1763 #endif /* EGL_EXT_platform_device */
|
|
|
1764
|
|
|
1765 #ifndef EGL_EXT_platform_wayland
|
|
|
1766 #define EGL_EXT_platform_wayland 1
|
|
|
1767 #define EGL_PLATFORM_WAYLAND_EXT 0x31D8
|
|
|
1768 #endif /* EGL_EXT_platform_wayland */
|
|
|
1769
|
|
|
1770 #ifndef EGL_EXT_platform_x11
|
|
|
1771 #define EGL_EXT_platform_x11 1
|
|
|
1772 #define EGL_PLATFORM_X11_EXT 0x31D5
|
|
|
1773 #define EGL_PLATFORM_X11_SCREEN_EXT 0x31D6
|
|
|
1774 #endif /* EGL_EXT_platform_x11 */
|
|
|
1775
|
|
|
1776 #ifndef EGL_EXT_platform_xcb
|
|
|
1777 #define EGL_EXT_platform_xcb 1
|
|
|
1778 #define EGL_PLATFORM_XCB_EXT 0x31DC
|
|
|
1779 #define EGL_PLATFORM_XCB_SCREEN_EXT 0x31DE
|
|
|
1780 #endif /* EGL_EXT_platform_xcb */
|
|
|
1781
|
|
|
1782 #ifndef EGL_EXT_present_opaque
|
|
|
1783 #define EGL_EXT_present_opaque 1
|
|
|
1784 #define EGL_PRESENT_OPAQUE_EXT 0x31DF
|
|
|
1785 #endif /* EGL_EXT_present_opaque */
|
|
|
1786
|
|
|
1787 #ifndef EGL_EXT_protected_content
|
|
|
1788 #define EGL_EXT_protected_content 1
|
|
|
1789 #define EGL_PROTECTED_CONTENT_EXT 0x32C0
|
|
|
1790 #endif /* EGL_EXT_protected_content */
|
|
|
1791
|
|
|
1792 #ifndef EGL_EXT_protected_surface
|
|
|
1793 #define EGL_EXT_protected_surface 1
|
|
|
1794 #endif /* EGL_EXT_protected_surface */
|
|
|
1795
|
|
|
1796 #ifndef EGL_EXT_stream_consumer_egloutput
|
|
|
1797 #define EGL_EXT_stream_consumer_egloutput 1
|
|
|
1798 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMEROUTPUTEXTPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer);
|
|
|
1799 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1800 EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerOutputEXT (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer);
|
|
|
1801 #endif
|
|
|
1802 #endif /* EGL_EXT_stream_consumer_egloutput */
|
|
|
1803
|
|
|
1804 #ifndef EGL_EXT_surface_CTA861_3_metadata
|
|
|
1805 #define EGL_EXT_surface_CTA861_3_metadata 1
|
|
|
1806 #define EGL_CTA861_3_MAX_CONTENT_LIGHT_LEVEL_EXT 0x3360
|
|
|
1807 #define EGL_CTA861_3_MAX_FRAME_AVERAGE_LEVEL_EXT 0x3361
|
|
|
1808 #endif /* EGL_EXT_surface_CTA861_3_metadata */
|
|
|
1809
|
|
|
1810 #ifndef EGL_EXT_surface_SMPTE2086_metadata
|
|
|
1811 #define EGL_EXT_surface_SMPTE2086_metadata 1
|
|
|
1812 #define EGL_SMPTE2086_DISPLAY_PRIMARY_RX_EXT 0x3341
|
|
|
1813 #define EGL_SMPTE2086_DISPLAY_PRIMARY_RY_EXT 0x3342
|
|
|
1814 #define EGL_SMPTE2086_DISPLAY_PRIMARY_GX_EXT 0x3343
|
|
|
1815 #define EGL_SMPTE2086_DISPLAY_PRIMARY_GY_EXT 0x3344
|
|
|
1816 #define EGL_SMPTE2086_DISPLAY_PRIMARY_BX_EXT 0x3345
|
|
|
1817 #define EGL_SMPTE2086_DISPLAY_PRIMARY_BY_EXT 0x3346
|
|
|
1818 #define EGL_SMPTE2086_WHITE_POINT_X_EXT 0x3347
|
|
|
1819 #define EGL_SMPTE2086_WHITE_POINT_Y_EXT 0x3348
|
|
|
1820 #define EGL_SMPTE2086_MAX_LUMINANCE_EXT 0x3349
|
|
|
1821 #define EGL_SMPTE2086_MIN_LUMINANCE_EXT 0x334A
|
|
|
1822 #define EGL_METADATA_SCALING_EXT 50000
|
|
|
1823 #endif /* EGL_EXT_surface_SMPTE2086_metadata */
|
|
|
1824
|
|
|
1825 #ifndef EGL_EXT_surface_compression
|
|
|
1826 #define EGL_EXT_surface_compression 1
|
|
|
1827 #define EGL_SURFACE_COMPRESSION_EXT 0x34B0
|
|
|
1828 #define EGL_SURFACE_COMPRESSION_PLANE1_EXT 0x328E
|
|
|
1829 #define EGL_SURFACE_COMPRESSION_PLANE2_EXT 0x328F
|
|
|
1830 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_NONE_EXT 0x34B1
|
|
|
1831 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_DEFAULT_EXT 0x34B2
|
|
|
1832 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_1BPC_EXT 0x34B4
|
|
|
1833 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_2BPC_EXT 0x34B5
|
|
|
1834 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_3BPC_EXT 0x34B6
|
|
|
1835 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_4BPC_EXT 0x34B7
|
|
|
1836 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_5BPC_EXT 0x34B8
|
|
|
1837 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_6BPC_EXT 0x34B9
|
|
|
1838 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_7BPC_EXT 0x34BA
|
|
|
1839 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_8BPC_EXT 0x34BB
|
|
|
1840 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_9BPC_EXT 0x34BC
|
|
|
1841 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_10BPC_EXT 0x34BD
|
|
|
1842 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_11BPC_EXT 0x34BE
|
|
|
1843 #define EGL_SURFACE_COMPRESSION_FIXED_RATE_12BPC_EXT 0x34BF
|
|
|
1844 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSUPPORTEDCOMPRESSIONRATESEXTPROC) (EGLDisplay dpy, EGLConfig config, const EGLAttrib *attrib_list, EGLint *rates, EGLint rate_size, EGLint *num_rates);
|
|
|
1845 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1846 EGLAPI EGLBoolean EGLAPIENTRY eglQuerySupportedCompressionRatesEXT (EGLDisplay dpy, EGLConfig config, const EGLAttrib *attrib_list, EGLint *rates, EGLint rate_size, EGLint *num_rates);
|
|
|
1847 #endif
|
|
|
1848 #endif /* EGL_EXT_surface_compression */
|
|
|
1849
|
|
|
1850 #ifndef EGL_EXT_swap_buffers_with_damage
|
|
|
1851 #define EGL_EXT_swap_buffers_with_damage 1
|
|
|
1852 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC) (EGLDisplay dpy, EGLSurface surface, const EGLint *rects, EGLint n_rects);
|
|
|
1853 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1854 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersWithDamageEXT (EGLDisplay dpy, EGLSurface surface, const EGLint *rects, EGLint n_rects);
|
|
|
1855 #endif
|
|
|
1856 #endif /* EGL_EXT_swap_buffers_with_damage */
|
|
|
1857
|
|
|
1858 #ifndef EGL_EXT_sync_reuse
|
|
|
1859 #define EGL_EXT_sync_reuse 1
|
|
|
1860 typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNSIGNALSYNCEXTPROC) (EGLDisplay dpy, EGLSync sync, const EGLAttrib *attrib_list);
|
|
|
1861 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1862 EGLAPI EGLBoolean EGLAPIENTRY eglUnsignalSyncEXT (EGLDisplay dpy, EGLSync sync, const EGLAttrib *attrib_list);
|
|
|
1863 #endif
|
|
|
1864 #endif /* EGL_EXT_sync_reuse */
|
|
|
1865
|
|
|
1866 #ifndef EGL_EXT_yuv_surface
|
|
|
1867 #define EGL_EXT_yuv_surface 1
|
|
|
1868 #define EGL_YUV_ORDER_EXT 0x3301
|
|
|
1869 #define EGL_YUV_NUMBER_OF_PLANES_EXT 0x3311
|
|
|
1870 #define EGL_YUV_SUBSAMPLE_EXT 0x3312
|
|
|
1871 #define EGL_YUV_DEPTH_RANGE_EXT 0x3317
|
|
|
1872 #define EGL_YUV_CSC_STANDARD_EXT 0x330A
|
|
|
1873 #define EGL_YUV_PLANE_BPP_EXT 0x331A
|
|
|
1874 #define EGL_YUV_BUFFER_EXT 0x3300
|
|
|
1875 #define EGL_YUV_ORDER_YUV_EXT 0x3302
|
|
|
1876 #define EGL_YUV_ORDER_YVU_EXT 0x3303
|
|
|
1877 #define EGL_YUV_ORDER_YUYV_EXT 0x3304
|
|
|
1878 #define EGL_YUV_ORDER_UYVY_EXT 0x3305
|
|
|
1879 #define EGL_YUV_ORDER_YVYU_EXT 0x3306
|
|
|
1880 #define EGL_YUV_ORDER_VYUY_EXT 0x3307
|
|
|
1881 #define EGL_YUV_ORDER_AYUV_EXT 0x3308
|
|
|
1882 #define EGL_YUV_SUBSAMPLE_4_2_0_EXT 0x3313
|
|
|
1883 #define EGL_YUV_SUBSAMPLE_4_2_2_EXT 0x3314
|
|
|
1884 #define EGL_YUV_SUBSAMPLE_4_4_4_EXT 0x3315
|
|
|
1885 #define EGL_YUV_DEPTH_RANGE_LIMITED_EXT 0x3318
|
|
|
1886 #define EGL_YUV_DEPTH_RANGE_FULL_EXT 0x3319
|
|
|
1887 #define EGL_YUV_CSC_STANDARD_601_EXT 0x330B
|
|
|
1888 #define EGL_YUV_CSC_STANDARD_709_EXT 0x330C
|
|
|
1889 #define EGL_YUV_CSC_STANDARD_2020_EXT 0x330D
|
|
|
1890 #define EGL_YUV_PLANE_BPP_0_EXT 0x331B
|
|
|
1891 #define EGL_YUV_PLANE_BPP_8_EXT 0x331C
|
|
|
1892 #define EGL_YUV_PLANE_BPP_10_EXT 0x331D
|
|
|
1893 #endif /* EGL_EXT_yuv_surface */
|
|
|
1894
|
|
|
1895 #ifndef EGL_HI_clientpixmap
|
|
|
1896 #define EGL_HI_clientpixmap 1
|
|
|
1897 struct EGLClientPixmapHI {
|
|
|
1898 void *pData;
|
|
|
1899 EGLint iWidth;
|
|
|
1900 EGLint iHeight;
|
|
|
1901 EGLint iStride;
|
|
|
1902 };
|
|
|
1903 #define EGL_CLIENT_PIXMAP_POINTER_HI 0x8F74
|
|
|
1904 typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI *pixmap);
|
|
|
1905 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1906 EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurfaceHI (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI *pixmap);
|
|
|
1907 #endif
|
|
|
1908 #endif /* EGL_HI_clientpixmap */
|
|
|
1909
|
|
|
1910 #ifndef EGL_HI_colorformats
|
|
|
1911 #define EGL_HI_colorformats 1
|
|
|
1912 #define EGL_COLOR_FORMAT_HI 0x8F70
|
|
|
1913 #define EGL_COLOR_RGB_HI 0x8F71
|
|
|
1914 #define EGL_COLOR_RGBA_HI 0x8F72
|
|
|
1915 #define EGL_COLOR_ARGB_HI 0x8F73
|
|
|
1916 #endif /* EGL_HI_colorformats */
|
|
|
1917
|
|
|
1918 #ifndef EGL_IMG_context_priority
|
|
|
1919 #define EGL_IMG_context_priority 1
|
|
|
1920 #define EGL_CONTEXT_PRIORITY_LEVEL_IMG 0x3100
|
|
|
1921 #define EGL_CONTEXT_PRIORITY_HIGH_IMG 0x3101
|
|
|
1922 #define EGL_CONTEXT_PRIORITY_MEDIUM_IMG 0x3102
|
|
|
1923 #define EGL_CONTEXT_PRIORITY_LOW_IMG 0x3103
|
|
|
1924 #endif /* EGL_IMG_context_priority */
|
|
|
1925
|
|
|
1926 #ifndef EGL_IMG_image_plane_attribs
|
|
|
1927 #define EGL_IMG_image_plane_attribs 1
|
|
|
1928 #define EGL_NATIVE_BUFFER_MULTIPLANE_SEPARATE_IMG 0x3105
|
|
|
1929 #define EGL_NATIVE_BUFFER_PLANE_OFFSET_IMG 0x3106
|
|
|
1930 #endif /* EGL_IMG_image_plane_attribs */
|
|
|
1931
|
|
|
1932 #ifndef EGL_MESA_drm_image
|
|
|
1933 #define EGL_MESA_drm_image 1
|
|
|
1934 #define EGL_DRM_BUFFER_FORMAT_MESA 0x31D0
|
|
|
1935 #define EGL_DRM_BUFFER_USE_MESA 0x31D1
|
|
|
1936 #define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA 0x31D2
|
|
|
1937 #define EGL_DRM_BUFFER_MESA 0x31D3
|
|
|
1938 #define EGL_DRM_BUFFER_STRIDE_MESA 0x31D4
|
|
|
1939 #define EGL_DRM_BUFFER_USE_SCANOUT_MESA 0x00000001
|
|
|
1940 #define EGL_DRM_BUFFER_USE_SHARE_MESA 0x00000002
|
|
|
1941 #define EGL_DRM_BUFFER_USE_CURSOR_MESA 0x00000004
|
|
|
1942 typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay dpy, const EGLint *attrib_list);
|
|
|
1943 typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
|
|
|
1944 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1945 EGLAPI EGLImageKHR EGLAPIENTRY eglCreateDRMImageMESA (EGLDisplay dpy, const EGLint *attrib_list);
|
|
|
1946 EGLAPI EGLBoolean EGLAPIENTRY eglExportDRMImageMESA (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
|
|
|
1947 #endif
|
|
|
1948 #endif /* EGL_MESA_drm_image */
|
|
|
1949
|
|
|
1950 #ifndef EGL_MESA_image_dma_buf_export
|
|
|
1951 #define EGL_MESA_image_dma_buf_export 1
|
|
|
1952 typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers);
|
|
|
1953 typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDMABUFIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets);
|
|
|
1954 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1955 EGLAPI EGLBoolean EGLAPIENTRY eglExportDMABUFImageQueryMESA (EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers);
|
|
|
1956 EGLAPI EGLBoolean EGLAPIENTRY eglExportDMABUFImageMESA (EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets);
|
|
|
1957 #endif
|
|
|
1958 #endif /* EGL_MESA_image_dma_buf_export */
|
|
|
1959
|
|
|
1960 #ifndef EGL_MESA_platform_gbm
|
|
|
1961 #define EGL_MESA_platform_gbm 1
|
|
|
1962 #define EGL_PLATFORM_GBM_MESA 0x31D7
|
|
|
1963 #endif /* EGL_MESA_platform_gbm */
|
|
|
1964
|
|
|
1965 #ifndef EGL_MESA_platform_surfaceless
|
|
|
1966 #define EGL_MESA_platform_surfaceless 1
|
|
|
1967 #define EGL_PLATFORM_SURFACELESS_MESA 0x31DD
|
|
|
1968 #endif /* EGL_MESA_platform_surfaceless */
|
|
|
1969
|
|
|
1970 #ifndef EGL_MESA_query_driver
|
|
|
1971 #define EGL_MESA_query_driver 1
|
|
|
1972 typedef char *(EGLAPIENTRYP PFNEGLGETDISPLAYDRIVERCONFIGPROC) (EGLDisplay dpy);
|
|
|
1973 typedef const char *(EGLAPIENTRYP PFNEGLGETDISPLAYDRIVERNAMEPROC) (EGLDisplay dpy);
|
|
|
1974 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1975 EGLAPI char *EGLAPIENTRY eglGetDisplayDriverConfig (EGLDisplay dpy);
|
|
|
1976 EGLAPI const char *EGLAPIENTRY eglGetDisplayDriverName (EGLDisplay dpy);
|
|
|
1977 #endif
|
|
|
1978 #endif /* EGL_MESA_query_driver */
|
|
|
1979
|
|
|
1980 #ifndef EGL_NOK_swap_region
|
|
|
1981 #define EGL_NOK_swap_region 1
|
|
|
1982 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
|
|
|
1983 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1984 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersRegionNOK (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
|
|
|
1985 #endif
|
|
|
1986 #endif /* EGL_NOK_swap_region */
|
|
|
1987
|
|
|
1988 #ifndef EGL_NOK_swap_region2
|
|
|
1989 #define EGL_NOK_swap_region2 1
|
|
|
1990 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGION2NOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
|
|
|
1991 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
1992 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersRegion2NOK (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
|
|
|
1993 #endif
|
|
|
1994 #endif /* EGL_NOK_swap_region2 */
|
|
|
1995
|
|
|
1996 #ifndef EGL_NOK_texture_from_pixmap
|
|
|
1997 #define EGL_NOK_texture_from_pixmap 1
|
|
|
1998 #define EGL_Y_INVERTED_NOK 0x307F
|
|
|
1999 #endif /* EGL_NOK_texture_from_pixmap */
|
|
|
2000
|
|
|
2001 #ifndef EGL_NV_3dvision_surface
|
|
|
2002 #define EGL_NV_3dvision_surface 1
|
|
|
2003 #define EGL_AUTO_STEREO_NV 0x3136
|
|
|
2004 #endif /* EGL_NV_3dvision_surface */
|
|
|
2005
|
|
|
2006 #ifndef EGL_NV_context_priority_realtime
|
|
|
2007 #define EGL_NV_context_priority_realtime 1
|
|
|
2008 #define EGL_CONTEXT_PRIORITY_REALTIME_NV 0x3357
|
|
|
2009 #endif /* EGL_NV_context_priority_realtime */
|
|
|
2010
|
|
|
2011 #ifndef EGL_NV_coverage_sample
|
|
|
2012 #define EGL_NV_coverage_sample 1
|
|
|
2013 #define EGL_COVERAGE_BUFFERS_NV 0x30E0
|
|
|
2014 #define EGL_COVERAGE_SAMPLES_NV 0x30E1
|
|
|
2015 #endif /* EGL_NV_coverage_sample */
|
|
|
2016
|
|
|
2017 #ifndef EGL_NV_coverage_sample_resolve
|
|
|
2018 #define EGL_NV_coverage_sample_resolve 1
|
|
|
2019 #define EGL_COVERAGE_SAMPLE_RESOLVE_NV 0x3131
|
|
|
2020 #define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV 0x3132
|
|
|
2021 #define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV 0x3133
|
|
|
2022 #endif /* EGL_NV_coverage_sample_resolve */
|
|
|
2023
|
|
|
2024 #ifndef EGL_NV_cuda_event
|
|
|
2025 #define EGL_NV_cuda_event 1
|
|
|
2026 #define EGL_CUDA_EVENT_HANDLE_NV 0x323B
|
|
|
2027 #define EGL_SYNC_CUDA_EVENT_NV 0x323C
|
|
|
2028 #define EGL_SYNC_CUDA_EVENT_COMPLETE_NV 0x323D
|
|
|
2029 #endif /* EGL_NV_cuda_event */
|
|
|
2030
|
|
|
2031 #ifndef EGL_NV_depth_nonlinear
|
|
|
2032 #define EGL_NV_depth_nonlinear 1
|
|
|
2033 #define EGL_DEPTH_ENCODING_NV 0x30E2
|
|
|
2034 #define EGL_DEPTH_ENCODING_NONE_NV 0
|
|
|
2035 #define EGL_DEPTH_ENCODING_NONLINEAR_NV 0x30E3
|
|
|
2036 #endif /* EGL_NV_depth_nonlinear */
|
|
|
2037
|
|
|
2038 #ifndef EGL_NV_device_cuda
|
|
|
2039 #define EGL_NV_device_cuda 1
|
|
|
2040 #define EGL_CUDA_DEVICE_NV 0x323A
|
|
|
2041 #endif /* EGL_NV_device_cuda */
|
|
|
2042
|
|
|
2043 #ifndef EGL_NV_native_query
|
|
|
2044 #define EGL_NV_native_query 1
|
|
|
2045 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEDISPLAYNVPROC) (EGLDisplay dpy, EGLNativeDisplayType *display_id);
|
|
|
2046 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEWINDOWNVPROC) (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType *window);
|
|
|
2047 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYNATIVEPIXMAPNVPROC) (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType *pixmap);
|
|
|
2048 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2049 EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeDisplayNV (EGLDisplay dpy, EGLNativeDisplayType *display_id);
|
|
|
2050 EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativeWindowNV (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType *window);
|
|
|
2051 EGLAPI EGLBoolean EGLAPIENTRY eglQueryNativePixmapNV (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType *pixmap);
|
|
|
2052 #endif
|
|
|
2053 #endif /* EGL_NV_native_query */
|
|
|
2054
|
|
|
2055 #ifndef EGL_NV_post_convert_rounding
|
|
|
2056 #define EGL_NV_post_convert_rounding 1
|
|
|
2057 #endif /* EGL_NV_post_convert_rounding */
|
|
|
2058
|
|
|
2059 #ifndef EGL_NV_post_sub_buffer
|
|
|
2060 #define EGL_NV_post_sub_buffer 1
|
|
|
2061 #define EGL_POST_SUB_BUFFER_SUPPORTED_NV 0x30BE
|
|
|
2062 typedef EGLBoolean (EGLAPIENTRYP PFNEGLPOSTSUBBUFFERNVPROC) (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height);
|
|
|
2063 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2064 EGLAPI EGLBoolean EGLAPIENTRY eglPostSubBufferNV (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height);
|
|
|
2065 #endif
|
|
|
2066 #endif /* EGL_NV_post_sub_buffer */
|
|
|
2067
|
|
|
2068 #ifndef EGL_NV_quadruple_buffer
|
|
|
2069 #define EGL_NV_quadruple_buffer 1
|
|
|
2070 #define EGL_QUADRUPLE_BUFFER_NV 0x3231
|
|
|
2071 #endif /* EGL_NV_quadruple_buffer */
|
|
|
2072
|
|
|
2073 #ifndef EGL_NV_robustness_video_memory_purge
|
|
|
2074 #define EGL_NV_robustness_video_memory_purge 1
|
|
|
2075 #define EGL_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV 0x334C
|
|
|
2076 #endif /* EGL_NV_robustness_video_memory_purge */
|
|
|
2077
|
|
|
2078 #ifndef EGL_NV_stream_consumer_eglimage
|
|
|
2079 #define EGL_NV_stream_consumer_eglimage 1
|
|
|
2080 #define EGL_STREAM_CONSUMER_IMAGE_NV 0x3373
|
|
|
2081 #define EGL_STREAM_IMAGE_ADD_NV 0x3374
|
|
|
2082 #define EGL_STREAM_IMAGE_REMOVE_NV 0x3375
|
|
|
2083 #define EGL_STREAM_IMAGE_AVAILABLE_NV 0x3376
|
|
|
2084 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMIMAGECONSUMERCONNECTNVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLint num_modifiers, const EGLuint64KHR *modifiers, const EGLAttrib *attrib_list);
|
|
|
2085 typedef EGLint (EGLAPIENTRYP PFNEGLQUERYSTREAMCONSUMEREVENTNVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLTime timeout, EGLenum *event, EGLAttrib *aux);
|
|
|
2086 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMACQUIREIMAGENVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLImage *pImage, EGLSync sync);
|
|
|
2087 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMRELEASEIMAGENVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLImage image, EGLSync sync);
|
|
|
2088 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2089 EGLAPI EGLBoolean EGLAPIENTRY eglStreamImageConsumerConnectNV (EGLDisplay dpy, EGLStreamKHR stream, EGLint num_modifiers, const EGLuint64KHR *modifiers, const EGLAttrib *attrib_list);
|
|
|
2090 EGLAPI EGLint EGLAPIENTRY eglQueryStreamConsumerEventNV (EGLDisplay dpy, EGLStreamKHR stream, EGLTime timeout, EGLenum *event, EGLAttrib *aux);
|
|
|
2091 EGLAPI EGLBoolean EGLAPIENTRY eglStreamAcquireImageNV (EGLDisplay dpy, EGLStreamKHR stream, EGLImage *pImage, EGLSync sync);
|
|
|
2092 EGLAPI EGLBoolean EGLAPIENTRY eglStreamReleaseImageNV (EGLDisplay dpy, EGLStreamKHR stream, EGLImage image, EGLSync sync);
|
|
|
2093 #endif
|
|
|
2094 #endif /* EGL_NV_stream_consumer_eglimage */
|
|
|
2095
|
|
|
2096 #ifndef EGL_NV_stream_consumer_gltexture_yuv
|
|
|
2097 #define EGL_NV_stream_consumer_gltexture_yuv 1
|
|
|
2098 #define EGL_YUV_PLANE0_TEXTURE_UNIT_NV 0x332C
|
|
|
2099 #define EGL_YUV_PLANE1_TEXTURE_UNIT_NV 0x332D
|
|
|
2100 #define EGL_YUV_PLANE2_TEXTURE_UNIT_NV 0x332E
|
|
|
2101 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC) (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);
|
|
|
2102 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2103 EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerGLTextureExternalAttribsNV (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib *attrib_list);
|
|
|
2104 #endif
|
|
|
2105 #endif /* EGL_NV_stream_consumer_gltexture_yuv */
|
|
|
2106
|
|
|
2107 #ifndef EGL_NV_stream_cross_display
|
|
|
2108 #define EGL_NV_stream_cross_display 1
|
|
|
2109 #define EGL_STREAM_CROSS_DISPLAY_NV 0x334E
|
|
|
2110 #endif /* EGL_NV_stream_cross_display */
|
|
|
2111
|
|
|
2112 #ifndef EGL_NV_stream_cross_object
|
|
|
2113 #define EGL_NV_stream_cross_object 1
|
|
|
2114 #define EGL_STREAM_CROSS_OBJECT_NV 0x334D
|
|
|
2115 #endif /* EGL_NV_stream_cross_object */
|
|
|
2116
|
|
|
2117 #ifndef EGL_NV_stream_cross_partition
|
|
|
2118 #define EGL_NV_stream_cross_partition 1
|
|
|
2119 #define EGL_STREAM_CROSS_PARTITION_NV 0x323F
|
|
|
2120 #endif /* EGL_NV_stream_cross_partition */
|
|
|
2121
|
|
|
2122 #ifndef EGL_NV_stream_cross_process
|
|
|
2123 #define EGL_NV_stream_cross_process 1
|
|
|
2124 #define EGL_STREAM_CROSS_PROCESS_NV 0x3245
|
|
|
2125 #endif /* EGL_NV_stream_cross_process */
|
|
|
2126
|
|
|
2127 #ifndef EGL_NV_stream_cross_system
|
|
|
2128 #define EGL_NV_stream_cross_system 1
|
|
|
2129 #define EGL_STREAM_CROSS_SYSTEM_NV 0x334F
|
|
|
2130 #endif /* EGL_NV_stream_cross_system */
|
|
|
2131
|
|
|
2132 #ifndef EGL_NV_stream_dma
|
|
|
2133 #define EGL_NV_stream_dma 1
|
|
|
2134 #define EGL_STREAM_DMA_NV 0x3371
|
|
|
2135 #define EGL_STREAM_DMA_SERVER_NV 0x3372
|
|
|
2136 #endif /* EGL_NV_stream_dma */
|
|
|
2137
|
|
|
2138 #ifndef EGL_NV_stream_fifo_next
|
|
|
2139 #define EGL_NV_stream_fifo_next 1
|
|
|
2140 #define EGL_PENDING_FRAME_NV 0x3329
|
|
|
2141 #define EGL_STREAM_TIME_PENDING_NV 0x332A
|
|
|
2142 #endif /* EGL_NV_stream_fifo_next */
|
|
|
2143
|
|
|
2144 #ifndef EGL_NV_stream_fifo_synchronous
|
|
|
2145 #define EGL_NV_stream_fifo_synchronous 1
|
|
|
2146 #define EGL_STREAM_FIFO_SYNCHRONOUS_NV 0x3336
|
|
|
2147 #endif /* EGL_NV_stream_fifo_synchronous */
|
|
|
2148
|
|
|
2149 #ifndef EGL_NV_stream_flush
|
|
|
2150 #define EGL_NV_stream_flush 1
|
|
|
2151 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMFLUSHNVPROC) (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
2152 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2153 EGLAPI EGLBoolean EGLAPIENTRY eglStreamFlushNV (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
2154 #endif
|
|
|
2155 #endif /* EGL_NV_stream_flush */
|
|
|
2156
|
|
|
2157 #ifndef EGL_NV_stream_frame_limits
|
|
|
2158 #define EGL_NV_stream_frame_limits 1
|
|
|
2159 #define EGL_PRODUCER_MAX_FRAME_HINT_NV 0x3337
|
|
|
2160 #define EGL_CONSUMER_MAX_FRAME_HINT_NV 0x3338
|
|
|
2161 #endif /* EGL_NV_stream_frame_limits */
|
|
|
2162
|
|
|
2163 #ifndef EGL_NV_stream_metadata
|
|
|
2164 #define EGL_NV_stream_metadata 1
|
|
|
2165 #define EGL_MAX_STREAM_METADATA_BLOCKS_NV 0x3250
|
|
|
2166 #define EGL_MAX_STREAM_METADATA_BLOCK_SIZE_NV 0x3251
|
|
|
2167 #define EGL_MAX_STREAM_METADATA_TOTAL_SIZE_NV 0x3252
|
|
|
2168 #define EGL_PRODUCER_METADATA_NV 0x3253
|
|
|
2169 #define EGL_CONSUMER_METADATA_NV 0x3254
|
|
|
2170 #define EGL_PENDING_METADATA_NV 0x3328
|
|
|
2171 #define EGL_METADATA0_SIZE_NV 0x3255
|
|
|
2172 #define EGL_METADATA1_SIZE_NV 0x3256
|
|
|
2173 #define EGL_METADATA2_SIZE_NV 0x3257
|
|
|
2174 #define EGL_METADATA3_SIZE_NV 0x3258
|
|
|
2175 #define EGL_METADATA0_TYPE_NV 0x3259
|
|
|
2176 #define EGL_METADATA1_TYPE_NV 0x325A
|
|
|
2177 #define EGL_METADATA2_TYPE_NV 0x325B
|
|
|
2178 #define EGL_METADATA3_TYPE_NV 0x325C
|
|
|
2179 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDISPLAYATTRIBNVPROC) (EGLDisplay dpy, EGLint attribute, EGLAttrib *value);
|
|
|
2180 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSETSTREAMMETADATANVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLint n, EGLint offset, EGLint size, const void *data);
|
|
|
2181 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMMETADATANVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum name, EGLint n, EGLint offset, EGLint size, void *data);
|
|
|
2182 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2183 EGLAPI EGLBoolean EGLAPIENTRY eglQueryDisplayAttribNV (EGLDisplay dpy, EGLint attribute, EGLAttrib *value);
|
|
|
2184 EGLAPI EGLBoolean EGLAPIENTRY eglSetStreamMetadataNV (EGLDisplay dpy, EGLStreamKHR stream, EGLint n, EGLint offset, EGLint size, const void *data);
|
|
|
2185 EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamMetadataNV (EGLDisplay dpy, EGLStreamKHR stream, EGLenum name, EGLint n, EGLint offset, EGLint size, void *data);
|
|
|
2186 #endif
|
|
|
2187 #endif /* EGL_NV_stream_metadata */
|
|
|
2188
|
|
|
2189 #ifndef EGL_NV_stream_origin
|
|
|
2190 #define EGL_NV_stream_origin 1
|
|
|
2191 #define EGL_STREAM_FRAME_ORIGIN_X_NV 0x3366
|
|
|
2192 #define EGL_STREAM_FRAME_ORIGIN_Y_NV 0x3367
|
|
|
2193 #define EGL_STREAM_FRAME_MAJOR_AXIS_NV 0x3368
|
|
|
2194 #define EGL_CONSUMER_AUTO_ORIENTATION_NV 0x3369
|
|
|
2195 #define EGL_PRODUCER_AUTO_ORIENTATION_NV 0x336A
|
|
|
2196 #define EGL_LEFT_NV 0x336B
|
|
|
2197 #define EGL_RIGHT_NV 0x336C
|
|
|
2198 #define EGL_TOP_NV 0x336D
|
|
|
2199 #define EGL_BOTTOM_NV 0x336E
|
|
|
2200 #define EGL_X_AXIS_NV 0x336F
|
|
|
2201 #define EGL_Y_AXIS_NV 0x3370
|
|
|
2202 #endif /* EGL_NV_stream_origin */
|
|
|
2203
|
|
|
2204 #ifndef EGL_NV_stream_remote
|
|
|
2205 #define EGL_NV_stream_remote 1
|
|
|
2206 #define EGL_STREAM_STATE_INITIALIZING_NV 0x3240
|
|
|
2207 #define EGL_STREAM_TYPE_NV 0x3241
|
|
|
2208 #define EGL_STREAM_PROTOCOL_NV 0x3242
|
|
|
2209 #define EGL_STREAM_ENDPOINT_NV 0x3243
|
|
|
2210 #define EGL_STREAM_LOCAL_NV 0x3244
|
|
|
2211 #define EGL_STREAM_PRODUCER_NV 0x3247
|
|
|
2212 #define EGL_STREAM_CONSUMER_NV 0x3248
|
|
|
2213 #define EGL_STREAM_PROTOCOL_FD_NV 0x3246
|
|
|
2214 #endif /* EGL_NV_stream_remote */
|
|
|
2215
|
|
|
2216 #ifndef EGL_NV_stream_reset
|
|
|
2217 #define EGL_NV_stream_reset 1
|
|
|
2218 #define EGL_SUPPORT_RESET_NV 0x3334
|
|
|
2219 #define EGL_SUPPORT_REUSE_NV 0x3335
|
|
|
2220 typedef EGLBoolean (EGLAPIENTRYP PFNEGLRESETSTREAMNVPROC) (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
2221 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2222 EGLAPI EGLBoolean EGLAPIENTRY eglResetStreamNV (EGLDisplay dpy, EGLStreamKHR stream);
|
|
|
2223 #endif
|
|
|
2224 #endif /* EGL_NV_stream_reset */
|
|
|
2225
|
|
|
2226 #ifndef EGL_NV_stream_socket
|
|
|
2227 #define EGL_NV_stream_socket 1
|
|
|
2228 #define EGL_STREAM_PROTOCOL_SOCKET_NV 0x324B
|
|
|
2229 #define EGL_SOCKET_HANDLE_NV 0x324C
|
|
|
2230 #define EGL_SOCKET_TYPE_NV 0x324D
|
|
|
2231 #endif /* EGL_NV_stream_socket */
|
|
|
2232
|
|
|
2233 #ifndef EGL_NV_stream_socket_inet
|
|
|
2234 #define EGL_NV_stream_socket_inet 1
|
|
|
2235 #define EGL_SOCKET_TYPE_INET_NV 0x324F
|
|
|
2236 #endif /* EGL_NV_stream_socket_inet */
|
|
|
2237
|
|
|
2238 #ifndef EGL_NV_stream_socket_unix
|
|
|
2239 #define EGL_NV_stream_socket_unix 1
|
|
|
2240 #define EGL_SOCKET_TYPE_UNIX_NV 0x324E
|
|
|
2241 #endif /* EGL_NV_stream_socket_unix */
|
|
|
2242
|
|
|
2243 #ifndef EGL_NV_stream_sync
|
|
|
2244 #define EGL_NV_stream_sync 1
|
|
|
2245 #define EGL_SYNC_NEW_FRAME_NV 0x321F
|
|
|
2246 typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESTREAMSYNCNVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint *attrib_list);
|
|
|
2247 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2248 EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateStreamSyncNV (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint *attrib_list);
|
|
|
2249 #endif
|
|
|
2250 #endif /* EGL_NV_stream_sync */
|
|
|
2251
|
|
|
2252 #ifndef EGL_NV_sync
|
|
|
2253 #define EGL_NV_sync 1
|
|
|
2254 typedef void *EGLSyncNV;
|
|
|
2255 typedef khronos_utime_nanoseconds_t EGLTimeNV;
|
|
|
2256 #ifdef KHRONOS_SUPPORT_INT64
|
|
|
2257 #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV 0x30E6
|
|
|
2258 #define EGL_SYNC_STATUS_NV 0x30E7
|
|
|
2259 #define EGL_SIGNALED_NV 0x30E8
|
|
|
2260 #define EGL_UNSIGNALED_NV 0x30E9
|
|
|
2261 #define EGL_SYNC_FLUSH_COMMANDS_BIT_NV 0x0001
|
|
|
2262 #define EGL_FOREVER_NV 0xFFFFFFFFFFFFFFFFull
|
|
|
2263 #define EGL_ALREADY_SIGNALED_NV 0x30EA
|
|
|
2264 #define EGL_TIMEOUT_EXPIRED_NV 0x30EB
|
|
|
2265 #define EGL_CONDITION_SATISFIED_NV 0x30EC
|
|
|
2266 #define EGL_SYNC_TYPE_NV 0x30ED
|
|
|
2267 #define EGL_SYNC_CONDITION_NV 0x30EE
|
|
|
2268 #define EGL_SYNC_FENCE_NV 0x30EF
|
|
|
2269 #define EGL_NO_SYNC_NV EGL_CAST(EGLSyncNV,0)
|
|
|
2270 typedef EGLSyncNV (EGLAPIENTRYP PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list);
|
|
|
2271 typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV sync);
|
|
|
2272 typedef EGLBoolean (EGLAPIENTRYP PFNEGLFENCENVPROC) (EGLSyncNV sync);
|
|
|
2273 typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout);
|
|
|
2274 typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV sync, EGLenum mode);
|
|
|
2275 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV sync, EGLint attribute, EGLint *value);
|
|
|
2276 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2277 EGLAPI EGLSyncNV EGLAPIENTRY eglCreateFenceSyncNV (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list);
|
|
|
2278 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncNV (EGLSyncNV sync);
|
|
|
2279 EGLAPI EGLBoolean EGLAPIENTRY eglFenceNV (EGLSyncNV sync);
|
|
|
2280 EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncNV (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout);
|
|
|
2281 EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncNV (EGLSyncNV sync, EGLenum mode);
|
|
|
2282 EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribNV (EGLSyncNV sync, EGLint attribute, EGLint *value);
|
|
|
2283 #endif
|
|
|
2284 #endif /* KHRONOS_SUPPORT_INT64 */
|
|
|
2285 #endif /* EGL_NV_sync */
|
|
|
2286
|
|
|
2287 #ifndef EGL_NV_system_time
|
|
|
2288 #define EGL_NV_system_time 1
|
|
|
2289 typedef khronos_utime_nanoseconds_t EGLuint64NV;
|
|
|
2290 #ifdef KHRONOS_SUPPORT_INT64
|
|
|
2291 typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) (void);
|
|
|
2292 typedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMENVPROC) (void);
|
|
|
2293 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2294 EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeFrequencyNV (void);
|
|
|
2295 EGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeNV (void);
|
|
|
2296 #endif
|
|
|
2297 #endif /* KHRONOS_SUPPORT_INT64 */
|
|
|
2298 #endif /* EGL_NV_system_time */
|
|
|
2299
|
|
|
2300 #ifndef EGL_NV_triple_buffer
|
|
|
2301 #define EGL_NV_triple_buffer 1
|
|
|
2302 #define EGL_TRIPLE_BUFFER_NV 0x3230
|
|
|
2303 #endif /* EGL_NV_triple_buffer */
|
|
|
2304
|
|
|
2305 #ifndef EGL_TIZEN_image_native_buffer
|
|
|
2306 #define EGL_TIZEN_image_native_buffer 1
|
|
|
2307 #define EGL_NATIVE_BUFFER_TIZEN 0x32A0
|
|
|
2308 #endif /* EGL_TIZEN_image_native_buffer */
|
|
|
2309
|
|
|
2310 #ifndef EGL_TIZEN_image_native_surface
|
|
|
2311 #define EGL_TIZEN_image_native_surface 1
|
|
|
2312 #define EGL_NATIVE_SURFACE_TIZEN 0x32A1
|
|
|
2313 #endif /* EGL_TIZEN_image_native_surface */
|
|
|
2314
|
|
|
2315 #ifndef EGL_WL_bind_wayland_display
|
|
|
2316 #define EGL_WL_bind_wayland_display 1
|
|
|
2317 #define PFNEGLBINDWAYLANDDISPLAYWL PFNEGLBINDWAYLANDDISPLAYWLPROC
|
|
|
2318 #define PFNEGLUNBINDWAYLANDDISPLAYWL PFNEGLUNBINDWAYLANDDISPLAYWLPROC
|
|
|
2319 #define PFNEGLQUERYWAYLANDBUFFERWL PFNEGLQUERYWAYLANDBUFFERWLPROC
|
|
|
2320 struct wl_display;
|
|
|
2321 struct wl_resource;
|
|
|
2322 #define EGL_WAYLAND_BUFFER_WL 0x31D5
|
|
|
2323 #define EGL_WAYLAND_PLANE_WL 0x31D6
|
|
|
2324 #define EGL_TEXTURE_Y_U_V_WL 0x31D7
|
|
|
2325 #define EGL_TEXTURE_Y_UV_WL 0x31D8
|
|
|
2326 #define EGL_TEXTURE_Y_XUXV_WL 0x31D9
|
|
|
2327 #define EGL_TEXTURE_EXTERNAL_WL 0x31DA
|
|
|
2328 #define EGL_WAYLAND_Y_INVERTED_WL 0x31DB
|
|
|
2329 typedef EGLBoolean (EGLAPIENTRYP PFNEGLBINDWAYLANDDISPLAYWLPROC) (EGLDisplay dpy, struct wl_display *display);
|
|
|
2330 typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNBINDWAYLANDDISPLAYWLPROC) (EGLDisplay dpy, struct wl_display *display);
|
|
|
2331 typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYWAYLANDBUFFERWLPROC) (EGLDisplay dpy, struct wl_resource *buffer, EGLint attribute, EGLint *value);
|
|
|
2332 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2333 EGLAPI EGLBoolean EGLAPIENTRY eglBindWaylandDisplayWL (EGLDisplay dpy, struct wl_display *display);
|
|
|
2334 EGLAPI EGLBoolean EGLAPIENTRY eglUnbindWaylandDisplayWL (EGLDisplay dpy, struct wl_display *display);
|
|
|
2335 EGLAPI EGLBoolean EGLAPIENTRY eglQueryWaylandBufferWL (EGLDisplay dpy, struct wl_resource *buffer, EGLint attribute, EGLint *value);
|
|
|
2336 #endif
|
|
|
2337 #endif /* EGL_WL_bind_wayland_display */
|
|
|
2338
|
|
|
2339 #ifndef EGL_WL_create_wayland_buffer_from_image
|
|
|
2340 #define EGL_WL_create_wayland_buffer_from_image 1
|
|
|
2341 #define PFNEGLCREATEWAYLANDBUFFERFROMIMAGEWL PFNEGLCREATEWAYLANDBUFFERFROMIMAGEWLPROC
|
|
|
2342 struct wl_buffer;
|
|
|
2343 typedef struct wl_buffer *(EGLAPIENTRYP PFNEGLCREATEWAYLANDBUFFERFROMIMAGEWLPROC) (EGLDisplay dpy, EGLImageKHR image);
|
|
|
2344 #ifdef EGL_EGLEXT_PROTOTYPES
|
|
|
2345 EGLAPI struct wl_buffer *EGLAPIENTRY eglCreateWaylandBufferFromImageWL (EGLDisplay dpy, EGLImageKHR image);
|
|
|
2346 #endif
|
|
|
2347 #endif /* EGL_WL_create_wayland_buffer_from_image */
|
|
|
2348
|
|
|
2349 #ifdef __cplusplus
|
|
|
2350 }
|
|
|
2351 #endif
|
|
|
2352
|
|
|
2353 #endif /* __eglext_h_ */
|
|
|
2354
|
|
|
2355 #endif /* _MSC_VER */
|