apple: Don't build gallium
[mesa.git] / src / glx / apple / specs / glxenum.spec
1 # Copyright (C) 1991-2005 Silicon Graphics, Inc. All Rights Reserved.
2 #
3 # This document is licensed under the SGI Free Software B License Version
4 # 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
5
6 # This is the GLX enumerant registry.
7 #
8 # It is an extremely important file. Do not mess with it unless
9 # you know what you're doing and have permission to do so.
10 #
11 # Rules for modification are the same as the rules for the OpenGL
12 # enumerant registry (gl.spec). Basically, don't modify this
13 # file unless you're the Khronos API Registrar.
14
15 Extensions define:
16 VERSION_1_1 = 1
17 VERSION_1_2 = 1
18 VERSION_1_3 = 1
19 VERSION_1_4 = 1
20 SGIS_multisample = 1
21 EXT_visual_info = 1
22 SGI_swap_control = 1
23 SGI_video_sync = 1
24 SGI_make_current_read = 1
25 SGIX_video_source = 1
26 EXT_visual_rating = 1
27 EXT_import_context = 1
28 SGIX_fbconfig = 1
29 SGIX_pbuffer = 1
30 SGI_cushion = 1
31 SGIX_video_resize = 1
32 SGIX_dmbuffer = 1
33 SGIX_swap_group = 1
34 SGIX_swap_barrier = 1
35 SGIS_blended_overlay = 1
36 SGIS_shared_multisample = 1
37 SUN_get_transparent_index = 1
38 3DFX_multisample = 1
39 MESA_copy_sub_buffer = 1
40 MESA_pixmap_colormap = 1
41 MESA_release_buffers = 1
42 MESA_set_3dfx_mode = 1
43 SGIX_visual_select_group = 1
44 SGIX_hyperpipe = 1
45
46 GLXStringName enum:
47 VENDOR = 0x1
48 VERSION = 0x2
49 EXTENSIONS = 0x3
50
51 GLXErrorCode enum:
52 BAD_SCREEN = 1
53 BAD_ATTRIBUTE = 2
54 NO_EXTENSION = 3
55 BAD_VISUAL = 4
56 BAD_CONTEXT = 5
57 BAD_VALUE = 6
58 BAD_ENUM = 7
59 BAD_HYPERPIPE_CONFIG_SGIX = 91 # SGIX_hyperpipe
60 BAD_HYPERPIPE_SGIX = 92 # "
61
62 # Reserved bits in bitfields of various purposes
63
64 GLXDrawableTypeMask enum:
65 WINDOW_BIT = 0x00000001 # DRAWABLE_TYPE value
66 PIXMAP_BIT = 0x00000002 # "
67 PBUFFER_BIT = 0x00000004 # "
68 WINDOW_BIT_SGIX = 0x00000001 # DRAWABLE_TYPE_SGIX value
69 PIXMAP_BIT_SGIX = 0x00000002 # "
70 PBUFFER_BIT_SGIX = 0x00000004 # "
71
72 GLXRenderTypeMask enum:
73 RGBA_BIT = 0x00000001 # RENDER_TYPE value
74 COLOR_INDEX_BIT = 0x00000002 # "
75 RGBA_BIT_SGIX = 0x00000001 # RENDER_TYPE_SGIX value
76 COLOR_INDEX_BIT_SGIX = 0x00000002 # "
77 RGBA_FLOAT_BIT_ARB = 0x00000004 # RENDER_TYPE value (from ARB_fbconfig_float)
78 RGBA_UNSIGNED_FLOAT_BIT_EXT = 0x00000008 # RENDER_TYPE value (from EXT_fbconfig_packed_float)
79
80 GLXSyncType enum:
81 SYNC_FRAME_SGIX = 0x00000000 # ChannelRectSyncSGIX synctype
82 SYNC_SWAP_SGIX = 0x00000001 # "
83
84 GLXEventMask enum:
85 PBUFFER_CLOBBER_MASK = 0x08000000 # SelectEvent mask
86 BUFFER_CLOBBER_MASK_SGIX = 0x08000000 # SelectEventSGIX mask
87 # INTEL_future_use = 0x04000000 # SelectEvent mask (for GLX_INTEL_swap_event)
88
89 GLXPbufferClobberMask enum:
90 FRONT_LEFT_BUFFER_BIT = 0x00000001 # PbufferClobberEvent mask
91 FRONT_RIGHT_BUFFER_BIT = 0x00000002 # "
92 BACK_LEFT_BUFFER_BIT = 0x00000004 # "
93 BACK_RIGHT_BUFFER_BIT = 0x00000008 # "
94 AUX_BUFFERS_BIT = 0x00000010 # "
95 DEPTH_BUFFER_BIT = 0x00000020 # "
96 STENCIL_BUFFER_BIT = 0x00000040 # "
97 ACCUM_BUFFER_BIT = 0x00000080 # "
98 FRONT_LEFT_BUFFER_BIT_SGIX = 0x00000001 # BufferClobberEventSGIX mask
99 FRONT_RIGHT_BUFFER_BIT_SGIX = 0x00000002 # "
100 BACK_LEFT_BUFFER_BIT_SGIX = 0x00000004 # "
101 BACK_RIGHT_BUFFER_BIT_SGIX = 0x00000008 # "
102 AUX_BUFFERS_BIT_SGIX = 0x00000010 # "
103 DEPTH_BUFFER_BIT_SGIX = 0x00000020 # "
104 STENCIL_BUFFER_BIT_SGIX = 0x00000040 # "
105 ACCUM_BUFFER_BIT_SGIX = 0x00000080 # "
106 SAMPLE_BUFFERS_BIT_SGIX = 0x00000100 # "
107
108 GLXHyperpipeTypeMask enum:
109 HYPERPIPE_DISPLAY_PIPE_SGIX = 0x00000001 # SGIX_hyperpipe
110 HYPERPIPE_RENDER_PIPE_SGIX = 0x00000002 # "
111
112 GLXHyperpipeAttrib enum:
113 PIPE_RECT_SGIX = 0x00000001 # SGIX_hyperpipe
114 PIPE_RECT_LIMITS_SGIX = 0x00000002 # "
115 HYPERPIPE_STEREO_SGIX = 0x00000003 # "
116 HYPERPIPE_PIXEL_AVERAGE_SGIX = 0x00000004 # "
117
118 GLXHyperpipeMisc enum:
119 HYPERPIPE_PIPE_NAME_LENGTH_SGIX = 80 # SGIX_hyperpipe
120
121 GLXBindToTextureTargetMask enum:
122 TEXTURE_1D_BIT_EXT = 0x00000001 # EXT_texture_from_pixmap
123 TEXTURE_2D_BIT_EXT = 0x00000002
124 TEXTURE_RECTANGLE_BIT_EXT = 0x00000004
125
126 # CONTEXT_FLAGS_ARB bits
127 GLXContextFlags enum:
128 CONTEXT_DEBUG_BIT_ARB = 0x00000001 # ARB_create_context
129 CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x00000002 # ARB_create_context
130
131 # CONTEXT_PROFILE_MASK_ARB bits
132 GLXContextProfileMask enum:
133 CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001 # ARB_create_context_profile
134 CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002 # ARB_create_context_profile
135
136 GLXAttribute enum:
137 USE_GL = 1 # Visual attributes
138 BUFFER_SIZE = 2 # "
139 LEVEL = 3 # "
140 RGBA = 4 # "
141 DOUBLEBUFFER = 5 # "
142 STEREO = 6 # "
143 AUX_BUFFERS = 7 # "
144 RED_SIZE = 8 # "
145 GREEN_SIZE = 9 # "
146 BLUE_SIZE = 10 # "
147 ALPHA_SIZE = 11 # "
148 DEPTH_SIZE = 12 # "
149 STENCIL_SIZE = 13 # "
150 ACCUM_RED_SIZE = 14 # "
151 ACCUM_GREEN_SIZE = 15 # "
152 ACCUM_BLUE_SIZE = 16 # "
153 ACCUM_ALPHA_SIZE = 17 # "
154 CONFIG_CAVEAT = 0x20 # "
155 X_VISUAL_TYPE = 0x22 # "
156 TRANSPARENT_TYPE = 0x23 # "
157 TRANSPARENT_INDEX_VALUE = 0x24 # "
158 TRANSPARENT_RED_VALUE = 0x25 # "
159 TRANSPARENT_GREEN_VALUE = 0x26 # "
160 TRANSPARENT_BLUE_VALUE = 0x27 # "
161 TRANSPARENT_ALPHA_VALUE = 0x28 # "
162 DONT_CARE = 0xFFFFFFFF # may be specified for ChooseFBConfig attributes
163 NONE = 0x8000 # several attribute values
164 SLOW_CONFIG = 0x8001 # CONFIG_CAVEAT attribute value
165 TRUE_COLOR = 0x8002 # X_VISUAL_TYPE attribute value
166 DIRECT_COLOR = 0x8003 # "
167 PSEUDO_COLOR = 0x8004 # "
168 STATIC_COLOR = 0x8005 # "
169 GRAY_SCALE = 0x8006 # "
170 STATIC_GRAY = 0x8007 # "
171 TRANSPARENT_RGB = 0x8008 # TRANSPARENT_TYPE attribute value
172 TRANSPARENT_INDEX = 0x8009 # "
173 VISUAL_ID = 0x800B # Context attribute
174 SCREEN = 0x800C # "
175 NON_CONFORMANT_CONFIG = 0x800D # CONFIG_CAVEAT attribute value
176 DRAWABLE_TYPE = 0x8010 # FBConfig attribute
177 RENDER_TYPE = 0x8011 # "
178 X_RENDERABLE = 0x8012 # "
179 FBCONFIG_ID = 0x8013 # "
180 RGBA_TYPE = 0x8014 # CreateNewContext render_type value
181 COLOR_INDEX_TYPE = 0x8015 # "
182 MAX_PBUFFER_WIDTH = 0x8016 # FBConfig attribute
183 MAX_PBUFFER_HEIGHT = 0x8017 # "
184 MAX_PBUFFER_PIXELS = 0x8018 # "
185 PRESERVED_CONTENTS = 0x801B # CreateGLXPbuffer attribute
186 LARGEST_PBUFFER = 0x801C # "
187 WIDTH = 0x801D # Drawable attribute
188 HEIGHT = 0x801E # "
189 EVENT_MASK = 0x801F # "
190 DAMAGED = 0x8020 # PbufferClobber event_type value
191 SAVED = 0x8021 # "
192 WINDOW = 0x8022 # PbufferClobber draw_type value
193 PBUFFER = 0x8023 # "
194 PBUFFER_HEIGHT = 0x8040 # CreateGLXPbuffer attribute
195 PBUFFER_WIDTH = 0x8041 # "
196 VISUAL_CAVEAT_EXT = 0x20 # Visual attribute
197 X_VISUAL_TYPE_EXT = 0x22 # "
198 TRANSPARENT_TYPE_EXT = 0x23 # "
199 TRANSPARENT_INDEX_VALUE_EXT = 0x24 # "
200 TRANSPARENT_RED_VALUE_EXT = 0x25 # "
201 TRANSPARENT_GREEN_VALUE_EXT = 0x26 # "
202 TRANSPARENT_BLUE_VALUE_EXT = 0x27 # "
203 TRANSPARENT_ALPHA_VALUE_EXT = 0x28 # "
204 NONE_EXT = 0x8000 # several EXT attribute values
205 SLOW_VISUAL_EXT = 0x8001 # VISUAL_CAVEAT_EXT attribute value
206 TRUE_COLOR_EXT = 0x8002 # X_VISUAL_TYPE_EXT attribute value
207 DIRECT_COLOR_EXT = 0x8003 # "
208 PSEUDO_COLOR_EXT = 0x8004 # "
209 STATIC_COLOR_EXT = 0x8005 # "
210 GRAY_SCALE_EXT = 0x8006 # "
211 STATIC_GRAY_EXT = 0x8007 # "
212 TRANSPARENT_RGB_EXT = 0x8008 # TRANSPARENT_TYPE_EXT attribute value
213 TRANSPARENT_INDEX_EXT = 0x8009 # "
214 SHARE_CONTEXT_EXT = 0x800A # QueryContextInfoEXT attribute
215 VISUAL_ID_EXT = 0x800B # "
216 SCREEN_EXT = 0x800C # "
217 NON_CONFORMANT_VISUAL_EXT = 0x800D # VISUAL_CAVEAT_EXT attribute value
218 DRAWABLE_TYPE_SGIX = 0x8010 # FBConfigSGIX attribute
219 RENDER_TYPE_SGIX = 0x8011 # "
220 X_RENDERABLE_SGIX = 0x8012 # "
221 FBCONFIG_ID_SGIX = 0x8013 # "
222 RGBA_TYPE_SGIX = 0x8014 # CreateContextWithConfigSGIX render_type value
223 COLOR_INDEX_TYPE_SGIX = 0x8015 # "
224 MAX_PBUFFER_WIDTH_SGIX = 0x8016 # FBConfigSGIX attribute
225 MAX_PBUFFER_HEIGHT_SGIX = 0x8017 # "
226 MAX_PBUFFER_PIXELS_SGIX = 0x8018 # "
227 OPTIMAL_PBUFFER_WIDTH_SGIX = 0x8019 # "
228 OPTIMAL_PBUFFER_HEIGHT_SGIX = 0x801A # "
229 PRESERVED_CONTENTS_SGIX = 0x801B # PbufferSGIX attribute
230 LARGEST_PBUFFER_SGIX = 0x801C # "
231 WIDTH_SGIX = 0x801D # "
232 HEIGHT_SGIX = 0x801E # "
233 EVENT_MASK_SGIX = 0x801F # "
234 DAMAGED_SGIX = 0x8020 # BufferClobberSGIX event_type value
235 SAVED_SGIX = 0x8021 # "
236 WINDOW_SGIX = 0x8022 # BufferClobberSGIX draw_type value
237 PBUFFER_SGIX = 0x8023 # "
238 DIGITAL_MEDIA_PBUFFER_SGIX = 0x8024 # PbufferSGIX attribute
239 BLENDED_RGBA_SGIS = 0x8025 # TRANSPARENT_TYPE_EXT attribute value
240 MULTISAMPLE_SUB_RECT_WIDTH_SGIS = 0x8026 # Visual attribute (shared_multisample)
241 MULTISAMPLE_SUB_RECT_HEIGHT_SGIS = 0x8027 # "
242 VISUAL_SELECT_GROUP_SGIX = 0x8028 # Visual attribute (visual_select_group)
243 HYPERPIPE_ID_SGIX = 0x8030 # Associated hyperpipe ID (SGIX_hyperpipe)
244 SAMPLE_BUFFERS_SGIS = 100000 # Visual attribute (SGIS_multisample)
245 SAMPLES_SGIS = 100001 # "
246 SAMPLE_BUFFERS_ARB = 100000 # Visual attribute (ARB_multisample - alias of SGIS_multisample)
247 SAMPLES_ARB = 100001 # "
248 SAMPLE_BUFFERS = 100000 # Visual attribute (GLX 1.4 core - alias of SGIS_multisample)
249 SAMPLES = 100001 # "
250
251 ###############################################################################
252
253 # ARB: 0x2070-0x209F (shared with WGL)
254
255 # Also includes a bitmask - see ContextFlags above
256 # ARB_create_context enum:
257 CONTEXT_MAJOR_VERSION_ARB = 0x2091
258 CONTEXT_MINOR_VERSION_ARB = 0x2092
259 CONTEXT_FLAGS_ARB = 0x2094
260
261 ###############################################################################
262
263 # NVIDIA: 0x20A0 - 0x219F (shared with WGL)
264
265 # NV_float_buffer enum:
266 FLOAT_COMPONENTS_NV = 0x20B0
267 # EXT_fbconfig_packed_float enum:
268 RGBA_UNSIGNED_FLOAT_TYPE_EXT = 0x20B1
269 # EXT_framebuffer_sRGB enum:
270 FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x20B2
271
272 # NV_future_use: 0x20B3-0x20B8
273
274 # ARB_fbconfig_float enum:
275 RGBA_FLOAT_TYPE_ARB = 0x20B9
276
277 # NV_future_use: 0x20BA-0x20C2
278
279 # NV_video_out enum:
280 VIDEO_OUT_COLOR_NV = 0x20C3
281 VIDEO_OUT_ALPHA_NV = 0x20C4
282 VIDEO_OUT_DEPTH_NV = 0x20C5
283 VIDEO_OUT_COLOR_AND_ALPHA_NV = 0x20C6
284 VIDEO_OUT_COLOR_AND_DEPTH_NV = 0x20C7
285 VIDEO_OUT_FRAME_NV = 0x20C8
286 VIDEO_OUT_FIELD_1_NV = 0x20C9
287 VIDEO_OUT_FIELD_2_NV = 0x20CA
288 VIDEO_OUT_STACKED_FIELDS_1_2_NV = 0x20CB
289 VIDEO_OUT_STACKED_FIELDS_2_1_NV = 0x20CC
290
291 # NV_video_capture enum:
292 DEVICE_ID_NV = 0x20CD
293 UNIQUE_ID_NV = 0x20CE
294 NUM_VIDEO_CAPTURE_SLOTS_NV = 0x20CF
295
296 # EXT_texture_from_pixmap enum:
297 BIND_TO_TEXTURE_RGB_EXT = 0x20D0
298 BIND_TO_TEXTURE_RGBA_EXT = 0x20D1
299 BIND_TO_MIPMAP_TEXTURE_EXT = 0x20D2
300 BIND_TO_TEXTURE_TARGETS_EXT = 0x20D3
301 Y_INVERTED_EXT = 0x20D4
302 TEXTURE_FORMAT_EXT = 0x20D5
303 TEXTURE_TARGET_EXT = 0x20D6
304 MIPMAP_TEXTURE_EXT = 0x20D7
305 TEXTURE_FORMAT_NONE_EXT = 0x20D8
306 TEXTURE_FORMAT_RGB_EXT = 0x20D9
307 TEXTURE_FORMAT_RGBA_EXT = 0x20DA
308 TEXTURE_1D_EXT = 0x20DB
309 TEXTURE_2D_EXT = 0x20DC
310 TEXTURE_RECTANGLE_EXT = 0x20DD
311 FRONT_LEFT_EXT = 0x20DE
312 FRONT_RIGHT_EXT = 0x20DF
313 BACK_LEFT_EXT = 0x20E0
314 BACK_RIGHT_EXT = 0x20E1
315 FRONT_EXT = GLX_FRONT_LEFT_EXT
316 BACK_EXT = GLX_BACK_LEFT_EXT
317 AUX0_EXT = 0x20E2
318 AUX1_EXT = 0x20E3
319 AUX2_EXT = 0x20E4
320 AUX3_EXT = 0x20E5
321 AUX4_EXT = 0x20E6
322 AUX5_EXT = 0x20E7
323 AUX6_EXT = 0x20E8
324 AUX7_EXT = 0x20E9
325 AUX8_EXT = 0x20EA
326 AUX9_EXT = 0x20EB
327
328 # NV_future_use: 0x20EC-0x20EF
329
330 NV_present_video enum:
331 NUM_VIDEO_SLOTS_NV = 0x20F0
332
333 EXT_swap_control enum:
334 SWAP_INTERVAL_EXT = 0x20F1
335 MAX_SWAP_INTERVAL_EXT = 0x20F2
336
337 # NV_future_use: 0x20F3-0x219F
338
339 ###############################################################################
340
341 # MESA (not in a reserved block)
342
343 # MESA_set_3dfx_mode enum:
344 # 3DFX_WINDOW_MODE_MESA = 0x1
345 # 3DFX_FULLSCREEN_MODE_MESA = 0x2
346
347 ###############################################################################
348
349 # SGI_future_use: 0x8029-0x802F
350 # SGIX_hyperpipe adds attribute name HYPERPIPE_ID_SGIX = 0x8030
351 # SGI_future_use: 0x8031-0x803F
352
353 ###############################################################################
354
355 # ARB_future_use: 0x8042-0x804F
356
357 ###############################################################################
358
359 # 3DFX: 0x8050-0x805F
360
361 # 3DFX_multisample enum:
362 # SAMPLE_BUFFERS_3DFX = 0x8050
363 # SAMPLES_3DFX = 0x8051
364
365 ###############################################################################
366
367 # OML: 0x8060-0x806F
368
369 # OML_swap_method enum:
370 # SWAP_METHOD_OML = 0x8060
371 # SWAP_EXCHANGE_OML = 0x8061
372 # SWAP_COPY_OML = 0x8062
373 # SWAP_UNDEFINED_OML = 0x8063
374
375 # OML_future_use: 0x8064-0x806F
376
377 ###############################################################################
378
379 # NVIDIA: 0x8070 - 0x816F
380
381 NVIDIA_future_use: 0x8070-0x816F
382
383 ###############################################################################
384
385 # SUN: 0x8170 - 0x817F
386
387 SUN_future_use: 0x8170-0x817F
388
389 ###############################################################################
390
391 # INTEL: 0x8180 - 0x818F
392
393 # INTEL_swap_event: 0x8180-??? (in process, see Khronos bug 5752)
394
395 INTEL_future_use: 0x8180-0x818F
396
397 ###############################################################################
398 ### Please remember that new GLX enum allocations must be obtained by request
399 ### to the Khronos API Registrar (see comments at the top of this file)
400 ### File requests in the Khronos Bugzilla, OpenGL project, Registry component.
401 ###############################################################################
402
403 # Any_vendor_future_use: 0x8180-0x9125
404
405 # Also includes a bitmask - see ContextProfileMask above
406 # ARB_create_context_profile enum: (equivalent to corresponding GL token)
407 CONTEXT_PROFILE_MASK_ARB = 0x9126
408
409 # Any_vendor_future_use: 0x9127-0xFFFF
410 #
411 # This range must be the last range in the file. To generate a new
412 # range, allocate multiples of 16 from the beginning of the
413 # Any_vendor_future_use range and update glxenum.spec, glxenumext.spec,
414 # and extensions.reserved.