glxext.h revision 559da98c2be577d918a847080b78033947a1767a
1fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef __glxext_h_
2fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define __glxext_h_
3fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
4fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef __cplusplus
5fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern "C" {
6fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
7fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
8fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul/*
939bf48f281a81fc24a6de00cec243672df2be653Brian Paul** Copyright (c) 2007-2009 The Khronos Group Inc.
10fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul**
11344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** Permission is hereby granted, free of charge, to any person obtaining a
12344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** copy of this software and/or associated documentation files (the
13344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** "Materials"), to deal in the Materials without restriction, including
14344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** without limitation the rights to use, copy, modify, merge, publish,
15344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** distribute, sublicense, and/or sell copies of the Materials, and to
16344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** permit persons to whom the Materials are furnished to do so, subject to
17344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** the following conditions:
18fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul**
19344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** The above copyright notice and this permission notice shall be included
20344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** in all copies or substantial portions of the Materials.
21fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul**
22344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
25344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
26344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
27344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
28344c3f7379ab4db749e7e8513be9be8fbb9f126cBrian** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
29fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul*/
30fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
3139bf48f281a81fc24a6de00cec243672df2be653Brian Paul/* Function declaration macros - to move into glplatform.h */
3239bf48f281a81fc24a6de00cec243672df2be653Brian Paul
336ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
34fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define WIN32_LEAN_AND_MEAN 1
35fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#include <windows.h>
36fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
37fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
38fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef APIENTRY
39fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define APIENTRY
40fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
416ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifndef APIENTRYP
426ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define APIENTRYP APIENTRY *
436ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif
44e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#ifndef GLAPI
45e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#define GLAPI extern
46e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#endif
47fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
48fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul/*************************************************************/
49fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
50fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul/* Header file version number, required by OpenGL ABI for Linux */
51559da98c2be577d918a847080b78033947a1767aBrian Paul/* glxext.h last updated 2009/10/08 */
523cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul/* Current version at http://www.opengl.org/registry/ */
53559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_GLXEXT_VERSION 25
54fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
55fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_VERSION_1_3
56fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_WINDOW_BIT                     0x00000001
57fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PIXMAP_BIT                     0x00000002
58fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PBUFFER_BIT                    0x00000004
59fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_RGBA_BIT                       0x00000001
60fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_COLOR_INDEX_BIT                0x00000002
61fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PBUFFER_CLOBBER_MASK           0x08000000
62fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_FRONT_LEFT_BUFFER_BIT          0x00000001
63fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_FRONT_RIGHT_BUFFER_BIT         0x00000002
64fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_BACK_LEFT_BUFFER_BIT           0x00000004
65fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_BACK_RIGHT_BUFFER_BIT          0x00000008
66fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_AUX_BUFFERS_BIT                0x00000010
67fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DEPTH_BUFFER_BIT               0x00000020
68fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_STENCIL_BUFFER_BIT             0x00000040
69fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_ACCUM_BUFFER_BIT               0x00000080
70fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_CONFIG_CAVEAT                  0x20
71fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_X_VISUAL_TYPE                  0x22
72fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_TYPE               0x23
73fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_INDEX_VALUE        0x24
74fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_RED_VALUE          0x25
75fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_GREEN_VALUE        0x26
76fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_BLUE_VALUE         0x27
77fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_ALPHA_VALUE        0x28
78fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DONT_CARE                      0xFFFFFFFF
79fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_NONE                           0x8000
80fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SLOW_CONFIG                    0x8001
81fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRUE_COLOR                     0x8002
82fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DIRECT_COLOR                   0x8003
83fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PSEUDO_COLOR                   0x8004
84fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_STATIC_COLOR                   0x8005
85fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_GRAY_SCALE                     0x8006
86fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_STATIC_GRAY                    0x8007
87fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_RGB                0x8008
88fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_INDEX              0x8009
89fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_VISUAL_ID                      0x800B
90fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SCREEN                         0x800C
91fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_NON_CONFORMANT_CONFIG          0x800D
92fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DRAWABLE_TYPE                  0x8010
93fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_RENDER_TYPE                    0x8011
94fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_X_RENDERABLE                   0x8012
95fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_FBCONFIG_ID                    0x8013
96fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_RGBA_TYPE                      0x8014
97fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_COLOR_INDEX_TYPE               0x8015
98fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MAX_PBUFFER_WIDTH              0x8016
99fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MAX_PBUFFER_HEIGHT             0x8017
100fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MAX_PBUFFER_PIXELS             0x8018
101fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PRESERVED_CONTENTS             0x801B
102fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_LARGEST_PBUFFER                0x801C
103fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_WIDTH                          0x801D
104fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_HEIGHT                         0x801E
105fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_EVENT_MASK                     0x801F
106fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DAMAGED                        0x8020
107fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SAVED                          0x8021
108fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_WINDOW                         0x8022
109fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PBUFFER                        0x8023
110fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PBUFFER_HEIGHT                 0x8040
111fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PBUFFER_WIDTH                  0x8041
112fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
113fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
1143d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#ifndef GLX_VERSION_1_4
1153d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SAMPLE_BUFFERS                 100000
1163d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SAMPLES                        100001
1173d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#endif
1183d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul
119e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#ifndef GLX_ARB_get_proc_address
120e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#endif
121e3af5354a6090666a03586693865fd0d51d994d0Brian Paul
1223d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#ifndef GLX_ARB_multisample
1233d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SAMPLE_BUFFERS_ARB             100000
1243d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SAMPLES_ARB                    100001
1253d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#endif
1263d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul
1273cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#ifndef GLX_ARB_fbconfig_float
1283cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#define GLX_RGBA_FLOAT_TYPE_ARB            0x20B9
1293cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#define GLX_RGBA_FLOAT_BIT_ARB             0x00000004
1303cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#endif
1313cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul
132f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#ifndef GLX_ARB_create_context
133f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#define GLX_CONTEXT_DEBUG_BIT_ARB          0x00000001
134f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
135f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#define GLX_CONTEXT_MAJOR_VERSION_ARB      0x2091
136f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#define GLX_CONTEXT_MINOR_VERSION_ARB      0x2092
137f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#define GLX_CONTEXT_FLAGS_ARB              0x2094
138f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#endif
139f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul
14039bf48f281a81fc24a6de00cec243672df2be653Brian Paul#ifndef GLX_ARB_create_context_profile
14139bf48f281a81fc24a6de00cec243672df2be653Brian Paul#define GLX_CONTEXT_CORE_PROFILE_BIT_ARB   0x00000001
14239bf48f281a81fc24a6de00cec243672df2be653Brian Paul#define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
14339bf48f281a81fc24a6de00cec243672df2be653Brian Paul#define GLX_CONTEXT_PROFILE_MASK_ARB       0x9126
14439bf48f281a81fc24a6de00cec243672df2be653Brian Paul#endif
14539bf48f281a81fc24a6de00cec243672df2be653Brian Paul
1462a3cc7d90742bc173666b7b32153bce944c019e0Brian Paul#ifndef GLX_SGIS_multisample
1472a3cc7d90742bc173666b7b32153bce944c019e0Brian Paul#define GLX_SAMPLE_BUFFERS_SGIS            100000
1482a3cc7d90742bc173666b7b32153bce944c019e0Brian Paul#define GLX_SAMPLES_SGIS                   100001
1492a3cc7d90742bc173666b7b32153bce944c019e0Brian Paul#endif
1502a3cc7d90742bc173666b7b32153bce944c019e0Brian Paul
151fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_EXT_visual_info
152fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_X_VISUAL_TYPE_EXT              0x22
153fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_TYPE_EXT           0x23
154fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_INDEX_VALUE_EXT    0x24
155fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_RED_VALUE_EXT      0x25
156fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_GREEN_VALUE_EXT    0x26
157fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_BLUE_VALUE_EXT     0x27
158fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_ALPHA_VALUE_EXT    0x28
159fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_NONE_EXT                       0x8000
160fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRUE_COLOR_EXT                 0x8002
161fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DIRECT_COLOR_EXT               0x8003
162fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PSEUDO_COLOR_EXT               0x8004
163fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_STATIC_COLOR_EXT               0x8005
164fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_GRAY_SCALE_EXT                 0x8006
165fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_STATIC_GRAY_EXT                0x8007
166fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_RGB_EXT            0x8008
167fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_TRANSPARENT_INDEX_EXT          0x8009
168fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
169fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
170fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_swap_control
171fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
172fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
173fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_video_sync
174fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
175fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
176fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_make_current_read
177fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
178fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
179fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_video_source
180fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
181fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
182fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_EXT_visual_rating
183fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_VISUAL_CAVEAT_EXT              0x20
184fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SLOW_VISUAL_EXT                0x8001
185fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_NON_CONFORMANT_VISUAL_EXT      0x800D
186fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul/* reuse GLX_NONE_EXT */
187fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
188fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
189fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_EXT_import_context
190fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SHARE_CONTEXT_EXT              0x800A
191fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_VISUAL_ID_EXT                  0x800B
192fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SCREEN_EXT                     0x800C
193fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
194fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
195fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_fbconfig
196fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_WINDOW_BIT_SGIX                0x00000001
197fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PIXMAP_BIT_SGIX                0x00000002
198fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_RGBA_BIT_SGIX                  0x00000001
199fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_COLOR_INDEX_BIT_SGIX           0x00000002
200fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DRAWABLE_TYPE_SGIX             0x8010
201fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_RENDER_TYPE_SGIX               0x8011
202fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_X_RENDERABLE_SGIX              0x8012
203fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_FBCONFIG_ID_SGIX               0x8013
204fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_RGBA_TYPE_SGIX                 0x8014
205fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_COLOR_INDEX_TYPE_SGIX          0x8015
206fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul/* reuse GLX_SCREEN_EXT */
207fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
208fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
209fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_pbuffer
210fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PBUFFER_BIT_SGIX               0x00000004
211fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_BUFFER_CLOBBER_MASK_SGIX       0x08000000
212fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_FRONT_LEFT_BUFFER_BIT_SGIX     0x00000001
213fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX    0x00000002
214fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_BACK_LEFT_BUFFER_BIT_SGIX      0x00000004
215fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_BACK_RIGHT_BUFFER_BIT_SGIX     0x00000008
216fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_AUX_BUFFERS_BIT_SGIX           0x00000010
217fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DEPTH_BUFFER_BIT_SGIX          0x00000020
218fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_STENCIL_BUFFER_BIT_SGIX        0x00000040
219fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_ACCUM_BUFFER_BIT_SGIX          0x00000080
220fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SAMPLE_BUFFERS_BIT_SGIX        0x00000100
221fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MAX_PBUFFER_WIDTH_SGIX         0x8016
222fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MAX_PBUFFER_HEIGHT_SGIX        0x8017
223fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MAX_PBUFFER_PIXELS_SGIX        0x8018
224fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX     0x8019
225fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX    0x801A
226fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PRESERVED_CONTENTS_SGIX        0x801B
227fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_LARGEST_PBUFFER_SGIX           0x801C
228fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_WIDTH_SGIX                     0x801D
229fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_HEIGHT_SGIX                    0x801E
230fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_EVENT_MASK_SGIX                0x801F
231fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DAMAGED_SGIX                   0x8020
232fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SAVED_SGIX                     0x8021
233fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_WINDOW_SGIX                    0x8022
234fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_PBUFFER_SGIX                   0x8023
235fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
236fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
237fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_cushion
238fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
239fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
240fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_video_resize
241fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SYNC_FRAME_SGIX                0x00000000
242fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SYNC_SWAP_SGIX                 0x00000001
243fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
244fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
245fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_dmbuffer
246fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_DIGITAL_MEDIA_PBUFFER_SGIX     0x8024
247fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
248fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
249fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_swap_group
250fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
251fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
252fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_swap_barrier
253fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
254fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
255fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIS_blended_overlay
256fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_BLENDED_RGBA_SGIS              0x8025
257fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
258fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
259fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIS_shared_multisample
260fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
261fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
262fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
263fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
264fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SUN_get_transparent_index
265fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
266fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
267fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_3DFX_multisample
268fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SAMPLE_BUFFERS_3DFX            0x8050
269fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SAMPLES_3DFX                   0x8051
270fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
271fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
272fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_copy_sub_buffer
273fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
274fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
275fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_pixmap_colormap
276fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
277fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
278fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_release_buffers
279fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
280fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
281fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_set_3dfx_mode
282fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_3DFX_WINDOW_MODE_MESA          0x1
283fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_3DFX_FULLSCREEN_MODE_MESA      0x2
284fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
285fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
2863d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#ifndef GLX_SGIX_visual_select_group
2873d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_VISUAL_SELECT_GROUP_SGIX       0x8028
2883d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#endif
2893d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul
2903d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#ifndef GLX_OML_swap_method
2913d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SWAP_METHOD_OML                0x8060
2923d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SWAP_EXCHANGE_OML              0x8061
2933d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SWAP_COPY_OML                  0x8062
2943d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SWAP_UNDEFINED_OML             0x8063
2953d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#endif
2963d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul
2973d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#ifndef GLX_OML_sync_control
2983d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#endif
2993d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul
3003cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#ifndef GLX_NV_float_buffer
3013cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#define GLX_FLOAT_COMPONENTS_NV            0x20B0
3023cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#endif
3033cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul
3043cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#ifndef GLX_SGIX_hyperpipe
3056ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
3066ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_BAD_HYPERPIPE_CONFIG_SGIX      91
3076ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_BAD_HYPERPIPE_SGIX             92
3086ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX    0x00000001
3096ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_HYPERPIPE_RENDER_PIPE_SGIX     0x00000002
3106ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_PIPE_RECT_SGIX                 0x00000001
3116ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_PIPE_RECT_LIMITS_SGIX          0x00000002
3126ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_HYPERPIPE_STEREO_SGIX          0x00000003
3136ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX   0x00000004
3146ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_HYPERPIPE_ID_SGIX              0x8030
3156ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif
3166ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
3176ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifndef GLX_MESA_agp_offset
3186ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif
3196ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
32045b1f169b420dee39700d0337c2bc451158618e7Brian#ifndef GLX_EXT_fbconfig_packed_float
32145b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT   0x20B1
32245b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT    0x00000008
32345b1f169b420dee39700d0337c2bc451158618e7Brian#endif
32445b1f169b420dee39700d0337c2bc451158618e7Brian
32545b1f169b420dee39700d0337c2bc451158618e7Brian#ifndef GLX_EXT_framebuffer_sRGB
32645b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT   0x20B2
32745b1f169b420dee39700d0337c2bc451158618e7Brian#endif
32845b1f169b420dee39700d0337c2bc451158618e7Brian
32945b1f169b420dee39700d0337c2bc451158618e7Brian#ifndef GLX_EXT_texture_from_pixmap
33045b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_1D_BIT_EXT             0x00000001
33145b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_2D_BIT_EXT             0x00000002
33245b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_RECTANGLE_BIT_EXT      0x00000004
33345b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_BIND_TO_TEXTURE_RGB_EXT        0x20D0
33445b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_BIND_TO_TEXTURE_RGBA_EXT       0x20D1
33545b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_BIND_TO_MIPMAP_TEXTURE_EXT     0x20D2
33645b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_BIND_TO_TEXTURE_TARGETS_EXT    0x20D3
33745b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_Y_INVERTED_EXT                 0x20D4
33845b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_FORMAT_EXT             0x20D5
33945b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_TARGET_EXT             0x20D6
34045b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_MIPMAP_TEXTURE_EXT             0x20D7
34145b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_FORMAT_NONE_EXT        0x20D8
34245b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_FORMAT_RGB_EXT         0x20D9
34345b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_FORMAT_RGBA_EXT        0x20DA
34445b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_1D_EXT                 0x20DB
34545b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_2D_EXT                 0x20DC
34645b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_TEXTURE_RECTANGLE_EXT          0x20DD
34745b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_FRONT_LEFT_EXT                 0x20DE
34845b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_FRONT_RIGHT_EXT                0x20DF
34945b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_BACK_LEFT_EXT                  0x20E0
35045b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_BACK_RIGHT_EXT                 0x20E1
35145b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_FRONT_EXT                      GLX_FRONT_LEFT_EXT
35245b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_BACK_EXT                       GLX_BACK_LEFT_EXT
35345b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX0_EXT                       0x20E2
35445b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX1_EXT                       0x20E3
35545b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX2_EXT                       0x20E4
35645b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX3_EXT                       0x20E5
35745b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX4_EXT                       0x20E6
35845b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX5_EXT                       0x20E7
35945b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX6_EXT                       0x20E8
36045b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX7_EXT                       0x20E9
36145b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX8_EXT                       0x20EA
36245b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_AUX9_EXT                       0x20EB
36345b1f169b420dee39700d0337c2bc451158618e7Brian#endif
36445b1f169b420dee39700d0337c2bc451158618e7Brian
365d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#ifndef GLX_NV_present_video
3663efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_NUM_VIDEO_SLOTS_NV             0x20F0
367d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#endif
368d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul
369d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#ifndef GLX_NV_video_out
3703efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_COLOR_NV             0x20C3
3713efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_ALPHA_NV             0x20C4
3723efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_DEPTH_NV             0x20C5
3733efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV   0x20C6
3743efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV   0x20C7
3753efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_FRAME_NV             0x20C8
3763efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_FIELD_1_NV           0x20C9
3773efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_FIELD_2_NV           0x20CA
3783efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
3793efd3b15124acab4dbb7c4a7cd01309100370934Brian Paul#define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
380d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#endif
381d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul
382d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#ifndef GLX_NV_swap_group
383d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#endif
384d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul
385559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_NV_video_capture
386559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_DEVICE_ID_NV                   0x20CD
387559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_UNIQUE_ID_NV                   0x20CE
388559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV     0x20CF
389559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
390559da98c2be577d918a847080b78033947a1767aBrian Paul
391559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_EXT_swap_control
392559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_SWAP_INTERVAL_EXT              0x20F1
393559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_MAX_SWAP_INTERVAL_EXT          0x20F2
394559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
395559da98c2be577d918a847080b78033947a1767aBrian Paul
396559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_NV_copy_image
397559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
398559da98c2be577d918a847080b78033947a1767aBrian Paul
399fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
400fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul/*************************************************************/
401fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
402fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_ARB_get_proc_address
403b95884c53de33bdd6ec843a8ddd7243cfb93a208Brian Paultypedef void (*__GLXextFuncPtr)(void);
404fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
405fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
406fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_video_source
407fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef XID GLXVideoSourceSGIX;
408fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
409fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
410fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_fbconfig
411fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef XID GLXFBConfigIDSGIX;
412fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
413fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
414fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
415fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_pbuffer
416fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef XID GLXPbufferSGIX;
417fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef struct {
418fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    int type;
419fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    unsigned long serial;	  /* # of last request processed by server */
420fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    Bool send_event;		  /* true if this came for SendEvent request */
421fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    Display *display;		  /* display the event was read from */
422fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    GLXDrawable drawable;	  /* i.d. of Drawable */
423fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    int event_type;		  /* GLX_DAMAGED_SGIX or GLX_SAVED_SGIX */
424fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    int draw_type;		  /* GLX_WINDOW_SGIX or GLX_PBUFFER_SGIX */
425fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    unsigned int mask;	  /* mask indicating which buffers are affected*/
426fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    int x, y;
427fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    int width, height;
428fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul    int count;		  /* if nonzero, at least this many more */
429fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul} GLXBufferClobberEventSGIX;
430fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
431fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
432559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_NV_video_output
433559da98c2be577d918a847080b78033947a1767aBrian Paultypedef unsigned int GLXVideoDeviceNV;
434559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
435559da98c2be577d918a847080b78033947a1767aBrian Paul
436559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_NV_video_capture
437559da98c2be577d918a847080b78033947a1767aBrian Paultypedef XID GLXVideoCaptureDeviceNV;
438559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
439559da98c2be577d918a847080b78033947a1767aBrian Paul
4403cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#ifndef GLEXT_64_TYPES_DEFINED
441b7c54945fe212811d9749b623f582569522bc440Blair Sadewitz/* This code block is duplicated in glext.h, so must be protected */
4423cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#define GLEXT_64_TYPES_DEFINED
4433cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul/* Define int32_t, int64_t, and uint64_t types for UST/MSC */
4443cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul/* (as used in the GLX_OML_sync_control extension). */
4453cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
4463cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#include <inttypes.h>
447967c1056d5e86231e4a545a748973e1123cd19c1Brian#elif defined(__sun__) || defined(__digital__)
4489f23a3a1bff6c8af93e651273c9887bbf119f555Ian Romanick#include <inttypes.h>
4499f23a3a1bff6c8af93e651273c9887bbf119f555Ian Romanick#if defined(__STDC__)
450b7c54945fe212811d9749b623f582569522bc440Blair Sadewitz#if defined(__arch64__) || defined(_LP64)
4519f23a3a1bff6c8af93e651273c9887bbf119f555Ian Romanicktypedef long int int64_t;
4523cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paultypedef unsigned long int uint64_t;
4539f23a3a1bff6c8af93e651273c9887bbf119f555Ian Romanick#else
4543cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paultypedef long long int int64_t;
4553cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paultypedef unsigned long long int uint64_t;
4569f23a3a1bff6c8af93e651273c9887bbf119f555Ian Romanick#endif /* __arch64__ */
4579f23a3a1bff6c8af93e651273c9887bbf119f555Ian Romanick#endif /* __STDC__ */
458b7c54945fe212811d9749b623f582569522bc440Blair Sadewitz#elif defined( __VMS ) || defined(__sgi)
459538541e3002e7271fad21c0e5c21b65c0db90e45Brian Paul#include <inttypes.h>
460538541e3002e7271fad21c0e5c21b65c0db90e45Brian Paul#elif defined(__SCO__) || defined(__USLC__)
46138b317d508a2a3a4cc6d700ebca80c3b06c913e2Alan Hourihane#include <stdint.h>
4623cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#elif defined(__UNIXOS2__) || defined(__SOL64__)
4633cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paultypedef long int int32_t;
4643cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paultypedef long long int int64_t;
4653cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paultypedef unsigned long long int uint64_t;
46645b1f169b420dee39700d0337c2bc451158618e7Brian#elif defined(_WIN32) && defined(__GNUC__)
467160b3284dd3cdad106ad9aebf5fed7e9ff7b142bBrian Paul#include <stdint.h>
46845b1f169b420dee39700d0337c2bc451158618e7Brian#elif defined(_WIN32)
46945b1f169b420dee39700d0337c2bc451158618e7Briantypedef __int32 int32_t;
47045b1f169b420dee39700d0337c2bc451158618e7Briantypedef __int64 int64_t;
47145b1f169b420dee39700d0337c2bc451158618e7Briantypedef unsigned __int64 uint64_t;
4723cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#else
4733cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#include <inttypes.h>     /* Fallback option */
4743cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#endif
47538b317d508a2a3a4cc6d700ebca80c3b06c913e2Alan Hourihane#endif
47638b317d508a2a3a4cc6d700ebca80c3b06c913e2Alan Hourihane
477fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_VERSION_1_3
478fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_VERSION_1_3 1
479fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
480fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXFBConfig * glXGetFBConfigs (Display *, int, int *);
481fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXFBConfig * glXChooseFBConfig (Display *, int, const int *, int *);
482fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXGetFBConfigAttrib (Display *, GLXFBConfig, int, int *);
483fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern XVisualInfo * glXGetVisualFromFBConfig (Display *, GLXFBConfig);
484fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXWindow glXCreateWindow (Display *, GLXFBConfig, Window, const int *);
485fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXDestroyWindow (Display *, GLXWindow);
486fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXPixmap glXCreatePixmap (Display *, GLXFBConfig, Pixmap, const int *);
487fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXDestroyPixmap (Display *, GLXPixmap);
488fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXPbuffer glXCreatePbuffer (Display *, GLXFBConfig, const int *);
489fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXDestroyPbuffer (Display *, GLXPbuffer);
490fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXQueryDrawable (Display *, GLXDrawable, int, unsigned int *);
491fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXContext glXCreateNewContext (Display *, GLXFBConfig, int, GLXContext, Bool);
492fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Bool glXMakeContextCurrent (Display *, GLXDrawable, GLXDrawable, GLXContext);
493fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXDrawable glXGetCurrentReadDrawable (void);
494fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Display * glXGetCurrentDisplay (void);
495fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXQueryContext (Display *, GLXContext, int, int *);
496fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXSelectEvent (Display *, GLXDrawable, unsigned long);
497fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXGetSelectedEvent (Display *, GLXDrawable, unsigned long *);
498fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
499fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXFBConfig * ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
500fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXFBConfig * ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
501fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
502fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef XVisualInfo * ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
503fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
504fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
505fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
506fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
507fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
508fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
509fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
510fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
511fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
512fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
513fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Display * ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
514fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
515fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
516fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
517fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
518fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
519e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#ifndef GLX_VERSION_1_4
520e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#define GLX_VERSION_1_4 1
521e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
522e3af5354a6090666a03586693865fd0d51d994d0Brian Paulextern __GLXextFuncPtr glXGetProcAddress (const GLubyte *);
523e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
524e3af5354a6090666a03586693865fd0d51d994d0Brian Paultypedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);
525e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#endif
526e3af5354a6090666a03586693865fd0d51d994d0Brian Paul
527fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_ARB_get_proc_address
528fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_ARB_get_proc_address 1
529fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
530fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern __GLXextFuncPtr glXGetProcAddressARB (const GLubyte *);
531fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
532fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef __GLXextFuncPtr ( * PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procName);
533fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
534fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
535e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#ifndef GLX_ARB_multisample
536e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#define GLX_ARB_multisample 1
537e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#endif
538e3af5354a6090666a03586693865fd0d51d994d0Brian Paul
5393cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#ifndef GLX_ARB_fbconfig_float
5403cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#define GLX_ARB_fbconfig_float 1
5413cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#endif
5423cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul
543f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#ifndef GLX_ARB_create_context
544f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#define GLX_ARB_create_context 1
545f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#ifdef GLX_GLXEXT_PROTOTYPES
546f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paulextern GLXContext glXCreateContextAttribsARB (Display *, GLXFBConfig, GLXContext, Bool, const int *);
547f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
548f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paultypedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
549f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul#endif
550f7b4c2cca9ea9013f527b25ae45605047c58d64cBrian Paul
55139bf48f281a81fc24a6de00cec243672df2be653Brian Paul#ifndef GLX_ARB_create_context_profile
55239bf48f281a81fc24a6de00cec243672df2be653Brian Paul#define GLX_ARB_create_context_profile 1
55339bf48f281a81fc24a6de00cec243672df2be653Brian Paul#endif
55439bf48f281a81fc24a6de00cec243672df2be653Brian Paul
555fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIS_multisample
556fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIS_multisample 1
557fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
558fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
559fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_EXT_visual_info
560fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_EXT_visual_info 1
561fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
562fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
563fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_swap_control
564fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGI_swap_control 1
565fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
566fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXSwapIntervalSGI (int);
567fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
568fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
569fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
570fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
571fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_video_sync
572fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGI_video_sync 1
573fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
574fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXGetVideoSyncSGI (unsigned int *);
575fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXWaitVideoSyncSGI (int, int, unsigned int *);
576fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
577fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int *count);
578fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int *count);
579fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
580fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
581fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_make_current_read
582fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGI_make_current_read 1
583fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
584fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Bool glXMakeCurrentReadSGI (Display *, GLXDrawable, GLXDrawable, GLXContext);
585fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXDrawable glXGetCurrentReadDrawableSGI (void);
586fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
587fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
588fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
589fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
590fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
591fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_video_source
592fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIX_video_source 1
5936ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifdef _VL_H
594fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
595fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX (Display *, int, VLServer, VLPath, int, VLNode);
596fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXDestroyGLXVideoSourceSGIX (Display *, GLXVideoSourceSGIX);
597fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
598fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXVideoSourceSGIX ( * PFNGLXCREATEGLXVIDEOSOURCESGIXPROC) (Display *display, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);
599fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXDESTROYGLXVIDEOSOURCESGIXPROC) (Display *dpy, GLXVideoSourceSGIX glxvideosource);
6006ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif /* _VL_H */
601fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
602fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
603fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_EXT_visual_rating
604fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_EXT_visual_rating 1
605fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
606fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
607fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_EXT_import_context
608fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_EXT_import_context 1
609fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
610fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Display * glXGetCurrentDisplayEXT (void);
611fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXQueryContextInfoEXT (Display *, GLXContext, int, int *);
612199b931c071dfeb03a036765ae0f316dd7236a33Brian Paulextern GLXContextID glXGetContextIDEXT (const GLXContext);
613fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXContext glXImportContextEXT (Display *, GLXContextID);
614fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXFreeContextEXT (Display *, GLXContext);
615fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
616fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Display * ( * PFNGLXGETCURRENTDISPLAYEXTPROC) (void);
617fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display *dpy, GLXContext context, int attribute, int *value);
618e3af5354a6090666a03586693865fd0d51d994d0Brian Paultypedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
619fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display *dpy, GLXContextID contextID);
620fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display *dpy, GLXContext context);
621fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
622fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
623fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_fbconfig
624fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIX_fbconfig 1
625fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
626fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXGetFBConfigAttribSGIX (Display *, GLXFBConfigSGIX, int, int *);
627fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXFBConfigSGIX * glXChooseFBConfigSGIX (Display *, int, int *, int *);
628fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXPixmap glXCreateGLXPixmapWithConfigSGIX (Display *, GLXFBConfigSGIX, Pixmap);
629fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXContext glXCreateContextWithConfigSGIX (Display *, GLXFBConfigSGIX, int, GLXContext, Bool);
630fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern XVisualInfo * glXGetVisualFromFBConfigSGIX (Display *, GLXFBConfigSGIX);
631fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX (Display *, XVisualInfo *);
632fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
633fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
634fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXFBConfigSGIX * ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, int *attrib_list, int *nelements);
635fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, Pixmap pixmap);
636fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int render_type, GLXContext share_list, Bool direct);
637fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef XVisualInfo * ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfigSGIX config);
638fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display *dpy, XVisualInfo *vis);
639fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
640fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
641fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_pbuffer
642fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIX_pbuffer 1
643fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
644fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXPbufferSGIX glXCreateGLXPbufferSGIX (Display *, GLXFBConfigSGIX, unsigned int, unsigned int, int *);
645fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXDestroyGLXPbufferSGIX (Display *, GLXPbufferSGIX);
646fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXQueryGLXPbufferSGIX (Display *, GLXPbufferSGIX, int, unsigned int *);
647fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXSelectEventSGIX (Display *, GLXDrawable, unsigned long);
648fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXGetSelectedEventSGIX (Display *, GLXDrawable, unsigned long *);
649fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
650fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXPbufferSGIX ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list);
651fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf);
652fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf, int attribute, unsigned int *value);
653fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display *dpy, GLXDrawable drawable, unsigned long mask);
654fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display *dpy, GLXDrawable drawable, unsigned long *mask);
655fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
656fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
657fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGI_cushion
658fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGI_cushion 1
659fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
660fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXCushionSGI (Display *, Window, float);
661fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
662fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXCUSHIONSGIPROC) (Display *dpy, Window window, float cushion);
663fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
664fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
665fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_video_resize
666fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIX_video_resize 1
667fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
668fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXBindChannelToWindowSGIX (Display *, int, int, Window);
669fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXChannelRectSGIX (Display *, int, int, int, int, int, int);
670fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXQueryChannelRectSGIX (Display *, int, int, int *, int *, int *, int *);
671fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXQueryChannelDeltasSGIX (Display *, int, int, int *, int *, int *, int *);
672fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern int glXChannelRectSyncSGIX (Display *, int, int, GLenum);
673fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
674fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display *display, int screen, int channel, Window window);
675fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display *display, int screen, int channel, int x, int y, int w, int h);
676fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display *display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
677fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display *display, int screen, int channel, int *x, int *y, int *w, int *h);
678fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display *display, int screen, int channel, GLenum synctype);
679fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
680fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
681fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_dmbuffer
682fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIX_dmbuffer 1
6836ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifdef _DM_BUFFER_H_
684fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
685fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Bool glXAssociateDMPbufferSGIX (Display *, GLXPbufferSGIX, DMparams *, DMbuffer);
686fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
687fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Bool ( * PFNGLXASSOCIATEDMPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
6886ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif /* _DM_BUFFER_H_ */
689fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
690fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
691fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_swap_group
692fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIX_swap_group 1
693fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
694fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXJoinSwapGroupSGIX (Display *, GLXDrawable, GLXDrawable);
695fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
696fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
697fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
698fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
699fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SGIX_swap_barrier
700fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SGIX_swap_barrier 1
701fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
702fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXBindSwapBarrierSGIX (Display *, GLXDrawable, int);
703fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Bool glXQueryMaxSwapBarriersSGIX (Display *, int, int *);
704fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
705fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
706fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
707fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
708fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
709fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_SUN_get_transparent_index
710fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_SUN_get_transparent_index 1
711fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
712fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Status glXGetTransparentIndexSUN (Display *, Window, Window, long *);
713fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
714fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);
715fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
716fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
717fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_copy_sub_buffer
718fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MESA_copy_sub_buffer 1
719fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
720fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern void glXCopySubBufferMESA (Display *, GLXDrawable, int, int, int, int);
721fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
722fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);
723fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
724fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
725fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_pixmap_colormap
726fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MESA_pixmap_colormap 1
727fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
728fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern GLXPixmap glXCreateGLXPixmapMESA (Display *, XVisualInfo *, Pixmap, Colormap);
729fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
730fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
731fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
732fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
733fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_release_buffers
734fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MESA_release_buffers 1
735fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
736fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Bool glXReleaseBuffersMESA (Display *, GLXDrawable);
737fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
738fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display *dpy, GLXDrawable drawable);
739fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
740fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
741fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifndef GLX_MESA_set_3dfx_mode
742fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#define GLX_MESA_set_3dfx_mode 1
743fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
744fed386cdc02d1f49f68e490f316f2533451e4616Brian Paulextern Bool glXSet3DfxModeMESA (int);
745fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
746fed386cdc02d1f49f68e490f316f2533451e4616Brian Paultypedef Bool ( * PFNGLXSET3DFXMODEMESAPROC) (int mode);
747fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
748fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
7493d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#ifndef GLX_SGIX_visual_select_group
7503d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#define GLX_SGIX_visual_select_group 1
7513d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#endif
7523d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul
753e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#ifndef GLX_OML_swap_method
754e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#define GLX_OML_swap_method 1
7553d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul#endif
7563d16c369d9ab3b1f5c7c64b052fc939a3b39e2a0Brian Paul
7576ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifndef GLX_OML_sync_control
7586ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_OML_sync_control 1
759e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
760e3af5354a6090666a03586693865fd0d51d994d0Brian Paulextern Bool glXGetSyncValuesOML (Display *, GLXDrawable, int64_t *, int64_t *, int64_t *);
761e3af5354a6090666a03586693865fd0d51d994d0Brian Paulextern Bool glXGetMscRateOML (Display *, GLXDrawable, int32_t *, int32_t *);
762e3af5354a6090666a03586693865fd0d51d994d0Brian Paulextern int64_t glXSwapBuffersMscOML (Display *, GLXDrawable, int64_t, int64_t, int64_t);
763e3af5354a6090666a03586693865fd0d51d994d0Brian Paulextern Bool glXWaitForMscOML (Display *, GLXDrawable, int64_t, int64_t, int64_t, int64_t *, int64_t *, int64_t *);
764e3af5354a6090666a03586693865fd0d51d994d0Brian Paulextern Bool glXWaitForSbcOML (Display *, GLXDrawable, int64_t, int64_t *, int64_t *, int64_t *);
765e3af5354a6090666a03586693865fd0d51d994d0Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
766e3af5354a6090666a03586693865fd0d51d994d0Brian Paultypedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t *msc, int64_t *sbc);
767e3af5354a6090666a03586693865fd0d51d994d0Brian Paultypedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator);
768e3af5354a6090666a03586693865fd0d51d994d0Brian Paultypedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
769e3af5354a6090666a03586693865fd0d51d994d0Brian Paultypedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t *ust, int64_t *msc, int64_t *sbc);
770e3af5354a6090666a03586693865fd0d51d994d0Brian Paultypedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_sbc, int64_t *ust, int64_t *msc, int64_t *sbc);
7716ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif
7726ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
7733cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#ifndef GLX_NV_float_buffer
7743cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#define GLX_NV_float_buffer 1
7753cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#endif
7763cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul
7773cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#ifndef GLX_SGIX_hyperpipe
7783cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul#define GLX_SGIX_hyperpipe 1
7796ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
7806ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef struct {
7816ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    char    pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
7826ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    int     networkId;
7836ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul} GLXHyperpipeNetworkSGIX;
7846ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
7856ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef struct {
7866ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    char    pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
7876ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    int     channel;
7886ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    unsigned int
7896ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul      participationType;
7906ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    int     timeSlice;
7916ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul} GLXHyperpipeConfigSGIX;
7926ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
7936ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef struct {
7946ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
7956ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    int srcXOrigin, srcYOrigin, srcWidth, srcHeight;
7966ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    int destXOrigin, destYOrigin, destWidth, destHeight;
7976ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul} GLXPipeRect;
7986ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
7996ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef struct {
8006ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];
8016ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul    int XOrigin, YOrigin, maxHeight, maxWidth;
8026ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul} GLXPipeRectLimits;
8036ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
8046ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
8056ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *, int *);
8066ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern int glXHyperpipeConfigSGIX (Display *, int, int, GLXHyperpipeConfigSGIX *, int *);
8076ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *, int, int *);
8086ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern int glXDestroyHyperpipeConfigSGIX (Display *, int);
8096ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern int glXBindHyperpipeSGIX (Display *, int);
8106ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern int glXQueryHyperpipeBestAttribSGIX (Display *, int, int, int, void *, void *);
8116ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern int glXHyperpipeAttribSGIX (Display *, int, int, int, void *);
8126ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern int glXQueryHyperpipeAttribSGIX (Display *, int, int, int, void *);
8136ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
8146ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
8156ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
8166ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
8176ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
8186ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
8196ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
8206ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
8216ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
8226ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif
8236ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
8246ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifndef GLX_MESA_agp_offset
8256ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#define GLX_MESA_agp_offset 1
8266ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#ifdef GLX_GLXEXT_PROTOTYPES
8276ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paulextern unsigned int glXGetAGPOffsetMESA (const void *);
8286ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
8296ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paultypedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void *pointer);
8306ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul#endif
8316ade8a36b63caf93d7ffda8f789e2c94bad12c31Brian Paul
83245b1f169b420dee39700d0337c2bc451158618e7Brian#ifndef GLX_EXT_fbconfig_packed_float
83345b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_EXT_fbconfig_packed_float 1
83445b1f169b420dee39700d0337c2bc451158618e7Brian#endif
83545b1f169b420dee39700d0337c2bc451158618e7Brian
83645b1f169b420dee39700d0337c2bc451158618e7Brian#ifndef GLX_EXT_framebuffer_sRGB
83745b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_EXT_framebuffer_sRGB 1
83845b1f169b420dee39700d0337c2bc451158618e7Brian#endif
83945b1f169b420dee39700d0337c2bc451158618e7Brian
84045b1f169b420dee39700d0337c2bc451158618e7Brian#ifndef GLX_EXT_texture_from_pixmap
84145b1f169b420dee39700d0337c2bc451158618e7Brian#define GLX_EXT_texture_from_pixmap 1
84245b1f169b420dee39700d0337c2bc451158618e7Brian#ifdef GLX_GLXEXT_PROTOTYPES
84345b1f169b420dee39700d0337c2bc451158618e7Brianextern void glXBindTexImageEXT (Display *, GLXDrawable, int, const int *);
84445b1f169b420dee39700d0337c2bc451158618e7Brianextern void glXReleaseTexImageEXT (Display *, GLXDrawable, int);
84545b1f169b420dee39700d0337c2bc451158618e7Brian#endif /* GLX_GLXEXT_PROTOTYPES */
84645b1f169b420dee39700d0337c2bc451158618e7Briantypedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);
84745b1f169b420dee39700d0337c2bc451158618e7Briantypedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer);
84845b1f169b420dee39700d0337c2bc451158618e7Brian#endif
84945b1f169b420dee39700d0337c2bc451158618e7Brian
850d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#ifndef GLX_NV_present_video
851d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#define GLX_NV_present_video 1
852559da98c2be577d918a847080b78033947a1767aBrian Paul#ifdef GLX_GLXEXT_PROTOTYPES
853559da98c2be577d918a847080b78033947a1767aBrian Paulextern unsigned int * glXEnumerateVideoDevicesNV (Display *, int, int *);
854559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXBindVideoDeviceNV (Display *, unsigned int, unsigned int, const int *);
855559da98c2be577d918a847080b78033947a1767aBrian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
856559da98c2be577d918a847080b78033947a1767aBrian Paultypedef unsigned int * ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
857559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
858d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#endif
859d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul
860559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_NV_video_output
861559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_NV_video_output 1
862559da98c2be577d918a847080b78033947a1767aBrian Paul#ifdef GLX_GLXEXT_PROTOTYPES
863559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXGetVideoDeviceNV (Display *, int, int, GLXVideoDeviceNV *);
864559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXReleaseVideoDeviceNV (Display *, int, GLXVideoDeviceNV);
865559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXBindVideoImageNV (Display *, GLXVideoDeviceNV, GLXPbuffer, int);
866559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXReleaseVideoImageNV (Display *, GLXPbuffer);
867559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXSendPbufferToVideoNV (Display *, GLXPbuffer, int, unsigned long *, GLboolean);
868559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXGetVideoInfoNV (Display *, int, GLXVideoDeviceNV, unsigned long *, unsigned long *);
869559da98c2be577d918a847080b78033947a1767aBrian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
870559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
871559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
872559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
873559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display *dpy, GLXPbuffer pbuf);
874559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
875559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
876d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#endif
877d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul
878d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#ifndef GLX_NV_swap_group
879d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#define GLX_NV_swap_group 1
880559da98c2be577d918a847080b78033947a1767aBrian Paul#ifdef GLX_GLXEXT_PROTOTYPES
881559da98c2be577d918a847080b78033947a1767aBrian Paulextern Bool glXJoinSwapGroupNV (Display *, GLXDrawable, GLuint);
882559da98c2be577d918a847080b78033947a1767aBrian Paulextern Bool glXBindSwapBarrierNV (Display *, GLuint, GLuint);
883559da98c2be577d918a847080b78033947a1767aBrian Paulextern Bool glXQuerySwapGroupNV (Display *, GLXDrawable, GLuint *, GLuint *);
884559da98c2be577d918a847080b78033947a1767aBrian Paulextern Bool glXQueryMaxSwapGroupsNV (Display *, int, GLuint *, GLuint *);
885559da98c2be577d918a847080b78033947a1767aBrian Paulextern Bool glXQueryFrameCountNV (Display *, int, GLuint *);
886559da98c2be577d918a847080b78033947a1767aBrian Paulextern Bool glXResetFrameCountNV (Display *, int);
887559da98c2be577d918a847080b78033947a1767aBrian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
888559da98c2be577d918a847080b78033947a1767aBrian Paultypedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint group);
889559da98c2be577d918a847080b78033947a1767aBrian Paultypedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display *dpy, GLuint group, GLuint barrier);
890559da98c2be577d918a847080b78033947a1767aBrian Paultypedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
891559da98c2be577d918a847080b78033947a1767aBrian Paultypedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
892559da98c2be577d918a847080b78033947a1767aBrian Paultypedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display *dpy, int screen, GLuint *count);
893559da98c2be577d918a847080b78033947a1767aBrian Paultypedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display *dpy, int screen);
894559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
895559da98c2be577d918a847080b78033947a1767aBrian Paul
896559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_NV_video_capture
897559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_NV_video_capture 1
898559da98c2be577d918a847080b78033947a1767aBrian Paul#ifdef GLX_GLXEXT_PROTOTYPES
899559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXBindVideoCaptureDeviceNV (Display *, unsigned int, GLXVideoCaptureDeviceNV);
900559da98c2be577d918a847080b78033947a1767aBrian Paulextern GLXVideoCaptureDeviceNV * glXEnumerateVideoCaptureDevicesNV (Display *, int, int *);
901559da98c2be577d918a847080b78033947a1767aBrian Paulextern void glXLockVideoCaptureDeviceNV (Display *, GLXVideoCaptureDeviceNV);
902559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXQueryVideoCaptureDeviceNV (Display *, GLXVideoCaptureDeviceNV, int, int *);
903559da98c2be577d918a847080b78033947a1767aBrian Paulextern void glXReleaseVideoCaptureDeviceNV (Display *, GLXVideoCaptureDeviceNV);
904559da98c2be577d918a847080b78033947a1767aBrian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
905559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXBINDVIDEOCAPTUREDEVICENVPROC) (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
906559da98c2be577d918a847080b78033947a1767aBrian Paultypedef GLXVideoCaptureDeviceNV * ( * PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC) (Display *dpy, int screen, int *nelements);
907559da98c2be577d918a847080b78033947a1767aBrian Paultypedef void ( * PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
908559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
909559da98c2be577d918a847080b78033947a1767aBrian Paultypedef void ( * PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
910559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
911559da98c2be577d918a847080b78033947a1767aBrian Paul
912559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_EXT_swap_control
913559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_EXT_swap_control 1
914559da98c2be577d918a847080b78033947a1767aBrian Paul#ifdef GLX_GLXEXT_PROTOTYPES
915559da98c2be577d918a847080b78033947a1767aBrian Paulextern int glXSwapIntervalEXT (Display *, GLXDrawable, int);
916559da98c2be577d918a847080b78033947a1767aBrian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
917559da98c2be577d918a847080b78033947a1767aBrian Paultypedef int ( * PFNGLXSWAPINTERVALEXTPROC) (Display *dpy, GLXDrawable drawable, int interval);
918559da98c2be577d918a847080b78033947a1767aBrian Paul#endif
919559da98c2be577d918a847080b78033947a1767aBrian Paul
920559da98c2be577d918a847080b78033947a1767aBrian Paul#ifndef GLX_NV_copy_image
921559da98c2be577d918a847080b78033947a1767aBrian Paul#define GLX_NV_copy_image 1
922559da98c2be577d918a847080b78033947a1767aBrian Paul#ifdef GLX_GLXEXT_PROTOTYPES
923559da98c2be577d918a847080b78033947a1767aBrian Paulextern void glXCopyImageSubDataNV (Display *, GLXContext, GLuint, GLenum, GLint, GLint, GLint, GLint, GLXContext, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei);
924559da98c2be577d918a847080b78033947a1767aBrian Paul#endif /* GLX_GLXEXT_PROTOTYPES */
925559da98c2be577d918a847080b78033947a1767aBrian Paultypedef void ( * PFNGLXCOPYIMAGESUBDATANVPROC) (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
926d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul#endif
927d80d0bb4d6956ce340ec8750c98a9c7a136657feBrian Paul
9283cd07d2c390099ca0f9b2e27a548920f880715c4Brian Paul
929fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#ifdef __cplusplus
930fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul}
931fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
932fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul
933fed386cdc02d1f49f68e490f316f2533451e4616Brian Paul#endif
934