Merge branch 'master' into wip-particles
[clinton/guile-figl.git] / upstream-doc / spec / glxenumext.spec
1 # Copyright (c) 1991-2005 Silicon Graphics, Inc. All Rights Reserved.
2 # Copyright (c) 2006-2010 The Khronos Group, Inc.
3 #
4 # This document is licensed under the SGI Free Software B License Version
5 # 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
6 #
7 # $Revision: 20030 $ on $Date: 2013-01-02 02:39:38 -0800 (Wed, 02 Jan 2013) $
8
9 # List of GLX enumerants for glxext.h header
10 #
11 # This is NOT the master GLX enumerant registry (glxenum.spec).
12 #
13 # Unlike glxenum.spec, glxenumext.spec is
14 # (1) In order by extension number.
15 # (2) Includes only GLX extensions and GLX 1.3/1.4 core enumerants,
16 # since it's assumed all <glx.h> today support at least GLX 1.2.
17 # (3) Has no 'Extensions' section, since enums are always
18 # conditionally protected against multiple definition
19 # by glextenum.pl.
20 # (4) Is processed by glextenum.pl, which has evolved
21 # from enum.pl - should merge back into one script.
22
23 # glxext.h version number - this should be automatically updated,
24 # when changing either enum or template spec files.
25
26 passthru:
27 passthru: /* Header file version number, required by OpenGL ABI for Linux */
28 passthru: /* glxext.h last updated 2013/01/02 */
29 passthru: /* Current version at http://www.opengl.org/registry/ */
30 passthru: #define GLX_GLXEXT_VERSION 34
31
32 ###############################################################################
33 #
34 # GLX 1.3 enums
35 #
36 ###############################################################################
37
38 VERSION_1_3 enum:
39 WINDOW_BIT = 0x00000001 # DRAWABLE_TYPE value
40 PIXMAP_BIT = 0x00000002 # "
41 PBUFFER_BIT = 0x00000004 # "
42 RGBA_BIT = 0x00000001 # RENDER_TYPE value
43 COLOR_INDEX_BIT = 0x00000002 # "
44 PBUFFER_CLOBBER_MASK = 0x08000000 # SelectEvent mask
45 FRONT_LEFT_BUFFER_BIT = 0x00000001 # PbufferClobberEvent mask
46 FRONT_RIGHT_BUFFER_BIT = 0x00000002 # "
47 BACK_LEFT_BUFFER_BIT = 0x00000004 # "
48 BACK_RIGHT_BUFFER_BIT = 0x00000008 # "
49 AUX_BUFFERS_BIT = 0x00000010 # "
50 DEPTH_BUFFER_BIT = 0x00000020 # "
51 STENCIL_BUFFER_BIT = 0x00000040 # "
52 ACCUM_BUFFER_BIT = 0x00000080 # "
53 CONFIG_CAVEAT = 0x20 # "
54 X_VISUAL_TYPE = 0x22 # "
55 TRANSPARENT_TYPE = 0x23 # "
56 TRANSPARENT_INDEX_VALUE = 0x24 # "
57 TRANSPARENT_RED_VALUE = 0x25 # "
58 TRANSPARENT_GREEN_VALUE = 0x26 # "
59 TRANSPARENT_BLUE_VALUE = 0x27 # "
60 TRANSPARENT_ALPHA_VALUE = 0x28 # "
61 DONT_CARE = 0xFFFFFFFF # may be specified for ChooseFBConfig attributes
62 NONE = 0x8000 # several attribute values
63 SLOW_CONFIG = 0x8001 # CONFIG_CAVEAT attribute value
64 TRUE_COLOR = 0x8002 # X_VISUAL_TYPE attribute value
65 DIRECT_COLOR = 0x8003 # "
66 PSEUDO_COLOR = 0x8004 # "
67 STATIC_COLOR = 0x8005 # "
68 GRAY_SCALE = 0x8006 # "
69 STATIC_GRAY = 0x8007 # "
70 TRANSPARENT_RGB = 0x8008 # TRANSPARENT_TYPE attribute value
71 TRANSPARENT_INDEX = 0x8009 # "
72 VISUAL_ID = 0x800B # Context attribute
73 SCREEN = 0x800C # "
74 NON_CONFORMANT_CONFIG = 0x800D # CONFIG_CAVEAT attribute value
75 DRAWABLE_TYPE = 0x8010 # FBConfig attribute
76 RENDER_TYPE = 0x8011 # "
77 X_RENDERABLE = 0x8012 # "
78 FBCONFIG_ID = 0x8013 # "
79 RGBA_TYPE = 0x8014 # CreateNewContext render_type value
80 COLOR_INDEX_TYPE = 0x8015 # "
81 MAX_PBUFFER_WIDTH = 0x8016 # FBConfig attribute
82 MAX_PBUFFER_HEIGHT = 0x8017 # "
83 MAX_PBUFFER_PIXELS = 0x8018 # "
84 PRESERVED_CONTENTS = 0x801B # CreateGLXPbuffer attribute
85 LARGEST_PBUFFER = 0x801C # "
86 WIDTH = 0x801D # Drawable attribute
87 HEIGHT = 0x801E # "
88 EVENT_MASK = 0x801F # "
89 DAMAGED = 0x8020 # PbufferClobber event_type value
90 SAVED = 0x8021 # "
91 WINDOW = 0x8022 # PbufferClobber draw_type value
92 PBUFFER = 0x8023 # "
93 PBUFFER_HEIGHT = 0x8040 # CreateGLXPbuffer attribute
94 PBUFFER_WIDTH = 0x8041 # "
95
96 ###############################################################################
97 #
98 # GLX 1.4 enums
99 #
100 ###############################################################################
101
102 VERSION_1_4 enum:
103 SAMPLE_BUFFERS = 100000
104 SAMPLES = 100001
105
106 ###############################################################################
107 #
108 # ARB GLX extensions, in ARB extension order
109 #
110 ###############################################################################
111
112 ###############################################################################
113
114 # No new tokens
115 # ARB Extension #2
116 ARB_get_proc_address enum:
117
118 ###############################################################################
119
120 # ARB Extension #5
121 ARB_multisample enum:
122 SAMPLE_BUFFERS_ARB = 100000
123 SAMPLES_ARB = 100001
124
125 ###############################################################################
126
127 # ARB Extension #28
128 ARB_vertex_buffer_object enum:
129 CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB = 0x2095
130
131 ###############################################################################
132
133 # ARB Extension #39
134 ARB_fbconfig_float enum:
135 RGBA_FLOAT_TYPE_ARB = 0x20B9
136 RGBA_FLOAT_BIT_ARB = 0x00000004
137
138 ###############################################################################
139
140 # ARB Extension #46
141 ARB_framebuffer_sRGB enum:
142 FRAMEBUFFER_SRGB_CAPABLE_ARB = 0x20B2
143
144 ###############################################################################
145
146 # ARB Extension #56
147 ARB_create_context enum:
148 CONTEXT_DEBUG_BIT_ARB = 0x00000001
149 CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x00000002
150 CONTEXT_MAJOR_VERSION_ARB = 0x2091
151 CONTEXT_MINOR_VERSION_ARB = 0x2092
152 CONTEXT_FLAGS_ARB = 0x2094
153
154 ###############################################################################
155
156 # ARB Extension #75
157 ARB_create_context_profile enum:
158 CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001
159 CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002
160 CONTEXT_PROFILE_MASK_ARB = 0x9126
161
162 ###############################################################################
163
164 # ARB Extension #101
165 # All values are shared with GLX and GL
166 ARB_create_context_robustness enum:
167 CONTEXT_ROBUST_ACCESS_BIT_ARB = 0x00000004
168 LOSE_CONTEXT_ON_RESET_ARB = 0x8252
169 CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256
170 NO_RESET_NOTIFICATION_ARB = 0x8261
171
172 ###############################################################################
173 #
174 # non-ARB GLX extensions, in registry order
175 #
176 ###############################################################################
177
178 ###############################################################################
179
180 # Unfortunately, the SGIS_multisample specification and the IRIX
181 # implementation are inconsistent; the spec assigns enums as follows.
182 # ARB_multisample reuses these enums with ARB suffixes, and it can't
183 # be changed at this point. So in the interest of supporting both
184 # extensions on non-IRIX platforms, the SGIS enums will be defined
185 # here as originally specified.
186
187 # Extension #25
188 SGIS_multisample enum:
189 SAMPLE_BUFFERS_SGIS = 100000
190 SAMPLES_SGIS = 100001
191
192 ###############################################################################
193
194 # Extension #28
195 EXT_visual_info enum:
196 X_VISUAL_TYPE_EXT = 0x22
197 TRANSPARENT_TYPE_EXT = 0x23
198 TRANSPARENT_INDEX_VALUE_EXT = 0x24
199 TRANSPARENT_RED_VALUE_EXT = 0x25
200 TRANSPARENT_GREEN_VALUE_EXT = 0x26
201 TRANSPARENT_BLUE_VALUE_EXT = 0x27
202 TRANSPARENT_ALPHA_VALUE_EXT = 0x28
203 NONE_EXT = 0x8000
204 TRUE_COLOR_EXT = 0x8002
205 DIRECT_COLOR_EXT = 0x8003
206 PSEUDO_COLOR_EXT = 0x8004
207 STATIC_COLOR_EXT = 0x8005
208 GRAY_SCALE_EXT = 0x8006
209 STATIC_GRAY_EXT = 0x8007
210 TRANSPARENT_RGB_EXT = 0x8008
211 TRANSPARENT_INDEX_EXT = 0x8009
212
213 ###############################################################################
214
215 # No new tokens
216 # Extension #40
217 SGI_swap_control enum:
218
219 ###############################################################################
220
221 # No new tokens
222 # Extension #41
223 SGI_video_sync enum:
224
225 ###############################################################################
226
227 # No new tokens
228 # Extension #42
229 SGI_make_current_read enum:
230
231 ###############################################################################
232
233 # No new tokens
234 # Extension #43
235 SGIX_video_source enum:
236
237 ###############################################################################
238
239 # Extension #44
240 EXT_visual_rating enum:
241 VISUAL_CAVEAT_EXT = 0x20
242 SLOW_VISUAL_EXT = 0x8001
243 NON_CONFORMANT_VISUAL_EXT = 0x800D
244 use EXT_visual_info NONE_EXT
245
246 ###############################################################################
247
248 # Extension #47
249 EXT_import_context enum:
250 SHARE_CONTEXT_EXT = 0x800A
251 VISUAL_ID_EXT = 0x800B
252 SCREEN_EXT = 0x800C
253
254 ###############################################################################
255
256 # Extension #49
257 SGIX_fbconfig enum:
258 WINDOW_BIT_SGIX = 0x00000001
259 PIXMAP_BIT_SGIX = 0x00000002
260 RGBA_BIT_SGIX = 0x00000001
261 COLOR_INDEX_BIT_SGIX = 0x00000002
262 DRAWABLE_TYPE_SGIX = 0x8010
263 RENDER_TYPE_SGIX = 0x8011
264 X_RENDERABLE_SGIX = 0x8012
265 FBCONFIG_ID_SGIX = 0x8013
266 RGBA_TYPE_SGIX = 0x8014
267 COLOR_INDEX_TYPE_SGIX = 0x8015
268 use EXT_import_context SCREEN_EXT
269
270 ###############################################################################
271
272 # Extension #50
273 SGIX_pbuffer enum:
274 PBUFFER_BIT_SGIX = 0x00000004
275 BUFFER_CLOBBER_MASK_SGIX = 0x08000000
276 FRONT_LEFT_BUFFER_BIT_SGIX = 0x00000001
277 FRONT_RIGHT_BUFFER_BIT_SGIX = 0x00000002
278 BACK_LEFT_BUFFER_BIT_SGIX = 0x00000004
279 BACK_RIGHT_BUFFER_BIT_SGIX = 0x00000008
280 AUX_BUFFERS_BIT_SGIX = 0x00000010
281 DEPTH_BUFFER_BIT_SGIX = 0x00000020
282 STENCIL_BUFFER_BIT_SGIX = 0x00000040
283 ACCUM_BUFFER_BIT_SGIX = 0x00000080
284 SAMPLE_BUFFERS_BIT_SGIX = 0x00000100
285 MAX_PBUFFER_WIDTH_SGIX = 0x8016
286 MAX_PBUFFER_HEIGHT_SGIX = 0x8017
287 MAX_PBUFFER_PIXELS_SGIX = 0x8018
288 OPTIMAL_PBUFFER_WIDTH_SGIX = 0x8019
289 OPTIMAL_PBUFFER_HEIGHT_SGIX = 0x801A
290 PRESERVED_CONTENTS_SGIX = 0x801B
291 LARGEST_PBUFFER_SGIX = 0x801C
292 WIDTH_SGIX = 0x801D
293 HEIGHT_SGIX = 0x801E
294 EVENT_MASK_SGIX = 0x801F
295 DAMAGED_SGIX = 0x8020
296 SAVED_SGIX = 0x8021
297 WINDOW_SGIX = 0x8022
298 PBUFFER_SGIX = 0x8023
299
300 ###############################################################################
301
302 # Extension #62
303 SGI_cushion enum:
304 # CUSHION_BUFFERS_SGI ????
305
306 ###############################################################################
307
308 # Extension #83
309 SGIX_video_resize enum:
310 SYNC_FRAME_SGIX = 0x00000000
311 SYNC_SWAP_SGIX = 0x00000001
312
313 ###############################################################################
314
315 # Extension #86
316 SGIX_dmbuffer enum:
317 DIGITAL_MEDIA_PBUFFER_SGIX = 0x8024
318
319 ###############################################################################
320
321 # No new tokens
322 # Extension #91
323 SGIX_swap_group enum:
324
325 ###############################################################################
326
327 # No new tokens
328 # Extension #92
329 SGIX_swap_barrier enum:
330
331 ###############################################################################
332
333 # Extension #142
334 SGIS_blended_overlay enum:
335 BLENDED_RGBA_SGIS = 0x8025
336
337 ###############################################################################
338
339 # Extension #143
340 SGIS_shared_multisample enum:
341 MULTISAMPLE_SUB_RECT_WIDTH_SGIS = 0x8026
342 MULTISAMPLE_SUB_RECT_HEIGHT_SGIS = 0x8027
343
344 ###############################################################################
345
346 # No new tokens
347 # Extension #183
348 SUN_get_transparent_index enum:
349
350 ###############################################################################
351
352 # Extension #207
353 3DFX_multisample enum:
354 SAMPLE_BUFFERS_3DFX = 0x8050
355 SAMPLES_3DFX = 0x8051
356
357 ###############################################################################
358
359 # No new tokens
360 # Extension #215
361 MESA_copy_sub_buffer enum:
362
363 ###############################################################################
364
365 # No new tokens
366 # Extension #216
367 MESA_pixmap_colormap enum:
368
369 ###############################################################################
370
371 # No new tokens
372 # Extension #217
373 MESA_release_buffers enum:
374
375 ###############################################################################
376
377 # Extension #218
378 MESA_set_3dfx_mode enum:
379 3DFX_WINDOW_MODE_MESA = 0x1
380 3DFX_FULLSCREEN_MODE_MESA = 0x2
381
382 ###############################################################################
383
384 # Extension #234
385 SGIX_visual_select_group enum:
386 VISUAL_SELECT_GROUP_SGIX = 0x8028
387
388 ###############################################################################
389
390 # Extension #237
391 OML_swap_method enum:
392 SWAP_METHOD_OML = 0x8060
393 SWAP_EXCHANGE_OML = 0x8061
394 SWAP_COPY_OML = 0x8062
395 SWAP_UNDEFINED_OML = 0x8063
396
397 ###############################################################################
398
399 # No new tokens
400 # Extension #238
401 OML_sync_control enum:
402
403 ###############################################################################
404
405 # Extension #281
406 NV_float_buffer enum:
407 FLOAT_COMPONENTS_NV = 0x20B0
408
409 ###############################################################################
410
411 # Extension #307
412 SGIX_hyperpipe enum:
413 HYPERPIPE_PIPE_NAME_LENGTH_SGIX = 80
414 BAD_HYPERPIPE_CONFIG_SGIX = 91
415 BAD_HYPERPIPE_SGIX = 92
416 HYPERPIPE_DISPLAY_PIPE_SGIX = 0x00000001
417 HYPERPIPE_RENDER_PIPE_SGIX = 0x00000002
418 PIPE_RECT_SGIX = 0x00000001
419 PIPE_RECT_LIMITS_SGIX = 0x00000002
420 HYPERPIPE_STEREO_SGIX = 0x00000003
421 HYPERPIPE_PIXEL_AVERAGE_SGIX = 0x00000004
422 HYPERPIPE_ID_SGIX = 0x8030
423
424 ###############################################################################
425
426 # No new tokens
427 # Extension #308
428 MESA_agp_offset enum:
429
430 ###############################################################################
431
432 # Extension #328
433 EXT_fbconfig_packed_float enum:
434 RGBA_UNSIGNED_FLOAT_TYPE_EXT = 0x20B1
435 RGBA_UNSIGNED_FLOAT_BIT_EXT = 0x00000008
436
437 ###############################################################################
438
439 # Extension #337
440 EXT_framebuffer_sRGB enum:
441 FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x20B2
442
443 ###############################################################################
444
445 # Extension #344
446 EXT_texture_from_pixmap enum:
447 TEXTURE_1D_BIT_EXT = 0x00000001
448 TEXTURE_2D_BIT_EXT = 0x00000002
449 TEXTURE_RECTANGLE_BIT_EXT = 0x00000004
450 BIND_TO_TEXTURE_RGB_EXT = 0x20D0
451 BIND_TO_TEXTURE_RGBA_EXT = 0x20D1
452 BIND_TO_MIPMAP_TEXTURE_EXT = 0x20D2
453 BIND_TO_TEXTURE_TARGETS_EXT = 0x20D3
454 Y_INVERTED_EXT = 0x20D4
455 TEXTURE_FORMAT_EXT = 0x20D5
456 TEXTURE_TARGET_EXT = 0x20D6
457 MIPMAP_TEXTURE_EXT = 0x20D7
458 TEXTURE_FORMAT_NONE_EXT = 0x20D8
459 TEXTURE_FORMAT_RGB_EXT = 0x20D9
460 TEXTURE_FORMAT_RGBA_EXT = 0x20DA
461 TEXTURE_1D_EXT = 0x20DB
462 TEXTURE_2D_EXT = 0x20DC
463 TEXTURE_RECTANGLE_EXT = 0x20DD
464 FRONT_LEFT_EXT = 0x20DE
465 FRONT_RIGHT_EXT = 0x20DF
466 BACK_LEFT_EXT = 0x20E0
467 BACK_RIGHT_EXT = 0x20E1
468 FRONT_EXT = GLX_FRONT_LEFT_EXT
469 BACK_EXT = GLX_BACK_LEFT_EXT
470 AUX0_EXT = 0x20E2
471 AUX1_EXT = 0x20E3
472 AUX2_EXT = 0x20E4
473 AUX3_EXT = 0x20E5
474 AUX4_EXT = 0x20E6
475 AUX5_EXT = 0x20E7
476 AUX6_EXT = 0x20E8
477 AUX7_EXT = 0x20E9
478 AUX8_EXT = 0x20EA
479 AUX9_EXT = 0x20EB
480
481 ###############################################################################
482
483 # Extension #347
484 NV_present_video enum:
485 NUM_VIDEO_SLOTS_NV = 0x20F0
486
487 ###############################################################################
488
489 # Extension #348
490 NV_video_out enum:
491 VIDEO_OUT_COLOR_NV = 0x20C3
492 VIDEO_OUT_ALPHA_NV = 0x20C4
493 VIDEO_OUT_DEPTH_NV = 0x20C5
494 VIDEO_OUT_COLOR_AND_ALPHA_NV = 0x20C6
495 VIDEO_OUT_COLOR_AND_DEPTH_NV = 0x20C7
496 VIDEO_OUT_FRAME_NV = 0x20C8
497 VIDEO_OUT_FIELD_1_NV = 0x20C9
498 VIDEO_OUT_FIELD_2_NV = 0x20CA
499 VIDEO_OUT_STACKED_FIELDS_1_2_NV = 0x20CB
500 VIDEO_OUT_STACKED_FIELDS_2_1_NV = 0x20CC
501
502 ###############################################################################
503
504 # No new tokens
505 # Extension #350
506 NV_swap_group enum:
507
508 ###############################################################################
509
510 # Extension #374
511 NV_video_capture enum:
512 DEVICE_ID_NV = 0x20CD
513 UNIQUE_ID_NV = 0x20CE
514 NUM_VIDEO_CAPTURE_SLOTS_NV = 0x20CF
515
516 ###############################################################################
517
518 # Extension #375
519 EXT_swap_control enum:
520 SWAP_INTERVAL_EXT = 0x20F1
521 MAX_SWAP_INTERVAL_EXT = 0x20F2
522
523 ###############################################################################
524
525 # No new tokens
526 # Extension #376
527 NV_copy_image enum:
528
529 ###############################################################################
530
531 # Extension #384
532 INTEL_swap_event enum:
533 BUFFER_SWAP_COMPLETE_INTEL_MASK = 0x04000000
534 EXCHANGE_COMPLETE_INTEL = 0x8180
535 COPY_COMPLETE_INTEL = 0x8181
536 FLIP_COMPLETE_INTEL = 0x8182
537
538 ###############################################################################
539
540 # Extension #393
541 NV_multisample_coverage enum:
542 COVERAGE_SAMPLES_NV = 100001
543 COLOR_SAMPLES_NV = 0x20B3
544
545 ###############################################################################
546
547 # Extension #398
548 AMD_gpu_association enum:
549 GPU_VENDOR_AMD = 0x1F00
550 GPU_RENDERER_STRING_AMD = 0x1F01
551 GPU_OPENGL_VERSION_STRING_AMD = 0x1F02
552 GPU_FASTEST_TARGET_GPUS_AMD = 0x21A2
553 GPU_RAM_AMD = 0x21A3
554 GPU_CLOCK_AMD = 0x21A4
555 GPU_NUM_PIPES_AMD = 0x21A5
556 GPU_NUM_SIMD_AMD = 0x21A6
557 GPU_NUM_RB_AMD = 0x21A7
558 GPU_NUM_SPI_AMD = 0x21A8
559
560 ###############################################################################
561
562 # Extension #399
563 # All values are shared with WGL and GL
564 EXT_create_context_es2_profile enum:
565 CONTEXT_ES2_PROFILE_BIT_EXT = 0x00000004
566
567 # Also extension #399
568 EXT_create_context_es_profile enum:
569 CONTEXT_ES_PROFILE_BIT_EXT = 0x00000004
570
571 ###############################################################################
572
573 # Extension #414
574 EXT_swap_control_tear enum:
575 LATE_SWAPS_TEAR_EXT = 0x20F3
576
577 ###############################################################################
578
579 # Extension #427
580 EXT_buffer_age enum:
581 BACK_BUFFER_AGE_EXT = 0x20F4