1 | #ifndef __GLX_glxtokens_h__ |
---|
2 | #define __GLX_glxtokens_h__ |
---|
3 | |
---|
4 | /* $XFree86: xc/include/GL/glxtokens.h,v 1.5 2001/03/21 15:51:38 dawes Exp $ */ |
---|
5 | /* |
---|
6 | ** License Applicability. Except to the extent portions of this file are |
---|
7 | ** made subject to an alternative license as permitted in the SGI Free |
---|
8 | ** Software License B, Version 1.1 (the "License"), the contents of this |
---|
9 | ** file are subject only to the provisions of the License. You may not use |
---|
10 | ** this file except in compliance with the License. You may obtain a copy |
---|
11 | ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 |
---|
12 | ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: |
---|
13 | ** |
---|
14 | ** http://oss.sgi.com/projects/FreeB |
---|
15 | ** |
---|
16 | ** Note that, as provided in the License, the Software is distributed on an |
---|
17 | ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS |
---|
18 | ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND |
---|
19 | ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A |
---|
20 | ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT. |
---|
21 | ** |
---|
22 | ** Original Code. The Original Code is: OpenGL Sample Implementation, |
---|
23 | ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, |
---|
24 | ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. |
---|
25 | ** Copyright in any portions created by third parties is as indicated |
---|
26 | ** elsewhere herein. All Rights Reserved. |
---|
27 | ** |
---|
28 | ** Additional Notice Provisions: The application programming interfaces |
---|
29 | ** established by SGI in conjunction with the Original Code are The |
---|
30 | ** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released |
---|
31 | ** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version |
---|
32 | ** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X |
---|
33 | ** Window System(R) (Version 1.3), released October 19, 1998. This software |
---|
34 | ** was created using the OpenGL(R) version 1.2.1 Sample Implementation |
---|
35 | ** published by SGI, but has not been independently verified as being |
---|
36 | ** compliant with the OpenGL(R) version 1.2.1 Specification. |
---|
37 | */ |
---|
38 | |
---|
39 | #ifdef __cplusplus |
---|
40 | extern "C" { |
---|
41 | #endif |
---|
42 | |
---|
43 | #define GLX_VERSION_1_1 1 |
---|
44 | #define GLX_VERSION_1_2 1 |
---|
45 | #define GLX_VERSION_1_3 1 |
---|
46 | #define GLX_VERSION_1_4 1 |
---|
47 | |
---|
48 | /* |
---|
49 | ** Visual Config Attributes (glXGetConfig, glXGetFBConfigAttrib) |
---|
50 | */ |
---|
51 | #define GLX_USE_GL 1 /* support GLX rendering */ |
---|
52 | #define GLX_BUFFER_SIZE 2 /* depth of the color buffer */ |
---|
53 | #define GLX_LEVEL 3 /* level in plane stacking */ |
---|
54 | #define GLX_RGBA 4 /* true if RGBA mode */ |
---|
55 | #define GLX_DOUBLEBUFFER 5 /* double buffering supported */ |
---|
56 | #define GLX_STEREO 6 /* stereo buffering supported */ |
---|
57 | #define GLX_AUX_BUFFERS 7 /* number of aux buffers */ |
---|
58 | #define GLX_RED_SIZE 8 /* number of red component bits */ |
---|
59 | #define GLX_GREEN_SIZE 9 /* number of green component bits */ |
---|
60 | #define GLX_BLUE_SIZE 10 /* number of blue component bits */ |
---|
61 | #define GLX_ALPHA_SIZE 11 /* number of alpha component bits */ |
---|
62 | #define GLX_DEPTH_SIZE 12 /* number of depth bits */ |
---|
63 | #define GLX_STENCIL_SIZE 13 /* number of stencil bits */ |
---|
64 | #define GLX_ACCUM_RED_SIZE 14 /* number of red accum bits */ |
---|
65 | #define GLX_ACCUM_GREEN_SIZE 15 /* number of green accum bits */ |
---|
66 | #define GLX_ACCUM_BLUE_SIZE 16 /* number of blue accum bits */ |
---|
67 | #define GLX_ACCUM_ALPHA_SIZE 17 /* number of alpha accum bits */ |
---|
68 | /* |
---|
69 | ** FBConfig-specific attributes |
---|
70 | */ |
---|
71 | #define GLX_X_VISUAL_TYPE 0x22 |
---|
72 | #define GLX_CONFIG_CAVEAT 0x20 /* Like visual_info VISUAL_CAVEAT_EXT */ |
---|
73 | #define GLX_TRANSPARENT_TYPE 0x23 |
---|
74 | #define GLX_TRANSPARENT_INDEX_VALUE 0x24 |
---|
75 | #define GLX_TRANSPARENT_RED_VALUE 0x25 |
---|
76 | #define GLX_TRANSPARENT_GREEN_VALUE 0x26 |
---|
77 | #define GLX_TRANSPARENT_BLUE_VALUE 0x27 |
---|
78 | #define GLX_TRANSPARENT_ALPHA_VALUE 0x28 |
---|
79 | #define GLX_DRAWABLE_TYPE 0x8010 |
---|
80 | #define GLX_RENDER_TYPE 0x8011 |
---|
81 | #define GLX_X_RENDERABLE 0x8012 |
---|
82 | #define GLX_FBCONFIG_ID 0x8013 |
---|
83 | #define GLX_MAX_PBUFFER_WIDTH 0x8016 |
---|
84 | #define GLX_MAX_PBUFFER_HEIGHT 0x8017 |
---|
85 | #define GLX_MAX_PBUFFER_PIXELS 0x8018 |
---|
86 | #define GLX_VISUAL_ID 0x800B |
---|
87 | |
---|
88 | /* |
---|
89 | ** Error return values from glXGetConfig. Success is indicated by |
---|
90 | ** a value of 0. |
---|
91 | */ |
---|
92 | #define GLX_BAD_SCREEN 1 /* screen # is bad */ |
---|
93 | #define GLX_BAD_ATTRIBUTE 2 /* attribute to get is bad */ |
---|
94 | #define GLX_NO_EXTENSION 3 /* no glx extension on server */ |
---|
95 | #define GLX_BAD_VISUAL 4 /* visual # not known by GLX */ |
---|
96 | #define GLX_BAD_CONTEXT 5 /* returned only by import_context EXT? */ |
---|
97 | #define GLX_BAD_VALUE 6 /* returned only by glXSwapIntervalSGI? */ |
---|
98 | #define GLX_BAD_ENUM 7 /* unused? */ |
---|
99 | |
---|
100 | /* FBConfig attribute values */ |
---|
101 | |
---|
102 | /* |
---|
103 | ** Generic "don't care" value for glX ChooseFBConfig attributes (except |
---|
104 | ** GLX_LEVEL) |
---|
105 | */ |
---|
106 | #define GLX_DONT_CARE 0xFFFFFFFF |
---|
107 | |
---|
108 | /* GLX_RENDER_TYPE bits */ |
---|
109 | #define GLX_RGBA_BIT 0x00000001 |
---|
110 | #define GLX_COLOR_INDEX_BIT 0x00000002 |
---|
111 | |
---|
112 | /* GLX_DRAWABLE_TYPE bits */ |
---|
113 | #define GLX_WINDOW_BIT 0x00000001 |
---|
114 | #define GLX_PIXMAP_BIT 0x00000002 |
---|
115 | #define GLX_PBUFFER_BIT 0x00000004 |
---|
116 | |
---|
117 | /* GLX_CONFIG_CAVEAT attribute values */ |
---|
118 | #define GLX_NONE 0x8000 |
---|
119 | #define GLX_SLOW_CONFIG 0x8001 |
---|
120 | #define GLX_NON_CONFORMANT_CONFIG 0x800D |
---|
121 | |
---|
122 | /* GLX_X_VISUAL_TYPE attribute values */ |
---|
123 | #define GLX_TRUE_COLOR 0x8002 |
---|
124 | #define GLX_DIRECT_COLOR 0x8003 |
---|
125 | #define GLX_PSEUDO_COLOR 0x8004 |
---|
126 | #define GLX_STATIC_COLOR 0x8005 |
---|
127 | #define GLX_GRAY_SCALE 0x8006 |
---|
128 | #define GLX_STATIC_GRAY 0x8007 |
---|
129 | |
---|
130 | /* GLX_TRANSPARENT_TYPE attribute values */ |
---|
131 | /* #define GLX_NONE 0x8000 */ |
---|
132 | #define GLX_TRANSPARENT_RGB 0x8008 |
---|
133 | #define GLX_TRANSPARENT_INDEX 0x8009 |
---|
134 | |
---|
135 | /* glXCreateGLXPbuffer attributes */ |
---|
136 | #define GLX_PRESERVED_CONTENTS 0x801B |
---|
137 | #define GLX_LARGEST_PBUFFER 0x801C |
---|
138 | #define GLX_PBUFFER_HEIGHT 0x8040 /* New for GLX 1.3 */ |
---|
139 | #define GLX_PBUFFER_WIDTH 0x8041 /* New for GLX 1.3 */ |
---|
140 | |
---|
141 | /* glXQueryGLXPBuffer attributes */ |
---|
142 | #define GLX_WIDTH 0x801D |
---|
143 | #define GLX_HEIGHT 0x801E |
---|
144 | #define GLX_EVENT_MASK 0x801F |
---|
145 | |
---|
146 | /* glXCreateNewContext render_type attribute values */ |
---|
147 | #define GLX_RGBA_TYPE 0x8014 |
---|
148 | #define GLX_COLOR_INDEX_TYPE 0x8015 |
---|
149 | |
---|
150 | /* glXQueryContext attributes */ |
---|
151 | /* #define GLX_FBCONFIG_ID 0x8013 */ |
---|
152 | /* #define GLX_RENDER_TYPE 0x8011 */ |
---|
153 | #define GLX_SCREEN 0x800C |
---|
154 | |
---|
155 | /* glXSelectEvent event mask bits */ |
---|
156 | #define GLX_PBUFFER_CLOBBER_MASK 0x08000000 |
---|
157 | |
---|
158 | /* GLXPbufferClobberEvent event_type values */ |
---|
159 | #define GLX_DAMAGED 0x8020 |
---|
160 | #define GLX_SAVED 0x8021 |
---|
161 | |
---|
162 | /* GLXPbufferClobberEvent draw_type values */ |
---|
163 | #define GLX_WINDOW 0x8022 |
---|
164 | #define GLX_PBUFFER 0x8023 |
---|
165 | |
---|
166 | /* GLXPbufferClobberEvent buffer_mask bits */ |
---|
167 | #define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001 |
---|
168 | #define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002 |
---|
169 | #define GLX_BACK_LEFT_BUFFER_BIT 0x00000004 |
---|
170 | #define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008 |
---|
171 | #define GLX_AUX_BUFFERS_BIT 0x00000010 |
---|
172 | #define GLX_DEPTH_BUFFER_BIT 0x00000020 |
---|
173 | #define GLX_STENCIL_BUFFER_BIT 0x00000040 |
---|
174 | #define GLX_ACCUM_BUFFER_BIT 0x00000080 |
---|
175 | |
---|
176 | /* |
---|
177 | ** Extension return values from glXGetConfig. These are also |
---|
178 | ** accepted as parameter values for glXChooseVisual. |
---|
179 | */ |
---|
180 | |
---|
181 | #define GLX_X_VISUAL_TYPE_EXT 0x22 /* visual_info extension type */ |
---|
182 | #define GLX_TRANSPARENT_TYPE_EXT 0x23 /* visual_info extension */ |
---|
183 | #define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24 /* visual_info extension */ |
---|
184 | #define GLX_TRANSPARENT_RED_VALUE_EXT 0x25 /* visual_info extension */ |
---|
185 | #define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26 /* visual_info extension */ |
---|
186 | #define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27 /* visual_info extension */ |
---|
187 | #define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28 /* visual_info extension */ |
---|
188 | |
---|
189 | /* Property values for visual_type */ |
---|
190 | #define GLX_TRUE_COLOR_EXT 0x8002 |
---|
191 | #define GLX_DIRECT_COLOR_EXT 0x8003 |
---|
192 | #define GLX_PSEUDO_COLOR_EXT 0x8004 |
---|
193 | #define GLX_STATIC_COLOR_EXT 0x8005 |
---|
194 | #define GLX_GRAY_SCALE_EXT 0x8006 |
---|
195 | #define GLX_STATIC_GRAY_EXT 0x8007 |
---|
196 | |
---|
197 | /* Property values for transparent pixel */ |
---|
198 | #define GLX_NONE_EXT 0x8000 |
---|
199 | #define GLX_TRANSPARENT_RGB_EXT 0x8008 |
---|
200 | #define GLX_TRANSPARENT_INDEX_EXT 0x8009 |
---|
201 | |
---|
202 | /* Property values for visual_rating */ |
---|
203 | #define GLX_VISUAL_CAVEAT_EXT 0x20 /* visual_rating extension type */ |
---|
204 | #define GLX_SLOW_VISUAL_EXT 0x8001 |
---|
205 | #define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D |
---|
206 | |
---|
207 | /* |
---|
208 | ** Names for attributes to glXGetClientString. |
---|
209 | */ |
---|
210 | #define GLX_VENDOR 0x1 |
---|
211 | #define GLX_VERSION 0x2 |
---|
212 | #define GLX_EXTENSIONS 0x3 |
---|
213 | |
---|
214 | /* |
---|
215 | ** Names for attributes to glXQueryContextInfoEXT. |
---|
216 | */ |
---|
217 | #define GLX_SHARE_CONTEXT_EXT 0x800A /* id of share context */ |
---|
218 | #define GLX_VISUAL_ID_EXT 0x800B /* id of context's visual */ |
---|
219 | #define GLX_SCREEN_EXT 0x800C /* screen number */ |
---|
220 | |
---|
221 | /* |
---|
222 | * GLX 1.4 and later: |
---|
223 | */ |
---|
224 | #define GLX_SAMPLE_BUFFERS_SGIS 100000 |
---|
225 | #define GLX_SAMPLES_SGIS 100001 |
---|
226 | |
---|
227 | #ifdef __cplusplus |
---|
228 | } |
---|
229 | #endif |
---|
230 | |
---|
231 | #endif /* !__GLX_glxtokens_h__ */ |
---|