Add a spec for EGL_ANDROID_framebuffer_target.
This change adds a new extension for EGL implementations to indicate the EGLConfigs that support use as a HWComposer framebuffer target layer. Change-Id: Ia7c8fbe8da09d57b4ec8bf1d9ddb67ca21aa2885
This commit is contained in:
parent
38e623bc5c
commit
aaf421c465
102
opengl/specs/EGL_ANDROID_framebuffer_target.txt
Normal file
102
opengl/specs/EGL_ANDROID_framebuffer_target.txt
Normal file
@ -0,0 +1,102 @@
|
||||
Name
|
||||
|
||||
ANDROID_framebuffer_target
|
||||
|
||||
Name Strings
|
||||
|
||||
EGL_ANDROID_framebuffer_target
|
||||
|
||||
Contributors
|
||||
|
||||
Jamie Gennis
|
||||
|
||||
Contact
|
||||
|
||||
Jamie Gennis, Google Inc. (jgennis 'at' google.com)
|
||||
|
||||
Status
|
||||
|
||||
Draft.
|
||||
|
||||
Version
|
||||
|
||||
Version 1, September 20, 2012
|
||||
|
||||
Number
|
||||
|
||||
EGL Extension #XXX
|
||||
|
||||
Dependencies
|
||||
|
||||
Requires EGL 1.0
|
||||
|
||||
This extension is written against the wording of the EGL 1.4 Specification
|
||||
|
||||
Overview
|
||||
|
||||
Android supports a number of different ANativeWindow implementations that
|
||||
can be used to create an EGLSurface. One implementation, which is used to
|
||||
send the result of performing window composition to a display, may have
|
||||
some device-specific restrictions. Because of this, some EGLConfigs may
|
||||
be incompatible with these ANativeWindows. This extension introduces a
|
||||
new boolean EGLConfig attribute that indicates whether the EGLConfig
|
||||
supports rendering to an ANativeWindow for which the buffers are passed to
|
||||
the HWComposer HAL as a framebuffer target layer.
|
||||
|
||||
New Types
|
||||
|
||||
None.
|
||||
|
||||
New Procedures and Functions
|
||||
|
||||
None.
|
||||
|
||||
New Tokens
|
||||
|
||||
Accepted by the <attribute> parameter of eglGetConfigAttrib and
|
||||
the <attrib_list> parameter of eglChooseConfig:
|
||||
|
||||
EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147
|
||||
|
||||
Changes to Chapter 3 of the EGL 1.4 Specification (EGL Functions and Errors)
|
||||
|
||||
Section 3.4, Configuration Management, add a row to Table 3.1.
|
||||
|
||||
Attribute Type Notes
|
||||
------------------------------ ------- ---------------------------
|
||||
EGL_FRAMEBUFFER_TARGET_ANDROID boolean whether use as a HWComposer
|
||||
framebuffer target layer is
|
||||
supported
|
||||
|
||||
Section 3.4, Configuration Management, add a row to Table 3.4.
|
||||
|
||||
Attribute Default Selection Sort Sort
|
||||
Criteria Order Priority
|
||||
------------------------------ ------------- --------- ----- --------
|
||||
EGL_FRAMEBUFFER_TARGET_ANDROID EGL_DONT_CARE Exact None
|
||||
|
||||
Section 3.4, Configuration Management, add a paragraph at the end of the
|
||||
subsection titled Other EGLConfig Attribute Descriptions.
|
||||
|
||||
EGL_FRAMEBUFFER_TARGET_ANDROID is a boolean indicating whether the
|
||||
config may be used to create an EGLSurface from an ANativeWindow for
|
||||
which the buffers are to be passed to HWComposer as a framebuffer
|
||||
target layer.
|
||||
|
||||
Section 3.4.1, Querying Configurations, change the last paragraph as follow
|
||||
|
||||
EGLConfigs are not sorted with respect to the parameters
|
||||
EGL_BIND_TO_TEXTURE_RGB, EGL_BIND_TO_TEXTURE_RGBA, EGL_CONFORMANT,
|
||||
EGL_LEVEL, EGL_NATIVE_RENDERABLE, EGL_MAX_SWAP_INTERVAL,
|
||||
EGL_MIN_SWAP_INTERVAL, EGL_RENDERABLE_TYPE, EGL_SURFACE_TYPE,
|
||||
EGL_TRANSPARENT_TYPE, EGL_TRANSPARENT_RED_VALUE,
|
||||
EGL_TRANSPARENT_GREEN_VALUE, EGL_TRANSPARENT_BLUE_VALUE, and
|
||||
EGL_RECORDABLE_ANDROID.
|
||||
|
||||
Issues
|
||||
|
||||
|
||||
Revision History
|
||||
|
||||
#1 (Jamie Gennis, September 20, 2012)
|
||||
- Initial draft.
|
@ -8,9 +8,10 @@ for use by Android extensions.
|
||||
---------------- ----------------------------------
|
||||
0x3140 EGL_ANDROID_image_native_buffer
|
||||
0x3141 (unused)
|
||||
0x3142 EGL_ANDROID_recordable
|
||||
0x3142 EGL_RECORDABLE_ANDROID (EGL_ANDROID_recordable)
|
||||
0x3143 EGL_VERSION_HW_ANDROID (internal use)
|
||||
0x3144 EGL_SYNC_ANDROID_FENCE_ANDROID
|
||||
0x3145 EGL_SYNC_FENCE_FD_ANDROID
|
||||
0x3146 EGL_SYNC_ANDROID_FENCE_SIGNALED_ANDROID
|
||||
0x3147 - 0x314F (unused)
|
||||
0x3144 EGL_SYNC_NATIVE_FENCE_ANDROID (EGL_ANDROID_native_fence_sync)
|
||||
0x3145 EGL_SYNC_NATIVE_FENCE_FD_ANDROID (EGL_ANDROID_native_fence_sync)
|
||||
0x3146 EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID (EGL_ANDROID_native_fence_sync)
|
||||
0x3147 EGL_FRAMEBUFFER_TARGET_ANDROID (EGL_ANDROID_framebuffer_target)
|
||||
0x3148 - 0x314F (unused)
|
||||
|
Loading…
Reference in New Issue
Block a user