1 /**************************************************************************
3 * Copyright 2010 VMware, Inc.
4 * Copyright 2004 IBM Corporation
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:
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
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
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
27 **************************************************************************/
29 #ifndef _GL_HELPERS_HPP_
30 #define _GL_HELPERS_HPP_
35 #include "glimports.hpp"
39 __glCallLists_size(GLsizei n, GLenum type)
44 case GL_UNSIGNED_BYTE:
48 case GL_UNSIGNED_SHORT:
71 __glFogfv_size(GLenum pname)
79 case GL_FOG_OFFSET_VALUE_SGIX:
80 case GL_FOG_DISTANCE_MODE_NV:
90 #define __glFogiv_size __glFogfv_size
93 __glLightfv_size(GLenum pname)
96 case GL_SPOT_EXPONENT:
98 case GL_CONSTANT_ATTENUATION:
99 case GL_LINEAR_ATTENUATION:
100 case GL_QUADRATIC_ATTENUATION:
102 case GL_SPOT_DIRECTION:
115 #define __glLightiv_size __glLightfv_size
118 __glLightModelfv_size(GLenum pname)
121 case GL_LIGHT_MODEL_LOCAL_VIEWER:
122 case GL_LIGHT_MODEL_TWO_SIDE:
123 case GL_LIGHT_MODEL_COLOR_CONTROL:
124 /* case GL_LIGHT_MODEL_COLOR_CONTROL_EXT:*/
126 case GL_LIGHT_MODEL_AMBIENT:
134 #define __glLightModeliv_size __glLightModelfv_size
137 __glMaterialfv_size(GLenum pname)
142 case GL_COLOR_INDEXES:
148 case GL_AMBIENT_AND_DIFFUSE:
156 #define __glMaterialiv_size __glMaterialfv_size
159 __glTexParameterfv_size(GLenum pname)
162 case GL_TEXTURE_MAG_FILTER:
163 case GL_TEXTURE_MIN_FILTER:
164 case GL_TEXTURE_WRAP_S:
165 case GL_TEXTURE_WRAP_T:
166 case GL_TEXTURE_PRIORITY:
167 case GL_TEXTURE_WRAP_R:
168 case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB:
169 /* case GL_SHADOW_AMBIENT_SGIX:*/
170 case GL_TEXTURE_MIN_LOD:
171 case GL_TEXTURE_MAX_LOD:
172 case GL_TEXTURE_BASE_LEVEL:
173 case GL_TEXTURE_MAX_LEVEL:
174 case GL_TEXTURE_CLIPMAP_FRAME_SGIX:
175 case GL_TEXTURE_LOD_BIAS_S_SGIX:
176 case GL_TEXTURE_LOD_BIAS_T_SGIX:
177 case GL_TEXTURE_LOD_BIAS_R_SGIX:
178 case GL_GENERATE_MIPMAP:
179 /* case GL_GENERATE_MIPMAP_SGIS:*/
180 case GL_TEXTURE_COMPARE_SGIX:
181 case GL_TEXTURE_COMPARE_OPERATOR_SGIX:
182 case GL_TEXTURE_MAX_CLAMP_S_SGIX:
183 case GL_TEXTURE_MAX_CLAMP_T_SGIX:
184 case GL_TEXTURE_MAX_CLAMP_R_SGIX:
185 case GL_TEXTURE_MAX_ANISOTROPY_EXT:
186 case GL_TEXTURE_LOD_BIAS:
187 /* case GL_TEXTURE_LOD_BIAS_EXT:*/
188 case GL_TEXTURE_STORAGE_HINT_APPLE:
189 case GL_STORAGE_PRIVATE_APPLE:
190 case GL_STORAGE_CACHED_APPLE:
191 case GL_STORAGE_SHARED_APPLE:
192 case GL_DEPTH_TEXTURE_MODE:
193 /* case GL_DEPTH_TEXTURE_MODE_ARB:*/
194 case GL_TEXTURE_COMPARE_MODE:
195 /* case GL_TEXTURE_COMPARE_MODE_ARB:*/
196 case GL_TEXTURE_COMPARE_FUNC:
197 /* case GL_TEXTURE_COMPARE_FUNC_ARB:*/
198 case GL_TEXTURE_UNSIGNED_REMAP_MODE_NV:
200 case GL_TEXTURE_CLIPMAP_CENTER_SGIX:
201 case GL_TEXTURE_CLIPMAP_OFFSET_SGIX:
203 case GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX:
205 case GL_TEXTURE_BORDER_COLOR:
206 case GL_POST_TEXTURE_FILTER_BIAS_SGIX:
207 case GL_POST_TEXTURE_FILTER_SCALE_SGIX:
215 #define __glTexParameteriv_size __glTexParameterfv_size
218 __glTexEnvfv_size(GLenum pname)
222 case GL_TEXTURE_ENV_MODE:
223 case GL_TEXTURE_LOD_BIAS:
225 case GL_COMBINE_ALPHA:
230 case GL_SOURCE3_RGB_NV:
231 case GL_SOURCE0_ALPHA:
232 case GL_SOURCE1_ALPHA:
233 case GL_SOURCE2_ALPHA:
234 case GL_SOURCE3_ALPHA_NV:
235 case GL_OPERAND0_RGB:
236 case GL_OPERAND1_RGB:
237 case GL_OPERAND2_RGB:
238 case GL_OPERAND3_RGB_NV:
239 case GL_OPERAND0_ALPHA:
240 case GL_OPERAND1_ALPHA:
241 case GL_OPERAND2_ALPHA:
242 case GL_OPERAND3_ALPHA_NV:
243 case GL_BUMP_TARGET_ATI:
244 case GL_COORD_REPLACE_ARB:
245 /* case GL_COORD_REPLACE_NV:*/
247 case GL_TEXTURE_ENV_COLOR:
255 #define __glTexEnviv_size __glTexEnvfv_size
258 __glTexGendv_size(GLenum pname)
261 case GL_TEXTURE_GEN_MODE:
263 case GL_OBJECT_PLANE:
272 #define __glTexGenfv_size __glTexGendv_size
274 #define __glTexGeniv_size __glTexGendv_size
277 __glMap1d_size(GLenum pname)
281 case GL_MAP1_TEXTURE_COORD_1:
283 case GL_MAP1_TEXTURE_COORD_2:
286 case GL_MAP1_TEXTURE_COORD_3:
287 case GL_MAP1_VERTEX_3:
289 case GL_MAP1_COLOR_4:
290 case GL_MAP1_TEXTURE_COORD_4:
291 case GL_MAP1_VERTEX_4:
299 #define __glMap1f_size __glMap1d_size
302 __glMap2d_size(GLenum pname)
306 case GL_MAP2_TEXTURE_COORD_1:
308 case GL_MAP2_TEXTURE_COORD_2:
311 case GL_MAP2_TEXTURE_COORD_3:
312 case GL_MAP2_VERTEX_3:
314 case GL_MAP2_COLOR_4:
315 case GL_MAP2_TEXTURE_COORD_4:
316 case GL_MAP2_VERTEX_4:
324 #define __glMap2f_size __glMap2d_size
327 __glGetBooleanv_size(GLenum pname)
330 case GL_CURRENT_INDEX:
331 case GL_CURRENT_RASTER_INDEX:
332 case GL_CURRENT_RASTER_POSITION_VALID:
333 case GL_CURRENT_RASTER_DISTANCE:
334 case GL_POINT_SMOOTH:
336 case GL_SMOOTH_POINT_SIZE_GRANULARITY:
339 case GL_LINE_WIDTH_GRANULARITY:
340 case GL_LINE_STIPPLE:
341 case GL_LINE_STIPPLE_PATTERN:
342 case GL_LINE_STIPPLE_REPEAT:
344 case GL_MAX_LIST_NESTING:
347 case GL_POLYGON_SMOOTH:
348 case GL_POLYGON_STIPPLE:
351 case GL_CULL_FACE_MODE:
354 case GL_LIGHT_MODEL_LOCAL_VIEWER:
355 case GL_LIGHT_MODEL_TWO_SIDE:
357 case GL_COLOR_MATERIAL_FACE:
358 case GL_COLOR_MATERIAL_PARAMETER:
359 case GL_COLOR_MATERIAL:
367 case GL_DEPTH_WRITEMASK:
368 case GL_DEPTH_CLEAR_VALUE:
370 case GL_STENCIL_TEST:
371 case GL_STENCIL_CLEAR_VALUE:
372 case GL_STENCIL_FUNC:
373 case GL_STENCIL_VALUE_MASK:
374 case GL_STENCIL_FAIL:
375 case GL_STENCIL_PASS_DEPTH_FAIL:
376 case GL_STENCIL_PASS_DEPTH_PASS:
378 case GL_STENCIL_WRITEMASK:
381 case GL_MODELVIEW_STACK_DEPTH:
382 case GL_PROJECTION_STACK_DEPTH:
383 case GL_TEXTURE_STACK_DEPTH:
384 case GL_ATTRIB_STACK_DEPTH:
385 case GL_CLIENT_ATTRIB_STACK_DEPTH:
387 case GL_ALPHA_TEST_FUNC:
388 case GL_ALPHA_TEST_REF:
393 case GL_LOGIC_OP_MODE:
398 case GL_SCISSOR_TEST:
399 case GL_INDEX_CLEAR_VALUE:
400 case GL_INDEX_WRITEMASK:
403 case GL_DOUBLEBUFFER:
406 case GL_PERSPECTIVE_CORRECTION_HINT:
407 case GL_POINT_SMOOTH_HINT:
408 case GL_LINE_SMOOTH_HINT:
409 case GL_POLYGON_SMOOTH_HINT:
411 case GL_TEXTURE_GEN_S:
412 case GL_TEXTURE_GEN_T:
413 case GL_TEXTURE_GEN_R:
414 case GL_TEXTURE_GEN_Q:
415 case GL_PIXEL_MAP_I_TO_I:
416 case GL_PIXEL_MAP_I_TO_I_SIZE:
417 case GL_PIXEL_MAP_S_TO_S_SIZE:
418 case GL_PIXEL_MAP_I_TO_R_SIZE:
419 case GL_PIXEL_MAP_I_TO_G_SIZE:
420 case GL_PIXEL_MAP_I_TO_B_SIZE:
421 case GL_PIXEL_MAP_I_TO_A_SIZE:
422 case GL_PIXEL_MAP_R_TO_R_SIZE:
423 case GL_PIXEL_MAP_G_TO_G_SIZE:
424 case GL_PIXEL_MAP_B_TO_B_SIZE:
425 case GL_PIXEL_MAP_A_TO_A_SIZE:
426 case GL_UNPACK_SWAP_BYTES:
427 case GL_UNPACK_LSB_FIRST:
428 case GL_UNPACK_ROW_LENGTH:
429 case GL_UNPACK_SKIP_ROWS:
430 case GL_UNPACK_SKIP_PIXELS:
431 case GL_UNPACK_ALIGNMENT:
432 case GL_PACK_SWAP_BYTES:
433 case GL_PACK_LSB_FIRST:
434 case GL_PACK_ROW_LENGTH:
435 case GL_PACK_SKIP_ROWS:
436 case GL_PACK_SKIP_PIXELS:
437 case GL_PACK_ALIGNMENT:
441 case GL_INDEX_OFFSET:
454 case GL_MAX_EVAL_ORDER:
456 case GL_MAX_CLIP_PLANES:
457 case GL_MAX_TEXTURE_SIZE:
458 case GL_MAX_PIXEL_MAP_TABLE:
459 case GL_MAX_ATTRIB_STACK_DEPTH:
460 case GL_MAX_MODELVIEW_STACK_DEPTH:
461 case GL_MAX_NAME_STACK_DEPTH:
462 case GL_MAX_PROJECTION_STACK_DEPTH:
463 case GL_MAX_TEXTURE_STACK_DEPTH:
464 case GL_MAX_CLIENT_ATTRIB_STACK_DEPTH:
465 case GL_SUBPIXEL_BITS:
472 case GL_STENCIL_BITS:
473 case GL_ACCUM_RED_BITS:
474 case GL_ACCUM_GREEN_BITS:
475 case GL_ACCUM_BLUE_BITS:
476 case GL_ACCUM_ALPHA_BITS:
477 case GL_NAME_STACK_DEPTH:
479 case GL_MAP1_COLOR_4:
482 case GL_MAP1_TEXTURE_COORD_1:
483 case GL_MAP1_TEXTURE_COORD_2:
484 case GL_MAP1_TEXTURE_COORD_3:
485 case GL_MAP1_TEXTURE_COORD_4:
486 case GL_MAP1_VERTEX_3:
487 case GL_MAP1_VERTEX_4:
488 case GL_MAP2_COLOR_4:
491 case GL_MAP2_TEXTURE_COORD_1:
492 case GL_MAP2_TEXTURE_COORD_2:
493 case GL_MAP2_TEXTURE_COORD_3:
494 case GL_MAP2_TEXTURE_COORD_4:
495 case GL_MAP2_VERTEX_3:
496 case GL_MAP2_VERTEX_4:
497 case GL_MAP1_GRID_SEGMENTS:
500 case GL_POLYGON_OFFSET_UNITS:
515 case GL_BLEND_EQUATION:
516 /* case GL_BLEND_EQUATION_EXT:*/
517 case GL_CONVOLUTION_1D:
518 case GL_CONVOLUTION_2D:
519 case GL_SEPARABLE_2D:
520 case GL_MAX_CONVOLUTION_WIDTH:
521 /* case GL_MAX_CONVOLUTION_WIDTH_EXT:*/
522 case GL_MAX_CONVOLUTION_HEIGHT:
523 /* case GL_MAX_CONVOLUTION_HEIGHT_EXT:*/
524 case GL_POST_CONVOLUTION_RED_SCALE:
525 /* case GL_POST_CONVOLUTION_RED_SCALE_EXT:*/
526 case GL_POST_CONVOLUTION_GREEN_SCALE:
527 /* case GL_POST_CONVOLUTION_GREEN_SCALE_EXT:*/
528 case GL_POST_CONVOLUTION_BLUE_SCALE:
529 /* case GL_POST_CONVOLUTION_BLUE_SCALE_EXT:*/
530 case GL_POST_CONVOLUTION_ALPHA_SCALE:
531 /* case GL_POST_CONVOLUTION_ALPHA_SCALE_EXT:*/
532 case GL_POST_CONVOLUTION_RED_BIAS:
533 /* case GL_POST_CONVOLUTION_RED_BIAS_EXT:*/
534 case GL_POST_CONVOLUTION_GREEN_BIAS:
535 /* case GL_POST_CONVOLUTION_GREEN_BIAS_EXT:*/
536 case GL_POST_CONVOLUTION_BLUE_BIAS:
537 /* case GL_POST_CONVOLUTION_BLUE_BIAS_EXT:*/
538 case GL_POST_CONVOLUTION_ALPHA_BIAS:
539 /* case GL_POST_CONVOLUTION_ALPHA_BIAS_EXT:*/
542 case GL_POLYGON_OFFSET_FACTOR:
543 case GL_RESCALE_NORMAL:
544 /* case GL_RESCALE_NORMAL_EXT:*/
545 case GL_TEXTURE_BINDING_1D:
546 case GL_TEXTURE_BINDING_2D:
547 case GL_TEXTURE_BINDING_3D:
548 case GL_PACK_SKIP_IMAGES:
549 case GL_PACK_IMAGE_HEIGHT:
550 case GL_UNPACK_SKIP_IMAGES:
551 case GL_UNPACK_IMAGE_HEIGHT:
553 case GL_MAX_3D_TEXTURE_SIZE:
554 case GL_VERTEX_ARRAY:
555 case GL_NORMAL_ARRAY:
558 case GL_TEXTURE_COORD_ARRAY:
559 case GL_EDGE_FLAG_ARRAY:
560 case GL_VERTEX_ARRAY_SIZE:
561 case GL_VERTEX_ARRAY_TYPE:
562 case GL_VERTEX_ARRAY_STRIDE:
563 case GL_NORMAL_ARRAY_TYPE:
564 case GL_NORMAL_ARRAY_STRIDE:
565 case GL_COLOR_ARRAY_SIZE:
566 case GL_COLOR_ARRAY_TYPE:
567 case GL_COLOR_ARRAY_STRIDE:
568 case GL_INDEX_ARRAY_TYPE:
569 case GL_INDEX_ARRAY_STRIDE:
570 case GL_TEXTURE_COORD_ARRAY_SIZE:
571 case GL_TEXTURE_COORD_ARRAY_TYPE:
572 case GL_TEXTURE_COORD_ARRAY_STRIDE:
573 case GL_EDGE_FLAG_ARRAY_STRIDE:
575 /* case GL_MULTISAMPLE_ARB:*/
576 case GL_SAMPLE_ALPHA_TO_COVERAGE:
577 /* case GL_SAMPLE_ALPHA_TO_COVERAGE_ARB:*/
578 case GL_SAMPLE_ALPHA_TO_ONE:
579 /* case GL_SAMPLE_ALPHA_TO_ONE_ARB:*/
580 case GL_SAMPLE_COVERAGE:
581 /* case GL_SAMPLE_COVERAGE_ARB:*/
582 case GL_SAMPLE_BUFFERS:
583 /* case GL_SAMPLE_BUFFERS_ARB:*/
585 /* case GL_SAMPLES_ARB:*/
586 case GL_SAMPLE_COVERAGE_VALUE:
587 /* case GL_SAMPLE_COVERAGE_VALUE_ARB:*/
588 case GL_SAMPLE_COVERAGE_INVERT:
589 /* case GL_SAMPLE_COVERAGE_INVERT_ARB:*/
590 case GL_COLOR_MATRIX_STACK_DEPTH:
591 case GL_MAX_COLOR_MATRIX_STACK_DEPTH:
592 case GL_POST_COLOR_MATRIX_RED_SCALE:
593 case GL_POST_COLOR_MATRIX_GREEN_SCALE:
594 case GL_POST_COLOR_MATRIX_BLUE_SCALE:
595 case GL_POST_COLOR_MATRIX_ALPHA_SCALE:
596 case GL_POST_COLOR_MATRIX_RED_BIAS:
597 case GL_POST_COLOR_MATRIX_GREEN_BIAS:
598 case GL_POST_COLOR_MATRIX_BLUE_BIAS:
599 case GL_POST_COLOR_MATRIX_ALPHA_BIAS:
600 case GL_BLEND_DST_RGB:
601 case GL_BLEND_SRC_RGB:
602 case GL_BLEND_DST_ALPHA:
603 case GL_BLEND_SRC_ALPHA:
605 case GL_POST_CONVOLUTION_COLOR_TABLE:
606 case GL_POST_COLOR_MATRIX_COLOR_TABLE:
607 case GL_MAX_ELEMENTS_VERTICES:
608 case GL_MAX_ELEMENTS_INDICES:
609 case GL_CLIP_VOLUME_CLIPPING_HINT_EXT:
610 case GL_POINT_SIZE_MIN:
611 case GL_POINT_SIZE_MAX:
612 case GL_POINT_FADE_THRESHOLD_SIZE:
613 case GL_OCCLUSION_TEST_HP:
614 case GL_OCCLUSION_TEST_RESULT_HP:
615 case GL_LIGHT_MODEL_COLOR_CONTROL:
616 case GL_CURRENT_FOG_COORD:
617 case GL_FOG_COORDINATE_ARRAY_TYPE:
618 case GL_FOG_COORDINATE_ARRAY_STRIDE:
619 case GL_FOG_COORD_ARRAY:
620 case GL_COLOR_SUM_ARB:
621 case GL_SECONDARY_COLOR_ARRAY_SIZE:
622 case GL_SECONDARY_COLOR_ARRAY_TYPE:
623 case GL_SECONDARY_COLOR_ARRAY_STRIDE:
624 case GL_SECONDARY_COLOR_ARRAY:
625 case GL_ACTIVE_TEXTURE:
626 /* case GL_ACTIVE_TEXTURE_ARB:*/
627 case GL_CLIENT_ACTIVE_TEXTURE:
628 /* case GL_CLIENT_ACTIVE_TEXTURE_ARB:*/
629 case GL_MAX_TEXTURE_UNITS:
630 /* case GL_MAX_TEXTURE_UNITS_ARB:*/
631 case GL_MAX_RENDERBUFFER_SIZE:
632 /* case GL_MAX_RENDERBUFFER_SIZE_EXT:*/
633 case GL_TEXTURE_COMPRESSION_HINT:
634 /* case GL_TEXTURE_COMPRESSION_HINT_ARB:*/
635 case GL_TEXTURE_RECTANGLE_ARB:
636 /* case GL_TEXTURE_RECTANGLE_NV:*/
637 case GL_TEXTURE_BINDING_RECTANGLE_ARB:
638 /* case GL_TEXTURE_BINDING_RECTANGLE_NV:*/
639 case GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB:
640 /* case GL_MAX_RECTANGLE_TEXTURE_SIZE_NV:*/
641 case GL_MAX_TEXTURE_LOD_BIAS:
642 case GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT:
643 case GL_MAX_SHININESS_NV:
644 case GL_MAX_SPOT_EXPONENT_NV:
645 case GL_TEXTURE_CUBE_MAP:
646 /* case GL_TEXTURE_CUBE_MAP_ARB:*/
647 case GL_TEXTURE_BINDING_CUBE_MAP:
648 /* case GL_TEXTURE_BINDING_CUBE_MAP_ARB:*/
649 case GL_MAX_CUBE_MAP_TEXTURE_SIZE:
650 /* case GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB:*/
651 case GL_MULTISAMPLE_FILTER_HINT_NV:
652 case GL_FOG_DISTANCE_MODE_NV:
653 case GL_VERTEX_PROGRAM_ARB:
654 case GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB:
655 case GL_MAX_PROGRAM_MATRICES_ARB:
656 case GL_CURRENT_MATRIX_STACK_DEPTH_ARB:
657 case GL_VERTEX_PROGRAM_POINT_SIZE_ARB:
658 case GL_VERTEX_PROGRAM_TWO_SIDE_ARB:
659 case GL_PROGRAM_ERROR_POSITION_ARB:
661 /* case GL_DEPTH_CLAMP_NV:*/
662 case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
663 /* case GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB:*/
664 case GL_MAX_VERTEX_UNITS_ARB:
665 case GL_ACTIVE_VERTEX_UNITS_ARB:
666 case GL_WEIGHT_SUM_UNITY_ARB:
667 case GL_VERTEX_BLEND_ARB:
668 case GL_CURRENT_WEIGHT_ARB:
669 case GL_WEIGHT_ARRAY_TYPE_ARB:
670 case GL_WEIGHT_ARRAY_STRIDE_ARB:
671 case GL_WEIGHT_ARRAY_SIZE_ARB:
672 case GL_WEIGHT_ARRAY_ARB:
673 case GL_PACK_INVERT_MESA:
674 case GL_STENCIL_BACK_FUNC_ATI:
675 case GL_STENCIL_BACK_FAIL_ATI:
676 case GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI:
677 case GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI:
678 case GL_FRAGMENT_PROGRAM_ARB:
679 case GL_MAX_DRAW_BUFFERS_ARB:
680 /* case GL_MAX_DRAW_BUFFERS_ATI:*/
681 case GL_DRAW_BUFFER0_ARB:
682 /* case GL_DRAW_BUFFER0_ATI:*/
683 case GL_DRAW_BUFFER1_ARB:
684 /* case GL_DRAW_BUFFER1_ATI:*/
685 case GL_DRAW_BUFFER2_ARB:
686 /* case GL_DRAW_BUFFER2_ATI:*/
687 case GL_DRAW_BUFFER3_ARB:
688 /* case GL_DRAW_BUFFER3_ATI:*/
689 case GL_DRAW_BUFFER4_ARB:
690 /* case GL_DRAW_BUFFER4_ATI:*/
691 case GL_DRAW_BUFFER5_ARB:
692 /* case GL_DRAW_BUFFER5_ATI:*/
693 case GL_DRAW_BUFFER6_ARB:
694 /* case GL_DRAW_BUFFER6_ATI:*/
695 case GL_DRAW_BUFFER7_ARB:
696 /* case GL_DRAW_BUFFER7_ATI:*/
697 case GL_DRAW_BUFFER8_ARB:
698 /* case GL_DRAW_BUFFER8_ATI:*/
699 case GL_DRAW_BUFFER9_ARB:
700 /* case GL_DRAW_BUFFER9_ATI:*/
701 case GL_DRAW_BUFFER10_ARB:
702 /* case GL_DRAW_BUFFER10_ATI:*/
703 case GL_DRAW_BUFFER11_ARB:
704 /* case GL_DRAW_BUFFER11_ATI:*/
705 case GL_DRAW_BUFFER12_ARB:
706 /* case GL_DRAW_BUFFER12_ATI:*/
707 case GL_DRAW_BUFFER13_ARB:
708 /* case GL_DRAW_BUFFER13_ATI:*/
709 case GL_DRAW_BUFFER14_ARB:
710 /* case GL_DRAW_BUFFER14_ATI:*/
711 case GL_DRAW_BUFFER15_ARB:
712 /* case GL_DRAW_BUFFER15_ATI:*/
713 case GL_BLEND_EQUATION_ALPHA_EXT:
714 case GL_MATRIX_PALETTE_ARB:
715 case GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB:
716 case GL_MAX_PALETTE_MATRICES_ARB:
717 case GL_CURRENT_PALETTE_MATRIX_ARB:
718 case GL_MATRIX_INDEX_ARRAY_ARB:
719 case GL_CURRENT_MATRIX_INDEX_ARB:
720 case GL_MATRIX_INDEX_ARRAY_SIZE_ARB:
721 case GL_MATRIX_INDEX_ARRAY_TYPE_ARB:
722 case GL_MATRIX_INDEX_ARRAY_STRIDE_ARB:
723 case GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT:
724 case GL_POINT_SPRITE_ARB:
725 /* case GL_POINT_SPRITE_NV:*/
726 case GL_POINT_SPRITE_R_MODE_NV:
727 case GL_MAX_VERTEX_ATTRIBS_ARB:
728 case GL_MAX_TEXTURE_COORDS_ARB:
729 case GL_MAX_TEXTURE_IMAGE_UNITS_ARB:
730 case GL_DEPTH_BOUNDS_TEST_EXT:
731 case GL_ARRAY_BUFFER_BINDING_ARB:
732 case GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB:
733 case GL_VERTEX_ARRAY_BUFFER_BINDING_ARB:
734 case GL_NORMAL_ARRAY_BUFFER_BINDING_ARB:
735 case GL_COLOR_ARRAY_BUFFER_BINDING_ARB:
736 case GL_INDEX_ARRAY_BUFFER_BINDING_ARB:
737 case GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB:
738 case GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB:
739 case GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB:
740 case GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB:
741 case GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB:
742 case GL_TEXTURE_CUBE_MAP_SEAMLESS:
743 case GL_MAX_ARRAY_TEXTURE_LAYERS_EXT:
744 case GL_STENCIL_TEST_TWO_SIDE_EXT:
745 case GL_ACTIVE_STENCIL_FACE_EXT:
746 case GL_TEXTURE_BINDING_1D_ARRAY_EXT:
747 case GL_TEXTURE_BINDING_2D_ARRAY_EXT:
748 case GL_FRAMEBUFFER_BINDING:
749 /* case GL_DRAW_FRAMEBUFFER_BINDING_EXT:*/
750 case GL_RENDERBUFFER_BINDING:
751 /* case GL_RENDERBUFFER_BINDING_EXT:*/
752 case GL_READ_FRAMEBUFFER_BINDING:
753 /* case GL_READ_FRAMEBUFFER_BINDING_EXT:*/
754 case GL_MAX_COLOR_ATTACHMENTS:
755 /* case GL_MAX_COLOR_ATTACHMENTS_EXT:*/
757 /* case GL_MAX_SAMPLES_EXT:*/
758 case GL_MAX_SERVER_WAIT_TIMEOUT:
759 case GL_RASTER_POSITION_UNCLIPPED_IBM:
761 case GL_SMOOTH_POINT_SIZE_RANGE:
762 case GL_LINE_WIDTH_RANGE:
763 case GL_POLYGON_MODE:
765 case GL_MAX_VIEWPORT_DIMS:
766 case GL_MAP1_GRID_DOMAIN:
767 case GL_MAP2_GRID_SEGMENTS:
768 case GL_ALIASED_POINT_SIZE_RANGE:
769 case GL_ALIASED_LINE_WIDTH_RANGE:
770 case GL_DEPTH_BOUNDS_EXT:
772 case GL_CURRENT_NORMAL:
773 case GL_POINT_DISTANCE_ATTENUATION:
775 case GL_CURRENT_COLOR:
776 case GL_CURRENT_TEXTURE_COORDS:
777 case GL_CURRENT_RASTER_COLOR:
778 case GL_CURRENT_RASTER_TEXTURE_COORDS:
779 case GL_CURRENT_RASTER_POSITION:
780 case GL_LIGHT_MODEL_AMBIENT:
782 case GL_ACCUM_CLEAR_VALUE:
785 case GL_COLOR_CLEAR_VALUE:
786 case GL_COLOR_WRITEMASK:
787 case GL_MAP2_GRID_DOMAIN:
789 /* case GL_BLEND_COLOR_EXT:*/
790 case GL_CURRENT_SECONDARY_COLOR:
792 case GL_MODELVIEW_MATRIX:
793 case GL_PROJECTION_MATRIX:
794 case GL_TEXTURE_MATRIX:
795 case GL_MODELVIEW0_ARB:
796 case GL_COLOR_MATRIX:
797 case GL_MODELVIEW1_ARB:
798 case GL_CURRENT_MATRIX_ARB:
799 case GL_MODELVIEW2_ARB:
800 case GL_MODELVIEW3_ARB:
801 case GL_MODELVIEW4_ARB:
802 case GL_MODELVIEW5_ARB:
803 case GL_MODELVIEW6_ARB:
804 case GL_MODELVIEW7_ARB:
805 case GL_MODELVIEW8_ARB:
806 case GL_MODELVIEW9_ARB:
807 case GL_MODELVIEW10_ARB:
808 case GL_MODELVIEW11_ARB:
809 case GL_MODELVIEW12_ARB:
810 case GL_MODELVIEW13_ARB:
811 case GL_MODELVIEW14_ARB:
812 case GL_MODELVIEW15_ARB:
813 case GL_MODELVIEW16_ARB:
814 case GL_MODELVIEW17_ARB:
815 case GL_MODELVIEW18_ARB:
816 case GL_MODELVIEW19_ARB:
817 case GL_MODELVIEW20_ARB:
818 case GL_MODELVIEW21_ARB:
819 case GL_MODELVIEW22_ARB:
820 case GL_MODELVIEW23_ARB:
821 case GL_MODELVIEW24_ARB:
822 case GL_MODELVIEW25_ARB:
823 case GL_MODELVIEW26_ARB:
824 case GL_MODELVIEW27_ARB:
825 case GL_MODELVIEW28_ARB:
826 case GL_MODELVIEW29_ARB:
827 case GL_MODELVIEW30_ARB:
828 case GL_MODELVIEW31_ARB:
829 case GL_TRANSPOSE_CURRENT_MATRIX_ARB:
832 case GL_FOG_COORDINATE_SOURCE:
833 case GL_COMPRESSED_TEXTURE_FORMATS:
834 case GL_MIN_PROGRAM_TEXEL_OFFSET_EXT:
835 case GL_MAX_PROGRAM_TEXEL_OFFSET_EXT:
836 case GL_RGBA_INTEGER_MODE_EXT:
837 return __glGetBooleanv_variable_size(pname);
845 #define __glGetDoublev_size __glGetBooleanv_size
847 #define __glGetFloatv_size __glGetBooleanv_size
849 #define __glGetIntegerv_size __glGetBooleanv_size
851 #define __glGetLightfv_size __glLightfv_size
853 #define __glGetLightiv_size __glLightfv_size
855 #define __glGetMaterialfv_size __glMaterialfv_size
857 #define __glGetMaterialiv_size __glMaterialfv_size
859 #define __glGetTexEnvfv_size __glTexEnvfv_size
861 #define __glGetTexEnviv_size __glTexEnvfv_size
863 #define __glGetTexGendv_size __glTexGendv_size
865 #define __glGetTexGenfv_size __glTexGendv_size
867 #define __glGetTexGeniv_size __glTexGendv_size
870 __glGetTexParameterfv_size(GLenum pname)
873 case GL_TEXTURE_MAG_FILTER:
874 case GL_TEXTURE_MIN_FILTER:
875 case GL_TEXTURE_WRAP_S:
876 case GL_TEXTURE_WRAP_T:
877 case GL_TEXTURE_PRIORITY:
878 case GL_TEXTURE_RESIDENT:
879 case GL_TEXTURE_WRAP_R:
880 case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB:
881 /* case GL_SHADOW_AMBIENT_SGIX:*/
882 case GL_TEXTURE_MIN_LOD:
883 case GL_TEXTURE_MAX_LOD:
884 case GL_TEXTURE_BASE_LEVEL:
885 case GL_TEXTURE_MAX_LEVEL:
886 case GL_TEXTURE_CLIPMAP_FRAME_SGIX:
887 case GL_TEXTURE_LOD_BIAS_S_SGIX:
888 case GL_TEXTURE_LOD_BIAS_T_SGIX:
889 case GL_TEXTURE_LOD_BIAS_R_SGIX:
890 case GL_GENERATE_MIPMAP:
891 /* case GL_GENERATE_MIPMAP_SGIS:*/
892 case GL_TEXTURE_COMPARE_SGIX:
893 case GL_TEXTURE_COMPARE_OPERATOR_SGIX:
894 case GL_TEXTURE_MAX_CLAMP_S_SGIX:
895 case GL_TEXTURE_MAX_CLAMP_T_SGIX:
896 case GL_TEXTURE_MAX_CLAMP_R_SGIX:
897 case GL_TEXTURE_MAX_ANISOTROPY_EXT:
898 case GL_TEXTURE_LOD_BIAS:
899 /* case GL_TEXTURE_LOD_BIAS_EXT:*/
900 case GL_TEXTURE_RANGE_LENGTH_APPLE:
901 case GL_TEXTURE_STORAGE_HINT_APPLE:
902 case GL_DEPTH_TEXTURE_MODE:
903 /* case GL_DEPTH_TEXTURE_MODE_ARB:*/
904 case GL_TEXTURE_COMPARE_MODE:
905 /* case GL_TEXTURE_COMPARE_MODE_ARB:*/
906 case GL_TEXTURE_COMPARE_FUNC:
907 /* case GL_TEXTURE_COMPARE_FUNC_ARB:*/
908 case GL_TEXTURE_UNSIGNED_REMAP_MODE_NV:
910 case GL_TEXTURE_CLIPMAP_CENTER_SGIX:
911 case GL_TEXTURE_CLIPMAP_OFFSET_SGIX:
913 case GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX:
915 case GL_TEXTURE_BORDER_COLOR:
916 case GL_POST_TEXTURE_FILTER_BIAS_SGIX:
917 case GL_POST_TEXTURE_FILTER_SCALE_SGIX:
925 #define __glGetTexParameteriv_size __glGetTexParameterfv_size
928 __glGetTexLevelParameterfv_size(GLenum pname)
931 case GL_TEXTURE_WIDTH:
932 case GL_TEXTURE_HEIGHT:
933 case GL_TEXTURE_COMPONENTS:
934 case GL_TEXTURE_BORDER:
935 case GL_TEXTURE_RED_SIZE:
936 /* case GL_TEXTURE_RED_SIZE_EXT:*/
937 case GL_TEXTURE_GREEN_SIZE:
938 /* case GL_TEXTURE_GREEN_SIZE_EXT:*/
939 case GL_TEXTURE_BLUE_SIZE:
940 /* case GL_TEXTURE_BLUE_SIZE_EXT:*/
941 case GL_TEXTURE_ALPHA_SIZE:
942 /* case GL_TEXTURE_ALPHA_SIZE_EXT:*/
943 case GL_TEXTURE_LUMINANCE_SIZE:
944 /* case GL_TEXTURE_LUMINANCE_SIZE_EXT:*/
945 case GL_TEXTURE_INTENSITY_SIZE:
946 /* case GL_TEXTURE_INTENSITY_SIZE_EXT:*/
947 case GL_TEXTURE_DEPTH:
948 case GL_TEXTURE_INDEX_SIZE_EXT:
949 case GL_TEXTURE_COMPRESSED_IMAGE_SIZE:
950 /* case GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB:*/
951 case GL_TEXTURE_COMPRESSED:
952 /* case GL_TEXTURE_COMPRESSED_ARB:*/
953 case GL_TEXTURE_DEPTH_SIZE:
954 /* case GL_TEXTURE_DEPTH_SIZE_ARB:*/
955 case GL_TEXTURE_STENCIL_SIZE:
956 /* case GL_TEXTURE_STENCIL_SIZE_EXT:*/
964 #define __glGetTexLevelParameteriv_size __glGetTexLevelParameterfv_size
967 __glColorTableParameterfv_size(GLenum pname)
970 case GL_COLOR_TABLE_SCALE:
971 case GL_COLOR_TABLE_BIAS:
979 #define __glColorTableParameteriv_size __glColorTableParameterfv_size
982 __glGetColorTableParameterfv_size(GLenum pname)
985 case GL_COLOR_TABLE_FORMAT:
986 /* case GL_COLOR_TABLE_FORMAT_EXT:*/
987 case GL_COLOR_TABLE_WIDTH:
988 /* case GL_COLOR_TABLE_WIDTH_EXT:*/
989 case GL_COLOR_TABLE_RED_SIZE:
990 /* case GL_COLOR_TABLE_RED_SIZE_EXT:*/
991 case GL_COLOR_TABLE_GREEN_SIZE:
992 /* case GL_COLOR_TABLE_GREEN_SIZE_EXT:*/
993 case GL_COLOR_TABLE_BLUE_SIZE:
994 /* case GL_COLOR_TABLE_BLUE_SIZE_EXT:*/
995 case GL_COLOR_TABLE_ALPHA_SIZE:
996 /* case GL_COLOR_TABLE_ALPHA_SIZE_EXT:*/
997 case GL_COLOR_TABLE_LUMINANCE_SIZE:
998 /* case GL_COLOR_TABLE_LUMINANCE_SIZE_EXT:*/
999 case GL_COLOR_TABLE_INTENSITY_SIZE:
1000 /* case GL_COLOR_TABLE_INTENSITY_SIZE_EXT:*/
1002 case GL_COLOR_TABLE_SCALE:
1003 case GL_COLOR_TABLE_BIAS:
1011 #define __glGetColorTableParameteriv_size __glGetColorTableParameterfv_size
1013 static inline size_t
1014 __glConvolutionParameterfv_size(GLenum pname)
1017 case GL_CONVOLUTION_BORDER_MODE:
1018 /* case GL_CONVOLUTION_BORDER_MODE_EXT:*/
1020 case GL_CONVOLUTION_FILTER_SCALE:
1021 /* case GL_CONVOLUTION_FILTER_SCALE_EXT:*/
1022 case GL_CONVOLUTION_FILTER_BIAS:
1023 /* case GL_CONVOLUTION_FILTER_BIAS_EXT:*/
1024 case GL_CONVOLUTION_BORDER_COLOR:
1025 /* case GL_CONVOLUTION_BORDER_COLOR_HP:*/
1033 #define __glConvolutionParameteriv_size __glConvolutionParameterfv_size
1035 static inline size_t
1036 __glGetConvolutionParameterfv_size(GLenum pname)
1039 case GL_CONVOLUTION_BORDER_MODE:
1040 /* case GL_CONVOLUTION_BORDER_MODE_EXT:*/
1041 case GL_CONVOLUTION_FORMAT:
1042 /* case GL_CONVOLUTION_FORMAT_EXT:*/
1043 case GL_CONVOLUTION_WIDTH:
1044 /* case GL_CONVOLUTION_WIDTH_EXT:*/
1045 case GL_CONVOLUTION_HEIGHT:
1046 /* case GL_CONVOLUTION_HEIGHT_EXT:*/
1047 case GL_MAX_CONVOLUTION_WIDTH:
1048 /* case GL_MAX_CONVOLUTION_WIDTH_EXT:*/
1049 case GL_MAX_CONVOLUTION_HEIGHT:
1050 /* case GL_MAX_CONVOLUTION_HEIGHT_EXT:*/
1052 case GL_CONVOLUTION_FILTER_SCALE:
1053 /* case GL_CONVOLUTION_FILTER_SCALE_EXT:*/
1054 case GL_CONVOLUTION_FILTER_BIAS:
1055 /* case GL_CONVOLUTION_FILTER_BIAS_EXT:*/
1056 case GL_CONVOLUTION_BORDER_COLOR:
1057 /* case GL_CONVOLUTION_BORDER_COLOR_HP:*/
1065 #define __glGetConvolutionParameteriv_size __glGetConvolutionParameterfv_size
1067 static inline size_t
1068 __glGetHistogramParameterfv_size(GLenum pname)
1071 case GL_HISTOGRAM_WIDTH:
1072 case GL_HISTOGRAM_FORMAT:
1073 case GL_HISTOGRAM_RED_SIZE:
1074 case GL_HISTOGRAM_GREEN_SIZE:
1075 case GL_HISTOGRAM_BLUE_SIZE:
1076 case GL_HISTOGRAM_ALPHA_SIZE:
1077 case GL_HISTOGRAM_LUMINANCE_SIZE:
1078 case GL_HISTOGRAM_SINK:
1086 #define __glGetHistogramParameteriv_size __glGetHistogramParameterfv_size
1088 static inline size_t
1089 __glGetMinmaxParameterfv_size(GLenum pname)
1092 case GL_MINMAX_FORMAT:
1093 case GL_MINMAX_SINK:
1101 #define __glGetMinmaxParameteriv_size __glGetMinmaxParameterfv_size
1103 static inline size_t
1104 __glGetProgramivARB_size(GLenum pname)
1107 case GL_PROGRAM_LENGTH_ARB:
1108 case GL_PROGRAM_BINDING_ARB:
1109 case GL_PROGRAM_ALU_INSTRUCTIONS_ARB:
1110 case GL_PROGRAM_TEX_INSTRUCTIONS_ARB:
1111 case GL_PROGRAM_TEX_INDIRECTIONS_ARB:
1112 case GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB:
1113 case GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB:
1114 case GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB:
1115 case GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB:
1116 case GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB:
1117 case GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB:
1118 case GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB:
1119 case GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB:
1120 case GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB:
1121 case GL_PROGRAM_FORMAT_ARB:
1122 case GL_PROGRAM_INSTRUCTIONS_ARB:
1123 case GL_MAX_PROGRAM_INSTRUCTIONS_ARB:
1124 case GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB:
1125 case GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB:
1126 case GL_PROGRAM_TEMPORARIES_ARB:
1127 case GL_MAX_PROGRAM_TEMPORARIES_ARB:
1128 case GL_PROGRAM_NATIVE_TEMPORARIES_ARB:
1129 case GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB:
1130 case GL_PROGRAM_PARAMETERS_ARB:
1131 case GL_MAX_PROGRAM_PARAMETERS_ARB:
1132 case GL_PROGRAM_NATIVE_PARAMETERS_ARB:
1133 case GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB:
1134 case GL_PROGRAM_ATTRIBS_ARB:
1135 case GL_MAX_PROGRAM_ATTRIBS_ARB:
1136 case GL_PROGRAM_NATIVE_ATTRIBS_ARB:
1137 case GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB:
1138 case GL_PROGRAM_ADDRESS_REGISTERS_ARB:
1139 case GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB:
1140 case GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB:
1141 case GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB:
1142 case GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB:
1143 case GL_MAX_PROGRAM_ENV_PARAMETERS_ARB:
1144 case GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB:
1145 case GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV:
1146 case GL_MAX_PROGRAM_CALL_DEPTH_NV:
1147 case GL_MAX_PROGRAM_IF_DEPTH_NV:
1148 case GL_MAX_PROGRAM_LOOP_DEPTH_NV:
1149 case GL_MAX_PROGRAM_LOOP_COUNT_NV:
1157 static inline size_t
1158 __glGetVertexAttribdvARB_size(GLenum pname)
1161 case GL_VERTEX_PROGRAM_ARB:
1162 case GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB:
1163 case GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB:
1164 case GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB:
1165 case GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB:
1166 case GL_CURRENT_VERTEX_ATTRIB_ARB:
1167 case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB:
1175 #define __glGetVertexAttribfvARB_size __glGetVertexAttribdvARB_size
1177 #define __glGetVertexAttribivARB_size __glGetVertexAttribdvARB_size
1179 static inline size_t
1180 __glGetQueryObjectivARB_size(GLenum pname)
1183 case GL_QUERY_RESULT_ARB:
1184 case GL_QUERY_RESULT_AVAILABLE_ARB:
1192 #define __glGetQueryObjectuivARB_size __glGetQueryObjectivARB_size
1194 static inline size_t
1195 __glGetQueryivARB_size(GLenum pname)
1198 case GL_QUERY_COUNTER_BITS_ARB:
1199 case GL_CURRENT_QUERY_ARB:
1207 static inline size_t
1208 __glPointParameterfvEXT_size(GLenum pname)
1211 case GL_POINT_SIZE_MIN:
1212 /* case GL_POINT_SIZE_MIN_ARB:*/
1213 /* case GL_POINT_SIZE_MIN_SGIS:*/
1214 case GL_POINT_SIZE_MAX:
1215 /* case GL_POINT_SIZE_MAX_ARB:*/
1216 /* case GL_POINT_SIZE_MAX_SGIS:*/
1217 case GL_POINT_FADE_THRESHOLD_SIZE:
1218 /* case GL_POINT_FADE_THRESHOLD_SIZE_ARB:*/
1219 /* case GL_POINT_FADE_THRESHOLD_SIZE_SGIS:*/
1220 case GL_POINT_SPRITE_R_MODE_NV:
1221 case GL_POINT_SPRITE_COORD_ORIGIN:
1223 case GL_POINT_DISTANCE_ATTENUATION:
1224 /* case GL_POINT_DISTANCE_ATTENUATION_ARB:*/
1225 /* case GL_POINT_DISTANCE_ATTENUATION_SGIS:*/
1233 static inline size_t
1234 __glGetProgramivNV_size(GLenum pname)
1237 case GL_PROGRAM_LENGTH_NV:
1238 case GL_PROGRAM_TARGET_NV:
1239 case GL_PROGRAM_RESIDENT_NV:
1247 static inline size_t
1248 __glGetVertexAttribdvNV_size(GLenum pname)
1251 case GL_ATTRIB_ARRAY_SIZE_NV:
1252 case GL_ATTRIB_ARRAY_STRIDE_NV:
1253 case GL_ATTRIB_ARRAY_TYPE_NV:
1254 case GL_CURRENT_ATTRIB_NV:
1262 #define __glGetVertexAttribfvNV_size __glGetVertexAttribdvNV_size
1264 #define __glGetVertexAttribivNV_size __glGetVertexAttribdvNV_size
1266 #define __glPointParameterivNV_size __glPointParameterfvEXT_size
1268 static inline size_t
1269 __glGetFramebufferAttachmentParameterivEXT_size(GLenum pname)
1272 case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT:
1273 case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT:
1274 case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT:
1275 case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT:
1276 case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT:
1284 static inline size_t
1285 __gl_image_size(GLenum format, GLenum type, GLsizei width, GLsizei height, GLsizei depth, GLint border) {
1286 size_t num_channels;
1288 case GL_COLOR_INDEX:
1294 case GL_DEPTH_COMPONENT:
1295 case GL_STENCIL_INDEX:
1298 case GL_LUMINANCE_ALPHA:
1315 size_t bits_per_pixel;
1321 case GL_UNSIGNED_BYTE:
1322 bits_per_pixel = 8 * num_channels;
1325 case GL_UNSIGNED_SHORT:
1326 bits_per_pixel = 16 * num_channels;
1329 case GL_UNSIGNED_INT:
1331 bits_per_pixel = 32 * num_channels;
1333 case GL_UNSIGNED_BYTE_3_3_2:
1334 case GL_UNSIGNED_BYTE_2_3_3_REV:
1335 case GL_UNSIGNED_SHORT_5_6_5:
1336 case GL_UNSIGNED_SHORT_5_6_5_REV:
1339 case GL_UNSIGNED_SHORT_4_4_4_4:
1340 case GL_UNSIGNED_SHORT_4_4_4_4_REV:
1341 case GL_UNSIGNED_SHORT_5_5_5_1:
1342 case GL_UNSIGNED_SHORT_1_5_5_5_REV:
1343 bits_per_pixel = 16;
1345 case GL_UNSIGNED_INT_8_8_8_8:
1346 case GL_UNSIGNED_INT_8_8_8_8_REV:
1347 case GL_UNSIGNED_INT_10_10_10_2:
1348 case GL_UNSIGNED_INT_2_10_10_10_REV:
1349 bits_per_pixel = 32;
1357 /* FIXME: consider glPixelStore settings */
1359 size_t row_stride = (width*bits_per_pixel + 7)/8;
1361 size_t slice_stride = height*row_stride;
1363 return depth*slice_stride;
1366 static inline size_t
1367 __gl_bitmap_size(GLsizei width, GLsizei height) {
1368 return __gl_image_size(GL_COLOR_INDEX, GL_BITMAP, width, height, 1, 0);
1371 #endif /* _GL_HELPERS_HPP_ */