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 82 // EGL_ANGLE_program_cache_control 83 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheGetAttribANGLE(EGLDisplay dpy, EGLenum attrib); 84 ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCacheQueryANGLE(EGLDisplay dpy, 85 EGLint index, 86 void *key, 87 EGLint *keysize, 88 void *binary, 89 EGLint *binarysize); 90 ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCachePopulateANGLE(EGLDisplay dpy, 91 const void *key, 92 EGLint keysize, 93 const void *binary, 94 EGLint binarysize); 95 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheResizeANGLE(EGLDisplay dpy, 96 EGLint limit, 97 EGLint mode); 98 99 // EGL_ANGLE_query_surface_pointer 100 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QuerySurfacePointerANGLE(EGLDisplay dpy, 101 EGLSurface surface, 102 EGLint attribute, 103 void **value); 104 105 // EGL_ANGLE_stream_producer_d3d_texture 106 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 107 EGL_CreateStreamProducerD3DTextureANGLE(EGLDisplay dpy, 108 EGLStreamKHR stream, 109 const EGLAttrib *attrib_list); 110 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamPostD3DTextureANGLE(EGLDisplay dpy, 111 EGLStreamKHR stream, 112 void *texture, 113 const EGLAttrib *attrib_list); 114 115 // EGL_ANGLE_swap_with_frame_token 116 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 117 EGL_SwapBuffersWithFrameTokenANGLE(EGLDisplay dpy, 118 EGLSurface surface, 119 EGLFrameTokenANGLE frametoken); 120 121 // EGL_ANGLE_sync_control_rate 122 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetMscRateANGLE(EGLDisplay dpy, 123 EGLSurface surface, 124 EGLint *numerator, 125 EGLint *denominator); 126 127 // EGL_CHROMIUM_sync_control 128 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncValuesCHROMIUM(EGLDisplay dpy, 129 EGLSurface surface, 130 EGLuint64KHR *ust, 131 EGLuint64KHR *msc, 132 EGLuint64KHR *sbc); 133 134 // EGL_EXT_device_query 135 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDeviceAttribEXT(EGLDeviceEXT device, 136 EGLint attribute, 137 EGLAttrib *value); 138 ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryDeviceStringEXT(EGLDeviceEXT device, EGLint name); 139 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribEXT(EGLDisplay dpy, 140 EGLint attribute, 141 EGLAttrib *value); 142 143 // EGL_EXT_platform_base 144 ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurfaceEXT(EGLDisplay dpy, 145 EGLConfig config, 146 void *native_pixmap, 147 const EGLint *attrib_list); 148 ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurfaceEXT(EGLDisplay dpy, 149 EGLConfig config, 150 void *native_window, 151 const EGLint *attrib_list); 152 ANGLE_EXPORT EGLDisplay EGLAPIENTRY EGL_GetPlatformDisplayEXT(EGLenum platform, 153 void *native_display, 154 const EGLint *attrib_list); 155 156 // EGL_KHR_debug 157 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_DebugMessageControlKHR(EGLDEBUGPROCKHR callback, 158 const EGLAttrib *attrib_list); 159 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_LabelObjectKHR(EGLDisplay display, 160 EGLenum objectType, 161 EGLObjectKHR object, 162 EGLLabelKHR label); 163 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDebugKHR(EGLint attribute, EGLAttrib *value); 164 165 // EGL_KHR_fence_sync 166 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ClientWaitSyncKHR(EGLDisplay dpy, 167 EGLSyncKHR sync, 168 EGLint flags, 169 EGLTimeKHR timeout); 170 ANGLE_EXPORT EGLSyncKHR EGLAPIENTRY EGL_CreateSyncKHR(EGLDisplay dpy, 171 EGLenum type, 172 const EGLint *attrib_list); 173 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync); 174 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncAttribKHR(EGLDisplay dpy, 175 EGLSyncKHR sync, 176 EGLint attribute, 177 EGLint *value); 178 179 // EGL_KHR_image 180 ANGLE_EXPORT EGLImageKHR EGLAPIENTRY EGL_CreateImageKHR(EGLDisplay dpy, 181 EGLContext ctx, 182 EGLenum target, 183 EGLClientBuffer buffer, 184 const EGLint *attrib_list); 185 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyImageKHR(EGLDisplay dpy, EGLImageKHR image); 186 187 // EGL_KHR_reusable_sync 188 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SignalSyncKHR(EGLDisplay dpy, 189 EGLSyncKHR sync, 190 EGLenum mode); 191 192 // EGL_KHR_stream 193 ANGLE_EXPORT EGLStreamKHR EGLAPIENTRY EGL_CreateStreamKHR(EGLDisplay dpy, 194 const EGLint *attrib_list); 195 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream); 196 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamKHR(EGLDisplay dpy, 197 EGLStreamKHR stream, 198 EGLenum attribute, 199 EGLint *value); 200 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamu64KHR(EGLDisplay dpy, 201 EGLStreamKHR stream, 202 EGLenum attribute, 203 EGLuint64KHR *value); 204 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamAttribKHR(EGLDisplay dpy, 205 EGLStreamKHR stream, 206 EGLenum attribute, 207 EGLint value); 208 209 // EGL_KHR_stream_consumer_gltexture 210 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerAcquireKHR(EGLDisplay dpy, 211 EGLStreamKHR stream); 212 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalKHR(EGLDisplay dpy, 213 EGLStreamKHR stream); 214 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerReleaseKHR(EGLDisplay dpy, 215 EGLStreamKHR stream); 216 217 // EGL_KHR_swap_buffers_with_damage 218 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SwapBuffersWithDamageKHR(EGLDisplay dpy, 219 EGLSurface surface, 220 const EGLint *rects, 221 EGLint n_rects); 222 223 // EGL_KHR_wait_sync 224 ANGLE_EXPORT EGLint EGLAPIENTRY EGL_WaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags); 225 226 // EGL_NV_post_sub_buffer 227 ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PostSubBufferNV(EGLDisplay dpy, 228 EGLSurface surface, 229 EGLint x, 230 EGLint y, 231 EGLint width, 232 EGLint height); 233 234 // EGL_NV_stream_consumer_gltexture_yuv 235 ANGLE_EXPORT EGLBoolean EGLAPIENTRY 236 EGL_StreamConsumerGLTextureExternalAttribsNV(EGLDisplay dpy, 237 EGLStreamKHR stream, 238 const EGLAttrib *attrib_list); 239 } // extern "C" 240 241 #endif // LIBGLESV2_ENTRY_POINTS_EGL_EXT_AUTOGEN_H_ 242