mirror of
https://github.com/godotengine/godot-angle-static.git
synced 2026-01-06 02:09:55 +03:00
This is a first step towards auto-generating more EGL code. It includes format handling for all the EGL parameter types, type reinterpretation for EGL types using the "packed enum" handling, and code refactoring to support the new consistent validation entry point pattern. Bug: angleproject:2621 Change-Id: I2740e82928db311aa934825cbe74bd75bf49c33c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2552976 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
170 lines
8.3 KiB
XML
170 lines
8.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<registry>
|
|
<comment>
|
|
Copyright 2018 The ANGLE Project Authors. All rights reserved.
|
|
Use of this source code is governed by a BSD-style license that can be
|
|
found in the LICENSE file.
|
|
|
|
egl_angle_ext.xml
|
|
Includes data used to auto-generate ANGLE classes.
|
|
</comment>
|
|
<!-- SECTION: EGL command definitions. -->
|
|
<commands namespace="EGL">
|
|
<command>
|
|
<proto><ptype>EGLDeviceEXT</ptype> <name>eglCreateDeviceANGLE</name></proto>
|
|
<param><ptype>EGLint</ptype> <name>device_type</name></param>
|
|
<param>void *<name>native_device</name></param>
|
|
<param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLBoolean</ptype> <name>eglReleaseDeviceANGLE</name></proto>
|
|
<param><ptype>EGLDeviceEXT</ptype> <name>device</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLBoolean</ptype> <name>eglCreateStreamProducerD3DTextureANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
|
|
<param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLBoolean</ptype> <name>eglStreamPostD3DTextureANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLStreamKHR</ptype> <name>stream</name></param>
|
|
<param>void *<name>texture</name></param>
|
|
<param>const <ptype>EGLAttrib</ptype> *<name>attrib_list</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLBoolean</ptype> <name>eglGetMscRateANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLSurface</ptype> <name>surface</name></param>
|
|
<param><ptype>EGLint</ptype> *<name>numerator</name></param>
|
|
<param><ptype>EGLint</ptype> *<name>denominator</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLBoolean</ptype> <name>eglGetSyncValuesCHROMIUM</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLSurface</ptype> <name>surface</name></param>
|
|
<param><ptype>EGLuint64KHR</ptype> *<name>ust</name></param>
|
|
<param><ptype>EGLuint64KHR</ptype> *<name>msc</name></param>
|
|
<param><ptype>EGLuint64KHR</ptype> *<name>sbc</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLint</ptype> <name>eglProgramCacheGetAttribANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLenum</ptype> <name>attrib</name></param>
|
|
</command>
|
|
<command>
|
|
<proto>void <name>eglProgramCacheQueryANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLint</ptype> <name>index</name></param>
|
|
<param>void *<name>key</name></param>
|
|
<param><ptype>EGLint</ptype> *<name>keysize</name></param>
|
|
<param>void *<name>binary</name></param>
|
|
<param><ptype>EGLint</ptype> *<name>binarysize</name></param>
|
|
</command>
|
|
<command>
|
|
<proto>void <name>eglProgramCachePopulateANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param>const void *<name>key</name></param>
|
|
<param><ptype>EGLint</ptype> <name>keysize</name></param>
|
|
<param>const void *<name>binary</name></param>
|
|
<param><ptype>EGLint</ptype> <name>binarysize</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLint</ptype> <name>eglProgramCacheResizeANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLint</ptype> <name>limit</name></param>
|
|
<param><ptype>EGLint</ptype> <name>mode</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>const char *</ptype> <name>eglQueryStringiANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLint</ptype> <name>name</name></param>
|
|
<param><ptype>EGLint</ptype> <name>index</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLBoolean</ptype> <name>eglDisplayAttribANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLint</ptype> <name>attribute</name></param>
|
|
<param><ptype>EGLAttrib *</ptype> <name>value</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><pytpe>EGLBoolean</pytpe> <name>eglSwapBuffersWithFrameTokenANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLSurface</ptype> <name>surface</name></param>
|
|
<param><ptype>EGLFrameTokenANGLE</ptype> <name>frametoken</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><pytpe>void</pytpe> <name>eglReleaseHighPowerGPUANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLContext</ptype> <name>ctx</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><pytpe>void</pytpe> <name>eglReacquireHighPowerGPUANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLContext</ptype> <name>ctx</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><pytpe>void</pytpe> <name>eglHandleGPUSwitchANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
</command>
|
|
<command>
|
|
<proto><ptype>EGLBoolean</ptype> <name>eglQueryDisplayAttribANGLE</name></proto>
|
|
<param><ptype>EGLDisplay</ptype> <name>dpy</name></param>
|
|
<param><ptype>EGLint</ptype> <name>attribute</name></param>
|
|
<param><ptype>EGLAttrib *</ptype> <name>value</name></param>
|
|
</command>
|
|
</commands>
|
|
<!-- SECTION: ANGLE extension interface definitions -->
|
|
<extensions>
|
|
<extension name="EGL_ANGLE_device_creation" supported="egl">
|
|
<require>
|
|
<command name="eglCreateDeviceANGLE"/>
|
|
<command name="eglReleaseDeviceANGLE"/>
|
|
</require>
|
|
</extension>
|
|
<extension name="EGL_ANGLE_feature_control" supported="egl">
|
|
<require>
|
|
<command name="eglQueryStringiANGLE"/>
|
|
<command name="eglQueryDisplayAttribANGLE"/>
|
|
</require>
|
|
</extension>
|
|
<extension name="EGL_ANGLE_stream_producer_d3d_texture" supported="egl">
|
|
<require>
|
|
<command name="eglCreateStreamProducerD3DTextureANGLE"/>
|
|
<command name="eglStreamPostD3DTextureANGLE"/>
|
|
</require>
|
|
</extension>
|
|
<extension name="EGL_CHROMIUM_sync_control" supported="egl">
|
|
<require>
|
|
<command name="eglGetSyncValuesCHROMIUM"/>
|
|
</require>
|
|
</extension>
|
|
<extension name="EGL_ANGLE_sync_control_rate" supported="egl">
|
|
<require>
|
|
<command name="eglGetMscRateANGLE"/>
|
|
</require>
|
|
</extension>
|
|
<extension name="EGL_ANGLE_program_cache_control" supported="egl">
|
|
<require>
|
|
<command name="eglProgramCacheGetAttribANGLE"/>
|
|
<command name="eglProgramCacheQueryANGLE"/>
|
|
<command name="eglProgramCachePopulateANGLE"/>
|
|
<command name="eglProgramCacheResizeANGLE"/>
|
|
</require>
|
|
</extension>
|
|
<extension name="EGL_ANGLE_swap_with_frame_token" supported="egl">
|
|
<require>
|
|
<command name="eglSwapBuffersWithFrameTokenANGLE"/>
|
|
</require>
|
|
</extension>
|
|
<extension name="EGL_ANGLE_power_preference" supported="egl">
|
|
<require>
|
|
<command name="eglReleaseHighPowerGPUANGLE"/>
|
|
<command name="eglReacquireHighPowerGPUANGLE"/>
|
|
<command name="eglHandleGPUSwitchANGLE"/>
|
|
</require>
|
|
</extension>
|
|
</extensions>
|
|
</registry>
|