• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="UTF-8"?>
2<registry>
3    <comment>
4    Copyright 2018 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    egl_angle_ext.xml
9        Includes data used to auto-generate ANGLE classes.
10    </comment>
11    <!-- SECTION: EGL command definitions. -->
12    <commands namespace="EGL">
13        <command>
14            <proto><ptype>EGLDeviceEXT</ptype> <name>eglCreateDeviceANGLE</name></proto>
15            <param><ptype>EGLint</ptype> <name>device_type</name></param>
16            <param>void *<name>native_device</name></param>
17            <param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
18        </command>
19        <command>
20            <proto><ptype>EGLBoolean</ptype> <name>eglReleaseDeviceANGLE</name></proto>
21            <param><ptype>EGLDeviceEXT</ptype> <name>device</name></param>
22        </command>
23        <command>
24            <proto><ptype>EGLBoolean</ptype> <name>eglCreateStreamProducerD3DTextureANGLE</name></proto>
25            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
26            <param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
27            <param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
28        </command>
29        <command>
30            <proto><ptype>EGLBoolean</ptype> <name>eglStreamPostD3DTextureANGLE</name></proto>
31            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
32            <param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
33            <param>void *<name>texture</name></param>
34            <param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
35        </command>
36        <command>
37            <proto><ptype>EGLBoolean</ptype> <name>eglGetMscRateANGLE</name></proto>
38            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
39            <param><ptype>EGLSurface</ptype> <name>surface</name></param>
40            <param><ptype>EGLint</ptype> *<name>numerator</name></param>
41            <param><ptype>EGLint</ptype> *<name>denominator</name></param>
42        </command>
43        <command>
44            <proto><ptype>EGLBoolean</ptype> <name>eglGetSyncValuesCHROMIUM</name></proto>
45            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
46            <param><ptype>EGLSurface</ptype> <name>surface</name></param>
47            <param><ptype>EGLuint64KHR</ptype> *<name>ust</name></param>
48            <param><ptype>EGLuint64KHR</ptype> *<name>msc</name></param>
49            <param><ptype>EGLuint64KHR</ptype> *<name>sbc</name></param>
50        </command>
51        <command>
52            <proto><ptype>EGLint</ptype> <name>eglProgramCacheGetAttribANGLE</name></proto>
53            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
54            <param><ptype>EGLenum</ptype> <name>attrib</name></param>
55        </command>
56        <command>
57            <proto>void <name>eglProgramCacheQueryANGLE</name></proto>
58            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
59            <param><ptype>EGLint</ptype> <name>index</name></param>
60            <param>void *<name>key</name></param>
61            <param><ptype>EGLint</ptype> *<name>keysize</name></param>
62            <param>void *<name>binary</name></param>
63            <param><ptype>EGLint</ptype> *<name>binarysize</name></param>
64        </command>
65        <command>
66            <proto>void <name>eglProgramCachePopulateANGLE</name></proto>
67            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
68            <param>const void *<name>key</name></param>
69            <param><ptype>EGLint</ptype> <name>keysize</name></param>
70            <param>const void *<name>binary</name></param>
71            <param><ptype>EGLint</ptype> <name>binarysize</name></param>
72        </command>
73        <command>
74            <proto><ptype>EGLint</ptype> <name>eglProgramCacheResizeANGLE</name></proto>
75            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
76            <param><ptype>EGLint</ptype> <name>limit</name></param>
77            <param><ptype>EGLint</ptype> <name>mode</name></param>
78        </command>
79        <command>
80            <proto><ptype>const char *</ptype> <name>eglQueryStringiANGLE</name></proto>
81            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
82            <param><ptype>EGLint</ptype> <name>name</name></param>
83            <param><ptype>EGLint</ptype> <name>index</name></param>
84        </command>
85        <command>
86            <proto><ptype>EGLBoolean</ptype> <name>eglDisplayAttribANGLE</name></proto>
87            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
88            <param><ptype>EGLint</ptype> <name>attribute</name></param>
89            <param><ptype>EGLAttrib *</ptype> <name>value</name></param>
90        </command>
91        <command>
92            <proto><pytpe>EGLBoolean</pytpe> <name>eglSwapBuffersWithFrameTokenANGLE</name></proto>
93            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
94            <param><ptype>EGLSurface</ptype> <name>surface</name></param>
95            <param><ptype>EGLFrameTokenANGLE</ptype> <name>frametoken</name></param>
96        </command>
97        <command>
98            <proto><pytpe>void</pytpe> <name>eglReleaseHighPowerGPUANGLE</name></proto>
99            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
100            <param><ptype>EGLContext</ptype> <name>ctx</name></param>
101        </command>
102        <command>
103            <proto><pytpe>void</pytpe> <name>eglReacquireHighPowerGPUANGLE</name></proto>
104            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
105            <param><ptype>EGLContext</ptype> <name>ctx</name></param>
106        </command>
107        <command>
108            <proto><pytpe>void</pytpe> <name>eglHandleGPUSwitchANGLE</name></proto>
109            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
110        </command>
111        <command>
112            <proto><ptype>EGLBoolean</ptype> <name>eglQueryDisplayAttribANGLE</name></proto>
113            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
114            <param><ptype>EGLint</ptype> <name>attribute</name></param>
115            <param><ptype>EGLAttrib *</ptype> <name>value</name></param>
116        </command>
117        <command>
118            <proto><ptype>EGLBoolean</ptype> <name>eglExportVkImageANGLE</name></proto>
119            <param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
120            <param><ptype>EGLImage</ptype> <name>image</name></param>
121            <param><ptype>void *</ptype> <name>vk_image</name></param>
122            <param><ptype>void *</ptype> <name>vk_image_create_info</name></param>
123        </command>
124    </commands>
125    <!-- SECTION: ANGLE extension interface definitions -->
126    <extensions>
127        <extension name="EGL_ANGLE_device_creation" supported="egl">
128            <require>
129                <command name="eglCreateDeviceANGLE"/>
130                <command name="eglReleaseDeviceANGLE"/>
131            </require>
132        </extension>
133        <extension name="EGL_ANGLE_feature_control" supported="egl">
134            <require>
135                <command name="eglQueryStringiANGLE"/>
136                <command name="eglQueryDisplayAttribANGLE"/>
137            </require>
138        </extension>
139        <extension name="EGL_ANGLE_stream_producer_d3d_texture" supported="egl">
140            <require>
141                <command name="eglCreateStreamProducerD3DTextureANGLE"/>
142                <command name="eglStreamPostD3DTextureANGLE"/>
143            </require>
144        </extension>
145        <extension name="EGL_CHROMIUM_sync_control" supported="egl">
146            <require>
147                <command name="eglGetSyncValuesCHROMIUM"/>
148            </require>
149        </extension>
150        <extension name="EGL_ANGLE_sync_control_rate" supported="egl">
151            <require>
152                <command name="eglGetMscRateANGLE"/>
153            </require>
154        </extension>
155        <extension name="EGL_ANGLE_program_cache_control" supported="egl">
156            <require>
157                <command name="eglProgramCacheGetAttribANGLE"/>
158                <command name="eglProgramCacheQueryANGLE"/>
159                <command name="eglProgramCachePopulateANGLE"/>
160                <command name="eglProgramCacheResizeANGLE"/>
161            </require>
162        </extension>
163        <extension name="EGL_ANGLE_swap_with_frame_token" supported="egl">
164            <require>
165                <command name="eglSwapBuffersWithFrameTokenANGLE"/>
166            </require>
167        </extension>
168        <extension name="EGL_ANGLE_power_preference" supported="egl">
169            <require>
170                <command name="eglReleaseHighPowerGPUANGLE"/>
171                <command name="eglReacquireHighPowerGPUANGLE"/>
172                <command name="eglHandleGPUSwitchANGLE"/>
173            </require>
174        </extension>
175        <extension name="EGL_ANGLE_display_semaphore_share_group" supported="egl">
176            <require>
177                <enum name="EGL_DISPLAY_SEMAPHORE_SHARE_GROUP_ANGLE"/>
178            </require>
179        </extension>
180        <extension name="EGL_ANGLE_display_texture_share_group" supported="egl">
181            <require>
182                <enum name="EGL_DISPLAY_TEXTURE_SHARE_GROUP_ANGLE"/>
183            </require>
184        </extension>
185        <extension name="EGL_ANGLE_vulkan_image" supported="egl">
186            <require>
187                <command name="eglExportVkImageANGLE"/>
188            </require>
189        </extension>
190    </extensions>
191</registry>
192