1Name
2
3    ANDROID_framebuffer_target
4
5Name Strings
6
7    EGL_ANDROID_framebuffer_target
8
9Contributors
10
11    Jamie Gennis
12
13Contact
14
15    Jamie Gennis, Google Inc. (jgennis 'at' google.com)
16
17Status
18
19    Complete
20
21Version
22
23    Version 1, September 20, 2012
24
25Number
26
27    EGL Extension #47
28
29Dependencies
30
31    Requires EGL 1.0
32
33    This extension is written against the wording of the EGL 1.4 Specification
34
35Overview
36
37    Android supports a number of different ANativeWindow implementations that
38    can be used to create an EGLSurface.  One implementation, which is used to
39    send the result of performing window composition to a display, may have
40    some device-specific restrictions.  Because of this, some EGLConfigs may
41    be incompatible with these ANativeWindows.  This extension introduces a
42    new boolean EGLConfig attribute that indicates whether the EGLConfig
43    supports rendering to an ANativeWindow for which the buffers are passed to
44    the HWComposer HAL as a framebuffer target layer.
45
46New Types
47
48    None.
49
50New Procedures and Functions
51
52    None.
53
54New Tokens
55
56    Accepted by the <attribute> parameter of eglGetConfigAttrib and
57    the <attrib_list> parameter of eglChooseConfig:
58
59        EGL_FRAMEBUFFER_TARGET_ANDROID         0x3147
60
61Changes to Chapter 3 of the EGL 1.4 Specification (EGL Functions and Errors)
62
63    Section 3.4, Configuration Management, add a row to Table 3.1.
64
65              Attribute                    Type                  Notes
66        ------------------------------    -------     ---------------------------
67        EGL_FRAMEBUFFER_TARGET_ANDROID    boolean     whether use as a HWComposer
68                                                      framebuffer target layer is
69                                                      supported
70
71    Section 3.4, Configuration Management, add a row to Table 3.4.
72
73              Attribute                    Default     Selection  Sort   Sort
74                                                       Criteria   Order  Priority
75        ------------------------------  -------------  ---------  -----  --------
76        EGL_FRAMEBUFFER_TARGET_ANDROID  EGL_DONT_CARE    Exact    None
77
78    Section 3.4, Configuration Management, add a paragraph at the end of the
79    subsection titled Other EGLConfig Attribute Descriptions.
80
81        EGL_FRAMEBUFFER_TARGET_ANDROID is a boolean indicating whether the
82        config may be used to create an EGLSurface from an ANativeWindow for
83        which the buffers are to be passed to HWComposer as a framebuffer
84        target layer.
85
86    Section 3.4.1, Querying Configurations, change the last paragraph as follow
87
88        EGLConfigs are not sorted with respect to the parameters
89        EGL_BIND_TO_TEXTURE_RGB, EGL_BIND_TO_TEXTURE_RGBA, EGL_CONFORMANT,
90        EGL_LEVEL, EGL_NATIVE_RENDERABLE, EGL_MAX_SWAP_INTERVAL,
91        EGL_MIN_SWAP_INTERVAL, EGL_RENDERABLE_TYPE, EGL_SURFACE_TYPE,
92        EGL_TRANSPARENT_TYPE, EGL_TRANSPARENT_RED_VALUE,
93        EGL_TRANSPARENT_GREEN_VALUE, EGL_TRANSPARENT_BLUE_VALUE, and
94        EGL_RECORDABLE_ANDROID.
95
96Issues
97
98
99Revision History
100
101#1 (Jamie Gennis, September 20, 2012)
102    - Initial draft.
103