1 /* HACK: Prevent both Mesa and SGI's broken headers from screwing us */
2 #define __glxext_h_
3 #define __glx_glxext_h_
4 #include <GL/glx.h>
5 #undef __glxext_h_
6 #undef __glx_glxext_h_
7 
8 #ifndef GLX_VERSION_1_3
9 #define _ALLEGRO_GLX_VERSION_1_3
10 #define GLX_VERSION_1_3
11 #define GLX_WINDOW_BIT                     0x00000001
12 #define GLX_PIXMAP_BIT                     0x00000002
13 #define GLX_PBUFFER_BIT                    0x00000004
14 #define GLX_RGBA_BIT                       0x00000001
15 #define GLX_COLOR_INDEX_BIT                0x00000002
16 #define GLX_PBUFFER_CLOBBER_MASK           0x08000000
17 #define GLX_FRONT_LEFT_BUFFER_BIT          0x00000001
18 #define GLX_FRONT_RIGHT_BUFFER_BIT         0x00000002
19 #define GLX_BACK_LEFT_BUFFER_BIT           0x00000004
20 #define GLX_BACK_RIGHT_BUFFER_BIT          0x00000008
21 #define GLX_AUX_BUFFERS_BIT                0x00000010
22 #define GLX_DEPTH_BUFFER_BIT               0x00000020
23 #define GLX_STENCIL_BUFFER_BIT             0x00000040
24 #define GLX_ACCUM_BUFFER_BIT               0x00000080
25 #define GLX_CONFIG_CAVEAT                  0x20
26 #define GLX_X_VISUAL_TYPE                  0x22
27 #define GLX_TRANSPARENT_TYPE               0x23
28 #define GLX_TRANSPARENT_INDEX_VALUE        0x24
29 #define GLX_TRANSPARENT_RED_VALUE          0x25
30 #define GLX_TRANSPARENT_GREEN_VALUE        0x26
31 #define GLX_TRANSPARENT_BLUE_VALUE         0x27
32 #define GLX_TRANSPARENT_ALPHA_VALUE        0x28
33 #define GLX_DONT_CARE                      0xFFFFFFFF
34 #define GLX_NONE                           0x8000
35 #define GLX_SLOW_CONFIG                    0x8001
36 #define GLX_TRUE_COLOR                     0x8002
37 #define GLX_DIRECT_COLOR                   0x8003
38 #define GLX_PSEUDO_COLOR                   0x8004
39 #define GLX_STATIC_COLOR                   0x8005
40 #define GLX_GRAY_SCALE                     0x8006
41 #define GLX_STATIC_GRAY                    0x8007
42 #define GLX_TRANSPARENT_RGB                0x8008
43 #define GLX_TRANSPARENT_INDEX              0x8009
44 #define GLX_VISUAL_ID                      0x800B
45 #define GLX_SCREEN                         0x800C
46 #define GLX_NON_CONFORMANT_CONFIG          0x800D
47 #define GLX_DRAWABLE_TYPE                  0x8010
48 #define GLX_RENDER_TYPE                    0x8011
49 #define GLX_X_RENDERABLE                   0x8012
50 #define GLX_FBCONFIG_ID                    0x8013
51 #define GLX_RGBA_TYPE                      0x8014
52 #define GLX_COLOR_INDEX_TYPE               0x8015
53 #define GLX_MAX_PBUFFER_WIDTH              0x8016
54 #define GLX_MAX_PBUFFER_HEIGHT             0x8017
55 #define GLX_MAX_PBUFFER_PIXELS             0x8018
56 #define GLX_PRESERVED_CONTENTS             0x801B
57 #define GLX_LARGEST_PBUFFER                0x801C
58 #define GLX_WIDTH                          0x801D
59 #define GLX_HEIGHT                         0x801E
60 #define GLX_EVENT_MASK                     0x801F
61 #define GLX_DAMAGED                        0x8020
62 #define GLX_SAVED                          0x8021
63 #define GLX_WINDOW                         0x8022
64 #define GLX_PBUFFER                        0x8023
65 #define GLX_PBUFFER_HEIGHT                 0x8040
66 #define GLX_PBUFFER_WIDTH                  0x8041
67 #endif
68 
69 #ifndef GLX_VERSION_1_4
70 #define _ALLEGRO_GLX_VERSION_1_4
71 #define GLX_VERSION_1_4
72 #define GLX_SAMPLE_BUFFERS                 100000
73 #define GLX_SAMPLES                        100001
74 #endif
75 
76 #ifndef GLX_ARB_get_proc_address
77 #define _ALLEGRO_GLX_ARB_get_proc_address
78 #define GLX_ARB_get_proc_address
79 typedef void (*__GLXextFuncPtr)(void);
80 #endif
81 
82 #ifndef GLX_ARB_multisample
83 #define _ALLEGRO_GLX_ARB_multisample
84 #define GLX_ARB_multisample
85 #define GLX_SAMPLE_BUFFERS_ARB             100000
86 #define GLX_SAMPLES_ARB                    100001
87 #endif
88 
89 #ifndef GLX_ARB_vertex_buffer_object
90 #define GLX_ARB_vertex_buffer_object
91 #define _ALLEGRO_GLX_ARB_vertex_buffer_object
92 #define GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB 0x2095
93 #endif
94 
95 #ifndef GLX_ARB_fbconfig_float
96 #define GLX_ARB_fbconfig_float
97 #define _ALLEGRO_GLX_ARB_fbconfig_float
98 #define GLX_RGBA_FLOAT_TYPE_ARB            0x20B9
99 #define GLX_RGBA_FLOAT_BIT_ARB             0x00000004
100 #endif
101 
102 #ifndef GLX_ARB_create_context
103 #define GLX_ARB_create_context
104 #define _ALLEGRO_GLX_ARB_create_context
105 #define GLX_CONTEXT_DEBUG_BIT_ARB          0x00000001
106 #define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
107 #define GLX_CONTEXT_MAJOR_VERSION_ARB      0x2091
108 #define GLX_CONTEXT_MINOR_VERSION_ARB      0x2092
109 #define GLX_CONTEXT_FLAGS_ARB              0x2094
110 #endif
111 
112 #ifndef GLX_ARB_create_context_profile
113 #define GLX_ARB_create_context_profile
114 #define _ALLEGRO_GLX_ARB_create_context_profile
115 #define GLX_CONTEXT_CORE_PROFILE_BIT_ARB   0x00000001
116 #define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
117 #define GLX_CONTEXT_PROFILE_MASK_ARB       0x9126
118 #endif
119 
120 #ifndef GLX_SGIS_multisample
121 #define _ALLEGRO_GLX_SGIS_multisample
122 #define GLX_SGIS_multisample
123 #define GLX_SAMPLE_BUFFERS_SGIS            100000
124 #define GLX_SAMPLES_SGIS                   100001
125 #endif
126 
127 /* Fix for system headers that define GLX_VERSION_1_4 but do not define
128  * GLX_SAMPLES and GLX_SAMPLE_BUFFERS. */
129 #ifndef GLX_SAMPLES
130 #define GLX_SAMPLE_BUFFERS                 100000
131 #define GLX_SAMPLES                        100001
132 #endif
133 
134 #ifndef GLX_EXT_visual_info
135 #define _ALLEGRO_GLX_EXT_visual_info
136 #define GLX_EXT_visual_info
137 #define GLX_X_VISUAL_TYPE_EXT              0x22
138 #define GLX_TRANSPARENT_TYPE_EXT           0x23
139 #define GLX_TRANSPARENT_INDEX_VALUE_EXT    0x24
140 #define GLX_TRANSPARENT_RED_VALUE_EXT      0x25
141 #define GLX_TRANSPARENT_GREEN_VALUE_EXT    0x26
142 #define GLX_TRANSPARENT_BLUE_VALUE_EXT     0x27
143 #define GLX_TRANSPARENT_ALPHA_VALUE_EXT    0x28
144 #define GLX_NONE_EXT                       0x8000
145 #define GLX_TRUE_COLOR_EXT                 0x8002
146 #define GLX_DIRECT_COLOR_EXT               0x8003
147 #define GLX_PSEUDO_COLOR_EXT               0x8004
148 #define GLX_STATIC_COLOR_EXT               0x8005
149 #define GLX_GRAY_SCALE_EXT                 0x8006
150 #define GLX_STATIC_GRAY_EXT                0x8007
151 #define GLX_TRANSPARENT_RGB_EXT            0x8008
152 #define GLX_TRANSPARENT_INDEX_EXT          0x8009
153 #endif
154 
155 #ifndef GLX_EXT_visual_rating
156 #define _ALLEGRO_GLX_EXT_visual_rating
157 #define GLX_EXT_visual_rating
158 #define GLX_VISUAL_CAVEAT_EXT              0x20
159 #define GLX_SLOW_VISUAL_EXT                0x8001
160 #define GLX_NON_CONFORMANT_VISUAL_EXT      0x800D
161 /* GLX_NONE_EXT */
162 #endif
163 
164 #ifndef GLX_EXT_import_context
165 #define _ALLEGRO_GLX_EXT_import_context
166 #define GLX_EXT_import_context
167 #define GLX_SHARE_CONTEXT_EXT              0x800A
168 #define GLX_VISUAL_ID_EXT                  0x800B
169 #define GLX_SCREEN_EXT                     0x800C
170 #endif
171 
172 #ifndef GLX_SGIX_fbconfig
173 #define _ALLEGRO_GLX_SGIX_fbconfig
174 #define GLX_SGIX_fbconfig
175 typedef XID GLXFBConfigIDSGIX;
176 typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
177 #define GLX_WINDOW_BIT_SGIX                0x00000001
178 #define GLX_PIXMAP_BIT_SGIX                0x00000002
179 #define GLX_RGBA_BIT_SGIX                  0x00000001
180 #define GLX_COLOR_INDEX_BIT_SGIX           0x00000002
181 #define GLX_DRAWABLE_TYPE_SGIX             0x8010
182 #define GLX_RENDER_TYPE_SGIX               0x8011
183 #define GLX_X_RENDERABLE_SGIX              0x8012
184 #define GLX_FBCONFIG_ID_SGIX               0x8013
185 #define GLX_RGBA_TYPE_SGIX                 0x8014
186 #define GLX_COLOR_INDEX_TYPE_SGIX          0x8015
187 /* GLX_SCREEN_EXT */
188 #endif
189 
190 #ifndef GLX_SGIX_pbuffer
191 #define _ALLEGRO_GLX_SGIX_pbuffer
192 #define GLX_SGIX_pbuffer
193 typedef XID GLXPbufferSGIX;
194 typedef struct {
195     int type;
196     unsigned long serial;  /* # of last request processed by server */
197     Bool send_event;       /* true if this came for SendEvent request */
198     Display *display;      /* display the event was read from */
199     GLXDrawable drawable;  /* i.d. of Drawable */
200     int event_type;        /* GLX_DAMAGED_SGIX or GLX_SAVED_SGIX */
201     int draw_type;         /* GLX_WINDOW_SGIX or GLX_PBUFFER_SGIX */
202     unsigned int mask;     /* mask indicating which buffers are affected*/
203     int x, y;
204     int width, height;
205     int count;             /* if nonzero, at least this many more */
206 } GLXBufferClobberEventSGIX;
207 #define GLX_PBUFFER_BIT_SGIX               0x00000004
208 #define GLX_BUFFER_CLOBBER_MASK_SGIX       0x08000000
209 #define GLX_FRONT_LEFT_BUFFER_BIT_SGIX     0x00000001
210 #define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX    0x00000002
211 #define GLX_BACK_LEFT_BUFFER_BIT_SGIX      0x00000004
212 #define GLX_BACK_RIGHT_BUFFER_BIT_SGIX     0x00000008
213 #define GLX_AUX_BUFFERS_BIT_SGIX           0x00000010
214 #define GLX_DEPTH_BUFFER_BIT_SGIX          0x00000020
215 #define GLX_STENCIL_BUFFER_BIT_SGIX        0x00000040
216 #define GLX_ACCUM_BUFFER_BIT_SGIX          0x00000080
217 #define GLX_SAMPLE_BUFFERS_BIT_SGIX        0x00000100
218 #define GLX_MAX_PBUFFER_WIDTH_SGIX         0x8016
219 #define GLX_MAX_PBUFFER_HEIGHT_SGIX        0x8017
220 #define GLX_MAX_PBUFFER_PIXELS_SGIX        0x8018
221 #define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX     0x8019
222 #define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX    0x801A
223 #define GLX_PRESERVED_CONTENTS_SGIX        0x801B
224 #define GLX_LARGEST_PBUFFER_SGIX           0x801C
225 #define GLX_WIDTH_SGIX                     0x801D
226 #define GLX_HEIGHT_SGIX                    0x801E
227 #define GLX_EVENT_MASK_SGIX                0x801F
228 #define GLX_DAMAGED_SGIX                   0x8020
229 #define GLX_SAVED_SGIX                     0x8021
230 #define GLX_WINDOW_SGIX                    0x8022
231 #define GLX_PBUFFER_SGIX                   0x8023
232 #endif
233 
234 #ifndef GLX_SGIX_video_resize
235 #define _ALLEGRO_GLX_SGIX_video_resize
236 #define GLX_SGIX_video_resize
237 #define GLX_SYNC_FRAME_SGIX                0x00000000
238 #define GLX_SYNC_SWAP_SGIX                 0x00000001
239 #endif
240 
241 #ifndef GLX_SGIX_dmbuffer
242 #define _ALLEGRO_GLX_SGIX_dmbuffer
243 #define GLX_SGIX_dmbuffer
244 #define GLX_DIGITAL_MEDIA_PBUFFER_SGIX     0x8024
245 #endif
246 
247 #ifndef GLX_SGIS_blended_overlay
248 #define _ALLEGRO_GLX_SGIS_blended_overlay
249 #define GLX_SGIS_blended_overlay
250 #define GLX_BLENDED_RGBA_SGIS              0x8025
251 #endif
252 
253 #ifndef GLX_SGIS_shared_multisample
254 #define _ALLEGRO_GLX_SGIS_shared_multisample
255 #define GLX_SGIS_shared_multisample
256 #define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
257 #define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
258 #endif
259 
260 #ifndef GLX_3DFX_multisample
261 #define _ALLEGRO_GLX_3DFX_multisample
262 #define GLX_3DFX_multisample
263 #define GLX_SAMPLE_BUFFERS_3DFX            0x8050
264 #define GLX_SAMPLES_3DFX                   0x8051
265 #endif
266 
267 #ifndef GLX_MESA_set_3dfx_mode
268 #define _ALLEGRO_GLX_MESA_set_3dfx_mode
269 #define GLX_MESA_set_3dfx_mode
270 #define GLX_3DFX_WINDOW_MODE_MESA          0x1
271 #define GLX_3DFX_FULLSCREEN_MODE_MESA      0x2
272 #endif
273 
274 #ifndef GLX_SGIX_visual_select_group
275 #define _ALLEGRO_GLX_SGIX_visual_select_group
276 #define GLX_SGIX_visual_select_group
277 #define GLX_VISUAL_SELECT_GROUP_SGIX       0x8028
278 #endif
279 
280 #ifndef GLX_OML_swap_method
281 #define _ALLEGRO_GLX_OML_swap_method
282 #define GLX_OML_swap_method
283 #define GLX_SWAP_METHOD_OML                0x8060
284 #define GLX_SWAP_EXCHANGE_OML              0x8061
285 #define GLX_SWAP_COPY_OML                  0x8062
286 #define GLX_SWAP_UNDEFINED_OML             0x8063
287 #endif
288 
289 #ifndef GLX_SGIX_video_source
290 #define _ALLEGRO_GLX_SGIX_video_source
291 #define GLX_SGIX_video_source
292 typedef XID GLXVideoSourceSGIX;
293 #endif
294 
295 #ifndef GLX_SGI_video_sync
296 #define GLX_SGI_video_sync
297 #define _ALLEGRO_GLX_SGI_video_sync
298 #endif
299 
300 #ifndef GLX_SGI_swap_control
301 #define GLX_SGI_swap_control
302 #define _ALLEGRO_GLX_SGI_swap_control
303 #endif
304 
305 #ifndef GLX_SGI_make_current_read
306 #define GLX_SGI_make_current_read
307 #define _ALLEGRO_GLX_SGI_make_current_read
308 #endif
309 
310 #ifndef GLX_SGI_cushion
311 #define GLX_SGI_cushion
312 #define _ALLEGRO_GLX_SGI_cushion
313 #endif
314 
315 #ifndef GLX_SGIX_swap_group
316 #define GLX_SGIX_swap_group
317 #define _ALLEGRO_GLX_SGIX_swap_group
318 #endif
319 
320 #ifndef GLX_SGIX_swap_barrier
321 #define GLX_SGIX_swap_barrier
322 #define _ALLEGRO_GLX_SGIX_swap_barrier
323 #endif
324 
325 #ifndef GLX_SUN_get_transparent_index
326 #define GLX_SUN_get_transparent_index
327 #define _ALLEGRO_GLX_SUN_get_transparent_index
328 #endif
329 
330 #ifndef GLX_MESA_copy_sub_buffer
331 #define GLX_MESA_copy_sub_buffer
332 #define _ALLEGRO_GLX_MESA_copy_sub_buffer
333 #endif
334 
335 #ifndef GLX_MESA_pixmap_colormap
336 #define GLX_MESA_pixmap_colormap
337 #define _ALLEGRO_GLX_MESA_pixmap_colormap
338 #endif
339 
340 #ifndef GLX_MESA_release_buffers
341 #define GLX_MESA_release_buffers
342 #define _ALLEGRO_GLX_MESA_release_buffers
343 #endif
344 
345 #ifndef GLX_OML_sync_control
346 #define GLX_OML_sync_control
347 #define _ALLEGRO_GLX_OML_sync_control
348 #endif
349 
350 #ifndef GLX_SGIX_hyperpipe
351 #define GLX_SGIX_hyperpipe
352 #define _ALLEGRO_GLX_SGIX_hyperpipe
353 #define GLX_HYPERPIPE_ID_SGIX              0x8030
354 #define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
355 #define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX    0x00000001
356 #define GLX_HYPERPIPE_RENDER_PIPE_SGIX     0x00000002
357 #define GLX_PIPE_RECT_SGIX                 0x00000001
358 #define GLX_PIPE_RECT_LIMITS_SGIX          0x00000002
359 #define GLX_HYPERPIPE_STEREO_SGIX          0x00000003
360 #define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX   0x00000004
361 #define GLX_BAD_HYPERPIPE_CONFIG_SGIX      91
362 #define GLX_BAD_HYPERPIPE_SGIX             92
363 
364 typedef struct {
365 	char  pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
366 	int  networkId;
367 } GLXHyperpipeNetworkSGIX;
368 
369 typedef struct {
370 	char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
371 	int channel;
372 	unsigned int participationType;
373 	int timeSlice;
374 } GLXHyperpipeConfigSGIX;
375 
376 typedef struct {
377 	char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
378 	int srcXOrigin;
379 	int srcYOrigin;
380 	int srcWidth;
381 	int srcHeight;
382 	int destXOrigin;
383 	int destYOrigin;
384 	int destWidth;
385 	int destHeight;
386 } GLXPipeRect;
387 
388 typedef struct {
389 	char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
390 	int XOrigin;
391 	int YOrigin;
392 	int maxHeight;
393 	int maxWidth;
394 } GLXPipeRectLimits;
395 #endif
396 
397 
398 #ifndef GLX_MESA_agp_offset
399 #define GLX_MESA_agp_offset
400 #define _ALLEGRO_GLX_MESA_agp_offset
401 #endif
402 
403 #ifndef GLX_EXT_framebuffer_sRGB
404 #define GLX_EXT_framebuffer_sRGB
405 #define _ALLEGRO_GLX_EXT_framebuffer_sRGB
406 #define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT   0x20B2
407 #endif
408 
409 #ifndef GLX_EXT_fbconfig_packed_float
410 #define GLX_EXT_fbconfig_packed_float
411 #define _ALLEGRO_GLX_EXT_fbconfig_packed_float
412 #define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
413 #define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT  0x00000008
414 #endif
415 
416 #ifndef GLX_EXT_texture_from_pixmap
417 #define GLX_EXT_texture_from_pixmap
418 #define _ALLEGRO_GLX_EXT_texture_from_pixmap
419 #define GLX_BIND_TO_TEXTURE_RGB_EXT      0x20D0
420 #define GLX_BIND_TO_TEXTURE_RGBA_EXT     0x20D1
421 #define GLX_BIND_TO_MIPMAP_TEXTURE_EXT   0x20D2
422 #define GLX_BIND_TO_TEXTURE_TARGETS_EXT  0x20D3
423 #define GLX_Y_INVERTED_EXT               0x20D4
424 #define GLX_TEXTURE_FORMAT_EXT           0x20D5
425 #define GLX_TEXTURE_TARGET_EXT           0x20D6
426 #define GLX_MIPMAP_TEXTURE_EXT           0x20D7
427 #define GLX_TEXTURE_FORMAT_NONE_EXT      0x20D8
428 #define GLX_TEXTURE_FORMAT_RGB_EXT       0x20D9
429 #define GLX_TEXTURE_FORMAT_RGBA_EXT      0x20DA
430 #define GLX_TEXTURE_1D_BIT_EXT           0x00000001
431 #define GLX_TEXTURE_2D_BIT_EXT           0x00000002
432 #define GLX_TEXTURE_RECTANGLE_BIT_EXT    0x00000004
433 #define GLX_TEXTURE_1D_EXT               0x20DB
434 #define GLX_TEXTURE_2D_EXT               0x20DC
435 #define GLX_TEXTURE_RECTANGLE_EXT        0x20DD
436 #define GLX_FRONT_LEFT_EXT               0x20DE
437 #define GLX_FRONT_RIGHT_EXT              0x20DF
438 #define GLX_BACK_LEFT_EXT                0x20E0
439 #define GLX_BACK_RIGHT_EXT               0x20E1
440 #define GLX_FRONT_EXT                    GLX_FRONT_LEFT_EXT
441 #define GLX_BACK_EXT                     GLX_BACK_LEFT_EXT
442 #define GLX_AUX0_EXT                     0x20E2
443 #define GLX_AUX1_EXT                     0x20E3
444 #define GLX_AUX2_EXT                     0x20E4
445 #define GLX_AUX3_EXT                     0x20E5
446 #define GLX_AUX4_EXT                     0x20E6
447 #define GLX_AUX5_EXT                     0x20E7
448 #define GLX_AUX6_EXT                     0x20E8
449 #define GLX_AUX7_EXT                     0x20E9
450 #define GLX_AUX8_EXT                     0x20EA
451 #define GLX_AUX9_EXT                     0x20EB
452 #endif
453 
454 #ifndef GLX_NV_present_video
455 #define GLX_NV_present_video
456 #define _ALLEGRO_GLX_NV_present_video
457 #define GLX_GLX_NUM_VIDEO_SLOTS_NV         0x20F0
458 #endif
459 
460 #ifndef GLX_NV_video_output
461 #define GLX_NV_video_output
462 #define _ALLEGRO_GLX_NV_video_output
463 #define GLX_VIDEO_OUT_COLOR_NV           0x20C3
464 #define GLX_VIDEO_OUT_ALPHA_NV           0x20C4
465 #define GLX_VIDEO_OUT_DEPTH_NV           0x20C5
466 #define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
467 #define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
468 #define GLX_VIDEO_OUT_FRAME_NV           0x20C8
469 #define GLX_VIDEO_OUT_FIELD_1_NV         0x20C9
470 #define GLX_VIDEO_OUT_FIELD_2_NV         0x20CA
471 typedef unsigned int GLXVideoDeviceNV;
472 #endif
473 
474 #ifndef GLX_NV_swap_group
475 #define GLX_NV_swap_group
476 #define _ALLEGRO_GLX_NV_swap_group
477 #endif
478 
479 #ifndef GLX_NV_video_capture
480 #define GLX_NV_video_capture
481 #define _ALLEGRO_GLX_NV_video_capture
482 #define GLX_DEVICE_ID_NV                   0x20CD
483 #define GLX_UNIQUE_ID_NV                   0x20CE
484 #define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV     0x20CF
485 typedef XID GLXVideoCaptureDeviceNV;
486 #endif
487 
488 #ifndef GLX_EXT_swap_control
489 #define GLX_EXT_swap_control
490 #define _ALLEGRO_GLX_EXT_swap_control
491 #define GLX_SWAP_INTERVAL_EXT              0x20F1
492 #define GLX_MAX_SWAP_INTERVAL_EXT          0x20F2
493 #endif
494 
495 #ifndef GLX_NV_copy_image
496 #define GLX_NV_copy_image
497 #define _ALLEGRO_GLX_NV_copy_image
498 #endif
499 
500 #ifndef GLX_INTEL_swap_event
501 #define GLX_INTEL_swap_event
502 #define _ALLEGRO_GLX_INTEL_swap_event
503 #define GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000
504 #define GLX_EXCHANGE_COMPLETE_INTEL        0x8180
505 #define GLX_COPY_COMPLETE_INTEL            0x8181
506 #define GLX_FLIP_COMPLETE_INTEL            0x8182
507 #endif
508 
509 #ifndef GLX_EXT_create_context_es_profile
510 #define GLX_EXT_create_context_es_profile
511 #define GLX_EXT_create_context_es2_profile
512 #define _ALLEGRO_GLX_EXT_create_context_es_profile
513 #define GLX_CONTEXT_ES_PROFILE_BIT_EXT		0x00000004
514 #define GLX_CONTEXT_ES2_PROFILE_BIT_EXT		0x00000004
515 #endif
516