1 // GENERATED FILE - DO NOT EDIT. 2 // Generated by generate_entry_points.py using data from egl.xml and egl_angle_ext.xml. 3 // 4 // Copyright 2020 The ANGLE Project Authors. All rights reserved. 5 // Use of this source code is governed by a BSD-style license that can be 6 // found in the LICENSE file. 7 // 8 // entry_points_egl_ext_autogen.h: 9 // Defines the EGL Extension entry points. 10 11 #ifndef LIBGLESV2_ENTRY_POINTS_EGL_EXT_AUTOGEN_H_ 12 #define LIBGLESV2_ENTRY_POINTS_EGL_EXT_AUTOGEN_H_ 13 14 #include <EGL/egl.h> 15 #include <EGL/eglext.h> 16 #include <export.h> 17 18 extern "C" { 19 20 // EGL_ANDROID_blob_cache 21 ANGLE_EXPORT void EGLAPIENTRY EGL_SetBlobCacheFuncsANDROID(EGLDisplay dpy, 22 EGLSetBlobFuncANDROID set, 23 EGLGetBlobFuncANDROID get); 24 25 // EGL_ANDROID_create_native_client_buffer 26 ANGLE_EXPORT EGLClientBuffer EGLAPIENTRY 27 EGL_CreateNativeClientBufferANDROID(const EGLint *attrib_list); 28 29 // EGL_ANDROID_get_frame_timestamps 30 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingSupportedANDROID(EGLDisplay dpy, 31 EGLSurface surface, 32 EGLint name); 33 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingANDROID(EGLDisplay dpy, 34 EGLSurface surface, 35 EGLint numTimestamps, 36 const EGLint *names, 37 EGLnsecsANDROID *values); 38 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetNextFrameIdANDROID(EGLDisplay dpy, 39 EGLSurface surface, 40 EGLuint64KHR *frameId); 41 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampSupportedANDROID(EGLDisplay dpy, 42 EGLSurface surface, 43 EGLint timestamp); 44 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampsANDROID(EGLDisplay dpy, 45 EGLSurface surface, 46 EGLuint64KHR frameId, 47 EGLint numTimestamps, 48 const EGLint *timestamps, 49 EGLnsecsANDROID *values); 50 51 // EGL_ANDROID_get_native_client_buffer 52 ANGLE_EXPORT EGLClientBuffer EGLAPIENTRY 53 EGL_GetNativeClientBufferANDROID(const struct AHardwareBuffer *buffer); 54 55 // EGL_ANDROID_native_fence_sync 56 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_DupNativeFenceFDANDROID(EGLDisplay dpy, EGLSyncKHR sync); 57 58 // EGL_ANDROID_presentation_time 59 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PresentationTimeANDROID(EGLDisplay dpy, 60 EGLSurface surface, 61 EGLnsecsANDROID time); 62 63 // EGL_ANGLE_device_creation 64 ANGLE_EXPORT EGLDeviceEXT EGLAPIENTRY EGL_CreateDeviceANGLE(EGLint device_type, 65 void *native_device, 66 const EGLAttrib *attrib_list); 67 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ReleaseDeviceANGLE(EGLDeviceEXT device); 68 69 // EGL_ANGLE_feature_control 70 ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryStringiANGLE(EGLDisplay dpy, 71 EGLint name, 72 EGLint index); 73 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribANGLE(EGLDisplay dpy, 74 EGLint attribute, 75 EGLAttrib *value); 76 77 // EGL_ANGLE_power_preference 78 ANGLE_EXPORT void EGLAPIENTRY EGL_ReleaseHighPowerGPUANGLE(EGLDisplay dpy, EGLContext ctx); 79 ANGLE_EXPORT void EGLAPIENTRY EGL_ReacquireHighPowerGPUANGLE(EGLDisplay dpy, EGLContext ctx); 80 ANGLE_EXPORT void EGLAPIENTRY EGL_HandleGPUSwitchANGLE(EGLDisplay dpy); 81 ANGLE_EXPORT void EGLAPIENTRY EGL_ForceGPUSwitchANGLE(EGLDisplay dpy, 82 EGLint gpuIDHigh, 83 EGLint gpuIDLow); 84 85 // EGL_ANGLE_prepare_swap_buffers 86 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PrepareSwapBuffersANGLE(EGLDisplay dpy, EGLSurface surface); 87 88 // EGL_ANGLE_program_cache_control 89 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheGetAttribANGLE(EGLDisplay dpy, EGLenum attrib); 90 ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCacheQueryANGLE(EGLDisplay dpy, 91 EGLint index, 92 void *key, 93 EGLint *keysize, 94 void *binary, 95 EGLint *binarysize); 96 ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCachePopulateANGLE(EGLDisplay dpy, 97 const void *key, 98 EGLint keysize, 99 const void *binary, 100 EGLint binarysize); 101 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheResizeANGLE(EGLDisplay dpy, 102 EGLint limit, 103 EGLint mode); 104 105 // EGL_ANGLE_query_surface_pointer 106 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QuerySurfacePointerANGLE(EGLDisplay dpy, 107 EGLSurface surface, 108 EGLint attribute, 109 void **value); 110 111 // EGL_ANGLE_stream_producer_d3d_texture 112 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 113 EGL_CreateStreamProducerD3DTextureANGLE(EGLDisplay dpy, 114 EGLStreamKHR stream, 115 const EGLAttrib *attrib_list); 116 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamPostD3DTextureANGLE(EGLDisplay dpy, 117 EGLStreamKHR stream, 118 void *texture, 119 const EGLAttrib *attrib_list); 120 121 // EGL_ANGLE_swap_with_frame_token 122 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 123 EGL_SwapBuffersWithFrameTokenANGLE(EGLDisplay dpy, 124 EGLSurface surface, 125 EGLFrameTokenANGLE frametoken); 126 127 // EGL_ANGLE_sync_control_rate 128 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetMscRateANGLE(EGLDisplay dpy, 129 EGLSurface surface, 130 EGLint *numerator, 131 EGLint *denominator); 132 133 // EGL_ANGLE_vulkan_image 134 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ExportVkImageANGLE(EGLDisplay dpy, 135 EGLImage image, 136 void *vk_image, 137 void *vk_image_create_info); 138 139 // EGL_CHROMIUM_sync_control 140 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncValuesCHROMIUM(EGLDisplay dpy, 141 EGLSurface surface, 142 EGLuint64KHR *ust, 143 EGLuint64KHR *msc, 144 EGLuint64KHR *sbc); 145 146 // EGL_EXT_device_query 147 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDeviceAttribEXT(EGLDeviceEXT device, 148 EGLint attribute, 149 EGLAttrib *value); 150 ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryDeviceStringEXT(EGLDeviceEXT device, EGLint name); 151 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribEXT(EGLDisplay dpy, 152 EGLint attribute, 153 EGLAttrib *value); 154 155 // EGL_EXT_image_dma_buf_import_modifiers 156 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDmaBufFormatsEXT(EGLDisplay dpy, 157 EGLint max_formats, 158 EGLint *formats, 159 EGLint *num_formats); 160 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDmaBufModifiersEXT(EGLDisplay dpy, 161 EGLint format, 162 EGLint max_modifiers, 163 EGLuint64KHR *modifiers, 164 EGLBoolean *external_only, 165 EGLint *num_modifiers); 166 167 // EGL_EXT_platform_base 168 ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurfaceEXT(EGLDisplay dpy, 169 EGLConfig config, 170 void *native_pixmap, 171 const EGLint *attrib_list); 172 ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurfaceEXT(EGLDisplay dpy, 173 EGLConfig config, 174 void *native_window, 175 const EGLint *attrib_list); 176 ANGLE_EXPORT EGLDisplay EGLAPIENTRY EGL_GetPlatformDisplayEXT(EGLenum platform, 177 void *native_display, 178 const EGLint *attrib_list); 179 180 // EGL_KHR_debug 181 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_DebugMessageControlKHR(EGLDEBUGPROCKHR callback, 182 const EGLAttrib *attrib_list); 183 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_LabelObjectKHR(EGLDisplay display, 184 EGLenum objectType, 185 EGLObjectKHR object, 186 EGLLabelKHR label); 187 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDebugKHR(EGLint attribute, EGLAttrib *value); 188 189 // EGL_KHR_fence_sync 190 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ClientWaitSyncKHR(EGLDisplay dpy, 191 EGLSyncKHR sync, 192 EGLint flags, 193 EGLTimeKHR timeout); 194 ANGLE_EXPORT EGLSyncKHR EGLAPIENTRY EGL_CreateSyncKHR(EGLDisplay dpy, 195 EGLenum type, 196 const EGLint *attrib_list); 197 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync); 198 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncAttribKHR(EGLDisplay dpy, 199 EGLSyncKHR sync, 200 EGLint attribute, 201 EGLint *value); 202 203 // EGL_KHR_image 204 ANGLE_EXPORT EGLImageKHR EGLAPIENTRY EGL_CreateImageKHR(EGLDisplay dpy, 205 EGLContext ctx, 206 EGLenum target, 207 EGLClientBuffer buffer, 208 const EGLint *attrib_list); 209 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyImageKHR(EGLDisplay dpy, EGLImageKHR image); 210 211 // EGL_KHR_lock_surface3 212 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_LockSurfaceKHR(EGLDisplay dpy, 213 EGLSurface surface, 214 const EGLint *attrib_list); 215 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QuerySurface64KHR(EGLDisplay dpy, 216 EGLSurface surface, 217 EGLint attribute, 218 EGLAttribKHR *value); 219 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_UnlockSurfaceKHR(EGLDisplay dpy, EGLSurface surface); 220 221 // EGL_KHR_partial_update 222 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SetDamageRegionKHR(EGLDisplay dpy, 223 EGLSurface surface, 224 EGLint *rects, 225 EGLint n_rects); 226 227 // EGL_KHR_reusable_sync 228 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SignalSyncKHR(EGLDisplay dpy, 229 EGLSyncKHR sync, 230 EGLenum mode); 231 232 // EGL_KHR_stream 233 ANGLE_EXPORT EGLStreamKHR EGLAPIENTRY EGL_CreateStreamKHR(EGLDisplay dpy, 234 const EGLint *attrib_list); 235 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream); 236 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamKHR(EGLDisplay dpy, 237 EGLStreamKHR stream, 238 EGLenum attribute, 239 EGLint *value); 240 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamu64KHR(EGLDisplay dpy, 241 EGLStreamKHR stream, 242 EGLenum attribute, 243 EGLuint64KHR *value); 244 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamAttribKHR(EGLDisplay dpy, 245 EGLStreamKHR stream, 246 EGLenum attribute, 247 EGLint value); 248 249 // EGL_KHR_stream_consumer_gltexture 250 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerAcquireKHR(EGLDisplay dpy, 251 EGLStreamKHR stream); 252 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalKHR(EGLDisplay dpy, 253 EGLStreamKHR stream); 254 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerReleaseKHR(EGLDisplay dpy, 255 EGLStreamKHR stream); 256 257 // EGL_KHR_swap_buffers_with_damage 258 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SwapBuffersWithDamageKHR(EGLDisplay dpy, 259 EGLSurface surface, 260 const EGLint *rects, 261 EGLint n_rects); 262 263 // EGL_KHR_wait_sync 264 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_WaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags); 265 266 // EGL_NV_post_sub_buffer 267 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PostSubBufferNV(EGLDisplay dpy, 268 EGLSurface surface, 269 EGLint x, 270 EGLint y, 271 EGLint width, 272 EGLint height); 273 274 // EGL_NV_stream_consumer_gltexture_yuv 275 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 276 EGL_StreamConsumerGLTextureExternalAttribsNV(EGLDisplay dpy, 277 EGLStreamKHR stream, 278 const EGLAttrib *attrib_list); 279 } // extern "C" 280 281 #endif // LIBGLESV2_ENTRY_POINTS_EGL_EXT_AUTOGEN_H_ 282