1 #ifndef __egl_h_ 2 #define __egl_h_ 1 3 4 #ifdef __cplusplus 5 extern "C" { 6 #endif 7 8 /* 9 ** Copyright (c) 2013-2017 The Khronos Group Inc. 10 ** 11 ** Permission is hereby granted, free of charge, to any person obtaining a 12 ** copy of this software and/or associated documentation files (the 13 ** "Materials"), to deal in the Materials without restriction, including 14 ** without limitation the rights to use, copy, modify, merge, publish, 15 ** distribute, sublicense, and/or sell copies of the Materials, and to 16 ** permit persons to whom the Materials are furnished to do so, subject to 17 ** the following conditions: 18 ** 19 ** The above copyright notice and this permission notice shall be included 20 ** in all copies or substantial portions of the Materials. 21 ** 22 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 23 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 24 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 25 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 26 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 27 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 28 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 29 */ 30 /* 31 ** This header is generated from the Khronos OpenGL / OpenGL ES XML 32 ** API Registry. The current version of the Registry, generator scripts 33 ** used to make the header, and the header can be found at 34 ** http://www.khronos.org/registry/egl 35 ** 36 ** Khronos $Git commit SHA1: a732b061e7 $ on $Git commit date: 2017-06-17 23:27:53 +0100 $ 37 */ 38 39 #include <EGL/eglplatform.h> 40 41 /* Generated on date 20170627 */ 42 43 /* Generated C header for: 44 * API: egl 45 * Versions considered: .* 46 * Versions emitted: .* 47 * Default extensions included: None 48 * Additional extensions included: _nomatch_^ 49 * Extensions removed: _nomatch_^ 50 */ 51 52 #ifndef EGL_VERSION_1_0 53 #define EGL_VERSION_1_0 1 54 typedef unsigned int EGLBoolean; 55 typedef void *EGLDisplay; 56 #include <KHR/khrplatform.h> 57 #include <EGL/eglplatform.h> 58 typedef void *EGLConfig; 59 typedef void *EGLSurface; 60 typedef void *EGLContext; 61 typedef void (*__eglMustCastToProperFunctionPointerType)(void); 62 #define EGL_ALPHA_SIZE 0x3021 63 #define EGL_BAD_ACCESS 0x3002 64 #define EGL_BAD_ALLOC 0x3003 65 #define EGL_BAD_ATTRIBUTE 0x3004 66 #define EGL_BAD_CONFIG 0x3005 67 #define EGL_BAD_CONTEXT 0x3006 68 #define EGL_BAD_CURRENT_SURFACE 0x3007 69 #define EGL_BAD_DISPLAY 0x3008 70 #define EGL_BAD_MATCH 0x3009 71 #define EGL_BAD_NATIVE_PIXMAP 0x300A 72 #define EGL_BAD_NATIVE_WINDOW 0x300B 73 #define EGL_BAD_PARAMETER 0x300C 74 #define EGL_BAD_SURFACE 0x300D 75 #define EGL_BLUE_SIZE 0x3022 76 #define EGL_BUFFER_SIZE 0x3020 77 #define EGL_CONFIG_CAVEAT 0x3027 78 #define EGL_CONFIG_ID 0x3028 79 #define EGL_CORE_NATIVE_ENGINE 0x305B 80 #define EGL_DEPTH_SIZE 0x3025 81 #define EGL_DONT_CARE EGL_CAST(EGLint,-1) 82 #define EGL_DRAW 0x3059 83 #define EGL_EXTENSIONS 0x3055 84 #define EGL_FALSE 0 85 #define EGL_GREEN_SIZE 0x3023 86 #define EGL_HEIGHT 0x3056 87 #define EGL_LARGEST_PBUFFER 0x3058 88 #define EGL_LEVEL 0x3029 89 #define EGL_MAX_PBUFFER_HEIGHT 0x302A 90 #define EGL_MAX_PBUFFER_PIXELS 0x302B 91 #define EGL_MAX_PBUFFER_WIDTH 0x302C 92 #define EGL_NATIVE_RENDERABLE 0x302D 93 #define EGL_NATIVE_VISUAL_ID 0x302E 94 #define EGL_NATIVE_VISUAL_TYPE 0x302F 95 #define EGL_NONE 0x3038 96 #define EGL_NON_CONFORMANT_CONFIG 0x3051 97 #define EGL_NOT_INITIALIZED 0x3001 98 #define EGL_NO_CONTEXT EGL_CAST(EGLContext,0) 99 #define EGL_NO_DISPLAY EGL_CAST(EGLDisplay,0) 100 #define EGL_NO_SURFACE EGL_CAST(EGLSurface,0) 101 #define EGL_PBUFFER_BIT 0x0001 102 #define EGL_PIXMAP_BIT 0x0002 103 #define EGL_READ 0x305A 104 #define EGL_RED_SIZE 0x3024 105 #define EGL_SAMPLES 0x3031 106 #define EGL_SAMPLE_BUFFERS 0x3032 107 #define EGL_SLOW_CONFIG 0x3050 108 #define EGL_STENCIL_SIZE 0x3026 109 #define EGL_SUCCESS 0x3000 110 #define EGL_SURFACE_TYPE 0x3033 111 #define EGL_TRANSPARENT_BLUE_VALUE 0x3035 112 #define EGL_TRANSPARENT_GREEN_VALUE 0x3036 113 #define EGL_TRANSPARENT_RED_VALUE 0x3037 114 #define EGL_TRANSPARENT_RGB 0x3052 115 #define EGL_TRANSPARENT_TYPE 0x3034 116 #define EGL_TRUE 1 117 #define EGL_VENDOR 0x3053 118 #define EGL_VERSION 0x3054 119 #define EGL_WIDTH 0x3057 120 #define EGL_WINDOW_BIT 0x0004 121 EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig (EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config); 122 EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target); 123 EGLAPI EGLContext EGLAPIENTRY eglCreateContext (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list); 124 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface (EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list); 125 EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list); 126 EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list); 127 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext (EGLDisplay dpy, EGLContext ctx); 128 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface (EGLDisplay dpy, EGLSurface surface); 129 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value); 130 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs (EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config); 131 EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay (void); 132 EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface (EGLint readdraw); 133 EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay (EGLNativeDisplayType display_id); 134 EGLAPI EGLint EGLAPIENTRY eglGetError (void); 135 EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname); 136 EGLAPI EGLBoolean EGLAPIENTRY eglInitialize (EGLDisplay dpy, EGLint *major, EGLint *minor); 137 EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx); 138 EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value); 139 EGLAPI const char *EGLAPIENTRY eglQueryString (EGLDisplay dpy, EGLint name); 140 EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value); 141 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers (EGLDisplay dpy, EGLSurface surface); 142 EGLAPI EGLBoolean EGLAPIENTRY eglTerminate (EGLDisplay dpy); 143 EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL (void); 144 EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative (EGLint engine); 145 #endif /* EGL_VERSION_1_0 */ 146 147 #ifndef EGL_VERSION_1_1 148 #define EGL_VERSION_1_1 1 149 #define EGL_BACK_BUFFER 0x3084 150 #define EGL_BIND_TO_TEXTURE_RGB 0x3039 151 #define EGL_BIND_TO_TEXTURE_RGBA 0x303A 152 #define EGL_CONTEXT_LOST 0x300E 153 #define EGL_MIN_SWAP_INTERVAL 0x303B 154 #define EGL_MAX_SWAP_INTERVAL 0x303C 155 #define EGL_MIPMAP_TEXTURE 0x3082 156 #define EGL_MIPMAP_LEVEL 0x3083 157 #define EGL_NO_TEXTURE 0x305C 158 #define EGL_TEXTURE_2D 0x305F 159 #define EGL_TEXTURE_FORMAT 0x3080 160 #define EGL_TEXTURE_RGB 0x305D 161 #define EGL_TEXTURE_RGBA 0x305E 162 #define EGL_TEXTURE_TARGET 0x3081 163 EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer); 164 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer); 165 EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value); 166 EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval (EGLDisplay dpy, EGLint interval); 167 #endif /* EGL_VERSION_1_1 */ 168 169 #ifndef EGL_VERSION_1_2 170 #define EGL_VERSION_1_2 1 171 typedef unsigned int EGLenum; 172 typedef void *EGLClientBuffer; 173 #define EGL_ALPHA_FORMAT 0x3088 174 #define EGL_ALPHA_FORMAT_NONPRE 0x308B 175 #define EGL_ALPHA_FORMAT_PRE 0x308C 176 #define EGL_ALPHA_MASK_SIZE 0x303E 177 #define EGL_BUFFER_PRESERVED 0x3094 178 #define EGL_BUFFER_DESTROYED 0x3095 179 #define EGL_CLIENT_APIS 0x308D 180 #define EGL_COLORSPACE 0x3087 181 #define EGL_COLORSPACE_sRGB 0x3089 182 #define EGL_COLORSPACE_LINEAR 0x308A 183 #define EGL_COLOR_BUFFER_TYPE 0x303F 184 #define EGL_CONTEXT_CLIENT_TYPE 0x3097 185 #define EGL_DISPLAY_SCALING 10000 186 #define EGL_HORIZONTAL_RESOLUTION 0x3090 187 #define EGL_LUMINANCE_BUFFER 0x308F 188 #define EGL_LUMINANCE_SIZE 0x303D 189 #define EGL_OPENGL_ES_BIT 0x0001 190 #define EGL_OPENVG_BIT 0x0002 191 #define EGL_OPENGL_ES_API 0x30A0 192 #define EGL_OPENVG_API 0x30A1 193 #define EGL_OPENVG_IMAGE 0x3096 194 #define EGL_PIXEL_ASPECT_RATIO 0x3092 195 #define EGL_RENDERABLE_TYPE 0x3040 196 #define EGL_RENDER_BUFFER 0x3086 197 #define EGL_RGB_BUFFER 0x308E 198 #define EGL_SINGLE_BUFFER 0x3085 199 #define EGL_SWAP_BEHAVIOR 0x3093 200 #define EGL_UNKNOWN EGL_CAST(EGLint,-1) 201 #define EGL_VERTICAL_RESOLUTION 0x3091 202 EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI (EGLenum api); 203 EGLAPI EGLenum EGLAPIENTRY eglQueryAPI (void); 204 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list); 205 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread (void); 206 EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient (void); 207 #endif /* EGL_VERSION_1_2 */ 208 209 #ifndef EGL_VERSION_1_3 210 #define EGL_VERSION_1_3 1 211 #define EGL_CONFORMANT 0x3042 212 #define EGL_CONTEXT_CLIENT_VERSION 0x3098 213 #define EGL_MATCH_NATIVE_PIXMAP 0x3041 214 #define EGL_OPENGL_ES2_BIT 0x0004 215 #define EGL_VG_ALPHA_FORMAT 0x3088 216 #define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B 217 #define EGL_VG_ALPHA_FORMAT_PRE 0x308C 218 #define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040 219 #define EGL_VG_COLORSPACE 0x3087 220 #define EGL_VG_COLORSPACE_sRGB 0x3089 221 #define EGL_VG_COLORSPACE_LINEAR 0x308A 222 #define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020 223 #endif /* EGL_VERSION_1_3 */ 224 225 #ifndef EGL_VERSION_1_4 226 #define EGL_VERSION_1_4 1 227 #define EGL_DEFAULT_DISPLAY EGL_CAST(EGLNativeDisplayType,0) 228 #define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200 229 #define EGL_MULTISAMPLE_RESOLVE 0x3099 230 #define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A 231 #define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B 232 #define EGL_OPENGL_API 0x30A2 233 #define EGL_OPENGL_BIT 0x0008 234 #define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400 235 EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext (void); 236 #endif /* EGL_VERSION_1_4 */ 237 238 /* This version of Android does not yet support EGL 1.5, but the following 239 * portion of EGL 1.5 is included in order to support portions of "eglext.h". 240 */ 241 typedef intptr_t EGLAttrib; 242 243 #ifdef __cplusplus 244 } 245 #endif 246 247 #endif 248