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_external_context_and_surface 70 ANGLE_EXPORT void EGLAPIENTRY EGL_AcquireExternalContextANGLE(EGLDisplay dpy, 71 EGLSurface drawAndRead); 72 ANGLE_EXPORT void EGLAPIENTRY EGL_ReleaseExternalContextANGLE(EGLDisplay dpy); 73 74 // EGL_ANGLE_feature_control 75 ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryStringiANGLE(EGLDisplay dpy, 76 EGLint name, 77 EGLint index); 78 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribANGLE(EGLDisplay dpy, 79 EGLint attribute, 80 EGLAttrib *value); 81 82 // EGL_ANGLE_metal_shared_event_sync 83 ANGLE_EXPORT void *EGLAPIENTRY EGL_CopyMetalSharedEventANGLE(EGLDisplay dpy, EGLSyncKHR sync); 84 85 // EGL_ANGLE_power_preference 86 ANGLE_EXPORT void EGLAPIENTRY EGL_ReleaseHighPowerGPUANGLE(EGLDisplay dpy, EGLContext ctx); 87 ANGLE_EXPORT void EGLAPIENTRY EGL_ReacquireHighPowerGPUANGLE(EGLDisplay dpy, EGLContext ctx); 88 ANGLE_EXPORT void EGLAPIENTRY EGL_HandleGPUSwitchANGLE(EGLDisplay dpy); 89 ANGLE_EXPORT void EGLAPIENTRY EGL_ForceGPUSwitchANGLE(EGLDisplay dpy, 90 EGLint gpuIDHigh, 91 EGLint gpuIDLow); 92 93 // EGL_ANGLE_prepare_swap_buffers 94 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PrepareSwapBuffersANGLE(EGLDisplay dpy, EGLSurface surface); 95 96 // EGL_ANGLE_program_cache_control 97 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheGetAttribANGLE(EGLDisplay dpy, EGLenum attrib); 98 ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCacheQueryANGLE(EGLDisplay dpy, 99 EGLint index, 100 void *key, 101 EGLint *keysize, 102 void *binary, 103 EGLint *binarysize); 104 ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCachePopulateANGLE(EGLDisplay dpy, 105 const void *key, 106 EGLint keysize, 107 const void *binary, 108 EGLint binarysize); 109 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheResizeANGLE(EGLDisplay dpy, 110 EGLint limit, 111 EGLint mode); 112 113 // EGL_ANGLE_query_surface_pointer 114 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QuerySurfacePointerANGLE(EGLDisplay dpy, 115 EGLSurface surface, 116 EGLint attribute, 117 void **value); 118 119 // EGL_ANGLE_stream_producer_d3d_texture 120 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 121 EGL_CreateStreamProducerD3DTextureANGLE(EGLDisplay dpy, 122 EGLStreamKHR stream, 123 const EGLAttrib *attrib_list); 124 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamPostD3DTextureANGLE(EGLDisplay dpy, 125 EGLStreamKHR stream, 126 void *texture, 127 const EGLAttrib *attrib_list); 128 129 // EGL_ANGLE_swap_with_frame_token 130 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 131 EGL_SwapBuffersWithFrameTokenANGLE(EGLDisplay dpy, 132 EGLSurface surface, 133 EGLFrameTokenANGLE frametoken); 134 135 // EGL_ANGLE_sync_control_rate 136 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetMscRateANGLE(EGLDisplay dpy, 137 EGLSurface surface, 138 EGLint *numerator, 139 EGLint *denominator); 140 141 // EGL_ANGLE_vulkan_image 142 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ExportVkImageANGLE(EGLDisplay dpy, 143 EGLImage image, 144 void *vk_image, 145 void *vk_image_create_info); 146 147 // EGL_ANGLE_wait_until_work_scheduled 148 ANGLE_EXPORT void EGLAPIENTRY EGL_WaitUntilWorkScheduledANGLE(EGLDisplay dpy); 149 150 // EGL_CHROMIUM_sync_control 151 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncValuesCHROMIUM(EGLDisplay dpy, 152 EGLSurface surface, 153 EGLuint64KHR *ust, 154 EGLuint64KHR *msc, 155 EGLuint64KHR *sbc); 156 157 // EGL_EXT_device_query 158 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDeviceAttribEXT(EGLDeviceEXT device, 159 EGLint attribute, 160 EGLAttrib *value); 161 ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryDeviceStringEXT(EGLDeviceEXT device, EGLint name); 162 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribEXT(EGLDisplay dpy, 163 EGLint attribute, 164 EGLAttrib *value); 165 166 // EGL_EXT_image_dma_buf_import_modifiers 167 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDmaBufFormatsEXT(EGLDisplay dpy, 168 EGLint max_formats, 169 EGLint *formats, 170 EGLint *num_formats); 171 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDmaBufModifiersEXT(EGLDisplay dpy, 172 EGLint format, 173 EGLint max_modifiers, 174 EGLuint64KHR *modifiers, 175 EGLBoolean *external_only, 176 EGLint *num_modifiers); 177 178 // EGL_EXT_platform_base 179 ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurfaceEXT(EGLDisplay dpy, 180 EGLConfig config, 181 void *native_pixmap, 182 const EGLint *attrib_list); 183 ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurfaceEXT(EGLDisplay dpy, 184 EGLConfig config, 185 void *native_window, 186 const EGLint *attrib_list); 187 ANGLE_EXPORT EGLDisplay EGLAPIENTRY EGL_GetPlatformDisplayEXT(EGLenum platform, 188 void *native_display, 189 const EGLint *attrib_list); 190 191 // EGL_KHR_debug 192 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_DebugMessageControlKHR(EGLDEBUGPROCKHR callback, 193 const EGLAttrib *attrib_list); 194 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_LabelObjectKHR(EGLDisplay display, 195 EGLenum objectType, 196 EGLObjectKHR object, 197 EGLLabelKHR label); 198 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDebugKHR(EGLint attribute, EGLAttrib *value); 199 200 // EGL_KHR_fence_sync 201 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ClientWaitSyncKHR(EGLDisplay dpy, 202 EGLSyncKHR sync, 203 EGLint flags, 204 EGLTimeKHR timeout); 205 ANGLE_EXPORT EGLSyncKHR EGLAPIENTRY EGL_CreateSyncKHR(EGLDisplay dpy, 206 EGLenum type, 207 const EGLint *attrib_list); 208 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync); 209 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncAttribKHR(EGLDisplay dpy, 210 EGLSyncKHR sync, 211 EGLint attribute, 212 EGLint *value); 213 214 // EGL_KHR_image 215 ANGLE_EXPORT EGLImageKHR EGLAPIENTRY EGL_CreateImageKHR(EGLDisplay dpy, 216 EGLContext ctx, 217 EGLenum target, 218 EGLClientBuffer buffer, 219 const EGLint *attrib_list); 220 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyImageKHR(EGLDisplay dpy, EGLImageKHR image); 221 222 // EGL_KHR_lock_surface3 223 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_LockSurfaceKHR(EGLDisplay dpy, 224 EGLSurface surface, 225 const EGLint *attrib_list); 226 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QuerySurface64KHR(EGLDisplay dpy, 227 EGLSurface surface, 228 EGLint attribute, 229 EGLAttribKHR *value); 230 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_UnlockSurfaceKHR(EGLDisplay dpy, EGLSurface surface); 231 232 // EGL_KHR_partial_update 233 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SetDamageRegionKHR(EGLDisplay dpy, 234 EGLSurface surface, 235 EGLint *rects, 236 EGLint n_rects); 237 238 // EGL_KHR_reusable_sync 239 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SignalSyncKHR(EGLDisplay dpy, 240 EGLSyncKHR sync, 241 EGLenum mode); 242 243 // EGL_KHR_stream 244 ANGLE_EXPORT EGLStreamKHR EGLAPIENTRY EGL_CreateStreamKHR(EGLDisplay dpy, 245 const EGLint *attrib_list); 246 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream); 247 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamKHR(EGLDisplay dpy, 248 EGLStreamKHR stream, 249 EGLenum attribute, 250 EGLint *value); 251 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamu64KHR(EGLDisplay dpy, 252 EGLStreamKHR stream, 253 EGLenum attribute, 254 EGLuint64KHR *value); 255 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamAttribKHR(EGLDisplay dpy, 256 EGLStreamKHR stream, 257 EGLenum attribute, 258 EGLint value); 259 260 // EGL_KHR_stream_consumer_gltexture 261 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerAcquireKHR(EGLDisplay dpy, 262 EGLStreamKHR stream); 263 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalKHR(EGLDisplay dpy, 264 EGLStreamKHR stream); 265 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerReleaseKHR(EGLDisplay dpy, 266 EGLStreamKHR stream); 267 268 // EGL_KHR_swap_buffers_with_damage 269 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SwapBuffersWithDamageKHR(EGLDisplay dpy, 270 EGLSurface surface, 271 const EGLint *rects, 272 EGLint n_rects); 273 274 // EGL_KHR_wait_sync 275 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_WaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags); 276 277 // EGL_NV_post_sub_buffer 278 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PostSubBufferNV(EGLDisplay dpy, 279 EGLSurface surface, 280 EGLint x, 281 EGLint y, 282 EGLint width, 283 EGLint height); 284 285 // EGL_NV_stream_consumer_gltexture_yuv 286 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 287 EGL_StreamConsumerGLTextureExternalAttribsNV(EGLDisplay dpy, 288 EGLStreamKHR stream, 289 const EGLAttrib *attrib_list); 290 } // extern "C" 291 292 #endif // LIBGLESV2_ENTRY_POINTS_EGL_EXT_AUTOGEN_H_ 293