1 # THIS FILE IS OBSOLETE. Please migrate away from using the
2 # ".spec" files to the XML Registry. See
3 # http://www.opengl.org/registry/api/README.txt
4 # for more information.
6 # This is the old (no longer canonical) GLX enumerant registry. It is
7 # no longer maintained or used for current header file generation.
9 # Copyright (c) 1991-2005 Silicon Graphics, Inc. All Rights Reserved.
10 # Copyright (c) 2006-2013 The Khronos Group, Inc.
12 # This document is licensed under the SGI Free Software B License Version
13 # 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
15 # $Revision: 21963 $ on $Date: 2013-06-13 02:52:31 -0700 (Thu, 13 Jun 2013) $
26 SGI_make_current_read
= 1
29 EXT_import_context
= 1
37 SGIS_blended_overlay
= 1
38 SGIS_shared_multisample
= 1
39 SUN_get_transparent_index
= 1
41 MESA_copy_sub_buffer
= 1
42 MESA_pixmap_colormap
= 1
43 MESA_release_buffers
= 1
44 MESA_set_3dfx_mode
= 1
45 SGIX_visual_select_group
= 1
61 BAD_HYPERPIPE_CONFIG_SGIX
= 91 # SGIX_hyperpipe
62 BAD_HYPERPIPE_SGIX
= 92 # "
64 # Reserved bits in bitfields of various purposes
66 GLXDrawableTypeMask enum
:
67 WINDOW_BIT
= 0x00000001 # DRAWABLE_TYPE value
68 PIXMAP_BIT
= 0x00000002 # "
69 PBUFFER_BIT
= 0x00000004 # "
70 WINDOW_BIT_SGIX
= 0x00000001 # DRAWABLE_TYPE_SGIX value
71 PIXMAP_BIT_SGIX
= 0x00000002 # "
72 PBUFFER_BIT_SGIX
= 0x00000004 # "
74 GLXRenderTypeMask enum
:
75 RGBA_BIT
= 0x00000001 # RENDER_TYPE value
76 COLOR_INDEX_BIT
= 0x00000002 # "
77 RGBA_BIT_SGIX
= 0x00000001 # RENDER_TYPE_SGIX value
78 COLOR_INDEX_BIT_SGIX
= 0x00000002 # "
79 RGBA_FLOAT_BIT_ARB
= 0x00000004 # RENDER_TYPE value (from ARB_fbconfig_float)
80 RGBA_UNSIGNED_FLOAT_BIT_EXT
= 0x00000008 # RENDER_TYPE value (from EXT_fbconfig_packed_float)
83 SYNC_FRAME_SGIX
= 0x00000000 # ChannelRectSyncSGIX synctype
84 SYNC_SWAP_SGIX
= 0x00000001 # "
87 PBUFFER_CLOBBER_MASK
= 0x08000000 # SelectEvent mask
88 BUFFER_CLOBBER_MASK_SGIX
= 0x08000000 # SelectEventSGIX mask
89 BUFFER_SWAP_COMPLETE_INTEL_MASK
= 0x04000000 # SelectEvent mask (for GLX_INTEL_swap_event)
91 GLXPbufferClobberMask enum
:
92 FRONT_LEFT_BUFFER_BIT
= 0x00000001 # PbufferClobberEvent mask
93 FRONT_RIGHT_BUFFER_BIT
= 0x00000002 # "
94 BACK_LEFT_BUFFER_BIT
= 0x00000004 # "
95 BACK_RIGHT_BUFFER_BIT
= 0x00000008 # "
96 AUX_BUFFERS_BIT
= 0x00000010 # "
97 DEPTH_BUFFER_BIT
= 0x00000020 # "
98 STENCIL_BUFFER_BIT
= 0x00000040 # "
99 ACCUM_BUFFER_BIT
= 0x00000080 # "
100 FRONT_LEFT_BUFFER_BIT_SGIX
= 0x00000001 # BufferClobberEventSGIX mask
101 FRONT_RIGHT_BUFFER_BIT_SGIX
= 0x00000002 # "
102 BACK_LEFT_BUFFER_BIT_SGIX
= 0x00000004 # "
103 BACK_RIGHT_BUFFER_BIT_SGIX
= 0x00000008 # "
104 AUX_BUFFERS_BIT_SGIX
= 0x00000010 # "
105 DEPTH_BUFFER_BIT_SGIX
= 0x00000020 # "
106 STENCIL_BUFFER_BIT_SGIX
= 0x00000040 # "
107 ACCUM_BUFFER_BIT_SGIX
= 0x00000080 # "
108 SAMPLE_BUFFERS_BIT_SGIX
= 0x00000100 # "
110 GLXHyperpipeTypeMask enum
:
111 HYPERPIPE_DISPLAY_PIPE_SGIX
= 0x00000001 # SGIX_hyperpipe
112 HYPERPIPE_RENDER_PIPE_SGIX
= 0x00000002 # "
114 GLXHyperpipeAttrib enum
:
115 PIPE_RECT_SGIX
= 0x00000001 # SGIX_hyperpipe
116 PIPE_RECT_LIMITS_SGIX
= 0x00000002 # "
117 HYPERPIPE_STEREO_SGIX
= 0x00000003 # "
118 HYPERPIPE_PIXEL_AVERAGE_SGIX
= 0x00000004 # "
120 GLXHyperpipeMisc enum
:
121 HYPERPIPE_PIPE_NAME_LENGTH_SGIX
= 80 # SGIX_hyperpipe
123 GLXBindToTextureTargetMask enum
:
124 TEXTURE_1D_BIT_EXT
= 0x00000001 # EXT_texture_from_pixmap
125 TEXTURE_2D_BIT_EXT
= 0x00000002
126 TEXTURE_RECTANGLE_BIT_EXT
= 0x00000004
128 # CONTEXT_FLAGS_ARB bits (shared with WGL and GL)
129 GLXContextFlags enum
:
130 CONTEXT_DEBUG_BIT_ARB
= 0x00000001 # ARB_create_context
131 CONTEXT_FORWARD_COMPATIBLE_BIT_ARB
= 0x00000002 # ARB_create_context
132 CONTEXT_ROBUST_ACCESS_BIT_ARB
= 0x00000004 # ARB_create_context_robustness
133 CONTEXT_RESET_ISOLATION_BIT_ARB
= 0x00000008 # ARB_create_context_robustness_isolation (reserved)
135 # CONTEXT_PROFILE_MASK_ARB bits
136 GLXContextProfileMask enum
:
137 CONTEXT_CORE_PROFILE_BIT_ARB
= 0x00000001 # ARB_create_context_profile
138 CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB
= 0x00000002 # ARB_create_context_profile
139 CONTEXT_ES_PROFILE_BIT_EXT
= 0x00000004 # EXT_create_context_es_profile
140 CONTEXT_ES2_PROFILE_BIT_EXT
= 0x00000004 # EXT_create_context_es2_profile
143 USE_GL
= 1 # Visual attributes
155 STENCIL_SIZE
= 13 # "
156 ACCUM_RED_SIZE
= 14 # "
157 ACCUM_GREEN_SIZE
= 15 # "
158 ACCUM_BLUE_SIZE
= 16 # "
159 ACCUM_ALPHA_SIZE
= 17 # "
160 CONFIG_CAVEAT
= 0x20 # "
161 X_VISUAL_TYPE
= 0x22 # "
162 TRANSPARENT_TYPE
= 0x23 # "
163 TRANSPARENT_INDEX_VALUE
= 0x24 # "
164 TRANSPARENT_RED_VALUE
= 0x25 # "
165 TRANSPARENT_GREEN_VALUE
= 0x26 # "
166 TRANSPARENT_BLUE_VALUE
= 0x27 # "
167 TRANSPARENT_ALPHA_VALUE
= 0x28 # "
168 DONT_CARE
= 0xFFFFFFFF # may be specified for ChooseFBConfig attributes
169 NONE
= 0x8000 # several attribute values
170 SLOW_CONFIG
= 0x8001 # CONFIG_CAVEAT attribute value
171 TRUE_COLOR
= 0x8002 # X_VISUAL_TYPE attribute value
172 DIRECT_COLOR
= 0x8003 # "
173 PSEUDO_COLOR
= 0x8004 # "
174 STATIC_COLOR
= 0x8005 # "
175 GRAY_SCALE
= 0x8006 # "
176 STATIC_GRAY
= 0x8007 # "
177 TRANSPARENT_RGB
= 0x8008 # TRANSPARENT_TYPE attribute value
178 TRANSPARENT_INDEX
= 0x8009 # "
179 VISUAL_ID
= 0x800B # Context attribute
181 NON_CONFORMANT_CONFIG
= 0x800D # CONFIG_CAVEAT attribute value
182 DRAWABLE_TYPE
= 0x8010 # FBConfig attribute
183 RENDER_TYPE
= 0x8011 # "
184 X_RENDERABLE
= 0x8012 # "
185 FBCONFIG_ID
= 0x8013 # "
186 RGBA_TYPE
= 0x8014 # CreateNewContext render_type value
187 COLOR_INDEX_TYPE
= 0x8015 # "
188 MAX_PBUFFER_WIDTH
= 0x8016 # FBConfig attribute
189 MAX_PBUFFER_HEIGHT
= 0x8017 # "
190 MAX_PBUFFER_PIXELS
= 0x8018 # "
191 PRESERVED_CONTENTS
= 0x801B # CreateGLXPbuffer attribute
192 LARGEST_PBUFFER
= 0x801C # "
193 WIDTH
= 0x801D # Drawable attribute
195 EVENT_MASK
= 0x801F # "
196 DAMAGED
= 0x8020 # PbufferClobber event_type value
198 WINDOW
= 0x8022 # PbufferClobber draw_type value
200 PBUFFER_HEIGHT
= 0x8040 # CreateGLXPbuffer attribute
201 PBUFFER_WIDTH
= 0x8041 # "
202 VISUAL_CAVEAT_EXT
= 0x20 # Visual attribute
203 X_VISUAL_TYPE_EXT
= 0x22 # "
204 TRANSPARENT_TYPE_EXT
= 0x23 # "
205 TRANSPARENT_INDEX_VALUE_EXT
= 0x24 # "
206 TRANSPARENT_RED_VALUE_EXT
= 0x25 # "
207 TRANSPARENT_GREEN_VALUE_EXT
= 0x26 # "
208 TRANSPARENT_BLUE_VALUE_EXT
= 0x27 # "
209 TRANSPARENT_ALPHA_VALUE_EXT
= 0x28 # "
210 NONE_EXT
= 0x8000 # several EXT attribute values
211 SLOW_VISUAL_EXT
= 0x8001 # VISUAL_CAVEAT_EXT attribute value
212 TRUE_COLOR_EXT
= 0x8002 # X_VISUAL_TYPE_EXT attribute value
213 DIRECT_COLOR_EXT
= 0x8003 # "
214 PSEUDO_COLOR_EXT
= 0x8004 # "
215 STATIC_COLOR_EXT
= 0x8005 # "
216 GRAY_SCALE_EXT
= 0x8006 # "
217 STATIC_GRAY_EXT
= 0x8007 # "
218 TRANSPARENT_RGB_EXT
= 0x8008 # TRANSPARENT_TYPE_EXT attribute value
219 TRANSPARENT_INDEX_EXT
= 0x8009 # "
220 SHARE_CONTEXT_EXT
= 0x800A # QueryContextInfoEXT attribute
221 VISUAL_ID_EXT
= 0x800B # "
222 SCREEN_EXT
= 0x800C # "
223 NON_CONFORMANT_VISUAL_EXT
= 0x800D # VISUAL_CAVEAT_EXT attribute value
224 DRAWABLE_TYPE_SGIX
= 0x8010 # FBConfigSGIX attribute
225 RENDER_TYPE_SGIX
= 0x8011 # "
226 X_RENDERABLE_SGIX
= 0x8012 # "
227 FBCONFIG_ID_SGIX
= 0x8013 # "
228 RGBA_TYPE_SGIX
= 0x8014 # CreateContextWithConfigSGIX render_type value
229 COLOR_INDEX_TYPE_SGIX
= 0x8015 # "
230 MAX_PBUFFER_WIDTH_SGIX
= 0x8016 # FBConfigSGIX attribute
231 MAX_PBUFFER_HEIGHT_SGIX
= 0x8017 # "
232 MAX_PBUFFER_PIXELS_SGIX
= 0x8018 # "
233 OPTIMAL_PBUFFER_WIDTH_SGIX
= 0x8019 # "
234 OPTIMAL_PBUFFER_HEIGHT_SGIX
= 0x801A # "
235 PRESERVED_CONTENTS_SGIX
= 0x801B # PbufferSGIX attribute
236 LARGEST_PBUFFER_SGIX
= 0x801C # "
237 WIDTH_SGIX
= 0x801D # "
238 HEIGHT_SGIX
= 0x801E # "
239 EVENT_MASK_SGIX
= 0x801F # "
240 DAMAGED_SGIX
= 0x8020 # BufferClobberSGIX event_type value
241 SAVED_SGIX
= 0x8021 # "
242 WINDOW_SGIX
= 0x8022 # BufferClobberSGIX draw_type value
243 PBUFFER_SGIX
= 0x8023 # "
244 DIGITAL_MEDIA_PBUFFER_SGIX
= 0x8024 # PbufferSGIX attribute
245 BLENDED_RGBA_SGIS
= 0x8025 # TRANSPARENT_TYPE_EXT attribute value
246 MULTISAMPLE_SUB_RECT_WIDTH_SGIS
= 0x8026 # Visual attribute (shared_multisample)
247 MULTISAMPLE_SUB_RECT_HEIGHT_SGIS
= 0x8027 # "
248 VISUAL_SELECT_GROUP_SGIX
= 0x8028 # Visual attribute (visual_select_group)
249 HYPERPIPE_ID_SGIX
= 0x8030 # Associated hyperpipe ID (SGIX_hyperpipe)
250 SAMPLE_BUFFERS_SGIS
= 100000 # Visual attribute (SGIS_multisample)
251 SAMPLES_SGIS
= 100001 # "
252 SAMPLE_BUFFERS_ARB
= 100000 # Visual attribute (ARB_multisample - alias of SGIS_multisample)
253 SAMPLES_ARB
= 100001 # "
254 SAMPLE_BUFFERS
= 100000 # Visual attribute (GLX 1.4 core - alias of SGIS_multisample)
256 COVERAGE_SAMPLES_NV
= 100001 # Visual attribute (NV_multisample_coverage - reuse SAMPLES_ARB)
258 ###############################################################################
260 # AMD: 0x1F00-0x1F02 (additional; see below; equivalent to corresponding WGL/GL tokens)
262 ###############################################################################
266 # Shared with WGL, synchronize create_context_* enums with wglenum.spec!
268 # Also includes a bitmask - see ContextFlags above
269 # ARB_create_context enum:
270 CONTEXT_MAJOR_VERSION_ARB
= 0x2091
271 CONTEXT_MINOR_VERSION_ARB
= 0x2092
272 # 0x2093 used for WGL_CONTEXT_LAYER_PLANE_ARB
273 CONTEXT_FLAGS_ARB
= 0x2094
274 # 0x2095 collides with WGL_ERROR_INVALID_VERSION_ARB!
275 CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB
= 0x2095
276 # 0x2096 used for WGL_ERROR_INVALID_PROFILE_ARB
278 # ARB_future_use: 0x2097-0x209F
280 ###############################################################################
282 # NVIDIA: 0x20A0 - 0x219F (shared with WGL)
284 # NV_float_buffer enum:
285 FLOAT_COMPONENTS_NV
= 0x20B0
286 # EXT_fbconfig_packed_float enum:
287 RGBA_UNSIGNED_FLOAT_TYPE_EXT
= 0x20B1
288 # ARB_framebuffer_sRGB enum:
289 FRAMEBUFFER_SRGB_CAPABLE_ARB
= 0x20B2
290 # EXT_framebuffer_sRGB enum:
291 FRAMEBUFFER_SRGB_CAPABLE_EXT
= 0x20B2
292 # NV_multisample_coverage enum:
293 COLOR_SAMPLES_NV
= 0x20B3
295 # NV_future_use: 0x20B4-0x20B8
297 # ARB_fbconfig_float enum:
298 RGBA_FLOAT_TYPE_ARB
= 0x20B9
300 # NV_future_use: 0x20BA-0x20C2
303 VIDEO_OUT_COLOR_NV
= 0x20C3
304 VIDEO_OUT_ALPHA_NV
= 0x20C4
305 VIDEO_OUT_DEPTH_NV
= 0x20C5
306 VIDEO_OUT_COLOR_AND_ALPHA_NV
= 0x20C6
307 VIDEO_OUT_COLOR_AND_DEPTH_NV
= 0x20C7
308 VIDEO_OUT_FRAME_NV
= 0x20C8
309 VIDEO_OUT_FIELD_1_NV
= 0x20C9
310 VIDEO_OUT_FIELD_2_NV
= 0x20CA
311 VIDEO_OUT_STACKED_FIELDS_1_2_NV
= 0x20CB
312 VIDEO_OUT_STACKED_FIELDS_2_1_NV
= 0x20CC
314 # NV_video_capture enum:
315 DEVICE_ID_NV
= 0x20CD
316 UNIQUE_ID_NV
= 0x20CE
317 NUM_VIDEO_CAPTURE_SLOTS_NV
= 0x20CF
319 # EXT_texture_from_pixmap enum:
320 BIND_TO_TEXTURE_RGB_EXT
= 0x20D0
321 BIND_TO_TEXTURE_RGBA_EXT
= 0x20D1
322 BIND_TO_MIPMAP_TEXTURE_EXT
= 0x20D2
323 BIND_TO_TEXTURE_TARGETS_EXT
= 0x20D3
324 Y_INVERTED_EXT
= 0x20D4
325 TEXTURE_FORMAT_EXT
= 0x20D5
326 TEXTURE_TARGET_EXT
= 0x20D6
327 MIPMAP_TEXTURE_EXT
= 0x20D7
328 TEXTURE_FORMAT_NONE_EXT
= 0x20D8
329 TEXTURE_FORMAT_RGB_EXT
= 0x20D9
330 TEXTURE_FORMAT_RGBA_EXT
= 0x20DA
331 TEXTURE_1D_EXT
= 0x20DB
332 TEXTURE_2D_EXT
= 0x20DC
333 TEXTURE_RECTANGLE_EXT
= 0x20DD
334 FRONT_LEFT_EXT
= 0x20DE
335 FRONT_RIGHT_EXT
= 0x20DF
336 BACK_LEFT_EXT
= 0x20E0
337 BACK_RIGHT_EXT
= 0x20E1
338 FRONT_EXT
= GLX_FRONT_LEFT_EXT
339 BACK_EXT
= GLX_BACK_LEFT_EXT
351 # NV_future_use: 0x20EC-0x20EF
353 NV_present_video enum
:
354 NUM_VIDEO_SLOTS_NV
= 0x20F0
356 EXT_swap_control enum
:
357 SWAP_INTERVAL_EXT
= 0x20F1
358 MAX_SWAP_INTERVAL_EXT
= 0x20F2
360 EXT_swap_control_tear enum
:
361 LATE_SWAPS_TEAR_EXT
= 0x20F3
364 BACK_BUFFER_AGE_EXT
= 0x20F4
366 # NV_future_use: 0x20F5-0x219F
368 ###############################################################################
372 # Shared with WGL, synchronize with wglenum.spec!
374 # WGL extensions: 0x21A0-0x21A1
376 GLX_AMD_gpu_association enum
:
377 GPU_VENDOR_AMD
= 0x1F00
378 GPU_RENDERER_STRING_AMD
= 0x1F01
379 GPU_OPENGL_VERSION_STRING_AMD
= 0x1F02
380 GPU_FASTEST_TARGET_GPUS_AMD
= 0x21A2
382 GPU_CLOCK_AMD
= 0x21A4
383 GPU_NUM_PIPES_AMD
= 0x21A5
384 GPU_NUM_SIMD_AMD
= 0x21A6
385 GPU_NUM_RB_AMD
= 0x21A7
386 GPU_NUM_SPI_AMD
= 0x21A8
388 # AMD_future_use: 0x21A9-0x21AF
390 ###############################################################################
392 # MESA (not in a reserved block)
394 # MESA_set_3dfx_mode enum:
395 # 3DFX_WINDOW_MODE_MESA = 0x1
396 # 3DFX_FULLSCREEN_MODE_MESA = 0x2
398 ###############################################################################
400 # SGI_future_use: 0x8029-0x802F
401 # SGIX_hyperpipe adds attribute name HYPERPIPE_ID_SGIX = 0x8030
402 # SGI_future_use: 0x8031-0x803F
404 ###############################################################################
406 # ARB_future_use: 0x8042-0x804F
408 ###############################################################################
410 # 3DFX: 0x8050-0x805F
412 # 3DFX_multisample enum:
413 # SAMPLE_BUFFERS_3DFX = 0x8050
414 # SAMPLES_3DFX = 0x8051
416 ###############################################################################
420 # OML_swap_method enum:
421 # SWAP_METHOD_OML = 0x8060
422 # SWAP_EXCHANGE_OML = 0x8061
423 # SWAP_COPY_OML = 0x8062
424 # SWAP_UNDEFINED_OML = 0x8063
426 # OML_future_use: 0x8064-0x806F
428 ###############################################################################
430 # NVIDIA: 0x8070 - 0x816F
432 NVIDIA_future_use
: 0x8070-0x816F
434 ###############################################################################
436 # SUN: 0x8170 - 0x817F
438 SUN_future_use
: 0x8170-0x817F
440 ###############################################################################
442 # INTEL: 0x8180 - 0x818F
444 # INTEL_swap_event: 0x8180-0x8182
445 # EXCHANGE_COMPLETE_INTEL = 0x8180
446 # COPY_COMPLETE_INTEL = 0x8181
447 # FLIP_COMPLETE_INTEL = 0x8182
449 INTEL_future_use
: 0x8183-0x818F
451 ###############################################################################
452 ### Please remember that new GLX enum allocations must be obtained by request
453 ### to the Khronos API Registrar (see comments at the top of this file)
454 ### File requests in the Khronos Bugzilla, OpenGL project, Registry component.
455 ### Also note that some GLX enum values are shared with GL and WGL, and
456 ### new ranges should be allocated with such overlaps in mind.
457 ###############################################################################
459 # Any_vendor_future_use: 0x8190-0x824F
461 ###############################################################################
464 # No additional values should be used from this range, which includes
465 # the range used by GL_ARB_robustness rounded up to multiples of 16.
467 # Also includes a bitmask - see ContextFlags above
468 # All values are shared with GLX and GL
469 GLX_ARB_create_context_robustness enum
:
470 LOSE_CONTEXT_ON_RESET_ARB
= 0x8252 # shared with GL_ARB_robustness
471 CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
= 0x8256 # shared with GL_ARB_robustness
472 NO_RESET_NOTIFICATION_ARB
= 0x8261 # shared with GL_ARB_robustness
474 # Any_vendor_future_use: 0x8270-0x9125
476 # Also includes a bitmask - see ContextProfileMask above
477 # All values are shared with GLX and GL
478 ARB_create_context_profile enum
:
479 CONTEXT_PROFILE_MASK_ARB
= 0x9126
481 # Any_vendor_future_use: 0x9127-0xFFFF
483 # This range must be the last range in the file. To generate a new
484 # range, allocate multiples of 16 from the beginning of the first
485 # Any_vendor_future_use range and update glxenum.spec, glxenumext.spec,
486 # and extensions.reserved.