1 /* DO NOT EDIT - This file generated automatically by glX_proto_size.py (from Mesa) script */
2 
3 /*
4  * (C) Copyright IBM Corporation 2004
5  * All Rights Reserved.
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sub license,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice (including the next
15  * paragraph) shall be included in all copies or substantial portions of the
16  * Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
21  * IBM,
22  * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
23  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
24  * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
25  * SOFTWARE.
26  */
27 
28 
29 #include <X11/Xfuncproto.h>
30 #include <GL/gl.h>
31 #include "indirect_size_get.h"
32 #include "glxserver.h"
33 #include "indirect_util.h"
34 #include "indirect_size.h"
35 
36 #if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
37 #define PURE __attribute__((pure))
38 #else
39 #define PURE
40 #endif
41 
42 #if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)
43 #define FASTCALL __attribute__((fastcall))
44 #else
45 #define FASTCALL
46 #endif
47 
48 
49 #if defined(__CYGWIN__) || defined(__MINGW32__) || defined(GLX_USE_APPLEGL)
50 #undef HAVE_ALIAS
51 #endif
52 #ifdef HAVE_ALIAS
53 #define ALIAS2(from,to) \
54     _X_INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \
55         __attribute__ ((alias( # to )));
56 #define ALIAS(from,to) ALIAS2( from, __gl ## to ## _size )
57 #else
58 #define ALIAS(from,to) \
59     _X_INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \
60     { return __gl ## to ## _size( e ); }
61 #endif
62 
63 
64 _X_INTERNAL PURE FASTCALL GLint
__glCallLists_size(GLenum e)65 __glCallLists_size(GLenum e)
66 {
67     switch (e) {
68     case GL_BYTE:
69     case GL_UNSIGNED_BYTE:
70         return 1;
71     case GL_SHORT:
72     case GL_UNSIGNED_SHORT:
73     case GL_2_BYTES:
74     case GL_HALF_FLOAT:
75         return 2;
76     case GL_3_BYTES:
77         return 3;
78     case GL_INT:
79     case GL_UNSIGNED_INT:
80     case GL_FLOAT:
81     case GL_4_BYTES:
82         return 4;
83     default:
84         return 0;
85     }
86 }
87 
88 _X_INTERNAL PURE FASTCALL GLint
__glFogfv_size(GLenum e)89 __glFogfv_size(GLenum e)
90 {
91     switch (e) {
92     case GL_FOG_INDEX:
93     case GL_FOG_DENSITY:
94     case GL_FOG_START:
95     case GL_FOG_END:
96     case GL_FOG_MODE:
97     case GL_FOG_OFFSET_VALUE_SGIX:
98     case GL_FOG_DISTANCE_MODE_NV:
99         return 1;
100     case GL_FOG_COLOR:
101         return 4;
102     default:
103         return 0;
104     }
105 }
106 
107 _X_INTERNAL PURE FASTCALL GLint
__glLightfv_size(GLenum e)108 __glLightfv_size(GLenum e)
109 {
110     switch (e) {
111     case GL_SPOT_EXPONENT:
112     case GL_SPOT_CUTOFF:
113     case GL_CONSTANT_ATTENUATION:
114     case GL_LINEAR_ATTENUATION:
115     case GL_QUADRATIC_ATTENUATION:
116         return 1;
117     case GL_SPOT_DIRECTION:
118         return 3;
119     case GL_AMBIENT:
120     case GL_DIFFUSE:
121     case GL_SPECULAR:
122     case GL_POSITION:
123         return 4;
124     default:
125         return 0;
126     }
127 }
128 
129 _X_INTERNAL PURE FASTCALL GLint
__glLightModelfv_size(GLenum e)130 __glLightModelfv_size(GLenum e)
131 {
132     switch (e) {
133     case GL_LIGHT_MODEL_LOCAL_VIEWER:
134     case GL_LIGHT_MODEL_TWO_SIDE:
135     case GL_LIGHT_MODEL_COLOR_CONTROL:
136 /*      case GL_LIGHT_MODEL_COLOR_CONTROL_EXT:*/
137         return 1;
138     case GL_LIGHT_MODEL_AMBIENT:
139         return 4;
140     default:
141         return 0;
142     }
143 }
144 
145 _X_INTERNAL PURE FASTCALL GLint
__glMaterialfv_size(GLenum e)146 __glMaterialfv_size(GLenum e)
147 {
148     switch (e) {
149     case GL_SHININESS:
150         return 1;
151     case GL_COLOR_INDEXES:
152         return 3;
153     case GL_AMBIENT:
154     case GL_DIFFUSE:
155     case GL_SPECULAR:
156     case GL_EMISSION:
157     case GL_AMBIENT_AND_DIFFUSE:
158         return 4;
159     default:
160         return 0;
161     }
162 }
163 
164 _X_INTERNAL PURE FASTCALL GLint
__glTexParameterfv_size(GLenum e)165 __glTexParameterfv_size(GLenum e)
166 {
167     switch (e) {
168     case GL_TEXTURE_MAG_FILTER:
169     case GL_TEXTURE_MIN_FILTER:
170     case GL_TEXTURE_WRAP_S:
171     case GL_TEXTURE_WRAP_T:
172     case GL_TEXTURE_PRIORITY:
173     case GL_TEXTURE_WRAP_R:
174     case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB:
175 /*      case GL_SHADOW_AMBIENT_SGIX:*/
176     case GL_TEXTURE_MIN_LOD:
177     case GL_TEXTURE_MAX_LOD:
178     case GL_TEXTURE_BASE_LEVEL:
179     case GL_TEXTURE_MAX_LEVEL:
180     case GL_TEXTURE_CLIPMAP_FRAME_SGIX:
181     case GL_TEXTURE_LOD_BIAS_S_SGIX:
182     case GL_TEXTURE_LOD_BIAS_T_SGIX:
183     case GL_TEXTURE_LOD_BIAS_R_SGIX:
184     case GL_GENERATE_MIPMAP:
185 /*      case GL_GENERATE_MIPMAP_SGIS:*/
186     case GL_TEXTURE_COMPARE_SGIX:
187     case GL_TEXTURE_COMPARE_OPERATOR_SGIX:
188     case GL_TEXTURE_MAX_CLAMP_S_SGIX:
189     case GL_TEXTURE_MAX_CLAMP_T_SGIX:
190     case GL_TEXTURE_MAX_CLAMP_R_SGIX:
191     case GL_TEXTURE_MAX_ANISOTROPY_EXT:
192     case GL_TEXTURE_LOD_BIAS:
193 /*      case GL_TEXTURE_LOD_BIAS_EXT:*/
194     case GL_TEXTURE_STORAGE_HINT_APPLE:
195     case GL_STORAGE_PRIVATE_APPLE:
196     case GL_STORAGE_CACHED_APPLE:
197     case GL_STORAGE_SHARED_APPLE:
198     case GL_DEPTH_TEXTURE_MODE:
199 /*      case GL_DEPTH_TEXTURE_MODE_ARB:*/
200     case GL_TEXTURE_COMPARE_MODE:
201 /*      case GL_TEXTURE_COMPARE_MODE_ARB:*/
202     case GL_TEXTURE_COMPARE_FUNC:
203 /*      case GL_TEXTURE_COMPARE_FUNC_ARB:*/
204     case GL_TEXTURE_UNSIGNED_REMAP_MODE_NV:
205         return 1;
206     case GL_TEXTURE_CLIPMAP_CENTER_SGIX:
207     case GL_TEXTURE_CLIPMAP_OFFSET_SGIX:
208         return 2;
209     case GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX:
210         return 3;
211     case GL_TEXTURE_BORDER_COLOR:
212     case GL_POST_TEXTURE_FILTER_BIAS_SGIX:
213     case GL_POST_TEXTURE_FILTER_SCALE_SGIX:
214         return 4;
215     default:
216         return 0;
217     }
218 }
219 
220 _X_INTERNAL PURE FASTCALL GLint
__glTexEnvfv_size(GLenum e)221 __glTexEnvfv_size(GLenum e)
222 {
223     switch (e) {
224     case GL_ALPHA_SCALE:
225     case GL_TEXTURE_ENV_MODE:
226     case GL_TEXTURE_LOD_BIAS:
227     case GL_COMBINE_RGB:
228     case GL_COMBINE_ALPHA:
229     case GL_RGB_SCALE:
230     case GL_SOURCE0_RGB:
231     case GL_SOURCE1_RGB:
232     case GL_SOURCE2_RGB:
233     case GL_SOURCE3_RGB_NV:
234     case GL_SOURCE0_ALPHA:
235     case GL_SOURCE1_ALPHA:
236     case GL_SOURCE2_ALPHA:
237     case GL_SOURCE3_ALPHA_NV:
238     case GL_OPERAND0_RGB:
239     case GL_OPERAND1_RGB:
240     case GL_OPERAND2_RGB:
241     case GL_OPERAND3_RGB_NV:
242     case GL_OPERAND0_ALPHA:
243     case GL_OPERAND1_ALPHA:
244     case GL_OPERAND2_ALPHA:
245     case GL_OPERAND3_ALPHA_NV:
246     case GL_BUMP_TARGET_ATI:
247     case GL_COORD_REPLACE_ARB:
248 /*      case GL_COORD_REPLACE_NV:*/
249         return 1;
250     case GL_TEXTURE_ENV_COLOR:
251         return 4;
252     default:
253         return 0;
254     }
255 }
256 
257 _X_INTERNAL PURE FASTCALL GLint
__glTexGendv_size(GLenum e)258 __glTexGendv_size(GLenum e)
259 {
260     switch (e) {
261     case GL_TEXTURE_GEN_MODE:
262         return 1;
263     case GL_OBJECT_PLANE:
264     case GL_EYE_PLANE:
265         return 4;
266     default:
267         return 0;
268     }
269 }
270 
271 _X_INTERNAL PURE FASTCALL GLint
__glMap1d_size(GLenum e)272 __glMap1d_size(GLenum e)
273 {
274     switch (e) {
275     case GL_MAP1_INDEX:
276     case GL_MAP1_TEXTURE_COORD_1:
277         return 1;
278     case GL_MAP1_TEXTURE_COORD_2:
279         return 2;
280     case GL_MAP1_NORMAL:
281     case GL_MAP1_TEXTURE_COORD_3:
282     case GL_MAP1_VERTEX_3:
283         return 3;
284     case GL_MAP1_COLOR_4:
285     case GL_MAP1_TEXTURE_COORD_4:
286     case GL_MAP1_VERTEX_4:
287         return 4;
288     default:
289         return 0;
290     }
291 }
292 
293 _X_INTERNAL PURE FASTCALL GLint
__glMap2d_size(GLenum e)294 __glMap2d_size(GLenum e)
295 {
296     switch (e) {
297     case GL_MAP2_INDEX:
298     case GL_MAP2_TEXTURE_COORD_1:
299         return 1;
300     case GL_MAP2_TEXTURE_COORD_2:
301         return 2;
302     case GL_MAP2_NORMAL:
303     case GL_MAP2_TEXTURE_COORD_3:
304     case GL_MAP2_VERTEX_3:
305         return 3;
306     case GL_MAP2_COLOR_4:
307     case GL_MAP2_TEXTURE_COORD_4:
308     case GL_MAP2_VERTEX_4:
309         return 4;
310     default:
311         return 0;
312     }
313 }
314 
315 _X_INTERNAL PURE FASTCALL GLint
__glGetBooleanv_size(GLenum e)316 __glGetBooleanv_size(GLenum e)
317 {
318     switch (e) {
319     case GL_CURRENT_INDEX:
320     case GL_CURRENT_RASTER_INDEX:
321     case GL_CURRENT_RASTER_POSITION_VALID:
322     case GL_CURRENT_RASTER_DISTANCE:
323     case GL_POINT_SMOOTH:
324     case GL_POINT_SIZE:
325     case GL_SMOOTH_POINT_SIZE_GRANULARITY:
326     case GL_LINE_SMOOTH:
327     case GL_LINE_WIDTH:
328     case GL_LINE_WIDTH_GRANULARITY:
329     case GL_LINE_STIPPLE:
330     case GL_LINE_STIPPLE_PATTERN:
331     case GL_LINE_STIPPLE_REPEAT:
332     case GL_LIST_MODE:
333     case GL_MAX_LIST_NESTING:
334     case GL_LIST_BASE:
335     case GL_LIST_INDEX:
336     case GL_POLYGON_SMOOTH:
337     case GL_POLYGON_STIPPLE:
338     case GL_EDGE_FLAG:
339     case GL_CULL_FACE:
340     case GL_CULL_FACE_MODE:
341     case GL_FRONT_FACE:
342     case GL_LIGHTING:
343     case GL_LIGHT_MODEL_LOCAL_VIEWER:
344     case GL_LIGHT_MODEL_TWO_SIDE:
345     case GL_SHADE_MODEL:
346     case GL_COLOR_MATERIAL_FACE:
347     case GL_COLOR_MATERIAL_PARAMETER:
348     case GL_COLOR_MATERIAL:
349     case GL_FOG:
350     case GL_FOG_INDEX:
351     case GL_FOG_DENSITY:
352     case GL_FOG_START:
353     case GL_FOG_END:
354     case GL_FOG_MODE:
355     case GL_DEPTH_TEST:
356     case GL_DEPTH_WRITEMASK:
357     case GL_DEPTH_CLEAR_VALUE:
358     case GL_DEPTH_FUNC:
359     case GL_STENCIL_TEST:
360     case GL_STENCIL_CLEAR_VALUE:
361     case GL_STENCIL_FUNC:
362     case GL_STENCIL_VALUE_MASK:
363     case GL_STENCIL_FAIL:
364     case GL_STENCIL_PASS_DEPTH_FAIL:
365     case GL_STENCIL_PASS_DEPTH_PASS:
366     case GL_STENCIL_REF:
367     case GL_STENCIL_WRITEMASK:
368     case GL_MATRIX_MODE:
369     case GL_NORMALIZE:
370     case GL_MODELVIEW_STACK_DEPTH:
371     case GL_PROJECTION_STACK_DEPTH:
372     case GL_TEXTURE_STACK_DEPTH:
373     case GL_ATTRIB_STACK_DEPTH:
374     case GL_CLIENT_ATTRIB_STACK_DEPTH:
375     case GL_ALPHA_TEST:
376     case GL_ALPHA_TEST_FUNC:
377     case GL_ALPHA_TEST_REF:
378     case GL_DITHER:
379     case GL_BLEND_DST:
380     case GL_BLEND_SRC:
381     case GL_BLEND:
382     case GL_LOGIC_OP_MODE:
383     case GL_LOGIC_OP:
384     case GL_AUX_BUFFERS:
385     case GL_DRAW_BUFFER:
386     case GL_READ_BUFFER:
387     case GL_SCISSOR_TEST:
388     case GL_INDEX_CLEAR_VALUE:
389     case GL_INDEX_WRITEMASK:
390     case GL_INDEX_MODE:
391     case GL_RGBA_MODE:
392     case GL_DOUBLEBUFFER:
393     case GL_STEREO:
394     case GL_RENDER_MODE:
395     case GL_PERSPECTIVE_CORRECTION_HINT:
396     case GL_POINT_SMOOTH_HINT:
397     case GL_LINE_SMOOTH_HINT:
398     case GL_POLYGON_SMOOTH_HINT:
399     case GL_FOG_HINT:
400     case GL_TEXTURE_GEN_S:
401     case GL_TEXTURE_GEN_T:
402     case GL_TEXTURE_GEN_R:
403     case GL_TEXTURE_GEN_Q:
404     case GL_PIXEL_MAP_I_TO_I:
405     case GL_PIXEL_MAP_I_TO_I_SIZE:
406     case GL_PIXEL_MAP_S_TO_S_SIZE:
407     case GL_PIXEL_MAP_I_TO_R_SIZE:
408     case GL_PIXEL_MAP_I_TO_G_SIZE:
409     case GL_PIXEL_MAP_I_TO_B_SIZE:
410     case GL_PIXEL_MAP_I_TO_A_SIZE:
411     case GL_PIXEL_MAP_R_TO_R_SIZE:
412     case GL_PIXEL_MAP_G_TO_G_SIZE:
413     case GL_PIXEL_MAP_B_TO_B_SIZE:
414     case GL_PIXEL_MAP_A_TO_A_SIZE:
415     case GL_UNPACK_SWAP_BYTES:
416     case GL_UNPACK_LSB_FIRST:
417     case GL_UNPACK_ROW_LENGTH:
418     case GL_UNPACK_SKIP_ROWS:
419     case GL_UNPACK_SKIP_PIXELS:
420     case GL_UNPACK_ALIGNMENT:
421     case GL_PACK_SWAP_BYTES:
422     case GL_PACK_LSB_FIRST:
423     case GL_PACK_ROW_LENGTH:
424     case GL_PACK_SKIP_ROWS:
425     case GL_PACK_SKIP_PIXELS:
426     case GL_PACK_ALIGNMENT:
427     case GL_MAP_COLOR:
428     case GL_MAP_STENCIL:
429     case GL_INDEX_SHIFT:
430     case GL_INDEX_OFFSET:
431     case GL_RED_SCALE:
432     case GL_RED_BIAS:
433     case GL_ZOOM_X:
434     case GL_ZOOM_Y:
435     case GL_GREEN_SCALE:
436     case GL_GREEN_BIAS:
437     case GL_BLUE_SCALE:
438     case GL_BLUE_BIAS:
439     case GL_ALPHA_SCALE:
440     case GL_ALPHA_BIAS:
441     case GL_DEPTH_SCALE:
442     case GL_DEPTH_BIAS:
443     case GL_MAX_EVAL_ORDER:
444     case GL_MAX_LIGHTS:
445     case GL_MAX_CLIP_PLANES:
446     case GL_MAX_TEXTURE_SIZE:
447     case GL_MAX_PIXEL_MAP_TABLE:
448     case GL_MAX_ATTRIB_STACK_DEPTH:
449     case GL_MAX_MODELVIEW_STACK_DEPTH:
450     case GL_MAX_NAME_STACK_DEPTH:
451     case GL_MAX_PROJECTION_STACK_DEPTH:
452     case GL_MAX_TEXTURE_STACK_DEPTH:
453     case GL_MAX_CLIENT_ATTRIB_STACK_DEPTH:
454     case GL_SUBPIXEL_BITS:
455     case GL_INDEX_BITS:
456     case GL_RED_BITS:
457     case GL_GREEN_BITS:
458     case GL_BLUE_BITS:
459     case GL_ALPHA_BITS:
460     case GL_DEPTH_BITS:
461     case GL_STENCIL_BITS:
462     case GL_ACCUM_RED_BITS:
463     case GL_ACCUM_GREEN_BITS:
464     case GL_ACCUM_BLUE_BITS:
465     case GL_ACCUM_ALPHA_BITS:
466     case GL_NAME_STACK_DEPTH:
467     case GL_AUTO_NORMAL:
468     case GL_MAP1_COLOR_4:
469     case GL_MAP1_INDEX:
470     case GL_MAP1_NORMAL:
471     case GL_MAP1_TEXTURE_COORD_1:
472     case GL_MAP1_TEXTURE_COORD_2:
473     case GL_MAP1_TEXTURE_COORD_3:
474     case GL_MAP1_TEXTURE_COORD_4:
475     case GL_MAP1_VERTEX_3:
476     case GL_MAP1_VERTEX_4:
477     case GL_MAP2_COLOR_4:
478     case GL_MAP2_INDEX:
479     case GL_MAP2_NORMAL:
480     case GL_MAP2_TEXTURE_COORD_1:
481     case GL_MAP2_TEXTURE_COORD_2:
482     case GL_MAP2_TEXTURE_COORD_3:
483     case GL_MAP2_TEXTURE_COORD_4:
484     case GL_MAP2_VERTEX_3:
485     case GL_MAP2_VERTEX_4:
486     case GL_MAP1_GRID_SEGMENTS:
487     case GL_TEXTURE_1D:
488     case GL_TEXTURE_2D:
489     case GL_POLYGON_OFFSET_UNITS:
490     case GL_CLIP_PLANE0:
491     case GL_CLIP_PLANE1:
492     case GL_CLIP_PLANE2:
493     case GL_CLIP_PLANE3:
494     case GL_CLIP_PLANE4:
495     case GL_CLIP_PLANE5:
496     case GL_LIGHT0:
497     case GL_LIGHT1:
498     case GL_LIGHT2:
499     case GL_LIGHT3:
500     case GL_LIGHT4:
501     case GL_LIGHT5:
502     case GL_LIGHT6:
503     case GL_LIGHT7:
504     case GL_BLEND_EQUATION:
505 /*      case GL_BLEND_EQUATION_EXT:*/
506     case GL_CONVOLUTION_1D:
507     case GL_CONVOLUTION_2D:
508     case GL_SEPARABLE_2D:
509     case GL_MAX_CONVOLUTION_WIDTH:
510 /*      case GL_MAX_CONVOLUTION_WIDTH_EXT:*/
511     case GL_MAX_CONVOLUTION_HEIGHT:
512 /*      case GL_MAX_CONVOLUTION_HEIGHT_EXT:*/
513     case GL_POST_CONVOLUTION_RED_SCALE:
514 /*      case GL_POST_CONVOLUTION_RED_SCALE_EXT:*/
515     case GL_POST_CONVOLUTION_GREEN_SCALE:
516 /*      case GL_POST_CONVOLUTION_GREEN_SCALE_EXT:*/
517     case GL_POST_CONVOLUTION_BLUE_SCALE:
518 /*      case GL_POST_CONVOLUTION_BLUE_SCALE_EXT:*/
519     case GL_POST_CONVOLUTION_ALPHA_SCALE:
520 /*      case GL_POST_CONVOLUTION_ALPHA_SCALE_EXT:*/
521     case GL_POST_CONVOLUTION_RED_BIAS:
522 /*      case GL_POST_CONVOLUTION_RED_BIAS_EXT:*/
523     case GL_POST_CONVOLUTION_GREEN_BIAS:
524 /*      case GL_POST_CONVOLUTION_GREEN_BIAS_EXT:*/
525     case GL_POST_CONVOLUTION_BLUE_BIAS:
526 /*      case GL_POST_CONVOLUTION_BLUE_BIAS_EXT:*/
527     case GL_POST_CONVOLUTION_ALPHA_BIAS:
528 /*      case GL_POST_CONVOLUTION_ALPHA_BIAS_EXT:*/
529     case GL_HISTOGRAM:
530     case GL_MINMAX:
531     case GL_POLYGON_OFFSET_FACTOR:
532     case GL_RESCALE_NORMAL:
533 /*      case GL_RESCALE_NORMAL_EXT:*/
534     case GL_TEXTURE_BINDING_1D:
535     case GL_TEXTURE_BINDING_2D:
536     case GL_TEXTURE_BINDING_3D:
537     case GL_PACK_SKIP_IMAGES:
538     case GL_PACK_IMAGE_HEIGHT:
539     case GL_UNPACK_SKIP_IMAGES:
540     case GL_UNPACK_IMAGE_HEIGHT:
541     case GL_TEXTURE_3D:
542     case GL_MAX_3D_TEXTURE_SIZE:
543     case GL_VERTEX_ARRAY:
544     case GL_NORMAL_ARRAY:
545     case GL_COLOR_ARRAY:
546     case GL_INDEX_ARRAY:
547     case GL_TEXTURE_COORD_ARRAY:
548     case GL_EDGE_FLAG_ARRAY:
549     case GL_VERTEX_ARRAY_SIZE:
550     case GL_VERTEX_ARRAY_TYPE:
551     case GL_VERTEX_ARRAY_STRIDE:
552     case GL_NORMAL_ARRAY_TYPE:
553     case GL_NORMAL_ARRAY_STRIDE:
554     case GL_COLOR_ARRAY_SIZE:
555     case GL_COLOR_ARRAY_TYPE:
556     case GL_COLOR_ARRAY_STRIDE:
557     case GL_INDEX_ARRAY_TYPE:
558     case GL_INDEX_ARRAY_STRIDE:
559     case GL_TEXTURE_COORD_ARRAY_SIZE:
560     case GL_TEXTURE_COORD_ARRAY_TYPE:
561     case GL_TEXTURE_COORD_ARRAY_STRIDE:
562     case GL_EDGE_FLAG_ARRAY_STRIDE:
563     case GL_MULTISAMPLE:
564 /*      case GL_MULTISAMPLE_ARB:*/
565     case GL_SAMPLE_ALPHA_TO_COVERAGE:
566 /*      case GL_SAMPLE_ALPHA_TO_COVERAGE_ARB:*/
567     case GL_SAMPLE_ALPHA_TO_ONE:
568 /*      case GL_SAMPLE_ALPHA_TO_ONE_ARB:*/
569     case GL_SAMPLE_COVERAGE:
570 /*      case GL_SAMPLE_COVERAGE_ARB:*/
571     case GL_SAMPLE_BUFFERS:
572 /*      case GL_SAMPLE_BUFFERS_ARB:*/
573     case GL_SAMPLES:
574 /*      case GL_SAMPLES_ARB:*/
575     case GL_SAMPLE_COVERAGE_VALUE:
576 /*      case GL_SAMPLE_COVERAGE_VALUE_ARB:*/
577     case GL_SAMPLE_COVERAGE_INVERT:
578 /*      case GL_SAMPLE_COVERAGE_INVERT_ARB:*/
579     case GL_COLOR_MATRIX_STACK_DEPTH:
580     case GL_MAX_COLOR_MATRIX_STACK_DEPTH:
581     case GL_POST_COLOR_MATRIX_RED_SCALE:
582     case GL_POST_COLOR_MATRIX_GREEN_SCALE:
583     case GL_POST_COLOR_MATRIX_BLUE_SCALE:
584     case GL_POST_COLOR_MATRIX_ALPHA_SCALE:
585     case GL_POST_COLOR_MATRIX_RED_BIAS:
586     case GL_POST_COLOR_MATRIX_GREEN_BIAS:
587     case GL_POST_COLOR_MATRIX_BLUE_BIAS:
588     case GL_POST_COLOR_MATRIX_ALPHA_BIAS:
589     case GL_BLEND_DST_RGB:
590     case GL_BLEND_SRC_RGB:
591     case GL_BLEND_DST_ALPHA:
592     case GL_BLEND_SRC_ALPHA:
593     case GL_COLOR_TABLE:
594     case GL_POST_CONVOLUTION_COLOR_TABLE:
595     case GL_POST_COLOR_MATRIX_COLOR_TABLE:
596     case GL_MAX_ELEMENTS_VERTICES:
597     case GL_MAX_ELEMENTS_INDICES:
598     case GL_CLIP_VOLUME_CLIPPING_HINT_EXT:
599     case GL_POINT_SIZE_MIN:
600     case GL_POINT_SIZE_MAX:
601     case GL_POINT_FADE_THRESHOLD_SIZE:
602     case GL_OCCLUSION_TEST_HP:
603     case GL_OCCLUSION_TEST_RESULT_HP:
604     case GL_LIGHT_MODEL_COLOR_CONTROL:
605     case GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB:
606     case GL_RESET_NOTIFICATION_STRATEGY_ARB:
607     case GL_CURRENT_FOG_COORD:
608     case GL_FOG_COORDINATE_ARRAY_TYPE:
609     case GL_FOG_COORDINATE_ARRAY_STRIDE:
610     case GL_FOG_COORD_ARRAY:
611     case GL_COLOR_SUM_ARB:
612     case GL_SECONDARY_COLOR_ARRAY_SIZE:
613     case GL_SECONDARY_COLOR_ARRAY_TYPE:
614     case GL_SECONDARY_COLOR_ARRAY_STRIDE:
615     case GL_SECONDARY_COLOR_ARRAY:
616     case GL_ACTIVE_TEXTURE:
617 /*      case GL_ACTIVE_TEXTURE_ARB:*/
618     case GL_CLIENT_ACTIVE_TEXTURE:
619 /*      case GL_CLIENT_ACTIVE_TEXTURE_ARB:*/
620     case GL_MAX_TEXTURE_UNITS:
621 /*      case GL_MAX_TEXTURE_UNITS_ARB:*/
622     case GL_MAX_RENDERBUFFER_SIZE:
623 /*      case GL_MAX_RENDERBUFFER_SIZE_EXT:*/
624     case GL_TEXTURE_COMPRESSION_HINT:
625 /*      case GL_TEXTURE_COMPRESSION_HINT_ARB:*/
626     case GL_TEXTURE_RECTANGLE_ARB:
627 /*      case GL_TEXTURE_RECTANGLE_NV:*/
628     case GL_TEXTURE_BINDING_RECTANGLE_ARB:
629 /*      case GL_TEXTURE_BINDING_RECTANGLE_NV:*/
630     case GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB:
631 /*      case GL_MAX_RECTANGLE_TEXTURE_SIZE_NV:*/
632     case GL_MAX_TEXTURE_LOD_BIAS:
633     case GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT:
634     case GL_MAX_SHININESS_NV:
635     case GL_MAX_SPOT_EXPONENT_NV:
636     case GL_TEXTURE_CUBE_MAP:
637 /*      case GL_TEXTURE_CUBE_MAP_ARB:*/
638     case GL_TEXTURE_BINDING_CUBE_MAP:
639 /*      case GL_TEXTURE_BINDING_CUBE_MAP_ARB:*/
640     case GL_MAX_CUBE_MAP_TEXTURE_SIZE:
641 /*      case GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB:*/
642     case GL_MULTISAMPLE_FILTER_HINT_NV:
643     case GL_FOG_DISTANCE_MODE_NV:
644     case GL_VERTEX_PROGRAM_ARB:
645     case GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB:
646     case GL_MAX_PROGRAM_MATRICES_ARB:
647     case GL_CURRENT_MATRIX_STACK_DEPTH_ARB:
648     case GL_VERTEX_PROGRAM_POINT_SIZE_ARB:
649     case GL_VERTEX_PROGRAM_TWO_SIDE_ARB:
650     case GL_PROGRAM_ERROR_POSITION_ARB:
651     case GL_DEPTH_CLAMP:
652 /*      case GL_DEPTH_CLAMP_NV:*/
653     case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
654 /*      case GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB:*/
655     case GL_MAX_VERTEX_UNITS_ARB:
656     case GL_ACTIVE_VERTEX_UNITS_ARB:
657     case GL_WEIGHT_SUM_UNITY_ARB:
658     case GL_VERTEX_BLEND_ARB:
659     case GL_CURRENT_WEIGHT_ARB:
660     case GL_WEIGHT_ARRAY_TYPE_ARB:
661     case GL_WEIGHT_ARRAY_STRIDE_ARB:
662     case GL_WEIGHT_ARRAY_SIZE_ARB:
663     case GL_WEIGHT_ARRAY_ARB:
664     case GL_PACK_INVERT_MESA:
665     case GL_STENCIL_BACK_FUNC_ATI:
666     case GL_STENCIL_BACK_FAIL_ATI:
667     case GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI:
668     case GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI:
669     case GL_FRAGMENT_PROGRAM_ARB:
670     case GL_MAX_DRAW_BUFFERS_ARB:
671 /*      case GL_MAX_DRAW_BUFFERS_ATI:*/
672     case GL_DRAW_BUFFER0_ARB:
673 /*      case GL_DRAW_BUFFER0_ATI:*/
674     case GL_DRAW_BUFFER1_ARB:
675 /*      case GL_DRAW_BUFFER1_ATI:*/
676     case GL_DRAW_BUFFER2_ARB:
677 /*      case GL_DRAW_BUFFER2_ATI:*/
678     case GL_DRAW_BUFFER3_ARB:
679 /*      case GL_DRAW_BUFFER3_ATI:*/
680     case GL_DRAW_BUFFER4_ARB:
681 /*      case GL_DRAW_BUFFER4_ATI:*/
682     case GL_DRAW_BUFFER5_ARB:
683 /*      case GL_DRAW_BUFFER5_ATI:*/
684     case GL_DRAW_BUFFER6_ARB:
685 /*      case GL_DRAW_BUFFER6_ATI:*/
686     case GL_DRAW_BUFFER7_ARB:
687 /*      case GL_DRAW_BUFFER7_ATI:*/
688     case GL_DRAW_BUFFER8_ARB:
689 /*      case GL_DRAW_BUFFER8_ATI:*/
690     case GL_DRAW_BUFFER9_ARB:
691 /*      case GL_DRAW_BUFFER9_ATI:*/
692     case GL_DRAW_BUFFER10_ARB:
693 /*      case GL_DRAW_BUFFER10_ATI:*/
694     case GL_DRAW_BUFFER11_ARB:
695 /*      case GL_DRAW_BUFFER11_ATI:*/
696     case GL_DRAW_BUFFER12_ARB:
697 /*      case GL_DRAW_BUFFER12_ATI:*/
698     case GL_DRAW_BUFFER13_ARB:
699 /*      case GL_DRAW_BUFFER13_ATI:*/
700     case GL_DRAW_BUFFER14_ARB:
701 /*      case GL_DRAW_BUFFER14_ATI:*/
702     case GL_DRAW_BUFFER15_ARB:
703 /*      case GL_DRAW_BUFFER15_ATI:*/
704     case GL_BLEND_EQUATION_ALPHA_EXT:
705     case GL_MATRIX_PALETTE_ARB:
706     case GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB:
707     case GL_MAX_PALETTE_MATRICES_ARB:
708     case GL_CURRENT_PALETTE_MATRIX_ARB:
709     case GL_MATRIX_INDEX_ARRAY_ARB:
710     case GL_CURRENT_MATRIX_INDEX_ARB:
711     case GL_MATRIX_INDEX_ARRAY_SIZE_ARB:
712     case GL_MATRIX_INDEX_ARRAY_TYPE_ARB:
713     case GL_MATRIX_INDEX_ARRAY_STRIDE_ARB:
714     case GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT:
715     case GL_TEXTURE_CUBE_MAP_SEAMLESS:
716     case GL_POINT_SPRITE_ARB:
717 /*      case GL_POINT_SPRITE_NV:*/
718     case GL_POINT_SPRITE_R_MODE_NV:
719     case GL_MAX_VERTEX_ATTRIBS_ARB:
720     case GL_MAX_TEXTURE_COORDS_ARB:
721     case GL_MAX_TEXTURE_IMAGE_UNITS_ARB:
722     case GL_DEPTH_BOUNDS_TEST_EXT:
723     case GL_ARRAY_BUFFER_BINDING_ARB:
724     case GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB:
725     case GL_VERTEX_ARRAY_BUFFER_BINDING_ARB:
726     case GL_NORMAL_ARRAY_BUFFER_BINDING_ARB:
727     case GL_COLOR_ARRAY_BUFFER_BINDING_ARB:
728     case GL_INDEX_ARRAY_BUFFER_BINDING_ARB:
729     case GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB:
730     case GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB:
731     case GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB:
732     case GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB:
733     case GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB:
734     case GL_MAX_ARRAY_TEXTURE_LAYERS_EXT:
735     case GL_STENCIL_TEST_TWO_SIDE_EXT:
736     case GL_ACTIVE_STENCIL_FACE_EXT:
737     case GL_SAMPLER_BINDING:
738     case GL_TEXTURE_BINDING_1D_ARRAY_EXT:
739     case GL_TEXTURE_BINDING_2D_ARRAY_EXT:
740     case GL_FRAMEBUFFER_BINDING:
741 /*      case GL_DRAW_FRAMEBUFFER_BINDING_EXT:*/
742     case GL_RENDERBUFFER_BINDING:
743 /*      case GL_RENDERBUFFER_BINDING_EXT:*/
744     case GL_READ_FRAMEBUFFER_BINDING:
745 /*      case GL_READ_FRAMEBUFFER_BINDING_EXT:*/
746     case GL_MAX_COLOR_ATTACHMENTS:
747 /*      case GL_MAX_COLOR_ATTACHMENTS_EXT:*/
748     case GL_MAX_SAMPLES:
749 /*      case GL_MAX_SAMPLES_EXT:*/
750     case GL_MAX_SERVER_WAIT_TIMEOUT:
751     case GL_MAX_DEBUG_MESSAGE_LENGTH_ARB:
752     case GL_MAX_DEBUG_LOGGED_MESSAGES_ARB:
753     case GL_DEBUG_LOGGED_MESSAGES_ARB:
754     case GL_RASTER_POSITION_UNCLIPPED_IBM:
755         return 1;
756     case GL_SMOOTH_POINT_SIZE_RANGE:
757     case GL_LINE_WIDTH_RANGE:
758     case GL_POLYGON_MODE:
759     case GL_DEPTH_RANGE:
760     case GL_MAX_VIEWPORT_DIMS:
761     case GL_MAP1_GRID_DOMAIN:
762     case GL_MAP2_GRID_SEGMENTS:
763     case GL_ALIASED_POINT_SIZE_RANGE:
764     case GL_ALIASED_LINE_WIDTH_RANGE:
765     case GL_DEPTH_BOUNDS_EXT:
766         return 2;
767     case GL_CURRENT_NORMAL:
768     case GL_POINT_DISTANCE_ATTENUATION:
769         return 3;
770     case GL_CURRENT_COLOR:
771     case GL_CURRENT_TEXTURE_COORDS:
772     case GL_CURRENT_RASTER_COLOR:
773     case GL_CURRENT_RASTER_TEXTURE_COORDS:
774     case GL_CURRENT_RASTER_POSITION:
775     case GL_LIGHT_MODEL_AMBIENT:
776     case GL_FOG_COLOR:
777     case GL_ACCUM_CLEAR_VALUE:
778     case GL_VIEWPORT:
779     case GL_SCISSOR_BOX:
780     case GL_COLOR_CLEAR_VALUE:
781     case GL_COLOR_WRITEMASK:
782     case GL_MAP2_GRID_DOMAIN:
783     case GL_BLEND_COLOR:
784 /*      case GL_BLEND_COLOR_EXT:*/
785     case GL_CURRENT_SECONDARY_COLOR:
786         return 4;
787     case GL_MODELVIEW_MATRIX:
788     case GL_PROJECTION_MATRIX:
789     case GL_TEXTURE_MATRIX:
790     case GL_MODELVIEW0_ARB:
791     case GL_COLOR_MATRIX:
792     case GL_MODELVIEW1_ARB:
793     case GL_CURRENT_MATRIX_ARB:
794     case GL_MODELVIEW2_ARB:
795     case GL_MODELVIEW3_ARB:
796     case GL_MODELVIEW4_ARB:
797     case GL_MODELVIEW5_ARB:
798     case GL_MODELVIEW6_ARB:
799     case GL_MODELVIEW7_ARB:
800     case GL_MODELVIEW8_ARB:
801     case GL_MODELVIEW9_ARB:
802     case GL_MODELVIEW10_ARB:
803     case GL_MODELVIEW11_ARB:
804     case GL_MODELVIEW12_ARB:
805     case GL_MODELVIEW13_ARB:
806     case GL_MODELVIEW14_ARB:
807     case GL_MODELVIEW15_ARB:
808     case GL_MODELVIEW16_ARB:
809     case GL_MODELVIEW17_ARB:
810     case GL_MODELVIEW18_ARB:
811     case GL_MODELVIEW19_ARB:
812     case GL_MODELVIEW20_ARB:
813     case GL_MODELVIEW21_ARB:
814     case GL_MODELVIEW22_ARB:
815     case GL_MODELVIEW23_ARB:
816     case GL_MODELVIEW24_ARB:
817     case GL_MODELVIEW25_ARB:
818     case GL_MODELVIEW26_ARB:
819     case GL_MODELVIEW27_ARB:
820     case GL_MODELVIEW28_ARB:
821     case GL_MODELVIEW29_ARB:
822     case GL_MODELVIEW30_ARB:
823     case GL_MODELVIEW31_ARB:
824     case GL_TRANSPOSE_CURRENT_MATRIX_ARB:
825         return 16;
826     case GL_FOG_COORDINATE_SOURCE:
827     case GL_COMPRESSED_TEXTURE_FORMATS:
828     case GL_RGBA_INTEGER_MODE_EXT:
829         return __glGetBooleanv_variable_size(e);
830     default:
831         return 0;
832     }
833 }
834 
835 _X_INTERNAL PURE FASTCALL GLint
__glGetTexParameterfv_size(GLenum e)836 __glGetTexParameterfv_size(GLenum e)
837 {
838     switch (e) {
839     case GL_TEXTURE_MAG_FILTER:
840     case GL_TEXTURE_MIN_FILTER:
841     case GL_TEXTURE_WRAP_S:
842     case GL_TEXTURE_WRAP_T:
843     case GL_TEXTURE_PRIORITY:
844     case GL_TEXTURE_RESIDENT:
845     case GL_TEXTURE_WRAP_R:
846     case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB:
847 /*      case GL_SHADOW_AMBIENT_SGIX:*/
848     case GL_TEXTURE_MIN_LOD:
849     case GL_TEXTURE_MAX_LOD:
850     case GL_TEXTURE_BASE_LEVEL:
851     case GL_TEXTURE_MAX_LEVEL:
852     case GL_TEXTURE_CLIPMAP_FRAME_SGIX:
853     case GL_TEXTURE_LOD_BIAS_S_SGIX:
854     case GL_TEXTURE_LOD_BIAS_T_SGIX:
855     case GL_TEXTURE_LOD_BIAS_R_SGIX:
856     case GL_GENERATE_MIPMAP:
857 /*      case GL_GENERATE_MIPMAP_SGIS:*/
858     case GL_TEXTURE_COMPARE_SGIX:
859     case GL_TEXTURE_COMPARE_OPERATOR_SGIX:
860     case GL_TEXTURE_MAX_CLAMP_S_SGIX:
861     case GL_TEXTURE_MAX_CLAMP_T_SGIX:
862     case GL_TEXTURE_MAX_CLAMP_R_SGIX:
863     case GL_TEXTURE_MAX_ANISOTROPY_EXT:
864     case GL_TEXTURE_LOD_BIAS:
865 /*      case GL_TEXTURE_LOD_BIAS_EXT:*/
866     case GL_TEXTURE_RANGE_LENGTH_APPLE:
867     case GL_TEXTURE_STORAGE_HINT_APPLE:
868     case GL_DEPTH_TEXTURE_MODE:
869 /*      case GL_DEPTH_TEXTURE_MODE_ARB:*/
870     case GL_TEXTURE_COMPARE_MODE:
871 /*      case GL_TEXTURE_COMPARE_MODE_ARB:*/
872     case GL_TEXTURE_COMPARE_FUNC:
873 /*      case GL_TEXTURE_COMPARE_FUNC_ARB:*/
874     case GL_TEXTURE_UNSIGNED_REMAP_MODE_NV:
875         return 1;
876     case GL_TEXTURE_CLIPMAP_CENTER_SGIX:
877     case GL_TEXTURE_CLIPMAP_OFFSET_SGIX:
878         return 2;
879     case GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX:
880         return 3;
881     case GL_TEXTURE_BORDER_COLOR:
882     case GL_POST_TEXTURE_FILTER_BIAS_SGIX:
883     case GL_POST_TEXTURE_FILTER_SCALE_SGIX:
884         return 4;
885     default:
886         return 0;
887     }
888 }
889 
890 _X_INTERNAL PURE FASTCALL GLint
__glGetTexLevelParameterfv_size(GLenum e)891 __glGetTexLevelParameterfv_size(GLenum e)
892 {
893     switch (e) {
894     case GL_TEXTURE_WIDTH:
895     case GL_TEXTURE_HEIGHT:
896     case GL_TEXTURE_COMPONENTS:
897     case GL_TEXTURE_BORDER:
898     case GL_TEXTURE_RED_SIZE:
899 /*      case GL_TEXTURE_RED_SIZE_EXT:*/
900     case GL_TEXTURE_GREEN_SIZE:
901 /*      case GL_TEXTURE_GREEN_SIZE_EXT:*/
902     case GL_TEXTURE_BLUE_SIZE:
903 /*      case GL_TEXTURE_BLUE_SIZE_EXT:*/
904     case GL_TEXTURE_ALPHA_SIZE:
905 /*      case GL_TEXTURE_ALPHA_SIZE_EXT:*/
906     case GL_TEXTURE_LUMINANCE_SIZE:
907 /*      case GL_TEXTURE_LUMINANCE_SIZE_EXT:*/
908     case GL_TEXTURE_INTENSITY_SIZE:
909 /*      case GL_TEXTURE_INTENSITY_SIZE_EXT:*/
910     case GL_TEXTURE_DEPTH:
911     case GL_TEXTURE_INDEX_SIZE_EXT:
912     case GL_TEXTURE_COMPRESSED_IMAGE_SIZE:
913 /*      case GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB:*/
914     case GL_TEXTURE_COMPRESSED:
915 /*      case GL_TEXTURE_COMPRESSED_ARB:*/
916     case GL_TEXTURE_DEPTH_SIZE:
917 /*      case GL_TEXTURE_DEPTH_SIZE_ARB:*/
918     case GL_TEXTURE_STENCIL_SIZE:
919 /*      case GL_TEXTURE_STENCIL_SIZE_EXT:*/
920         return 1;
921     default:
922         return 0;
923     }
924 }
925 
926 _X_INTERNAL PURE FASTCALL GLint
__glGetPointerv_size(GLenum e)927 __glGetPointerv_size(GLenum e)
928 {
929     switch (e) {
930     case GL_DEBUG_CALLBACK_FUNCTION_ARB:
931     case GL_DEBUG_CALLBACK_USER_PARAM_ARB:
932         return 1;
933     default:
934         return 0;
935     }
936 }
937 
938 _X_INTERNAL PURE FASTCALL GLint
__glColorTableParameterfv_size(GLenum e)939 __glColorTableParameterfv_size(GLenum e)
940 {
941     switch (e) {
942     case GL_COLOR_TABLE_SCALE:
943     case GL_COLOR_TABLE_BIAS:
944         return 4;
945     default:
946         return 0;
947     }
948 }
949 
950 _X_INTERNAL PURE FASTCALL GLint
__glGetColorTableParameterfv_size(GLenum e)951 __glGetColorTableParameterfv_size(GLenum e)
952 {
953     switch (e) {
954     case GL_COLOR_TABLE_FORMAT:
955 /*      case GL_COLOR_TABLE_FORMAT_EXT:*/
956     case GL_COLOR_TABLE_WIDTH:
957 /*      case GL_COLOR_TABLE_WIDTH_EXT:*/
958     case GL_COLOR_TABLE_RED_SIZE:
959 /*      case GL_COLOR_TABLE_RED_SIZE_EXT:*/
960     case GL_COLOR_TABLE_GREEN_SIZE:
961 /*      case GL_COLOR_TABLE_GREEN_SIZE_EXT:*/
962     case GL_COLOR_TABLE_BLUE_SIZE:
963 /*      case GL_COLOR_TABLE_BLUE_SIZE_EXT:*/
964     case GL_COLOR_TABLE_ALPHA_SIZE:
965 /*      case GL_COLOR_TABLE_ALPHA_SIZE_EXT:*/
966     case GL_COLOR_TABLE_LUMINANCE_SIZE:
967 /*      case GL_COLOR_TABLE_LUMINANCE_SIZE_EXT:*/
968     case GL_COLOR_TABLE_INTENSITY_SIZE:
969 /*      case GL_COLOR_TABLE_INTENSITY_SIZE_EXT:*/
970         return 1;
971     case GL_COLOR_TABLE_SCALE:
972     case GL_COLOR_TABLE_BIAS:
973         return 4;
974     default:
975         return 0;
976     }
977 }
978 
979 _X_INTERNAL PURE FASTCALL GLint
__glConvolutionParameterfv_size(GLenum e)980 __glConvolutionParameterfv_size(GLenum e)
981 {
982     switch (e) {
983     case GL_CONVOLUTION_BORDER_MODE:
984 /*      case GL_CONVOLUTION_BORDER_MODE_EXT:*/
985         return 1;
986     case GL_CONVOLUTION_FILTER_SCALE:
987 /*      case GL_CONVOLUTION_FILTER_SCALE_EXT:*/
988     case GL_CONVOLUTION_FILTER_BIAS:
989 /*      case GL_CONVOLUTION_FILTER_BIAS_EXT:*/
990     case GL_CONVOLUTION_BORDER_COLOR:
991 /*      case GL_CONVOLUTION_BORDER_COLOR_HP:*/
992         return 4;
993     default:
994         return 0;
995     }
996 }
997 
998 _X_INTERNAL PURE FASTCALL GLint
__glGetConvolutionParameterfv_size(GLenum e)999 __glGetConvolutionParameterfv_size(GLenum e)
1000 {
1001     switch (e) {
1002     case GL_CONVOLUTION_BORDER_MODE:
1003 /*      case GL_CONVOLUTION_BORDER_MODE_EXT:*/
1004     case GL_CONVOLUTION_FORMAT:
1005 /*      case GL_CONVOLUTION_FORMAT_EXT:*/
1006     case GL_CONVOLUTION_WIDTH:
1007 /*      case GL_CONVOLUTION_WIDTH_EXT:*/
1008     case GL_CONVOLUTION_HEIGHT:
1009 /*      case GL_CONVOLUTION_HEIGHT_EXT:*/
1010     case GL_MAX_CONVOLUTION_WIDTH:
1011 /*      case GL_MAX_CONVOLUTION_WIDTH_EXT:*/
1012     case GL_MAX_CONVOLUTION_HEIGHT:
1013 /*      case GL_MAX_CONVOLUTION_HEIGHT_EXT:*/
1014         return 1;
1015     case GL_CONVOLUTION_FILTER_SCALE:
1016 /*      case GL_CONVOLUTION_FILTER_SCALE_EXT:*/
1017     case GL_CONVOLUTION_FILTER_BIAS:
1018 /*      case GL_CONVOLUTION_FILTER_BIAS_EXT:*/
1019     case GL_CONVOLUTION_BORDER_COLOR:
1020 /*      case GL_CONVOLUTION_BORDER_COLOR_HP:*/
1021         return 4;
1022     default:
1023         return 0;
1024     }
1025 }
1026 
1027 _X_INTERNAL PURE FASTCALL GLint
__glGetHistogramParameterfv_size(GLenum e)1028 __glGetHistogramParameterfv_size(GLenum e)
1029 {
1030     switch (e) {
1031     case GL_HISTOGRAM_WIDTH:
1032     case GL_HISTOGRAM_FORMAT:
1033     case GL_HISTOGRAM_RED_SIZE:
1034     case GL_HISTOGRAM_GREEN_SIZE:
1035     case GL_HISTOGRAM_BLUE_SIZE:
1036     case GL_HISTOGRAM_ALPHA_SIZE:
1037     case GL_HISTOGRAM_LUMINANCE_SIZE:
1038     case GL_HISTOGRAM_SINK:
1039         return 1;
1040     default:
1041         return 0;
1042     }
1043 }
1044 
1045 _X_INTERNAL PURE FASTCALL GLint
__glGetMinmaxParameterfv_size(GLenum e)1046 __glGetMinmaxParameterfv_size(GLenum e)
1047 {
1048     switch (e) {
1049     case GL_MINMAX_FORMAT:
1050     case GL_MINMAX_SINK:
1051         return 1;
1052     default:
1053         return 0;
1054     }
1055 }
1056 
1057 _X_INTERNAL PURE FASTCALL GLint
__glPointParameterfv_size(GLenum e)1058 __glPointParameterfv_size(GLenum e)
1059 {
1060     switch (e) {
1061     case GL_POINT_SIZE_MIN:
1062 /*      case GL_POINT_SIZE_MIN_ARB:*/
1063 /*      case GL_POINT_SIZE_MIN_SGIS:*/
1064     case GL_POINT_SIZE_MAX:
1065 /*      case GL_POINT_SIZE_MAX_ARB:*/
1066 /*      case GL_POINT_SIZE_MAX_SGIS:*/
1067     case GL_POINT_FADE_THRESHOLD_SIZE:
1068 /*      case GL_POINT_FADE_THRESHOLD_SIZE_ARB:*/
1069 /*      case GL_POINT_FADE_THRESHOLD_SIZE_SGIS:*/
1070     case GL_POINT_SPRITE_R_MODE_NV:
1071     case GL_POINT_SPRITE_COORD_ORIGIN:
1072         return 1;
1073     case GL_POINT_DISTANCE_ATTENUATION:
1074 /*      case GL_POINT_DISTANCE_ATTENUATION_ARB:*/
1075 /*      case GL_POINT_DISTANCE_ATTENUATION_SGIS:*/
1076         return 3;
1077     default:
1078         return 0;
1079     }
1080 }
1081 
1082 _X_INTERNAL PURE FASTCALL GLint
__glGetQueryObjectiv_size(GLenum e)1083 __glGetQueryObjectiv_size(GLenum e)
1084 {
1085     switch (e) {
1086     case GL_QUERY_RESULT_ARB:
1087     case GL_QUERY_RESULT_AVAILABLE_ARB:
1088         return 1;
1089     default:
1090         return 0;
1091     }
1092 }
1093 
1094 _X_INTERNAL PURE FASTCALL GLint
__glGetQueryiv_size(GLenum e)1095 __glGetQueryiv_size(GLenum e)
1096 {
1097     switch (e) {
1098     case GL_QUERY_COUNTER_BITS_ARB:
1099     case GL_CURRENT_QUERY_ARB:
1100     case GL_ANY_SAMPLES_PASSED:
1101         return 1;
1102     default:
1103         return 0;
1104     }
1105 }
1106 
1107 _X_INTERNAL PURE FASTCALL GLint
__glGetProgramivARB_size(GLenum e)1108 __glGetProgramivARB_size(GLenum e)
1109 {
1110     switch (e) {
1111     case GL_PROGRAM_LENGTH_ARB:
1112     case GL_PROGRAM_BINDING_ARB:
1113     case GL_PROGRAM_ALU_INSTRUCTIONS_ARB:
1114     case GL_PROGRAM_TEX_INSTRUCTIONS_ARB:
1115     case GL_PROGRAM_TEX_INDIRECTIONS_ARB:
1116     case GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB:
1117     case GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB:
1118     case GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB:
1119     case GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB:
1120     case GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB:
1121     case GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB:
1122     case GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB:
1123     case GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB:
1124     case GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB:
1125     case GL_PROGRAM_FORMAT_ARB:
1126     case GL_PROGRAM_INSTRUCTIONS_ARB:
1127     case GL_MAX_PROGRAM_INSTRUCTIONS_ARB:
1128     case GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB:
1129     case GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB:
1130     case GL_PROGRAM_TEMPORARIES_ARB:
1131     case GL_MAX_PROGRAM_TEMPORARIES_ARB:
1132     case GL_PROGRAM_NATIVE_TEMPORARIES_ARB:
1133     case GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB:
1134     case GL_PROGRAM_PARAMETERS_ARB:
1135     case GL_MAX_PROGRAM_PARAMETERS_ARB:
1136     case GL_PROGRAM_NATIVE_PARAMETERS_ARB:
1137     case GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB:
1138     case GL_PROGRAM_ATTRIBS_ARB:
1139     case GL_MAX_PROGRAM_ATTRIBS_ARB:
1140     case GL_PROGRAM_NATIVE_ATTRIBS_ARB:
1141     case GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB:
1142     case GL_PROGRAM_ADDRESS_REGISTERS_ARB:
1143     case GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB:
1144     case GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB:
1145     case GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB:
1146     case GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB:
1147     case GL_MAX_PROGRAM_ENV_PARAMETERS_ARB:
1148     case GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB:
1149     case GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV:
1150     case GL_MAX_PROGRAM_CALL_DEPTH_NV:
1151     case GL_MAX_PROGRAM_IF_DEPTH_NV:
1152     case GL_MAX_PROGRAM_LOOP_DEPTH_NV:
1153     case GL_MAX_PROGRAM_LOOP_COUNT_NV:
1154         return 1;
1155     default:
1156         return 0;
1157     }
1158 }
1159 
1160 _X_INTERNAL PURE FASTCALL GLint
__glGetFramebufferAttachmentParameteriv_size(GLenum e)1161 __glGetFramebufferAttachmentParameteriv_size(GLenum e)
1162 {
1163     switch (e) {
1164     case GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING:
1165     case GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE:
1166     case GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE:
1167     case GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:
1168     case GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:
1169     case GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:
1170     case GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:
1171     case GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:
1172     case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:
1173 /*      case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT:*/
1174     case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:
1175 /*      case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT:*/
1176     case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:
1177 /*      case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT:*/
1178     case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:
1179 /*      case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT:*/
1180     case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT:
1181         return 1;
1182     default:
1183         return 0;
1184     }
1185 }
1186 
1187 ALIAS(Fogiv, Fogfv)
1188     ALIAS(Lightiv, Lightfv)
1189     ALIAS(LightModeliv, LightModelfv)
1190     ALIAS(Materialiv, Materialfv)
1191     ALIAS(TexParameteriv, TexParameterfv)
1192     ALIAS(TexEnviv, TexEnvfv)
1193     ALIAS(TexGenfv, TexGendv)
1194     ALIAS(TexGeniv, TexGendv)
1195     ALIAS(Map1f, Map1d)
1196     ALIAS(Map2f, Map2d)
1197     ALIAS(GetDoublev, GetBooleanv)
1198     ALIAS(GetFloatv, GetBooleanv)
1199     ALIAS(GetIntegerv, GetBooleanv)
1200     ALIAS(GetLightfv, Lightfv)
1201     ALIAS(GetLightiv, Lightfv)
1202     ALIAS(GetMaterialfv, Materialfv)
1203     ALIAS(GetMaterialiv, Materialfv)
1204     ALIAS(GetTexEnvfv, TexEnvfv)
1205     ALIAS(GetTexEnviv, TexEnvfv)
1206     ALIAS(GetTexGendv, TexGendv)
1207     ALIAS(GetTexGenfv, TexGendv)
1208     ALIAS(GetTexGeniv, TexGendv)
1209     ALIAS(GetTexParameteriv, GetTexParameterfv)
1210     ALIAS(GetTexLevelParameteriv, GetTexLevelParameterfv)
1211     ALIAS(ColorTableParameteriv, ColorTableParameterfv)
1212     ALIAS(GetColorTableParameteriv, GetColorTableParameterfv)
1213     ALIAS(ConvolutionParameteriv, ConvolutionParameterfv)
1214     ALIAS(GetConvolutionParameteriv, GetConvolutionParameterfv)
1215     ALIAS(GetHistogramParameteriv, GetHistogramParameterfv)
1216     ALIAS(GetMinmaxParameteriv, GetMinmaxParameterfv)
1217     ALIAS(PointParameteriv, PointParameterfv)
1218     ALIAS(GetQueryObjectuiv, GetQueryObjectiv)
1219 #undef PURE
1220 #undef FASTCALL
1221