xref: /aosp_15_r20/external/deqp/scripts/opengl/gen_str_util.py (revision 35238bce31c2a825756842865a792f8cf7f89930)
1*35238bceSAndroid Build Coastguard Worker# -*- coding: utf-8 -*-
2*35238bceSAndroid Build Coastguard Worker
3*35238bceSAndroid Build Coastguard Worker#-------------------------------------------------------------------------
4*35238bceSAndroid Build Coastguard Worker# drawElements Quality Program utilities
5*35238bceSAndroid Build Coastguard Worker# --------------------------------------
6*35238bceSAndroid Build Coastguard Worker#
7*35238bceSAndroid Build Coastguard Worker# Copyright 2015 The Android Open Source Project
8*35238bceSAndroid Build Coastguard Worker#
9*35238bceSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
10*35238bceSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
11*35238bceSAndroid Build Coastguard Worker# You may obtain a copy of the License at
12*35238bceSAndroid Build Coastguard Worker#
13*35238bceSAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
14*35238bceSAndroid Build Coastguard Worker#
15*35238bceSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
16*35238bceSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
17*35238bceSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18*35238bceSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
19*35238bceSAndroid Build Coastguard Worker# limitations under the License.
20*35238bceSAndroid Build Coastguard Worker#
21*35238bceSAndroid Build Coastguard Worker#-------------------------------------------------------------------------
22*35238bceSAndroid Build Coastguard Worker
23*35238bceSAndroid Build Coastguard Workerimport os
24*35238bceSAndroid Build Coastguard Workerimport string
25*35238bceSAndroid Build Coastguard Worker
26*35238bceSAndroid Build Coastguard Worker# TODO remove
27*35238bceSAndroid Build Coastguard Workerimport sys
28*35238bceSAndroid Build Coastguard Workersys.path.append(os.path.dirname(os.path.dirname(__file__)))
29*35238bceSAndroid Build Coastguard Worker
30*35238bceSAndroid Build Coastguard Workerfrom src_util import *
31*35238bceSAndroid Build Coastguard Workerfrom khr_util.gen_str_util import addValuePrefix, genStrUtilProtos, genStrUtilImpls
32*35238bceSAndroid Build Coastguard Worker
33*35238bceSAndroid Build Coastguard Worker# Bitfield mapping
34*35238bceSAndroid Build Coastguard WorkerBITFIELD_GROUPS = [
35*35238bceSAndroid Build Coastguard Worker    # ClearBufferMask
36*35238bceSAndroid Build Coastguard Worker    ("BufferMask", ["DEPTH_BUFFER_BIT", "STENCIL_BUFFER_BIT", "COLOR_BUFFER_BIT"]),
37*35238bceSAndroid Build Coastguard Worker    # MapBufferUsageMask
38*35238bceSAndroid Build Coastguard Worker    ("BufferMapFlags", [
39*35238bceSAndroid Build Coastguard Worker        "MAP_READ_BIT",
40*35238bceSAndroid Build Coastguard Worker        "MAP_WRITE_BIT",
41*35238bceSAndroid Build Coastguard Worker        "MAP_INVALIDATE_RANGE_BIT",
42*35238bceSAndroid Build Coastguard Worker        "MAP_INVALIDATE_BUFFER_BIT",
43*35238bceSAndroid Build Coastguard Worker        "MAP_FLUSH_EXPLICIT_BIT",
44*35238bceSAndroid Build Coastguard Worker        "MAP_UNSYNCHRONIZED_BIT"
45*35238bceSAndroid Build Coastguard Worker        ]),
46*35238bceSAndroid Build Coastguard Worker    # MemoryBarrierMask
47*35238bceSAndroid Build Coastguard Worker    ("MemoryBarrierFlags", [
48*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_BARRIER_BIT",
49*35238bceSAndroid Build Coastguard Worker        "ELEMENT_ARRAY_BARRIER_BIT",
50*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BARRIER_BIT",
51*35238bceSAndroid Build Coastguard Worker        "TEXTURE_FETCH_BARRIER_BIT",
52*35238bceSAndroid Build Coastguard Worker        "SHADER_IMAGE_ACCESS_BARRIER_BIT",
53*35238bceSAndroid Build Coastguard Worker        "COMMAND_BARRIER_BIT",
54*35238bceSAndroid Build Coastguard Worker        "PIXEL_BUFFER_BARRIER_BIT",
55*35238bceSAndroid Build Coastguard Worker        "TEXTURE_UPDATE_BARRIER_BIT",
56*35238bceSAndroid Build Coastguard Worker        "BUFFER_UPDATE_BARRIER_BIT",
57*35238bceSAndroid Build Coastguard Worker        "FRAMEBUFFER_BARRIER_BIT",
58*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_BARRIER_BIT",
59*35238bceSAndroid Build Coastguard Worker        "ATOMIC_COUNTER_BARRIER_BIT"
60*35238bceSAndroid Build Coastguard Worker        ]),
61*35238bceSAndroid Build Coastguard Worker    # ShaderTypeMask
62*35238bceSAndroid Build Coastguard Worker    ("ShaderTypeMask", [
63*35238bceSAndroid Build Coastguard Worker        "VERTEX_SHADER_BIT",
64*35238bceSAndroid Build Coastguard Worker        "FRAGMENT_SHADER_BIT",
65*35238bceSAndroid Build Coastguard Worker        "COMPUTE_SHADER_BIT",
66*35238bceSAndroid Build Coastguard Worker        "GEOMETRY_SHADER_BIT",
67*35238bceSAndroid Build Coastguard Worker        "TESS_CONTROL_SHADER_BIT",
68*35238bceSAndroid Build Coastguard Worker        "TESS_EVALUATION_SHADER_BIT"
69*35238bceSAndroid Build Coastguard Worker        ]),
70*35238bceSAndroid Build Coastguard Worker]
71*35238bceSAndroid Build Coastguard Worker
72*35238bceSAndroid Build Coastguard Worker# Enum mapping
73*35238bceSAndroid Build Coastguard WorkerENUM_GROUPS = [
74*35238bceSAndroid Build Coastguard Worker    # Common enums
75*35238bceSAndroid Build Coastguard Worker
76*35238bceSAndroid Build Coastguard Worker    # ErrorCode
77*35238bceSAndroid Build Coastguard Worker    ("Error", ["NO_ERROR", "INVALID_ENUM", "INVALID_VALUE", "INVALID_OPERATION", "OUT_OF_MEMORY",
78*35238bceSAndroid Build Coastguard Worker                             "INVALID_FRAMEBUFFER_OPERATION", "CONTEXT_LOST"]),
79*35238bceSAndroid Build Coastguard Worker    # PixelType, partially
80*35238bceSAndroid Build Coastguard Worker    ("Type", [
81*35238bceSAndroid Build Coastguard Worker        # GLES2 types
82*35238bceSAndroid Build Coastguard Worker        "BYTE",
83*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_BYTE",
84*35238bceSAndroid Build Coastguard Worker        "SHORT",
85*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_SHORT",
86*35238bceSAndroid Build Coastguard Worker        "INT",
87*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT",
88*35238bceSAndroid Build Coastguard Worker        "FLOAT",
89*35238bceSAndroid Build Coastguard Worker        "FIXED",
90*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_SHORT_5_6_5",
91*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_SHORT_4_4_4_4",
92*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_SHORT_5_5_5_1",
93*35238bceSAndroid Build Coastguard Worker
94*35238bceSAndroid Build Coastguard Worker        # GLES3 types
95*35238bceSAndroid Build Coastguard Worker        "HALF_FLOAT",
96*35238bceSAndroid Build Coastguard Worker        "INT_2_10_10_10_REV",
97*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_2_10_10_10_REV",
98*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_10F_11F_11F_REV",
99*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_5_9_9_9_REV",
100*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_24_8",
101*35238bceSAndroid Build Coastguard Worker        "FLOAT_32_UNSIGNED_INT_24_8_REV",
102*35238bceSAndroid Build Coastguard Worker        "SIGNED_NORMALIZED",
103*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_NORMALIZED",
104*35238bceSAndroid Build Coastguard Worker
105*35238bceSAndroid Build Coastguard Worker        # Extension types
106*35238bceSAndroid Build Coastguard Worker        "HALF_FLOAT_OES",
107*35238bceSAndroid Build Coastguard Worker        ]),
108*35238bceSAndroid Build Coastguard Worker
109*35238bceSAndroid Build Coastguard Worker    # GetPName, also GettableState below
110*35238bceSAndroid Build Coastguard Worker    ("ParamQuery", [
111*35238bceSAndroid Build Coastguard Worker        # Generic
112*35238bceSAndroid Build Coastguard Worker        "LINE_WIDTH",
113*35238bceSAndroid Build Coastguard Worker        "ALIASED_POINT_SIZE_RANGE",
114*35238bceSAndroid Build Coastguard Worker        "ALIASED_LINE_WIDTH_RANGE",
115*35238bceSAndroid Build Coastguard Worker        "CULL_FACE_MODE",
116*35238bceSAndroid Build Coastguard Worker        "FRONT_FACE",
117*35238bceSAndroid Build Coastguard Worker        "DEPTH_RANGE",
118*35238bceSAndroid Build Coastguard Worker        "DEPTH_WRITEMASK",
119*35238bceSAndroid Build Coastguard Worker        "DEPTH_CLEAR_VALUE",
120*35238bceSAndroid Build Coastguard Worker        "DEPTH_FUNC",
121*35238bceSAndroid Build Coastguard Worker        "STENCIL_CLEAR_VALUE",
122*35238bceSAndroid Build Coastguard Worker        "STENCIL_FUNC",
123*35238bceSAndroid Build Coastguard Worker        "STENCIL_FAIL",
124*35238bceSAndroid Build Coastguard Worker        "STENCIL_PASS_DEPTH_FAIL",
125*35238bceSAndroid Build Coastguard Worker        "STENCIL_PASS_DEPTH_PASS",
126*35238bceSAndroid Build Coastguard Worker        "STENCIL_REF",
127*35238bceSAndroid Build Coastguard Worker        "STENCIL_VALUE_MASK",
128*35238bceSAndroid Build Coastguard Worker        "STENCIL_WRITEMASK",
129*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_FUNC",
130*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_FAIL",
131*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_PASS_DEPTH_FAIL",
132*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_PASS_DEPTH_PASS",
133*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_REF",
134*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_VALUE_MASK",
135*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_WRITEMASK",
136*35238bceSAndroid Build Coastguard Worker        "VIEWPORT",
137*35238bceSAndroid Build Coastguard Worker        "SCISSOR_BOX",
138*35238bceSAndroid Build Coastguard Worker        "SCISSOR_TEST",
139*35238bceSAndroid Build Coastguard Worker        "COLOR_CLEAR_VALUE",
140*35238bceSAndroid Build Coastguard Worker        "COLOR_WRITEMASK",
141*35238bceSAndroid Build Coastguard Worker        "UNPACK_ALIGNMENT",
142*35238bceSAndroid Build Coastguard Worker        "PACK_ALIGNMENT",
143*35238bceSAndroid Build Coastguard Worker        "MAX_TEXTURE_SIZE",
144*35238bceSAndroid Build Coastguard Worker        "MAX_VIEWPORT_DIMS",
145*35238bceSAndroid Build Coastguard Worker        "SUBPIXEL_BITS",
146*35238bceSAndroid Build Coastguard Worker        "RED_BITS",
147*35238bceSAndroid Build Coastguard Worker        "GREEN_BITS",
148*35238bceSAndroid Build Coastguard Worker        "BLUE_BITS",
149*35238bceSAndroid Build Coastguard Worker        "ALPHA_BITS",
150*35238bceSAndroid Build Coastguard Worker        "DEPTH_BITS",
151*35238bceSAndroid Build Coastguard Worker        "STENCIL_BITS",
152*35238bceSAndroid Build Coastguard Worker        "POLYGON_OFFSET_UNITS",
153*35238bceSAndroid Build Coastguard Worker        "POLYGON_OFFSET_FILL",
154*35238bceSAndroid Build Coastguard Worker        "POLYGON_OFFSET_FACTOR",
155*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BINDING_2D",
156*35238bceSAndroid Build Coastguard Worker        "SAMPLE_BUFFERS",
157*35238bceSAndroid Build Coastguard Worker        "SAMPLES",
158*35238bceSAndroid Build Coastguard Worker        "SAMPLE_COVERAGE_VALUE",
159*35238bceSAndroid Build Coastguard Worker        "SAMPLE_COVERAGE_INVERT",
160*35238bceSAndroid Build Coastguard Worker
161*35238bceSAndroid Build Coastguard Worker        "MAX_CUBE_MAP_TEXTURE_SIZE",
162*35238bceSAndroid Build Coastguard Worker        "MAX_RENDERBUFFER_SIZE",
163*35238bceSAndroid Build Coastguard Worker
164*35238bceSAndroid Build Coastguard Worker        # Program-related
165*35238bceSAndroid Build Coastguard Worker        "MAX_VERTEX_ATTRIBS",
166*35238bceSAndroid Build Coastguard Worker        "MAX_VERTEX_UNIFORM_VECTORS",
167*35238bceSAndroid Build Coastguard Worker        "MAX_VARYING_VECTORS",
168*35238bceSAndroid Build Coastguard Worker        "MAX_COMBINED_TEXTURE_IMAGE_UNITS",
169*35238bceSAndroid Build Coastguard Worker        "MAX_VERTEX_TEXTURE_IMAGE_UNITS",
170*35238bceSAndroid Build Coastguard Worker        "MAX_TEXTURE_IMAGE_UNITS",
171*35238bceSAndroid Build Coastguard Worker        "MAX_FRAGMENT_UNIFORM_VECTORS"
172*35238bceSAndroid Build Coastguard Worker        ]),
173*35238bceSAndroid Build Coastguard Worker
174*35238bceSAndroid Build Coastguard Worker    # *missing*
175*35238bceSAndroid Build Coastguard Worker    # Program query
176*35238bceSAndroid Build Coastguard Worker    ("ProgramParam", [
177*35238bceSAndroid Build Coastguard Worker        "ACTIVE_ATTRIBUTES",
178*35238bceSAndroid Build Coastguard Worker        "ACTIVE_ATTRIBUTE_MAX_LENGTH",
179*35238bceSAndroid Build Coastguard Worker        "ACTIVE_UNIFORMS",
180*35238bceSAndroid Build Coastguard Worker        "ACTIVE_UNIFORM_BLOCKS",
181*35238bceSAndroid Build Coastguard Worker        "ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH",
182*35238bceSAndroid Build Coastguard Worker        "ACTIVE_UNIFORM_MAX_LENGTH",
183*35238bceSAndroid Build Coastguard Worker        "ATTACHED_SHADERS",
184*35238bceSAndroid Build Coastguard Worker        "DELETE_STATUS",
185*35238bceSAndroid Build Coastguard Worker        "INFO_LOG_LENGTH",
186*35238bceSAndroid Build Coastguard Worker        "LINK_STATUS",
187*35238bceSAndroid Build Coastguard Worker        "PROGRAM_BINARY_RETRIEVABLE_HINT",
188*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_BUFFER_MODE",
189*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_VARYINGS",
190*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH",
191*35238bceSAndroid Build Coastguard Worker        "VALIDATE_STATUS",
192*35238bceSAndroid Build Coastguard Worker        "GEOMETRY_INPUT_TYPE",
193*35238bceSAndroid Build Coastguard Worker        "GEOMETRY_OUTPUT_TYPE",
194*35238bceSAndroid Build Coastguard Worker        "GEOMETRY_VERTICES_OUT",
195*35238bceSAndroid Build Coastguard Worker        "GEOMETRY_SHADER_INVOCATIONS",
196*35238bceSAndroid Build Coastguard Worker        "PROGRAM_SEPARABLE",
197*35238bceSAndroid Build Coastguard Worker        "COMPUTE_WORK_GROUP_SIZE",
198*35238bceSAndroid Build Coastguard Worker        "ACTIVE_ATOMIC_COUNTER_BUFFERS",
199*35238bceSAndroid Build Coastguard Worker        "TESS_CONTROL_OUTPUT_VERTICES",
200*35238bceSAndroid Build Coastguard Worker        "TESS_GEN_MODE",
201*35238bceSAndroid Build Coastguard Worker        "TESS_GEN_SPACING",
202*35238bceSAndroid Build Coastguard Worker        "TESS_GEN_VERTEX_ORDER",
203*35238bceSAndroid Build Coastguard Worker        "TESS_GEN_POINT_MODE",
204*35238bceSAndroid Build Coastguard Worker        ]),
205*35238bceSAndroid Build Coastguard Worker
206*35238bceSAndroid Build Coastguard Worker    # *missing*
207*35238bceSAndroid Build Coastguard Worker    # Uniform query
208*35238bceSAndroid Build Coastguard Worker    ("UniformParam", [
209*35238bceSAndroid Build Coastguard Worker        "UNIFORM_TYPE",
210*35238bceSAndroid Build Coastguard Worker        "UNIFORM_SIZE",
211*35238bceSAndroid Build Coastguard Worker        "UNIFORM_NAME_LENGTH",
212*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BLOCK_INDEX",
213*35238bceSAndroid Build Coastguard Worker        "UNIFORM_OFFSET",
214*35238bceSAndroid Build Coastguard Worker        "UNIFORM_ARRAY_STRIDE",
215*35238bceSAndroid Build Coastguard Worker        "UNIFORM_MATRIX_STRIDE",
216*35238bceSAndroid Build Coastguard Worker        "UNIFORM_IS_ROW_MAJOR"
217*35238bceSAndroid Build Coastguard Worker        ]),
218*35238bceSAndroid Build Coastguard Worker
219*35238bceSAndroid Build Coastguard Worker    # *missing*
220*35238bceSAndroid Build Coastguard Worker    # Framebuffers
221*35238bceSAndroid Build Coastguard Worker    ("FramebufferAttachment", ["COLOR_ATTACHMENT0", "COLOR_ATTACHMENT1", "COLOR_ATTACHMENT2", "COLOR_ATTACHMENT3",
222*35238bceSAndroid Build Coastguard Worker                                         "COLOR_ATTACHMENT4", "COLOR_ATTACHMENT5", "COLOR_ATTACHMENT6", "COLOR_ATTACHMENT7",
223*35238bceSAndroid Build Coastguard Worker                                         "COLOR_ATTACHMENT8", "COLOR_ATTACHMENT9", "COLOR_ATTACHMENT10", "COLOR_ATTACHMENT11",
224*35238bceSAndroid Build Coastguard Worker                                         "COLOR_ATTACHMENT12", "COLOR_ATTACHMENT13", "COLOR_ATTACHMENT14", "COLOR_ATTACHMENT15",
225*35238bceSAndroid Build Coastguard Worker                                         "DEPTH_ATTACHMENT", "STENCIL_ATTACHMENT", "DEPTH_STENCIL_ATTACHMENT",
226*35238bceSAndroid Build Coastguard Worker                                         "BACK", "FRONT_LEFT", "FRONT_RIGHT", "BACK_LEFT", "BACK_RIGHT",
227*35238bceSAndroid Build Coastguard Worker                                         "DEPTH", "STENCIL"]),
228*35238bceSAndroid Build Coastguard Worker    # *missing*
229*35238bceSAndroid Build Coastguard Worker    ("FramebufferAttachmentParameter", ["FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE", "FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",
230*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL", "FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",
231*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER", "FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE",
232*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING", "FRAMEBUFFER_ATTACHMENT_RED_SIZE",
233*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_ATTACHMENT_GREEN_SIZE", "FRAMEBUFFER_ATTACHMENT_BLUE_SIZE",
234*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE", "FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE",
235*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE", "FRAMEBUFFER_ATTACHMENT_LAYERED"]),
236*35238bceSAndroid Build Coastguard Worker    ("FramebufferTarget", ["FRAMEBUFFER", "RENDERBUFFER", "DRAW_FRAMEBUFFER", "READ_FRAMEBUFFER"]),
237*35238bceSAndroid Build Coastguard Worker    ("FramebufferStatus", ["FRAMEBUFFER_COMPLETE", "FRAMEBUFFER_INCOMPLETE_ATTACHMENT", "FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",
238*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_INCOMPLETE_DIMENSIONS", "FRAMEBUFFER_UNSUPPORTED", "FRAMEBUFFER_INCOMPLETE_MULTISAMPLE",
239*35238bceSAndroid Build Coastguard Worker                                         "FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS"]),
240*35238bceSAndroid Build Coastguard Worker    ("FramebufferAttachmentType", ["NONE", "FRAMEBUFFER_DEFAULT", "TEXTURE", "RENDERBUFFER"]),
241*35238bceSAndroid Build Coastguard Worker    ("FramebufferColorEncoding", ["LINEAR", "SRGB"]),
242*35238bceSAndroid Build Coastguard Worker
243*35238bceSAndroid Build Coastguard Worker    ("FramebufferParameter", [
244*35238bceSAndroid Build Coastguard Worker        "FRAMEBUFFER_DEFAULT_WIDTH",
245*35238bceSAndroid Build Coastguard Worker        "FRAMEBUFFER_DEFAULT_HEIGHT",
246*35238bceSAndroid Build Coastguard Worker        "FRAMEBUFFER_DEFAULT_SAMPLES",
247*35238bceSAndroid Build Coastguard Worker        "FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS",
248*35238bceSAndroid Build Coastguard Worker        "FRAMEBUFFER_DEFAULT_LAYERS",
249*35238bceSAndroid Build Coastguard Worker        ]),
250*35238bceSAndroid Build Coastguard Worker
251*35238bceSAndroid Build Coastguard Worker    # Renderbuffers
252*35238bceSAndroid Build Coastguard Worker    ("RenderbufferParameter", ["RENDERBUFFER_WIDTH", "RENDERBUFFER_HEIGHT", "RENDERBUFFER_INTERNAL_FORMAT", "RENDERBUFFER_RED_SIZE",
253*35238bceSAndroid Build Coastguard Worker                                        "RENDERBUFFER_GREEN_SIZE", "RENDERBUFFER_BLUE_SIZE", "RENDERBUFFER_ALPHA_SIZE", "RENDERBUFFER_DEPTH_SIZE",
254*35238bceSAndroid Build Coastguard Worker                                        "RENDERBUFFER_STENCIL_SIZE", "RENDERBUFFER_SAMPLES"]),
255*35238bceSAndroid Build Coastguard Worker
256*35238bceSAndroid Build Coastguard Worker    # Primitives
257*35238bceSAndroid Build Coastguard Worker    ("PrimitiveType", ["POINTS", "LINES", "LINE_STRIP", "LINE_LOOP", "TRIANGLES", "TRIANGLE_STRIP", "TRIANGLE_FAN", "LINES_ADJACENCY", "LINE_STRIP_ADJACENCY", "TRIANGLES_ADJACENCY", "TRIANGLE_STRIP_ADJACENCY"]),
258*35238bceSAndroid Build Coastguard Worker
259*35238bceSAndroid Build Coastguard Worker    # Blending
260*35238bceSAndroid Build Coastguard Worker    ("BlendFactor", ["ZERO", "ONE", "SRC_ALPHA_SATURATE",
261*35238bceSAndroid Build Coastguard Worker                             "SRC_COLOR", "ONE_MINUS_SRC_COLOR", "SRC_ALPHA", "ONE_MINUS_SRC_ALPHA",
262*35238bceSAndroid Build Coastguard Worker                             "SRC1_COLOR", "ONE_MINUS_SRC1_COLOR", "SRC1_ALPHA", "ONE_MINUS_SRC1_ALPHA",
263*35238bceSAndroid Build Coastguard Worker                             "DST_COLOR", "ONE_MINUS_DST_COLOR", "DST_ALPHA", "ONE_MINUS_DST_ALPHA",
264*35238bceSAndroid Build Coastguard Worker                             "CONSTANT_COLOR", "ONE_MINUS_CONSTANT_COLOR", "CONSTANT_ALPHA", "ONE_MINUS_CONSTANT_ALPHA"]),
265*35238bceSAndroid Build Coastguard Worker    ("BlendEquation", [
266*35238bceSAndroid Build Coastguard Worker        "FUNC_ADD",
267*35238bceSAndroid Build Coastguard Worker        "FUNC_SUBTRACT",
268*35238bceSAndroid Build Coastguard Worker        "FUNC_REVERSE_SUBTRACT",
269*35238bceSAndroid Build Coastguard Worker        "MIN",
270*35238bceSAndroid Build Coastguard Worker        "MAX",
271*35238bceSAndroid Build Coastguard Worker        "MULTIPLY_KHR",
272*35238bceSAndroid Build Coastguard Worker        "SCREEN_KHR",
273*35238bceSAndroid Build Coastguard Worker        "OVERLAY_KHR",
274*35238bceSAndroid Build Coastguard Worker        "DARKEN_KHR",
275*35238bceSAndroid Build Coastguard Worker        "LIGHTEN_KHR",
276*35238bceSAndroid Build Coastguard Worker        "COLORDODGE_KHR",
277*35238bceSAndroid Build Coastguard Worker        "COLORBURN_KHR",
278*35238bceSAndroid Build Coastguard Worker        "HARDLIGHT_KHR",
279*35238bceSAndroid Build Coastguard Worker        "SOFTLIGHT_KHR",
280*35238bceSAndroid Build Coastguard Worker        "DIFFERENCE_KHR",
281*35238bceSAndroid Build Coastguard Worker        "EXCLUSION_KHR",
282*35238bceSAndroid Build Coastguard Worker        "HSL_HUE_KHR",
283*35238bceSAndroid Build Coastguard Worker        "HSL_SATURATION_KHR",
284*35238bceSAndroid Build Coastguard Worker        "HSL_COLOR_KHR",
285*35238bceSAndroid Build Coastguard Worker        "HSL_LUMINOSITY_KHR",
286*35238bceSAndroid Build Coastguard Worker        ]),
287*35238bceSAndroid Build Coastguard Worker
288*35238bceSAndroid Build Coastguard Worker    # Buffer Objects
289*35238bceSAndroid Build Coastguard Worker    ("BufferTarget", [
290*35238bceSAndroid Build Coastguard Worker        "ARRAY_BUFFER",
291*35238bceSAndroid Build Coastguard Worker        "ELEMENT_ARRAY_BUFFER",
292*35238bceSAndroid Build Coastguard Worker        "COPY_READ_BUFFER",
293*35238bceSAndroid Build Coastguard Worker        "COPY_WRITE_BUFFER",
294*35238bceSAndroid Build Coastguard Worker        "PIXEL_PACK_BUFFER",
295*35238bceSAndroid Build Coastguard Worker        "PIXEL_UNPACK_BUFFER",
296*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_BUFFER",
297*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BUFFER",
298*35238bceSAndroid Build Coastguard Worker        "DRAW_INDIRECT_BUFFER",
299*35238bceSAndroid Build Coastguard Worker        "SHADER_STORAGE_BUFFER",
300*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BUFFER",
301*35238bceSAndroid Build Coastguard Worker        "DISPATCH_INDIRECT_BUFFER",
302*35238bceSAndroid Build Coastguard Worker        "ATOMIC_COUNTER_BUFFER",
303*35238bceSAndroid Build Coastguard Worker        ]),
304*35238bceSAndroid Build Coastguard Worker    ("BufferBinding", ["ARRAY_BUFFER_BINDING", "ELEMENT_ARRAY_BUFFER_BINDING"]),
305*35238bceSAndroid Build Coastguard Worker    ("Usage", [
306*35238bceSAndroid Build Coastguard Worker        "STREAM_DRAW",
307*35238bceSAndroid Build Coastguard Worker        "STREAM_READ",
308*35238bceSAndroid Build Coastguard Worker        "STREAM_COPY",
309*35238bceSAndroid Build Coastguard Worker        "STATIC_DRAW",
310*35238bceSAndroid Build Coastguard Worker        "STATIC_READ",
311*35238bceSAndroid Build Coastguard Worker        "STATIC_COPY",
312*35238bceSAndroid Build Coastguard Worker        "DYNAMIC_DRAW",
313*35238bceSAndroid Build Coastguard Worker        "DYNAMIC_READ",
314*35238bceSAndroid Build Coastguard Worker        "DYNAMIC_COPY"]),
315*35238bceSAndroid Build Coastguard Worker    ("BufferQuery", ["BUFFER_SIZE", "BUFFER_USAGE", "BUFFER_ACCESS_FLAGS", "BUFFER_MAPPED", "BUFFER_MAP_OFFSET", "BUFFER_MAP_LENGTH"]),
316*35238bceSAndroid Build Coastguard Worker
317*35238bceSAndroid Build Coastguard Worker    # Culling
318*35238bceSAndroid Build Coastguard Worker    ("Face", ["FRONT", "BACK", "FRONT_AND_BACK"]),
319*35238bceSAndroid Build Coastguard Worker
320*35238bceSAndroid Build Coastguard Worker    # Comparison function
321*35238bceSAndroid Build Coastguard Worker    ("CompareFunc", ["NEVER", "LESS", "LEQUAL", "GREATER", "EQUAL", "NOTEQUAL", "GEQUAL", "ALWAYS"]),
322*35238bceSAndroid Build Coastguard Worker
323*35238bceSAndroid Build Coastguard Worker    # Enable-disable bit
324*35238bceSAndroid Build Coastguard Worker    ("EnableCap", ["TEXTURE_2D", "CULL_FACE", "BLEND", "DITHER", "STENCIL_TEST", "DEPTH_TEST", "SCISSOR_TEST",
325*35238bceSAndroid Build Coastguard Worker                             "POLYGON_OFFSET_FILL", "SAMPLE_ALPHA_TO_COVERAGE", "SAMPLE_COVERAGE",
326*35238bceSAndroid Build Coastguard Worker                             "PRIMITIVE_RESTART_FIXED_INDEX", "RASTERIZER_DISCARD",
327*35238bceSAndroid Build Coastguard Worker                             "FRAMEBUFFER_SRGB", "SAMPLE_SHADING", "DEPTH_CLAMP",
328*35238bceSAndroid Build Coastguard Worker                             "PRIMITIVE_RESTART", "SAMPLE_MASK", "DEBUG_OUTPUT", "DEBUG_OUTPUT_SYNCHRONOUS",
329*35238bceSAndroid Build Coastguard Worker                             "BLEND_ADVANCED_COHERENT_KHR"]),
330*35238bceSAndroid Build Coastguard Worker
331*35238bceSAndroid Build Coastguard Worker    # Indexed enable-disable bit
332*35238bceSAndroid Build Coastguard Worker    ("IndexedEnableCap", ["BLEND"]),
333*35238bceSAndroid Build Coastguard Worker
334*35238bceSAndroid Build Coastguard Worker    # Polygon winding
335*35238bceSAndroid Build Coastguard Worker    ("Winding", ["CW", "CCW"]),
336*35238bceSAndroid Build Coastguard Worker
337*35238bceSAndroid Build Coastguard Worker    # Hints
338*35238bceSAndroid Build Coastguard Worker    ("HintMode", ["DONT_CARE", "FASTEST", "NICEST"]),
339*35238bceSAndroid Build Coastguard Worker    ("Hint", ["GENERATE_MIPMAP_HINT"]),
340*35238bceSAndroid Build Coastguard Worker
341*35238bceSAndroid Build Coastguard Worker    # Stencil ops
342*35238bceSAndroid Build Coastguard Worker    ("StencilOp", ["ZERO", "KEEP", "REPLACE", "INCR", "DECR", "INVERT", "INCR_WRAP", "DECR_WRAP"]),
343*35238bceSAndroid Build Coastguard Worker
344*35238bceSAndroid Build Coastguard Worker    # Shader type
345*35238bceSAndroid Build Coastguard Worker    ("ShaderType", [
346*35238bceSAndroid Build Coastguard Worker        "VERTEX_SHADER",
347*35238bceSAndroid Build Coastguard Worker        "FRAGMENT_SHADER",
348*35238bceSAndroid Build Coastguard Worker        "COMPUTE_SHADER",
349*35238bceSAndroid Build Coastguard Worker        "TESS_CONTROL_SHADER",
350*35238bceSAndroid Build Coastguard Worker        "TESS_EVALUATION_SHADER",
351*35238bceSAndroid Build Coastguard Worker        "GEOMETRY_SHADER",
352*35238bceSAndroid Build Coastguard Worker        ]),
353*35238bceSAndroid Build Coastguard Worker
354*35238bceSAndroid Build Coastguard Worker    # Buffers
355*35238bceSAndroid Build Coastguard Worker    ("Buffer", ["COLOR", "DEPTH", "STENCIL", "DEPTH_STENCIL"]),
356*35238bceSAndroid Build Coastguard Worker
357*35238bceSAndroid Build Coastguard Worker    # Invalidate buffer target
358*35238bceSAndroid Build Coastguard Worker    ("InvalidateAttachment",["COLOR", "DEPTH", "STENCIL",
359*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT0",
360*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT1",
361*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT2",
362*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT3",
363*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT4",
364*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT5",
365*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT6",
366*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT7",
367*35238bceSAndroid Build Coastguard Worker                             "DEPTH_ATTACHMENT",
368*35238bceSAndroid Build Coastguard Worker                             "STENCIL_ATTACHMENT",
369*35238bceSAndroid Build Coastguard Worker                             "DEPTH_STENCIL_ATTACHMENT"]),
370*35238bceSAndroid Build Coastguard Worker
371*35238bceSAndroid Build Coastguard Worker    # Draw/ReadBuffer attachment
372*35238bceSAndroid Build Coastguard Worker    ("DrawReadBuffer", ["COLOR", "DEPTH", "STENCIL", "BACK", "NONE",
373*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT0",
374*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT1",
375*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT2",
376*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT3",
377*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT4",
378*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT5",
379*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT6",
380*35238bceSAndroid Build Coastguard Worker                             "COLOR_ATTACHMENT7",
381*35238bceSAndroid Build Coastguard Worker                             "DEPTH_ATTACHMENT",
382*35238bceSAndroid Build Coastguard Worker                             "STENCIL_ATTACHMENT",
383*35238bceSAndroid Build Coastguard Worker                             "DEPTH_STENCIL_ATTACHMENT"]),
384*35238bceSAndroid Build Coastguard Worker
385*35238bceSAndroid Build Coastguard Worker    # Textures
386*35238bceSAndroid Build Coastguard Worker    ("TextureTarget", ["TEXTURE_1D",
387*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_2D", "TEXTURE_CUBE_MAP",
388*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_CUBE_MAP_POSITIVE_X", "TEXTURE_CUBE_MAP_NEGATIVE_X",
389*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_CUBE_MAP_POSITIVE_Y", "TEXTURE_CUBE_MAP_NEGATIVE_Y",
390*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_CUBE_MAP_POSITIVE_Z", "TEXTURE_CUBE_MAP_NEGATIVE_Z",
391*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_3D", "TEXTURE_2D_ARRAY", "TEXTURE_2D_MULTISAMPLE",
392*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_2D_MULTISAMPLE_ARRAY",
393*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_BUFFER",
394*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_CUBE_MAP_ARRAY"]),
395*35238bceSAndroid Build Coastguard Worker    ("TextureParameter", [
396*35238bceSAndroid Build Coastguard Worker        "TEXTURE_WRAP_S",
397*35238bceSAndroid Build Coastguard Worker        "TEXTURE_WRAP_T",
398*35238bceSAndroid Build Coastguard Worker        "TEXTURE_WRAP_R",
399*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BASE_LEVEL",
400*35238bceSAndroid Build Coastguard Worker        "TEXTURE_MAX_LEVEL",
401*35238bceSAndroid Build Coastguard Worker        "TEXTURE_COMPARE_MODE",
402*35238bceSAndroid Build Coastguard Worker        "TEXTURE_COMPARE_FUNC",
403*35238bceSAndroid Build Coastguard Worker        "TEXTURE_MAX_LOD",
404*35238bceSAndroid Build Coastguard Worker        "TEXTURE_MIN_LOD",
405*35238bceSAndroid Build Coastguard Worker        "TEXTURE_SWIZZLE_R",
406*35238bceSAndroid Build Coastguard Worker        "TEXTURE_SWIZZLE_G",
407*35238bceSAndroid Build Coastguard Worker        "TEXTURE_SWIZZLE_B",
408*35238bceSAndroid Build Coastguard Worker        "TEXTURE_SWIZZLE_A",
409*35238bceSAndroid Build Coastguard Worker        "TEXTURE_MIN_FILTER",
410*35238bceSAndroid Build Coastguard Worker        "TEXTURE_MAG_FILTER",
411*35238bceSAndroid Build Coastguard Worker        "DEPTH_STENCIL_TEXTURE_MODE",
412*35238bceSAndroid Build Coastguard Worker        "TEXTURE_SRGB_DECODE_EXT",
413*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BORDER_COLOR",
414*35238bceSAndroid Build Coastguard Worker
415*35238bceSAndroid Build Coastguard Worker        # Gettable only
416*35238bceSAndroid Build Coastguard Worker        "TEXTURE_IMMUTABLE_LEVELS",
417*35238bceSAndroid Build Coastguard Worker        "TEXTURE_IMMUTABLE_FORMAT",
418*35238bceSAndroid Build Coastguard Worker        ]),
419*35238bceSAndroid Build Coastguard Worker    ("TextureLevelParameter", [
420*35238bceSAndroid Build Coastguard Worker        "TEXTURE_SAMPLES",
421*35238bceSAndroid Build Coastguard Worker        "TEXTURE_FIXED_SAMPLE_LOCATIONS",
422*35238bceSAndroid Build Coastguard Worker        "TEXTURE_WIDTH",
423*35238bceSAndroid Build Coastguard Worker        "TEXTURE_HEIGHT",
424*35238bceSAndroid Build Coastguard Worker        "TEXTURE_DEPTH",
425*35238bceSAndroid Build Coastguard Worker        "TEXTURE_INTERNAL_FORMAT",
426*35238bceSAndroid Build Coastguard Worker        "TEXTURE_RED_SIZE",
427*35238bceSAndroid Build Coastguard Worker        "TEXTURE_GREEN_SIZE",
428*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BLUE_SIZE",
429*35238bceSAndroid Build Coastguard Worker        "TEXTURE_ALPHA_SIZE",
430*35238bceSAndroid Build Coastguard Worker        "TEXTURE_DEPTH_SIZE",
431*35238bceSAndroid Build Coastguard Worker        "TEXTURE_STENCIL_SIZE",
432*35238bceSAndroid Build Coastguard Worker        "TEXTURE_SHARED_SIZE",
433*35238bceSAndroid Build Coastguard Worker        "TEXTURE_RED_TYPE",
434*35238bceSAndroid Build Coastguard Worker        "TEXTURE_GREEN_TYPE",
435*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BLUE_TYPE",
436*35238bceSAndroid Build Coastguard Worker        "TEXTURE_ALPHA_TYPE",
437*35238bceSAndroid Build Coastguard Worker        "TEXTURE_DEPTH_TYPE",
438*35238bceSAndroid Build Coastguard Worker        "TEXTURE_COMPRESSED",
439*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BUFFER_DATA_STORE_BINDING",
440*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BUFFER_OFFSET",
441*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BUFFER_SIZE",
442*35238bceSAndroid Build Coastguard Worker        ]),
443*35238bceSAndroid Build Coastguard Worker    ("RepeatMode", ["REPEAT", "CLAMP_TO_EDGE", "MIRRORED_REPEAT", "CLAMP_TO_BORDER"]),
444*35238bceSAndroid Build Coastguard Worker    ("TextureFilter", ["NEAREST", "LINEAR", "NEAREST_MIPMAP_NEAREST", "LINEAR_MIPMAP_NEAREST",
445*35238bceSAndroid Build Coastguard Worker                             "NEAREST_MIPMAP_LINEAR", "LINEAR_MIPMAP_LINEAR"]),
446*35238bceSAndroid Build Coastguard Worker    ("TextureWrapMode", ["REPEAT", "CLAMP_TO_EDGE", "MIRRORED_REPEAT"]),
447*35238bceSAndroid Build Coastguard Worker    ("TextureSwizzle", ["RED", "GREEN", "BLUE", "ALPHA", "ZERO", "ONE"]),
448*35238bceSAndroid Build Coastguard Worker    ("TextureCompareMode", ["NONE", "COMPARE_REF_TO_TEXTURE"]),
449*35238bceSAndroid Build Coastguard Worker    ("CubeMapFace", ["TEXTURE_CUBE_MAP_POSITIVE_X", "TEXTURE_CUBE_MAP_NEGATIVE_X",
450*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_CUBE_MAP_POSITIVE_Y", "TEXTURE_CUBE_MAP_NEGATIVE_Y",
451*35238bceSAndroid Build Coastguard Worker                             "TEXTURE_CUBE_MAP_POSITIVE_Z", "TEXTURE_CUBE_MAP_NEGATIVE_Z"]),
452*35238bceSAndroid Build Coastguard Worker    ("TextureDepthStencilMode", ["DEPTH_COMPONENT", "STENCIL_INDEX"]),
453*35238bceSAndroid Build Coastguard Worker    ("PixelStoreParameter", [
454*35238bceSAndroid Build Coastguard Worker        "UNPACK_ALIGNMENT",
455*35238bceSAndroid Build Coastguard Worker        "UNPACK_IMAGE_HEIGHT",
456*35238bceSAndroid Build Coastguard Worker        "UNPACK_ROW_LENGTH",
457*35238bceSAndroid Build Coastguard Worker        "UNPACK_SKIP_IMAGES",
458*35238bceSAndroid Build Coastguard Worker        "UNPACK_SKIP_ROWS",
459*35238bceSAndroid Build Coastguard Worker        "UNPACK_SKIP_PIXELS",
460*35238bceSAndroid Build Coastguard Worker        "PACK_ROW_LENGTH",
461*35238bceSAndroid Build Coastguard Worker        "PACK_SKIP_ROWS",
462*35238bceSAndroid Build Coastguard Worker        "PACK_SKIP_PIXELS"]),
463*35238bceSAndroid Build Coastguard Worker    ("UncompressedTextureFormat", [
464*35238bceSAndroid Build Coastguard Worker        # GLES2 unsized formats
465*35238bceSAndroid Build Coastguard Worker        "LUMINANCE",
466*35238bceSAndroid Build Coastguard Worker        "LUMINANCE_ALPHA",
467*35238bceSAndroid Build Coastguard Worker        "ALPHA",
468*35238bceSAndroid Build Coastguard Worker        "RGB",
469*35238bceSAndroid Build Coastguard Worker        "RGBA",
470*35238bceSAndroid Build Coastguard Worker
471*35238bceSAndroid Build Coastguard Worker        # GLES2 sized formats
472*35238bceSAndroid Build Coastguard Worker        "RGBA4",
473*35238bceSAndroid Build Coastguard Worker        "RGB5_A1",
474*35238bceSAndroid Build Coastguard Worker        "RGB565",
475*35238bceSAndroid Build Coastguard Worker        "DEPTH_COMPONENT16",
476*35238bceSAndroid Build Coastguard Worker        "STENCIL_INDEX8",
477*35238bceSAndroid Build Coastguard Worker
478*35238bceSAndroid Build Coastguard Worker        # GLES3 unsized formats
479*35238bceSAndroid Build Coastguard Worker        "RG",
480*35238bceSAndroid Build Coastguard Worker        "RED",
481*35238bceSAndroid Build Coastguard Worker        "RGBA_INTEGER",
482*35238bceSAndroid Build Coastguard Worker        "RGB_INTEGER",
483*35238bceSAndroid Build Coastguard Worker        "RG_INTEGER",
484*35238bceSAndroid Build Coastguard Worker        "RED_INTEGER",
485*35238bceSAndroid Build Coastguard Worker        "DEPTH_COMPONENT",
486*35238bceSAndroid Build Coastguard Worker        "DEPTH_STENCIL",
487*35238bceSAndroid Build Coastguard Worker
488*35238bceSAndroid Build Coastguard Worker        # GLES3 sized formats
489*35238bceSAndroid Build Coastguard Worker        "RGBA32F",
490*35238bceSAndroid Build Coastguard Worker        "RGBA32I",
491*35238bceSAndroid Build Coastguard Worker        "RGBA32UI",
492*35238bceSAndroid Build Coastguard Worker        "RGBA16",
493*35238bceSAndroid Build Coastguard Worker        "RGBA16_SNORM",
494*35238bceSAndroid Build Coastguard Worker        "RGBA16F",
495*35238bceSAndroid Build Coastguard Worker        "RGBA16I",
496*35238bceSAndroid Build Coastguard Worker        "RGBA16UI",
497*35238bceSAndroid Build Coastguard Worker        "RGBA8",
498*35238bceSAndroid Build Coastguard Worker        "RGBA8I",
499*35238bceSAndroid Build Coastguard Worker        "RGBA8UI",
500*35238bceSAndroid Build Coastguard Worker        "SRGB8_ALPHA8",
501*35238bceSAndroid Build Coastguard Worker        "RGB10_A2",
502*35238bceSAndroid Build Coastguard Worker        "RGB10_A2UI",
503*35238bceSAndroid Build Coastguard Worker        "RGBA8_SNORM",
504*35238bceSAndroid Build Coastguard Worker        "RGB8",
505*35238bceSAndroid Build Coastguard Worker        "R11F_G11F_B10F",
506*35238bceSAndroid Build Coastguard Worker        "RGB32F",
507*35238bceSAndroid Build Coastguard Worker        "RGB32I",
508*35238bceSAndroid Build Coastguard Worker        "RGB32UI",
509*35238bceSAndroid Build Coastguard Worker        "RGB16",
510*35238bceSAndroid Build Coastguard Worker        "RGB16_SNORM",
511*35238bceSAndroid Build Coastguard Worker        "RGB16F",
512*35238bceSAndroid Build Coastguard Worker        "RGB16I",
513*35238bceSAndroid Build Coastguard Worker        "RGB16UI",
514*35238bceSAndroid Build Coastguard Worker        "RGB8_SNORM",
515*35238bceSAndroid Build Coastguard Worker        "RGB8I",
516*35238bceSAndroid Build Coastguard Worker        "RGB8UI",
517*35238bceSAndroid Build Coastguard Worker        "SRGB8",
518*35238bceSAndroid Build Coastguard Worker        "RGB9_E5",
519*35238bceSAndroid Build Coastguard Worker        "RG32F",
520*35238bceSAndroid Build Coastguard Worker        "RG32I",
521*35238bceSAndroid Build Coastguard Worker        "RG32UI",
522*35238bceSAndroid Build Coastguard Worker        "RG16",
523*35238bceSAndroid Build Coastguard Worker        "RG16_SNORM",
524*35238bceSAndroid Build Coastguard Worker        "RG16F",
525*35238bceSAndroid Build Coastguard Worker        "RG16I",
526*35238bceSAndroid Build Coastguard Worker        "RG16UI",
527*35238bceSAndroid Build Coastguard Worker        "RG8",
528*35238bceSAndroid Build Coastguard Worker        "RG8I",
529*35238bceSAndroid Build Coastguard Worker        "RG8UI",
530*35238bceSAndroid Build Coastguard Worker        "RG8_SNORM",
531*35238bceSAndroid Build Coastguard Worker        "R32F",
532*35238bceSAndroid Build Coastguard Worker        "R32I",
533*35238bceSAndroid Build Coastguard Worker        "R32UI",
534*35238bceSAndroid Build Coastguard Worker        "R16",
535*35238bceSAndroid Build Coastguard Worker        "R16_SNORM",
536*35238bceSAndroid Build Coastguard Worker        "R16F",
537*35238bceSAndroid Build Coastguard Worker        "R16I",
538*35238bceSAndroid Build Coastguard Worker        "R16UI",
539*35238bceSAndroid Build Coastguard Worker        "R8",
540*35238bceSAndroid Build Coastguard Worker        "R8I",
541*35238bceSAndroid Build Coastguard Worker        "R8UI",
542*35238bceSAndroid Build Coastguard Worker        "R8_SNORM",
543*35238bceSAndroid Build Coastguard Worker        "DEPTH_COMPONENT32F",
544*35238bceSAndroid Build Coastguard Worker        "DEPTH_COMPONENT24",
545*35238bceSAndroid Build Coastguard Worker        "DEPTH32F_STENCIL8",
546*35238bceSAndroid Build Coastguard Worker        "DEPTH24_STENCIL8",
547*35238bceSAndroid Build Coastguard Worker
548*35238bceSAndroid Build Coastguard Worker        # OES_required_internalformat
549*35238bceSAndroid Build Coastguard Worker        "RGB10",
550*35238bceSAndroid Build Coastguard Worker
551*35238bceSAndroid Build Coastguard Worker        # OES_depth32
552*35238bceSAndroid Build Coastguard Worker        "DEPTH_COMPONENT32",
553*35238bceSAndroid Build Coastguard Worker
554*35238bceSAndroid Build Coastguard Worker        # EXT_sRGB
555*35238bceSAndroid Build Coastguard Worker        "SRGB",
556*35238bceSAndroid Build Coastguard Worker        "SRGB_ALPHA",
557*35238bceSAndroid Build Coastguard Worker
558*35238bceSAndroid Build Coastguard Worker        # GL_EXT_texture_sRGB_R8 & RG8
559*35238bceSAndroid Build Coastguard Worker        "SR8_EXT",
560*35238bceSAndroid Build Coastguard Worker        "SRG8_EXT",
561*35238bceSAndroid Build Coastguard Worker
562*35238bceSAndroid Build Coastguard Worker        # GL_EXT_read_format_bgra
563*35238bceSAndroid Build Coastguard Worker        "BGRA",
564*35238bceSAndroid Build Coastguard Worker        ]),
565*35238bceSAndroid Build Coastguard Worker
566*35238bceSAndroid Build Coastguard Worker    ("CompressedTextureFormat", [
567*35238bceSAndroid Build Coastguard Worker        # ETC2/EAC formats
568*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_R11_EAC",
569*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SIGNED_R11_EAC",
570*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RG11_EAC",
571*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SIGNED_RG11_EAC",
572*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGB8_ETC2",
573*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ETC2",
574*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2",
575*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",
576*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA8_ETC2_EAC",
577*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",
578*35238bceSAndroid Build Coastguard Worker
579*35238bceSAndroid Build Coastguard Worker        # ASTC formats
580*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_4x4_KHR",
581*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_5x4_KHR",
582*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_5x5_KHR",
583*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_6x5_KHR",
584*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_6x6_KHR",
585*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_8x5_KHR",
586*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_8x6_KHR",
587*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_8x8_KHR",
588*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_10x5_KHR",
589*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_10x6_KHR",
590*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_10x8_KHR",
591*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_10x10_KHR",
592*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_12x10_KHR",
593*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_ASTC_12x12_KHR",
594*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR",
595*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR",
596*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR",
597*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR",
598*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR",
599*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR",
600*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR",
601*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR",
602*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR",
603*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR",
604*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR",
605*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR",
606*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR",
607*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR",
608*35238bceSAndroid Build Coastguard Worker
609*35238bceSAndroid Build Coastguard Worker        # EXT_texture_compression_s3tc
610*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGB_S3TC_DXT1_EXT",
611*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_S3TC_DXT1_EXT",
612*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_S3TC_DXT3_EXT",
613*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_S3TC_DXT5_EXT",
614*35238bceSAndroid Build Coastguard Worker
615*35238bceSAndroid Build Coastguard Worker        # IMG_texture_compression_pvrtc
616*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGB_PVRTC_4BPPV1_IMG",
617*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGB_PVRTC_2BPPV1_IMG",
618*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",
619*35238bceSAndroid Build Coastguard Worker        "COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",
620*35238bceSAndroid Build Coastguard Worker        ]),
621*35238bceSAndroid Build Coastguard Worker
622*35238bceSAndroid Build Coastguard Worker    # Shader var type
623*35238bceSAndroid Build Coastguard Worker    ("ShaderVarType", [
624*35238bceSAndroid Build Coastguard Worker        "FLOAT",
625*35238bceSAndroid Build Coastguard Worker        "FLOAT_VEC2",
626*35238bceSAndroid Build Coastguard Worker        "FLOAT_VEC3",
627*35238bceSAndroid Build Coastguard Worker        "FLOAT_VEC4",
628*35238bceSAndroid Build Coastguard Worker        "INT",
629*35238bceSAndroid Build Coastguard Worker        "INT_VEC2",
630*35238bceSAndroid Build Coastguard Worker        "INT_VEC3",
631*35238bceSAndroid Build Coastguard Worker        "INT_VEC4",
632*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT",
633*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_VEC2",
634*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_VEC3",
635*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_VEC4",
636*35238bceSAndroid Build Coastguard Worker        "BOOL",
637*35238bceSAndroid Build Coastguard Worker        "BOOL_VEC2",
638*35238bceSAndroid Build Coastguard Worker        "BOOL_VEC3",
639*35238bceSAndroid Build Coastguard Worker        "BOOL_VEC4",
640*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT2",
641*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT3",
642*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT4",
643*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT2x3",
644*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT2x4",
645*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT3x2",
646*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT3x4",
647*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT4x2",
648*35238bceSAndroid Build Coastguard Worker        "FLOAT_MAT4x3",
649*35238bceSAndroid Build Coastguard Worker        "SAMPLER_2D",
650*35238bceSAndroid Build Coastguard Worker        "SAMPLER_3D",
651*35238bceSAndroid Build Coastguard Worker        "SAMPLER_CUBE",
652*35238bceSAndroid Build Coastguard Worker        "SAMPLER_2D_SHADOW",
653*35238bceSAndroid Build Coastguard Worker        "SAMPLER_2D_ARRAY",
654*35238bceSAndroid Build Coastguard Worker        "SAMPLER_2D_ARRAY_SHADOW",
655*35238bceSAndroid Build Coastguard Worker        "SAMPLER_CUBE_SHADOW",
656*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_2D",
657*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_3D",
658*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_CUBE",
659*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_2D_ARRAY",
660*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_2D",
661*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_3D",
662*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_CUBE",
663*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_2D_ARRAY",
664*35238bceSAndroid Build Coastguard Worker        "SAMPLER_2D_MULTISAMPLE",
665*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_2D_MULTISAMPLE",
666*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE",
667*35238bceSAndroid Build Coastguard Worker        "IMAGE_2D",
668*35238bceSAndroid Build Coastguard Worker        "IMAGE_3D",
669*35238bceSAndroid Build Coastguard Worker        "IMAGE_CUBE",
670*35238bceSAndroid Build Coastguard Worker        "IMAGE_2D_ARRAY",
671*35238bceSAndroid Build Coastguard Worker        "INT_IMAGE_2D",
672*35238bceSAndroid Build Coastguard Worker        "INT_IMAGE_3D",
673*35238bceSAndroid Build Coastguard Worker        "INT_IMAGE_CUBE",
674*35238bceSAndroid Build Coastguard Worker        "INT_IMAGE_2D_ARRAY",
675*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_IMAGE_2D",
676*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_IMAGE_3D",
677*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_IMAGE_CUBE",
678*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_IMAGE_2D_ARRAY",
679*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_ATOMIC_COUNTER",
680*35238bceSAndroid Build Coastguard Worker        "SAMPLER_2D_MULTISAMPLE_ARRAY",
681*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_2D_MULTISAMPLE_ARRAY",
682*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY",
683*35238bceSAndroid Build Coastguard Worker        "SAMPLER_BUFFER",
684*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_BUFFER",
685*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_BUFFER",
686*35238bceSAndroid Build Coastguard Worker        "IMAGE_BUFFER",
687*35238bceSAndroid Build Coastguard Worker        "INT_IMAGE_BUFFER",
688*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_IMAGE_BUFFER",
689*35238bceSAndroid Build Coastguard Worker        "SAMPLER_CUBE_MAP_ARRAY",
690*35238bceSAndroid Build Coastguard Worker        "SAMPLER_CUBE_MAP_ARRAY_SHADOW",
691*35238bceSAndroid Build Coastguard Worker        "INT_SAMPLER_CUBE_MAP_ARRAY",
692*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY",
693*35238bceSAndroid Build Coastguard Worker        "IMAGE_CUBE_MAP_ARRAY",
694*35238bceSAndroid Build Coastguard Worker        "INT_IMAGE_CUBE_MAP_ARRAY",
695*35238bceSAndroid Build Coastguard Worker        "UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY",
696*35238bceSAndroid Build Coastguard Worker    ]),
697*35238bceSAndroid Build Coastguard Worker
698*35238bceSAndroid Build Coastguard Worker    # Shader params
699*35238bceSAndroid Build Coastguard Worker    ("ShaderParam", [ "SHADER_TYPE", "DELETE_STATUS", "COMPILE_STATUS", "INFO_LOG_LENGTH", "SHADER_SOURCE_LENGTH"]),
700*35238bceSAndroid Build Coastguard Worker
701*35238bceSAndroid Build Coastguard Worker    # Vertex attribute queries
702*35238bceSAndroid Build Coastguard Worker    ("VertexAttribParameterName", [
703*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",
704*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_ENABLED",
705*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_SIZE",
706*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_STRIDE",
707*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_TYPE",
708*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_NORMALIZED",
709*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_INTEGER",
710*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_ARRAY_DIVISOR",
711*35238bceSAndroid Build Coastguard Worker        "CURRENT_VERTEX_ATTRIB",
712*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_BINDING",
713*35238bceSAndroid Build Coastguard Worker        "VERTEX_ATTRIB_RELATIVE_OFFSET",
714*35238bceSAndroid Build Coastguard Worker    ]),
715*35238bceSAndroid Build Coastguard Worker
716*35238bceSAndroid Build Coastguard Worker    ("Boolean", ["FALSE", "TRUE"]),
717*35238bceSAndroid Build Coastguard Worker
718*35238bceSAndroid Build Coastguard Worker    # GetPName
719*35238bceSAndroid Build Coastguard Worker    ("GettableState", [
720*35238bceSAndroid Build Coastguard Worker        "ELEMENT_ARRAY_BUFFER_BINDING", "ARRAY_BUFFER_BINDING", "VERTEX_ARRAY_BINDING", "VIEWPORT", "DEPTH_RANGE",
721*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_BINDING", "LINE_WIDTH", "CULL_FACE_MODE", "FRONT_FACE", "POLYGON_OFFSET_FACTOR",
722*35238bceSAndroid Build Coastguard Worker        "POLYGON_OFFSET_UNITS", "SAMPLE_COVERAGE_VALUE", "SAMPLE_COVERAGE_INVERT", "ACTIVE_TEXTURE", "TEXTURE_BINDING_1D",
723*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BINDING_2D", "TEXTURE_BINDING_3D", "TEXTURE_BINDING_2D_ARRAY",
724*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BINDING_CUBE_MAP", "SAMPLER_BINDING", "SCISSOR_BOX", "STENCIL_FUNC", "STENCIL_VALUE_MASK",
725*35238bceSAndroid Build Coastguard Worker        "STENCIL_REF", "STENCIL_FAIL", "STENCIL_PASS_DEPTH_FAIL", "STENCIL_PASS_DEPTH_PASS", "STENCIL_BACK_FUNC",
726*35238bceSAndroid Build Coastguard Worker        "STENCIL_BACK_VALUE_MASK", "STENCIL_BACK_REF", "STENCIL_BACK_FAIL", "STENCIL_BACK_PASS_DEPTH_FAIL", "STENCIL_BACK_PASS_DEPTH_PASS",
727*35238bceSAndroid Build Coastguard Worker        "DEPTH_FUNC", "BLEND_SRC_RGB", "BLEND_SRC_ALPHA", "BLEND_DST_RGB", "BLEND_DST_ALPHA",
728*35238bceSAndroid Build Coastguard Worker        "BLEND_EQUATION_RGB", "BLEND_EQUATION_ALPHA", "BLEND_COLOR", "COLOR_WRITEMASK", "DEPTH_WRITEMASK",
729*35238bceSAndroid Build Coastguard Worker        "STENCIL_WRITEMASK", "STENCIL_BACK_WRITEMASK", "COLOR_CLEAR_VALUE", "DEPTH_CLEAR_VALUE", "STENCIL_CLEAR_VALUE",
730*35238bceSAndroid Build Coastguard Worker        "DRAW_FRAMEBUFFER_BINDING", "READ_FRAMEBUFFER_BINDING", "RENDERBUFFER_BINDING", "DRAW_BUFFER0", "DRAW_BUFFER1",
731*35238bceSAndroid Build Coastguard Worker        "DRAW_BUFFER2", "DRAW_BUFFER3", "DRAW_BUFFER4", "DRAW_BUFFER5", "DRAW_BUFFER6",
732*35238bceSAndroid Build Coastguard Worker        "DRAW_BUFFER7", "DRAW_BUFFER8", "DRAW_BUFFER9", "DRAW_BUFFER10", "DRAW_BUFFER11",
733*35238bceSAndroid Build Coastguard Worker        "DRAW_BUFFER12", "DRAW_BUFFER13", "DRAW_BUFFER14", "DRAW_BUFFER15", "READ_BUFFER",
734*35238bceSAndroid Build Coastguard Worker        "UNPACK_IMAGE_HEIGHT", "UNPACK_SKIP_IMAGES", "UNPACK_ROW_LENGTH", "UNPACK_SKIP_ROWS", "UNPACK_SKIP_PIXELS",
735*35238bceSAndroid Build Coastguard Worker        "UNPACK_ALIGNMENT", "PACK_ROW_LENGTH", "PACK_SKIP_ROWS", "PACK_SKIP_PIXELS", "PACK_ALIGNMENT",
736*35238bceSAndroid Build Coastguard Worker        "PIXEL_PACK_BUFFER_BINDING", "PIXEL_UNPACK_BUFFER_BINDING", "CURRENT_PROGRAM", "TRANSFORM_FEEDBACK_BUFFER_BINDING", "TRANSFORM_FEEDBACK_PAUSED",
737*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_ACTIVE", "UNIFORM_BUFFER_BINDING", "GENERATE_MIPMAP_HINT", "FRAGMENT_SHADER_DERIVATIVE_HINT", "MAX_ELEMENT_INDEX",
738*35238bceSAndroid Build Coastguard Worker        "SUBPIXEL_BITS", "MAX_3D_TEXTURE_SIZE", "MAX_TEXTURE_SIZE", "MAX_ARRAY_TEXTURE_LAYERS", "MAX_TEXTURE_LOD_BIAS",
739*35238bceSAndroid Build Coastguard Worker        "MAX_CUBE_MAP_TEXTURE_SIZE", "MAX_RENDERBUFFER_SIZE", "MAX_DRAW_BUFFERS", "MAX_COLOR_ATTACHMENTS", "MAX_VIEWPORT_DIMS",
740*35238bceSAndroid Build Coastguard Worker        "ALIASED_POINT_SIZE_RANGE", "ALIASED_LINE_WIDTH_RANGE", "MAX_ELEMENTS_INDICES", "MAX_ELEMENTS_VERTICES", "COMPRESSED_TEXTURE_FORMATS",
741*35238bceSAndroid Build Coastguard Worker        "NUM_COMPRESSED_TEXTURE_FORMATS", "PROGRAM_BINARY_FORMATS", "NUM_PROGRAM_BINARY_FORMATS", "SHADER_BINARY_FORMATS", "NUM_SHADER_BINARY_FORMATS",
742*35238bceSAndroid Build Coastguard Worker        "SHADER_COMPILER", "MAX_SERVER_WAIT_TIMEOUT", "NUM_EXTENSIONS", "MAJOR_VERSION", "MINOR_VERSION",
743*35238bceSAndroid Build Coastguard Worker        "MAX_VERTEX_ATTRIBS", "MAX_VERTEX_UNIFORM_COMPONENTS", "MAX_VERTEX_UNIFORM_VECTORS", "MAX_VERTEX_UNIFORM_BLOCKS", "MAX_VERTEX_OUTPUT_COMPONENTS",
744*35238bceSAndroid Build Coastguard Worker        "MAX_VERTEX_TEXTURE_IMAGE_UNITS", "MAX_FRAGMENT_UNIFORM_COMPONENTS", "MAX_FRAGMENT_UNIFORM_VECTORS", "MAX_FRAGMENT_UNIFORM_BLOCKS", "MAX_FRAGMENT_INPUT_COMPONENTS",
745*35238bceSAndroid Build Coastguard Worker        "MAX_TEXTURE_IMAGE_UNITS", "MIN_PROGRAM_TEXEL_OFFSET", "MAX_PROGRAM_TEXEL_OFFSET", "MAX_UNIFORM_BUFFER_BINDINGS", "MAX_UNIFORM_BLOCK_SIZE",
746*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BUFFER_OFFSET_ALIGNMENT", "MAX_COMBINED_UNIFORM_BLOCKS", "MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS", "MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS", "MAX_VARYING_COMPONENTS",
747*35238bceSAndroid Build Coastguard Worker        "MAX_VARYING_VECTORS", "MAX_COMBINED_TEXTURE_IMAGE_UNITS", "MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS", "MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS", "MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS",
748*35238bceSAndroid Build Coastguard Worker        "SAMPLE_BUFFERS", "SAMPLES", "MAX_SAMPLES", "DEPTH_BITS", "STENCIL_BITS",
749*35238bceSAndroid Build Coastguard Worker        "IMPLEMENTATION_COLOR_READ_TYPE", "IMPLEMENTATION_COLOR_READ_FORMAT", "COPY_READ_BUFFER_BINDING", "COPY_WRITE_BUFFER_BINDING", "RED_BITS",
750*35238bceSAndroid Build Coastguard Worker        "GREEN_BITS", "BLUE_BITS", "ALPHA_BITS", "MAX_COLOR_TEXTURE_SAMPLES", "TIMESTAMP",
751*35238bceSAndroid Build Coastguard Worker        "MAX_DEPTH_TEXTURE_SAMPLES", "MAX_INTEGER_SAMPLES", "TEXTURE_BINDING_2D_MULTISAMPLE", "TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY", "MAX_VERTEX_ATTRIB_STRIDE",
752*35238bceSAndroid Build Coastguard Worker        "MAX_VERTEX_ATTRIB_BINDINGS", "MAX_VERTEX_ATTRIB_RELATIVE_OFFSET", "MIN_SAMPLE_SHADING_VALUE", "FRAGMENT_INTERPOLATION_OFFSET_BITS", "MAX_FRAGMENT_INTERPOLATION_OFFSET",
753*35238bceSAndroid Build Coastguard Worker        "MIN_FRAGMENT_INTERPOLATION_OFFSET", "MAX_GEOMETRY_SHADER_INVOCATIONS", "LAYER_PROVOKING_VERTEX", "MAX_GEOMETRY_UNIFORM_COMPONENTS", "MAX_GEOMETRY_SHADER_STORAGE_BLOCKS",
754*35238bceSAndroid Build Coastguard Worker        "MAX_GEOMETRY_UNIFORM_BLOCKS", "MAX_GEOMETRY_INPUT_COMPONENTS", "MAX_GEOMETRY_OUTPUT_COMPONENTS", "MAX_GEOMETRY_IMAGE_UNIFORMS", "MAX_GEOMETRY_TEXTURE_IMAGE_UNITS",
755*35238bceSAndroid Build Coastguard Worker        "MAX_GEOMETRY_OUTPUT_VERTICES", "MAX_GEOMETRY_ATOMIC_COUNTERS", "MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS", "MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS", "MAX_FRAMEBUFFER_LAYERS",
756*35238bceSAndroid Build Coastguard Worker        "PROVOKING_VERTEX", "PRIMITIVE_RESTART_INDEX", "MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS", "MAX_FRAGMENT_ATOMIC_COUNTERS", "MAX_FRAGMENT_IMAGE_UNIFORMS",
757*35238bceSAndroid Build Coastguard Worker        "MAX_COMPUTE_UNIFORM_BLOCKS", "MAX_COMPUTE_TEXTURE_IMAGE_UNITS", "MAX_COMPUTE_UNIFORM_COMPONENTS", "MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS", "MAX_COMPUTE_ATOMIC_COUNTERS",
758*35238bceSAndroid Build Coastguard Worker        "MAX_COMPUTE_IMAGE_UNIFORMS", "MAX_COMPUTE_SHADER_STORAGE_BLOCKS", "MAX_FRAGMENT_SHADER_STORAGE_BLOCKS", "MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS", "MAX_VERTEX_ATOMIC_COUNTER_BUFFERS",
759*35238bceSAndroid Build Coastguard Worker        "MAX_VERTEX_ATOMIC_COUNTERS", "MAX_VERTEX_IMAGE_UNIFORMS", "MAX_VERTEX_SHADER_STORAGE_BLOCKS", "MAX_COMBINED_SHADER_OUTPUT_RESOURCES", "MAX_ATOMIC_COUNTER_BUFFER_BINDINGS",
760*35238bceSAndroid Build Coastguard Worker        "MAX_ATOMIC_COUNTER_BUFFER_SIZE", "MAX_IMAGE_UNITS", "MAX_COMBINED_ATOMIC_COUNTER_BUFFERS", "MAX_COMBINED_IMAGE_UNIFORMS", "MAX_SHADER_STORAGE_BUFFER_BINDINGS",
761*35238bceSAndroid Build Coastguard Worker        "MAX_SHADER_STORAGE_BLOCK_SIZE", "MAX_COMBINED_ATOMIC_COUNTERS", "MAX_COMBINED_SHADER_STORAGE_BLOCKS", "SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT", "PRIMITIVE_BOUNDING_BOX_EXT",
762*35238bceSAndroid Build Coastguard Worker        "DRAW_INDIRECT_BUFFER_BINDING", "MAX_SAMPLE_MASK_WORDS", "PROGRAM_PIPELINE_BINDING", "ATOMIC_COUNTER_BUFFER_BINDING", "SHADER_STORAGE_BUFFER_BINDING",
763*35238bceSAndroid Build Coastguard Worker        "DISPATCH_INDIRECT_BUFFER_BINDING", "MAX_FRAMEBUFFER_WIDTH", "MAX_FRAMEBUFFER_HEIGHT", "MAX_FRAMEBUFFER_SAMPLES", "MAX_COMPUTE_SHARED_MEMORY_SIZE",
764*35238bceSAndroid Build Coastguard Worker        "MIN_PROGRAM_TEXTURE_GATHER_OFFSET", "MAX_PROGRAM_TEXTURE_GATHER_OFFSET", "MAX_COMPUTE_WORK_GROUP_INVOCATIONS", "MAX_UNIFORM_LOCATIONS", "MAX_DEBUG_MESSAGE_LENGTH",
765*35238bceSAndroid Build Coastguard Worker        "MAX_DEBUG_LOGGED_MESSAGES", "MAX_DEBUG_GROUP_STACK_DEPTH", "MAX_LABEL_LENGTH", "CONTEXT_FLAGS", "DEBUG_LOGGED_MESSAGES",
766*35238bceSAndroid Build Coastguard Worker        "DEBUG_NEXT_LOGGED_MESSAGE_LENGTH", "DEBUG_GROUP_STACK_DEPTH", "MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS", "TEXTURE_BUFFER_OFFSET_ALIGNMENT", "TEXTURE_BUFFER_BINDING",
767*35238bceSAndroid Build Coastguard Worker        "TEXTURE_BINDING_BUFFER", "MAX_TEXTURE_BUFFER_SIZE", "MAX_PATCH_VERTICES", "MAX_TESS_GEN_LEVEL", "MAX_TESS_CONTROL_UNIFORM_COMPONENTS",
768*35238bceSAndroid Build Coastguard Worker        "MAX_TESS_EVALUATION_UNIFORM_COMPONENTS", "MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS", "MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS", "MAX_TESS_CONTROL_OUTPUT_COMPONENTS", "MAX_TESS_PATCH_COMPONENTS",
769*35238bceSAndroid Build Coastguard Worker        "MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS", "MAX_TESS_EVALUATION_OUTPUT_COMPONENTS", "MAX_TESS_CONTROL_UNIFORM_BLOCKS", "MAX_TESS_EVALUATION_UNIFORM_BLOCKS", "MAX_TESS_CONTROL_INPUT_COMPONENTS",
770*35238bceSAndroid Build Coastguard Worker        "MAX_TESS_EVALUATION_INPUT_COMPONENTS", "MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS", "MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS", "MAX_TESS_CONTROL_ATOMIC_COUNTERS", "MAX_TESS_EVALUATION_ATOMIC_COUNTERS",
771*35238bceSAndroid Build Coastguard Worker        "MAX_TESS_CONTROL_IMAGE_UNIFORMS", "MAX_TESS_EVALUATION_IMAGE_UNIFORMS", "MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS", "MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS","MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS",
772*35238bceSAndroid Build Coastguard Worker        "MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS", "PATCH_VERTICES", "PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED"
773*35238bceSAndroid Build Coastguard Worker    ]),
774*35238bceSAndroid Build Coastguard Worker
775*35238bceSAndroid Build Coastguard Worker    ("GettableIndexedState", [
776*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_BUFFER_BINDING",
777*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BUFFER_BINDING",
778*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_BUFFER_START",
779*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_BUFFER_SIZE",
780*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BUFFER_START",
781*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BUFFER_SIZE",
782*35238bceSAndroid Build Coastguard Worker        "SAMPLE_MASK_VALUE",
783*35238bceSAndroid Build Coastguard Worker        "VERTEX_BINDING_OFFSET",
784*35238bceSAndroid Build Coastguard Worker        "VERTEX_BINDING_STRIDE",
785*35238bceSAndroid Build Coastguard Worker        "VERTEX_BINDING_DIVISOR",
786*35238bceSAndroid Build Coastguard Worker        "VERTEX_BINDING_BUFFER",
787*35238bceSAndroid Build Coastguard Worker        "MAX_COMPUTE_WORK_GROUP_COUNT",
788*35238bceSAndroid Build Coastguard Worker        "MAX_COMPUTE_WORK_GROUP_SIZE",
789*35238bceSAndroid Build Coastguard Worker        "ATOMIC_COUNTER_BUFFER_BINDING",
790*35238bceSAndroid Build Coastguard Worker        "ATOMIC_COUNTER_BUFFER_START",
791*35238bceSAndroid Build Coastguard Worker        "ATOMIC_COUNTER_BUFFER_SIZE",
792*35238bceSAndroid Build Coastguard Worker        "SHADER_STORAGE_BUFFER_BINDING",
793*35238bceSAndroid Build Coastguard Worker        "SHADER_STORAGE_BUFFER_START",
794*35238bceSAndroid Build Coastguard Worker        "SHADER_STORAGE_BUFFER_SIZE",
795*35238bceSAndroid Build Coastguard Worker        "IMAGE_BINDING_NAME",
796*35238bceSAndroid Build Coastguard Worker        "IMAGE_BINDING_LEVEL",
797*35238bceSAndroid Build Coastguard Worker        "IMAGE_BINDING_LAYERED",
798*35238bceSAndroid Build Coastguard Worker        "IMAGE_BINDING_LAYER",
799*35238bceSAndroid Build Coastguard Worker        "IMAGE_BINDING_ACCESS",
800*35238bceSAndroid Build Coastguard Worker        "IMAGE_BINDING_FORMAT",
801*35238bceSAndroid Build Coastguard Worker        "BLEND_EQUATION_RGB",
802*35238bceSAndroid Build Coastguard Worker        "BLEND_EQUATION_ALPHA",
803*35238bceSAndroid Build Coastguard Worker        "BLEND_SRC_RGB",
804*35238bceSAndroid Build Coastguard Worker        "BLEND_SRC_ALPHA",
805*35238bceSAndroid Build Coastguard Worker        "BLEND_DST_RGB",
806*35238bceSAndroid Build Coastguard Worker        "BLEND_DST_ALPHA",
807*35238bceSAndroid Build Coastguard Worker        "COLOR_WRITEMASK",
808*35238bceSAndroid Build Coastguard Worker    ]),
809*35238bceSAndroid Build Coastguard Worker
810*35238bceSAndroid Build Coastguard Worker    ("GettableString", [
811*35238bceSAndroid Build Coastguard Worker        "EXTENSIONS",
812*35238bceSAndroid Build Coastguard Worker        "RENDERER",
813*35238bceSAndroid Build Coastguard Worker        "SHADING_LANGUAGE_VERSION",
814*35238bceSAndroid Build Coastguard Worker        "VENDOR",
815*35238bceSAndroid Build Coastguard Worker        "VERSION"
816*35238bceSAndroid Build Coastguard Worker    ]),
817*35238bceSAndroid Build Coastguard Worker
818*35238bceSAndroid Build Coastguard Worker    ("PointerState", [
819*35238bceSAndroid Build Coastguard Worker        "DEBUG_CALLBACK_FUNCTION",
820*35238bceSAndroid Build Coastguard Worker        "DEBUG_CALLBACK_USER_PARAM",
821*35238bceSAndroid Build Coastguard Worker    ]),
822*35238bceSAndroid Build Coastguard Worker
823*35238bceSAndroid Build Coastguard Worker    ("InternalFormatParameter", ["NUM_SAMPLE_COUNTS", "SAMPLES"]),
824*35238bceSAndroid Build Coastguard Worker    ("InternalFormatTarget", [
825*35238bceSAndroid Build Coastguard Worker        "RENDERBUFFER",
826*35238bceSAndroid Build Coastguard Worker        "TEXTURE_2D_MULTISAMPLE",
827*35238bceSAndroid Build Coastguard Worker        "TEXTURE_2D_MULTISAMPLE_ARRAY",
828*35238bceSAndroid Build Coastguard Worker        "TEXTURE_2D",
829*35238bceSAndroid Build Coastguard Worker        "TEXTURE_3D",
830*35238bceSAndroid Build Coastguard Worker        "TEXTURE_2D_ARRAY",
831*35238bceSAndroid Build Coastguard Worker        "TEXTURE_CUBE_MAP",
832*35238bceSAndroid Build Coastguard Worker    ]),
833*35238bceSAndroid Build Coastguard Worker
834*35238bceSAndroid Build Coastguard Worker    ("MultisampleParameter", ["SAMPLE_POSITION"]),
835*35238bceSAndroid Build Coastguard Worker
836*35238bceSAndroid Build Coastguard Worker    # Occlusion and timer queries
837*35238bceSAndroid Build Coastguard Worker    ("QueryTarget", [
838*35238bceSAndroid Build Coastguard Worker        "SAMPLES_PASSED",
839*35238bceSAndroid Build Coastguard Worker        "ANY_SAMPLES_PASSED",
840*35238bceSAndroid Build Coastguard Worker        "PRIMITIVES_GENERATED",
841*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN",
842*35238bceSAndroid Build Coastguard Worker        "TIME_ELAPSED",
843*35238bceSAndroid Build Coastguard Worker    ]),
844*35238bceSAndroid Build Coastguard Worker
845*35238bceSAndroid Build Coastguard Worker    ("QueryParam", ["CURRENT_QUERY", "QUERY_COUNTER_BITS"]),
846*35238bceSAndroid Build Coastguard Worker    ("QueryObjectParam", ["QUERY_RESULT", "QUERY_RESULT_AVAILABLE"]),
847*35238bceSAndroid Build Coastguard Worker
848*35238bceSAndroid Build Coastguard Worker    ("ImageAccess", ["READ_ONLY", "WRITE_ONLY", "READ_WRITE"]),
849*35238bceSAndroid Build Coastguard Worker
850*35238bceSAndroid Build Coastguard Worker    ("ProgramInterface", [
851*35238bceSAndroid Build Coastguard Worker        "UNIFORM",
852*35238bceSAndroid Build Coastguard Worker        "UNIFORM_BLOCK",
853*35238bceSAndroid Build Coastguard Worker        "ATOMIC_COUNTER_BUFFER",
854*35238bceSAndroid Build Coastguard Worker        "PROGRAM_INPUT",
855*35238bceSAndroid Build Coastguard Worker        "PROGRAM_OUTPUT",
856*35238bceSAndroid Build Coastguard Worker        "TRANSFORM_FEEDBACK_VARYING",
857*35238bceSAndroid Build Coastguard Worker        "BUFFER_VARIABLE",
858*35238bceSAndroid Build Coastguard Worker        "SHADER_STORAGE_BLOCK",
859*35238bceSAndroid Build Coastguard Worker    ]),
860*35238bceSAndroid Build Coastguard Worker
861*35238bceSAndroid Build Coastguard Worker    ("ProgramResourceProperty", [
862*35238bceSAndroid Build Coastguard Worker        "ACTIVE_VARIABLES",
863*35238bceSAndroid Build Coastguard Worker        "BUFFER_BINDING",
864*35238bceSAndroid Build Coastguard Worker        "NUM_ACTIVE_VARIABLES",
865*35238bceSAndroid Build Coastguard Worker        "ARRAY_SIZE",
866*35238bceSAndroid Build Coastguard Worker        "ARRAY_STRIDE",
867*35238bceSAndroid Build Coastguard Worker        "BLOCK_INDEX",
868*35238bceSAndroid Build Coastguard Worker        "IS_ROW_MAJOR",
869*35238bceSAndroid Build Coastguard Worker        "MATRIX_STRIDE",
870*35238bceSAndroid Build Coastguard Worker        "ATOMIC_COUNTER_BUFFER_INDEX",
871*35238bceSAndroid Build Coastguard Worker        "BUFFER_DATA_SIZE",
872*35238bceSAndroid Build Coastguard Worker        "LOCATION",
873*35238bceSAndroid Build Coastguard Worker        "NAME_LENGTH",
874*35238bceSAndroid Build Coastguard Worker        "OFFSET",
875*35238bceSAndroid Build Coastguard Worker        "REFERENCED_BY_VERTEX_SHADER",
876*35238bceSAndroid Build Coastguard Worker        "REFERENCED_BY_FRAGMENT_SHADER",
877*35238bceSAndroid Build Coastguard Worker        "REFERENCED_BY_COMPUTE_SHADER",
878*35238bceSAndroid Build Coastguard Worker        "REFERENCED_BY_GEOMETRY_SHADER",
879*35238bceSAndroid Build Coastguard Worker        "REFERENCED_BY_TESS_CONTROL_SHADER",
880*35238bceSAndroid Build Coastguard Worker        "REFERENCED_BY_TESS_EVALUATION_SHADER",
881*35238bceSAndroid Build Coastguard Worker        "TOP_LEVEL_ARRAY_SIZE",
882*35238bceSAndroid Build Coastguard Worker        "TOP_LEVEL_ARRAY_STRIDE",
883*35238bceSAndroid Build Coastguard Worker        "TYPE",
884*35238bceSAndroid Build Coastguard Worker        "IS_PER_PATCH",
885*35238bceSAndroid Build Coastguard Worker    ]),
886*35238bceSAndroid Build Coastguard Worker
887*35238bceSAndroid Build Coastguard Worker    ("PrecisionFormatType", ["LOW_FLOAT", "MEDIUM_FLOAT", "HIGH_FLOAT", "LOW_INT", "MEDIUM_INT", "HIGH_INT"]),
888*35238bceSAndroid Build Coastguard Worker
889*35238bceSAndroid Build Coastguard Worker    ("TransformFeedbackTarget", ["TRANSFORM_FEEDBACK"]),
890*35238bceSAndroid Build Coastguard Worker
891*35238bceSAndroid Build Coastguard Worker    ("ProvokingVertex", ["FIRST_VERTEX_CONVENTION", "LAST_VERTEX_CONVENTION", "UNDEFINED_VERTEX"]),
892*35238bceSAndroid Build Coastguard Worker
893*35238bceSAndroid Build Coastguard Worker    ("DebugMessageSource", [
894*35238bceSAndroid Build Coastguard Worker        "DEBUG_SOURCE_API",
895*35238bceSAndroid Build Coastguard Worker        "DEBUG_SOURCE_WINDOW_SYSTEM",
896*35238bceSAndroid Build Coastguard Worker        "DEBUG_SOURCE_SHADER_COMPILER",
897*35238bceSAndroid Build Coastguard Worker        "DEBUG_SOURCE_THIRD_PARTY",
898*35238bceSAndroid Build Coastguard Worker        "DEBUG_SOURCE_APPLICATION",
899*35238bceSAndroid Build Coastguard Worker        "DEBUG_SOURCE_OTHER", "DONT_CARE"
900*35238bceSAndroid Build Coastguard Worker    ]),
901*35238bceSAndroid Build Coastguard Worker    ("DebugMessageType", [
902*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_ERROR",
903*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_DEPRECATED_BEHAVIOR",
904*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_UNDEFINED_BEHAVIOR",
905*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_PORTABILITY",
906*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_PERFORMANCE",
907*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_OTHER",
908*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_MARKER",
909*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_PUSH_GROUP",
910*35238bceSAndroid Build Coastguard Worker        "DEBUG_TYPE_POP_GROUP",
911*35238bceSAndroid Build Coastguard Worker        "DONT_CARE"
912*35238bceSAndroid Build Coastguard Worker    ]),
913*35238bceSAndroid Build Coastguard Worker    ("DebugMessageSeverity", [
914*35238bceSAndroid Build Coastguard Worker        "DEBUG_SEVERITY_HIGH",
915*35238bceSAndroid Build Coastguard Worker        "DEBUG_SEVERITY_MEDIUM",
916*35238bceSAndroid Build Coastguard Worker        "DEBUG_SEVERITY_LOW",
917*35238bceSAndroid Build Coastguard Worker        "DEBUG_SEVERITY_NOTIFICATION",
918*35238bceSAndroid Build Coastguard Worker        "DONT_CARE"
919*35238bceSAndroid Build Coastguard Worker    ]),
920*35238bceSAndroid Build Coastguard Worker
921*35238bceSAndroid Build Coastguard Worker    # Pipeline query
922*35238bceSAndroid Build Coastguard Worker    ("PipelineParam", [
923*35238bceSAndroid Build Coastguard Worker        "ACTIVE_PROGRAM",
924*35238bceSAndroid Build Coastguard Worker        "INFO_LOG_LENGTH",
925*35238bceSAndroid Build Coastguard Worker        "VALIDATE_STATUS",
926*35238bceSAndroid Build Coastguard Worker        "VERTEX_SHADER",
927*35238bceSAndroid Build Coastguard Worker        "FRAGMENT_SHADER",
928*35238bceSAndroid Build Coastguard Worker        "COMPUTE_SHADER",
929*35238bceSAndroid Build Coastguard Worker        "GEOMETRY_SHADER",
930*35238bceSAndroid Build Coastguard Worker        "TESS_CONTROL_SHADER",
931*35238bceSAndroid Build Coastguard Worker        "TESS_EVALUATION_SHADER",
932*35238bceSAndroid Build Coastguard Worker    ]),
933*35238bceSAndroid Build Coastguard Worker
934*35238bceSAndroid Build Coastguard Worker    ("PatchParam", [
935*35238bceSAndroid Build Coastguard Worker        "PATCH_VERTICES",
936*35238bceSAndroid Build Coastguard Worker    ]),
937*35238bceSAndroid Build Coastguard Worker
938*35238bceSAndroid Build Coastguard Worker    ("TextureFormat", [
939*35238bceSAndroid Build Coastguard Worker        # generated: UncompressedTextureFormat + CompressedTextureFormat
940*35238bceSAndroid Build Coastguard Worker    ]),
941*35238bceSAndroid Build Coastguard Worker
942*35238bceSAndroid Build Coastguard Worker    # GraphicsResetStatus
943*35238bceSAndroid Build Coastguard Worker    ("GraphicsResetStatus", [
944*35238bceSAndroid Build Coastguard Worker        "NO_ERROR",
945*35238bceSAndroid Build Coastguard Worker        "GUILTY_CONTEXT_RESET",
946*35238bceSAndroid Build Coastguard Worker        "INNOCENT_CONTEXT_RESET",
947*35238bceSAndroid Build Coastguard Worker        "UNKNOWN_CONTEXT_RESET",
948*35238bceSAndroid Build Coastguard Worker    ]),
949*35238bceSAndroid Build Coastguard Worker]
950*35238bceSAndroid Build Coastguard Worker
951*35238bceSAndroid Build Coastguard Workerdef getEnumGroupByName (name):
952*35238bceSAndroid Build Coastguard Worker    # \note: will raise an (index out of bounds) error if no such group
953*35238bceSAndroid Build Coastguard Worker    return [x for x in ENUM_GROUPS if x[0]==name][0][1]
954*35238bceSAndroid Build Coastguard Worker
955*35238bceSAndroid Build Coastguard Worker# EnableCap EnumGroups are also GettableState EnumGroups
956*35238bceSAndroid Build Coastguard WorkergetEnumGroupByName("GettableState").extend(getEnumGroupByName("EnableCap"))
957*35238bceSAndroid Build Coastguard Worker
958*35238bceSAndroid Build Coastguard Worker# TextureFormat = UncompressedTextureFormat + CompressedTextureFormat
959*35238bceSAndroid Build Coastguard WorkergetEnumGroupByName("TextureFormat").extend(getEnumGroupByName("UncompressedTextureFormat") + getEnumGroupByName("CompressedTextureFormat"))
960*35238bceSAndroid Build Coastguard Worker
961*35238bceSAndroid Build Coastguard Workerdef genStrUtil (iface):
962*35238bceSAndroid Build Coastguard Worker    enumGroups = addValuePrefix(ENUM_GROUPS, "GL_")
963*35238bceSAndroid Build Coastguard Worker    bitfieldGroups = addValuePrefix(BITFIELD_GROUPS, "GL_")
964*35238bceSAndroid Build Coastguard Worker    prototypeFile = os.path.join(OPENGL_DIR, "gluStrUtilPrototypes.inl")
965*35238bceSAndroid Build Coastguard Worker    implFile = os.path.join(OPENGL_DIR, "gluStrUtil.inl")
966*35238bceSAndroid Build Coastguard Worker
967*35238bceSAndroid Build Coastguard Worker    writeInlFile(prototypeFile, indentLines(genStrUtilProtos(iface, enumGroups, bitfieldGroups)))
968*35238bceSAndroid Build Coastguard Worker    writeInlFile(implFile, genStrUtilImpls(iface, enumGroups, bitfieldGroups))
969*35238bceSAndroid Build Coastguard Worker
970*35238bceSAndroid Build Coastguard Workerif __name__ == "__main__":
971*35238bceSAndroid Build Coastguard Worker    genStrUtil(getHybridInterface())
972