5 * under the terms of the GNU General Public License version 2 only, as
6 * published by the Free Software Foundation. Oracle designates this
7 * particular file as subject to the "Classpath" exception as provided
8 * by Oracle in the LICENSE file that accompanied this code.
9 *
10 * This code is distributed in the hope that it will be useful, but WITHOUT
11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 * version 2 for more details (a copy is included in the LICENSE file that
14 * accompanied this code).
15 *
16 * You should have received a copy of the GNU General Public License version
17 * 2 along with this work; if not, write to the Free Software Foundation,
18 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19 *
20 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21 * or visit www.oracle.com if you need additional information or have any
22 * questions.
23 */
24
25 /* $Id: gl.h,v 1.72 2002/10/17 19:39:31 kschultz Exp $ */
26
27 /*
28 * This file is available under and governed by the GNU General Public
29 * License version 2 only, as published by the Free Software Foundation.
30 * However, the following notice accompanied the original version of this
31 * file:
32 *
33 * Mesa 3-D graphics library
34 * Version: 4.1
35 *
36 * Copyright (C) 1999-2002 Brian Paul All Rights Reserved.
37 *
38 * Permission is hereby granted, free of charge, to any person obtaining a
39 * copy of this software and associated documentation files (the "Software"),
40 * to deal in the Software without restriction, including without limitation
41 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
42 * and/or sell copies of the Software, and to permit persons to whom the
43 * Software is furnished to do so, subject to the following conditions:
44 *
45 * The above copyright notice and this permission notice shall be included
46 * in all copies or substantial portions of the Software.
47 *
48 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
49 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
50 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
51 * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
52 * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
53 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
54 */
55
56
57 #ifndef __gl_h_
58 #define __gl_h_
59
60 #if defined(USE_MGL_NAMESPACE)
61 #include "gl_mangle.h"
62 #endif
63
64
65 /**********************************************************************
66 * Begin system-specific stuff.
67 */
68 #if defined(__BEOS__)
69 #include <stdlib.h> /* to get some BeOS-isms */
70 #endif
71
72 #if !defined(OPENSTEP) && (defined(NeXT) || defined(NeXT_PDO))
73 #define OPENSTEP
74 #endif
75
76 #if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__)
77 #define __WIN32__
78 #endif
79
80 #if !defined(OPENSTEP) && (defined(__WIN32__) && !defined(__CYGWIN__))
81 # if defined(_MSC_VER) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */
82 # define GLAPI __declspec(dllexport)
83 # elif defined(_MSC_VER) && defined(_DLL) /* tag specifying we're building for DLL runtime support */
84 # define GLAPI __declspec(dllimport)
85 # else /* for use with static link lib build of Win32 edition only */
86 # define GLAPI extern
87 # endif /* _STATIC_MESA support */
88 # define GLAPIENTRY __stdcall
89 #else
90 /* non-Windows compilation */
91 # define GLAPI extern
92 # define GLAPIENTRY
93 #endif /* WIN32 / CYGWIN bracket */
94
95 #if (defined(__BEOS__) && defined(__POWERPC__)) || defined(__QUICKDRAW__)
96 # define PRAGMA_EXPORT_SUPPORTED 1
97 #endif
98
99 /*
100 * WINDOWS: Include windows.h here to define APIENTRY.
101 * It is also useful when applications include this file by
102 * including only glut.h, since glut.h depends on windows.h.
103 * Applications needing to include windows.h with parms other
104 * than "WIN32_LEAN_AND_MEAN" may include windows.h before
105 * glut.h or gl.h.
106 */
107 #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__)
108 #define WIN32_LEAN_AND_MEAN 1
109 #include <windows.h>
110 #endif
111
112 #if defined(_WIN32) && !defined(_WINGDI_) && !defined(_GNU_H_WINDOWS32_DEFINES) && !defined(OPENSTEP) && !defined(__CYGWIN__)
113 #include <gl/mesa_wgl.h>
114 #endif
115
116 #if defined(macintosh) && PRAGMA_IMPORT_SUPPORTED
117 #pragma import on
118 #endif
119
120 #ifndef APIENTRY
121 #define APIENTRY GLAPIENTRY
122 #endif
123
124 #ifdef CENTERLINE_CLPP
125 #define signed
126 #endif
127
128 #if defined(PRAGMA_EXPORT_SUPPORTED)
129 #pragma export on
130 #endif
131
132 /*
133 * End system-specific stuff.
134 **********************************************************************/
135
136
137
138 #ifdef __cplusplus
139 extern "C" {
140 #endif
141
142
143
144 #define GL_VERSION_1_1 1
145 #define GL_VERSION_1_2 1
146 #define GL_VERSION_1_3 1
147 #define GL_ARB_imaging 1
148
149
156 typedef void GLvoid;
157 typedef signed char GLbyte; /* 1-byte signed */
158 typedef short GLshort; /* 2-byte signed */
159 typedef int GLint; /* 4-byte signed */
160 typedef unsigned char GLubyte; /* 1-byte unsigned */
161 typedef unsigned short GLushort; /* 2-byte unsigned */
162 typedef unsigned int GLuint; /* 4-byte unsigned */
163 typedef int GLsizei; /* 4-byte signed */
164 typedef float GLfloat; /* single precision float */
165 typedef float GLclampf; /* single precision float in [0,1] */
166 typedef double GLdouble; /* double precision float */
167 typedef double GLclampd; /* double precision float in [0,1] */
168
169
170
171 /*
172 * Constants
173 */
174
175 /* Boolean values */
176 #define GL_FALSE 0x0
177 #define GL_TRUE 0x1
178
179 /* Data types */
180 #define GL_BYTE 0x1400
181 #define GL_UNSIGNED_BYTE 0x1401
182 #define GL_SHORT 0x1402
183 #define GL_UNSIGNED_SHORT 0x1403
184 #define GL_INT 0x1404
185 #define GL_UNSIGNED_INT 0x1405
186 #define GL_FLOAT 0x1406
187 #define GL_DOUBLE 0x140A
188 #define GL_2_BYTES 0x1407
189 #define GL_3_BYTES 0x1408
190 #define GL_4_BYTES 0x1409
191
192 /* Primitives */
193 #define GL_POINTS 0x0000
194 #define GL_LINES 0x0001
195 #define GL_LINE_LOOP 0x0002
196 #define GL_LINE_STRIP 0x0003
197 #define GL_TRIANGLES 0x0004
198 #define GL_TRIANGLE_STRIP 0x0005
199 #define GL_TRIANGLE_FAN 0x0006
200 #define GL_QUADS 0x0007
201 #define GL_QUAD_STRIP 0x0008
202 #define GL_POLYGON 0x0009
203
204 /* Vertex Arrays */
205 #define GL_VERTEX_ARRAY 0x8074
206 #define GL_NORMAL_ARRAY 0x8075
207 #define GL_COLOR_ARRAY 0x8076
208 #define GL_INDEX_ARRAY 0x8077
209 #define GL_TEXTURE_COORD_ARRAY 0x8078
210 #define GL_EDGE_FLAG_ARRAY 0x8079
357 #define GL_ACCUM_RED_BITS 0x0D58
358 #define GL_ACCUM_GREEN_BITS 0x0D59
359 #define GL_ACCUM_BLUE_BITS 0x0D5A
360 #define GL_ACCUM_ALPHA_BITS 0x0D5B
361 #define GL_ACCUM_CLEAR_VALUE 0x0B80
362 #define GL_ACCUM 0x0100
363 #define GL_ADD 0x0104
364 #define GL_LOAD 0x0101
365 #define GL_MULT 0x0103
366 #define GL_RETURN 0x0102
367
368 /* Alpha testing */
369 #define GL_ALPHA_TEST 0x0BC0
370 #define GL_ALPHA_TEST_REF 0x0BC2
371 #define GL_ALPHA_TEST_FUNC 0x0BC1
372
373 /* Blending */
374 #define GL_BLEND 0x0BE2
375 #define GL_BLEND_SRC 0x0BE1
376 #define GL_BLEND_DST 0x0BE0
377 #define GL_ZERO 0x0
378 #define GL_ONE 0x1
379 #define GL_SRC_COLOR 0x0300
380 #define GL_ONE_MINUS_SRC_COLOR 0x0301
381 #define GL_SRC_ALPHA 0x0302
382 #define GL_ONE_MINUS_SRC_ALPHA 0x0303
383 #define GL_DST_ALPHA 0x0304
384 #define GL_ONE_MINUS_DST_ALPHA 0x0305
385 #define GL_DST_COLOR 0x0306
386 #define GL_ONE_MINUS_DST_COLOR 0x0307
387 #define GL_SRC_ALPHA_SATURATE 0x0308
388
389 /* Render Mode */
390 #define GL_FEEDBACK 0x1C01
391 #define GL_RENDER 0x1C00
392 #define GL_SELECT 0x1C02
393
394 /* Feedback */
395 #define GL_2D 0x0600
396 #define GL_3D 0x0601
397 #define GL_3D_COLOR 0x0602
398 #define GL_3D_COLOR_TEXTURE 0x0603
431 #define GL_COLOR_LOGIC_OP 0x0BF2
432 #define GL_LOGIC_OP_MODE 0x0BF0
433 #define GL_CLEAR 0x1500
434 #define GL_SET 0x150F
435 #define GL_COPY 0x1503
436 #define GL_COPY_INVERTED 0x150C
437 #define GL_NOOP 0x1505
438 #define GL_INVERT 0x150A
439 #define GL_AND 0x1501
440 #define GL_NAND 0x150E
441 #define GL_OR 0x1507
442 #define GL_NOR 0x1508
443 #define GL_XOR 0x1506
444 #define GL_EQUIV 0x1509
445 #define GL_AND_REVERSE 0x1502
446 #define GL_AND_INVERTED 0x1504
447 #define GL_OR_REVERSE 0x150B
448 #define GL_OR_INVERTED 0x150D
449
450 /* Stencil */
451 #define GL_STENCIL_TEST 0x0B90
452 #define GL_STENCIL_WRITEMASK 0x0B98
453 #define GL_STENCIL_BITS 0x0D57
454 #define GL_STENCIL_FUNC 0x0B92
455 #define GL_STENCIL_VALUE_MASK 0x0B93
456 #define GL_STENCIL_REF 0x0B97
457 #define GL_STENCIL_FAIL 0x0B94
458 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
459 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
460 #define GL_STENCIL_CLEAR_VALUE 0x0B91
461 #define GL_STENCIL_INDEX 0x1901
462 #define GL_KEEP 0x1E00
463 #define GL_REPLACE 0x1E01
464 #define GL_INCR 0x1E02
465 #define GL_DECR 0x1E03
466
467 /* Buffers, Pixel Drawing/Reading */
468 #define GL_NONE 0x0
469 #define GL_LEFT 0x0406
470 #define GL_RIGHT 0x0407
471 /*GL_FRONT 0x0404 */
472 /*GL_BACK 0x0405 */
473 /*GL_FRONT_AND_BACK 0x0408 */
474 #define GL_FRONT_LEFT 0x0400
475 #define GL_FRONT_RIGHT 0x0401
476 #define GL_BACK_LEFT 0x0402
477 #define GL_BACK_RIGHT 0x0403
478 #define GL_AUX0 0x0409
479 #define GL_AUX1 0x040A
480 #define GL_AUX2 0x040B
481 #define GL_AUX3 0x040C
482 #define GL_COLOR_INDEX 0x1900
483 #define GL_RED 0x1903
484 #define GL_GREEN 0x1904
485 #define GL_BLUE 0x1905
486 #define GL_ALPHA 0x1906
487 #define GL_LUMINANCE 0x1909
488 #define GL_LUMINANCE_ALPHA 0x190A
490 #define GL_RED_BITS 0x0D52
491 #define GL_GREEN_BITS 0x0D53
492 #define GL_BLUE_BITS 0x0D54
493 #define GL_INDEX_BITS 0x0D51
494 #define GL_SUBPIXEL_BITS 0x0D50
495 #define GL_AUX_BUFFERS 0x0C00
496 #define GL_READ_BUFFER 0x0C02
497 #define GL_DRAW_BUFFER 0x0C01
498 #define GL_DOUBLEBUFFER 0x0C32
499 #define GL_STEREO 0x0C33
500 #define GL_BITMAP 0x1A00
501 #define GL_COLOR 0x1800
502 #define GL_DEPTH 0x1801
503 #define GL_STENCIL 0x1802
504 #define GL_DITHER 0x0BD0
505 #define GL_RGB 0x1907
506 #define GL_RGBA 0x1908
507
508 /* Implementation limits */
509 #define GL_MAX_LIST_NESTING 0x0B31
510 #define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
511 #define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
512 #define GL_MAX_NAME_STACK_DEPTH 0x0D37
513 #define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
514 #define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
515 #define GL_MAX_EVAL_ORDER 0x0D30
516 #define GL_MAX_LIGHTS 0x0D31
517 #define GL_MAX_CLIP_PLANES 0x0D32
518 #define GL_MAX_TEXTURE_SIZE 0x0D33
519 #define GL_MAX_PIXEL_MAP_TABLE 0x0D34
520 #define GL_MAX_VIEWPORT_DIMS 0x0D3A
521 #define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
522
523 /* Gets */
524 #define GL_ATTRIB_STACK_DEPTH 0x0BB0
525 #define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
526 #define GL_COLOR_CLEAR_VALUE 0x0C22
527 #define GL_COLOR_WRITEMASK 0x0C23
528 #define GL_CURRENT_INDEX 0x0B01
529 #define GL_CURRENT_COLOR 0x0B00
530 #define GL_CURRENT_NORMAL 0x0B02
531 #define GL_CURRENT_RASTER_COLOR 0x0B04
532 #define GL_CURRENT_RASTER_DISTANCE 0x0B09
533 #define GL_CURRENT_RASTER_INDEX 0x0B05
534 #define GL_CURRENT_RASTER_POSITION 0x0B07
535 #define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
536 #define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
537 #define GL_CURRENT_TEXTURE_COORDS 0x0B03
538 #define GL_INDEX_CLEAR_VALUE 0x0C20
539 #define GL_INDEX_MODE 0x0C30
557 #define GL_MAP1_TEXTURE_COORD_1 0x0D93
558 #define GL_MAP1_TEXTURE_COORD_2 0x0D94
559 #define GL_MAP1_TEXTURE_COORD_3 0x0D95
560 #define GL_MAP1_TEXTURE_COORD_4 0x0D96
561 #define GL_MAP1_VERTEX_3 0x0D97
562 #define GL_MAP1_VERTEX_4 0x0D98
563 #define GL_MAP2_COLOR_4 0x0DB0
564 #define GL_MAP2_INDEX 0x0DB1
565 #define GL_MAP2_NORMAL 0x0DB2
566 #define GL_MAP2_TEXTURE_COORD_1 0x0DB3
567 #define GL_MAP2_TEXTURE_COORD_2 0x0DB4
568 #define GL_MAP2_TEXTURE_COORD_3 0x0DB5
569 #define GL_MAP2_TEXTURE_COORD_4 0x0DB6
570 #define GL_MAP2_VERTEX_3 0x0DB7
571 #define GL_MAP2_VERTEX_4 0x0DB8
572 #define GL_MAP1_GRID_DOMAIN 0x0DD0
573 #define GL_MAP1_GRID_SEGMENTS 0x0DD1
574 #define GL_MAP2_GRID_DOMAIN 0x0DD2
575 #define GL_MAP2_GRID_SEGMENTS 0x0DD3
576 #define GL_COEFF 0x0A00
577 #define GL_DOMAIN 0x0A02
578 #define GL_ORDER 0x0A01
579
580 /* Hints */
581 #define GL_FOG_HINT 0x0C54
582 #define GL_LINE_SMOOTH_HINT 0x0C52
583 #define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
584 #define GL_POINT_SMOOTH_HINT 0x0C51
585 #define GL_POLYGON_SMOOTH_HINT 0x0C53
586 #define GL_DONT_CARE 0x1100
587 #define GL_FASTEST 0x1101
588 #define GL_NICEST 0x1102
589
590 /* Scissor box */
591 #define GL_SCISSOR_TEST 0x0C11
592 #define GL_SCISSOR_BOX 0x0C10
593
594 /* Pixel Mode / Transfer */
595 #define GL_MAP_COLOR 0x0D10
596 #define GL_MAP_STENCIL 0x0D11
597 #define GL_INDEX_SHIFT 0x0D12
598 #define GL_INDEX_OFFSET 0x0D13
599 #define GL_RED_SCALE 0x0D14
600 #define GL_RED_BIAS 0x0D15
601 #define GL_GREEN_SCALE 0x0D18
602 #define GL_GREEN_BIAS 0x0D19
603 #define GL_BLUE_SCALE 0x0D1A
604 #define GL_BLUE_BIAS 0x0D1B
605 #define GL_ALPHA_SCALE 0x0D1C
606 #define GL_ALPHA_BIAS 0x0D1D
607 #define GL_DEPTH_SCALE 0x0D1E
608 #define GL_DEPTH_BIAS 0x0D1F
609 #define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
610 #define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
611 #define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
612 #define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
636 #define GL_UNPACK_LSB_FIRST 0x0CF1
637 #define GL_UNPACK_ROW_LENGTH 0x0CF2
638 #define GL_UNPACK_SKIP_PIXELS 0x0CF4
639 #define GL_UNPACK_SKIP_ROWS 0x0CF3
640 #define GL_UNPACK_SWAP_BYTES 0x0CF0
641 #define GL_ZOOM_X 0x0D16
642 #define GL_ZOOM_Y 0x0D17
643
644 /* Texture mapping */
645 #define GL_TEXTURE_ENV 0x2300
646 #define GL_TEXTURE_ENV_MODE 0x2200
647 #define GL_TEXTURE_1D 0x0DE0
648 #define GL_TEXTURE_2D 0x0DE1
649 #define GL_TEXTURE_WRAP_S 0x2802
650 #define GL_TEXTURE_WRAP_T 0x2803
651 #define GL_TEXTURE_MAG_FILTER 0x2800
652 #define GL_TEXTURE_MIN_FILTER 0x2801
653 #define GL_TEXTURE_ENV_COLOR 0x2201
654 #define GL_TEXTURE_GEN_S 0x0C60
655 #define GL_TEXTURE_GEN_T 0x0C61
656 #define GL_TEXTURE_GEN_MODE 0x2500
657 #define GL_TEXTURE_BORDER_COLOR 0x1004
658 #define GL_TEXTURE_WIDTH 0x1000
659 #define GL_TEXTURE_HEIGHT 0x1001
660 #define GL_TEXTURE_BORDER 0x1005
661 #define GL_TEXTURE_COMPONENTS 0x1003
662 #define GL_TEXTURE_RED_SIZE 0x805C
663 #define GL_TEXTURE_GREEN_SIZE 0x805D
664 #define GL_TEXTURE_BLUE_SIZE 0x805E
665 #define GL_TEXTURE_ALPHA_SIZE 0x805F
666 #define GL_TEXTURE_LUMINANCE_SIZE 0x8060
667 #define GL_TEXTURE_INTENSITY_SIZE 0x8061
668 #define GL_NEAREST_MIPMAP_NEAREST 0x2700
669 #define GL_NEAREST_MIPMAP_LINEAR 0x2702
670 #define GL_LINEAR_MIPMAP_NEAREST 0x2701
671 #define GL_LINEAR_MIPMAP_LINEAR 0x2703
672 #define GL_OBJECT_LINEAR 0x2401
673 #define GL_OBJECT_PLANE 0x2501
674 #define GL_EYE_LINEAR 0x2400
675 #define GL_EYE_PLANE 0x2502
676 #define GL_SPHERE_MAP 0x2402
677 #define GL_DECAL 0x2101
678 #define GL_MODULATE 0x2100
679 #define GL_NEAREST 0x2600
680 #define GL_REPEAT 0x2901
681 #define GL_CLAMP 0x2900
682 #define GL_S 0x2000
683 #define GL_T 0x2001
684 #define GL_R 0x2002
685 #define GL_Q 0x2003
686 #define GL_TEXTURE_GEN_R 0x0C62
687 #define GL_TEXTURE_GEN_Q 0x0C63
688
689 /* Utility */
690 #define GL_VENDOR 0x1F00
691 #define GL_RENDERER 0x1F01
692 #define GL_VERSION 0x1F02
693 #define GL_EXTENSIONS 0x1F03
694
695 /* Errors */
696 #define GL_NO_ERROR 0x0
697 #define GL_INVALID_VALUE 0x0501
698 #define GL_INVALID_ENUM 0x0500
699 #define GL_INVALID_OPERATION 0x0502
700 #define GL_STACK_OVERFLOW 0x0503
701 #define GL_STACK_UNDERFLOW 0x0504
702 #define GL_OUT_OF_MEMORY 0x0505
703
704 /* glPush/PopAttrib bits */
705 #define GL_CURRENT_BIT 0x00000001
706 #define GL_POINT_BIT 0x00000002
707 #define GL_LINE_BIT 0x00000004
708 #define GL_POLYGON_BIT 0x00000008
709 #define GL_POLYGON_STIPPLE_BIT 0x00000010
710 #define GL_PIXEL_MODE_BIT 0x00000020
711 #define GL_LIGHTING_BIT 0x00000040
712 #define GL_FOG_BIT 0x00000080
713 #define GL_DEPTH_BUFFER_BIT 0x00000100
714 #define GL_ACCUM_BUFFER_BIT 0x00000200
715 #define GL_STENCIL_BUFFER_BIT 0x00000400
716 #define GL_VIEWPORT_BIT 0x00000800
717 #define GL_TRANSFORM_BIT 0x00001000
718 #define GL_ENABLE_BIT 0x00002000
719 #define GL_COLOR_BUFFER_BIT 0x00004000
720 #define GL_HINT_BIT 0x00008000
721 #define GL_EVAL_BIT 0x00010000
722 #define GL_LIST_BIT 0x00020000
723 #define GL_TEXTURE_BIT 0x00040000
724 #define GL_SCISSOR_BIT 0x00080000
725 #define GL_ALL_ATTRIB_BITS 0x000FFFFF
726
727
728 /* OpenGL 1.1 */
729 #define GL_PROXY_TEXTURE_1D 0x8063
730 #define GL_PROXY_TEXTURE_2D 0x8064
731 #define GL_TEXTURE_PRIORITY 0x8066
732 #define GL_TEXTURE_RESIDENT 0x8067
733 #define GL_TEXTURE_BINDING_1D 0x8068
734 #define GL_TEXTURE_BINDING_2D 0x8069
735 #define GL_TEXTURE_INTERNAL_FORMAT 0x1003
736 #define GL_ALPHA4 0x803B
737 #define GL_ALPHA8 0x803C
738 #define GL_ALPHA12 0x803D
739 #define GL_ALPHA16 0x803E
740 #define GL_LUMINANCE4 0x803F
741 #define GL_LUMINANCE8 0x8040
742 #define GL_LUMINANCE12 0x8041
743 #define GL_LUMINANCE16 0x8042
744 #define GL_LUMINANCE4_ALPHA4 0x8043
745 #define GL_LUMINANCE6_ALPHA2 0x8044
843
844 GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params );
845
846 GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params );
847
848
849 GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask );
850
851 GLAPI void GLAPIENTRY glPopAttrib( void );
852
853
854 GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */
855
856 GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */
857
858
859 GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode );
860
861 GLAPI GLenum GLAPIENTRY glGetError( void );
862
863 GLAPI const GLubyte* GLAPIENTRY glGetString( GLenum name );
864
865 GLAPI void GLAPIENTRY glFinish( void );
866
867 GLAPI void GLAPIENTRY glFlush( void );
868
869 GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode );
870
871
872 /*
873 * Depth Buffer
874 */
875
876 GLAPI void GLAPIENTRY glClearDepth( GLclampd depth );
877
878 GLAPI void GLAPIENTRY glDepthFunc( GLenum func );
879
880 GLAPI void GLAPIENTRY glDepthMask( GLboolean flag );
881
882 GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val );
883
1211 GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params );
1212
1213 GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params );
1214 GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params );
1215
1216 GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode );
1217
1218
1219 /*
1220 * Raster functions
1221 */
1222
1223 GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor );
1224
1225 GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param );
1226 GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param );
1227
1228 GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param );
1229 GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param );
1230
1231 GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLint mapsize,
1232 const GLfloat *values );
1233 GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLint mapsize,
1234 const GLuint *values );
1235 GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLint mapsize,
1236 const GLushort *values );
1237
1238 GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values );
1239 GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values );
1240 GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values );
1241
1242 GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height,
1243 GLfloat xorig, GLfloat yorig,
1244 GLfloat xmove, GLfloat ymove,
1245 const GLubyte *bitmap );
1246
1247 GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y,
1248 GLsizei width, GLsizei height,
1249 GLenum format, GLenum type,
1250 GLvoid *pixels );
1251
1252 GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height,
1253 GLenum format, GLenum type,
1254 const GLvoid *pixels );
1255
1528 GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level,
1529 GLint internalFormat,
1530 GLsizei width, GLsizei height,
1531 GLsizei depth, GLint border,
1532 GLenum format, GLenum type,
1533 const GLvoid *pixels );
1534
1535 GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level,
1536 GLint xoffset, GLint yoffset,
1537 GLint zoffset, GLsizei width,
1538 GLsizei height, GLsizei depth,
1539 GLenum format,
1540 GLenum type, const GLvoid *pixels);
1541
1542 GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level,
1543 GLint xoffset, GLint yoffset,
1544 GLint zoffset, GLint x,
1545 GLint y, GLsizei width,
1546 GLsizei height );
1547
1548 typedef void (APIENTRY * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
1549 typedef void (APIENTRY * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
1550 typedef void (APIENTRY * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
1551 typedef void (APIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
1552
1553
1554 /*
1555 * GL_ARB_imaging
1556 */
1557
1558 #define GL_CONSTANT_COLOR 0x8001
1559 #define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
1560 #define GL_CONSTANT_ALPHA 0x8003
1561 #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
1562 #define GL_COLOR_TABLE 0x80D0
1563 #define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
1564 #define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
1565 #define GL_PROXY_COLOR_TABLE 0x80D3
1566 #define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
1567 #define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
1568 #define GL_COLOR_TABLE_SCALE 0x80D6
1569 #define GL_COLOR_TABLE_BIAS 0x80D7
1570 #define GL_COLOR_TABLE_FORMAT 0x80D8
1571 #define GL_COLOR_TABLE_WIDTH 0x80D9
1723 GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target,
1724 GLenum internalformat, GLint x, GLint y, GLsizei width,
1725 GLsizei height);
1726
1727 GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format,
1728 GLenum type, GLvoid *image );
1729
1730 GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname,
1731 GLfloat *params );
1732
1733 GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname,
1734 GLint *params );
1735
1736 GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target,
1737 GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
1738 GLenum type, const GLvoid *row, const GLvoid *column );
1739
1740 GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format,
1741 GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
1742
1743 typedef void (APIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
1744 typedef void (APIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode);
1745 typedef void (APIENTRY * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
1746 typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
1747 typedef void (APIENTRY * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
1748 typedef void (APIENTRY * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
1749 typedef void (APIENTRY * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table);
1750 typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1751 typedef void (APIENTRY * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1752 typedef void (APIENTRY * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
1753 typedef void (APIENTRY * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
1754 typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
1755 typedef void (APIENTRY * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
1756 typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params);
1757 typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
1758 typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params);
1759 typedef void (APIENTRY * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
1760 typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
1761 typedef void (APIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
1762 typedef void (APIENTRY * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image);
1763 typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1764 typedef void (APIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1765 typedef void (APIENTRY * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
1766 typedef void (APIENTRY * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
1767 typedef void (APIENTRY * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
1768 typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1769 typedef void (APIENTRY * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1770 typedef void (APIENTRY * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
1771 typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1772 typedef void (APIENTRY * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1773 typedef void (APIENTRY * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
1774 typedef void (APIENTRY * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink);
1775 typedef void (APIENTRY * PFNGLRESETHISTOGRAMPROC) (GLenum target);
1776 typedef void (APIENTRY * PFNGLRESETMINMAXPROC) (GLenum target);
1777
1778
1779
1780 /*
1781 * OpenGL 1.3
1782 */
1783
1784 /* multitexture */
1785 #define GL_TEXTURE0 0x84C0
1786 #define GL_TEXTURE1 0x84C1
1787 #define GL_TEXTURE2 0x84C2
1788 #define GL_TEXTURE3 0x84C3
1789 #define GL_TEXTURE4 0x84C4
1790 #define GL_TEXTURE5 0x84C5
1791 #define GL_TEXTURE6 0x84C6
1792 #define GL_TEXTURE7 0x84C7
1793 #define GL_TEXTURE8 0x84C8
1794 #define GL_TEXTURE9 0x84C9
1795 #define GL_TEXTURE10 0x84CA
1796 #define GL_TEXTURE11 0x84CB
1962
1963 GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q );
1964
1965 GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v );
1966
1967 GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q );
1968
1969 GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v );
1970
1971
1972 GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] );
1973
1974 GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] );
1975
1976 GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] );
1977
1978 GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] );
1979
1980 GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert );
1981
1982 typedef void (APIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture);
1983 typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture);
1984 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s);
1985 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v);
1986 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s);
1987 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v);
1988 typedef void (APIENTRY * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s);
1989 typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v);
1990 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s);
1991 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v);
1992 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t);
1993 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v);
1994 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
1995 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v);
1996 typedef void (APIENTRY * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t);
1997 typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v);
1998 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t);
1999 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v);
2000 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
2001 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v);
2002 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
2003 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v);
2004 typedef void (APIENTRY * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r);
2005 typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v);
2006 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
2007 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v);
2008 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
2009 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v);
2010 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2011 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v);
2012 typedef void (APIENTRY * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
2013 typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v);
2014 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
2015 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v);
2016 typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat *m);
2017 typedef void (APIENTRY * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble *m);
2018 typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat *m);
2019 typedef void (APIENTRY * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble *m);
2020 typedef void (APIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert);
2021 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
2022 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
2023 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
2024 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
2025 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
2026 typedef void (APIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
2027 typedef void (APIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, void *img);
2028
2029
2030 /*
2031 * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1)
2032 */
2033 #ifndef GL_ARB_multitexture
2034 #define GL_ARB_multitexture 1
2035
2036 #define GL_TEXTURE0_ARB 0x84C0
2037 #define GL_TEXTURE1_ARB 0x84C1
2038 #define GL_TEXTURE2_ARB 0x84C2
2039 #define GL_TEXTURE3_ARB 0x84C3
2040 #define GL_TEXTURE4_ARB 0x84C4
2041 #define GL_TEXTURE5_ARB 0x84C5
2042 #define GL_TEXTURE6_ARB 0x84C6
2043 #define GL_TEXTURE7_ARB 0x84C7
2044 #define GL_TEXTURE8_ARB 0x84C8
2045 #define GL_TEXTURE9_ARB 0x84C9
2046 #define GL_TEXTURE10_ARB 0x84CA
2047 #define GL_TEXTURE11_ARB 0x84CB
2087 GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v);
2088 GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t);
2089 GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v);
2090 GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r);
2091 GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v);
2092 GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r);
2093 GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v);
2094 GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r);
2095 GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v);
2096 GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r);
2097 GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v);
2098 GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
2099 GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v);
2100 GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2101 GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v);
2102 GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q);
2103 GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v);
2104 GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
2105 GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v);
2106
2107 typedef void (APIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture);
2108 typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);
2109 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
2110 typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
2111 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
2112 typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
2113 typedef void (APIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
2114 typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
2115 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
2116 typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
2117 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
2118 typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
2119 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
2120 typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
2121 typedef void (APIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
2122 typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
2123 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
2124 typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
2125 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
2126 typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
2127 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
2128 typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
2129 typedef void (APIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
2130 typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
2131 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
2132 typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
2133 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
2134 typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
2135 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2136 typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
2137 typedef void (APIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
2138 typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
2139 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
2140 typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
2141
2142 #endif /* GL_ARB_multitexture */
2143
2144
2145
2146 /*
2147 * Define this token if you want "old-style" header file behaviour (extensions
2148 * defined in gl.h). Otherwise, extensions will be included from glext.h.
2149 */
2150 #if defined(GL_GLEXT_LEGACY)
2151
2152
2153 /*
2154 * 1. GL_EXT_abgr
2155 */
2156 #ifndef GL_EXT_abgr
2157 #define GL_EXT_abgr 1
2158
2159 #define GL_ABGR_EXT 0x8000
2160
2161 #endif /* GL_EXT_abgr */
2162
2163
2164
2165 /*
2166 * 2. GL_EXT_blend_color
2167 */
2168 #ifndef GL_EXT_blend_color
2169 #define GL_EXT_blend_color 1
2170
2171 #define GL_CONSTANT_COLOR_EXT 0x8001
2172 #define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002
2173 #define GL_CONSTANT_ALPHA_EXT 0x8003
2174 #define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004
2175 #define GL_BLEND_COLOR_EXT 0x8005
2176
2177 GLAPI void GLAPIENTRY glBlendColorEXT( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha );
2178
2179 #endif /* GL_EXT_blend_color */
2180
2181
2182
2183 /*
2184 * 3. GL_EXT_polygon_offset
2185 */
2186 #ifndef GL_EXT_polygon_offset
2187 #define GL_EXT_polygon_offset 1
2188
2189 #define GL_POLYGON_OFFSET_EXT 0x8037
2190 #define GL_POLYGON_OFFSET_FACTOR_EXT 0x8038
2191 #define GL_POLYGON_OFFSET_BIAS_EXT 0x8039
2192
2193 GLAPI void GLAPIENTRY glPolygonOffsetEXT( GLfloat factor, GLfloat bias );
2194
2195 #endif /* GL_EXT_polygon_offset */
2196
2197
2198
2199 /*
2200 * 6. GL_EXT_texture3D
2201 */
2202 #ifndef GL_EXT_texture3D
2203 #define GL_EXT_texture3D 1
2204
2205 #define GL_PACK_SKIP_IMAGES_EXT 0x806B
2206 #define GL_PACK_IMAGE_HEIGHT_EXT 0x806C
2207 #define GL_UNPACK_SKIP_IMAGES_EXT 0x806D
2208 #define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E
2209 #define GL_TEXTURE_3D_EXT 0x806F
2210 #define GL_PROXY_TEXTURE_3D_EXT 0x8070
2211 #define GL_TEXTURE_DEPTH_EXT 0x8071
2212 #define GL_TEXTURE_WRAP_R_EXT 0x8072
2213 #define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073
2214 #define GL_TEXTURE_3D_BINDING_EXT 0x806A
2215
2216 GLAPI void GLAPIENTRY glTexImage3DEXT( GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels );
2217
2218 GLAPI void GLAPIENTRY glTexSubImage3DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
2219
2220 GLAPI void GLAPIENTRY glCopyTexSubImage3DEXT( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height );
2221
2222 #endif /* GL_EXT_texture3D */
2223
2224
2225
2226 /*
2227 * 20. GL_EXT_texture_object
2228 */
2229 #ifndef GL_EXT_texture_object
2230 #define GL_EXT_texture_object 1
2231
2232 #define GL_TEXTURE_PRIORITY_EXT 0x8066
2233 #define GL_TEXTURE_RESIDENT_EXT 0x8067
2234 #define GL_TEXTURE_1D_BINDING_EXT 0x8068
2235 #define GL_TEXTURE_2D_BINDING_EXT 0x8069
2236
2237 GLAPI void GLAPIENTRY glGenTexturesEXT( GLsizei n, GLuint *textures );
2238
2239 GLAPI void GLAPIENTRY glDeleteTexturesEXT( GLsizei n, const GLuint *textures);
2240
2241 GLAPI void GLAPIENTRY glBindTextureEXT( GLenum target, GLuint texture );
2242
2243 GLAPI void GLAPIENTRY glPrioritizeTexturesEXT( GLsizei n, const GLuint *textures, const GLclampf *priorities );
2244
2245 GLAPI GLboolean GLAPIENTRY glAreTexturesResidentEXT( GLsizei n, const GLuint *textures, GLboolean *residences );
2246
2247 GLAPI GLboolean GLAPIENTRY glIsTextureEXT( GLuint texture );
2248
2249 #endif /* GL_EXT_texture_object */
2250
2251
2252
2253 /*
2254 * 27. GL_EXT_rescale_normal
2255 */
2256 #ifndef GL_EXT_rescale_normal
2257 #define GL_EXT_rescale_normal 1
2258
2259 #define GL_RESCALE_NORMAL_EXT 0x803A
2260
2261 #endif /* GL_EXT_rescale_normal */
2262
2263
2264
2265 /*
2266 * 30. GL_EXT_vertex_array
2267 */
2268 #ifndef GL_EXT_vertex_array
2269 #define GL_EXT_vertex_array 1
2270
2271 #define GL_VERTEX_ARRAY_EXT 0x8074
2272 #define GL_NORMAL_ARRAY_EXT 0x8075
2273 #define GL_COLOR_ARRAY_EXT 0x8076
2274 #define GL_INDEX_ARRAY_EXT 0x8077
2275 #define GL_TEXTURE_COORD_ARRAY_EXT 0x8078
2276 #define GL_EDGE_FLAG_ARRAY_EXT 0x8079
2277 #define GL_VERTEX_ARRAY_SIZE_EXT 0x807A
2278 #define GL_VERTEX_ARRAY_TYPE_EXT 0x807B
2279 #define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C
2280 #define GL_VERTEX_ARRAY_COUNT_EXT 0x807D
2281 #define GL_NORMAL_ARRAY_TYPE_EXT 0x807E
2282 #define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F
2283 #define GL_NORMAL_ARRAY_COUNT_EXT 0x8080
2284 #define GL_COLOR_ARRAY_SIZE_EXT 0x8081
2285 #define GL_COLOR_ARRAY_TYPE_EXT 0x8082
2286 #define GL_COLOR_ARRAY_STRIDE_EXT 0x8083
2287 #define GL_COLOR_ARRAY_COUNT_EXT 0x8084
2288 #define GL_INDEX_ARRAY_TYPE_EXT 0x8085
2289 #define GL_INDEX_ARRAY_STRIDE_EXT 0x8086
2290 #define GL_INDEX_ARRAY_COUNT_EXT 0x8087
2291 #define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088
2292 #define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089
2293 #define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A
2294 #define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B
2295 #define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C
2296 #define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D
2297 #define GL_VERTEX_ARRAY_POINTER_EXT 0x808E
2298 #define GL_NORMAL_ARRAY_POINTER_EXT 0x808F
2299 #define GL_COLOR_ARRAY_POINTER_EXT 0x8090
2300 #define GL_INDEX_ARRAY_POINTER_EXT 0x8091
2301 #define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092
2302 #define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093
2303
2304 GLAPI void GLAPIENTRY glVertexPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *ptr );
2305
2306 GLAPI void GLAPIENTRY glNormalPointerEXT( GLenum type, GLsizei stride, GLsizei count, const GLvoid *ptr );
2307
2308 GLAPI void GLAPIENTRY glColorPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *ptr );
2309
2310 GLAPI void GLAPIENTRY glIndexPointerEXT( GLenum type, GLsizei stride, GLsizei count, const GLvoid *ptr );
2311
2312 GLAPI void GLAPIENTRY glTexCoordPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *ptr );
2313
2314 GLAPI void GLAPIENTRY glEdgeFlagPointerEXT( GLsizei stride, GLsizei count, const GLboolean *ptr );
2315
2316 GLAPI void GLAPIENTRY glGetPointervEXT( GLenum pname, GLvoid **params );
2317
2318 GLAPI void GLAPIENTRY glArrayElementEXT( GLint i );
2319
2320 GLAPI void GLAPIENTRY glDrawArraysEXT( GLenum mode, GLint first, GLsizei count );
2321
2322 #endif /* GL_EXT_vertex_array */
2323
2324
2325
2326 /*
2327 * 35. GL_SGIS_texture_edge_clamp
2328 */
2329 #ifndef GL_SGIS_texture_edge_clamp
2330 #define GL_SGIS_texture_edge_clamp 1
2331
2332 #define GL_CLAMP_TO_EDGE_SGIS 0x812F
2333
2334 #endif /* GL_SGIS_texture_edge_clamp */
2335
2336
2337
2338 /*
2339 * 37. GL_EXT_blend_minmax
2340 */
2341 #ifndef GL_EXT_blend_minmax
2342 #define GL_EXT_blend_minmax 1
2343
2344 #define GL_FUNC_ADD_EXT 0x8006
2345 #define GL_MIN_EXT 0x8007
2346 #define GL_MAX_EXT 0x8008
2347 #define GL_BLEND_EQUATION_EXT 0x8009
2348
2349 GLAPI void GLAPIENTRY glBlendEquationEXT( GLenum mode );
2350
2351 #endif /* GL_EXT_blend_minmax */
2352
2353
2354
2355 /*
2356 * 38. GL_EXT_blend_subtract (requires GL_EXT_blend_max )
2357 */
2358 #ifndef GL_EXT_blend_subtract
2359 #define GL_EXT_blend_subtract 1
2360
2361 #define GL_FUNC_SUBTRACT_EXT 0x800A
2362 #define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B
2363
2364 #endif /* GL_EXT_blend_subtract */
2365
2366
2367
2368 /*
2369 * 39. GL_EXT_blend_logic_op
2370 */
2371 #ifndef GL_EXT_blend_logic_op
2372 #define GL_EXT_blend_logic_op 1
2373
2374 /* No new tokens or functions */
2375
2376 #endif /* GL_EXT_blend_logic_op */
2377
2378
2379
2380 /*
2381 * 54. GL_EXT_point_parameters
2382 */
2383 #ifndef GL_EXT_point_parameters
2384 #define GL_EXT_point_parameters 1
2385
2386 #define GL_POINT_SIZE_MIN_EXT 0x8126
2387 #define GL_POINT_SIZE_MAX_EXT 0x8127
2388 #define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128
2389 #define GL_DISTANCE_ATTENUATION_EXT 0x8129
2390
2391 GLAPI void GLAPIENTRY glPointParameterfEXT( GLenum pname, GLfloat param );
2392 GLAPI void GLAPIENTRY glPointParameterfvEXT( GLenum pname, const GLfloat *params );
2393 GLAPI void GLAPIENTRY glPointParameterfSGIS(GLenum pname, GLfloat param);
2394 GLAPI void GLAPIENTRY glPointParameterfvSGIS(GLenum pname, const GLfloat *params);
2395
2396 #endif /* GL_EXT_point_parameters */
2397
2398
2399
2400 /*
2401 * 78. GL_EXT_paletted_texture
2402 */
2403 #ifndef GL_EXT_paletted_texture
2404 #define GL_EXT_paletted_texture 1
2405
2406 #define GL_TABLE_TOO_LARGE_EXT 0x8031
2407 #define GL_COLOR_TABLE_FORMAT_EXT 0x80D8
2408 #define GL_COLOR_TABLE_WIDTH_EXT 0x80D9
2409 #define GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA
2410 #define GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB
2411 #define GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC
2412 #define GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD
2413 #define GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE
2414 #define GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF
2415 #define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED
2416 #define GL_COLOR_INDEX1_EXT 0x80E2
2417 #define GL_COLOR_INDEX2_EXT 0x80E3
2418 #define GL_COLOR_INDEX4_EXT 0x80E4
2419 #define GL_COLOR_INDEX8_EXT 0x80E5
2420 #define GL_COLOR_INDEX12_EXT 0x80E6
2421 #define GL_COLOR_INDEX16_EXT 0x80E7
2422
2423 GLAPI void GLAPIENTRY glColorTableEXT( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table );
2424
2425 GLAPI void GLAPIENTRY glColorSubTableEXT( GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data );
2426
2427 GLAPI void GLAPIENTRY glGetColorTableEXT( GLenum target, GLenum format, GLenum type, GLvoid *table );
2428
2429 GLAPI void GLAPIENTRY glGetColorTableParameterfvEXT( GLenum target, GLenum pname, GLfloat *params );
2430
2431 GLAPI void GLAPIENTRY glGetColorTableParameterivEXT( GLenum target, GLenum pname, GLint *params );
2432
2433 #endif /* GL_EXT_paletted_texture */
2434
2435
2436
2437 /*
2438 * 79. GL_EXT_clip_volume_hint
2439 */
2440 #ifndef GL_EXT_clip_volume_hint
2441 #define GL_EXT_clip_volume_hint 1
2442
2443 #define GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0
2444
2445 #endif /* GL_EXT_clip_volume_hint */
2446
2447
2448
2449 /*
2450 * 97. GL_EXT_compiled_vertex_array
2451 */
2452 #ifndef GL_EXT_compiled_vertex_array
2453 #define GL_EXT_compiled_vertex_array 1
2454
2455 #define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8
2456 #define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9
2457
2458 GLAPI void GLAPIENTRY glLockArraysEXT( GLint first, GLsizei count );
2459 GLAPI void GLAPIENTRY glUnlockArraysEXT( void );
2460
2461 #endif /* GL_EXT_compiled_vertex_array */
2462
2463 /*
2464 * 137. GL_HP_occlusion_test
2465 */
2466 #ifndef GL_HP_occlusion_test
2467 #define GL_HP_occlusion_test 1
2468
2469 #define GL_OCCLUSION_TEST_HP 0x8165
2470 #define GL_OCCLUSION_TEST_RESULT_HP 0x8166
2471
2472 #endif /* GL_HP_occlusion_test */
2473
2474
2475 /*
2476 * 141. GL_EXT_shared_texture_palette (req's GL_EXT_paletted_texture)
2477 */
2478 #ifndef GL_EXT_shared_texture_palette
2479 #define GL_EXT_shared_texture_palette 1
2480
2481 #define GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB
2482
2483 #endif /* GL_EXT_shared_texture_palette */
2484
2485
2486
2487 /*
2488 * 176. GL_EXT_stencil_wrap
2489 */
2490 #ifndef GL_EXT_stencil_wrap
2491 #define GL_EXT_stencil_wrap 1
2492
2493 #define GL_INCR_WRAP_EXT 0x8507
2494 #define GL_DECR_WRAP_EXT 0x8508
2495
2496 #endif /* GL_EXT_stencil_wrap */
2497
2498
2499
2500 /*
2501 * 179. GL_NV_texgen_reflection
2502 */
2503 #ifndef GL_NV_texgen_reflection
2504 #define GL_NV_texgen_reflection 1
2505
2506 #define GL_NORMAL_MAP_NV 0x8511
2507 #define GL_REFLECTION_MAP_NV 0x8512
2508
2509 #endif /* GL_NV_texgen_reflection */
2510
2511
2512
2513 /*
2514 * 185. GL_EXT_texture_env_add
2515 */
2516 #ifndef GL_EXT_texture_env_add
2517 #define GL_EXT_texture_env_add 1
2518
2519 /* No new tokens or functions */
2520
2521 #endif /* GL_EXT_texture_env_add */
2522
2523
2524
2525 /*
2526 * 197. GL_MESA_window_pos
2527 */
2528 #ifndef GL_MESA_window_pos
2529 #define GL_MESA_window_pos 1
2530
2531 GLAPI void GLAPIENTRY glWindowPos2iMESA( GLint x, GLint y );
2532 GLAPI void GLAPIENTRY glWindowPos2sMESA( GLshort x, GLshort y );
2533 GLAPI void GLAPIENTRY glWindowPos2fMESA( GLfloat x, GLfloat y );
2534 GLAPI void GLAPIENTRY glWindowPos2dMESA( GLdouble x, GLdouble y );
2535 GLAPI void GLAPIENTRY glWindowPos2ivMESA( const GLint *p );
2536 GLAPI void GLAPIENTRY glWindowPos2svMESA( const GLshort *p );
2537 GLAPI void GLAPIENTRY glWindowPos2fvMESA( const GLfloat *p );
2538 GLAPI void GLAPIENTRY glWindowPos2dvMESA( const GLdouble *p );
2539 GLAPI void GLAPIENTRY glWindowPos3iMESA( GLint x, GLint y, GLint z );
2540 GLAPI void GLAPIENTRY glWindowPos3sMESA( GLshort x, GLshort y, GLshort z );
2541 GLAPI void GLAPIENTRY glWindowPos3fMESA( GLfloat x, GLfloat y, GLfloat z );
2542 GLAPI void GLAPIENTRY glWindowPos3dMESA( GLdouble x, GLdouble y, GLdouble z );
2543 GLAPI void GLAPIENTRY glWindowPos3ivMESA( const GLint *p );
2544 GLAPI void GLAPIENTRY glWindowPos3svMESA( const GLshort *p );
2545 GLAPI void GLAPIENTRY glWindowPos3fvMESA( const GLfloat *p );
2546 GLAPI void GLAPIENTRY glWindowPos3dvMESA( const GLdouble *p );
2547 GLAPI void GLAPIENTRY glWindowPos4iMESA( GLint x, GLint y, GLint z, GLint w );
2548 GLAPI void GLAPIENTRY glWindowPos4sMESA( GLshort x, GLshort y, GLshort z, GLshort w );
2549 GLAPI void GLAPIENTRY glWindowPos4fMESA( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
2550 GLAPI void GLAPIENTRY glWindowPos4dMESA( GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2551 GLAPI void GLAPIENTRY glWindowPos4ivMESA( const GLint *p );
2552 GLAPI void GLAPIENTRY glWindowPos4svMESA( const GLshort *p );
2553 GLAPI void GLAPIENTRY glWindowPos4fvMESA( const GLfloat *p );
2554 GLAPI void GLAPIENTRY glWindowPos4dvMESA( const GLdouble *p );
2555
2556 #endif /* GL_MESA_window_pos */
2557
2558
2559
2560 /*
2561 * 196. GL_MESA_resize_bufffers
2562 */
2563 #ifndef GL_MESA_resize_bufffers
2564 #define GL_MESA_resize_buffers 1
2565
2566 GLAPI void GLAPIENTRY glResizeBuffersMESA( void );
2567
2568 #endif /* GL_MESA_resize_bufffers */
2569
2570
2571
2572 /*
2573 * 220. GL_EXT_texture_env_dot3
2574 */
2575 #ifndef GL_EXT_texture_env_dot3
2576 #define GL_EXT_texture_env_dot3 1
2577
2578 #define GL_DOT3_RGB_EXT 0x8740
2579 #define GL_DOT3_RGBA_EXT 0x8741
2580
2581 #endif /* GL_EXT_texture_env_dot3 */
2582
2583
2584 #else /* GL_GLEXT_LEGACY */
2585
2586 /* modified for inclusion in Java 2D source tree */
2587 /* #include <GL/glext.h> */
2588 #include "J2D_GL/glext.h"
2589
2590 #endif /* GL_GLEXT_LEGACY */
2591
2592
2593
2594 /*
2595 * ???. GL_MESA_trace
2596 * XXX obsolete
2597 */
2598 #ifndef GL_MESA_trace
2599 #define GL_MESA_trace 1
2600
2601 #define GL_TRACE_ALL_BITS_MESA 0xFFFF
2602 #define GL_TRACE_OPERATIONS_BIT_MESA 0x0001
2603 #define GL_TRACE_PRIMITIVES_BIT_MESA 0x0002
2604 #define GL_TRACE_ARRAYS_BIT_MESA 0x0004
2605 #define GL_TRACE_TEXTURES_BIT_MESA 0x0008
2606 #define GL_TRACE_PIXELS_BIT_MESA 0x0010
2607 #define GL_TRACE_ERRORS_BIT_MESA 0x0020
2608 #define GL_TRACE_MASK_MESA 0x8755
2609 #define GL_TRACE_NAME_MESA 0x8756
2610
2611 GLAPI void GLAPIENTRY glEnableTraceMESA( GLbitfield mask );
2612 GLAPI void GLAPIENTRY glDisableTraceMESA( GLbitfield mask );
2613 GLAPI void GLAPIENTRY glNewTraceMESA( GLbitfield mask, const GLubyte * traceName );
2614 GLAPI void GLAPIENTRY glEndTraceMESA( void );
2615 GLAPI void GLAPIENTRY glTraceAssertAttribMESA( GLbitfield attribMask );
2616 GLAPI void GLAPIENTRY glTraceCommentMESA( const GLubyte * comment );
2617 GLAPI void GLAPIENTRY glTraceTextureMESA( GLuint name, const GLubyte* comment );
2618 GLAPI void GLAPIENTRY glTraceListMESA( GLuint name, const GLubyte* comment );
2619 GLAPI void GLAPIENTRY glTracePointerMESA( GLvoid* pointer, const GLubyte* comment );
2620 GLAPI void GLAPIENTRY glTracePointerRangeMESA( const GLvoid* first, const GLvoid* last, const GLubyte* comment );
2621
2622 #endif /* GL_MESA_trace */
2623
2624
2625 /*
2626 * ???. GL_MESA_packed_depth_stencil
2627 * XXX obsolete
2628 */
2629 #ifndef GL_MESA_packed_depth_stencil
2630 #define GL_MESA_packed_depth_stencil 1
2631
2632 #define GL_DEPTH_STENCIL_MESA 0x8750
2633 #define GL_UNSIGNED_INT_24_8_MESA 0x8751
2634 #define GL_UNSIGNED_INT_8_24_REV_MESA 0x8752
2635 #define GL_UNSIGNED_SHORT_15_1_MESA 0x8753
2636 #define GL_UNSIGNED_SHORT_1_15_REV_MESA 0x8754
2637
2638 #endif /* GL_MESA_packed_depth_stencil */
2639
2640
2641 #ifndef GL_MESA_ycbcr_texture
2642 #define GL_MESA_ycbcr_texture 1
2643
2644 #define GL_YCBCR_MESA 0x8757
2645 #define GL_UNSIGNED_SHORT_8_8_MESA 0x85BA /* same as Apple */
2646 #define GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB /* same as Apple */
2647
2648 #endif /* GL_MESA_texture_ycbcr */
2649
2650
2651
2652 #ifndef GL_MESA_pack_invert
2653 #define GL_MESA_pack_invert 1
2654
2655 #define GL_PACK_INVERT_MESA 0x8758
2656
2657 #endif /* GL_MESA_pack_invert */
2658
2659
2660
2661 #ifndef GL_APPLE_client_storage
2662 #define GL_APPLE_client_storage 1
2663
2664 #define GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2
2665
2666 #endif /* GL_APPLE_client_storage */
2667
2668
2669
2670 #ifndef GL_APPLE_ycbcr_422
2671 #define GL_APPLE_ycbcr_422 1
2672
2673 #define GL_YCBCR_422_APPLE 0x85B9
2674 #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
2675 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
2676
2677 #endif /* GL_APPLE_ycbcr_422 */
2678
2679
2680
2681 /**********************************************************************
2682 * Begin system-specific stuff
2683 */
2684 #if defined(PRAGMA_EXPORT_SUPPORTED)
2685 #pragma export off
2686 #endif
2687
2688 #if defined(macintosh) && PRAGMA_IMPORT_SUPPORTED
2689 #pragma import off
2690 #endif
2691 /*
2692 * End system-specific stuff
2693 **********************************************************************/
2694
2695
2696 #ifdef __cplusplus
2697 }
2698 #endif
2699
2700 #endif /* __gl_h_ */
|
5 * under the terms of the GNU General Public License version 2 only, as
6 * published by the Free Software Foundation. Oracle designates this
7 * particular file as subject to the "Classpath" exception as provided
8 * by Oracle in the LICENSE file that accompanied this code.
9 *
10 * This code is distributed in the hope that it will be useful, but WITHOUT
11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 * version 2 for more details (a copy is included in the LICENSE file that
14 * accompanied this code).
15 *
16 * You should have received a copy of the GNU General Public License version
17 * 2 along with this work; if not, write to the Free Software Foundation,
18 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19 *
20 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21 * or visit www.oracle.com if you need additional information or have any
22 * questions.
23 */
24
25 /*
26 * This file is available under and governed by the GNU General Public
27 * License version 2 only, as published by the Free Software Foundation.
28 * However, the following notice accompanied the original version of this
29 * file:
30 *
31 * Mesa 3-D graphics library
32 *
33 * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
34 * Copyright (C) 2009 VMware, Inc. All Rights Reserved.
35 *
36 * Permission is hereby granted, free of charge, to any person obtaining a
37 * copy of this software and associated documentation files (the "Software"),
38 * to deal in the Software without restriction, including without limitation
39 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
40 * and/or sell copies of the Software, and to permit persons to whom the
41 * Software is furnished to do so, subject to the following conditions:
42 *
43 * The above copyright notice and this permission notice shall be included
44 * in all copies or substantial portions of the Software.
45 *
46 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
47 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
48 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
49 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
50 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
51 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
52 * OTHER DEALINGS IN THE SOFTWARE.
53 */
54
55
56 #ifndef __gl_h_
57 #define __gl_h_
58
59 #if defined(USE_MGL_NAMESPACE)
60 #include "gl_mangle.h"
61 #endif
62
63
64 /**********************************************************************
65 * Begin system-specific stuff.
66 */
67
68 #if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__)
69 #define __WIN32__
70 #endif
71
72 #if defined(__WIN32__) && !defined(__CYGWIN__)
73 # if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */
74 # define GLAPI __declspec(dllexport)
75 # elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */
76 # define GLAPI __declspec(dllimport)
77 # else /* for use with static link lib build of Win32 edition only */
78 # define GLAPI extern
79 # endif
80 # if defined(__MINGW32__) && defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by MingW with STDCALL are not compatible with the ones done by Microsoft's compilers */
81 # define GLAPIENTRY
82 # else
83 # define GLAPIENTRY __stdcall
84 # endif
85 #elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */
86 # define GLAPI extern
87 # define GLAPIENTRY __stdcall
88 #elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
89 # define GLAPI __attribute__((visibility("default")))
90 # define GLAPIENTRY
91 #endif /* WIN32 && !CYGWIN */
92
93 /*
94 * WINDOWS: Include windows.h here to define APIENTRY.
95 * It is also useful when applications include this file by
96 * including only glut.h, since glut.h depends on windows.h.
97 * Applications needing to include windows.h with parms other
98 * than "WIN32_LEAN_AND_MEAN" may include windows.h before
99 * glut.h or gl.h.
100 */
101 #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__)
102 #ifndef WIN32_LEAN_AND_MEAN
103 #define WIN32_LEAN_AND_MEAN 1
104 #endif
105 #include <windows.h>
106 #endif
107
108 #ifndef GLAPI
109 #define GLAPI extern
110 #endif
111
112 #ifndef GLAPIENTRY
113 #define GLAPIENTRY
114 #endif
115
116 #ifndef APIENTRY
117 #define APIENTRY GLAPIENTRY
118 #endif
119
120 /* "P" suffix to be used for a pointer to a function */
121 #ifndef APIENTRYP
122 #define APIENTRYP APIENTRY *
123 #endif
124
125 #ifndef GLAPIENTRYP
126 #define GLAPIENTRYP GLAPIENTRY *
127 #endif
128
129 /*
130 * End system-specific stuff.
131 **********************************************************************/
132
133
134
135 #ifdef __cplusplus
136 extern "C" {
137 #endif
138
139
140
141 #define GL_VERSION_1_1 1
142 #define GL_VERSION_1_2 1
143 #define GL_VERSION_1_3 1
144 #define GL_ARB_imaging 1
145
146
153 typedef void GLvoid;
154 typedef signed char GLbyte; /* 1-byte signed */
155 typedef short GLshort; /* 2-byte signed */
156 typedef int GLint; /* 4-byte signed */
157 typedef unsigned char GLubyte; /* 1-byte unsigned */
158 typedef unsigned short GLushort; /* 2-byte unsigned */
159 typedef unsigned int GLuint; /* 4-byte unsigned */
160 typedef int GLsizei; /* 4-byte signed */
161 typedef float GLfloat; /* single precision float */
162 typedef float GLclampf; /* single precision float in [0,1] */
163 typedef double GLdouble; /* double precision float */
164 typedef double GLclampd; /* double precision float in [0,1] */
165
166
167
168 /*
169 * Constants
170 */
171
172 /* Boolean values */
173 #define GL_FALSE 0
174 #define GL_TRUE 1
175
176 /* Data types */
177 #define GL_BYTE 0x1400
178 #define GL_UNSIGNED_BYTE 0x1401
179 #define GL_SHORT 0x1402
180 #define GL_UNSIGNED_SHORT 0x1403
181 #define GL_INT 0x1404
182 #define GL_UNSIGNED_INT 0x1405
183 #define GL_FLOAT 0x1406
184 #define GL_2_BYTES 0x1407
185 #define GL_3_BYTES 0x1408
186 #define GL_4_BYTES 0x1409
187 #define GL_DOUBLE 0x140A
188
189 /* Primitives */
190 #define GL_POINTS 0x0000
191 #define GL_LINES 0x0001
192 #define GL_LINE_LOOP 0x0002
193 #define GL_LINE_STRIP 0x0003
194 #define GL_TRIANGLES 0x0004
195 #define GL_TRIANGLE_STRIP 0x0005
196 #define GL_TRIANGLE_FAN 0x0006
197 #define GL_QUADS 0x0007
198 #define GL_QUAD_STRIP 0x0008
199 #define GL_POLYGON 0x0009
200
201 /* Vertex Arrays */
202 #define GL_VERTEX_ARRAY 0x8074
203 #define GL_NORMAL_ARRAY 0x8075
204 #define GL_COLOR_ARRAY 0x8076
205 #define GL_INDEX_ARRAY 0x8077
206 #define GL_TEXTURE_COORD_ARRAY 0x8078
207 #define GL_EDGE_FLAG_ARRAY 0x8079
354 #define GL_ACCUM_RED_BITS 0x0D58
355 #define GL_ACCUM_GREEN_BITS 0x0D59
356 #define GL_ACCUM_BLUE_BITS 0x0D5A
357 #define GL_ACCUM_ALPHA_BITS 0x0D5B
358 #define GL_ACCUM_CLEAR_VALUE 0x0B80
359 #define GL_ACCUM 0x0100
360 #define GL_ADD 0x0104
361 #define GL_LOAD 0x0101
362 #define GL_MULT 0x0103
363 #define GL_RETURN 0x0102
364
365 /* Alpha testing */
366 #define GL_ALPHA_TEST 0x0BC0
367 #define GL_ALPHA_TEST_REF 0x0BC2
368 #define GL_ALPHA_TEST_FUNC 0x0BC1
369
370 /* Blending */
371 #define GL_BLEND 0x0BE2
372 #define GL_BLEND_SRC 0x0BE1
373 #define GL_BLEND_DST 0x0BE0
374 #define GL_ZERO 0
375 #define GL_ONE 1
376 #define GL_SRC_COLOR 0x0300
377 #define GL_ONE_MINUS_SRC_COLOR 0x0301
378 #define GL_SRC_ALPHA 0x0302
379 #define GL_ONE_MINUS_SRC_ALPHA 0x0303
380 #define GL_DST_ALPHA 0x0304
381 #define GL_ONE_MINUS_DST_ALPHA 0x0305
382 #define GL_DST_COLOR 0x0306
383 #define GL_ONE_MINUS_DST_COLOR 0x0307
384 #define GL_SRC_ALPHA_SATURATE 0x0308
385
386 /* Render Mode */
387 #define GL_FEEDBACK 0x1C01
388 #define GL_RENDER 0x1C00
389 #define GL_SELECT 0x1C02
390
391 /* Feedback */
392 #define GL_2D 0x0600
393 #define GL_3D 0x0601
394 #define GL_3D_COLOR 0x0602
395 #define GL_3D_COLOR_TEXTURE 0x0603
428 #define GL_COLOR_LOGIC_OP 0x0BF2
429 #define GL_LOGIC_OP_MODE 0x0BF0
430 #define GL_CLEAR 0x1500
431 #define GL_SET 0x150F
432 #define GL_COPY 0x1503
433 #define GL_COPY_INVERTED 0x150C
434 #define GL_NOOP 0x1505
435 #define GL_INVERT 0x150A
436 #define GL_AND 0x1501
437 #define GL_NAND 0x150E
438 #define GL_OR 0x1507
439 #define GL_NOR 0x1508
440 #define GL_XOR 0x1506
441 #define GL_EQUIV 0x1509
442 #define GL_AND_REVERSE 0x1502
443 #define GL_AND_INVERTED 0x1504
444 #define GL_OR_REVERSE 0x150B
445 #define GL_OR_INVERTED 0x150D
446
447 /* Stencil */
448 #define GL_STENCIL_BITS 0x0D57
449 #define GL_STENCIL_TEST 0x0B90
450 #define GL_STENCIL_CLEAR_VALUE 0x0B91
451 #define GL_STENCIL_FUNC 0x0B92
452 #define GL_STENCIL_VALUE_MASK 0x0B93
453 #define GL_STENCIL_FAIL 0x0B94
454 #define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
455 #define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
456 #define GL_STENCIL_REF 0x0B97
457 #define GL_STENCIL_WRITEMASK 0x0B98
458 #define GL_STENCIL_INDEX 0x1901
459 #define GL_KEEP 0x1E00
460 #define GL_REPLACE 0x1E01
461 #define GL_INCR 0x1E02
462 #define GL_DECR 0x1E03
463
464 /* Buffers, Pixel Drawing/Reading */
465 #define GL_NONE 0
466 #define GL_LEFT 0x0406
467 #define GL_RIGHT 0x0407
468 /*GL_FRONT 0x0404 */
469 /*GL_BACK 0x0405 */
470 /*GL_FRONT_AND_BACK 0x0408 */
471 #define GL_FRONT_LEFT 0x0400
472 #define GL_FRONT_RIGHT 0x0401
473 #define GL_BACK_LEFT 0x0402
474 #define GL_BACK_RIGHT 0x0403
475 #define GL_AUX0 0x0409
476 #define GL_AUX1 0x040A
477 #define GL_AUX2 0x040B
478 #define GL_AUX3 0x040C
479 #define GL_COLOR_INDEX 0x1900
480 #define GL_RED 0x1903
481 #define GL_GREEN 0x1904
482 #define GL_BLUE 0x1905
483 #define GL_ALPHA 0x1906
484 #define GL_LUMINANCE 0x1909
485 #define GL_LUMINANCE_ALPHA 0x190A
487 #define GL_RED_BITS 0x0D52
488 #define GL_GREEN_BITS 0x0D53
489 #define GL_BLUE_BITS 0x0D54
490 #define GL_INDEX_BITS 0x0D51
491 #define GL_SUBPIXEL_BITS 0x0D50
492 #define GL_AUX_BUFFERS 0x0C00
493 #define GL_READ_BUFFER 0x0C02
494 #define GL_DRAW_BUFFER 0x0C01
495 #define GL_DOUBLEBUFFER 0x0C32
496 #define GL_STEREO 0x0C33
497 #define GL_BITMAP 0x1A00
498 #define GL_COLOR 0x1800
499 #define GL_DEPTH 0x1801
500 #define GL_STENCIL 0x1802
501 #define GL_DITHER 0x0BD0
502 #define GL_RGB 0x1907
503 #define GL_RGBA 0x1908
504
505 /* Implementation limits */
506 #define GL_MAX_LIST_NESTING 0x0B31
507 #define GL_MAX_EVAL_ORDER 0x0D30
508 #define GL_MAX_LIGHTS 0x0D31
509 #define GL_MAX_CLIP_PLANES 0x0D32
510 #define GL_MAX_TEXTURE_SIZE 0x0D33
511 #define GL_MAX_PIXEL_MAP_TABLE 0x0D34
512 #define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
513 #define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
514 #define GL_MAX_NAME_STACK_DEPTH 0x0D37
515 #define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
516 #define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
517 #define GL_MAX_VIEWPORT_DIMS 0x0D3A
518 #define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
519
520 /* Gets */
521 #define GL_ATTRIB_STACK_DEPTH 0x0BB0
522 #define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
523 #define GL_COLOR_CLEAR_VALUE 0x0C22
524 #define GL_COLOR_WRITEMASK 0x0C23
525 #define GL_CURRENT_INDEX 0x0B01
526 #define GL_CURRENT_COLOR 0x0B00
527 #define GL_CURRENT_NORMAL 0x0B02
528 #define GL_CURRENT_RASTER_COLOR 0x0B04
529 #define GL_CURRENT_RASTER_DISTANCE 0x0B09
530 #define GL_CURRENT_RASTER_INDEX 0x0B05
531 #define GL_CURRENT_RASTER_POSITION 0x0B07
532 #define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
533 #define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
534 #define GL_CURRENT_TEXTURE_COORDS 0x0B03
535 #define GL_INDEX_CLEAR_VALUE 0x0C20
536 #define GL_INDEX_MODE 0x0C30
554 #define GL_MAP1_TEXTURE_COORD_1 0x0D93
555 #define GL_MAP1_TEXTURE_COORD_2 0x0D94
556 #define GL_MAP1_TEXTURE_COORD_3 0x0D95
557 #define GL_MAP1_TEXTURE_COORD_4 0x0D96
558 #define GL_MAP1_VERTEX_3 0x0D97
559 #define GL_MAP1_VERTEX_4 0x0D98
560 #define GL_MAP2_COLOR_4 0x0DB0
561 #define GL_MAP2_INDEX 0x0DB1
562 #define GL_MAP2_NORMAL 0x0DB2
563 #define GL_MAP2_TEXTURE_COORD_1 0x0DB3
564 #define GL_MAP2_TEXTURE_COORD_2 0x0DB4
565 #define GL_MAP2_TEXTURE_COORD_3 0x0DB5
566 #define GL_MAP2_TEXTURE_COORD_4 0x0DB6
567 #define GL_MAP2_VERTEX_3 0x0DB7
568 #define GL_MAP2_VERTEX_4 0x0DB8
569 #define GL_MAP1_GRID_DOMAIN 0x0DD0
570 #define GL_MAP1_GRID_SEGMENTS 0x0DD1
571 #define GL_MAP2_GRID_DOMAIN 0x0DD2
572 #define GL_MAP2_GRID_SEGMENTS 0x0DD3
573 #define GL_COEFF 0x0A00
574 #define GL_ORDER 0x0A01
575 #define GL_DOMAIN 0x0A02
576
577 /* Hints */
578 #define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
579 #define GL_POINT_SMOOTH_HINT 0x0C51
580 #define GL_LINE_SMOOTH_HINT 0x0C52
581 #define GL_POLYGON_SMOOTH_HINT 0x0C53
582 #define GL_FOG_HINT 0x0C54
583 #define GL_DONT_CARE 0x1100
584 #define GL_FASTEST 0x1101
585 #define GL_NICEST 0x1102
586
587 /* Scissor box */
588 #define GL_SCISSOR_BOX 0x0C10
589 #define GL_SCISSOR_TEST 0x0C11
590
591 /* Pixel Mode / Transfer */
592 #define GL_MAP_COLOR 0x0D10
593 #define GL_MAP_STENCIL 0x0D11
594 #define GL_INDEX_SHIFT 0x0D12
595 #define GL_INDEX_OFFSET 0x0D13
596 #define GL_RED_SCALE 0x0D14
597 #define GL_RED_BIAS 0x0D15
598 #define GL_GREEN_SCALE 0x0D18
599 #define GL_GREEN_BIAS 0x0D19
600 #define GL_BLUE_SCALE 0x0D1A
601 #define GL_BLUE_BIAS 0x0D1B
602 #define GL_ALPHA_SCALE 0x0D1C
603 #define GL_ALPHA_BIAS 0x0D1D
604 #define GL_DEPTH_SCALE 0x0D1E
605 #define GL_DEPTH_BIAS 0x0D1F
606 #define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
607 #define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
608 #define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
609 #define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
633 #define GL_UNPACK_LSB_FIRST 0x0CF1
634 #define GL_UNPACK_ROW_LENGTH 0x0CF2
635 #define GL_UNPACK_SKIP_PIXELS 0x0CF4
636 #define GL_UNPACK_SKIP_ROWS 0x0CF3
637 #define GL_UNPACK_SWAP_BYTES 0x0CF0
638 #define GL_ZOOM_X 0x0D16
639 #define GL_ZOOM_Y 0x0D17
640
641 /* Texture mapping */
642 #define GL_TEXTURE_ENV 0x2300
643 #define GL_TEXTURE_ENV_MODE 0x2200
644 #define GL_TEXTURE_1D 0x0DE0
645 #define GL_TEXTURE_2D 0x0DE1
646 #define GL_TEXTURE_WRAP_S 0x2802
647 #define GL_TEXTURE_WRAP_T 0x2803
648 #define GL_TEXTURE_MAG_FILTER 0x2800
649 #define GL_TEXTURE_MIN_FILTER 0x2801
650 #define GL_TEXTURE_ENV_COLOR 0x2201
651 #define GL_TEXTURE_GEN_S 0x0C60
652 #define GL_TEXTURE_GEN_T 0x0C61
653 #define GL_TEXTURE_GEN_R 0x0C62
654 #define GL_TEXTURE_GEN_Q 0x0C63
655 #define GL_TEXTURE_GEN_MODE 0x2500
656 #define GL_TEXTURE_BORDER_COLOR 0x1004
657 #define GL_TEXTURE_WIDTH 0x1000
658 #define GL_TEXTURE_HEIGHT 0x1001
659 #define GL_TEXTURE_BORDER 0x1005
660 #define GL_TEXTURE_COMPONENTS 0x1003
661 #define GL_TEXTURE_RED_SIZE 0x805C
662 #define GL_TEXTURE_GREEN_SIZE 0x805D
663 #define GL_TEXTURE_BLUE_SIZE 0x805E
664 #define GL_TEXTURE_ALPHA_SIZE 0x805F
665 #define GL_TEXTURE_LUMINANCE_SIZE 0x8060
666 #define GL_TEXTURE_INTENSITY_SIZE 0x8061
667 #define GL_NEAREST_MIPMAP_NEAREST 0x2700
668 #define GL_NEAREST_MIPMAP_LINEAR 0x2702
669 #define GL_LINEAR_MIPMAP_NEAREST 0x2701
670 #define GL_LINEAR_MIPMAP_LINEAR 0x2703
671 #define GL_OBJECT_LINEAR 0x2401
672 #define GL_OBJECT_PLANE 0x2501
673 #define GL_EYE_LINEAR 0x2400
674 #define GL_EYE_PLANE 0x2502
675 #define GL_SPHERE_MAP 0x2402
676 #define GL_DECAL 0x2101
677 #define GL_MODULATE 0x2100
678 #define GL_NEAREST 0x2600
679 #define GL_REPEAT 0x2901
680 #define GL_CLAMP 0x2900
681 #define GL_S 0x2000
682 #define GL_T 0x2001
683 #define GL_R 0x2002
684 #define GL_Q 0x2003
685
686 /* Utility */
687 #define GL_VENDOR 0x1F00
688 #define GL_RENDERER 0x1F01
689 #define GL_VERSION 0x1F02
690 #define GL_EXTENSIONS 0x1F03
691
692 /* Errors */
693 #define GL_NO_ERROR 0
694 #define GL_INVALID_ENUM 0x0500
695 #define GL_INVALID_VALUE 0x0501
696 #define GL_INVALID_OPERATION 0x0502
697 #define GL_STACK_OVERFLOW 0x0503
698 #define GL_STACK_UNDERFLOW 0x0504
699 #define GL_OUT_OF_MEMORY 0x0505
700
701 /* glPush/PopAttrib bits */
702 #define GL_CURRENT_BIT 0x00000001
703 #define GL_POINT_BIT 0x00000002
704 #define GL_LINE_BIT 0x00000004
705 #define GL_POLYGON_BIT 0x00000008
706 #define GL_POLYGON_STIPPLE_BIT 0x00000010
707 #define GL_PIXEL_MODE_BIT 0x00000020
708 #define GL_LIGHTING_BIT 0x00000040
709 #define GL_FOG_BIT 0x00000080
710 #define GL_DEPTH_BUFFER_BIT 0x00000100
711 #define GL_ACCUM_BUFFER_BIT 0x00000200
712 #define GL_STENCIL_BUFFER_BIT 0x00000400
713 #define GL_VIEWPORT_BIT 0x00000800
714 #define GL_TRANSFORM_BIT 0x00001000
715 #define GL_ENABLE_BIT 0x00002000
716 #define GL_COLOR_BUFFER_BIT 0x00004000
717 #define GL_HINT_BIT 0x00008000
718 #define GL_EVAL_BIT 0x00010000
719 #define GL_LIST_BIT 0x00020000
720 #define GL_TEXTURE_BIT 0x00040000
721 #define GL_SCISSOR_BIT 0x00080000
722 #define GL_ALL_ATTRIB_BITS 0xFFFFFFFF
723
724
725 /* OpenGL 1.1 */
726 #define GL_PROXY_TEXTURE_1D 0x8063
727 #define GL_PROXY_TEXTURE_2D 0x8064
728 #define GL_TEXTURE_PRIORITY 0x8066
729 #define GL_TEXTURE_RESIDENT 0x8067
730 #define GL_TEXTURE_BINDING_1D 0x8068
731 #define GL_TEXTURE_BINDING_2D 0x8069
732 #define GL_TEXTURE_INTERNAL_FORMAT 0x1003
733 #define GL_ALPHA4 0x803B
734 #define GL_ALPHA8 0x803C
735 #define GL_ALPHA12 0x803D
736 #define GL_ALPHA16 0x803E
737 #define GL_LUMINANCE4 0x803F
738 #define GL_LUMINANCE8 0x8040
739 #define GL_LUMINANCE12 0x8041
740 #define GL_LUMINANCE16 0x8042
741 #define GL_LUMINANCE4_ALPHA4 0x8043
742 #define GL_LUMINANCE6_ALPHA2 0x8044
840
841 GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params );
842
843 GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params );
844
845
846 GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask );
847
848 GLAPI void GLAPIENTRY glPopAttrib( void );
849
850
851 GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */
852
853 GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */
854
855
856 GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode );
857
858 GLAPI GLenum GLAPIENTRY glGetError( void );
859
860 GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name );
861
862 GLAPI void GLAPIENTRY glFinish( void );
863
864 GLAPI void GLAPIENTRY glFlush( void );
865
866 GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode );
867
868
869 /*
870 * Depth Buffer
871 */
872
873 GLAPI void GLAPIENTRY glClearDepth( GLclampd depth );
874
875 GLAPI void GLAPIENTRY glDepthFunc( GLenum func );
876
877 GLAPI void GLAPIENTRY glDepthMask( GLboolean flag );
878
879 GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val );
880
1208 GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params );
1209
1210 GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params );
1211 GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params );
1212
1213 GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode );
1214
1215
1216 /*
1217 * Raster functions
1218 */
1219
1220 GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor );
1221
1222 GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param );
1223 GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param );
1224
1225 GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param );
1226 GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param );
1227
1228 GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize,
1229 const GLfloat *values );
1230 GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize,
1231 const GLuint *values );
1232 GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize,
1233 const GLushort *values );
1234
1235 GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values );
1236 GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values );
1237 GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values );
1238
1239 GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height,
1240 GLfloat xorig, GLfloat yorig,
1241 GLfloat xmove, GLfloat ymove,
1242 const GLubyte *bitmap );
1243
1244 GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y,
1245 GLsizei width, GLsizei height,
1246 GLenum format, GLenum type,
1247 GLvoid *pixels );
1248
1249 GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height,
1250 GLenum format, GLenum type,
1251 const GLvoid *pixels );
1252
1525 GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level,
1526 GLint internalFormat,
1527 GLsizei width, GLsizei height,
1528 GLsizei depth, GLint border,
1529 GLenum format, GLenum type,
1530 const GLvoid *pixels );
1531
1532 GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level,
1533 GLint xoffset, GLint yoffset,
1534 GLint zoffset, GLsizei width,
1535 GLsizei height, GLsizei depth,
1536 GLenum format,
1537 GLenum type, const GLvoid *pixels);
1538
1539 GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level,
1540 GLint xoffset, GLint yoffset,
1541 GLint zoffset, GLint x,
1542 GLint y, GLsizei width,
1543 GLsizei height );
1544
1545 typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
1546 typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
1547 typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
1548 typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
1549
1550
1551 /*
1552 * GL_ARB_imaging
1553 */
1554
1555 #define GL_CONSTANT_COLOR 0x8001
1556 #define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
1557 #define GL_CONSTANT_ALPHA 0x8003
1558 #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
1559 #define GL_COLOR_TABLE 0x80D0
1560 #define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
1561 #define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
1562 #define GL_PROXY_COLOR_TABLE 0x80D3
1563 #define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
1564 #define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
1565 #define GL_COLOR_TABLE_SCALE 0x80D6
1566 #define GL_COLOR_TABLE_BIAS 0x80D7
1567 #define GL_COLOR_TABLE_FORMAT 0x80D8
1568 #define GL_COLOR_TABLE_WIDTH 0x80D9
1720 GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target,
1721 GLenum internalformat, GLint x, GLint y, GLsizei width,
1722 GLsizei height);
1723
1724 GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format,
1725 GLenum type, GLvoid *image );
1726
1727 GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname,
1728 GLfloat *params );
1729
1730 GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname,
1731 GLint *params );
1732
1733 GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target,
1734 GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
1735 GLenum type, const GLvoid *row, const GLvoid *column );
1736
1737 GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format,
1738 GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
1739
1740
1741
1742
1743 /*
1744 * OpenGL 1.3
1745 */
1746
1747 /* multitexture */
1748 #define GL_TEXTURE0 0x84C0
1749 #define GL_TEXTURE1 0x84C1
1750 #define GL_TEXTURE2 0x84C2
1751 #define GL_TEXTURE3 0x84C3
1752 #define GL_TEXTURE4 0x84C4
1753 #define GL_TEXTURE5 0x84C5
1754 #define GL_TEXTURE6 0x84C6
1755 #define GL_TEXTURE7 0x84C7
1756 #define GL_TEXTURE8 0x84C8
1757 #define GL_TEXTURE9 0x84C9
1758 #define GL_TEXTURE10 0x84CA
1759 #define GL_TEXTURE11 0x84CB
1925
1926 GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q );
1927
1928 GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v );
1929
1930 GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q );
1931
1932 GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v );
1933
1934
1935 GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] );
1936
1937 GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] );
1938
1939 GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] );
1940
1941 GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] );
1942
1943 GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert );
1944
1945
1946 typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture);
1947 typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert);
1948 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
1949 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
1950 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
1951 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
1952 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
1953 typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
1954 typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img);
1955
1956
1957
1958 /*
1959 * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1)
1960 */
1961 #ifndef GL_ARB_multitexture
1962 #define GL_ARB_multitexture 1
1963
1964 #define GL_TEXTURE0_ARB 0x84C0
1965 #define GL_TEXTURE1_ARB 0x84C1
1966 #define GL_TEXTURE2_ARB 0x84C2
1967 #define GL_TEXTURE3_ARB 0x84C3
1968 #define GL_TEXTURE4_ARB 0x84C4
1969 #define GL_TEXTURE5_ARB 0x84C5
1970 #define GL_TEXTURE6_ARB 0x84C6
1971 #define GL_TEXTURE7_ARB 0x84C7
1972 #define GL_TEXTURE8_ARB 0x84C8
1973 #define GL_TEXTURE9_ARB 0x84C9
1974 #define GL_TEXTURE10_ARB 0x84CA
1975 #define GL_TEXTURE11_ARB 0x84CB
2015 GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v);
2016 GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t);
2017 GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v);
2018 GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r);
2019 GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v);
2020 GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r);
2021 GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v);
2022 GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r);
2023 GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v);
2024 GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r);
2025 GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v);
2026 GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
2027 GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v);
2028 GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2029 GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v);
2030 GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q);
2031 GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v);
2032 GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
2033 GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v);
2034
2035 typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture);
2036 typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);
2037 typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
2038 typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
2039 typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
2040 typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
2041 typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
2042 typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
2043 typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
2044 typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
2045 typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
2046 typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
2047 typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
2048 typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
2049 typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
2050 typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
2051 typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
2052 typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
2053 typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
2054 typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
2055 typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
2056 typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
2057 typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
2058 typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
2059 typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
2060 typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
2061 typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
2062 typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
2063 typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
2064 typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
2065 typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
2066 typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
2067 typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
2068 typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
2069
2070 #endif /* GL_ARB_multitexture */
2071
2072
2073
2074 /*
2075 * Define this token if you want "old-style" header file behaviour (extensions
2076 * defined in gl.h). Otherwise, extensions will be included from glext.h.
2077 */
2078 #if defined(GL_GLEXT_LEGACY)
2079
2080 /* All extensions that used to be here are now found in glext.h */
2081
2082 #else /* GL_GLEXT_LEGACY */
2083
2084 /* JDK modification of include path to be sure to pick up the correct file */
2085 #include "J2D_GL/glext.h"
2086
2087 #endif /* GL_GLEXT_LEGACY */
2088
2089
2090
2091 /*
2092 * ???. GL_MESA_packed_depth_stencil
2093 * XXX obsolete
2094 */
2095 #ifndef GL_MESA_packed_depth_stencil
2096 #define GL_MESA_packed_depth_stencil 1
2097
2098 #define GL_DEPTH_STENCIL_MESA 0x8750
2099 #define GL_UNSIGNED_INT_24_8_MESA 0x8751
2100 #define GL_UNSIGNED_INT_8_24_REV_MESA 0x8752
2101 #define GL_UNSIGNED_SHORT_15_1_MESA 0x8753
2102 #define GL_UNSIGNED_SHORT_1_15_REV_MESA 0x8754
2103
2104 #endif /* GL_MESA_packed_depth_stencil */
2105
2106
2107 #ifndef GL_ATI_blend_equation_separate
2108 #define GL_ATI_blend_equation_separate 1
2109
2110 #define GL_ALPHA_BLEND_EQUATION_ATI 0x883D
2111
2112 GLAPI void GLAPIENTRY glBlendEquationSeparateATI( GLenum modeRGB, GLenum modeA );
2113 typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEATIPROC) (GLenum modeRGB, GLenum modeA);
2114
2115 #endif /* GL_ATI_blend_equation_separate */
2116
2117
2118 /* GL_OES_EGL_image */
2119 #if !defined(GL_OES_EGL_image) && !defined(GL_EXT_EGL_image_storage)
2120 typedef void* GLeglImageOES;
2121 #endif
2122
2123 #ifndef GL_OES_EGL_image
2124 #define GL_OES_EGL_image 1
2125 #ifdef GL_GLEXT_PROTOTYPES
2126 GLAPI void APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
2127 GLAPI void APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
2128 #endif
2129 typedef void (APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
2130 typedef void (APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
2131 #endif
2132
2133
2134 /**
2135 ** NOTE!!!!! If you add new functions to this file, or update
2136 ** glext.h be sure to regenerate the gl_mangle.h file. See comments
2137 ** in that file for details.
2138 **/
2139
2140
2141 #ifdef __cplusplus
2142 }
2143 #endif
2144
2145 #endif /* __gl_h_ */
|