~mmach/netext73/webkit2gtk

« back to all changes in this revision

Viewing changes to Source/ThirdParty/ANGLE/extensions/EGL_ANGLE_feature_control.txt

  • Committer: mmach
  • Date: 2023-06-16 17:21:37 UTC
  • Revision ID: netbit73@gmail.com-20230616172137-2rqx6yr96ga9g3kp
1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Name
 
2
 
 
3
    EGL_ANGLE_feature_control
 
4
 
 
5
Name Strings
 
6
 
 
7
    EGL_ANGLE_feature_control
 
8
 
 
9
Contributors
 
10
 
 
11
    Jonah Ryan-Davis  (jonahr 'at' google.com)
 
12
 
 
13
Contact
 
14
 
 
15
    Jonah Ryan-Davis  (jonahr 'at' google.com)
 
16
 
 
17
Status
 
18
 
 
19
    Draft
 
20
 
 
21
Version
 
22
 
 
23
    Version 1, May 23, 2019
 
24
 
 
25
Number
 
26
 
 
27
    EGL Extension #XXX
 
28
 
 
29
Extension Type
 
30
 
 
31
    EGL client extension
 
32
 
 
33
Dependencies
 
34
 
 
35
    This extension is written against the wording of the EGL 1.5
 
36
    Specification.
 
37
 
 
38
    EGL_EXT_device_query affects the definition of this extension.
 
39
 
 
40
Overview
 
41
 
 
42
    This extension adds two methods to query arrays holding
 
43
    information about the available features for a given device.
 
44
    One method is used to query the total count of available
 
45
    features. Another method is used to query a string property
 
46
    of an individual feature given the feature's index.
 
47
 
 
48
IP Status
 
49
 
 
50
    No known claims.
 
51
 
 
52
New Types
 
53
 
 
54
    None.
 
55
 
 
56
New Procedures and Functions
 
57
 
 
58
    const char *eglQueryStringiANGLE(
 
59
        EGLDisplay dpy,
 
60
        EGLint name,
 
61
        EGLint index);
 
62
 
 
63
    EGLBoolean eglQueryDisplayAttribANGLE(
 
64
        EGLDisplay dpy,
 
65
        EGLint attribute,
 
66
        EGLAttrib *value);
 
67
 
 
68
New Tokens
 
69
 
 
70
    Accepted as a queried <name> in eglQueryStringiANGLE:
 
71
 
 
72
        EGL_FEATURE_NAME_ANGLE          0x3460
 
73
        EGL_FEATURE_CATEGORY_ANGLE      0x3461
 
74
        EGL_FEATURE_DESCRIPTION_ANGLE   0x3462
 
75
        EGL_FEATURE_BUG_ANGLE           0x3463
 
76
        EGL_FEATURE_STATUS_ANGLE        0x3464
 
77
        EGL_FEATURE_CONDITION_ANGLE     0x3468
 
78
 
 
79
    Accepted as a queried <attribute> in eglQueryDisplayAttribANGLE
 
80
 
 
81
        EGL_FEATURE_COUNT_ANGLE         0x3465
 
82
 
 
83
    Accepted as an attribute name in the <attrib_list> argument of
 
84
    eglGetPlatformDisplay
 
85
 
 
86
        EGL_FEATURE_OVERRIDES_ENABLED_ANGLE   0x3466
 
87
        EGL_FEATURE_OVERRIDES_DISABLED_ANGLE  0x3467
 
88
        EGL_FEATURE_ALL_DISABLED_ANGLE  0x3469
 
89
 
 
90
New Behavior
 
91
 
 
92
        EGLDisplay eglGetPlatformDisplay(EGLenum platform, void
 
93
            *native_display, const EGLAttrib *attrib_list);
 
94
 
 
95
    The attribute following EGL_FEATURE_OVERRIDES_ENABLED_ANGLE or
 
96
    EGL_FEATURE_OVERRIDES_DISABLED_ANGLE should be of type char**,
 
97
    which should contain a null-terminated array of C strings naming
 
98
    the features to be enabled or disabled upon display creation.
 
99
    Any features unspecified in one of these arrays will be
 
100
    initialized with an internal heuristic.
 
101
    The attribute following EGL_FEATURE_ALL_DISABLED_ANGLE should be
 
102
    either EGL_TRUE to disable all features that are not overridden,
 
103
    or EGL_FALSE to let ANGLE determine which features to enable.
 
104
 
 
105
Add the following to the end of section 3.3 "EGL Queries":
 
106
 
 
107
        const char *eglQueryStringiANGLE(EGLDisplay dpy,
 
108
            EGLint name, EGLint index);
 
109
 
 
110
    eGLQueryStringiANGLE returns a pointer to a static, null-
 
111
    terminated string describing some aspect of the EGL
 
112
    implementation running on the specified display, from an array of
 
113
    strings. name may be one of EGL_FEATURE_NAME_ANGLE,
 
114
    EGL_FEATURE_CATEGORY_ANGLE, EGL_FEATURE_DESCRIPTION_ANGLE,
 
115
    EGL_FEATURE_BUG_ANGLE, or EGL_FEATURE_STATUS_ANGLE. Index
 
116
    must be a valid index to access into the array of strings.
 
117
        The EGL_FEATURE_NAME_ANGLE array contains strings that
 
118
    describe the name of each feature available in the display.
 
119
        The EGL_FEATURE_CATEGORY_ANGLE array contains strings
 
120
    with corresponding indices to the array of names. Each string
 
121
    describes the category of the feature at the specified index.
 
122
        The EGL_FEATURE_DESCRIPTION_ANGLE array contains strings
 
123
    with corresponding indices to the array of names. Each string
 
124
    describes the feature at the specified index.
 
125
        The EGL_FEATURE_BUG_ANGLE array contains strings
 
126
    with corresponding indices to the array of names. Each string
 
127
    describes the bug related to the feature at the specified
 
128
    index.
 
129
        The EGL_FEATURE_STATUS_ANGLE array contains strings
 
130
    with corresponding indices to the array of names. Each string has
 
131
    the value "enabled" if the feature is currently enabled, or
 
132
    "disabled" if the feature is currently disabled.
 
133
        The EGL_FEATURE_CONDITION_ANGLE array contains strings that
 
134
    describe to the condition that sets the corresponding value in
 
135
    the EGL_FEATURE_STATUS_ANGLE array.
 
136
 
 
137
    Errors
 
138
 
 
139
    On failure, NULL is returned.
 
140
    An EGL_BAD_DISPLAY error is generated if dpy is not a valid
 
141
    display.
 
142
    An EGL_BAD_PARAMETER error is generated if name is not one of the
 
143
    values described above.
 
144
    An EGL_BAD_PARAMETER error is generated if index is not within
 
145
    the valid range of indices for the array.
 
146
 
 
147
Add a section "3.4 Display Attributes" after "3.3 EGL Versioning"
 
148
 
 
149
    To query attributes of an initialized display, use:
 
150
 
 
151
        EGLBoolean eglQueryDisplayAttribANGLE(EGLDisplay dpy,
 
152
                                            EGLint attribute,
 
153
                                            EGLAttrib *value);
 
154
 
 
155
    On success, EGL_TRUE is returned.
 
156
    If <attribute> is EGL_FEATURE_COUNT_ANGLE, the total count of
 
157
    available features is returned in <value>.
 
158
 
 
159
    On failure, EGL_FALSE is returned.
 
160
    An EGL_BAD_DISPLAY error is generated if dpy is not a valid
 
161
    display.
 
162
    An EGL_BAD_ATTRIBUTE error is generated if <attribute> is not a
 
163
    valid value.
 
164
 
 
165
Issues
 
166
 
 
167
    None
 
168
 
 
169
Revision History
 
170
 
 
171
    Version 1, May 23, 2019 (Jonah Ryan-Davis)
 
172
        - Initial Draft