]> git.cworth.org Git - vogl/blob - src/voglcommon/gl_gets.inc
Initial vogl checkin
[vogl] / src / voglcommon / gl_gets.inc
1 // TODO: Sync this vs. the official XML spec!
2 // Note from XML spec:
3 // OpenGL 3.2 is where core and compatibility profiles were first
4 // introduced, so many, many things were removed from the core
5 // profile in this version. A few were reintroduced later (e.g.
6 // GetPointerv / STACK_{UNDER,OVER}FLOW by OpenGL 4.3 for debug
7 // functionality).
8
9 // Format is: DEFINE_GL_GET(enum, min_supported_vers, max_supported_version)
10
11 // Start of version 1.0 - 1.5
12 DEFINE_GL_GET(GL_BLEND_DST, 0x0010, 0x0015)
13 DEFINE_GL_GET(GL_BLEND_SRC, 0x0010, 0x0015)
14
15 //DEFINE_GL_GET(GL_TEXTURE_ENV_COLOR, 0x0010, 0x0015)
16 //DEFINE_GL_GET(GL_TEXTURE_ENV_MODE, 0x0010, 0x0015)
17
18 // Start of version 1.0 - 2.1
19 DEFINE_GL_GET(GL_ACCUM_ALPHA_BITS, 0x0010, 0x0021)
20 DEFINE_GL_GET(GL_ACCUM_BLUE_BITS, 0x0010, 0x0021)
21 DEFINE_GL_GET(GL_ACCUM_CLEAR_VALUE, 0x0010, 0x0021)
22 DEFINE_GL_GET(GL_ACCUM_GREEN_BITS, 0x0010, 0x0021)
23 DEFINE_GL_GET(GL_ACCUM_RED_BITS, 0x0010, 0x0021)
24 DEFINE_GL_GET(GL_ALPHA_BIAS, 0x0010, 0x0021)
25 DEFINE_GL_GET(GL_ALPHA_BITS, 0x0010, 0x0021)
26 //DEFINE_GL_GET(GL_ALPHA_SCALE, 0x0010, 0x0021)
27 DEFINE_GL_GET(GL_ALPHA_TEST, 0x0010, 0x0021)
28 DEFINE_GL_GET(GL_ALPHA_TEST_FUNC, 0x0010, 0x0021)
29 DEFINE_GL_GET(GL_ALPHA_TEST_REF, 0x0010, 0x0021)
30 DEFINE_GL_GET(GL_ATTRIB_STACK_DEPTH, 0x0010, 0x0021)
31 DEFINE_GL_GET(GL_AUTO_NORMAL, 0x0010, 0x0021)
32 DEFINE_GL_GET(GL_AUX_BUFFERS, 0x0010, 0x0021)
33 DEFINE_GL_GET(GL_BLUE_BIAS, 0x0010, 0x0021)
34 DEFINE_GL_GET(GL_BLUE_BITS, 0x0010, 0x0021)
35 DEFINE_GL_GET(GL_BLUE_SCALE, 0x0010, 0x0021)
36 DEFINE_GL_GET(GL_CLIP_PLANE0, 0x0010, 0x0021)
37 DEFINE_GL_GET(GL_CLIP_PLANE1, 0x0010, 0x0021)
38 DEFINE_GL_GET(GL_CLIP_PLANE2, 0x0010, 0x0021)
39 DEFINE_GL_GET(GL_CLIP_PLANE3, 0x0010, 0x0021)
40 DEFINE_GL_GET(GL_CLIP_PLANE4, 0x0010, 0x0021)
41 DEFINE_GL_GET(GL_CLIP_PLANE5, 0x0010, 0x0021)
42 DEFINE_GL_GET(GL_COLOR_MATERIAL, 0x0010, 0x0021)
43 DEFINE_GL_GET(GL_COLOR_MATERIAL_FACE, 0x0010, 0x0021)
44 DEFINE_GL_GET(GL_COLOR_MATERIAL_PARAMETER, 0x0010, 0x0021)
45 DEFINE_GL_GET(GL_CULL_FACE_MODE, 0x0010, 0x0021)
46 DEFINE_GL_GET(GL_CURRENT_COLOR, 0x0010, 0x0021)
47 DEFINE_GL_GET(GL_CURRENT_INDEX, 0x0010, 0x0021)
48 DEFINE_GL_GET(GL_CURRENT_NORMAL, 0x0010, 0x0021)
49 DEFINE_GL_GET(GL_CURRENT_RASTER_COLOR, 0x0010, 0x0021)
50 DEFINE_GL_GET(GL_CURRENT_RASTER_DISTANCE, 0x0010, 0x0021)
51 DEFINE_GL_GET(GL_CURRENT_RASTER_INDEX, 0x0010, 0x0021)
52 DEFINE_GL_GET(GL_CURRENT_RASTER_POSITION, 0x0010, 0x0021)
53 DEFINE_GL_GET(GL_CURRENT_RASTER_POSITION_VALID, 0x0010, 0x0021)
54 DEFINE_GL_GET(GL_CURRENT_RASTER_TEXTURE_COORDS, 0x0010, 0x0021)
55 DEFINE_GL_GET(GL_CURRENT_TEXTURE_COORDS, 0x0010, 0x0021)
56 DEFINE_GL_GET(GL_DEPTH_BIAS, 0x0010, 0x0021)
57 DEFINE_GL_GET(GL_DEPTH_BITS, 0x0010, 0x0021)
58 DEFINE_GL_GET(GL_DEPTH_SCALE, 0x0010, 0x0021)
59 DEFINE_GL_GET(GL_EDGE_FLAG, 0x0010, 0x0021)
60 DEFINE_GL_GET(GL_FOG, 0x0010, 0x0021)
61 DEFINE_GL_GET(GL_FOG_COLOR, 0x0010, 0x0021)
62 DEFINE_GL_GET(GL_FOG_DENSITY, 0x0010, 0x0021)
63 DEFINE_GL_GET(GL_FOG_END, 0x0010, 0x0021)
64 DEFINE_GL_GET(GL_FOG_HINT, 0x0010, 0x0021)
65 DEFINE_GL_GET(GL_FOG_INDEX, 0x0010, 0x0021)
66 DEFINE_GL_GET(GL_FOG_MODE, 0x0010, 0x0021)
67 DEFINE_GL_GET(GL_FOG_START, 0x0010, 0x0021)
68 DEFINE_GL_GET(GL_FRONT_FACE, 0x0010, 0x0021)
69 DEFINE_GL_GET(GL_GREEN_BIAS, 0x0010, 0x0021)
70 DEFINE_GL_GET(GL_GREEN_BITS, 0x0010, 0x0021)
71 DEFINE_GL_GET(GL_GREEN_SCALE, 0x0010, 0x0021)
72 DEFINE_GL_GET(GL_INDEX_BITS, 0x0010, 0x0021)
73 DEFINE_GL_GET(GL_INDEX_CLEAR_VALUE, 0x0010, 0x0021)
74 DEFINE_GL_GET(GL_INDEX_MODE, 0x0010, 0x0021)
75 DEFINE_GL_GET(GL_INDEX_OFFSET, 0x0010, 0x0021)
76 DEFINE_GL_GET(GL_INDEX_SHIFT, 0x0010, 0x0021)
77 DEFINE_GL_GET(GL_INDEX_WRITEMASK, 0x0010, 0x0021)
78 DEFINE_GL_GET(GL_LIGHT0, 0x0010, 0x0021)
79 DEFINE_GL_GET(GL_LIGHT1, 0x0010, 0x0021)
80 DEFINE_GL_GET(GL_LIGHT2, 0x0010, 0x0021)
81 DEFINE_GL_GET(GL_LIGHT3, 0x0010, 0x0021)
82 DEFINE_GL_GET(GL_LIGHT4, 0x0010, 0x0021)
83 DEFINE_GL_GET(GL_LIGHT5, 0x0010, 0x0021)
84 DEFINE_GL_GET(GL_LIGHT6, 0x0010, 0x0021)
85 DEFINE_GL_GET(GL_LIGHT7, 0x0010, 0x0021)
86 DEFINE_GL_GET(GL_LIGHT_MODEL_LOCAL_VIEWER, 0x0010, 0x0021)
87 DEFINE_GL_GET(GL_LIGHT_MODEL_TWO_SIDE, 0x0010, 0x0021)
88 DEFINE_GL_GET(GL_LIGHTING, 0x0010, 0x0021)
89 DEFINE_GL_GET(GL_LINE_STIPPLE, 0x0010, 0x0021)
90 DEFINE_GL_GET(GL_LINE_STIPPLE_PATTERN, 0x0010, 0x0021)
91 DEFINE_GL_GET(GL_LINE_STIPPLE_REPEAT, 0x0010, 0x0021)
92
93 // replaced with GL_SMOOTH_LINE_WIDTH_GRANULARITY
94 //DEFINE_GL_GET(GL_LINE_WIDTH_GRANULARITY, 0x0010, 0x0021)
95
96 // replaced with GL_SMOOTH_LINE_WIDTH_RANGE
97 //DEFINE_GL_GET(GL_LINE_WIDTH_RANGE, 0x0010, 0x0021)
98
99 DEFINE_GL_GET(GL_LIST_BASE, 0x0010, 0x0021)
100 DEFINE_GL_GET(GL_LIST_INDEX, 0x0010, 0x0021)
101 DEFINE_GL_GET(GL_LIST_MODE, 0x0010, 0x0021)
102 DEFINE_GL_GET(GL_MAP1_COLOR_4, 0x0010, 0x0021)
103 DEFINE_GL_GET(GL_MAP1_GRID_DOMAIN, 0x0010, 0x0021)
104 DEFINE_GL_GET(GL_MAP1_GRID_SEGMENTS, 0x0010, 0x0021)
105 DEFINE_GL_GET(GL_MAP1_INDEX, 0x0010, 0x0021)
106 DEFINE_GL_GET(GL_MAP1_NORMAL, 0x0010, 0x0021)
107 DEFINE_GL_GET(GL_MAP1_TEXTURE_COORD_1, 0x0010, 0x0021)
108 DEFINE_GL_GET(GL_MAP1_TEXTURE_COORD_2, 0x0010, 0x0021)
109 DEFINE_GL_GET(GL_MAP1_TEXTURE_COORD_3, 0x0010, 0x0021)
110 DEFINE_GL_GET(GL_MAP1_TEXTURE_COORD_4, 0x0010, 0x0021)
111 DEFINE_GL_GET(GL_MAP1_VERTEX_3, 0x0010, 0x0021)
112 DEFINE_GL_GET(GL_MAP1_VERTEX_4, 0x0010, 0x0021)
113 DEFINE_GL_GET(GL_MAP2_COLOR_4, 0x0010, 0x0021)
114 DEFINE_GL_GET(GL_MAP2_GRID_DOMAIN, 0x0010, 0x0021)
115 DEFINE_GL_GET(GL_MAP2_GRID_SEGMENTS, 0x0010, 0x0021)
116 DEFINE_GL_GET(GL_MAP2_INDEX, 0x0010, 0x0021)
117 DEFINE_GL_GET(GL_MAP2_NORMAL, 0x0010, 0x0021)
118 DEFINE_GL_GET(GL_MAP2_TEXTURE_COORD_1, 0x0010, 0x0021)
119 DEFINE_GL_GET(GL_MAP2_TEXTURE_COORD_2, 0x0010, 0x0021)
120 DEFINE_GL_GET(GL_MAP2_TEXTURE_COORD_3, 0x0010, 0x0021)
121 DEFINE_GL_GET(GL_MAP2_TEXTURE_COORD_4, 0x0010, 0x0021)
122 DEFINE_GL_GET(GL_MAP2_VERTEX_3, 0x0010, 0x0021)
123 DEFINE_GL_GET(GL_MAP2_VERTEX_4, 0x0010, 0x0021)
124 DEFINE_GL_GET(GL_MAP_COLOR, 0x0010, 0x0021)
125 DEFINE_GL_GET(GL_MAP_STENCIL, 0x0010, 0x0021)
126 DEFINE_GL_GET(GL_MATRIX_MODE, 0x0010, 0x0021)
127 DEFINE_GL_GET(GL_MAX_ATTRIB_STACK_DEPTH, 0x0010, 0x0021)
128
129 //DEFINE_GL_GET(GL_MAX_CLIP_PLANES, 0x0010, 0x0021)
130 DEFINE_GL_GET(GL_MAX_CLIP_DISTANCES, 0x0010, 0x99) // alias to GL_MAX_CLIP_PLANES
131
132 DEFINE_GL_GET(GL_MAX_EVAL_ORDER, 0x0010, 0x0021)
133 DEFINE_GL_GET(GL_MAX_LIGHTS, 0x0010, 0x0021)
134 DEFINE_GL_GET(GL_MAX_LIST_NESTING, 0x0010, 0x0021)
135 DEFINE_GL_GET(GL_MAX_MODELVIEW_STACK_DEPTH, 0x0010, 0x0021)
136 DEFINE_GL_GET(GL_MAX_NAME_STACK_DEPTH, 0x0010, 0x0021)
137 DEFINE_GL_GET(GL_MAX_PIXEL_MAP_TABLE, 0x0010, 0x0021)
138 DEFINE_GL_GET(GL_MAX_PROJECTION_STACK_DEPTH, 0x0010, 0x0021)
139 DEFINE_GL_GET(GL_MAX_TEXTURE_STACK_DEPTH, 0x0010, 0x0021)
140 DEFINE_GL_GET(GL_MODELVIEW_MATRIX, 0x0010, 0x0021)
141 DEFINE_GL_GET(GL_MODELVIEW_STACK_DEPTH, 0x0010, 0x0021)
142 DEFINE_GL_GET(GL_NAME_STACK_DEPTH, 0x0010, 0x0021)
143 DEFINE_GL_GET(GL_NORMALIZE, 0x0010, 0x0021)
144 DEFINE_GL_GET(GL_PERSPECTIVE_CORRECTION_HINT, 0x0010, 0x0021)
145 DEFINE_GL_GET(GL_PIXEL_MAP_A_TO_A_SIZE, 0x0010, 0x0021)
146 DEFINE_GL_GET(GL_PIXEL_MAP_B_TO_B_SIZE, 0x0010, 0x0021)
147 DEFINE_GL_GET(GL_PIXEL_MAP_G_TO_G_SIZE, 0x0010, 0x0021)
148 DEFINE_GL_GET(GL_PIXEL_MAP_I_TO_A_SIZE, 0x0010, 0x0021)
149 DEFINE_GL_GET(GL_PIXEL_MAP_I_TO_B_SIZE, 0x0010, 0x0021)
150 DEFINE_GL_GET(GL_PIXEL_MAP_I_TO_G_SIZE, 0x0010, 0x0021)
151 DEFINE_GL_GET(GL_PIXEL_MAP_I_TO_I_SIZE, 0x0010, 0x0021)
152 DEFINE_GL_GET(GL_PIXEL_MAP_I_TO_R_SIZE, 0x0010, 0x0021)
153 DEFINE_GL_GET(GL_PIXEL_MAP_R_TO_R_SIZE, 0x0010, 0x0021)
154 DEFINE_GL_GET(GL_PIXEL_MAP_S_TO_S_SIZE, 0x0010, 0x0021)
155 DEFINE_GL_GET(GL_POINT_SMOOTH, 0x0010, 0x0021)
156 DEFINE_GL_GET(GL_POINT_SMOOTH_HINT, 0x0010, 0x0021)
157 DEFINE_GL_GET(GL_POLYGON_MODE, 0x0010, 0x0021)
158 DEFINE_GL_GET(GL_POLYGON_STIPPLE, 0x0010, 0x0021)
159 DEFINE_GL_GET(GL_PROJECTION_MATRIX, 0x0010, 0x0021)
160 DEFINE_GL_GET(GL_PROJECTION_STACK_DEPTH, 0x0010, 0x0021)
161 DEFINE_GL_GET(GL_RED_BIAS, 0x0010, 0x0021)
162 DEFINE_GL_GET(GL_RED_BITS, 0x0010, 0x0021)
163 DEFINE_GL_GET(GL_RED_SCALE, 0x0010, 0x0021)
164 DEFINE_GL_GET(GL_RENDER_MODE, 0x0010, 0x0021)
165 DEFINE_GL_GET(GL_RGBA_MODE, 0x0010, 0x0021)
166 DEFINE_GL_GET(GL_SHADE_MODEL, 0x0010, 0x0021)
167 DEFINE_GL_GET(GL_STENCIL_BITS, 0x0010, 0x0021)
168 DEFINE_GL_GET(GL_TEXTURE_1D, 0x0010, 0x0021)
169 DEFINE_GL_GET(GL_TEXTURE_2D, 0x0010, 0x0021)
170 DEFINE_GL_GET(GL_TEXTURE_GEN_Q, 0x0010, 0x0021)
171 DEFINE_GL_GET(GL_TEXTURE_GEN_R, 0x0010, 0x0021)
172 DEFINE_GL_GET(GL_TEXTURE_GEN_S, 0x0010, 0x0021)
173 DEFINE_GL_GET(GL_TEXTURE_GEN_T, 0x0010, 0x0021)
174 DEFINE_GL_GET(GL_TEXTURE_MATRIX, 0x0010, 0x0021)
175 DEFINE_GL_GET(GL_TEXTURE_STACK_DEPTH, 0x0010, 0x0021)
176 DEFINE_GL_GET(GL_ZOOM_X, 0x0010, 0x0021)
177 DEFINE_GL_GET(GL_ZOOM_Y, 0x0010, 0x0021)
178
179 // Start of version 1.0 - 4.3
180 DEFINE_GL_GET(GL_BLEND, 0x0010, 0x99)
181 DEFINE_GL_GET(GL_COLOR_CLEAR_VALUE, 0x0010, 0x99)
182 DEFINE_GL_GET(GL_COLOR_WRITEMASK, 0x0010, 0x99)
183 DEFINE_GL_GET(GL_CULL_FACE, 0x0010, 0x99)
184 DEFINE_GL_GET(GL_DEPTH_CLEAR_VALUE, 0x0010, 0x99)
185 DEFINE_GL_GET(GL_DEPTH_FUNC, 0x0010, 0x99)
186 DEFINE_GL_GET(GL_DEPTH_RANGE, 0x0010, 0x99)
187 DEFINE_GL_GET(GL_DEPTH_TEST, 0x0010, 0x99)
188 DEFINE_GL_GET(GL_DEPTH_WRITEMASK, 0x0010, 0x99)
189 DEFINE_GL_GET(GL_DITHER, 0x0010, 0x99)
190 DEFINE_GL_GET(GL_DOUBLEBUFFER, 0x0010, 0x99)
191 DEFINE_GL_GET(GL_DRAW_BUFFER, 0x0010, 0x99)
192 DEFINE_GL_GET(GL_LINE_SMOOTH, 0x0010, 0x99)
193 DEFINE_GL_GET(GL_LINE_SMOOTH_HINT, 0x0010, 0x99)
194 DEFINE_GL_GET(GL_LINE_WIDTH, 0x0010, 0x99)
195 DEFINE_GL_GET(GL_LOGIC_OP_MODE, 0x0010, 0x99)
196 DEFINE_GL_GET(GL_MAX_TEXTURE_SIZE, 0x0010, 0x99)
197 DEFINE_GL_GET(GL_MAX_VIEWPORT_DIMS, 0x0010, 0x99)
198 DEFINE_GL_GET(GL_PACK_ALIGNMENT, 0x0010, 0x99)
199 DEFINE_GL_GET(GL_PACK_LSB_FIRST, 0x0010, 0x99)
200 DEFINE_GL_GET(GL_PACK_ROW_LENGTH, 0x0010, 0x99)
201 DEFINE_GL_GET(GL_PACK_SKIP_PIXELS, 0x0010, 0x99)
202 DEFINE_GL_GET(GL_PACK_SKIP_ROWS, 0x0010, 0x99)
203 DEFINE_GL_GET(GL_PACK_SWAP_BYTES, 0x0010, 0x99)
204 DEFINE_GL_GET(GL_POINT_SIZE, 0x0010, 0x99)
205 DEFINE_GL_GET(GL_POINT_SIZE_GRANULARITY, 0x0010, 0x99)
206 DEFINE_GL_GET(GL_POINT_SIZE_RANGE, 0x0010, 0x99)
207 DEFINE_GL_GET(GL_POLYGON_SMOOTH, 0x0010, 0x99)
208 DEFINE_GL_GET(GL_POLYGON_SMOOTH_HINT, 0x0010, 0x99)
209 DEFINE_GL_GET(GL_READ_BUFFER, 0x0010, 0x99)
210 DEFINE_GL_GET(GL_SCISSOR_BOX, 0x0010, 0x99)
211 DEFINE_GL_GET(GL_SCISSOR_TEST, 0x0010, 0x99)
212 DEFINE_GL_GET(GL_STENCIL_CLEAR_VALUE, 0x0010, 0x99)
213 DEFINE_GL_GET(GL_STENCIL_FAIL, 0x0010, 0x99)
214 DEFINE_GL_GET(GL_STENCIL_FUNC, 0x0010, 0x99)
215 DEFINE_GL_GET(GL_STENCIL_PASS_DEPTH_FAIL, 0x0010, 0x99)
216 DEFINE_GL_GET(GL_STENCIL_PASS_DEPTH_PASS, 0x0010, 0x99)
217 DEFINE_GL_GET(GL_STENCIL_REF, 0x0010, 0x99)
218 DEFINE_GL_GET(GL_STENCIL_TEST, 0x0010, 0x99)
219 DEFINE_GL_GET(GL_STENCIL_VALUE_MASK, 0x0010, 0x99)
220 DEFINE_GL_GET(GL_STENCIL_WRITEMASK, 0x0010, 0x99)
221 DEFINE_GL_GET(GL_STEREO, 0x0010, 0x99)
222 DEFINE_GL_GET(GL_SUBPIXEL_BITS, 0x0010, 0x99)
223 DEFINE_GL_GET(GL_UNPACK_ALIGNMENT, 0x0010, 0x99)
224 DEFINE_GL_GET(GL_UNPACK_LSB_FIRST, 0x0010, 0x99)
225 DEFINE_GL_GET(GL_UNPACK_ROW_LENGTH, 0x0010, 0x99)
226 DEFINE_GL_GET(GL_UNPACK_SKIP_PIXELS, 0x0010, 0x99)
227 DEFINE_GL_GET(GL_UNPACK_SKIP_ROWS, 0x0010, 0x99)
228 DEFINE_GL_GET(GL_UNPACK_SWAP_BYTES, 0x0010, 0x99)
229 DEFINE_GL_GET(GL_VIEWPORT, 0x0010, 0x99)
230
231 // Start of version 1.1 - 2.1
232 DEFINE_GL_GET(GL_COLOR_ARRAY, 0x0011, 0x0021)
233 DEFINE_GL_GET(GL_COLOR_ARRAY_SIZE, 0x0011, 0x0021)
234 DEFINE_GL_GET(GL_COLOR_ARRAY_STRIDE, 0x0011, 0x0021)
235 DEFINE_GL_GET(GL_COLOR_ARRAY_TYPE, 0x0011, 0x0021)
236 DEFINE_GL_GET(GL_EDGE_FLAG_ARRAY, 0x0011, 0x0021)
237 DEFINE_GL_GET(GL_EDGE_FLAG_ARRAY_STRIDE, 0x0011, 0x0021)
238 DEFINE_GL_GET(GL_INDEX_ARRAY, 0x0011, 0x0021)
239 DEFINE_GL_GET(GL_INDEX_ARRAY_STRIDE, 0x0011, 0x0021)
240 DEFINE_GL_GET(GL_INDEX_ARRAY_TYPE, 0x0011, 0x0021)
241
242 // these got merged? or replaced with GL_COLOR_LOGIC_OP
243 //DEFINE_GL_GET(GL_INDEX_LOGIC_OP, 0x0011, 0x0021)
244 //DEFINE_GL_GET(GL_LOGIC_OP, 0x0010, 0x0015)
245 DEFINE_GL_GET(GL_LOGIC_OP, 0x0010, 0x0021)
246
247 DEFINE_GL_GET(GL_NORMAL_ARRAY, 0x0011, 0x0021)
248 DEFINE_GL_GET(GL_NORMAL_ARRAY_STRIDE, 0x0011, 0x0021)
249 DEFINE_GL_GET(GL_NORMAL_ARRAY_TYPE, 0x0011, 0x0021)
250 DEFINE_GL_GET(GL_TEXTURE_COORD_ARRAY, 0x0011, 0x0021)
251 DEFINE_GL_GET(GL_TEXTURE_COORD_ARRAY_SIZE, 0x0011, 0x0021)
252 DEFINE_GL_GET(GL_TEXTURE_COORD_ARRAY_STRIDE, 0x0011, 0x0021)
253 DEFINE_GL_GET(GL_TEXTURE_COORD_ARRAY_TYPE, 0x0011, 0x0021)
254 DEFINE_GL_GET(GL_VERTEX_ARRAY, 0x0011, 0x0021)
255 DEFINE_GL_GET(GL_VERTEX_ARRAY_SIZE, 0x0015, 0x0021)
256 DEFINE_GL_GET(GL_VERTEX_ARRAY_STRIDE, 0x0011, 0x0021)
257 DEFINE_GL_GET(GL_VERTEX_ARRAY_TYPE, 0x0011, 0x0021)
258
259 // Start of version 1.1 - 4.3
260 DEFINE_GL_GET(GL_COLOR_LOGIC_OP, 0x0011, 0x99)
261 DEFINE_GL_GET(GL_POLYGON_OFFSET_FACTOR, 0x0011, 0x99)
262 DEFINE_GL_GET(GL_POLYGON_OFFSET_FILL, 0x0011, 0x99)
263 DEFINE_GL_GET(GL_POLYGON_OFFSET_LINE, 0x0011, 0x99)
264 DEFINE_GL_GET(GL_POLYGON_OFFSET_POINT, 0x0011, 0x99)
265 DEFINE_GL_GET(GL_POLYGON_OFFSET_UNITS, 0x0011, 0x99)
266
267 // Start of version 1.2 - 2.1
268 DEFINE_GL_GET(GL_ALIASED_POINT_SIZE_RANGE, 0x0012, 0x0021)
269 DEFINE_GL_GET(GL_FEEDBACK_BUFFER_SIZE, 0x0012, 0x0021)
270 DEFINE_GL_GET(GL_FEEDBACK_BUFFER_TYPE, 0x0012, 0x0021)
271 DEFINE_GL_GET(GL_LIGHT_MODEL_AMBIENT, 0x0012, 0x0021)
272 DEFINE_GL_GET(GL_LIGHT_MODEL_COLOR_CONTROL, 0x0012, 0x0021)
273 DEFINE_GL_GET(GL_RESCALE_NORMAL, 0x0012, 0x0021)
274 DEFINE_GL_GET(GL_SELECTION_BUFFER_SIZE, 0x0012, 0x0021)
275 //DEFINE_GL_GET(GL_SMOOTH_POINT_SIZE_GRANULARITY, 0x0012, 0x0021)
276 //DEFINE_GL_GET(GL_SMOOTH_POINT_SIZE_RANGE, 0x0012, 0x0021)
277 DEFINE_GL_GET(GL_TEXTURE_3D, 0x0012, 0x0021)
278
279 // Start of version 1.3 - 3.3
280 // TODO: Double check this ARB program stuff, is 3.1 right?
281 // TODO: Add an extension parameter to this macro, so we can only get/set if the extension is available.
282 DEFINE_GL_GET_EXT(GL_VERTEX_PROGRAM_ARB, 0x0013, 0x0031, "GL_ARB_vertex_program")
283 DEFINE_GL_GET_EXT(GL_FRAGMENT_PROGRAM_ARB, 0x0013, 0x0031, "GL_ARB_fragment_program")
284
285 // These guys are aliases to newer enums
286 //DEFINE_GL_GET_EXT(GL_VERTEX_PROGRAM_POINT_SIZE_ARB, 0x0013, 0x0031, "GL_ARB_vertex_program")
287 //DEFINE_GL_GET_EXT(GL_VERTEX_PROGRAM_TWO_SIDE_ARB, 0x0013, 0x0031, "GL_ARB_vertex_program")
288 //DEFINE_GL_GET_EXT(GL_COLOR_SUM_ARB, 0x0013, 0x0031, "GL_ARB_vertex_program")
289
290 // Start of version 1.4 - 2.1
291 DEFINE_GL_GET(GL_CURRENT_FOG_COORD, 0x0014, 0x0021)
292 DEFINE_GL_GET(GL_CURRENT_SECONDARY_COLOR, 0x0014, 0x0021)
293 DEFINE_GL_GET(GL_FOG_COORD_ARRAY_STRIDE, 0x0014, 0x0021)
294 DEFINE_GL_GET(GL_FOG_COORD_ARRAY_TYPE, 0x0014, 0x0021)
295 DEFINE_GL_GET(GL_FOG_COORD_SRC, 0x0014, 0x0021)
296 DEFINE_GL_GET(GL_POINT_SIZE_MAX, 0x0014, 0x0021)
297 DEFINE_GL_GET(GL_POINT_SIZE_MIN, 0x0014, 0x0021)
298 DEFINE_GL_GET(GL_POINT_DISTANCE_ATTENUATION, 0x0014, 0x0021)
299 // Start of version 1.2 - 4.3
300 DEFINE_GL_GET(GL_MAX_3D_TEXTURE_SIZE, 0x0012, 0x99)
301 DEFINE_GL_GET(GL_MAX_ELEMENTS_INDICES, 0x0012, 0x99)
302 DEFINE_GL_GET(GL_MAX_ELEMENTS_VERTICES, 0x0012, 0x99)
303 DEFINE_GL_GET(GL_PACK_IMAGE_HEIGHT, 0x0012, 0x99)
304 DEFINE_GL_GET(GL_PACK_SKIP_IMAGES, 0x0012, 0x99)
305 DEFINE_GL_GET(GL_SMOOTH_LINE_WIDTH_GRANULARITY, 0x0012, 0x99)
306 DEFINE_GL_GET(GL_SMOOTH_LINE_WIDTH_RANGE, 0x0012, 0x99)
307 DEFINE_GL_GET(GL_TEXTURE_BINDING_3D, 0x0012, 0x99)
308 DEFINE_GL_GET(GL_UNPACK_IMAGE_HEIGHT, 0x0012, 0x99)
309 DEFINE_GL_GET(GL_UNPACK_SKIP_IMAGES, 0x0012, 0x99)
310 // Start of version 1.3 - 4.3
311 DEFINE_GL_GET(GL_COMPRESSED_TEXTURE_FORMATS, 0x0013, 0x99)
312 DEFINE_GL_GET(GL_NUM_COMPRESSED_TEXTURE_FORMATS, 0x0013, 0x99)
313 DEFINE_GL_GET(GL_TEXTURE_BINDING_CUBE_MAP, 0x0013, 0x99)
314 DEFINE_GL_GET(GL_TEXTURE_COMPRESSION_HINT, 0x0013, 0x99)
315 // Start of version 1.4 - 2.1
316 DEFINE_GL_GET(GL_SECONDARY_COLOR_ARRAY_SIZE, 0x0014, 0x0021)
317 DEFINE_GL_GET(GL_SECONDARY_COLOR_ARRAY_STRIDE, 0x0014, 0x0021)
318 DEFINE_GL_GET(GL_SECONDARY_COLOR_ARRAY_TYPE, 0x0014, 0x0021)
319
320 // best guesses - glGetPointerv() seems to have died < GL 3.0
321 DEFINE_GL_GET(GL_COLOR_ARRAY_POINTER, 0x0014, 0x0021)
322 DEFINE_GL_GET(GL_EDGE_FLAG_ARRAY_POINTER, 0x0014, 0x0021)
323 DEFINE_GL_GET(GL_FOG_COORD_ARRAY_POINTER, 0x0014, 0x0021)
324 DEFINE_GL_GET(GL_FEEDBACK_BUFFER_POINTER, 0x0014, 0x0021)
325 DEFINE_GL_GET(GL_INDEX_ARRAY_POINTER, 0x0014, 0x0021)
326 DEFINE_GL_GET(GL_NORMAL_ARRAY_POINTER, 0x0014, 0x0021)
327 DEFINE_GL_GET(GL_SECONDARY_COLOR_ARRAY_POINTER, 0x0014, 0x0021)
328 DEFINE_GL_GET(GL_SELECTION_BUFFER_POINTER, 0x0014, 0x0021)
329 DEFINE_GL_GET(GL_TEXTURE_COORD_ARRAY_POINTER, 0x0014, 0x0021)
330 DEFINE_GL_GET(GL_VERTEX_ARRAY_POINTER, 0x0014, 0x0021)
331
332 // Start of version 1.4 - 4.3
333 DEFINE_GL_GET(GL_BLEND_DST_ALPHA, 0x0014, 0x99)
334 DEFINE_GL_GET(GL_BLEND_DST_RGB, 0x0014, 0x99)
335 DEFINE_GL_GET(GL_BLEND_SRC_ALPHA, 0x0014, 0x99)
336 DEFINE_GL_GET(GL_BLEND_SRC_RGB, 0x0014, 0x99)
337 DEFINE_GL_GET(GL_MAX_TEXTURE_LOD_BIAS, 0x0014, 0x99)
338 DEFINE_GL_GET(GL_POINT_FADE_THRESHOLD_SIZE, 0x0014, 0x99)
339
340 // Start of version 1.5 - 2.1
341 DEFINE_GL_GET(GL_CLIENT_ATTRIB_STACK_DEPTH, 0x0015, 0x0021)
342 DEFINE_GL_GET(GL_MAX_CLIENT_ATTRIB_STACK_DEPTH, 0x0015, 0x0021)
343 DEFINE_GL_GET(GL_COLOR_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
344 DEFINE_GL_GET(GL_EDGE_FLAG_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
345 DEFINE_GL_GET(GL_FOG_COORD_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
346 DEFINE_GL_GET(GL_INDEX_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
347 DEFINE_GL_GET(GL_NORMAL_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
348 DEFINE_GL_GET(GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
349 DEFINE_GL_GET(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
350 DEFINE_GL_GET(GL_VERTEX_ARRAY_BUFFER_BINDING, 0x0015, 0x0021)
351
352 // Start of version 1.5 - 4.3
353 DEFINE_GL_GET(GL_ELEMENT_ARRAY_BUFFER_BINDING, 0x0015, 0x99)
354 DEFINE_GL_GET(GL_ARRAY_BUFFER_BINDING, 0x0015, 0x99)
355
356 // Start of version 2.0 - 2.1
357 DEFINE_GL_GET(GL_MAX_TEXTURE_COORDS, 0x0020, 0x0021)
358 DEFINE_GL_GET(GL_POINT_SPRITE, 0x0020, 0x0021)
359
360 //DEFINE_GL_GET(GL_VERTEX_PROGRAM_POINT_SIZE, 0x0020, 0x0021)
361 DEFINE_GL_GET(GL_PROGRAM_POINT_SIZE, 0x0020, 0x99) // alias of GL_VERTEX_PROGRAM_POINT_SIZE from GL2
362
363 DEFINE_GL_GET(GL_VERTEX_PROGRAM_TWO_SIDE, 0x0020, 0x0021)
364
365 DEFINE_GL_GET(GL_MULTISAMPLE, 0x0021, 0x99)
366
367 // Start of version 2.0 - 4.3
368 DEFINE_GL_GET(GL_BLEND_EQUATION_ALPHA, 0x0020, 0x99)
369 DEFINE_GL_GET(GL_BLEND_EQUATION_RGB, 0x0020, 0x99)
370 DEFINE_GL_GET(GL_DRAW_BUFFER0, 0x0020, 0x99)
371 DEFINE_GL_GET(GL_DRAW_BUFFER1, 0x0020, 0x99)
372 DEFINE_GL_GET(GL_DRAW_BUFFER2, 0x0020, 0x99)
373 DEFINE_GL_GET(GL_DRAW_BUFFER3, 0x0020, 0x99)
374 DEFINE_GL_GET(GL_DRAW_BUFFER4, 0x0020, 0x99)
375 DEFINE_GL_GET(GL_DRAW_BUFFER5, 0x0020, 0x99)
376 DEFINE_GL_GET(GL_DRAW_BUFFER6, 0x0020, 0x99)
377 DEFINE_GL_GET(GL_DRAW_BUFFER7, 0x0020, 0x99)
378 DEFINE_GL_GET(GL_DRAW_BUFFER8, 0x0020, 0x99)
379 DEFINE_GL_GET(GL_DRAW_BUFFER9, 0x0020, 0x99)
380 DEFINE_GL_GET(GL_FRAGMENT_SHADER_DERIVATIVE_HINT, 0x0020, 0x99)
381 DEFINE_GL_GET(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, 0x0020, 0x99)
382 DEFINE_GL_GET(GL_MAX_DRAW_BUFFERS, 0x0020, 0x99)
383 DEFINE_GL_GET(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, 0x0020, 0x99)
384 DEFINE_GL_GET(GL_MAX_TEXTURE_IMAGE_UNITS, 0x0020, 0x99)
385
386 //DEFINE_GL_GET(GL_MAX_VARYING_FLOATS, 0x0020, 0x99)
387 DEFINE_GL_GET(GL_MAX_VARYING_COMPONENTS, 0x0020, 0x99) // alias of GL_MAX_VARYING_FLOATS from GL2
388
389 DEFINE_GL_GET(GL_MAX_VERTEX_ATTRIBS, 0x0020, 0x99)
390 DEFINE_GL_GET(GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, 0x0020, 0x99)
391 DEFINE_GL_GET(GL_MAX_VERTEX_UNIFORM_COMPONENTS, 0x0020, 0x99)
392 DEFINE_GL_GET(GL_STENCIL_BACK_FAIL, 0x0020, 0x99)
393 DEFINE_GL_GET(GL_STENCIL_BACK_FUNC, 0x0020, 0x99)
394 DEFINE_GL_GET(GL_STENCIL_BACK_PASS_DEPTH_FAIL, 0x0020, 0x99)
395 DEFINE_GL_GET(GL_STENCIL_BACK_PASS_DEPTH_PASS, 0x0020, 0x99)
396 DEFINE_GL_GET(GL_STENCIL_BACK_REF, 0x0020, 0x99)
397 DEFINE_GL_GET(GL_STENCIL_BACK_VALUE_MASK, 0x0020, 0x99)
398 DEFINE_GL_GET(GL_STENCIL_BACK_WRITEMASK, 0x0020, 0x99)
399
400 // Start of version 2.1 - 2.1
401 DEFINE_GL_GET(GL_CLIENT_ACTIVE_TEXTURE, 0x0021, 0x0021)
402 DEFINE_GL_GET(GL_COLOR_MATRIX, 0x0021, 0x0021)
403 //DEFINE_GL_GET(GL_COLOR_MATRIX_STACK_DEPTH, 0x0021, 0x0021) // can't retrieve on AMD v13 drivers - seems like a bug?
404 DEFINE_GL_GET(GL_COLOR_SUM, 0x0021, 0x0021)
405 DEFINE_GL_GET(GL_COLOR_TABLE, 0x0021, 0x0021)
406 DEFINE_GL_GET(GL_CONVOLUTION_1D, 0x0021, 0x0021)
407 DEFINE_GL_GET(GL_CONVOLUTION_2D, 0x0021, 0x0021)
408 //DEFINE_GL_GET(GL_CURRENT_RASTER_SECONDARY_COLOR, 0x0021, 0x0021) // can't retrieve on AMD v13 drivers - seems like a bug?
409 DEFINE_GL_GET(GL_FOG_COORD_ARRAY, 0x0021, 0x0021)
410 DEFINE_GL_GET(GL_GENERATE_MIPMAP_HINT, 0x0021, 0x0021)
411 DEFINE_GL_GET(GL_HISTOGRAM, 0x0021, 0x0021)
412 DEFINE_GL_GET(GL_MAX_COLOR_MATRIX_STACK_DEPTH, 0x0021, 0x0021)
413 DEFINE_GL_GET(GL_MAX_TEXTURE_UNITS, 0x0021, 0x0021)
414 DEFINE_GL_GET(GL_MINMAX, 0x0021, 0x0021)
415 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_ALPHA_BIAS, 0x0021, 0x0021)
416 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_ALPHA_SCALE, 0x0021, 0x0021)
417 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_BLUE_BIAS, 0x0021, 0x0021)
418 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_BLUE_SCALE, 0x0021, 0x0021)
419 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_COLOR_TABLE, 0x0021, 0x0021)
420 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_GREEN_BIAS, 0x0021, 0x0021)
421 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_GREEN_SCALE, 0x0021, 0x0021)
422 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_RED_BIAS, 0x0021, 0x0021)
423 DEFINE_GL_GET(GL_POST_COLOR_MATRIX_RED_SCALE, 0x0021, 0x0021)
424 DEFINE_GL_GET(GL_POST_CONVOLUTION_ALPHA_BIAS, 0x0021, 0x0021)
425 DEFINE_GL_GET(GL_POST_CONVOLUTION_ALPHA_SCALE, 0x0021, 0x0021)
426 DEFINE_GL_GET(GL_POST_CONVOLUTION_BLUE_BIAS, 0x0021, 0x0021)
427 DEFINE_GL_GET(GL_POST_CONVOLUTION_BLUE_SCALE, 0x0021, 0x0021)
428 DEFINE_GL_GET(GL_POST_CONVOLUTION_COLOR_TABLE, 0x0021, 0x0021)
429 DEFINE_GL_GET(GL_POST_CONVOLUTION_GREEN_BIAS, 0x0021, 0x0021)
430 DEFINE_GL_GET(GL_POST_CONVOLUTION_GREEN_SCALE, 0x0021, 0x0021)
431 DEFINE_GL_GET(GL_POST_CONVOLUTION_RED_BIAS, 0x0021, 0x0021)
432 DEFINE_GL_GET(GL_POST_CONVOLUTION_RED_SCALE, 0x0021, 0x0021)
433 DEFINE_GL_GET(GL_SECONDARY_COLOR_ARRAY, 0x0021, 0x0021)
434 DEFINE_GL_GET(GL_SEPARABLE_2D, 0x0021, 0x0021)
435 DEFINE_GL_GET(GL_TEXTURE_CUBE_MAP, 0x0021, 0x0021)
436 DEFINE_GL_GET(GL_TRANSPOSE_COLOR_MATRIX, 0x0021, 0x0021)
437 DEFINE_GL_GET(GL_TRANSPOSE_MODELVIEW_MATRIX, 0x0021, 0x0021)
438 DEFINE_GL_GET(GL_TRANSPOSE_PROJECTION_MATRIX, 0x0021, 0x0021)
439 DEFINE_GL_GET(GL_TRANSPOSE_TEXTURE_MATRIX, 0x0021, 0x0021)
440
441 // Start of version 2.1 -
442 DEFINE_GL_GET(GL_ACTIVE_TEXTURE, 0x0021, 0x99)
443 DEFINE_GL_GET(GL_ALIASED_LINE_WIDTH_RANGE, 0x0021, 0x99)
444 DEFINE_GL_GET(GL_BLEND_COLOR, 0x0021, 0x99)
445 DEFINE_GL_GET(GL_CURRENT_PROGRAM, 0x0021, 0x99)
446 DEFINE_GL_GET(GL_MAX_CUBE_MAP_TEXTURE_SIZE, 0x0021, 0x99)
447 DEFINE_GL_GET(GL_PIXEL_PACK_BUFFER_BINDING, 0x0021, 0x99)
448 DEFINE_GL_GET(GL_PIXEL_UNPACK_BUFFER_BINDING, 0x0021, 0x99)
449 DEFINE_GL_GET(GL_SAMPLE_BUFFERS, 0x0021, 0x99)
450 DEFINE_GL_GET(GL_SAMPLE_COVERAGE_INVERT, 0x0021, 0x99)
451 DEFINE_GL_GET(GL_SAMPLE_COVERAGE_VALUE, 0x0021, 0x99)
452 DEFINE_GL_GET(GL_SAMPLES, 0x0021, 0x99)
453 DEFINE_GL_GET(GL_TEXTURE_BINDING_1D, 0x0021, 0x99)
454 DEFINE_GL_GET(GL_TEXTURE_BINDING_2D, 0x0021, 0x99)
455
456 DEFINE_GL_GET(GL_SAMPLE_ALPHA_TO_COVERAGE, 0x0021, 0x99)
457 DEFINE_GL_GET(GL_SAMPLE_ALPHA_TO_ONE, 0x0021, 0x99)
458 DEFINE_GL_GET(GL_SAMPLE_COVERAGE, 0x0021, 0x99)
459
460 // Start of version 3.0 -
461 DEFINE_GL_GET(GL_CONTEXT_FLAGS, 0x0030, 0x99)
462 DEFINE_GL_GET(GL_MAJOR_VERSION, 0x0030, 0x99)
463 DEFINE_GL_GET(GL_MINOR_VERSION, 0x0030, 0x99)
464 DEFINE_GL_GET(GL_NUM_EXTENSIONS, 0x0030, 0x99)
465 DEFINE_GL_GET(GL_CLIP_DISTANCE6, 0x0030, 0x99)
466 DEFINE_GL_GET(GL_CLIP_DISTANCE7, 0x0030, 0x99)
467 DEFINE_GL_GET(GL_TEXTURE_BINDING_1D_ARRAY, 0x0030, 0x99)
468 DEFINE_GL_GET(GL_TEXTURE_BINDING_2D_ARRAY, 0x0030, 0x99)
469
470 DEFINE_GL_GET(GL_TRANSFORM_FEEDBACK_BUFFER_BINDING, 0x030, 0x99)
471 DEFINE_GL_INDEXED_GET(GL_TRANSFORM_FEEDBACK_BUFFER_BINDING, 0x030, 0x99, GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS)
472 DEFINE_GL_INDEXED_GET(GL_TRANSFORM_FEEDBACK_BUFFER_SIZE, 0x0030, 0x99, GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS)
473 DEFINE_GL_INDEXED_GET(GL_TRANSFORM_FEEDBACK_BUFFER_START, 0x0030, 0x99, GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS)
474
475 DEFINE_GL_GET(GL_DRAW_FRAMEBUFFER_BINDING, 0x0030, 0x99)
476 DEFINE_GL_GET(GL_RENDERBUFFER_BINDING, 0x0030, 0x99)
477 DEFINE_GL_GET(GL_READ_FRAMEBUFFER_BINDING, 0x0030, 0x99)
478 DEFINE_GL_GET(GL_MAX_PROGRAM_TEXEL_OFFSET, 0x0030, 0x99)
479 DEFINE_GL_GET(GL_MIN_PROGRAM_TEXEL_OFFSET, 0x0030, 0x99)
480 DEFINE_GL_GET(GL_MAX_ARRAY_TEXTURE_LAYERS, 0x0030, 0x99)
481 DEFINE_GL_GET(GL_MAX_RENDERBUFFER_SIZE, 0x0030, 0x99)
482 DEFINE_GL_GET(GL_MAX_COLOR_ATTACHMENTS, 0x0030, 0x99)
483
484 // Not sure about the version of the VAO binding
485 DEFINE_GL_GET(GL_VERTEX_ARRAY_BINDING, 0x0030, 0x99)
486
487 // Start of version 3.1 -
488 DEFINE_GL_GET(GL_MAX_RECTANGLE_TEXTURE_SIZE, 0x0031, 0x99)
489 DEFINE_GL_GET(GL_MAX_TEXTURE_BUFFER_SIZE, 0x0031, 0x99)
490
491 DEFINE_GL_GET(GL_UNIFORM_BUFFER_BINDING, 0x0031, 0x99)
492 DEFINE_GL_INDEXED_GET(GL_UNIFORM_BUFFER_BINDING, 0x0031, 0x99, GL_MAX_UNIFORM_BUFFER_BINDINGS)
493 DEFINE_GL_INDEXED_GET(GL_UNIFORM_BUFFER_START, 0x0031, 0x99, GL_MAX_UNIFORM_BUFFER_BINDINGS)
494 DEFINE_GL_INDEXED_GET(GL_UNIFORM_BUFFER_SIZE, 0x0031, 0x99, GL_MAX_UNIFORM_BUFFER_BINDINGS)
495
496 DEFINE_GL_GET(GL_TEXTURE_BINDING_BUFFER, 0x0031, 0x99)
497 DEFINE_GL_GET(GL_MAX_VERTEX_UNIFORM_BLOCKS, 0x0031, 0x99)
498 DEFINE_GL_GET(GL_MAX_FRAGMENT_UNIFORM_BLOCKS, 0x0031, 0x99)
499 DEFINE_GL_GET(GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS, 0x0031, 0x99)
500 DEFINE_GL_GET(GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS, 0x0031, 0x99)
501 DEFINE_GL_GET(GL_MAX_COMBINED_UNIFORM_BLOCKS, 0x0031, 0x99)
502 DEFINE_GL_GET(GL_MAX_UNIFORM_BLOCK_SIZE, 0x0031, 0x99)
503 DEFINE_GL_GET(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, 0x0031, 0x99)
504 DEFINE_GL_GET(GL_FRAMEBUFFER_SRGB, 0x0031, 0x99)
505 DEFINE_GL_GET(GL_PRIMITIVE_RESTART, 0x0031, 0x99)
506 DEFINE_GL_GET(GL_SAMPLE_MASK, 0x0031, 0x99)
507 DEFINE_GL_GET(GL_TEXTURE_CUBE_MAP_SEAMLESS, 0x0031, 0x99)
508 DEFINE_GL_GET(GL_TEXTURE_BINDING_RECTANGLE, 0x0031, 0x99)
509 DEFINE_GL_GET(GL_PRIMITIVE_RESTART_INDEX, 0x0031, 0x99)
510 DEFINE_GL_GET(GL_MAX_UNIFORM_BUFFER_BINDINGS, 0x0031, 0x99)
511
512 // not positive about these
513 DEFINE_GL_GET(GL_COPY_READ_BUFFER_BINDING, 0x0031, 0x99)
514 DEFINE_GL_GET(GL_COPY_WRITE_BUFFER_BINDING, 0x0031, 0x99)
515
516 // Start of version 3.2 -
517 DEFINE_GL_GET(GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS, 0x0032, 0x99)
518 DEFINE_GL_GET(GL_MAX_GEOMETRY_UNIFORM_BLOCKS, 0x0032, 0x99)
519 DEFINE_GL_GET(GL_MAX_GEOMETRY_INPUT_COMPONENTS, 0x0032, 0x99)
520 DEFINE_GL_GET(GL_MAX_GEOMETRY_OUTPUT_COMPONENTS, 0x0032, 0x99)
521 DEFINE_GL_GET(GL_MAX_GEOMETRY_OUTPUT_VERTICES, 0x0032, 0x99)
522 DEFINE_GL_GET(GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS, 0x0032, 0x99)
523 DEFINE_GL_GET(GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS, 0x0032, 0x99)
524 DEFINE_GL_GET(GL_DEPTH_CLAMP, 0x0032, 0x99)
525 DEFINE_GL_GET(GL_TEXTURE_BINDING_2D_MULTISAMPLE, 0x0032, 0x99)
526 DEFINE_GL_GET(GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY, 0x0032, 0x99)
527 DEFINE_GL_GET(GL_PROVOKING_VERTEX, 0x0032, 0x99)
528 DEFINE_GL_GET(GL_MAX_INTEGER_SAMPLES, 0x0032, 0x99)
529 DEFINE_GL_GET(GL_MAX_COLOR_TEXTURE_SAMPLES, 0x0032, 0x99)
530 DEFINE_GL_GET(GL_MAX_DEPTH_TEXTURE_SAMPLES, 0x0032, 0x99)
531 DEFINE_GL_GET(GL_MAX_SAMPLE_MASK_WORDS, 0x0032, 0x99)
532 DEFINE_GL_GET(GL_MAX_FRAGMENT_INPUT_COMPONENTS, 0x0032, 0x99)
533 DEFINE_GL_GET(GL_MAX_VERTEX_OUTPUT_COMPONENTS, 0x0032, 0x99)
534 DEFINE_GL_GET(GL_MAX_SERVER_WAIT_TIMEOUT, 0x0032, 0x99)
535 DEFINE_GL_GET(GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, 0x0032, 0x99)
536
537 // Start of version 3.3 -
538 DEFINE_GL_GET(GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, 0x0033, 0x99)
539 DEFINE_GL_GET(GL_SAMPLER_BINDING, 0x0033, 0x99)
540 DEFINE_GL_GET(GL_TIMESTAMP, 0x0033, 0x99)
541
542 // Start of version 4.0 -
543 DEFINE_GL_GET(GL_IMPLEMENTATION_COLOR_READ_FORMAT, 0x0040, 0x99)
544 DEFINE_GL_GET(GL_IMPLEMENTATION_COLOR_READ_TYPE, 0x0040, 0x99)
545 DEFINE_GL_GET(GL_MAX_COMBINED_ATOMIC_COUNTERS, 0x0040, 0x99)
546 DEFINE_GL_GET_EXT(GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS, 0x0040, 0x99, "GL_ARB_shader_storage_buffer_object")
547 DEFINE_GL_GET(GL_MAX_FRAGMENT_UNIFORM_VECTORS, 0x0040, 0x99)
548 DEFINE_GL_GET_EXT(GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, 0x0040, 0x99, "GL_ARB_shader_storage_buffer_object")
549 DEFINE_GL_GET(GL_MAX_VARYING_VECTORS, 0x0040, 0x99)
550 DEFINE_GL_GET(GL_MAX_VERTEX_UNIFORM_VECTORS, 0x0040, 0x99)
551 DEFINE_GL_GET(GL_NUM_PROGRAM_BINARY_FORMATS, 0x0040, 0x99)
552 DEFINE_GL_GET(GL_NUM_SHADER_BINARY_FORMATS, 0x0040, 0x99)
553 DEFINE_GL_GET(GL_PROGRAM_BINARY_FORMATS, 0x0040, 0x99)
554 DEFINE_GL_GET(GL_PROGRAM_PIPELINE_BINDING, 0x0040, 0x99)
555 DEFINE_GL_GET(GL_SHADER_COMPILER, 0x0040, 0x99)
556
557 // TODO:
558 //DEFINE_GL_GET(GL_SHADER_STORAGE_BUFFER_BINDING, 0x0040, 0x99)
559 //DEFINE_GL_GET(GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT, 0x0040, 0x99)
560 //DEFINE_GL_GET(GL_SHADER_STORAGE_BUFFER_SIZE, 0x0040, 0x99)
561 //DEFINE_GL_GET(GL_SHADER_STORAGE_BUFFER_START, 0x0040, 0x99)
562
563 DEFINE_GL_GET(GL_TEXTURE_BINDING_CUBE_MAP_ARRAY, 0x0040, 0x99)
564 DEFINE_GL_GET(GL_SAMPLE_SHADING, 0x0040, 0x99)
565 DEFINE_GL_GET(GL_MIN_SAMPLE_SHADING_VALUE, 0x0040, 0x99)
566
567 // not sure about these
568 DEFINE_GL_GET(GL_ATOMIC_COUNTER_BUFFER_BINDING, 0x0040, 0x99)
569 DEFINE_GL_GET(GL_DRAW_INDIRECT_BUFFER_BINDING, 0x0040, 0x99)
570
571 // Start of version 4.1 -
572 DEFINE_GL_GET(GL_MAX_VIEWPORTS, 0x0041, 0x99)
573 DEFINE_GL_GET(GL_VIEWPORT_BOUNDS_RANGE, 0x0041, 0x99)
574 DEFINE_GL_GET(GL_VIEWPORT_INDEX_PROVOKING_VERTEX, 0x0041, 0x99)
575 DEFINE_GL_GET(GL_VIEWPORT_SUBPIXEL_BITS, 0x0041, 0x99)
576 DEFINE_GL_GET(GL_LAYER_PROVOKING_VERTEX, 0x0041, 0x99)
577
578 // Start of version 4.2 -
579 DEFINE_GL_GET(GL_MAX_FRAGMENT_ATOMIC_COUNTERS, 0x0042, 0x99)
580 DEFINE_GL_GET(GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS, 0x0042, 0x99)
581 DEFINE_GL_GET(GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS, 0x0042, 0x99)
582 DEFINE_GL_GET(GL_MAX_VERTEX_ATOMIC_COUNTERS, 0x0042, 0x99)
583 DEFINE_GL_GET(GL_MIN_MAP_BUFFER_ALIGNMENT, 0x0042, 0x99)
584 DEFINE_GL_GET(GL_MAX_GEOMETRY_ATOMIC_COUNTERS, 0x0042, 0x99)
585
586 // Start of version 4.3 -
587 DEFINE_GL_GET(GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS, 0x0043, 0x99)
588 DEFINE_GL_GET(GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS, 0x0043, 0x99)
589 DEFINE_GL_GET(GL_MAX_COMPUTE_ATOMIC_COUNTERS, 0x0043, 0x99)
590 DEFINE_GL_GET(GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS, 0x0043, 0x99)
591 DEFINE_GL_GET(GL_MAX_COMPUTE_UNIFORM_BLOCKS, 0x0043, 0x99)
592 DEFINE_GL_GET(GL_MAX_COMPUTE_UNIFORM_COMPONENTS, 0x0043, 0x99)
593 //DEFINE_GL_GET(GL_MAX_COMPUTE_WORK_GROUP_COUNT, 0x0043, 0x99)
594 DEFINE_GL_GET(GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS, 0x0043, 0x99)
595 //DEFINE_GL_GET(GL_MAX_COMPUTE_WORK_GROUP_SIZE, 0x0043, 0x99)
596 DEFINE_GL_GET(GL_MAX_ELEMENT_INDEX, 0x0043, 0x99)
597 DEFINE_GL_GET(GL_MAX_FRAMEBUFFER_HEIGHT, 0x0043, 0x99)
598 DEFINE_GL_GET(GL_MAX_FRAMEBUFFER_LAYERS, 0x0043, 0x99)
599 DEFINE_GL_GET(GL_MAX_FRAMEBUFFER_SAMPLES, 0x0043, 0x99)
600 DEFINE_GL_GET(GL_MAX_FRAMEBUFFER_WIDTH, 0x0043, 0x99)
601 DEFINE_GL_GET(GL_MAX_UNIFORM_LOCATIONS, 0x0043, 0x99)
602 DEFINE_GL_GET(GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, 0x0043, 0x99)
603 DEFINE_GL_GET(GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT, 0x0043, 0x99)
604 DEFINE_GL_GET(GL_DISPATCH_INDIRECT_BUFFER_BINDING, 0x0043, 0x99)
605 DEFINE_GL_GET(GL_MAX_DEBUG_GROUP_STACK_DEPTH, 0x0043, 0x99)
606 DEFINE_GL_GET(GL_DEBUG_GROUP_STACK_DEPTH, 0x0043, 0x99)
607 DEFINE_GL_GET(GL_MAX_LABEL_LENGTH, 0x0043, 0x99)
608 DEFINE_GL_GET(GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS, 0x0043, 0x99)
609 DEFINE_GL_GET(GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS, 0x0043, 0x99)
610 DEFINE_GL_GET(GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS, 0x0043, 0x99)
611 DEFINE_GL_GET(GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS, 0x0043, 0x99)
612 DEFINE_GL_GET(GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS, 0x0043, 0x99)
613 //DEFINE_GL_GET(GL_VERTEX_BINDING_DIVISOR, 0x0043, 0x99)
614 //DEFINE_GL_GET(GL_VERTEX_BINDING_OFFSET, 0x0043, 0x99)
615 //DEFINE_GL_GET(GL_VERTEX_BINDING_STRIDE, 0x0043, 0x99)
616 DEFINE_GL_GET(GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET, 0x0043, 0x99)
617 DEFINE_GL_GET(GL_MAX_VERTEX_ATTRIB_BINDINGS, 0x0043, 0x99)