You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

2619 line
101 KiB

  1. /*
  2. ** The OpenGL Extension Wrangler Library
  3. ** Copyright (C) 2008-2017, Nigel Stewart <nigels[]users sourceforge net>
  4. ** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
  5. ** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
  6. ** Copyright (C) 2002, Lev Povalahev
  7. ** All rights reserved.
  8. **
  9. ** Redistribution and use in source and binary forms, with or without
  10. ** modification, are permitted provided that the following conditions are met:
  11. **
  12. ** * Redistributions of source code must retain the above copyright notice,
  13. ** this list of conditions and the following disclaimer.
  14. ** * Redistributions in binary form must reproduce the above copyright notice,
  15. ** this list of conditions and the following disclaimer in the documentation
  16. ** and/or other materials provided with the distribution.
  17. ** * The name of the author may be used to endorse or promote products
  18. ** derived from this software without specific prior written permission.
  19. **
  20. ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  21. ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  22. ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  23. ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  24. ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  25. ** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  26. ** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  27. ** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  28. ** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  29. ** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  30. ** THE POSSIBILITY OF SUCH DAMAGE.
  31. */
  32. /*
  33. * Mesa 3-D graphics library
  34. * Version: 7.0
  35. *
  36. * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
  37. *
  38. * Permission is hereby granted, free of charge, to any person obtaining a
  39. * copy of this software and associated documentation files (the "Software"),
  40. * to deal in the Software without restriction, including without limitation
  41. * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  42. * and/or sell copies of the Software, and to permit persons to whom the
  43. * Software is furnished to do so, subject to the following conditions:
  44. *
  45. * The above copyright notice and this permission notice shall be included
  46. * in all copies or substantial portions of the Software.
  47. *
  48. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  49. * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  50. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  51. * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  52. * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  53. * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  54. */
  55. /*
  56. ** Copyright (c) 2007 The Khronos Group Inc.
  57. **
  58. ** Permission is hereby granted, free of charge, to any person obtaining a
  59. ** copy of this software and/or associated documentation files (the
  60. ** "Materials"), to deal in the Materials without restriction, including
  61. ** without limitation the rights to use, copy, modify, merge, publish,
  62. ** distribute, sublicense, and/or sell copies of the Materials, and to
  63. ** permit persons to whom the Materials are furnished to do so, subject to
  64. ** the following conditions:
  65. **
  66. ** The above copyright notice and this permission notice shall be included
  67. ** in all copies or substantial portions of the Materials.
  68. **
  69. ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  70. ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  71. ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  72. ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
  73. ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  74. ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  75. ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
  76. */
  77. #ifndef __eglew_h__
  78. #define __eglew_h__
  79. #define __EGLEW_H__
  80. #ifdef __eglext_h_
  81. #error eglext.h included before eglew.h
  82. #endif
  83. #if defined(__egl_h_)
  84. #error egl.h included before eglew.h
  85. #endif
  86. #define __eglext_h_
  87. #define __egl_h_
  88. #ifndef EGLAPIENTRY
  89. #define EGLAPIENTRY
  90. #endif
  91. #ifndef EGLAPI
  92. #define EGLAPI extern
  93. #endif
  94. /* EGL Types */
  95. #include <sys/types.h>
  96. #include <KHR/khrplatform.h>
  97. #include <EGL/eglplatform.h>
  98. #include <GL/glew.h>
  99. #ifdef __cplusplus
  100. extern "C" {
  101. #endif
  102. typedef int32_t EGLint;
  103. typedef unsigned int EGLBoolean;
  104. typedef void *EGLDisplay;
  105. typedef void *EGLConfig;
  106. typedef void *EGLSurface;
  107. typedef void *EGLContext;
  108. typedef void (*__eglMustCastToProperFunctionPointerType)(void);
  109. typedef unsigned int EGLenum;
  110. typedef void *EGLClientBuffer;
  111. typedef void *EGLSync;
  112. typedef intptr_t EGLAttrib;
  113. typedef khronos_utime_nanoseconds_t EGLTime;
  114. typedef void *EGLImage;
  115. typedef void *EGLSyncKHR;
  116. typedef intptr_t EGLAttribKHR;
  117. typedef void *EGLLabelKHR;
  118. typedef void *EGLObjectKHR;
  119. typedef void (EGLAPIENTRY *EGLDEBUGPROCKHR)(EGLenum error,const char *command,EGLint messageType,EGLLabelKHR threadLabel,EGLLabelKHR objectLabel,const char* message);
  120. typedef khronos_utime_nanoseconds_t EGLTimeKHR;
  121. typedef void *EGLImageKHR;
  122. typedef void *EGLStreamKHR;
  123. typedef khronos_uint64_t EGLuint64KHR;
  124. typedef int EGLNativeFileDescriptorKHR;
  125. typedef khronos_ssize_t EGLsizeiANDROID;
  126. typedef void (*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, const void *value, EGLsizeiANDROID valueSize);
  127. typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, void *value, EGLsizeiANDROID valueSize);
  128. typedef void *EGLDeviceEXT;
  129. typedef void *EGLOutputLayerEXT;
  130. typedef void *EGLOutputPortEXT;
  131. typedef void *EGLSyncNV;
  132. typedef khronos_utime_nanoseconds_t EGLTimeNV;
  133. typedef khronos_utime_nanoseconds_t EGLuint64NV;
  134. typedef khronos_stime_nanoseconds_t EGLnsecsANDROID;
  135. struct EGLClientPixmapHI;
  136. #define EGL_DONT_CARE ((EGLint)-1)
  137. #define EGL_NO_CONTEXT ((EGLContext)0)
  138. #define EGL_NO_DISPLAY ((EGLDisplay)0)
  139. #define EGL_NO_IMAGE ((EGLImage)0)
  140. #define EGL_NO_SURFACE ((EGLSurface)0)
  141. #define EGL_NO_SYNC ((EGLSync)0)
  142. #define EGL_UNKNOWN ((EGLint)-1)
  143. #define EGL_DEFAULT_DISPLAY ((EGLNativeDisplayType)0)
  144. EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname);
  145. /* ---------------------------- EGL_VERSION_1_0 ---------------------------- */
  146. #ifndef EGL_VERSION_1_0
  147. #define EGL_VERSION_1_0 1
  148. #define EGL_FALSE 0
  149. #define EGL_PBUFFER_BIT 0x0001
  150. #define EGL_TRUE 1
  151. #define EGL_PIXMAP_BIT 0x0002
  152. #define EGL_WINDOW_BIT 0x0004
  153. #define EGL_SUCCESS 0x3000
  154. #define EGL_NOT_INITIALIZED 0x3001
  155. #define EGL_BAD_ACCESS 0x3002
  156. #define EGL_BAD_ALLOC 0x3003
  157. #define EGL_BAD_ATTRIBUTE 0x3004
  158. #define EGL_BAD_CONFIG 0x3005
  159. #define EGL_BAD_CONTEXT 0x3006
  160. #define EGL_BAD_CURRENT_SURFACE 0x3007
  161. #define EGL_BAD_DISPLAY 0x3008
  162. #define EGL_BAD_MATCH 0x3009
  163. #define EGL_BAD_NATIVE_PIXMAP 0x300A
  164. #define EGL_BAD_NATIVE_WINDOW 0x300B
  165. #define EGL_BAD_PARAMETER 0x300C
  166. #define EGL_BAD_SURFACE 0x300D
  167. #define EGL_BUFFER_SIZE 0x3020
  168. #define EGL_ALPHA_SIZE 0x3021
  169. #define EGL_BLUE_SIZE 0x3022
  170. #define EGL_GREEN_SIZE 0x3023
  171. #define EGL_RED_SIZE 0x3024
  172. #define EGL_DEPTH_SIZE 0x3025
  173. #define EGL_STENCIL_SIZE 0x3026
  174. #define EGL_CONFIG_CAVEAT 0x3027
  175. #define EGL_CONFIG_ID 0x3028
  176. #define EGL_LEVEL 0x3029
  177. #define EGL_MAX_PBUFFER_HEIGHT 0x302A
  178. #define EGL_MAX_PBUFFER_PIXELS 0x302B
  179. #define EGL_MAX_PBUFFER_WIDTH 0x302C
  180. #define EGL_NATIVE_RENDERABLE 0x302D
  181. #define EGL_NATIVE_VISUAL_ID 0x302E
  182. #define EGL_NATIVE_VISUAL_TYPE 0x302F
  183. #define EGL_SAMPLES 0x3031
  184. #define EGL_SAMPLE_BUFFERS 0x3032
  185. #define EGL_SURFACE_TYPE 0x3033
  186. #define EGL_TRANSPARENT_TYPE 0x3034
  187. #define EGL_TRANSPARENT_BLUE_VALUE 0x3035
  188. #define EGL_TRANSPARENT_GREEN_VALUE 0x3036
  189. #define EGL_TRANSPARENT_RED_VALUE 0x3037
  190. #define EGL_NONE 0x3038
  191. #define EGL_SLOW_CONFIG 0x3050
  192. #define EGL_NON_CONFORMANT_CONFIG 0x3051
  193. #define EGL_TRANSPARENT_RGB 0x3052
  194. #define EGL_VENDOR 0x3053
  195. #define EGL_VERSION 0x3054
  196. #define EGL_EXTENSIONS 0x3055
  197. #define EGL_HEIGHT 0x3056
  198. #define EGL_WIDTH 0x3057
  199. #define EGL_LARGEST_PBUFFER 0x3058
  200. #define EGL_DRAW 0x3059
  201. #define EGL_READ 0x305A
  202. #define EGL_CORE_NATIVE_ENGINE 0x305B
  203. typedef EGLBoolean ( * PFNEGLCHOOSECONFIGPROC) (EGLDisplay dpy, const EGLint * attrib_list, EGLConfig * configs, EGLint config_size, EGLint * num_config);
  204. typedef EGLBoolean ( * PFNEGLCOPYBUFFERSPROC) (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target);
  205. typedef EGLContext ( * PFNEGLCREATECONTEXTPROC) (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint * attrib_list);
  206. typedef EGLSurface ( * PFNEGLCREATEPBUFFERSURFACEPROC) (EGLDisplay dpy, EGLConfig config, const EGLint * attrib_list);
  207. typedef EGLSurface ( * PFNEGLCREATEPIXMAPSURFACEPROC) (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint * attrib_list);
  208. typedef EGLSurface ( * PFNEGLCREATEWINDOWSURFACEPROC) (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint * attrib_list);
  209. typedef EGLBoolean ( * PFNEGLDESTROYCONTEXTPROC) (EGLDisplay dpy, EGLContext ctx);
  210. typedef EGLBoolean ( * PFNEGLDESTROYSURFACEPROC) (EGLDisplay dpy, EGLSurface surface);
  211. typedef EGLBoolean ( * PFNEGLGETCONFIGATTRIBPROC) (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint * value);
  212. typedef EGLBoolean ( * PFNEGLGETCONFIGSPROC) (EGLDisplay dpy, EGLConfig * configs, EGLint config_size, EGLint * num_config);
  213. typedef EGLDisplay ( * PFNEGLGETCURRENTDISPLAYPROC) ( void );
  214. typedef EGLSurface ( * PFNEGLGETCURRENTSURFACEPROC) (EGLint readdraw);
  215. typedef EGLDisplay ( * PFNEGLGETDISPLAYPROC) (EGLNativeDisplayType display_id);
  216. typedef EGLint ( * PFNEGLGETERRORPROC) ( void );
  217. typedef EGLBoolean ( * PFNEGLINITIALIZEPROC) (EGLDisplay dpy, EGLint * major, EGLint * minor);
  218. typedef EGLBoolean ( * PFNEGLMAKECURRENTPROC) (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx);
  219. typedef EGLBoolean ( * PFNEGLQUERYCONTEXTPROC) (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint * value);
  220. typedef const char * ( * PFNEGLQUERYSTRINGPROC) (EGLDisplay dpy, EGLint name);
  221. typedef EGLBoolean ( * PFNEGLQUERYSURFACEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint * value);
  222. typedef EGLBoolean ( * PFNEGLSWAPBUFFERSPROC) (EGLDisplay dpy, EGLSurface surface);
  223. typedef EGLBoolean ( * PFNEGLTERMINATEPROC) (EGLDisplay dpy);
  224. typedef EGLBoolean ( * PFNEGLWAITGLPROC) ( void );
  225. typedef EGLBoolean ( * PFNEGLWAITNATIVEPROC) (EGLint engine);
  226. #define eglChooseConfig EGLEW_GET_FUN(__eglewChooseConfig)
  227. #define eglCopyBuffers EGLEW_GET_FUN(__eglewCopyBuffers)
  228. #define eglCreateContext EGLEW_GET_FUN(__eglewCreateContext)
  229. #define eglCreatePbufferSurface EGLEW_GET_FUN(__eglewCreatePbufferSurface)
  230. #define eglCreatePixmapSurface EGLEW_GET_FUN(__eglewCreatePixmapSurface)
  231. #define eglCreateWindowSurface EGLEW_GET_FUN(__eglewCreateWindowSurface)
  232. #define eglDestroyContext EGLEW_GET_FUN(__eglewDestroyContext)
  233. #define eglDestroySurface EGLEW_GET_FUN(__eglewDestroySurface)
  234. #define eglGetConfigAttrib EGLEW_GET_FUN(__eglewGetConfigAttrib)
  235. #define eglGetConfigs EGLEW_GET_FUN(__eglewGetConfigs)
  236. #define eglGetCurrentDisplay EGLEW_GET_FUN(__eglewGetCurrentDisplay)
  237. #define eglGetCurrentSurface EGLEW_GET_FUN(__eglewGetCurrentSurface)
  238. #define eglGetDisplay EGLEW_GET_FUN(__eglewGetDisplay)
  239. #define eglGetError EGLEW_GET_FUN(__eglewGetError)
  240. #define eglInitialize EGLEW_GET_FUN(__eglewInitialize)
  241. #define eglMakeCurrent EGLEW_GET_FUN(__eglewMakeCurrent)
  242. #define eglQueryContext EGLEW_GET_FUN(__eglewQueryContext)
  243. #define eglQueryString EGLEW_GET_FUN(__eglewQueryString)
  244. #define eglQuerySurface EGLEW_GET_FUN(__eglewQuerySurface)
  245. #define eglSwapBuffers EGLEW_GET_FUN(__eglewSwapBuffers)
  246. #define eglTerminate EGLEW_GET_FUN(__eglewTerminate)
  247. #define eglWaitGL EGLEW_GET_FUN(__eglewWaitGL)
  248. #define eglWaitNative EGLEW_GET_FUN(__eglewWaitNative)
  249. #define EGLEW_VERSION_1_0 EGLEW_GET_VAR(__EGLEW_VERSION_1_0)
  250. #endif /* EGL_VERSION_1_0 */
  251. /* ---------------------------- EGL_VERSION_1_1 ---------------------------- */
  252. #ifndef EGL_VERSION_1_1
  253. #define EGL_VERSION_1_1 1
  254. #define EGL_CONTEXT_LOST 0x300E
  255. #define EGL_BIND_TO_TEXTURE_RGB 0x3039
  256. #define EGL_BIND_TO_TEXTURE_RGBA 0x303A
  257. #define EGL_MIN_SWAP_INTERVAL 0x303B
  258. #define EGL_MAX_SWAP_INTERVAL 0x303C
  259. #define EGL_NO_TEXTURE 0x305C
  260. #define EGL_TEXTURE_RGB 0x305D
  261. #define EGL_TEXTURE_RGBA 0x305E
  262. #define EGL_TEXTURE_2D 0x305F
  263. #define EGL_TEXTURE_FORMAT 0x3080
  264. #define EGL_TEXTURE_TARGET 0x3081
  265. #define EGL_MIPMAP_TEXTURE 0x3082
  266. #define EGL_MIPMAP_LEVEL 0x3083
  267. #define EGL_BACK_BUFFER 0x3084
  268. typedef EGLBoolean ( * PFNEGLBINDTEXIMAGEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
  269. typedef EGLBoolean ( * PFNEGLRELEASETEXIMAGEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
  270. typedef EGLBoolean ( * PFNEGLSURFACEATTRIBPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value);
  271. typedef EGLBoolean ( * PFNEGLSWAPINTERVALPROC) (EGLDisplay dpy, EGLint interval);
  272. #define eglBindTexImage EGLEW_GET_FUN(__eglewBindTexImage)
  273. #define eglReleaseTexImage EGLEW_GET_FUN(__eglewReleaseTexImage)
  274. #define eglSurfaceAttrib EGLEW_GET_FUN(__eglewSurfaceAttrib)
  275. #define eglSwapInterval EGLEW_GET_FUN(__eglewSwapInterval)
  276. #define EGLEW_VERSION_1_1 EGLEW_GET_VAR(__EGLEW_VERSION_1_1)
  277. #endif /* EGL_VERSION_1_1 */
  278. /* ---------------------------- EGL_VERSION_1_2 ---------------------------- */
  279. #ifndef EGL_VERSION_1_2
  280. #define EGL_VERSION_1_2 1
  281. #define EGL_OPENGL_ES_BIT 0x0001
  282. #define EGL_OPENVG_BIT 0x0002
  283. #define EGL_LUMINANCE_SIZE 0x303D
  284. #define EGL_ALPHA_MASK_SIZE 0x303E
  285. #define EGL_COLOR_BUFFER_TYPE 0x303F
  286. #define EGL_RENDERABLE_TYPE 0x3040
  287. #define EGL_SINGLE_BUFFER 0x3085
  288. #define EGL_RENDER_BUFFER 0x3086
  289. #define EGL_COLORSPACE 0x3087
  290. #define EGL_ALPHA_FORMAT 0x3088
  291. #define EGL_COLORSPACE_LINEAR 0x308A
  292. #define EGL_ALPHA_FORMAT_NONPRE 0x308B
  293. #define EGL_ALPHA_FORMAT_PRE 0x308C
  294. #define EGL_CLIENT_APIS 0x308D
  295. #define EGL_RGB_BUFFER 0x308E
  296. #define EGL_LUMINANCE_BUFFER 0x308F
  297. #define EGL_HORIZONTAL_RESOLUTION 0x3090
  298. #define EGL_VERTICAL_RESOLUTION 0x3091
  299. #define EGL_PIXEL_ASPECT_RATIO 0x3092
  300. #define EGL_SWAP_BEHAVIOR 0x3093
  301. #define EGL_BUFFER_PRESERVED 0x3094
  302. #define EGL_BUFFER_DESTROYED 0x3095
  303. #define EGL_OPENVG_IMAGE 0x3096
  304. #define EGL_CONTEXT_CLIENT_TYPE 0x3097
  305. #define EGL_OPENGL_ES_API 0x30A0
  306. #define EGL_OPENVG_API 0x30A1
  307. #define EGL_DISPLAY_SCALING 10000
  308. typedef EGLBoolean ( * PFNEGLBINDAPIPROC) (EGLenum api);
  309. typedef EGLSurface ( * PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC) (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint * attrib_list);
  310. typedef EGLenum ( * PFNEGLQUERYAPIPROC) ( void );
  311. typedef EGLBoolean ( * PFNEGLRELEASETHREADPROC) ( void );
  312. typedef EGLBoolean ( * PFNEGLWAITCLIENTPROC) ( void );
  313. #define eglBindAPI EGLEW_GET_FUN(__eglewBindAPI)
  314. #define eglCreatePbufferFromClientBuffer EGLEW_GET_FUN(__eglewCreatePbufferFromClientBuffer)
  315. #define eglQueryAPI EGLEW_GET_FUN(__eglewQueryAPI)
  316. #define eglReleaseThread EGLEW_GET_FUN(__eglewReleaseThread)
  317. #define eglWaitClient EGLEW_GET_FUN(__eglewWaitClient)
  318. #define EGLEW_VERSION_1_2 EGLEW_GET_VAR(__EGLEW_VERSION_1_2)
  319. #endif /* EGL_VERSION_1_2 */
  320. /* ---------------------------- EGL_VERSION_1_3 ---------------------------- */
  321. #ifndef EGL_VERSION_1_3
  322. #define EGL_VERSION_1_3 1
  323. #define EGL_OPENGL_ES2_BIT 0x0004
  324. #define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020
  325. #define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040
  326. #define EGL_MATCH_NATIVE_PIXMAP 0x3041
  327. #define EGL_CONFORMANT 0x3042
  328. #define EGL_VG_COLORSPACE 0x3087
  329. #define EGL_VG_ALPHA_FORMAT 0x3088
  330. #define EGL_VG_COLORSPACE_LINEAR 0x308A
  331. #define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B
  332. #define EGL_VG_ALPHA_FORMAT_PRE 0x308C
  333. #define EGL_CONTEXT_CLIENT_VERSION 0x3098
  334. #define EGLEW_VERSION_1_3 EGLEW_GET_VAR(__EGLEW_VERSION_1_3)
  335. #endif /* EGL_VERSION_1_3 */
  336. /* ---------------------------- EGL_VERSION_1_4 ---------------------------- */
  337. #ifndef EGL_VERSION_1_4
  338. #define EGL_VERSION_1_4 1
  339. #define EGL_OPENGL_BIT 0x0008
  340. #define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200
  341. #define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400
  342. #define EGL_MULTISAMPLE_RESOLVE 0x3099
  343. #define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A
  344. #define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B
  345. #define EGL_OPENGL_API 0x30A2
  346. typedef EGLContext ( * PFNEGLGETCURRENTCONTEXTPROC) ( void );
  347. #define eglGetCurrentContext EGLEW_GET_FUN(__eglewGetCurrentContext)
  348. #define EGLEW_VERSION_1_4 EGLEW_GET_VAR(__EGLEW_VERSION_1_4)
  349. #endif /* EGL_VERSION_1_4 */
  350. /* ---------------------------- EGL_VERSION_1_5 ---------------------------- */
  351. #ifndef EGL_VERSION_1_5
  352. #define EGL_VERSION_1_5 1
  353. #define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT 0x00000001
  354. #define EGL_SYNC_FLUSH_COMMANDS_BIT 0x0001
  355. #define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT 0x00000002
  356. #define EGL_OPENGL_ES3_BIT 0x00000040
  357. #define EGL_GL_COLORSPACE_SRGB 0x3089
  358. #define EGL_GL_COLORSPACE_LINEAR 0x308A
  359. #define EGL_CONTEXT_MAJOR_VERSION 0x3098
  360. #define EGL_CL_EVENT_HANDLE 0x309C
  361. #define EGL_GL_COLORSPACE 0x309D
  362. #define EGL_GL_TEXTURE_2D 0x30B1
  363. #define EGL_GL_TEXTURE_3D 0x30B2
  364. #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x30B3
  365. #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x30B4
  366. #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x30B5
  367. #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x30B6
  368. #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x30B7
  369. #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x30B8
  370. #define EGL_GL_RENDERBUFFER 0x30B9
  371. #define EGL_GL_TEXTURE_LEVEL 0x30BC
  372. #define EGL_GL_TEXTURE_ZOFFSET 0x30BD
  373. #define EGL_IMAGE_PRESERVED 0x30D2
  374. #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE 0x30F0
  375. #define EGL_SYNC_STATUS 0x30F1
  376. #define EGL_SIGNALED 0x30F2
  377. #define EGL_UNSIGNALED 0x30F3
  378. #define EGL_TIMEOUT_EXPIRED 0x30F5
  379. #define EGL_CONDITION_SATISFIED 0x30F6
  380. #define EGL_SYNC_TYPE 0x30F7
  381. #define EGL_SYNC_CONDITION 0x30F8
  382. #define EGL_SYNC_FENCE 0x30F9
  383. #define EGL_CONTEXT_MINOR_VERSION 0x30FB
  384. #define EGL_CONTEXT_OPENGL_PROFILE_MASK 0x30FD
  385. #define EGL_SYNC_CL_EVENT 0x30FE
  386. #define EGL_SYNC_CL_EVENT_COMPLETE 0x30FF
  387. #define EGL_CONTEXT_OPENGL_DEBUG 0x31B0
  388. #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1
  389. #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2
  390. #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD
  391. #define EGL_NO_RESET_NOTIFICATION 0x31BE
  392. #define EGL_LOSE_CONTEXT_ON_RESET 0x31BF
  393. #define EGL_FOREVER 0xFFFFFFFFFFFFFFFF
  394. typedef EGLint ( * PFNEGLCLIENTWAITSYNCPROC) (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout);
  395. typedef EGLImage ( * PFNEGLCREATEIMAGEPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib * attrib_list);
  396. typedef EGLSurface ( * PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC) (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLAttrib * attrib_list);
  397. typedef EGLSurface ( * PFNEGLCREATEPLATFORMWINDOWSURFACEPROC) (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLAttrib * attrib_list);
  398. typedef EGLSync ( * PFNEGLCREATESYNCPROC) (EGLDisplay dpy, EGLenum type, const EGLAttrib * attrib_list);
  399. typedef EGLBoolean ( * PFNEGLDESTROYIMAGEPROC) (EGLDisplay dpy, EGLImage image);
  400. typedef EGLBoolean ( * PFNEGLDESTROYSYNCPROC) (EGLDisplay dpy, EGLSync sync);
  401. typedef EGLDisplay ( * PFNEGLGETPLATFORMDISPLAYPROC) (EGLenum platform, void * native_display, const EGLAttrib * attrib_list);
  402. typedef EGLBoolean ( * PFNEGLGETSYNCATTRIBPROC) (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib * value);
  403. typedef EGLBoolean ( * PFNEGLWAITSYNCPROC) (EGLDisplay dpy, EGLSync sync, EGLint flags);
  404. #define eglClientWaitSync EGLEW_GET_FUN(__eglewClientWaitSync)
  405. #define eglCreateImage EGLEW_GET_FUN(__eglewCreateImage)
  406. #define eglCreatePlatformPixmapSurface EGLEW_GET_FUN(__eglewCreatePlatformPixmapSurface)
  407. #define eglCreatePlatformWindowSurface EGLEW_GET_FUN(__eglewCreatePlatformWindowSurface)
  408. #define eglCreateSync EGLEW_GET_FUN(__eglewCreateSync)
  409. #define eglDestroyImage EGLEW_GET_FUN(__eglewDestroyImage)
  410. #define eglDestroySync EGLEW_GET_FUN(__eglewDestroySync)
  411. #define eglGetPlatformDisplay EGLEW_GET_FUN(__eglewGetPlatformDisplay)
  412. #define eglGetSyncAttrib EGLEW_GET_FUN(__eglewGetSyncAttrib)
  413. #define eglWaitSync EGLEW_GET_FUN(__eglewWaitSync)
  414. #define EGLEW_VERSION_1_5 EGLEW_GET_VAR(__EGLEW_VERSION_1_5)
  415. #endif /* EGL_VERSION_1_5 */
  416. /* ------------------------- EGL_ANDROID_blob_cache ------------------------ */
  417. #ifndef EGL_ANDROID_blob_cache
  418. #define EGL_ANDROID_blob_cache 1
  419. typedef void ( * PFNEGLSETBLOBCACHEFUNCSANDROIDPROC) (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get);
  420. #define eglSetBlobCacheFuncsANDROID EGLEW_GET_FUN(__eglewSetBlobCacheFuncsANDROID)
  421. #define EGLEW_ANDROID_blob_cache EGLEW_GET_VAR(__EGLEW_ANDROID_blob_cache)
  422. #endif /* EGL_ANDROID_blob_cache */
  423. /* ---------------- EGL_ANDROID_create_native_client_buffer ---------------- */
  424. #ifndef EGL_ANDROID_create_native_client_buffer
  425. #define EGL_ANDROID_create_native_client_buffer 1
  426. #define EGL_NATIVE_BUFFER_USAGE_PROTECTED_BIT_ANDROID 0x00000001
  427. #define EGL_NATIVE_BUFFER_USAGE_RENDERBUFFER_BIT_ANDROID 0x00000002
  428. #define EGL_NATIVE_BUFFER_USAGE_TEXTURE_BIT_ANDROID 0x00000004
  429. #define EGL_NATIVE_BUFFER_USAGE_ANDROID 0x3143
  430. typedef EGLClientBuffer ( * PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC) (const EGLint * attrib_list);
  431. #define eglCreateNativeClientBufferANDROID EGLEW_GET_FUN(__eglewCreateNativeClientBufferANDROID)
  432. #define EGLEW_ANDROID_create_native_client_buffer EGLEW_GET_VAR(__EGLEW_ANDROID_create_native_client_buffer)
  433. #endif /* EGL_ANDROID_create_native_client_buffer */
  434. /* --------------------- EGL_ANDROID_framebuffer_target -------------------- */
  435. #ifndef EGL_ANDROID_framebuffer_target
  436. #define EGL_ANDROID_framebuffer_target 1
  437. #define EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147
  438. #define EGLEW_ANDROID_framebuffer_target EGLEW_GET_VAR(__EGLEW_ANDROID_framebuffer_target)
  439. #endif /* EGL_ANDROID_framebuffer_target */
  440. /* ----------------- EGL_ANDROID_front_buffer_auto_refresh ----------------- */
  441. #ifndef EGL_ANDROID_front_buffer_auto_refresh
  442. #define EGL_ANDROID_front_buffer_auto_refresh 1
  443. #define EGL_FRONT_BUFFER_AUTO_REFRESH_ANDROID 0x314C
  444. #define EGLEW_ANDROID_front_buffer_auto_refresh EGLEW_GET_VAR(__EGLEW_ANDROID_front_buffer_auto_refresh)
  445. #endif /* EGL_ANDROID_front_buffer_auto_refresh */
  446. /* -------------------- EGL_ANDROID_image_native_buffer -------------------- */
  447. #ifndef EGL_ANDROID_image_native_buffer
  448. #define EGL_ANDROID_image_native_buffer 1
  449. #define EGL_NATIVE_BUFFER_ANDROID 0x3140
  450. #define EGLEW_ANDROID_image_native_buffer EGLEW_GET_VAR(__EGLEW_ANDROID_image_native_buffer)
  451. #endif /* EGL_ANDROID_image_native_buffer */
  452. /* --------------------- EGL_ANDROID_native_fence_sync --------------------- */
  453. #ifndef EGL_ANDROID_native_fence_sync
  454. #define EGL_ANDROID_native_fence_sync 1
  455. #define EGL_SYNC_NATIVE_FENCE_ANDROID 0x3144
  456. #define EGL_SYNC_NATIVE_FENCE_FD_ANDROID 0x3145
  457. #define EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID 0x3146
  458. typedef EGLint ( * PFNEGLDUPNATIVEFENCEFDANDROIDPROC) (EGLDisplay dpy, EGLSyncKHR sync);
  459. #define eglDupNativeFenceFDANDROID EGLEW_GET_FUN(__eglewDupNativeFenceFDANDROID)
  460. #define EGLEW_ANDROID_native_fence_sync EGLEW_GET_VAR(__EGLEW_ANDROID_native_fence_sync)
  461. #endif /* EGL_ANDROID_native_fence_sync */
  462. /* --------------------- EGL_ANDROID_presentation_time --------------------- */
  463. #ifndef EGL_ANDROID_presentation_time
  464. #define EGL_ANDROID_presentation_time 1
  465. typedef EGLBoolean ( * PFNEGLPRESENTATIONTIMEANDROIDPROC) (EGLDisplay dpy, EGLSurface surface, EGLnsecsANDROID time);
  466. #define eglPresentationTimeANDROID EGLEW_GET_FUN(__eglewPresentationTimeANDROID)
  467. #define EGLEW_ANDROID_presentation_time EGLEW_GET_VAR(__EGLEW_ANDROID_presentation_time)
  468. #endif /* EGL_ANDROID_presentation_time */
  469. /* ------------------------- EGL_ANDROID_recordable ------------------------ */
  470. #ifndef EGL_ANDROID_recordable
  471. #define EGL_ANDROID_recordable 1
  472. #define EGL_RECORDABLE_ANDROID 0x3142
  473. #define EGLEW_ANDROID_recordable EGLEW_GET_VAR(__EGLEW_ANDROID_recordable)
  474. #endif /* EGL_ANDROID_recordable */
  475. /* ---------------- EGL_ANGLE_d3d_share_handle_client_buffer --------------- */
  476. #ifndef EGL_ANGLE_d3d_share_handle_client_buffer
  477. #define EGL_ANGLE_d3d_share_handle_client_buffer 1
  478. #define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200
  479. #define EGLEW_ANGLE_d3d_share_handle_client_buffer EGLEW_GET_VAR(__EGLEW_ANGLE_d3d_share_handle_client_buffer)
  480. #endif /* EGL_ANGLE_d3d_share_handle_client_buffer */
  481. /* -------------------------- EGL_ANGLE_device_d3d ------------------------- */
  482. #ifndef EGL_ANGLE_device_d3d
  483. #define EGL_ANGLE_device_d3d 1
  484. #define EGL_D3D9_DEVICE_ANGLE 0x33A0
  485. #define EGL_D3D11_DEVICE_ANGLE 0x33A1
  486. #define EGLEW_ANGLE_device_d3d EGLEW_GET_VAR(__EGLEW_ANGLE_device_d3d)
  487. #endif /* EGL_ANGLE_device_d3d */
  488. /* -------------------- EGL_ANGLE_query_surface_pointer -------------------- */
  489. #ifndef EGL_ANGLE_query_surface_pointer
  490. #define EGL_ANGLE_query_surface_pointer 1
  491. typedef EGLBoolean ( * PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void ** value);
  492. #define eglQuerySurfacePointerANGLE EGLEW_GET_FUN(__eglewQuerySurfacePointerANGLE)
  493. #define EGLEW_ANGLE_query_surface_pointer EGLEW_GET_VAR(__EGLEW_ANGLE_query_surface_pointer)
  494. #endif /* EGL_ANGLE_query_surface_pointer */
  495. /* ------------- EGL_ANGLE_surface_d3d_texture_2d_share_handle ------------- */
  496. #ifndef EGL_ANGLE_surface_d3d_texture_2d_share_handle
  497. #define EGL_ANGLE_surface_d3d_texture_2d_share_handle 1
  498. #define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200
  499. #define EGLEW_ANGLE_surface_d3d_texture_2d_share_handle EGLEW_GET_VAR(__EGLEW_ANGLE_surface_d3d_texture_2d_share_handle)
  500. #endif /* EGL_ANGLE_surface_d3d_texture_2d_share_handle */
  501. /* ---------------------- EGL_ANGLE_window_fixed_size ---------------------- */
  502. #ifndef EGL_ANGLE_window_fixed_size
  503. #define EGL_ANGLE_window_fixed_size 1
  504. #define EGL_FIXED_SIZE_ANGLE 0x3201
  505. #define EGLEW_ANGLE_window_fixed_size EGLEW_GET_VAR(__EGLEW_ANGLE_window_fixed_size)
  506. #endif /* EGL_ANGLE_window_fixed_size */
  507. /* --------------------- EGL_ARM_implicit_external_sync -------------------- */
  508. #ifndef EGL_ARM_implicit_external_sync
  509. #define EGL_ARM_implicit_external_sync 1
  510. #define EGL_SYNC_PRIOR_COMMANDS_IMPLICIT_EXTERNAL_ARM 0x328A
  511. #define EGLEW_ARM_implicit_external_sync EGLEW_GET_VAR(__EGLEW_ARM_implicit_external_sync)
  512. #endif /* EGL_ARM_implicit_external_sync */
  513. /* ------------------- EGL_ARM_pixmap_multisample_discard ------------------ */
  514. #ifndef EGL_ARM_pixmap_multisample_discard
  515. #define EGL_ARM_pixmap_multisample_discard 1
  516. #define EGL_DISCARD_SAMPLES_ARM 0x3286
  517. #define EGLEW_ARM_pixmap_multisample_discard EGLEW_GET_VAR(__EGLEW_ARM_pixmap_multisample_discard)
  518. #endif /* EGL_ARM_pixmap_multisample_discard */
  519. /* --------------------------- EGL_EXT_buffer_age -------------------------- */
  520. #ifndef EGL_EXT_buffer_age
  521. #define EGL_EXT_buffer_age 1
  522. #define EGL_BUFFER_AGE_EXT 0x313D
  523. #define EGLEW_EXT_buffer_age EGLEW_GET_VAR(__EGLEW_EXT_buffer_age)
  524. #endif /* EGL_EXT_buffer_age */
  525. /* ----------------------- EGL_EXT_client_extensions ----------------------- */
  526. #ifndef EGL_EXT_client_extensions
  527. #define EGL_EXT_client_extensions 1
  528. #define EGLEW_EXT_client_extensions EGLEW_GET_VAR(__EGLEW_EXT_client_extensions)
  529. #endif /* EGL_EXT_client_extensions */
  530. /* ------------------- EGL_EXT_create_context_robustness ------------------- */
  531. #ifndef EGL_EXT_create_context_robustness
  532. #define EGL_EXT_create_context_robustness 1
  533. #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF
  534. #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT 0x3138
  535. #define EGL_NO_RESET_NOTIFICATION_EXT 0x31BE
  536. #define EGL_LOSE_CONTEXT_ON_RESET_EXT 0x31BF
  537. #define EGLEW_EXT_create_context_robustness EGLEW_GET_VAR(__EGLEW_EXT_create_context_robustness)
  538. #endif /* EGL_EXT_create_context_robustness */
  539. /* -------------------------- EGL_EXT_device_base -------------------------- */
  540. #ifndef EGL_EXT_device_base
  541. #define EGL_EXT_device_base 1
  542. #define EGL_BAD_DEVICE_EXT 0x322B
  543. #define EGL_DEVICE_EXT 0x322C
  544. #define EGLEW_EXT_device_base EGLEW_GET_VAR(__EGLEW_EXT_device_base)
  545. #endif /* EGL_EXT_device_base */
  546. /* --------------------------- EGL_EXT_device_drm -------------------------- */
  547. #ifndef EGL_EXT_device_drm
  548. #define EGL_EXT_device_drm 1
  549. #define EGL_DRM_DEVICE_FILE_EXT 0x3233
  550. #define EGLEW_EXT_device_drm EGLEW_GET_VAR(__EGLEW_EXT_device_drm)
  551. #endif /* EGL_EXT_device_drm */
  552. /* ----------------------- EGL_EXT_device_enumeration ---------------------- */
  553. #ifndef EGL_EXT_device_enumeration
  554. #define EGL_EXT_device_enumeration 1
  555. typedef EGLBoolean ( * PFNEGLQUERYDEVICESEXTPROC) (EGLint max_devices, EGLDeviceEXT * devices, EGLint * num_devices);
  556. #define eglQueryDevicesEXT EGLEW_GET_FUN(__eglewQueryDevicesEXT)
  557. #define EGLEW_EXT_device_enumeration EGLEW_GET_VAR(__EGLEW_EXT_device_enumeration)
  558. #endif /* EGL_EXT_device_enumeration */
  559. /* ------------------------- EGL_EXT_device_openwf ------------------------- */
  560. #ifndef EGL_EXT_device_openwf
  561. #define EGL_EXT_device_openwf 1
  562. #define EGL_OPENWF_DEVICE_ID_EXT 0x3237
  563. #define EGLEW_EXT_device_openwf EGLEW_GET_VAR(__EGLEW_EXT_device_openwf)
  564. #endif /* EGL_EXT_device_openwf */
  565. /* -------------------------- EGL_EXT_device_query ------------------------- */
  566. #ifndef EGL_EXT_device_query
  567. #define EGL_EXT_device_query 1
  568. #define EGL_BAD_DEVICE_EXT 0x322B
  569. #define EGL_DEVICE_EXT 0x322C
  570. typedef EGLBoolean ( * PFNEGLQUERYDEVICEATTRIBEXTPROC) (EGLDeviceEXT device, EGLint attribute, EGLAttrib * value);
  571. typedef const char * ( * PFNEGLQUERYDEVICESTRINGEXTPROC) (EGLDeviceEXT device, EGLint name);
  572. typedef EGLBoolean ( * PFNEGLQUERYDISPLAYATTRIBEXTPROC) (EGLDisplay dpy, EGLint attribute, EGLAttrib * value);
  573. #define eglQueryDeviceAttribEXT EGLEW_GET_FUN(__eglewQueryDeviceAttribEXT)
  574. #define eglQueryDeviceStringEXT EGLEW_GET_FUN(__eglewQueryDeviceStringEXT)
  575. #define eglQueryDisplayAttribEXT EGLEW_GET_FUN(__eglewQueryDisplayAttribEXT)
  576. #define EGLEW_EXT_device_query EGLEW_GET_VAR(__EGLEW_EXT_device_query)
  577. #endif /* EGL_EXT_device_query */
  578. /* ------------------ EGL_EXT_gl_colorspace_bt2020_linear ------------------ */
  579. #ifndef EGL_EXT_gl_colorspace_bt2020_linear
  580. #define EGL_EXT_gl_colorspace_bt2020_linear 1
  581. #define EGL_GL_COLORSPACE_BT2020_LINEAR_EXT 0x333F
  582. #define EGLEW_EXT_gl_colorspace_bt2020_linear EGLEW_GET_VAR(__EGLEW_EXT_gl_colorspace_bt2020_linear)
  583. #endif /* EGL_EXT_gl_colorspace_bt2020_linear */
  584. /* -------------------- EGL_EXT_gl_colorspace_bt2020_pq -------------------- */
  585. #ifndef EGL_EXT_gl_colorspace_bt2020_pq
  586. #define EGL_EXT_gl_colorspace_bt2020_pq 1
  587. #define EGL_GL_COLORSPACE_BT2020_PQ_EXT 0x3340
  588. #define EGLEW_EXT_gl_colorspace_bt2020_pq EGLEW_GET_VAR(__EGLEW_EXT_gl_colorspace_bt2020_pq)
  589. #endif /* EGL_EXT_gl_colorspace_bt2020_pq */
  590. /* ------------------- EGL_EXT_gl_colorspace_scrgb_linear ------------------ */
  591. #ifndef EGL_EXT_gl_colorspace_scrgb_linear
  592. #define EGL_EXT_gl_colorspace_scrgb_linear 1
  593. #define EGL_GL_COLORSPACE_SCRGB_LINEAR_EXT 0x3350
  594. #define EGLEW_EXT_gl_colorspace_scrgb_linear EGLEW_GET_VAR(__EGLEW_EXT_gl_colorspace_scrgb_linear)
  595. #endif /* EGL_EXT_gl_colorspace_scrgb_linear */
  596. /* ---------------------- EGL_EXT_image_dma_buf_import --------------------- */
  597. #ifndef EGL_EXT_image_dma_buf_import
  598. #define EGL_EXT_image_dma_buf_import 1
  599. #define EGL_LINUX_DMA_BUF_EXT 0x3270
  600. #define EGL_LINUX_DRM_FOURCC_EXT 0x3271
  601. #define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272
  602. #define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273
  603. #define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274
  604. #define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275
  605. #define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276
  606. #define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277
  607. #define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278
  608. #define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279
  609. #define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A
  610. #define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B
  611. #define EGL_SAMPLE_RANGE_HINT_EXT 0x327C
  612. #define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D
  613. #define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E
  614. #define EGL_ITU_REC601_EXT 0x327F
  615. #define EGL_ITU_REC709_EXT 0x3280
  616. #define EGL_ITU_REC2020_EXT 0x3281
  617. #define EGL_YUV_FULL_RANGE_EXT 0x3282
  618. #define EGL_YUV_NARROW_RANGE_EXT 0x3283
  619. #define EGL_YUV_CHROMA_SITING_0_EXT 0x3284
  620. #define EGL_YUV_CHROMA_SITING_0_5_EXT 0x3285
  621. #define EGLEW_EXT_image_dma_buf_import EGLEW_GET_VAR(__EGLEW_EXT_image_dma_buf_import)
  622. #endif /* EGL_EXT_image_dma_buf_import */
  623. /* ----------------- EGL_EXT_image_dma_buf_import_modifiers ---------------- */
  624. #ifndef EGL_EXT_image_dma_buf_import_modifiers
  625. #define EGL_EXT_image_dma_buf_import_modifiers 1
  626. #define EGL_DMA_BUF_PLANE3_FD_EXT 0x3440
  627. #define EGL_DMA_BUF_PLANE3_OFFSET_EXT 0x3441
  628. #define EGL_DMA_BUF_PLANE3_PITCH_EXT 0x3442
  629. #define EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT 0x3443
  630. #define EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT 0x3444
  631. #define EGL_DMA_BUF_PLANE1_MODIFIER_LO_EXT 0x3445
  632. #define EGL_DMA_BUF_PLANE1_MODIFIER_HI_EXT 0x3446
  633. #define EGL_DMA_BUF_PLANE2_MODIFIER_LO_EXT 0x3447
  634. #define EGL_DMA_BUF_PLANE2_MODIFIER_HI_EXT 0x3448
  635. #define EGL_DMA_BUF_PLANE3_MODIFIER_LO_EXT 0x3449
  636. #define EGL_DMA_BUF_PLANE3_MODIFIER_HI_EXT 0x344A
  637. typedef EGLBoolean ( * PFNEGLQUERYDMABUFFORMATSEXTPROC) (EGLDisplay dpy, EGLint max_formats, EGLint *formats, EGLint *num_formats);
  638. typedef EGLBoolean ( * PFNEGLQUERYDMABUFMODIFIERSEXTPROC) (EGLDisplay dpy, EGLint format, EGLint max_modifiers, EGLuint64KHR *modifiers, EGLBoolean *external_only, EGLint *num_modifiers);
  639. #define eglQueryDmaBufFormatsEXT EGLEW_GET_FUN(__eglewQueryDmaBufFormatsEXT)
  640. #define eglQueryDmaBufModifiersEXT EGLEW_GET_FUN(__eglewQueryDmaBufModifiersEXT)
  641. #define EGLEW_EXT_image_dma_buf_import_modifiers EGLEW_GET_VAR(__EGLEW_EXT_image_dma_buf_import_modifiers)
  642. #endif /* EGL_EXT_image_dma_buf_import_modifiers */
  643. /* ------------------------ EGL_EXT_multiview_window ----------------------- */
  644. #ifndef EGL_EXT_multiview_window
  645. #define EGL_EXT_multiview_window 1
  646. #define EGL_MULTIVIEW_VIEW_COUNT_EXT 0x3134
  647. #define EGLEW_EXT_multiview_window EGLEW_GET_VAR(__EGLEW_EXT_multiview_window)
  648. #endif /* EGL_EXT_multiview_window */
  649. /* -------------------------- EGL_EXT_output_base -------------------------- */
  650. #ifndef EGL_EXT_output_base
  651. #define EGL_EXT_output_base 1
  652. #define EGL_BAD_OUTPUT_LAYER_EXT 0x322D
  653. #define EGL_BAD_OUTPUT_PORT_EXT 0x322E
  654. #define EGL_SWAP_INTERVAL_EXT 0x322F
  655. typedef EGLBoolean ( * PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDisplay dpy, const EGLAttrib * attrib_list, EGLOutputLayerEXT * layers, EGLint max_layers, EGLint * num_layers);
  656. typedef EGLBoolean ( * PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDisplay dpy, const EGLAttrib * attrib_list, EGLOutputPortEXT * ports, EGLint max_ports, EGLint * num_ports);
  657. typedef EGLBoolean ( * PFNEGLOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value);
  658. typedef EGLBoolean ( * PFNEGLOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value);
  659. typedef EGLBoolean ( * PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib * value);
  660. typedef const char * ( * PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name);
  661. typedef EGLBoolean ( * PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib * value);
  662. typedef const char * ( * PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name);
  663. #define eglGetOutputLayersEXT EGLEW_GET_FUN(__eglewGetOutputLayersEXT)
  664. #define eglGetOutputPortsEXT EGLEW_GET_FUN(__eglewGetOutputPortsEXT)
  665. #define eglOutputLayerAttribEXT EGLEW_GET_FUN(__eglewOutputLayerAttribEXT)
  666. #define eglOutputPortAttribEXT EGLEW_GET_FUN(__eglewOutputPortAttribEXT)
  667. #define eglQueryOutputLayerAttribEXT EGLEW_GET_FUN(__eglewQueryOutputLayerAttribEXT)
  668. #define eglQueryOutputLayerStringEXT EGLEW_GET_FUN(__eglewQueryOutputLayerStringEXT)
  669. #define eglQueryOutputPortAttribEXT EGLEW_GET_FUN(__eglewQueryOutputPortAttribEXT)
  670. #define eglQueryOutputPortStringEXT EGLEW_GET_FUN(__eglewQueryOutputPortStringEXT)
  671. #define EGLEW_EXT_output_base EGLEW_GET_VAR(__EGLEW_EXT_output_base)
  672. #endif /* EGL_EXT_output_base */
  673. /* --------------------------- EGL_EXT_output_drm -------------------------- */
  674. #ifndef EGL_EXT_output_drm
  675. #define EGL_EXT_output_drm 1
  676. #define EGL_DRM_CRTC_EXT 0x3234
  677. #define EGL_DRM_PLANE_EXT 0x3235
  678. #define EGL_DRM_CONNECTOR_EXT 0x3236
  679. #define EGLEW_EXT_output_drm EGLEW_GET_VAR(__EGLEW_EXT_output_drm)
  680. #endif /* EGL_EXT_output_drm */
  681. /* ------------------------- EGL_EXT_output_openwf ------------------------- */
  682. #ifndef EGL_EXT_output_openwf
  683. #define EGL_EXT_output_openwf 1
  684. #define EGL_OPENWF_PIPELINE_ID_EXT 0x3238
  685. #define EGL_OPENWF_PORT_ID_EXT 0x3239
  686. #define EGLEW_EXT_output_openwf EGLEW_GET_VAR(__EGLEW_EXT_output_openwf)
  687. #endif /* EGL_EXT_output_openwf */
  688. /* ----------------------- EGL_EXT_pixel_format_float ---------------------- */
  689. #ifndef EGL_EXT_pixel_format_float
  690. #define EGL_EXT_pixel_format_float 1
  691. #define EGL_COLOR_COMPONENT_TYPE_EXT 0x3339
  692. #define EGL_COLOR_COMPONENT_TYPE_FIXED_EXT 0x333A
  693. #define EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT 0x333B
  694. #define EGLEW_EXT_pixel_format_float EGLEW_GET_VAR(__EGLEW_EXT_pixel_format_float)
  695. #endif /* EGL_EXT_pixel_format_float */
  696. /* ------------------------- EGL_EXT_platform_base ------------------------- */
  697. #ifndef EGL_EXT_platform_base
  698. #define EGL_EXT_platform_base 1
  699. typedef EGLSurface ( * PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLint * attrib_list);
  700. typedef EGLSurface ( * PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLint * attrib_list);
  701. typedef EGLDisplay ( * PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLenum platform, void * native_display, const EGLint * attrib_list);
  702. #define eglCreatePlatformPixmapSurfaceEXT EGLEW_GET_FUN(__eglewCreatePlatformPixmapSurfaceEXT)
  703. #define eglCreatePlatformWindowSurfaceEXT EGLEW_GET_FUN(__eglewCreatePlatformWindowSurfaceEXT)
  704. #define eglGetPlatformDisplayEXT EGLEW_GET_FUN(__eglewGetPlatformDisplayEXT)
  705. #define EGLEW_EXT_platform_base EGLEW_GET_VAR(__EGLEW_EXT_platform_base)
  706. #endif /* EGL_EXT_platform_base */
  707. /* ------------------------ EGL_EXT_platform_device ------------------------ */
  708. #ifndef EGL_EXT_platform_device
  709. #define EGL_EXT_platform_device 1
  710. #define EGL_PLATFORM_DEVICE_EXT 0x313F
  711. #define EGLEW_EXT_platform_device EGLEW_GET_VAR(__EGLEW_EXT_platform_device)
  712. #endif /* EGL_EXT_platform_device */
  713. /* ------------------------ EGL_EXT_platform_wayland ----------------------- */
  714. #ifndef EGL_EXT_platform_wayland
  715. #define EGL_EXT_platform_wayland 1
  716. #define EGL_PLATFORM_WAYLAND_EXT 0x31D8
  717. #define EGLEW_EXT_platform_wayland EGLEW_GET_VAR(__EGLEW_EXT_platform_wayland)
  718. #endif /* EGL_EXT_platform_wayland */
  719. /* -------------------------- EGL_EXT_platform_x11 ------------------------- */
  720. #ifndef EGL_EXT_platform_x11
  721. #define EGL_EXT_platform_x11 1
  722. #define EGL_PLATFORM_X11_EXT 0x31D5
  723. #define EGL_PLATFORM_X11_SCREEN_EXT 0x31D6
  724. #define EGLEW_EXT_platform_x11 EGLEW_GET_VAR(__EGLEW_EXT_platform_x11)
  725. #endif /* EGL_EXT_platform_x11 */
  726. /* ----------------------- EGL_EXT_protected_content ----------------------- */
  727. #ifndef EGL_EXT_protected_content
  728. #define EGL_EXT_protected_content 1
  729. #define EGL_PROTECTED_CONTENT_EXT 0x32C0
  730. #define EGLEW_EXT_protected_content EGLEW_GET_VAR(__EGLEW_EXT_protected_content)
  731. #endif /* EGL_EXT_protected_content */
  732. /* ----------------------- EGL_EXT_protected_surface ----------------------- */
  733. #ifndef EGL_EXT_protected_surface
  734. #define EGL_EXT_protected_surface 1
  735. #define EGL_PROTECTED_CONTENT_EXT 0x32C0
  736. #define EGLEW_EXT_protected_surface EGLEW_GET_VAR(__EGLEW_EXT_protected_surface)
  737. #endif /* EGL_EXT_protected_surface */
  738. /* ------------------- EGL_EXT_stream_consumer_egloutput ------------------- */
  739. #ifndef EGL_EXT_stream_consumer_egloutput
  740. #define EGL_EXT_stream_consumer_egloutput 1
  741. typedef EGLBoolean ( * PFNEGLSTREAMCONSUMEROUTPUTEXTPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer);
  742. #define eglStreamConsumerOutputEXT EGLEW_GET_FUN(__eglewStreamConsumerOutputEXT)
  743. #define EGLEW_EXT_stream_consumer_egloutput EGLEW_GET_VAR(__EGLEW_EXT_stream_consumer_egloutput)
  744. #endif /* EGL_EXT_stream_consumer_egloutput */
  745. /* ------------------- EGL_EXT_surface_SMPTE2086_metadata ------------------ */
  746. #ifndef EGL_EXT_surface_SMPTE2086_metadata
  747. #define EGL_EXT_surface_SMPTE2086_metadata 1
  748. #define EGL_SMPTE2086_DISPLAY_PRIMARY_RX_EXT 0x3341
  749. #define EGL_SMPTE2086_DISPLAY_PRIMARY_RY_EXT 0x3342
  750. #define EGL_SMPTE2086_DISPLAY_PRIMARY_GX_EXT 0x3343
  751. #define EGL_SMPTE2086_DISPLAY_PRIMARY_GY_EXT 0x3344
  752. #define EGL_SMPTE2086_DISPLAY_PRIMARY_BX_EXT 0x3345
  753. #define EGL_SMPTE2086_DISPLAY_PRIMARY_BY_EXT 0x3346
  754. #define EGL_SMPTE2086_WHITE_POINT_X_EXT 0x3347
  755. #define EGL_SMPTE2086_WHITE_POINT_Y_EXT 0x3348
  756. #define EGL_SMPTE2086_MAX_LUMINANCE_EXT 0x3349
  757. #define EGL_SMPTE2086_MIN_LUMINANCE_EXT 0x334A
  758. #define EGLEW_EXT_surface_SMPTE2086_metadata EGLEW_GET_VAR(__EGLEW_EXT_surface_SMPTE2086_metadata)
  759. #endif /* EGL_EXT_surface_SMPTE2086_metadata */
  760. /* -------------------- EGL_EXT_swap_buffers_with_damage ------------------- */
  761. #ifndef EGL_EXT_swap_buffers_with_damage
  762. #define EGL_EXT_swap_buffers_with_damage 1
  763. typedef EGLBoolean ( * PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC) (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects);
  764. #define eglSwapBuffersWithDamageEXT EGLEW_GET_FUN(__eglewSwapBuffersWithDamageEXT)
  765. #define EGLEW_EXT_swap_buffers_with_damage EGLEW_GET_VAR(__EGLEW_EXT_swap_buffers_with_damage)
  766. #endif /* EGL_EXT_swap_buffers_with_damage */
  767. /* -------------------------- EGL_EXT_yuv_surface -------------------------- */
  768. #ifndef EGL_EXT_yuv_surface
  769. #define EGL_EXT_yuv_surface 1
  770. #define EGL_YUV_BUFFER_EXT 0x3300
  771. #define EGL_YUV_ORDER_EXT 0x3301
  772. #define EGL_YUV_ORDER_YUV_EXT 0x3302
  773. #define EGL_YUV_ORDER_YVU_EXT 0x3303
  774. #define EGL_YUV_ORDER_YUYV_EXT 0x3304
  775. #define EGL_YUV_ORDER_UYVY_EXT 0x3305
  776. #define EGL_YUV_ORDER_YVYU_EXT 0x3306
  777. #define EGL_YUV_ORDER_VYUY_EXT 0x3307
  778. #define EGL_YUV_ORDER_AYUV_EXT 0x3308
  779. #define EGL_YUV_CSC_STANDARD_EXT 0x330A
  780. #define EGL_YUV_CSC_STANDARD_601_EXT 0x330B
  781. #define EGL_YUV_CSC_STANDARD_709_EXT 0x330C
  782. #define EGL_YUV_CSC_STANDARD_2020_EXT 0x330D
  783. #define EGL_YUV_NUMBER_OF_PLANES_EXT 0x3311
  784. #define EGL_YUV_SUBSAMPLE_EXT 0x3312
  785. #define EGL_YUV_SUBSAMPLE_4_2_0_EXT 0x3313
  786. #define EGL_YUV_SUBSAMPLE_4_2_2_EXT 0x3314
  787. #define EGL_YUV_SUBSAMPLE_4_4_4_EXT 0x3315
  788. #define EGL_YUV_DEPTH_RANGE_EXT 0x3317
  789. #define EGL_YUV_DEPTH_RANGE_LIMITED_EXT 0x3318
  790. #define EGL_YUV_DEPTH_RANGE_FULL_EXT 0x3319
  791. #define EGL_YUV_PLANE_BPP_EXT 0x331A
  792. #define EGL_YUV_PLANE_BPP_0_EXT 0x331B
  793. #define EGL_YUV_PLANE_BPP_8_EXT 0x331C
  794. #define EGL_YUV_PLANE_BPP_10_EXT 0x331D
  795. #define EGLEW_EXT_yuv_surface EGLEW_GET_VAR(__EGLEW_EXT_yuv_surface)
  796. #endif /* EGL_EXT_yuv_surface */
  797. /* -------------------------- EGL_HI_clientpixmap -------------------------- */
  798. #ifndef EGL_HI_clientpixmap
  799. #define EGL_HI_clientpixmap 1
  800. #define EGL_CLIENT_PIXMAP_POINTER_HI 0x8F74
  801. typedef EGLSurface ( * PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI * pixmap);
  802. #define eglCreatePixmapSurfaceHI EGLEW_GET_FUN(__eglewCreatePixmapSurfaceHI)
  803. #define EGLEW_HI_clientpixmap EGLEW_GET_VAR(__EGLEW_HI_clientpixmap)
  804. #endif /* EGL_HI_clientpixmap */
  805. /* -------------------------- EGL_HI_colorformats -------------------------- */
  806. #ifndef EGL_HI_colorformats
  807. #define EGL_HI_colorformats 1
  808. #define EGL_COLOR_FORMAT_HI 0x8F70
  809. #define EGL_COLOR_RGB_HI 0x8F71
  810. #define EGL_COLOR_RGBA_HI 0x8F72
  811. #define EGL_COLOR_ARGB_HI 0x8F73
  812. #define EGLEW_HI_colorformats EGLEW_GET_VAR(__EGLEW_HI_colorformats)
  813. #endif /* EGL_HI_colorformats */
  814. /* ------------------------ EGL_IMG_context_priority ----------------------- */
  815. #ifndef EGL_IMG_context_priority
  816. #define EGL_IMG_context_priority 1
  817. #define EGL_CONTEXT_PRIORITY_LEVEL_IMG 0x3100
  818. #define EGL_CONTEXT_PRIORITY_HIGH_IMG 0x3101
  819. #define EGL_CONTEXT_PRIORITY_MEDIUM_IMG 0x3102
  820. #define EGL_CONTEXT_PRIORITY_LOW_IMG 0x3103
  821. #define EGLEW_IMG_context_priority EGLEW_GET_VAR(__EGLEW_IMG_context_priority)
  822. #endif /* EGL_IMG_context_priority */
  823. /* ---------------------- EGL_IMG_image_plane_attribs ---------------------- */
  824. #ifndef EGL_IMG_image_plane_attribs
  825. #define EGL_IMG_image_plane_attribs 1
  826. #define EGL_NATIVE_BUFFER_MULTIPLANE_SEPARATE_IMG 0x3105
  827. #define EGL_NATIVE_BUFFER_PLANE_OFFSET_IMG 0x3106
  828. #define EGLEW_IMG_image_plane_attribs EGLEW_GET_VAR(__EGLEW_IMG_image_plane_attribs)
  829. #endif /* EGL_IMG_image_plane_attribs */
  830. /* ---------------------------- EGL_KHR_cl_event --------------------------- */
  831. #ifndef EGL_KHR_cl_event
  832. #define EGL_KHR_cl_event 1
  833. #define EGL_CL_EVENT_HANDLE_KHR 0x309C
  834. #define EGL_SYNC_CL_EVENT_KHR 0x30FE
  835. #define EGL_SYNC_CL_EVENT_COMPLETE_KHR 0x30FF
  836. #define EGLEW_KHR_cl_event EGLEW_GET_VAR(__EGLEW_KHR_cl_event)
  837. #endif /* EGL_KHR_cl_event */
  838. /* --------------------------- EGL_KHR_cl_event2 --------------------------- */
  839. #ifndef EGL_KHR_cl_event2
  840. #define EGL_KHR_cl_event2 1
  841. #define EGL_CL_EVENT_HANDLE_KHR 0x309C
  842. #define EGL_SYNC_CL_EVENT_KHR 0x30FE
  843. #define EGL_SYNC_CL_EVENT_COMPLETE_KHR 0x30FF
  844. typedef EGLSyncKHR ( * PFNEGLCREATESYNC64KHRPROC) (EGLDisplay dpy, EGLenum type, const EGLAttribKHR * attrib_list);
  845. #define eglCreateSync64KHR EGLEW_GET_FUN(__eglewCreateSync64KHR)
  846. #define EGLEW_KHR_cl_event2 EGLEW_GET_VAR(__EGLEW_KHR_cl_event2)
  847. #endif /* EGL_KHR_cl_event2 */
  848. /* ----------------- EGL_KHR_client_get_all_proc_addresses ----------------- */
  849. #ifndef EGL_KHR_client_get_all_proc_addresses
  850. #define EGL_KHR_client_get_all_proc_addresses 1
  851. #define EGLEW_KHR_client_get_all_proc_addresses EGLEW_GET_VAR(__EGLEW_KHR_client_get_all_proc_addresses)
  852. #endif /* EGL_KHR_client_get_all_proc_addresses */
  853. /* ------------------------- EGL_KHR_config_attribs ------------------------ */
  854. #ifndef EGL_KHR_config_attribs
  855. #define EGL_KHR_config_attribs 1
  856. #define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020
  857. #define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040
  858. #define EGL_CONFORMANT_KHR 0x3042
  859. #define EGLEW_KHR_config_attribs EGLEW_GET_VAR(__EGLEW_KHR_config_attribs)
  860. #endif /* EGL_KHR_config_attribs */
  861. /* --------------------- EGL_KHR_context_flush_control --------------------- */
  862. #ifndef EGL_KHR_context_flush_control
  863. #define EGL_KHR_context_flush_control 1
  864. #define EGL_CONTEXT_RELEASE_BEHAVIOR_NONE_KHR 0
  865. #define EGL_CONTEXT_RELEASE_BEHAVIOR_KHR 0x2097
  866. #define EGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR 0x2098
  867. #define EGLEW_KHR_context_flush_control EGLEW_GET_VAR(__EGLEW_KHR_context_flush_control)
  868. #endif /* EGL_KHR_context_flush_control */
  869. /* ------------------------- EGL_KHR_create_context ------------------------ */
  870. #ifndef EGL_KHR_create_context
  871. #define EGL_KHR_create_context 1
  872. #define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001
  873. #define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001
  874. #define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002
  875. #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002
  876. #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004
  877. #define EGL_OPENGL_ES3_BIT 0x00000040
  878. #define EGL_OPENGL_ES3_BIT_KHR 0x00000040
  879. #define EGL_CONTEXT_MAJOR_VERSION_KHR 0x3098
  880. #define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB
  881. #define EGL_CONTEXT_FLAGS_KHR 0x30FC
  882. #define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD
  883. #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD
  884. #define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE
  885. #define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF
  886. #define EGLEW_KHR_create_context EGLEW_GET_VAR(__EGLEW_KHR_create_context)
  887. #endif /* EGL_KHR_create_context */
  888. /* -------------------- EGL_KHR_create_context_no_error -------------------- */
  889. #ifndef EGL_KHR_create_context_no_error
  890. #define EGL_KHR_create_context_no_error 1
  891. #define EGL_CONTEXT_OPENGL_NO_ERROR_KHR 0x31B3
  892. #define EGLEW_KHR_create_context_no_error EGLEW_GET_VAR(__EGLEW_KHR_create_context_no_error)
  893. #endif /* EGL_KHR_create_context_no_error */
  894. /* ----------------------------- EGL_KHR_debug ----------------------------- */
  895. #ifndef EGL_KHR_debug
  896. #define EGL_KHR_debug 1
  897. #define EGL_OBJECT_THREAD_KHR 0x33B0
  898. #define EGL_OBJECT_DISPLAY_KHR 0x33B1
  899. #define EGL_OBJECT_CONTEXT_KHR 0x33B2
  900. #define EGL_OBJECT_SURFACE_KHR 0x33B3
  901. #define EGL_OBJECT_IMAGE_KHR 0x33B4
  902. #define EGL_OBJECT_SYNC_KHR 0x33B5
  903. #define EGL_OBJECT_STREAM_KHR 0x33B6
  904. #define EGL_DEBUG_CALLBACK_KHR 0x33B8
  905. #define EGL_DEBUG_MSG_CRITICAL_KHR 0x33B9
  906. #define EGL_DEBUG_MSG_ERROR_KHR 0x33BA
  907. #define EGL_DEBUG_MSG_WARN_KHR 0x33BB
  908. #define EGL_DEBUG_MSG_INFO_KHR 0x33BC
  909. typedef EGLint ( * PFNEGLDEBUGMESSAGECONTROLKHRPROC) (EGLDEBUGPROCKHR callback, const EGLAttrib * attrib_list);
  910. typedef EGLint ( * PFNEGLLABELOBJECTKHRPROC) (EGLDisplay display, EGLenum objectType, EGLObjectKHR object, EGLLabelKHR label);
  911. typedef EGLBoolean ( * PFNEGLQUERYDEBUGKHRPROC) (EGLint attribute, EGLAttrib * value);
  912. #define eglDebugMessageControlKHR EGLEW_GET_FUN(__eglewDebugMessageControlKHR)
  913. #define eglLabelObjectKHR EGLEW_GET_FUN(__eglewLabelObjectKHR)
  914. #define eglQueryDebugKHR EGLEW_GET_FUN(__eglewQueryDebugKHR)
  915. #define EGLEW_KHR_debug EGLEW_GET_VAR(__EGLEW_KHR_debug)
  916. #endif /* EGL_KHR_debug */
  917. /* --------------------------- EGL_KHR_fence_sync -------------------------- */
  918. #ifndef EGL_KHR_fence_sync
  919. #define EGL_KHR_fence_sync 1
  920. #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0
  921. #define EGL_SYNC_CONDITION_KHR 0x30F8
  922. #define EGL_SYNC_FENCE_KHR 0x30F9
  923. #define EGLEW_KHR_fence_sync EGLEW_GET_VAR(__EGLEW_KHR_fence_sync)
  924. #endif /* EGL_KHR_fence_sync */
  925. /* --------------------- EGL_KHR_get_all_proc_addresses -------------------- */
  926. #ifndef EGL_KHR_get_all_proc_addresses
  927. #define EGL_KHR_get_all_proc_addresses 1
  928. #define EGLEW_KHR_get_all_proc_addresses EGLEW_GET_VAR(__EGLEW_KHR_get_all_proc_addresses)
  929. #endif /* EGL_KHR_get_all_proc_addresses */
  930. /* ------------------------- EGL_KHR_gl_colorspace ------------------------- */
  931. #ifndef EGL_KHR_gl_colorspace
  932. #define EGL_KHR_gl_colorspace 1
  933. #define EGL_GL_COLORSPACE_SRGB_KHR 0x3089
  934. #define EGL_GL_COLORSPACE_LINEAR_KHR 0x308A
  935. #define EGL_GL_COLORSPACE_KHR 0x309D
  936. #define EGLEW_KHR_gl_colorspace EGLEW_GET_VAR(__EGLEW_KHR_gl_colorspace)
  937. #endif /* EGL_KHR_gl_colorspace */
  938. /* --------------------- EGL_KHR_gl_renderbuffer_image --------------------- */
  939. #ifndef EGL_KHR_gl_renderbuffer_image
  940. #define EGL_KHR_gl_renderbuffer_image 1
  941. #define EGL_GL_RENDERBUFFER_KHR 0x30B9
  942. #define EGLEW_KHR_gl_renderbuffer_image EGLEW_GET_VAR(__EGLEW_KHR_gl_renderbuffer_image)
  943. #endif /* EGL_KHR_gl_renderbuffer_image */
  944. /* ---------------------- EGL_KHR_gl_texture_2D_image ---------------------- */
  945. #ifndef EGL_KHR_gl_texture_2D_image
  946. #define EGL_KHR_gl_texture_2D_image 1
  947. #define EGL_GL_TEXTURE_2D_KHR 0x30B1
  948. #define EGL_GL_TEXTURE_LEVEL_KHR 0x30BC
  949. #define EGLEW_KHR_gl_texture_2D_image EGLEW_GET_VAR(__EGLEW_KHR_gl_texture_2D_image)
  950. #endif /* EGL_KHR_gl_texture_2D_image */
  951. /* ---------------------- EGL_KHR_gl_texture_3D_image ---------------------- */
  952. #ifndef EGL_KHR_gl_texture_3D_image
  953. #define EGL_KHR_gl_texture_3D_image 1
  954. #define EGL_GL_TEXTURE_3D_KHR 0x30B2
  955. #define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD
  956. #define EGLEW_KHR_gl_texture_3D_image EGLEW_GET_VAR(__EGLEW_KHR_gl_texture_3D_image)
  957. #endif /* EGL_KHR_gl_texture_3D_image */
  958. /* -------------------- EGL_KHR_gl_texture_cubemap_image ------------------- */
  959. #ifndef EGL_KHR_gl_texture_cubemap_image
  960. #define EGL_KHR_gl_texture_cubemap_image 1
  961. #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR 0x30B3
  962. #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR 0x30B4
  963. #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR 0x30B5
  964. #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR 0x30B6
  965. #define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR 0x30B7
  966. #define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR 0x30B8
  967. #define EGLEW_KHR_gl_texture_cubemap_image EGLEW_GET_VAR(__EGLEW_KHR_gl_texture_cubemap_image)
  968. #endif /* EGL_KHR_gl_texture_cubemap_image */
  969. /* ----------------------------- EGL_KHR_image ----------------------------- */
  970. #ifndef EGL_KHR_image
  971. #define EGL_KHR_image 1
  972. #define EGL_NATIVE_PIXMAP_KHR 0x30B0
  973. typedef EGLImageKHR ( * PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint * attrib_list);
  974. typedef EGLBoolean ( * PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image);
  975. #define eglCreateImageKHR EGLEW_GET_FUN(__eglewCreateImageKHR)
  976. #define eglDestroyImageKHR EGLEW_GET_FUN(__eglewDestroyImageKHR)
  977. #define EGLEW_KHR_image EGLEW_GET_VAR(__EGLEW_KHR_image)
  978. #endif /* EGL_KHR_image */
  979. /* --------------------------- EGL_KHR_image_base -------------------------- */
  980. #ifndef EGL_KHR_image_base
  981. #define EGL_KHR_image_base 1
  982. #define EGL_IMAGE_PRESERVED_KHR 0x30D2
  983. #define EGLEW_KHR_image_base EGLEW_GET_VAR(__EGLEW_KHR_image_base)
  984. #endif /* EGL_KHR_image_base */
  985. /* -------------------------- EGL_KHR_image_pixmap ------------------------- */
  986. #ifndef EGL_KHR_image_pixmap
  987. #define EGL_KHR_image_pixmap 1
  988. #define EGL_NATIVE_PIXMAP_KHR 0x30B0
  989. #define EGLEW_KHR_image_pixmap EGLEW_GET_VAR(__EGLEW_KHR_image_pixmap)
  990. #endif /* EGL_KHR_image_pixmap */
  991. /* -------------------------- EGL_KHR_lock_surface ------------------------- */
  992. #ifndef EGL_KHR_lock_surface
  993. #define EGL_KHR_lock_surface 1
  994. #define EGL_READ_SURFACE_BIT_KHR 0x0001
  995. #define EGL_WRITE_SURFACE_BIT_KHR 0x0002
  996. #define EGL_LOCK_SURFACE_BIT_KHR 0x0080
  997. #define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100
  998. #define EGL_MATCH_FORMAT_KHR 0x3043
  999. #define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0
  1000. #define EGL_FORMAT_RGB_565_KHR 0x30C1
  1001. #define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2
  1002. #define EGL_FORMAT_RGBA_8888_KHR 0x30C3
  1003. #define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4
  1004. #define EGL_LOCK_USAGE_HINT_KHR 0x30C5
  1005. #define EGL_BITMAP_POINTER_KHR 0x30C6
  1006. #define EGL_BITMAP_PITCH_KHR 0x30C7
  1007. #define EGL_BITMAP_ORIGIN_KHR 0x30C8
  1008. #define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9
  1009. #define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA
  1010. #define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB
  1011. #define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC
  1012. #define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD
  1013. #define EGL_LOWER_LEFT_KHR 0x30CE
  1014. #define EGL_UPPER_LEFT_KHR 0x30CF
  1015. typedef EGLBoolean ( * PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface, const EGLint * attrib_list);
  1016. typedef EGLBoolean ( * PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface);
  1017. #define eglLockSurfaceKHR EGLEW_GET_FUN(__eglewLockSurfaceKHR)
  1018. #define eglUnlockSurfaceKHR EGLEW_GET_FUN(__eglewUnlockSurfaceKHR)
  1019. #define EGLEW_KHR_lock_surface EGLEW_GET_VAR(__EGLEW_KHR_lock_surface)
  1020. #endif /* EGL_KHR_lock_surface */
  1021. /* ------------------------- EGL_KHR_lock_surface2 ------------------------- */
  1022. #ifndef EGL_KHR_lock_surface2
  1023. #define EGL_KHR_lock_surface2 1
  1024. #define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110
  1025. #define EGLEW_KHR_lock_surface2 EGLEW_GET_VAR(__EGLEW_KHR_lock_surface2)
  1026. #endif /* EGL_KHR_lock_surface2 */
  1027. /* ------------------------- EGL_KHR_lock_surface3 ------------------------- */
  1028. #ifndef EGL_KHR_lock_surface3
  1029. #define EGL_KHR_lock_surface3 1
  1030. #define EGL_READ_SURFACE_BIT_KHR 0x0001
  1031. #define EGL_WRITE_SURFACE_BIT_KHR 0x0002
  1032. #define EGL_LOCK_SURFACE_BIT_KHR 0x0080
  1033. #define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100
  1034. #define EGL_MATCH_FORMAT_KHR 0x3043
  1035. #define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0
  1036. #define EGL_FORMAT_RGB_565_KHR 0x30C1
  1037. #define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2
  1038. #define EGL_FORMAT_RGBA_8888_KHR 0x30C3
  1039. #define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4
  1040. #define EGL_LOCK_USAGE_HINT_KHR 0x30C5
  1041. #define EGL_BITMAP_POINTER_KHR 0x30C6
  1042. #define EGL_BITMAP_PITCH_KHR 0x30C7
  1043. #define EGL_BITMAP_ORIGIN_KHR 0x30C8
  1044. #define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9
  1045. #define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA
  1046. #define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB
  1047. #define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC
  1048. #define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD
  1049. #define EGL_LOWER_LEFT_KHR 0x30CE
  1050. #define EGL_UPPER_LEFT_KHR 0x30CF
  1051. #define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110
  1052. typedef EGLBoolean ( * PFNEGLQUERYSURFACE64KHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR * value);
  1053. #define eglQuerySurface64KHR EGLEW_GET_FUN(__eglewQuerySurface64KHR)
  1054. #define EGLEW_KHR_lock_surface3 EGLEW_GET_VAR(__EGLEW_KHR_lock_surface3)
  1055. #endif /* EGL_KHR_lock_surface3 */
  1056. /* --------------------- EGL_KHR_mutable_render_buffer --------------------- */
  1057. #ifndef EGL_KHR_mutable_render_buffer
  1058. #define EGL_KHR_mutable_render_buffer 1
  1059. #define EGL_MUTABLE_RENDER_BUFFER_BIT_KHR 0x1000
  1060. #define EGLEW_KHR_mutable_render_buffer EGLEW_GET_VAR(__EGLEW_KHR_mutable_render_buffer)
  1061. #endif /* EGL_KHR_mutable_render_buffer */
  1062. /* ----------------------- EGL_KHR_no_config_context ----------------------- */
  1063. #ifndef EGL_KHR_no_config_context
  1064. #define EGL_KHR_no_config_context 1
  1065. #define EGLEW_KHR_no_config_context EGLEW_GET_VAR(__EGLEW_KHR_no_config_context)
  1066. #endif /* EGL_KHR_no_config_context */
  1067. /* ------------------------- EGL_KHR_partial_update ------------------------ */
  1068. #ifndef EGL_KHR_partial_update
  1069. #define EGL_KHR_partial_update 1
  1070. #define EGL_BUFFER_AGE_KHR 0x313D
  1071. typedef EGLBoolean ( * PFNEGLSETDAMAGEREGIONKHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects);
  1072. #define eglSetDamageRegionKHR EGLEW_GET_FUN(__eglewSetDamageRegionKHR)
  1073. #define EGLEW_KHR_partial_update EGLEW_GET_VAR(__EGLEW_KHR_partial_update)
  1074. #endif /* EGL_KHR_partial_update */
  1075. /* ------------------------ EGL_KHR_platform_android ----------------------- */
  1076. #ifndef EGL_KHR_platform_android
  1077. #define EGL_KHR_platform_android 1
  1078. #define EGL_PLATFORM_ANDROID_KHR 0x3141
  1079. #define EGLEW_KHR_platform_android EGLEW_GET_VAR(__EGLEW_KHR_platform_android)
  1080. #endif /* EGL_KHR_platform_android */
  1081. /* -------------------------- EGL_KHR_platform_gbm ------------------------- */
  1082. #ifndef EGL_KHR_platform_gbm
  1083. #define EGL_KHR_platform_gbm 1
  1084. #define EGL_PLATFORM_GBM_KHR 0x31D7
  1085. #define EGLEW_KHR_platform_gbm EGLEW_GET_VAR(__EGLEW_KHR_platform_gbm)
  1086. #endif /* EGL_KHR_platform_gbm */
  1087. /* ------------------------ EGL_KHR_platform_wayland ----------------------- */
  1088. #ifndef EGL_KHR_platform_wayland
  1089. #define EGL_KHR_platform_wayland 1
  1090. #define EGL_PLATFORM_WAYLAND_KHR 0x31D8
  1091. #define EGLEW_KHR_platform_wayland EGLEW_GET_VAR(__EGLEW_KHR_platform_wayland)
  1092. #endif /* EGL_KHR_platform_wayland */
  1093. /* -------------------------- EGL_KHR_platform_x11 ------------------------- */
  1094. #ifndef EGL_KHR_platform_x11
  1095. #define EGL_KHR_platform_x11 1
  1096. #define EGL_PLATFORM_X11_KHR 0x31D5
  1097. #define EGL_PLATFORM_X11_SCREEN_KHR 0x31D6
  1098. #define EGLEW_KHR_platform_x11 EGLEW_GET_VAR(__EGLEW_KHR_platform_x11)
  1099. #endif /* EGL_KHR_platform_x11 */
  1100. /* ------------------------- EGL_KHR_reusable_sync ------------------------- */
  1101. #ifndef EGL_KHR_reusable_sync
  1102. #define EGL_KHR_reusable_sync 1
  1103. #define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR 0x0001
  1104. #define EGL_SYNC_STATUS_KHR 0x30F1
  1105. #define EGL_SIGNALED_KHR 0x30F2
  1106. #define EGL_UNSIGNALED_KHR 0x30F3
  1107. #define EGL_TIMEOUT_EXPIRED_KHR 0x30F5
  1108. #define EGL_CONDITION_SATISFIED_KHR 0x30F6
  1109. #define EGL_SYNC_TYPE_KHR 0x30F7
  1110. #define EGL_SYNC_REUSABLE_KHR 0x30FA
  1111. #define EGL_FOREVER_KHR 0xFFFFFFFFFFFFFFFF
  1112. typedef EGLint ( * PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
  1113. typedef EGLSyncKHR ( * PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint * attrib_list);
  1114. typedef EGLBoolean ( * PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync);
  1115. typedef EGLBoolean ( * PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint * value);
  1116. typedef EGLBoolean ( * PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
  1117. #define eglClientWaitSyncKHR EGLEW_GET_FUN(__eglewClientWaitSyncKHR)
  1118. #define eglCreateSyncKHR EGLEW_GET_FUN(__eglewCreateSyncKHR)
  1119. #define eglDestroySyncKHR EGLEW_GET_FUN(__eglewDestroySyncKHR)
  1120. #define eglGetSyncAttribKHR EGLEW_GET_FUN(__eglewGetSyncAttribKHR)
  1121. #define eglSignalSyncKHR EGLEW_GET_FUN(__eglewSignalSyncKHR)
  1122. #define EGLEW_KHR_reusable_sync EGLEW_GET_VAR(__EGLEW_KHR_reusable_sync)
  1123. #endif /* EGL_KHR_reusable_sync */
  1124. /* ----------------------------- EGL_KHR_stream ---------------------------- */
  1125. #ifndef EGL_KHR_stream
  1126. #define EGL_KHR_stream 1
  1127. #define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210
  1128. #define EGL_PRODUCER_FRAME_KHR 0x3212
  1129. #define EGL_CONSUMER_FRAME_KHR 0x3213
  1130. #define EGL_STREAM_STATE_KHR 0x3214
  1131. #define EGL_STREAM_STATE_CREATED_KHR 0x3215
  1132. #define EGL_STREAM_STATE_CONNECTING_KHR 0x3216
  1133. #define EGL_STREAM_STATE_EMPTY_KHR 0x3217
  1134. #define EGL_STREAM_STATE_NEW_FRAME_AVAILABLE_KHR 0x3218
  1135. #define EGL_STREAM_STATE_OLD_FRAME_AVAILABLE_KHR 0x3219
  1136. #define EGL_STREAM_STATE_DISCONNECTED_KHR 0x321A
  1137. #define EGL_BAD_STREAM_KHR 0x321B
  1138. #define EGL_BAD_STATE_KHR 0x321C
  1139. typedef EGLStreamKHR ( * PFNEGLCREATESTREAMKHRPROC) (EGLDisplay dpy, const EGLint * attrib_list);
  1140. typedef EGLBoolean ( * PFNEGLDESTROYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
  1141. typedef EGLBoolean ( * PFNEGLQUERYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint * value);
  1142. typedef EGLBoolean ( * PFNEGLQUERYSTREAMU64KHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR * value);
  1143. typedef EGLBoolean ( * PFNEGLSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
  1144. #define eglCreateStreamKHR EGLEW_GET_FUN(__eglewCreateStreamKHR)
  1145. #define eglDestroyStreamKHR EGLEW_GET_FUN(__eglewDestroyStreamKHR)
  1146. #define eglQueryStreamKHR EGLEW_GET_FUN(__eglewQueryStreamKHR)
  1147. #define eglQueryStreamu64KHR EGLEW_GET_FUN(__eglewQueryStreamu64KHR)
  1148. #define eglStreamAttribKHR EGLEW_GET_FUN(__eglewStreamAttribKHR)
  1149. #define EGLEW_KHR_stream EGLEW_GET_VAR(__EGLEW_KHR_stream)
  1150. #endif /* EGL_KHR_stream */
  1151. /* ------------------------- EGL_KHR_stream_attrib ------------------------- */
  1152. #ifndef EGL_KHR_stream_attrib
  1153. #define EGL_KHR_stream_attrib 1
  1154. #define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210
  1155. #define EGL_STREAM_STATE_KHR 0x3214
  1156. #define EGL_STREAM_STATE_CREATED_KHR 0x3215
  1157. #define EGL_STREAM_STATE_CONNECTING_KHR 0x3216
  1158. typedef EGLStreamKHR ( * PFNEGLCREATESTREAMATTRIBKHRPROC) (EGLDisplay dpy, const EGLAttrib * attrib_list);
  1159. typedef EGLBoolean ( * PFNEGLQUERYSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib * value);
  1160. typedef EGLBoolean ( * PFNEGLSETSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib value);
  1161. typedef EGLBoolean ( * PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list);
  1162. typedef EGLBoolean ( * PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list);
  1163. #define eglCreateStreamAttribKHR EGLEW_GET_FUN(__eglewCreateStreamAttribKHR)
  1164. #define eglQueryStreamAttribKHR EGLEW_GET_FUN(__eglewQueryStreamAttribKHR)
  1165. #define eglSetStreamAttribKHR EGLEW_GET_FUN(__eglewSetStreamAttribKHR)
  1166. #define eglStreamConsumerAcquireAttribKHR EGLEW_GET_FUN(__eglewStreamConsumerAcquireAttribKHR)
  1167. #define eglStreamConsumerReleaseAttribKHR EGLEW_GET_FUN(__eglewStreamConsumerReleaseAttribKHR)
  1168. #define EGLEW_KHR_stream_attrib EGLEW_GET_VAR(__EGLEW_KHR_stream_attrib)
  1169. #endif /* EGL_KHR_stream_attrib */
  1170. /* ------------------- EGL_KHR_stream_consumer_gltexture ------------------- */
  1171. #ifndef EGL_KHR_stream_consumer_gltexture
  1172. #define EGL_KHR_stream_consumer_gltexture 1
  1173. #define EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR 0x321E
  1174. typedef EGLBoolean ( * PFNEGLSTREAMCONSUMERACQUIREKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
  1175. typedef EGLBoolean ( * PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
  1176. typedef EGLBoolean ( * PFNEGLSTREAMCONSUMERRELEASEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
  1177. #define eglStreamConsumerAcquireKHR EGLEW_GET_FUN(__eglewStreamConsumerAcquireKHR)
  1178. #define eglStreamConsumerGLTextureExternalKHR EGLEW_GET_FUN(__eglewStreamConsumerGLTextureExternalKHR)
  1179. #define eglStreamConsumerReleaseKHR EGLEW_GET_FUN(__eglewStreamConsumerReleaseKHR)
  1180. #define EGLEW_KHR_stream_consumer_gltexture EGLEW_GET_VAR(__EGLEW_KHR_stream_consumer_gltexture)
  1181. #endif /* EGL_KHR_stream_consumer_gltexture */
  1182. /* -------------------- EGL_KHR_stream_cross_process_fd -------------------- */
  1183. #ifndef EGL_KHR_stream_cross_process_fd
  1184. #define EGL_KHR_stream_cross_process_fd 1
  1185. typedef EGLStreamKHR ( * PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
  1186. typedef EGLNativeFileDescriptorKHR ( * PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
  1187. #define eglCreateStreamFromFileDescriptorKHR EGLEW_GET_FUN(__eglewCreateStreamFromFileDescriptorKHR)
  1188. #define eglGetStreamFileDescriptorKHR EGLEW_GET_FUN(__eglewGetStreamFileDescriptorKHR)
  1189. #define EGLEW_KHR_stream_cross_process_fd EGLEW_GET_VAR(__EGLEW_KHR_stream_cross_process_fd)
  1190. #endif /* EGL_KHR_stream_cross_process_fd */
  1191. /* -------------------------- EGL_KHR_stream_fifo -------------------------- */
  1192. #ifndef EGL_KHR_stream_fifo
  1193. #define EGL_KHR_stream_fifo 1
  1194. #define EGL_STREAM_FIFO_LENGTH_KHR 0x31FC
  1195. #define EGL_STREAM_TIME_NOW_KHR 0x31FD
  1196. #define EGL_STREAM_TIME_CONSUMER_KHR 0x31FE
  1197. #define EGL_STREAM_TIME_PRODUCER_KHR 0x31FF
  1198. typedef EGLBoolean ( * PFNEGLQUERYSTREAMTIMEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR * value);
  1199. #define eglQueryStreamTimeKHR EGLEW_GET_FUN(__eglewQueryStreamTimeKHR)
  1200. #define EGLEW_KHR_stream_fifo EGLEW_GET_VAR(__EGLEW_KHR_stream_fifo)
  1201. #endif /* EGL_KHR_stream_fifo */
  1202. /* ----------------- EGL_KHR_stream_producer_aldatalocator ----------------- */
  1203. #ifndef EGL_KHR_stream_producer_aldatalocator
  1204. #define EGL_KHR_stream_producer_aldatalocator 1
  1205. #define EGLEW_KHR_stream_producer_aldatalocator EGLEW_GET_VAR(__EGLEW_KHR_stream_producer_aldatalocator)
  1206. #endif /* EGL_KHR_stream_producer_aldatalocator */
  1207. /* ------------------- EGL_KHR_stream_producer_eglsurface ------------------ */
  1208. #ifndef EGL_KHR_stream_producer_eglsurface
  1209. #define EGL_KHR_stream_producer_eglsurface 1
  1210. #define EGL_STREAM_BIT_KHR 0x0800
  1211. typedef EGLSurface ( * PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC) (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint * attrib_list);
  1212. #define eglCreateStreamProducerSurfaceKHR EGLEW_GET_FUN(__eglewCreateStreamProducerSurfaceKHR)
  1213. #define EGLEW_KHR_stream_producer_eglsurface EGLEW_GET_VAR(__EGLEW_KHR_stream_producer_eglsurface)
  1214. #endif /* EGL_KHR_stream_producer_eglsurface */
  1215. /* ---------------------- EGL_KHR_surfaceless_context ---------------------- */
  1216. #ifndef EGL_KHR_surfaceless_context
  1217. #define EGL_KHR_surfaceless_context 1
  1218. #define EGLEW_KHR_surfaceless_context EGLEW_GET_VAR(__EGLEW_KHR_surfaceless_context)
  1219. #endif /* EGL_KHR_surfaceless_context */
  1220. /* -------------------- EGL_KHR_swap_buffers_with_damage ------------------- */
  1221. #ifndef EGL_KHR_swap_buffers_with_damage
  1222. #define EGL_KHR_swap_buffers_with_damage 1
  1223. typedef EGLBoolean ( * PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects);
  1224. #define eglSwapBuffersWithDamageKHR EGLEW_GET_FUN(__eglewSwapBuffersWithDamageKHR)
  1225. #define EGLEW_KHR_swap_buffers_with_damage EGLEW_GET_VAR(__EGLEW_KHR_swap_buffers_with_damage)
  1226. #endif /* EGL_KHR_swap_buffers_with_damage */
  1227. /* ------------------------ EGL_KHR_vg_parent_image ------------------------ */
  1228. #ifndef EGL_KHR_vg_parent_image
  1229. #define EGL_KHR_vg_parent_image 1
  1230. #define EGL_VG_PARENT_IMAGE_KHR 0x30BA
  1231. #define EGLEW_KHR_vg_parent_image EGLEW_GET_VAR(__EGLEW_KHR_vg_parent_image)
  1232. #endif /* EGL_KHR_vg_parent_image */
  1233. /* --------------------------- EGL_KHR_wait_sync --------------------------- */
  1234. #ifndef EGL_KHR_wait_sync
  1235. #define EGL_KHR_wait_sync 1
  1236. typedef EGLint ( * PFNEGLWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags);
  1237. #define eglWaitSyncKHR EGLEW_GET_FUN(__eglewWaitSyncKHR)
  1238. #define EGLEW_KHR_wait_sync EGLEW_GET_VAR(__EGLEW_KHR_wait_sync)
  1239. #endif /* EGL_KHR_wait_sync */
  1240. /* --------------------------- EGL_MESA_drm_image -------------------------- */
  1241. #ifndef EGL_MESA_drm_image
  1242. #define EGL_MESA_drm_image 1
  1243. #define EGL_DRM_BUFFER_USE_SCANOUT_MESA 0x00000001
  1244. #define EGL_DRM_BUFFER_USE_SHARE_MESA 0x00000002
  1245. #define EGL_DRM_BUFFER_FORMAT_MESA 0x31D0
  1246. #define EGL_DRM_BUFFER_USE_MESA 0x31D1
  1247. #define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA 0x31D2
  1248. #define EGL_DRM_BUFFER_MESA 0x31D3
  1249. #define EGL_DRM_BUFFER_STRIDE_MESA 0x31D4
  1250. typedef EGLImageKHR ( * PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay dpy, const EGLint * attrib_list);
  1251. typedef EGLBoolean ( * PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, EGLint * name, EGLint * handle, EGLint * stride);
  1252. #define eglCreateDRMImageMESA EGLEW_GET_FUN(__eglewCreateDRMImageMESA)
  1253. #define eglExportDRMImageMESA EGLEW_GET_FUN(__eglewExportDRMImageMESA)
  1254. #define EGLEW_MESA_drm_image EGLEW_GET_VAR(__EGLEW_MESA_drm_image)
  1255. #endif /* EGL_MESA_drm_image */
  1256. /* --------------------- EGL_MESA_image_dma_buf_export --------------------- */
  1257. #ifndef EGL_MESA_image_dma_buf_export
  1258. #define EGL_MESA_image_dma_buf_export 1
  1259. typedef EGLBoolean ( * PFNEGLEXPORTDMABUFIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int * fds, EGLint * strides, EGLint * offsets);
  1260. typedef EGLBoolean ( * PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int * fourcc, int * num_planes, EGLuint64KHR * modifiers);
  1261. #define eglExportDMABUFImageMESA EGLEW_GET_FUN(__eglewExportDMABUFImageMESA)
  1262. #define eglExportDMABUFImageQueryMESA EGLEW_GET_FUN(__eglewExportDMABUFImageQueryMESA)
  1263. #define EGLEW_MESA_image_dma_buf_export EGLEW_GET_VAR(__EGLEW_MESA_image_dma_buf_export)
  1264. #endif /* EGL_MESA_image_dma_buf_export */
  1265. /* ------------------------- EGL_MESA_platform_gbm ------------------------- */
  1266. #ifndef EGL_MESA_platform_gbm
  1267. #define EGL_MESA_platform_gbm 1
  1268. #define EGL_PLATFORM_GBM_MESA 0x31D7
  1269. #define EGLEW_MESA_platform_gbm EGLEW_GET_VAR(__EGLEW_MESA_platform_gbm)
  1270. #endif /* EGL_MESA_platform_gbm */
  1271. /* --------------------- EGL_MESA_platform_surfaceless --------------------- */
  1272. #ifndef EGL_MESA_platform_surfaceless
  1273. #define EGL_MESA_platform_surfaceless 1
  1274. #define EGL_PLATFORM_SURFACELESS_MESA 0x31DD
  1275. #define EGLEW_MESA_platform_surfaceless EGLEW_GET_VAR(__EGLEW_MESA_platform_surfaceless)
  1276. #endif /* EGL_MESA_platform_surfaceless */
  1277. /* -------------------------- EGL_NOK_swap_region -------------------------- */
  1278. #ifndef EGL_NOK_swap_region
  1279. #define EGL_NOK_swap_region 1
  1280. typedef EGLBoolean ( * PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects);
  1281. #define eglSwapBuffersRegionNOK EGLEW_GET_FUN(__eglewSwapBuffersRegionNOK)
  1282. #define EGLEW_NOK_swap_region EGLEW_GET_VAR(__EGLEW_NOK_swap_region)
  1283. #endif /* EGL_NOK_swap_region */
  1284. /* -------------------------- EGL_NOK_swap_region2 ------------------------- */
  1285. #ifndef EGL_NOK_swap_region2
  1286. #define EGL_NOK_swap_region2 1
  1287. typedef EGLBoolean ( * PFNEGLSWAPBUFFERSREGION2NOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects);
  1288. #define eglSwapBuffersRegion2NOK EGLEW_GET_FUN(__eglewSwapBuffersRegion2NOK)
  1289. #define EGLEW_NOK_swap_region2 EGLEW_GET_VAR(__EGLEW_NOK_swap_region2)
  1290. #endif /* EGL_NOK_swap_region2 */
  1291. /* ---------------------- EGL_NOK_texture_from_pixmap ---------------------- */
  1292. #ifndef EGL_NOK_texture_from_pixmap
  1293. #define EGL_NOK_texture_from_pixmap 1
  1294. #define EGL_Y_INVERTED_NOK 0x307F
  1295. #define EGLEW_NOK_texture_from_pixmap EGLEW_GET_VAR(__EGLEW_NOK_texture_from_pixmap)
  1296. #endif /* EGL_NOK_texture_from_pixmap */
  1297. /* ------------------------ EGL_NV_3dvision_surface ------------------------ */
  1298. #ifndef EGL_NV_3dvision_surface
  1299. #define EGL_NV_3dvision_surface 1
  1300. #define EGL_AUTO_STEREO_NV 0x3136
  1301. #define EGLEW_NV_3dvision_surface EGLEW_GET_VAR(__EGLEW_NV_3dvision_surface)
  1302. #endif /* EGL_NV_3dvision_surface */
  1303. /* ------------------------- EGL_NV_coverage_sample ------------------------ */
  1304. #ifndef EGL_NV_coverage_sample
  1305. #define EGL_NV_coverage_sample 1
  1306. #define EGL_COVERAGE_BUFFERS_NV 0x30E0
  1307. #define EGL_COVERAGE_SAMPLES_NV 0x30E1
  1308. #define EGLEW_NV_coverage_sample EGLEW_GET_VAR(__EGLEW_NV_coverage_sample)
  1309. #endif /* EGL_NV_coverage_sample */
  1310. /* --------------------- EGL_NV_coverage_sample_resolve -------------------- */
  1311. #ifndef EGL_NV_coverage_sample_resolve
  1312. #define EGL_NV_coverage_sample_resolve 1
  1313. #define EGL_COVERAGE_SAMPLE_RESOLVE_NV 0x3131
  1314. #define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV 0x3132
  1315. #define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV 0x3133
  1316. #define EGLEW_NV_coverage_sample_resolve EGLEW_GET_VAR(__EGLEW_NV_coverage_sample_resolve)
  1317. #endif /* EGL_NV_coverage_sample_resolve */
  1318. /* --------------------------- EGL_NV_cuda_event --------------------------- */
  1319. #ifndef EGL_NV_cuda_event
  1320. #define EGL_NV_cuda_event 1
  1321. #define EGL_CUDA_EVENT_HANDLE_NV 0x323B
  1322. #define EGL_SYNC_CUDA_EVENT_NV 0x323C
  1323. #define EGL_SYNC_CUDA_EVENT_COMPLETE_NV 0x323D
  1324. #define EGLEW_NV_cuda_event EGLEW_GET_VAR(__EGLEW_NV_cuda_event)
  1325. #endif /* EGL_NV_cuda_event */
  1326. /* ------------------------- EGL_NV_depth_nonlinear ------------------------ */
  1327. #ifndef EGL_NV_depth_nonlinear
  1328. #define EGL_NV_depth_nonlinear 1
  1329. #define EGL_DEPTH_ENCODING_NONE_NV 0
  1330. #define EGL_DEPTH_ENCODING_NV 0x30E2
  1331. #define EGL_DEPTH_ENCODING_NONLINEAR_NV 0x30E3
  1332. #define EGLEW_NV_depth_nonlinear EGLEW_GET_VAR(__EGLEW_NV_depth_nonlinear)
  1333. #endif /* EGL_NV_depth_nonlinear */
  1334. /* --------------------------- EGL_NV_device_cuda -------------------------- */
  1335. #ifndef EGL_NV_device_cuda
  1336. #define EGL_NV_device_cuda 1
  1337. #define EGL_CUDA_DEVICE_NV 0x323A
  1338. #define EGLEW_NV_device_cuda EGLEW_GET_VAR(__EGLEW_NV_device_cuda)
  1339. #endif /* EGL_NV_device_cuda */
  1340. /* -------------------------- EGL_NV_native_query -------------------------- */
  1341. #ifndef EGL_NV_native_query
  1342. #define EGL_NV_native_query 1
  1343. typedef EGLBoolean ( * PFNEGLQUERYNATIVEDISPLAYNVPROC) (EGLDisplay dpy, EGLNativeDisplayType * display_id);
  1344. typedef EGLBoolean ( * PFNEGLQUERYNATIVEPIXMAPNVPROC) (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType * pixmap);
  1345. typedef EGLBoolean ( * PFNEGLQUERYNATIVEWINDOWNVPROC) (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType * window);
  1346. #define eglQueryNativeDisplayNV EGLEW_GET_FUN(__eglewQueryNativeDisplayNV)
  1347. #define eglQueryNativePixmapNV EGLEW_GET_FUN(__eglewQueryNativePixmapNV)
  1348. #define eglQueryNativeWindowNV EGLEW_GET_FUN(__eglewQueryNativeWindowNV)
  1349. #define EGLEW_NV_native_query EGLEW_GET_VAR(__EGLEW_NV_native_query)
  1350. #endif /* EGL_NV_native_query */
  1351. /* ---------------------- EGL_NV_post_convert_rounding --------------------- */
  1352. #ifndef EGL_NV_post_convert_rounding
  1353. #define EGL_NV_post_convert_rounding 1
  1354. #define EGLEW_NV_post_convert_rounding EGLEW_GET_VAR(__EGLEW_NV_post_convert_rounding)
  1355. #endif /* EGL_NV_post_convert_rounding */
  1356. /* ------------------------- EGL_NV_post_sub_buffer ------------------------ */
  1357. #ifndef EGL_NV_post_sub_buffer
  1358. #define EGL_NV_post_sub_buffer 1
  1359. #define EGL_POST_SUB_BUFFER_SUPPORTED_NV 0x30BE
  1360. typedef EGLBoolean ( * PFNEGLPOSTSUBBUFFERNVPROC) (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height);
  1361. #define eglPostSubBufferNV EGLEW_GET_FUN(__eglewPostSubBufferNV)
  1362. #define EGLEW_NV_post_sub_buffer EGLEW_GET_VAR(__EGLEW_NV_post_sub_buffer)
  1363. #endif /* EGL_NV_post_sub_buffer */
  1364. /* ------------------ EGL_NV_robustness_video_memory_purge ----------------- */
  1365. #ifndef EGL_NV_robustness_video_memory_purge
  1366. #define EGL_NV_robustness_video_memory_purge 1
  1367. #define EGL_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV 0x334C
  1368. #define EGLEW_NV_robustness_video_memory_purge EGLEW_GET_VAR(__EGLEW_NV_robustness_video_memory_purge)
  1369. #endif /* EGL_NV_robustness_video_memory_purge */
  1370. /* ------------------ EGL_NV_stream_consumer_gltexture_yuv ----------------- */
  1371. #ifndef EGL_NV_stream_consumer_gltexture_yuv
  1372. #define EGL_NV_stream_consumer_gltexture_yuv 1
  1373. #define EGL_YUV_BUFFER_EXT 0x3300
  1374. #define EGL_YUV_NUMBER_OF_PLANES_EXT 0x3311
  1375. #define EGL_YUV_PLANE0_TEXTURE_UNIT_NV 0x332C
  1376. #define EGL_YUV_PLANE1_TEXTURE_UNIT_NV 0x332D
  1377. #define EGL_YUV_PLANE2_TEXTURE_UNIT_NV 0x332E
  1378. typedef EGLBoolean ( * PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLAttrib *attrib_list);
  1379. #define eglStreamConsumerGLTextureExternalAttribsNV EGLEW_GET_FUN(__eglewStreamConsumerGLTextureExternalAttribsNV)
  1380. #define EGLEW_NV_stream_consumer_gltexture_yuv EGLEW_GET_VAR(__EGLEW_NV_stream_consumer_gltexture_yuv)
  1381. #endif /* EGL_NV_stream_consumer_gltexture_yuv */
  1382. /* ---------------------- EGL_NV_stream_cross_display ---------------------- */
  1383. #ifndef EGL_NV_stream_cross_display
  1384. #define EGL_NV_stream_cross_display 1
  1385. #define EGL_STREAM_CROSS_DISPLAY_NV 0x334E
  1386. #define EGLEW_NV_stream_cross_display EGLEW_GET_VAR(__EGLEW_NV_stream_cross_display)
  1387. #endif /* EGL_NV_stream_cross_display */
  1388. /* ----------------------- EGL_NV_stream_cross_object ---------------------- */
  1389. #ifndef EGL_NV_stream_cross_object
  1390. #define EGL_NV_stream_cross_object 1
  1391. #define EGL_STREAM_CROSS_OBJECT_NV 0x334D
  1392. #define EGLEW_NV_stream_cross_object EGLEW_GET_VAR(__EGLEW_NV_stream_cross_object)
  1393. #endif /* EGL_NV_stream_cross_object */
  1394. /* --------------------- EGL_NV_stream_cross_partition --------------------- */
  1395. #ifndef EGL_NV_stream_cross_partition
  1396. #define EGL_NV_stream_cross_partition 1
  1397. #define EGL_STREAM_CROSS_PARTITION_NV 0x323F
  1398. #define EGLEW_NV_stream_cross_partition EGLEW_GET_VAR(__EGLEW_NV_stream_cross_partition)
  1399. #endif /* EGL_NV_stream_cross_partition */
  1400. /* ---------------------- EGL_NV_stream_cross_process ---------------------- */
  1401. #ifndef EGL_NV_stream_cross_process
  1402. #define EGL_NV_stream_cross_process 1
  1403. #define EGL_STREAM_CROSS_PROCESS_NV 0x3245
  1404. #define EGLEW_NV_stream_cross_process EGLEW_GET_VAR(__EGLEW_NV_stream_cross_process)
  1405. #endif /* EGL_NV_stream_cross_process */
  1406. /* ----------------------- EGL_NV_stream_cross_system ---------------------- */
  1407. #ifndef EGL_NV_stream_cross_system
  1408. #define EGL_NV_stream_cross_system 1
  1409. #define EGL_STREAM_CROSS_SYSTEM_NV 0x334F
  1410. #define EGLEW_NV_stream_cross_system EGLEW_GET_VAR(__EGLEW_NV_stream_cross_system)
  1411. #endif /* EGL_NV_stream_cross_system */
  1412. /* ------------------------ EGL_NV_stream_fifo_next ------------------------ */
  1413. #ifndef EGL_NV_stream_fifo_next
  1414. #define EGL_NV_stream_fifo_next 1
  1415. #define EGL_PENDING_FRAME_NV 0x3329
  1416. #define EGL_STREAM_TIME_PENDING_NV 0x332A
  1417. #define EGLEW_NV_stream_fifo_next EGLEW_GET_VAR(__EGLEW_NV_stream_fifo_next)
  1418. #endif /* EGL_NV_stream_fifo_next */
  1419. /* --------------------- EGL_NV_stream_fifo_synchronous -------------------- */
  1420. #ifndef EGL_NV_stream_fifo_synchronous
  1421. #define EGL_NV_stream_fifo_synchronous 1
  1422. #define EGL_STREAM_FIFO_SYNCHRONOUS_NV 0x3336
  1423. #define EGLEW_NV_stream_fifo_synchronous EGLEW_GET_VAR(__EGLEW_NV_stream_fifo_synchronous)
  1424. #endif /* EGL_NV_stream_fifo_synchronous */
  1425. /* ----------------------- EGL_NV_stream_frame_limits ---------------------- */
  1426. #ifndef EGL_NV_stream_frame_limits
  1427. #define EGL_NV_stream_frame_limits 1
  1428. #define EGL_PRODUCER_MAX_FRAME_HINT_NV 0x3337
  1429. #define EGL_CONSUMER_MAX_FRAME_HINT_NV 0x3338
  1430. #define EGLEW_NV_stream_frame_limits EGLEW_GET_VAR(__EGLEW_NV_stream_frame_limits)
  1431. #endif /* EGL_NV_stream_frame_limits */
  1432. /* ------------------------- EGL_NV_stream_metadata ------------------------ */
  1433. #ifndef EGL_NV_stream_metadata
  1434. #define EGL_NV_stream_metadata 1
  1435. #define EGL_MAX_STREAM_METADATA_BLOCKS_NV 0x3250
  1436. #define EGL_MAX_STREAM_METADATA_BLOCK_SIZE_NV 0x3251
  1437. #define EGL_MAX_STREAM_METADATA_TOTAL_SIZE_NV 0x3252
  1438. #define EGL_PRODUCER_METADATA_NV 0x3253
  1439. #define EGL_CONSUMER_METADATA_NV 0x3254
  1440. #define EGL_METADATA0_SIZE_NV 0x3255
  1441. #define EGL_METADATA1_SIZE_NV 0x3256
  1442. #define EGL_METADATA2_SIZE_NV 0x3257
  1443. #define EGL_METADATA3_SIZE_NV 0x3258
  1444. #define EGL_METADATA0_TYPE_NV 0x3259
  1445. #define EGL_METADATA1_TYPE_NV 0x325A
  1446. #define EGL_METADATA2_TYPE_NV 0x325B
  1447. #define EGL_METADATA3_TYPE_NV 0x325C
  1448. #define EGL_PENDING_METADATA_NV 0x3328
  1449. typedef EGLBoolean ( * PFNEGLQUERYDISPLAYATTRIBNVPROC) (EGLDisplay dpy, EGLint attribute, EGLAttrib * value);
  1450. typedef EGLBoolean ( * PFNEGLQUERYSTREAMMETADATANVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum name, EGLint n, EGLint offset, EGLint size, void * data);
  1451. typedef EGLBoolean ( * PFNEGLSETSTREAMMETADATANVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLint n, EGLint offset, EGLint size, const void * data);
  1452. #define eglQueryDisplayAttribNV EGLEW_GET_FUN(__eglewQueryDisplayAttribNV)
  1453. #define eglQueryStreamMetadataNV EGLEW_GET_FUN(__eglewQueryStreamMetadataNV)
  1454. #define eglSetStreamMetadataNV EGLEW_GET_FUN(__eglewSetStreamMetadataNV)
  1455. #define EGLEW_NV_stream_metadata EGLEW_GET_VAR(__EGLEW_NV_stream_metadata)
  1456. #endif /* EGL_NV_stream_metadata */
  1457. /* -------------------------- EGL_NV_stream_remote ------------------------- */
  1458. #ifndef EGL_NV_stream_remote
  1459. #define EGL_NV_stream_remote 1
  1460. #define EGL_STREAM_STATE_INITIALIZING_NV 0x3240
  1461. #define EGL_STREAM_TYPE_NV 0x3241
  1462. #define EGL_STREAM_PROTOCOL_NV 0x3242
  1463. #define EGL_STREAM_ENDPOINT_NV 0x3243
  1464. #define EGL_STREAM_LOCAL_NV 0x3244
  1465. #define EGL_STREAM_PROTOCOL_FD_NV 0x3246
  1466. #define EGL_STREAM_PRODUCER_NV 0x3247
  1467. #define EGL_STREAM_CONSUMER_NV 0x3248
  1468. #define EGLEW_NV_stream_remote EGLEW_GET_VAR(__EGLEW_NV_stream_remote)
  1469. #endif /* EGL_NV_stream_remote */
  1470. /* -------------------------- EGL_NV_stream_reset -------------------------- */
  1471. #ifndef EGL_NV_stream_reset
  1472. #define EGL_NV_stream_reset 1
  1473. #define EGL_SUPPORT_RESET_NV 0x3334
  1474. #define EGL_SUPPORT_REUSE_NV 0x3335
  1475. typedef EGLBoolean ( * PFNEGLRESETSTREAMNVPROC) (EGLDisplay dpy, EGLStreamKHR stream);
  1476. #define eglResetStreamNV EGLEW_GET_FUN(__eglewResetStreamNV)
  1477. #define EGLEW_NV_stream_reset EGLEW_GET_VAR(__EGLEW_NV_stream_reset)
  1478. #endif /* EGL_NV_stream_reset */
  1479. /* -------------------------- EGL_NV_stream_socket ------------------------- */
  1480. #ifndef EGL_NV_stream_socket
  1481. #define EGL_NV_stream_socket 1
  1482. #define EGL_STREAM_PROTOCOL_SOCKET_NV 0x324B
  1483. #define EGL_SOCKET_HANDLE_NV 0x324C
  1484. #define EGL_SOCKET_TYPE_NV 0x324D
  1485. #define EGLEW_NV_stream_socket EGLEW_GET_VAR(__EGLEW_NV_stream_socket)
  1486. #endif /* EGL_NV_stream_socket */
  1487. /* ----------------------- EGL_NV_stream_socket_inet ----------------------- */
  1488. #ifndef EGL_NV_stream_socket_inet
  1489. #define EGL_NV_stream_socket_inet 1
  1490. #define EGL_SOCKET_TYPE_INET_NV 0x324F
  1491. #define EGLEW_NV_stream_socket_inet EGLEW_GET_VAR(__EGLEW_NV_stream_socket_inet)
  1492. #endif /* EGL_NV_stream_socket_inet */
  1493. /* ----------------------- EGL_NV_stream_socket_unix ----------------------- */
  1494. #ifndef EGL_NV_stream_socket_unix
  1495. #define EGL_NV_stream_socket_unix 1
  1496. #define EGL_SOCKET_TYPE_UNIX_NV 0x324E
  1497. #define EGLEW_NV_stream_socket_unix EGLEW_GET_VAR(__EGLEW_NV_stream_socket_unix)
  1498. #endif /* EGL_NV_stream_socket_unix */
  1499. /* --------------------------- EGL_NV_stream_sync -------------------------- */
  1500. #ifndef EGL_NV_stream_sync
  1501. #define EGL_NV_stream_sync 1
  1502. #define EGL_SYNC_TYPE_KHR 0x30F7
  1503. #define EGL_SYNC_NEW_FRAME_NV 0x321F
  1504. typedef EGLSyncKHR ( * PFNEGLCREATESTREAMSYNCNVPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint * attrib_list);
  1505. #define eglCreateStreamSyncNV EGLEW_GET_FUN(__eglewCreateStreamSyncNV)
  1506. #define EGLEW_NV_stream_sync EGLEW_GET_VAR(__EGLEW_NV_stream_sync)
  1507. #endif /* EGL_NV_stream_sync */
  1508. /* ------------------------------ EGL_NV_sync ------------------------------ */
  1509. #ifndef EGL_NV_sync
  1510. #define EGL_NV_sync 1
  1511. #define EGL_SYNC_FLUSH_COMMANDS_BIT_NV 0x0001
  1512. #define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV 0x30E6
  1513. #define EGL_SYNC_STATUS_NV 0x30E7
  1514. #define EGL_SIGNALED_NV 0x30E8
  1515. #define EGL_UNSIGNALED_NV 0x30E9
  1516. #define EGL_ALREADY_SIGNALED_NV 0x30EA
  1517. #define EGL_TIMEOUT_EXPIRED_NV 0x30EB
  1518. #define EGL_CONDITION_SATISFIED_NV 0x30EC
  1519. #define EGL_SYNC_TYPE_NV 0x30ED
  1520. #define EGL_SYNC_CONDITION_NV 0x30EE
  1521. #define EGL_SYNC_FENCE_NV 0x30EF
  1522. #define EGL_FOREVER_NV 0xFFFFFFFFFFFFFFFF
  1523. typedef EGLint ( * PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout);
  1524. typedef EGLSyncNV ( * PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay dpy, EGLenum condition, const EGLint * attrib_list);
  1525. typedef EGLBoolean ( * PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV sync);
  1526. typedef EGLBoolean ( * PFNEGLFENCENVPROC) (EGLSyncNV sync);
  1527. typedef EGLBoolean ( * PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV sync, EGLint attribute, EGLint * value);
  1528. typedef EGLBoolean ( * PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV sync, EGLenum mode);
  1529. #define eglClientWaitSyncNV EGLEW_GET_FUN(__eglewClientWaitSyncNV)
  1530. #define eglCreateFenceSyncNV EGLEW_GET_FUN(__eglewCreateFenceSyncNV)
  1531. #define eglDestroySyncNV EGLEW_GET_FUN(__eglewDestroySyncNV)
  1532. #define eglFenceNV EGLEW_GET_FUN(__eglewFenceNV)
  1533. #define eglGetSyncAttribNV EGLEW_GET_FUN(__eglewGetSyncAttribNV)
  1534. #define eglSignalSyncNV EGLEW_GET_FUN(__eglewSignalSyncNV)
  1535. #define EGLEW_NV_sync EGLEW_GET_VAR(__EGLEW_NV_sync)
  1536. #endif /* EGL_NV_sync */
  1537. /* --------------------------- EGL_NV_system_time -------------------------- */
  1538. #ifndef EGL_NV_system_time
  1539. #define EGL_NV_system_time 1
  1540. typedef EGLuint64NV ( * PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) ( void );
  1541. typedef EGLuint64NV ( * PFNEGLGETSYSTEMTIMENVPROC) ( void );
  1542. #define eglGetSystemTimeFrequencyNV EGLEW_GET_FUN(__eglewGetSystemTimeFrequencyNV)
  1543. #define eglGetSystemTimeNV EGLEW_GET_FUN(__eglewGetSystemTimeNV)
  1544. #define EGLEW_NV_system_time EGLEW_GET_VAR(__EGLEW_NV_system_time)
  1545. #endif /* EGL_NV_system_time */
  1546. /* --------------------- EGL_TIZEN_image_native_buffer --------------------- */
  1547. #ifndef EGL_TIZEN_image_native_buffer
  1548. #define EGL_TIZEN_image_native_buffer 1
  1549. #define EGL_NATIVE_BUFFER_TIZEN 0x32A0
  1550. #define EGLEW_TIZEN_image_native_buffer EGLEW_GET_VAR(__EGLEW_TIZEN_image_native_buffer)
  1551. #endif /* EGL_TIZEN_image_native_buffer */
  1552. /* --------------------- EGL_TIZEN_image_native_surface -------------------- */
  1553. #ifndef EGL_TIZEN_image_native_surface
  1554. #define EGL_TIZEN_image_native_surface 1
  1555. #define EGL_NATIVE_SURFACE_TIZEN 0x32A1
  1556. #define EGLEW_TIZEN_image_native_surface EGLEW_GET_VAR(__EGLEW_TIZEN_image_native_surface)
  1557. #endif /* EGL_TIZEN_image_native_surface */
  1558. /* ------------------------------------------------------------------------- */
  1559. #define EGLEW_FUN_EXPORT GLEW_FUN_EXPORT
  1560. #define EGLEW_VAR_EXPORT GLEW_VAR_EXPORT
  1561. EGLEW_FUN_EXPORT PFNEGLCHOOSECONFIGPROC __eglewChooseConfig;
  1562. EGLEW_FUN_EXPORT PFNEGLCOPYBUFFERSPROC __eglewCopyBuffers;
  1563. EGLEW_FUN_EXPORT PFNEGLCREATECONTEXTPROC __eglewCreateContext;
  1564. EGLEW_FUN_EXPORT PFNEGLCREATEPBUFFERSURFACEPROC __eglewCreatePbufferSurface;
  1565. EGLEW_FUN_EXPORT PFNEGLCREATEPIXMAPSURFACEPROC __eglewCreatePixmapSurface;
  1566. EGLEW_FUN_EXPORT PFNEGLCREATEWINDOWSURFACEPROC __eglewCreateWindowSurface;
  1567. EGLEW_FUN_EXPORT PFNEGLDESTROYCONTEXTPROC __eglewDestroyContext;
  1568. EGLEW_FUN_EXPORT PFNEGLDESTROYSURFACEPROC __eglewDestroySurface;
  1569. EGLEW_FUN_EXPORT PFNEGLGETCONFIGATTRIBPROC __eglewGetConfigAttrib;
  1570. EGLEW_FUN_EXPORT PFNEGLGETCONFIGSPROC __eglewGetConfigs;
  1571. EGLEW_FUN_EXPORT PFNEGLGETCURRENTDISPLAYPROC __eglewGetCurrentDisplay;
  1572. EGLEW_FUN_EXPORT PFNEGLGETCURRENTSURFACEPROC __eglewGetCurrentSurface;
  1573. EGLEW_FUN_EXPORT PFNEGLGETDISPLAYPROC __eglewGetDisplay;
  1574. EGLEW_FUN_EXPORT PFNEGLGETERRORPROC __eglewGetError;
  1575. EGLEW_FUN_EXPORT PFNEGLINITIALIZEPROC __eglewInitialize;
  1576. EGLEW_FUN_EXPORT PFNEGLMAKECURRENTPROC __eglewMakeCurrent;
  1577. EGLEW_FUN_EXPORT PFNEGLQUERYCONTEXTPROC __eglewQueryContext;
  1578. EGLEW_FUN_EXPORT PFNEGLQUERYSTRINGPROC __eglewQueryString;
  1579. EGLEW_FUN_EXPORT PFNEGLQUERYSURFACEPROC __eglewQuerySurface;
  1580. EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSPROC __eglewSwapBuffers;
  1581. EGLEW_FUN_EXPORT PFNEGLTERMINATEPROC __eglewTerminate;
  1582. EGLEW_FUN_EXPORT PFNEGLWAITGLPROC __eglewWaitGL;
  1583. EGLEW_FUN_EXPORT PFNEGLWAITNATIVEPROC __eglewWaitNative;
  1584. EGLEW_FUN_EXPORT PFNEGLBINDTEXIMAGEPROC __eglewBindTexImage;
  1585. EGLEW_FUN_EXPORT PFNEGLRELEASETEXIMAGEPROC __eglewReleaseTexImage;
  1586. EGLEW_FUN_EXPORT PFNEGLSURFACEATTRIBPROC __eglewSurfaceAttrib;
  1587. EGLEW_FUN_EXPORT PFNEGLSWAPINTERVALPROC __eglewSwapInterval;
  1588. EGLEW_FUN_EXPORT PFNEGLBINDAPIPROC __eglewBindAPI;
  1589. EGLEW_FUN_EXPORT PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC __eglewCreatePbufferFromClientBuffer;
  1590. EGLEW_FUN_EXPORT PFNEGLQUERYAPIPROC __eglewQueryAPI;
  1591. EGLEW_FUN_EXPORT PFNEGLRELEASETHREADPROC __eglewReleaseThread;
  1592. EGLEW_FUN_EXPORT PFNEGLWAITCLIENTPROC __eglewWaitClient;
  1593. EGLEW_FUN_EXPORT PFNEGLGETCURRENTCONTEXTPROC __eglewGetCurrentContext;
  1594. EGLEW_FUN_EXPORT PFNEGLCLIENTWAITSYNCPROC __eglewClientWaitSync;
  1595. EGLEW_FUN_EXPORT PFNEGLCREATEIMAGEPROC __eglewCreateImage;
  1596. EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC __eglewCreatePlatformPixmapSurface;
  1597. EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMWINDOWSURFACEPROC __eglewCreatePlatformWindowSurface;
  1598. EGLEW_FUN_EXPORT PFNEGLCREATESYNCPROC __eglewCreateSync;
  1599. EGLEW_FUN_EXPORT PFNEGLDESTROYIMAGEPROC __eglewDestroyImage;
  1600. EGLEW_FUN_EXPORT PFNEGLDESTROYSYNCPROC __eglewDestroySync;
  1601. EGLEW_FUN_EXPORT PFNEGLGETPLATFORMDISPLAYPROC __eglewGetPlatformDisplay;
  1602. EGLEW_FUN_EXPORT PFNEGLGETSYNCATTRIBPROC __eglewGetSyncAttrib;
  1603. EGLEW_FUN_EXPORT PFNEGLWAITSYNCPROC __eglewWaitSync;
  1604. EGLEW_FUN_EXPORT PFNEGLSETBLOBCACHEFUNCSANDROIDPROC __eglewSetBlobCacheFuncsANDROID;
  1605. EGLEW_FUN_EXPORT PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC __eglewCreateNativeClientBufferANDROID;
  1606. EGLEW_FUN_EXPORT PFNEGLDUPNATIVEFENCEFDANDROIDPROC __eglewDupNativeFenceFDANDROID;
  1607. EGLEW_FUN_EXPORT PFNEGLPRESENTATIONTIMEANDROIDPROC __eglewPresentationTimeANDROID;
  1608. EGLEW_FUN_EXPORT PFNEGLQUERYSURFACEPOINTERANGLEPROC __eglewQuerySurfacePointerANGLE;
  1609. EGLEW_FUN_EXPORT PFNEGLQUERYDEVICESEXTPROC __eglewQueryDevicesEXT;
  1610. EGLEW_FUN_EXPORT PFNEGLQUERYDEVICEATTRIBEXTPROC __eglewQueryDeviceAttribEXT;
  1611. EGLEW_FUN_EXPORT PFNEGLQUERYDEVICESTRINGEXTPROC __eglewQueryDeviceStringEXT;
  1612. EGLEW_FUN_EXPORT PFNEGLQUERYDISPLAYATTRIBEXTPROC __eglewQueryDisplayAttribEXT;
  1613. EGLEW_FUN_EXPORT PFNEGLQUERYDMABUFFORMATSEXTPROC __eglewQueryDmaBufFormatsEXT;
  1614. EGLEW_FUN_EXPORT PFNEGLQUERYDMABUFMODIFIERSEXTPROC __eglewQueryDmaBufModifiersEXT;
  1615. EGLEW_FUN_EXPORT PFNEGLGETOUTPUTLAYERSEXTPROC __eglewGetOutputLayersEXT;
  1616. EGLEW_FUN_EXPORT PFNEGLGETOUTPUTPORTSEXTPROC __eglewGetOutputPortsEXT;
  1617. EGLEW_FUN_EXPORT PFNEGLOUTPUTLAYERATTRIBEXTPROC __eglewOutputLayerAttribEXT;
  1618. EGLEW_FUN_EXPORT PFNEGLOUTPUTPORTATTRIBEXTPROC __eglewOutputPortAttribEXT;
  1619. EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC __eglewQueryOutputLayerAttribEXT;
  1620. EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC __eglewQueryOutputLayerStringEXT;
  1621. EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC __eglewQueryOutputPortAttribEXT;
  1622. EGLEW_FUN_EXPORT PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC __eglewQueryOutputPortStringEXT;
  1623. EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC __eglewCreatePlatformPixmapSurfaceEXT;
  1624. EGLEW_FUN_EXPORT PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC __eglewCreatePlatformWindowSurfaceEXT;
  1625. EGLEW_FUN_EXPORT PFNEGLGETPLATFORMDISPLAYEXTPROC __eglewGetPlatformDisplayEXT;
  1626. EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMEROUTPUTEXTPROC __eglewStreamConsumerOutputEXT;
  1627. EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC __eglewSwapBuffersWithDamageEXT;
  1628. EGLEW_FUN_EXPORT PFNEGLCREATEPIXMAPSURFACEHIPROC __eglewCreatePixmapSurfaceHI;
  1629. EGLEW_FUN_EXPORT PFNEGLCREATESYNC64KHRPROC __eglewCreateSync64KHR;
  1630. EGLEW_FUN_EXPORT PFNEGLDEBUGMESSAGECONTROLKHRPROC __eglewDebugMessageControlKHR;
  1631. EGLEW_FUN_EXPORT PFNEGLLABELOBJECTKHRPROC __eglewLabelObjectKHR;
  1632. EGLEW_FUN_EXPORT PFNEGLQUERYDEBUGKHRPROC __eglewQueryDebugKHR;
  1633. EGLEW_FUN_EXPORT PFNEGLCREATEIMAGEKHRPROC __eglewCreateImageKHR;
  1634. EGLEW_FUN_EXPORT PFNEGLDESTROYIMAGEKHRPROC __eglewDestroyImageKHR;
  1635. EGLEW_FUN_EXPORT PFNEGLLOCKSURFACEKHRPROC __eglewLockSurfaceKHR;
  1636. EGLEW_FUN_EXPORT PFNEGLUNLOCKSURFACEKHRPROC __eglewUnlockSurfaceKHR;
  1637. EGLEW_FUN_EXPORT PFNEGLQUERYSURFACE64KHRPROC __eglewQuerySurface64KHR;
  1638. EGLEW_FUN_EXPORT PFNEGLSETDAMAGEREGIONKHRPROC __eglewSetDamageRegionKHR;
  1639. EGLEW_FUN_EXPORT PFNEGLCLIENTWAITSYNCKHRPROC __eglewClientWaitSyncKHR;
  1640. EGLEW_FUN_EXPORT PFNEGLCREATESYNCKHRPROC __eglewCreateSyncKHR;
  1641. EGLEW_FUN_EXPORT PFNEGLDESTROYSYNCKHRPROC __eglewDestroySyncKHR;
  1642. EGLEW_FUN_EXPORT PFNEGLGETSYNCATTRIBKHRPROC __eglewGetSyncAttribKHR;
  1643. EGLEW_FUN_EXPORT PFNEGLSIGNALSYNCKHRPROC __eglewSignalSyncKHR;
  1644. EGLEW_FUN_EXPORT PFNEGLCREATESTREAMKHRPROC __eglewCreateStreamKHR;
  1645. EGLEW_FUN_EXPORT PFNEGLDESTROYSTREAMKHRPROC __eglewDestroyStreamKHR;
  1646. EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMKHRPROC __eglewQueryStreamKHR;
  1647. EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMU64KHRPROC __eglewQueryStreamu64KHR;
  1648. EGLEW_FUN_EXPORT PFNEGLSTREAMATTRIBKHRPROC __eglewStreamAttribKHR;
  1649. EGLEW_FUN_EXPORT PFNEGLCREATESTREAMATTRIBKHRPROC __eglewCreateStreamAttribKHR;
  1650. EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMATTRIBKHRPROC __eglewQueryStreamAttribKHR;
  1651. EGLEW_FUN_EXPORT PFNEGLSETSTREAMATTRIBKHRPROC __eglewSetStreamAttribKHR;
  1652. EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC __eglewStreamConsumerAcquireAttribKHR;
  1653. EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC __eglewStreamConsumerReleaseAttribKHR;
  1654. EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERACQUIREKHRPROC __eglewStreamConsumerAcquireKHR;
  1655. EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC __eglewStreamConsumerGLTextureExternalKHR;
  1656. EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERRELEASEKHRPROC __eglewStreamConsumerReleaseKHR;
  1657. EGLEW_FUN_EXPORT PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC __eglewCreateStreamFromFileDescriptorKHR;
  1658. EGLEW_FUN_EXPORT PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC __eglewGetStreamFileDescriptorKHR;
  1659. EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMTIMEKHRPROC __eglewQueryStreamTimeKHR;
  1660. EGLEW_FUN_EXPORT PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC __eglewCreateStreamProducerSurfaceKHR;
  1661. EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC __eglewSwapBuffersWithDamageKHR;
  1662. EGLEW_FUN_EXPORT PFNEGLWAITSYNCKHRPROC __eglewWaitSyncKHR;
  1663. EGLEW_FUN_EXPORT PFNEGLCREATEDRMIMAGEMESAPROC __eglewCreateDRMImageMESA;
  1664. EGLEW_FUN_EXPORT PFNEGLEXPORTDRMIMAGEMESAPROC __eglewExportDRMImageMESA;
  1665. EGLEW_FUN_EXPORT PFNEGLEXPORTDMABUFIMAGEMESAPROC __eglewExportDMABUFImageMESA;
  1666. EGLEW_FUN_EXPORT PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC __eglewExportDMABUFImageQueryMESA;
  1667. EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSREGIONNOKPROC __eglewSwapBuffersRegionNOK;
  1668. EGLEW_FUN_EXPORT PFNEGLSWAPBUFFERSREGION2NOKPROC __eglewSwapBuffersRegion2NOK;
  1669. EGLEW_FUN_EXPORT PFNEGLQUERYNATIVEDISPLAYNVPROC __eglewQueryNativeDisplayNV;
  1670. EGLEW_FUN_EXPORT PFNEGLQUERYNATIVEPIXMAPNVPROC __eglewQueryNativePixmapNV;
  1671. EGLEW_FUN_EXPORT PFNEGLQUERYNATIVEWINDOWNVPROC __eglewQueryNativeWindowNV;
  1672. EGLEW_FUN_EXPORT PFNEGLPOSTSUBBUFFERNVPROC __eglewPostSubBufferNV;
  1673. EGLEW_FUN_EXPORT PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC __eglewStreamConsumerGLTextureExternalAttribsNV;
  1674. EGLEW_FUN_EXPORT PFNEGLQUERYDISPLAYATTRIBNVPROC __eglewQueryDisplayAttribNV;
  1675. EGLEW_FUN_EXPORT PFNEGLQUERYSTREAMMETADATANVPROC __eglewQueryStreamMetadataNV;
  1676. EGLEW_FUN_EXPORT PFNEGLSETSTREAMMETADATANVPROC __eglewSetStreamMetadataNV;
  1677. EGLEW_FUN_EXPORT PFNEGLRESETSTREAMNVPROC __eglewResetStreamNV;
  1678. EGLEW_FUN_EXPORT PFNEGLCREATESTREAMSYNCNVPROC __eglewCreateStreamSyncNV;
  1679. EGLEW_FUN_EXPORT PFNEGLCLIENTWAITSYNCNVPROC __eglewClientWaitSyncNV;
  1680. EGLEW_FUN_EXPORT PFNEGLCREATEFENCESYNCNVPROC __eglewCreateFenceSyncNV;
  1681. EGLEW_FUN_EXPORT PFNEGLDESTROYSYNCNVPROC __eglewDestroySyncNV;
  1682. EGLEW_FUN_EXPORT PFNEGLFENCENVPROC __eglewFenceNV;
  1683. EGLEW_FUN_EXPORT PFNEGLGETSYNCATTRIBNVPROC __eglewGetSyncAttribNV;
  1684. EGLEW_FUN_EXPORT PFNEGLSIGNALSYNCNVPROC __eglewSignalSyncNV;
  1685. EGLEW_FUN_EXPORT PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC __eglewGetSystemTimeFrequencyNV;
  1686. EGLEW_FUN_EXPORT PFNEGLGETSYSTEMTIMENVPROC __eglewGetSystemTimeNV;
  1687. EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_0;
  1688. EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_1;
  1689. EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_2;
  1690. EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_3;
  1691. EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_4;
  1692. EGLEW_VAR_EXPORT GLboolean __EGLEW_VERSION_1_5;
  1693. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_blob_cache;
  1694. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_create_native_client_buffer;
  1695. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_framebuffer_target;
  1696. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_front_buffer_auto_refresh;
  1697. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_image_native_buffer;
  1698. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_native_fence_sync;
  1699. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_presentation_time;
  1700. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANDROID_recordable;
  1701. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_d3d_share_handle_client_buffer;
  1702. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_device_d3d;
  1703. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_query_surface_pointer;
  1704. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_surface_d3d_texture_2d_share_handle;
  1705. EGLEW_VAR_EXPORT GLboolean __EGLEW_ANGLE_window_fixed_size;
  1706. EGLEW_VAR_EXPORT GLboolean __EGLEW_ARM_implicit_external_sync;
  1707. EGLEW_VAR_EXPORT GLboolean __EGLEW_ARM_pixmap_multisample_discard;
  1708. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_buffer_age;
  1709. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_client_extensions;
  1710. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_create_context_robustness;
  1711. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_base;
  1712. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_drm;
  1713. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_enumeration;
  1714. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_openwf;
  1715. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_device_query;
  1716. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_gl_colorspace_bt2020_linear;
  1717. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_gl_colorspace_bt2020_pq;
  1718. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_gl_colorspace_scrgb_linear;
  1719. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_image_dma_buf_import;
  1720. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_image_dma_buf_import_modifiers;
  1721. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_multiview_window;
  1722. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_output_base;
  1723. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_output_drm;
  1724. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_output_openwf;
  1725. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_pixel_format_float;
  1726. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_base;
  1727. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_device;
  1728. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_wayland;
  1729. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_platform_x11;
  1730. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_protected_content;
  1731. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_protected_surface;
  1732. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_stream_consumer_egloutput;
  1733. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_surface_SMPTE2086_metadata;
  1734. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_swap_buffers_with_damage;
  1735. EGLEW_VAR_EXPORT GLboolean __EGLEW_EXT_yuv_surface;
  1736. EGLEW_VAR_EXPORT GLboolean __EGLEW_HI_clientpixmap;
  1737. EGLEW_VAR_EXPORT GLboolean __EGLEW_HI_colorformats;
  1738. EGLEW_VAR_EXPORT GLboolean __EGLEW_IMG_context_priority;
  1739. EGLEW_VAR_EXPORT GLboolean __EGLEW_IMG_image_plane_attribs;
  1740. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_cl_event;
  1741. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_cl_event2;
  1742. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_client_get_all_proc_addresses;
  1743. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_config_attribs;
  1744. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_context_flush_control;
  1745. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_create_context;
  1746. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_create_context_no_error;
  1747. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_debug;
  1748. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_fence_sync;
  1749. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_get_all_proc_addresses;
  1750. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_colorspace;
  1751. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_renderbuffer_image;
  1752. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_texture_2D_image;
  1753. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_texture_3D_image;
  1754. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_gl_texture_cubemap_image;
  1755. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_image;
  1756. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_image_base;
  1757. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_image_pixmap;
  1758. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_lock_surface;
  1759. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_lock_surface2;
  1760. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_lock_surface3;
  1761. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_mutable_render_buffer;
  1762. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_no_config_context;
  1763. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_partial_update;
  1764. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_android;
  1765. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_gbm;
  1766. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_wayland;
  1767. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_platform_x11;
  1768. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_reusable_sync;
  1769. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream;
  1770. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_attrib;
  1771. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_consumer_gltexture;
  1772. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_cross_process_fd;
  1773. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_fifo;
  1774. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_producer_aldatalocator;
  1775. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_stream_producer_eglsurface;
  1776. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_surfaceless_context;
  1777. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_swap_buffers_with_damage;
  1778. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_vg_parent_image;
  1779. EGLEW_VAR_EXPORT GLboolean __EGLEW_KHR_wait_sync;
  1780. EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_drm_image;
  1781. EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_image_dma_buf_export;
  1782. EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_platform_gbm;
  1783. EGLEW_VAR_EXPORT GLboolean __EGLEW_MESA_platform_surfaceless;
  1784. EGLEW_VAR_EXPORT GLboolean __EGLEW_NOK_swap_region;
  1785. EGLEW_VAR_EXPORT GLboolean __EGLEW_NOK_swap_region2;
  1786. EGLEW_VAR_EXPORT GLboolean __EGLEW_NOK_texture_from_pixmap;
  1787. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_3dvision_surface;
  1788. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_coverage_sample;
  1789. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_coverage_sample_resolve;
  1790. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_cuda_event;
  1791. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_depth_nonlinear;
  1792. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_device_cuda;
  1793. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_native_query;
  1794. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_post_convert_rounding;
  1795. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_post_sub_buffer;
  1796. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_robustness_video_memory_purge;
  1797. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_consumer_gltexture_yuv;
  1798. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_display;
  1799. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_object;
  1800. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_partition;
  1801. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_process;
  1802. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_cross_system;
  1803. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_fifo_next;
  1804. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_fifo_synchronous;
  1805. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_frame_limits;
  1806. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_metadata;
  1807. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_remote;
  1808. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_reset;
  1809. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_socket;
  1810. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_socket_inet;
  1811. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_socket_unix;
  1812. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_stream_sync;
  1813. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_sync;
  1814. EGLEW_VAR_EXPORT GLboolean __EGLEW_NV_system_time;
  1815. EGLEW_VAR_EXPORT GLboolean __EGLEW_TIZEN_image_native_buffer;
  1816. EGLEW_VAR_EXPORT GLboolean __EGLEW_TIZEN_image_native_surface;
  1817. /* ------------------------------------------------------------------------ */
  1818. GLEWAPI GLenum GLEWAPIENTRY eglewInit (EGLDisplay display);
  1819. GLEWAPI GLboolean GLEWAPIENTRY eglewIsSupported (const char *name);
  1820. #define EGLEW_GET_VAR(x) (*(const GLboolean*)&x)
  1821. #define EGLEW_GET_FUN(x) x
  1822. GLEWAPI GLboolean GLEWAPIENTRY eglewGetExtension (const char *name);
  1823. #ifdef __cplusplus
  1824. }
  1825. #endif
  1826. #endif /* __eglew_h__ */