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