16438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef __eglext_h_
26438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define __eglext_h_
36438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
46438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifdef __cplusplus
56438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paulextern "C" {
66438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
76438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
86438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul/*
945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick** Copyright (c) 2007-2012 The Khronos Group Inc.
106438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul**
116438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** Permission is hereby granted, free of charge, to any person obtaining a
126438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** copy of this software and/or associated documentation files (the
136438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** "Materials"), to deal in the Materials without restriction, including
146438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** without limitation the rights to use, copy, modify, merge, publish,
156438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** distribute, sublicense, and/or sell copies of the Materials, and to
166438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** permit persons to whom the Materials are furnished to do so, subject to
176438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** the following conditions:
186438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul**
196438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** The above copyright notice and this permission notice shall be included
206438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** in all copies or substantial portions of the Materials.
216438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul**
226438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
236438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
246438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
256438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
266438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
276438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
286438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
296438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul*/
306438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
316438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#include <EGL/eglplatform.h>
326438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
336438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul/*************************************************************/
346438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
356438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul/* Header file version number */
366438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul/* Current version at http://www.khronos.org/registry/egl/ */
3745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick/* $Revision: 18699 $ on $Date: 2012-07-31 03:04:59 -0700 (Tue, 31 Jul 2012) $ */
3845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_EGLEXT_VERSION 14
396438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
406438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_config_attribs
416438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_config_attribs 1
426438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_CONFORMANT_KHR			0x3042	/* EGLConfig attribute */
436438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_VG_COLORSPACE_LINEAR_BIT_KHR	0x0020	/* EGL_SURFACE_TYPE bitfield */
446438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR		0x0040	/* EGL_SURFACE_TYPE bitfield */
456438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
466438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
476438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_lock_surface
486438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_lock_surface 1
496438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_READ_SURFACE_BIT_KHR		0x0001	/* EGL_LOCK_USAGE_HINT_KHR bitfield */
506438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_WRITE_SURFACE_BIT_KHR		0x0002	/* EGL_LOCK_USAGE_HINT_KHR bitfield */
516438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_LOCK_SURFACE_BIT_KHR		0x0080	/* EGL_SURFACE_TYPE bitfield */
526438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_OPTIMAL_FORMAT_BIT_KHR		0x0100	/* EGL_SURFACE_TYPE bitfield */
536438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_MATCH_FORMAT_KHR			0x3043	/* EGLConfig attribute */
546438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_FORMAT_RGB_565_EXACT_KHR		0x30C0	/* EGL_MATCH_FORMAT_KHR value */
556438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_FORMAT_RGB_565_KHR			0x30C1	/* EGL_MATCH_FORMAT_KHR value */
566438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_FORMAT_RGBA_8888_EXACT_KHR		0x30C2	/* EGL_MATCH_FORMAT_KHR value */
576438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_FORMAT_RGBA_8888_KHR		0x30C3	/* EGL_MATCH_FORMAT_KHR value */
586438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_MAP_PRESERVE_PIXELS_KHR		0x30C4	/* eglLockSurfaceKHR attribute */
596438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_LOCK_USAGE_HINT_KHR			0x30C5	/* eglLockSurfaceKHR attribute */
606438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_POINTER_KHR			0x30C6	/* eglQuerySurface attribute */
616438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_PITCH_KHR			0x30C7	/* eglQuerySurface attribute */
626438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_ORIGIN_KHR			0x30C8	/* eglQuerySurface attribute */
636438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR		0x30C9	/* eglQuerySurface attribute */
646438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR	0x30CA	/* eglQuerySurface attribute */
656438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR	0x30CB	/* eglQuerySurface attribute */
666438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR	0x30CC	/* eglQuerySurface attribute */
676438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR	0x30CD	/* eglQuerySurface attribute */
686438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_LOWER_LEFT_KHR			0x30CE	/* EGL_BITMAP_ORIGIN_KHR value */
696438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_UPPER_LEFT_KHR			0x30CF	/* EGL_BITMAP_ORIGIN_KHR value */
706438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifdef EGL_EGLEXT_PROTOTYPES
716438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian PaulEGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
726438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian PaulEGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay display, EGLSurface surface);
736438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif /* EGL_EGLEXT_PROTOTYPES */
746438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paultypedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list);
756438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paultypedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface);
766438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
776438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
786438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_image
796438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_image 1
806438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_NATIVE_PIXMAP_KHR			0x30B0	/* eglCreateImageKHR target */
816438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paultypedef void *EGLImageKHR;
8295f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_NO_IMAGE_KHR			((EGLImageKHR)0)
836438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifdef EGL_EGLEXT_PROTOTYPES
8495f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I WuEGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
856438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian PaulEGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image);
866438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif /* EGL_EGLEXT_PROTOTYPES */
8795f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
886438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paultypedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image);
896438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
906438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
916438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_vg_parent_image
926438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_vg_parent_image 1
936438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_VG_PARENT_IMAGE_KHR			0x30BA	/* eglCreateImageKHR target */
946438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
956438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
966438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_gl_texture_2D_image
976438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_gl_texture_2D_image 1
986438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_2D_KHR			0x30B1	/* eglCreateImageKHR target */
996438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_LEVEL_KHR		0x30BC	/* eglCreateImageKHR attribute */
1006438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
1016438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
1026438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_gl_texture_cubemap_image
1036438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_gl_texture_cubemap_image 1
1046438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR	0x30B3	/* eglCreateImageKHR target */
1056438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR	0x30B4	/* eglCreateImageKHR target */
1066438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR	0x30B5	/* eglCreateImageKHR target */
1076438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR	0x30B6	/* eglCreateImageKHR target */
1086438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR	0x30B7	/* eglCreateImageKHR target */
1096438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR	0x30B8	/* eglCreateImageKHR target */
1106438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
1116438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
1126438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_gl_texture_3D_image
1136438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_gl_texture_3D_image 1
1146438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_3D_KHR			0x30B2	/* eglCreateImageKHR target */
1156438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_TEXTURE_ZOFFSET_KHR		0x30BD	/* eglCreateImageKHR attribute */
1166438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
1176438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
1186438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifndef EGL_KHR_gl_renderbuffer_image
1196438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_KHR_gl_renderbuffer_image 1
1206438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#define EGL_GL_RENDERBUFFER_KHR			0x30B9	/* eglCreateImageKHR target */
1216438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
1226438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
123b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#if KHRONOS_SUPPORT_INT64   /* EGLTimeKHR requires 64-bit uint support */
12495f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#ifndef EGL_KHR_reusable_sync
12595f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_KHR_reusable_sync 1
12695f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu
12795f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef void* EGLSyncKHR;
12895f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef khronos_utime_nanoseconds_t EGLTimeKHR;
12995f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu
13095f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_SYNC_STATUS_KHR			0x30F1
13195f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_SIGNALED_KHR			0x30F2
13295f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_UNSIGNALED_KHR			0x30F3
13395f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_TIMEOUT_EXPIRED_KHR			0x30F5
13495f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_CONDITION_SATISFIED_KHR		0x30F6
13595f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_SYNC_TYPE_KHR			0x30F7
13695f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_SYNC_REUSABLE_KHR			0x30FA
13795f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR		0x0001	/* eglClientWaitSyncKHR <flags> bitfield */
13895f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_FOREVER_KHR				0xFFFFFFFFFFFFFFFFull
13995f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_NO_SYNC_KHR				((EGLSyncKHR)0)
14095f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#ifdef EGL_EGLEXT_PROTOTYPES
14195f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I WuEGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
14295f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I WuEGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync);
14395f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I WuEGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
14495f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I WuEGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
14595f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I WuEGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
14695f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#endif /* EGL_EGLEXT_PROTOTYPES */
14795f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
14895f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync);
14995f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
15095f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
15195f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
15295f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#endif
153b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
1542fe1a55ab2deeae7a9492e0b127875f5e0cbb4d0Brian Paul
15595f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#ifndef EGL_KHR_image_base
15695f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_KHR_image_base 1
15795f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu/* Most interfaces defined by EGL_KHR_image_pixmap above */
15895f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_IMAGE_PRESERVED_KHR			0x30D2	/* eglCreateImageKHR attribute */
15995f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#endif
16095f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu
16195f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#ifndef EGL_KHR_image_pixmap
16295f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_KHR_image_pixmap 1
16395f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu/* Interfaces defined by EGL_KHR_image above */
16495f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#endif
16595f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu
16695f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#ifndef EGL_IMG_context_priority
16795f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_IMG_context_priority 1
16895f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_CONTEXT_PRIORITY_LEVEL_IMG		0x3100
16995f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_CONTEXT_PRIORITY_HIGH_IMG		0x3101
17095f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_CONTEXT_PRIORITY_MEDIUM_IMG		0x3102
17195f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#define EGL_CONTEXT_PRIORITY_LOW_IMG		0x3103
17295f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu#endif
17395f8f75ad8bdb1d8e1cc16ea91fed8c407c36abdChia-I Wu
174b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifndef EGL_KHR_lock_surface2
175b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_KHR_lock_surface2 1
176b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_BITMAP_PIXEL_SIZE_KHR		0x3110
177b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
178b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
179b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifndef EGL_NV_coverage_sample
180b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_NV_coverage_sample 1
18145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_COVERAGE_BUFFERS_NV			0x30E0
18245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_COVERAGE_SAMPLES_NV			0x30E1
183b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
184b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
185b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifndef EGL_NV_depth_nonlinear
186b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_NV_depth_nonlinear 1
18745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_DEPTH_ENCODING_NV			0x30E2
188b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_DEPTH_ENCODING_NONE_NV 0
18945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_DEPTH_ENCODING_NONLINEAR_NV		0x30E3
190b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
191b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
192b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#if KHRONOS_SUPPORT_INT64   /* EGLTimeNV requires 64-bit uint support */
193b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifndef EGL_NV_sync
194b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_NV_sync 1
195b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV	0x30E6
196b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_STATUS_NV			0x30E7
197b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SIGNALED_NV				0x30E8
198b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_UNSIGNALED_NV			0x30E9
199b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_FLUSH_COMMANDS_BIT_NV		0x0001
200b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_FOREVER_NV				0xFFFFFFFFFFFFFFFFull
201b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_ALREADY_SIGNALED_NV			0x30EA
202b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_TIMEOUT_EXPIRED_NV			0x30EB
203b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_CONDITION_SATISFIED_NV		0x30EC
204b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_TYPE_NV			0x30ED
205b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_CONDITION_NV			0x30EE
206b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_FENCE_NV			0x30EF
207b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_NO_SYNC_NV				((EGLSyncNV)0)
208b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef void* EGLSyncNV;
209b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef khronos_utime_nanoseconds_t EGLTimeNV;
210b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifdef EGL_EGLEXT_PROTOTYPES
21145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLSyncNV EGLAPIENTRY eglCreateFenceSyncNV (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list);
21245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncNV (EGLSyncNV sync);
21345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglFenceNV (EGLSyncNV sync);
21445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLint EGLAPIENTRY eglClientWaitSyncNV (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout);
21545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncNV (EGLSyncNV sync, EGLenum mode);
21645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribNV (EGLSyncNV sync, EGLint attribute, EGLint *value);
217b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif /* EGL_EGLEXT_PROTOTYPES */
218b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef EGLSyncNV (EGLAPIENTRYP PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list);
219b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV sync);
220b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLFENCENVPROC) (EGLSyncNV sync);
221b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout);
222b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV sync, EGLenum mode);
223b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV sync, EGLint attribute, EGLint *value);
224b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
225b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
226b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
227b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#if KHRONOS_SUPPORT_INT64   /* Dependent on EGL_KHR_reusable_sync which requires 64-bit uint support */
228b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifndef EGL_KHR_fence_sync
229b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_KHR_fence_sync 1
230b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu/* Reuses most tokens and entry points from EGL_KHR_reusable_sync */
231b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR	0x30F0
232b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_CONDITION_KHR			0x30F8
233b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_SYNC_FENCE_KHR			0x30F9
234b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
235b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif
236b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
237b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifndef EGL_HI_clientpixmap
238b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_HI_clientpixmap 1
239b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
240b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu/* Surface Attribute */
241b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_CLIENT_PIXMAP_POINTER_HI		0x8F74
242b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu/*
243b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu * Structure representing a client pixmap
244b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu * (pixmap's data is in client-space memory).
245b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu */
246b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wustruct EGLClientPixmapHI
247b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu{
248b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu	void*		pData;
249b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu	EGLint		iWidth;
250b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu	EGLint		iHeight;
251b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu	EGLint		iStride;
252b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu};
253b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
254b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifdef EGL_EGLEXT_PROTOTYPES
255b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I WuEGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurfaceHI(EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI* pixmap);
256b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif /* EGL_EGLEXT_PROTOTYPES */
257b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wutypedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI* pixmap);
258b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif	/* EGL_HI_clientpixmap */
259b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu
260b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#ifndef EGL_HI_colorformats
261b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_HI_colorformats 1
262b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu/* Config Attribute */
263b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_COLOR_FORMAT_HI			0x8F70
264b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu/* Color Formats */
265b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_COLOR_RGB_HI			0x8F71
266b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_COLOR_RGBA_HI			0x8F72
267b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#define EGL_COLOR_ARGB_HI			0x8F73
268b2a575ff288a909eeddefe5168e29d15e6d17ab8Chia-I Wu#endif /* EGL_HI_colorformats */
26952c554a79d3ed3104a9f7d112faa9129073b5a25Kristian Høgsberg
270b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifndef EGL_MESA_drm_image
271b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_MESA_drm_image 1
272b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_DRM_BUFFER_FORMAT_MESA		0x31D0	    /* CreateDRMImageMESA attribute */
273b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_DRM_BUFFER_USE_MESA			0x31D1	    /* CreateDRMImageMESA attribute */
274b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA	0x31D2	    /* EGL_IMAGE_FORMAT_MESA attribute value */
275b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_DRM_BUFFER_MESA			0x31D3	    /* eglCreateImageKHR target */
276b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_DRM_BUFFER_STRIDE_MESA		0x31D4
277b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_DRM_BUFFER_USE_SCANOUT_MESA		0x00000001  /* EGL_DRM_BUFFER_USE_MESA bits */
278b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_DRM_BUFFER_USE_SHARE_MESA		0x00000002  /* EGL_DRM_BUFFER_USE_MESA bits */
279b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifdef EGL_EGLEXT_PROTOTYPES
280b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I WuEGLAPI EGLImageKHR EGLAPIENTRY eglCreateDRMImageMESA (EGLDisplay dpy, const EGLint *attrib_list);
281b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I WuEGLAPI EGLBoolean EGLAPIENTRY eglExportDRMImageMESA (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
282b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif /* EGL_EGLEXT_PROTOTYPES */
283b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wutypedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay dpy, const EGLint *attrib_list);
284b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
285b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
286b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
287b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifndef EGL_NV_post_sub_buffer
288b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_NV_post_sub_buffer 1
289b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_POST_SUB_BUFFER_SUPPORTED_NV	0x30BE
290b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifdef EGL_EGLEXT_PROTOTYPES
291b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I WuEGLAPI EGLBoolean EGLAPIENTRY eglPostSubBufferNV (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height);
292b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif /* EGL_EGLEXT_PROTOTYPES */
293b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLPOSTSUBBUFFERNVPROC) (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height);
294b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
295b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
296b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifndef EGL_ANGLE_query_surface_pointer
297b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_ANGLE_query_surface_pointer 1
298b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifdef EGL_EGLEXT_PROTOTYPES
299b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I WuEGLAPI EGLBoolean eglQuerySurfacePointerANGLE(EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
300b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
301b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wutypedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
302b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
303b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
304b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifndef EGL_ANGLE_surface_d3d_texture_2d_share_handle
305b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_ANGLE_surface_d3d_texture_2d_share_handle 1
306b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE	0x3200
307b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
308b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
309b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifndef EGL_NV_coverage_sample_resolve
310b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_NV_coverage_sample_resolve 1
311b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_COVERAGE_SAMPLE_RESOLVE_NV		0x3131
312b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_COVERAGE_SAMPLE_RESOLVE_DEFAULT_NV	0x3132
313b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_COVERAGE_SAMPLE_RESOLVE_NONE_NV	0x3133
314b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
315b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
31645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#if KHRONOS_SUPPORT_INT64   /* EGLuint64NV requires 64-bit uint support */
317b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifndef EGL_NV_system_time
318b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#define EGL_NV_system_time 1
319b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
320b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wutypedef khronos_utime_nanoseconds_t EGLuint64NV;
321b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
322b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#ifdef EGL_EGLEXT_PROTOTYPES
323b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I WuEGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeFrequencyNV(void);
324b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I WuEGLAPI EGLuint64NV EGLAPIENTRY eglGetSystemTimeNV(void);
325b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif /* EGL_EGLEXT_PROTOTYPES */
326b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wutypedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC) (void);
327b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wutypedef EGLuint64NV (EGLAPIENTRYP PFNEGLGETSYSTEMTIMENVPROC) (void);
328b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
329b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu#endif
330b7acfe7755a316910f883aeb05d834e1f3f7bd93Chia-I Wu
33145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#if KHRONOS_SUPPORT_INT64 /* EGLuint64KHR requires 64-bit uint support */
33245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_stream
33345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_stream 1
33445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef void* EGLStreamKHR;
33545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef khronos_uint64_t EGLuint64KHR;
33645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_NO_STREAM_KHR			((EGLStreamKHR)0)
33745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONSUMER_LATENCY_USEC_KHR		0x3210
33845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_PRODUCER_FRAME_KHR			0x3212
33945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONSUMER_FRAME_KHR			0x3213
34045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_STATE_KHR			0x3214
34145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_STATE_CREATED_KHR		0x3215
34245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_STATE_CONNECTING_KHR		0x3216
34345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_STATE_EMPTY_KHR		0x3217
34445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_STATE_NEW_FRAME_AVAILABLE_KHR    0x3218
34545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_STATE_OLD_FRAME_AVAILABLE_KHR    0x3219
34645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_STATE_DISCONNECTED_KHR	0x321A
34745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_BAD_STREAM_KHR			0x321B
34845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_BAD_STATE_KHR			0x321C
34945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_EGLEXT_PROTOTYPES
35045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamKHR(EGLDisplay dpy, const EGLint *attrib_list);
35145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglDestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream);
35245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglStreamAttribKHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
35345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamKHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
35445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamu64KHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
35545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif /* EGL_EGLEXT_PROTOTYPES */
35645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMKHRPROC)(EGLDisplay dpy, const EGLint *attrib_list);
35745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSTREAMKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
35845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMATTRIBKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
35945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
36045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMU64KHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
36145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
36245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
36345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
36445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
36545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_stream_consumer_gltexture
36645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_stream_consumer_gltexture 1
36745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR	0x321E
36845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_EGLEXT_PROTOTYPES
36945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerGLTextureExternalKHR(EGLDisplay dpy, EGLStreamKHR stream);
37045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerAcquireKHR(EGLDisplay dpy, EGLStreamKHR stream);
37145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerReleaseKHR(EGLDisplay dpy, EGLStreamKHR stream);
37245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif /* EGL_EGLEXT_PROTOTYPES */
37345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
37445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERACQUIREKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
37545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERRELEASEKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
37645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
37745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
37845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
37945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
38045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_stream_producer_eglsurface
38145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_stream_producer_eglsurface 1
38245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_BIT_KHR			0x0800
38345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_EGLEXT_PROTOTYPES
38445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLSurface EGLAPIENTRY eglCreateStreamProducerSurfaceKHR(EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
38545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif /* EGL_EGLEXT_PROTOTYPES */
38645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLSurface (EGLAPIENTRYP PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC)(EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
38745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
38845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
38945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
39045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
39145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_stream_producer_aldatalocator
39245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_stream_producer_aldatalocator 1
39345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
39445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
39545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
39645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
39745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_stream_fifo
39845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_stream_fifo 1
39945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick/* reuse EGLTimeKHR */
40045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_FIFO_LENGTH_KHR		0x31FC
40145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_TIME_NOW_KHR			0x31FD
40245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_TIME_CONSUMER_KHR		0x31FE
40345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_STREAM_TIME_PRODUCER_KHR		0x31FF
40445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_EGLEXT_PROTOTYPES
40545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamTimeKHR(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
40645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif /* EGL_EGLEXT_PROTOTYPES */
40745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMTIMEKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
40845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
40945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
41045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
41145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_EXT_create_context_robustness
41245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_EXT_create_context_robustness 1
41345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT	0x30BF
41445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT 0x3138
41545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_NO_RESET_NOTIFICATION_EXT		0x31BE
41645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_LOSE_CONTEXT_ON_RESET_EXT		0x31BF
41745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
41845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
41945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_ANGLE_d3d_share_handle_client_buffer
42045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_ANGLE_d3d_share_handle_client_buffer 1
42145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick/* reuse EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE */
42245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
42345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
42445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_create_context
42545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_create_context 1
42645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_MAJOR_VERSION_KHR			    EGL_CONTEXT_CLIENT_VERSION
42745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_MINOR_VERSION_KHR			    0x30FB
42845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_FLAGS_KHR				    0x30FC
42945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR		    0x30FD
43045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR  0x31BD
43145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_NO_RESET_NOTIFICATION_KHR			    0x31BE
43245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_LOSE_CONTEXT_ON_RESET_KHR			    0x31BF
43345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR		    0x00000001
43445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR	    0x00000002
43545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR	    0x00000004
43645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR		    0x00000001
43745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR    0x00000002
43845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
43945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
44045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_surfaceless_context
44145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_surfaceless_context 1
44245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick/* No tokens/entry points, just relaxes an error condition */
44345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
44445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
44545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_KHR_stream /* Requires KHR_stream extension */
44645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifndef EGL_KHR_stream_cross_process_fd
44745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_KHR_stream_cross_process_fd 1
44845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef int EGLNativeFileDescriptorKHR;
44945e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#define EGL_NO_FILE_DESCRIPTOR_KHR		((EGLNativeFileDescriptorKHR)(-1))
45045e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#ifdef EGL_EGLEXT_PROTOTYPES
45145e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLNativeFileDescriptorKHR EGLAPIENTRY eglGetStreamFileDescriptorKHR(EGLDisplay dpy, EGLStreamKHR stream);
45245e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian RomanickEGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamFromFileDescriptorKHR(EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
45345e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif /* EGL_EGLEXT_PROTOTYPES */
45445e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLNativeFileDescriptorKHR (EGLAPIENTRYP PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC)(EGLDisplay dpy, EGLStreamKHR stream);
45545e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanicktypedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC)(EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
45645e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
45745e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick#endif
45845e592c3dd4101c6706c5b2e6bb0e6e1f62017f5Ian Romanick
459ab7bb10a2af711086319ce35815acd797b86fe27Chia-I Wu#include <EGL/eglmesaext.h>
4605dc0f49084f322dd8ff6eb585212eea8b50e3377Kristian Høgsberg
4616438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#ifdef __cplusplus
4626438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul}
4636438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
4646438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul
4656438f6fdf72efcdc596898d11fe3e95fc2a08db2Brian Paul#endif
466