| Name |
| |
| ANGLE_timestamp_surface_attribute |
| |
| Name Strings |
| |
| EGL_ANGLE_timestamp_surface_attribute |
| |
| Contributors |
| |
| Mohan Maiya |
| Ian Elliot |
| |
| Contacts |
| |
| Mohan Maiya, Samsung (m.maiya 'at' samsung 'dot' com) |
| |
| Notice |
| |
| Copyright (c) 2022 The Khronos Group Inc. Copyright terms at |
| http://www.khronos.org/registry/speccopyright.html |
| |
| Status |
| |
| Draft. |
| |
| Version |
| |
| Version 1, July 12, 2022 |
| |
| Number |
| |
| EGL Extension ### |
| |
| Dependencies |
| |
| Requires support for EGL_ANDROID_get_frame_timestamps extension. |
| Refer to EGL_ANDROID_get_frame_timestamps specification for other |
| dependencies. |
| |
| Overview |
| |
| On Android most of the functionality required by EGL_ANDROID_get_frame_timestamps |
| is handled by a wrapper outside of the EGL driver. However it is necessary |
| to be aware of EGL_TIMESTAMPS_ANDROID state on some drivers |
| (like ANGLE, which layers GLES APIs over Vulkan, which needs this information |
| to setup Vulkan swapchains appropriately). |
| |
| This extension allows ANGLE's EGL implementation to rely on the Android EGL |
| loader to support and implement the EGL_ANDROID_get_frame_timestamps extension, |
| with the exception that ANGLE's EGL implementation will support caching |
| EGL_TIMESTAMPS_ANDROID state. |
| |
| For details about EGL_TIMESTAMPS_ANDROID and other timestamp related terminology |
| please refer to the EGL_ANDROID_get_frame_timestamps specification. |
| |
| |
| New Types |
| |
| None. |
| |
| New Procedures and Functions |
| |
| None. |
| |
| New Tokens |
| |
| None. |
| |
| For clarity, restating the section of EGL_ANDROID_get_frame_timestamps specification |
| that will be supported by this extension: |
| |
| Add to the list of supported tokens for eglSurfaceAttrib in section 3.5.6 |
| "Surface Attributes", page 43: |
| |
| If attribute is EGL_TIMESTAMPS_ANDROID, then values specifies whether to |
| enable/disable timestamp collection for this surface. A value of EGL_TRUE |
| enables timestamp collection, while a value of EGL_FALSE disables it. The |
| initial value is false. If surface is not a window surface this has no |
| effect. |
| |
| Issues |
| |
| None. |
| |
| Revision History |
| |
| #2 - (August 23, 2022) Mohan Maiya |
| Added language to clarify that the extension will require support, |
| from an external module, of the EGL_ANDROID_get_frame_timestamps |
| extension for the most part with the exception of providing support |
| for caching EGL_TIMESTAMPS_ANDROID state. |
| |
| #1 - (July 12, 2022) Mohan Maiya |
| Original draft |