d587a8783a26905d31cd8751f259e1764b8cfe17
[mesa.git] / src / glx / x11 / indirect_init.c
1 /* $XFree86: xc/lib/GL/glx/indirect_init.c,v 1.9 2004/01/28 18:11:41 alanh Exp $ */
2 /**************************************************************************
3
4 Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
5 All Rights Reserved.
6
7 Permission is hereby granted, free of charge, to any person obtaining a
8 copy of this software and associated documentation files (the
9 "Software"), to deal in the Software without restriction, including
10 without limitation the rights to use, copy, modify, merge, publish,
11 distribute, sub license, and/or sell copies of the Software, and to
12 permit persons to whom the Software is furnished to do so, subject to
13 the following conditions:
14
15 The above copyright notice and this permission notice (including the
16 next paragraph) shall be included in all copies or substantial portions
17 of the Software.
18
19 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
20 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
22 IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
23 ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
24 TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
25 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
27 **************************************************************************/
28
29 /*
30 * Authors:
31 * Kevin E. Martin <kevin@precisioninsight.com>
32 * Brian Paul <brian@precisioninsight.com>
33 */
34
35 #include "indirect_init.h"
36 #include "indirect.h"
37 #include "glapi.h"
38
39
40 /*
41 ** No-op function
42 */
43 static int NoOp(void)
44 {
45 return 0;
46 }
47
48
49 __GLapi *__glXNewIndirectAPI(void)
50 {
51 __GLapi *glAPI;
52 GLuint entries;
53
54 entries = _glapi_get_dispatch_table_size();
55 glAPI = (__GLapi *) Xmalloc(entries * sizeof(void *));
56
57 /* first, set all entries to point to no-op functions */
58 {
59 int i;
60 void **dispatch = (void **) glAPI;
61 for (i = 0; i < entries; i++) {
62 dispatch[i] = (void *) NoOp;
63 }
64 }
65
66 /* now, initialize the entries we understand */
67 glAPI->Accum = __indirect_glAccum;
68 glAPI->AlphaFunc = __indirect_glAlphaFunc;
69 glAPI->AreTexturesResident = __indirect_glAreTexturesResident;
70 glAPI->ArrayElement = __indirect_glArrayElement;
71 glAPI->Begin = __indirect_glBegin;
72 glAPI->BindTexture = __indirect_glBindTexture;
73 glAPI->Bitmap = __indirect_glBitmap;
74 glAPI->BlendFunc = __indirect_glBlendFunc;
75 glAPI->CallList = __indirect_glCallList;
76 glAPI->CallLists = __indirect_glCallLists;
77 glAPI->Clear = __indirect_glClear;
78 glAPI->ClearAccum = __indirect_glClearAccum;
79 glAPI->ClearColor = __indirect_glClearColor;
80 glAPI->ClearDepth = __indirect_glClearDepth;
81 glAPI->ClearIndex = __indirect_glClearIndex;
82 glAPI->ClearStencil = __indirect_glClearStencil;
83 glAPI->ClipPlane = __indirect_glClipPlane;
84 glAPI->Color3b = __indirect_glColor3b;
85 glAPI->Color3bv = __indirect_glColor3bv;
86 glAPI->Color3d = __indirect_glColor3d;
87 glAPI->Color3dv = __indirect_glColor3dv;
88 glAPI->Color3f = __indirect_glColor3f;
89 glAPI->Color3fv = __indirect_glColor3fv;
90 glAPI->Color3i = __indirect_glColor3i;
91 glAPI->Color3iv = __indirect_glColor3iv;
92 glAPI->Color3s = __indirect_glColor3s;
93 glAPI->Color3sv = __indirect_glColor3sv;
94 glAPI->Color3ub = __indirect_glColor3ub;
95 glAPI->Color3ubv = __indirect_glColor3ubv;
96 glAPI->Color3ui = __indirect_glColor3ui;
97 glAPI->Color3uiv = __indirect_glColor3uiv;
98 glAPI->Color3us = __indirect_glColor3us;
99 glAPI->Color3usv = __indirect_glColor3usv;
100 glAPI->Color4b = __indirect_glColor4b;
101 glAPI->Color4bv = __indirect_glColor4bv;
102 glAPI->Color4d = __indirect_glColor4d;
103 glAPI->Color4dv = __indirect_glColor4dv;
104 glAPI->Color4f = __indirect_glColor4f;
105 glAPI->Color4fv = __indirect_glColor4fv;
106 glAPI->Color4i = __indirect_glColor4i;
107 glAPI->Color4iv = __indirect_glColor4iv;
108 glAPI->Color4s = __indirect_glColor4s;
109 glAPI->Color4sv = __indirect_glColor4sv;
110 glAPI->Color4ub = __indirect_glColor4ub;
111 glAPI->Color4ubv = __indirect_glColor4ubv;
112 glAPI->Color4ui = __indirect_glColor4ui;
113 glAPI->Color4uiv = __indirect_glColor4uiv;
114 glAPI->Color4us = __indirect_glColor4us;
115 glAPI->Color4usv = __indirect_glColor4usv;
116 glAPI->ColorMask = __indirect_glColorMask;
117 glAPI->ColorMaterial = __indirect_glColorMaterial;
118 glAPI->ColorPointer = __indirect_glColorPointer;
119 glAPI->CopyPixels = __indirect_glCopyPixels;
120 glAPI->CopyTexImage1D = __indirect_glCopyTexImage1D;
121 glAPI->CopyTexImage2D = __indirect_glCopyTexImage2D;
122 glAPI->CopyTexSubImage1D = __indirect_glCopyTexSubImage1D;
123 glAPI->CopyTexSubImage2D = __indirect_glCopyTexSubImage2D;
124 glAPI->CullFace = __indirect_glCullFace;
125 glAPI->DeleteLists = __indirect_glDeleteLists;
126 glAPI->DeleteTextures = __indirect_glDeleteTextures;
127 glAPI->DepthFunc = __indirect_glDepthFunc;
128 glAPI->DepthMask = __indirect_glDepthMask;
129 glAPI->DepthRange = __indirect_glDepthRange;
130 glAPI->Disable = __indirect_glDisable;
131 glAPI->DisableClientState = __indirect_glDisableClientState;
132 glAPI->DrawArrays = __indirect_glDrawArrays;
133 glAPI->DrawBuffer = __indirect_glDrawBuffer;
134 glAPI->DrawElements = __indirect_glDrawElements;
135 glAPI->DrawPixels = __indirect_glDrawPixels;
136 glAPI->DrawRangeElements = __indirect_glDrawRangeElements;
137 glAPI->EdgeFlag = __indirect_glEdgeFlag;
138 glAPI->EdgeFlagPointer = __indirect_glEdgeFlagPointer;
139 glAPI->EdgeFlagv = __indirect_glEdgeFlagv;
140 glAPI->Enable = __indirect_glEnable;
141 glAPI->EnableClientState = __indirect_glEnableClientState;
142 glAPI->End = __indirect_glEnd;
143 glAPI->EndList = __indirect_glEndList;
144 glAPI->EvalCoord1d = __indirect_glEvalCoord1d;
145 glAPI->EvalCoord1dv = __indirect_glEvalCoord1dv;
146 glAPI->EvalCoord1f = __indirect_glEvalCoord1f;
147 glAPI->EvalCoord1fv = __indirect_glEvalCoord1fv;
148 glAPI->EvalCoord2d = __indirect_glEvalCoord2d;
149 glAPI->EvalCoord2dv = __indirect_glEvalCoord2dv;
150 glAPI->EvalCoord2f = __indirect_glEvalCoord2f;
151 glAPI->EvalCoord2fv = __indirect_glEvalCoord2fv;
152 glAPI->EvalMesh1 = __indirect_glEvalMesh1;
153 glAPI->EvalMesh2 = __indirect_glEvalMesh2;
154 glAPI->EvalPoint1 = __indirect_glEvalPoint1;
155 glAPI->EvalPoint2 = __indirect_glEvalPoint2;
156 glAPI->FeedbackBuffer = __indirect_glFeedbackBuffer;
157 glAPI->Finish = __indirect_glFinish;
158 glAPI->Flush = __indirect_glFlush;
159 glAPI->Fogf = __indirect_glFogf;
160 glAPI->Fogfv = __indirect_glFogfv;
161 glAPI->Fogi = __indirect_glFogi;
162 glAPI->Fogiv = __indirect_glFogiv;
163 glAPI->FrontFace = __indirect_glFrontFace;
164 glAPI->Frustum = __indirect_glFrustum;
165 glAPI->GenLists = __indirect_glGenLists;
166 glAPI->GenTextures = __indirect_glGenTextures;
167 glAPI->GetBooleanv = __indirect_glGetBooleanv;
168 glAPI->GetClipPlane = __indirect_glGetClipPlane;
169 glAPI->GetDoublev = __indirect_glGetDoublev;
170 glAPI->GetError = __indirect_glGetError;
171 glAPI->GetFloatv = __indirect_glGetFloatv;
172 glAPI->GetIntegerv = __indirect_glGetIntegerv;
173 glAPI->GetLightfv = __indirect_glGetLightfv;
174 glAPI->GetLightiv = __indirect_glGetLightiv;
175 glAPI->GetMapdv = __indirect_glGetMapdv;
176 glAPI->GetMapfv = __indirect_glGetMapfv;
177 glAPI->GetMapiv = __indirect_glGetMapiv;
178 glAPI->GetMaterialfv = __indirect_glGetMaterialfv;
179 glAPI->GetMaterialiv = __indirect_glGetMaterialiv;
180 glAPI->GetPixelMapfv = __indirect_glGetPixelMapfv;
181 glAPI->GetPixelMapuiv = __indirect_glGetPixelMapuiv;
182 glAPI->GetPixelMapusv = __indirect_glGetPixelMapusv;
183 glAPI->GetPointerv = __indirect_glGetPointerv;
184 glAPI->GetPolygonStipple = __indirect_glGetPolygonStipple;
185 glAPI->GetString = __indirect_glGetString;
186 glAPI->GetTexEnvfv = __indirect_glGetTexEnvfv;
187 glAPI->GetTexEnviv = __indirect_glGetTexEnviv;
188 glAPI->GetTexGendv = __indirect_glGetTexGendv;
189 glAPI->GetTexGenfv = __indirect_glGetTexGenfv;
190 glAPI->GetTexGeniv = __indirect_glGetTexGeniv;
191 glAPI->GetTexImage = __indirect_glGetTexImage;
192 glAPI->GetTexLevelParameterfv = __indirect_glGetTexLevelParameterfv;
193 glAPI->GetTexLevelParameteriv = __indirect_glGetTexLevelParameteriv;
194 glAPI->GetTexParameterfv = __indirect_glGetTexParameterfv;
195 glAPI->GetTexParameteriv = __indirect_glGetTexParameteriv;
196 glAPI->Hint = __indirect_glHint;
197 glAPI->IndexMask = __indirect_glIndexMask;
198 glAPI->IndexPointer = __indirect_glIndexPointer;
199 glAPI->Indexd = __indirect_glIndexd;
200 glAPI->Indexdv = __indirect_glIndexdv;
201 glAPI->Indexf = __indirect_glIndexf;
202 glAPI->Indexfv = __indirect_glIndexfv;
203 glAPI->Indexi = __indirect_glIndexi;
204 glAPI->Indexiv = __indirect_glIndexiv;
205 glAPI->Indexs = __indirect_glIndexs;
206 glAPI->Indexsv = __indirect_glIndexsv;
207 glAPI->Indexub = __indirect_glIndexub;
208 glAPI->Indexubv = __indirect_glIndexubv;
209 glAPI->InitNames = __indirect_glInitNames;
210 glAPI->InterleavedArrays = __indirect_glInterleavedArrays;
211 glAPI->IsEnabled = __indirect_glIsEnabled;
212 glAPI->IsList = __indirect_glIsList;
213 glAPI->IsTexture = __indirect_glIsTexture;
214 glAPI->LightModelf = __indirect_glLightModelf;
215 glAPI->LightModelfv = __indirect_glLightModelfv;
216 glAPI->LightModeli = __indirect_glLightModeli;
217 glAPI->LightModeliv = __indirect_glLightModeliv;
218 glAPI->Lightf = __indirect_glLightf;
219 glAPI->Lightfv = __indirect_glLightfv;
220 glAPI->Lighti = __indirect_glLighti;
221 glAPI->Lightiv = __indirect_glLightiv;
222 glAPI->LineStipple = __indirect_glLineStipple;
223 glAPI->LineWidth = __indirect_glLineWidth;
224 glAPI->ListBase = __indirect_glListBase;
225 glAPI->LoadIdentity = __indirect_glLoadIdentity;
226 glAPI->LoadMatrixd = __indirect_glLoadMatrixd;
227 glAPI->LoadMatrixf = __indirect_glLoadMatrixf;
228 glAPI->LoadName = __indirect_glLoadName;
229 glAPI->LogicOp = __indirect_glLogicOp;
230 glAPI->Map1d = __indirect_glMap1d;
231 glAPI->Map1f = __indirect_glMap1f;
232 glAPI->Map2d = __indirect_glMap2d;
233 glAPI->Map2f = __indirect_glMap2f;
234 glAPI->MapGrid1d = __indirect_glMapGrid1d;
235 glAPI->MapGrid1f = __indirect_glMapGrid1f;
236 glAPI->MapGrid2d = __indirect_glMapGrid2d;
237 glAPI->MapGrid2f = __indirect_glMapGrid2f;
238 glAPI->Materialf = __indirect_glMaterialf;
239 glAPI->Materialfv = __indirect_glMaterialfv;
240 glAPI->Materiali = __indirect_glMateriali;
241 glAPI->Materialiv = __indirect_glMaterialiv;
242 glAPI->MatrixMode = __indirect_glMatrixMode;
243 glAPI->MultMatrixd = __indirect_glMultMatrixd;
244 glAPI->MultMatrixf = __indirect_glMultMatrixf;
245 glAPI->NewList = __indirect_glNewList;
246 glAPI->Normal3b = __indirect_glNormal3b;
247 glAPI->Normal3bv = __indirect_glNormal3bv;
248 glAPI->Normal3d = __indirect_glNormal3d;
249 glAPI->Normal3dv = __indirect_glNormal3dv;
250 glAPI->Normal3f = __indirect_glNormal3f;
251 glAPI->Normal3fv = __indirect_glNormal3fv;
252 glAPI->Normal3i = __indirect_glNormal3i;
253 glAPI->Normal3iv = __indirect_glNormal3iv;
254 glAPI->Normal3s = __indirect_glNormal3s;
255 glAPI->Normal3sv = __indirect_glNormal3sv;
256 glAPI->NormalPointer = __indirect_glNormalPointer;
257 glAPI->Ortho = __indirect_glOrtho;
258 glAPI->PassThrough = __indirect_glPassThrough;
259 glAPI->PixelMapfv = __indirect_glPixelMapfv;
260 glAPI->PixelMapuiv = __indirect_glPixelMapuiv;
261 glAPI->PixelMapusv = __indirect_glPixelMapusv;
262 glAPI->PixelStoref = __indirect_glPixelStoref;
263 glAPI->PixelStorei = __indirect_glPixelStorei;
264 glAPI->PixelTransferf = __indirect_glPixelTransferf;
265 glAPI->PixelTransferi = __indirect_glPixelTransferi;
266 glAPI->PixelZoom = __indirect_glPixelZoom;
267 glAPI->PointSize = __indirect_glPointSize;
268 glAPI->PolygonMode = __indirect_glPolygonMode;
269 glAPI->PolygonOffset = __indirect_glPolygonOffset;
270 glAPI->PolygonStipple = __indirect_glPolygonStipple;
271 glAPI->PopAttrib = __indirect_glPopAttrib;
272 glAPI->PopClientAttrib = __indirect_glPopClientAttrib;
273 glAPI->PopMatrix = __indirect_glPopMatrix;
274 glAPI->PopName = __indirect_glPopName;
275 glAPI->PrioritizeTextures = __indirect_glPrioritizeTextures;
276 glAPI->PushAttrib = __indirect_glPushAttrib;
277 glAPI->PushClientAttrib = __indirect_glPushClientAttrib;
278 glAPI->PushMatrix = __indirect_glPushMatrix;
279 glAPI->PushName = __indirect_glPushName;
280 glAPI->RasterPos2d = __indirect_glRasterPos2d;
281 glAPI->RasterPos2dv = __indirect_glRasterPos2dv;
282 glAPI->RasterPos2f = __indirect_glRasterPos2f;
283 glAPI->RasterPos2fv = __indirect_glRasterPos2fv;
284 glAPI->RasterPos2i = __indirect_glRasterPos2i;
285 glAPI->RasterPos2iv = __indirect_glRasterPos2iv;
286 glAPI->RasterPos2s = __indirect_glRasterPos2s;
287 glAPI->RasterPos2sv = __indirect_glRasterPos2sv;
288 glAPI->RasterPos3d = __indirect_glRasterPos3d;
289 glAPI->RasterPos3dv = __indirect_glRasterPos3dv;
290 glAPI->RasterPos3f = __indirect_glRasterPos3f;
291 glAPI->RasterPos3fv = __indirect_glRasterPos3fv;
292 glAPI->RasterPos3i = __indirect_glRasterPos3i;
293 glAPI->RasterPos3iv = __indirect_glRasterPos3iv;
294 glAPI->RasterPos3s = __indirect_glRasterPos3s;
295 glAPI->RasterPos3sv = __indirect_glRasterPos3sv;
296 glAPI->RasterPos4d = __indirect_glRasterPos4d;
297 glAPI->RasterPos4dv = __indirect_glRasterPos4dv;
298 glAPI->RasterPos4f = __indirect_glRasterPos4f;
299 glAPI->RasterPos4fv = __indirect_glRasterPos4fv;
300 glAPI->RasterPos4i = __indirect_glRasterPos4i;
301 glAPI->RasterPos4iv = __indirect_glRasterPos4iv;
302 glAPI->RasterPos4s = __indirect_glRasterPos4s;
303 glAPI->RasterPos4sv = __indirect_glRasterPos4sv;
304 glAPI->ReadBuffer = __indirect_glReadBuffer;
305 glAPI->ReadPixels = __indirect_glReadPixels;
306 glAPI->Rectd = __indirect_glRectd;
307 glAPI->Rectdv = __indirect_glRectdv;
308 glAPI->Rectf = __indirect_glRectf;
309 glAPI->Rectfv = __indirect_glRectfv;
310 glAPI->Recti = __indirect_glRecti;
311 glAPI->Rectiv = __indirect_glRectiv;
312 glAPI->Rects = __indirect_glRects;
313 glAPI->Rectsv = __indirect_glRectsv;
314 glAPI->RenderMode = __indirect_glRenderMode;
315 glAPI->Rotated = __indirect_glRotated;
316 glAPI->Rotatef = __indirect_glRotatef;
317 glAPI->Scaled = __indirect_glScaled;
318 glAPI->Scalef = __indirect_glScalef;
319 glAPI->Scissor = __indirect_glScissor;
320 glAPI->SelectBuffer = __indirect_glSelectBuffer;
321 glAPI->ShadeModel = __indirect_glShadeModel;
322 glAPI->StencilFunc = __indirect_glStencilFunc;
323 glAPI->StencilMask = __indirect_glStencilMask;
324 glAPI->StencilOp = __indirect_glStencilOp;
325 glAPI->TexCoord1d = __indirect_glTexCoord1d;
326 glAPI->TexCoord1dv = __indirect_glTexCoord1dv;
327 glAPI->TexCoord1f = __indirect_glTexCoord1f;
328 glAPI->TexCoord1fv = __indirect_glTexCoord1fv;
329 glAPI->TexCoord1i = __indirect_glTexCoord1i;
330 glAPI->TexCoord1iv = __indirect_glTexCoord1iv;
331 glAPI->TexCoord1s = __indirect_glTexCoord1s;
332 glAPI->TexCoord1sv = __indirect_glTexCoord1sv;
333 glAPI->TexCoord2d = __indirect_glTexCoord2d;
334 glAPI->TexCoord2dv = __indirect_glTexCoord2dv;
335 glAPI->TexCoord2f = __indirect_glTexCoord2f;
336 glAPI->TexCoord2fv = __indirect_glTexCoord2fv;
337 glAPI->TexCoord2i = __indirect_glTexCoord2i;
338 glAPI->TexCoord2iv = __indirect_glTexCoord2iv;
339 glAPI->TexCoord2s = __indirect_glTexCoord2s;
340 glAPI->TexCoord2sv = __indirect_glTexCoord2sv;
341 glAPI->TexCoord3d = __indirect_glTexCoord3d;
342 glAPI->TexCoord3dv = __indirect_glTexCoord3dv;
343 glAPI->TexCoord3f = __indirect_glTexCoord3f;
344 glAPI->TexCoord3fv = __indirect_glTexCoord3fv;
345 glAPI->TexCoord3i = __indirect_glTexCoord3i;
346 glAPI->TexCoord3iv = __indirect_glTexCoord3iv;
347 glAPI->TexCoord3s = __indirect_glTexCoord3s;
348 glAPI->TexCoord3sv = __indirect_glTexCoord3sv;
349 glAPI->TexCoord4d = __indirect_glTexCoord4d;
350 glAPI->TexCoord4dv = __indirect_glTexCoord4dv;
351 glAPI->TexCoord4f = __indirect_glTexCoord4f;
352 glAPI->TexCoord4fv = __indirect_glTexCoord4fv;
353 glAPI->TexCoord4i = __indirect_glTexCoord4i;
354 glAPI->TexCoord4iv = __indirect_glTexCoord4iv;
355 glAPI->TexCoord4s = __indirect_glTexCoord4s;
356 glAPI->TexCoord4sv = __indirect_glTexCoord4sv;
357 glAPI->TexCoordPointer = __indirect_glTexCoordPointer;
358 glAPI->TexEnvf = __indirect_glTexEnvf;
359 glAPI->TexEnvfv = __indirect_glTexEnvfv;
360 glAPI->TexEnvi = __indirect_glTexEnvi;
361 glAPI->TexEnviv = __indirect_glTexEnviv;
362 glAPI->TexGend = __indirect_glTexGend;
363 glAPI->TexGendv = __indirect_glTexGendv;
364 glAPI->TexGenf = __indirect_glTexGenf;
365 glAPI->TexGenfv = __indirect_glTexGenfv;
366 glAPI->TexGeni = __indirect_glTexGeni;
367 glAPI->TexGeniv = __indirect_glTexGeniv;
368 glAPI->TexImage1D = __indirect_glTexImage1D;
369 glAPI->TexImage2D = __indirect_glTexImage2D;
370 glAPI->TexParameterf = __indirect_glTexParameterf;
371 glAPI->TexParameterfv = __indirect_glTexParameterfv;
372 glAPI->TexParameteri = __indirect_glTexParameteri;
373 glAPI->TexParameteriv = __indirect_glTexParameteriv;
374 glAPI->TexSubImage1D = __indirect_glTexSubImage1D;
375 glAPI->TexSubImage2D = __indirect_glTexSubImage2D;
376 glAPI->Translated = __indirect_glTranslated;
377 glAPI->Translatef = __indirect_glTranslatef;
378 glAPI->Vertex2d = __indirect_glVertex2d;
379 glAPI->Vertex2dv = __indirect_glVertex2dv;
380 glAPI->Vertex2f = __indirect_glVertex2f;
381 glAPI->Vertex2fv = __indirect_glVertex2fv;
382 glAPI->Vertex2i = __indirect_glVertex2i;
383 glAPI->Vertex2iv = __indirect_glVertex2iv;
384 glAPI->Vertex2s = __indirect_glVertex2s;
385 glAPI->Vertex2sv = __indirect_glVertex2sv;
386 glAPI->Vertex3d = __indirect_glVertex3d;
387 glAPI->Vertex3dv = __indirect_glVertex3dv;
388 glAPI->Vertex3f = __indirect_glVertex3f;
389 glAPI->Vertex3fv = __indirect_glVertex3fv;
390 glAPI->Vertex3i = __indirect_glVertex3i;
391 glAPI->Vertex3iv = __indirect_glVertex3iv;
392 glAPI->Vertex3s = __indirect_glVertex3s;
393 glAPI->Vertex3sv = __indirect_glVertex3sv;
394 glAPI->Vertex4d = __indirect_glVertex4d;
395 glAPI->Vertex4dv = __indirect_glVertex4dv;
396 glAPI->Vertex4f = __indirect_glVertex4f;
397 glAPI->Vertex4fv = __indirect_glVertex4fv;
398 glAPI->Vertex4i = __indirect_glVertex4i;
399 glAPI->Vertex4iv = __indirect_glVertex4iv;
400 glAPI->Vertex4s = __indirect_glVertex4s;
401 glAPI->Vertex4sv = __indirect_glVertex4sv;
402 glAPI->VertexPointer = __indirect_glVertexPointer;
403 glAPI->Viewport = __indirect_glViewport;
404
405 /* 1.2 */
406 glAPI->CopyTexSubImage3D = __indirect_glCopyTexSubImage3D;
407 glAPI->DrawRangeElements = __indirect_glDrawRangeElements;
408 glAPI->TexImage3D = __indirect_glTexImage3D;
409 glAPI->TexSubImage3D = __indirect_glTexSubImage3D;
410
411 /* OpenGL 1.2 GL_ARB_imaging */
412 glAPI->BlendColor = __indirect_glBlendColor;
413 glAPI->BlendEquation = __indirect_glBlendEquation;
414 glAPI->ColorSubTable = __indirect_glColorSubTable;
415 glAPI->ColorTable = __indirect_glColorTable;
416 glAPI->ColorTableParameterfv = __indirect_glColorTableParameterfv;
417 glAPI->ColorTableParameteriv = __indirect_glColorTableParameteriv;
418 glAPI->ConvolutionFilter1D = __indirect_glConvolutionFilter1D;
419 glAPI->ConvolutionFilter2D = __indirect_glConvolutionFilter2D;
420 glAPI->ConvolutionParameterf = __indirect_glConvolutionParameterf;
421 glAPI->ConvolutionParameterfv = __indirect_glConvolutionParameterfv;
422 glAPI->ConvolutionParameteri = __indirect_glConvolutionParameteri;
423 glAPI->ConvolutionParameteriv = __indirect_glConvolutionParameteriv;
424 glAPI->CopyColorSubTable = __indirect_glCopyColorSubTable;
425 glAPI->CopyColorTable = __indirect_glCopyColorTable;
426 glAPI->CopyConvolutionFilter1D = __indirect_glCopyConvolutionFilter1D;
427 glAPI->CopyConvolutionFilter2D = __indirect_glCopyConvolutionFilter2D;
428 glAPI->GetColorTable = __indirect_glGetColorTable;
429 glAPI->GetColorTableParameterfv = __indirect_glGetColorTableParameterfv;
430 glAPI->GetColorTableParameteriv = __indirect_glGetColorTableParameteriv;
431 glAPI->GetConvolutionFilter = __indirect_glGetConvolutionFilter;
432 glAPI->GetConvolutionParameterfv = __indirect_glGetConvolutionParameterfv;
433 glAPI->GetConvolutionParameteriv = __indirect_glGetConvolutionParameteriv;
434 glAPI->GetHistogram = __indirect_glGetHistogram;
435 glAPI->GetHistogramParameterfv = __indirect_glGetHistogramParameterfv;
436 glAPI->GetHistogramParameteriv = __indirect_glGetHistogramParameteriv;
437 glAPI->GetMinmax = __indirect_glGetMinmax;
438 glAPI->GetMinmaxParameterfv = __indirect_glGetMinmaxParameterfv;
439 glAPI->GetMinmaxParameteriv = __indirect_glGetMinmaxParameteriv;
440 glAPI->GetSeparableFilter = __indirect_glGetSeparableFilter;
441 glAPI->Histogram = __indirect_glHistogram;
442 glAPI->Minmax = __indirect_glMinmax;
443 glAPI->ResetHistogram = __indirect_glResetHistogram;
444 glAPI->ResetMinmax = __indirect_glResetMinmax;
445 glAPI->SeparableFilter2D = __indirect_glSeparableFilter2D;
446
447 /* 1.4 */
448 glAPI->MultiDrawArraysEXT = __indirect_glMultiDrawArraysEXT;
449 glAPI->MultiDrawElementsEXT = __indirect_glMultiDrawElementsEXT;
450
451 /* ARB 1. GL_ARB_multitexture */
452 glAPI->ActiveTextureARB = __indirect_glActiveTextureARB;
453 glAPI->ClientActiveTextureARB = __indirect_glClientActiveTextureARB;
454 glAPI->MultiTexCoord1dARB = __indirect_glMultiTexCoord1dARB;
455 glAPI->MultiTexCoord1dvARB = __indirect_glMultiTexCoord1dvARB;
456 glAPI->MultiTexCoord1fARB = __indirect_glMultiTexCoord1fARB;
457 glAPI->MultiTexCoord1fvARB = __indirect_glMultiTexCoord1fvARB;
458 glAPI->MultiTexCoord1iARB = __indirect_glMultiTexCoord1iARB;
459 glAPI->MultiTexCoord1ivARB = __indirect_glMultiTexCoord1ivARB;
460 glAPI->MultiTexCoord1sARB = __indirect_glMultiTexCoord1sARB;
461 glAPI->MultiTexCoord1svARB = __indirect_glMultiTexCoord1svARB;
462 glAPI->MultiTexCoord2dARB = __indirect_glMultiTexCoord2dARB;
463 glAPI->MultiTexCoord2dvARB = __indirect_glMultiTexCoord2dvARB;
464 glAPI->MultiTexCoord2fARB = __indirect_glMultiTexCoord2fARB;
465 glAPI->MultiTexCoord2fvARB = __indirect_glMultiTexCoord2fvARB;
466 glAPI->MultiTexCoord2iARB = __indirect_glMultiTexCoord2iARB;
467 glAPI->MultiTexCoord2ivARB = __indirect_glMultiTexCoord2ivARB;
468 glAPI->MultiTexCoord2sARB = __indirect_glMultiTexCoord2sARB;
469 glAPI->MultiTexCoord2svARB = __indirect_glMultiTexCoord2svARB;
470 glAPI->MultiTexCoord3dARB = __indirect_glMultiTexCoord3dARB;
471 glAPI->MultiTexCoord3dvARB = __indirect_glMultiTexCoord3dvARB;
472 glAPI->MultiTexCoord3fARB = __indirect_glMultiTexCoord3fARB;
473 glAPI->MultiTexCoord3fvARB = __indirect_glMultiTexCoord3fvARB;
474 glAPI->MultiTexCoord3iARB = __indirect_glMultiTexCoord3iARB;
475 glAPI->MultiTexCoord3ivARB = __indirect_glMultiTexCoord3ivARB;
476 glAPI->MultiTexCoord3sARB = __indirect_glMultiTexCoord3sARB;
477 glAPI->MultiTexCoord3svARB = __indirect_glMultiTexCoord3svARB;
478 glAPI->MultiTexCoord4dARB = __indirect_glMultiTexCoord4dARB;
479 glAPI->MultiTexCoord4dvARB = __indirect_glMultiTexCoord4dvARB;
480 glAPI->MultiTexCoord4fARB = __indirect_glMultiTexCoord4fARB;
481 glAPI->MultiTexCoord4fvARB = __indirect_glMultiTexCoord4fvARB;
482 glAPI->MultiTexCoord4iARB = __indirect_glMultiTexCoord4iARB;
483 glAPI->MultiTexCoord4ivARB = __indirect_glMultiTexCoord4ivARB;
484 glAPI->MultiTexCoord4sARB = __indirect_glMultiTexCoord4sARB;
485 glAPI->MultiTexCoord4svARB = __indirect_glMultiTexCoord4svARB;
486
487 /* ARB 3. GL_ARB_transpose_matrix */
488 glAPI->LoadTransposeMatrixdARB = __indirect_glLoadTransposeMatrixdARB;
489 glAPI->LoadTransposeMatrixfARB = __indirect_glLoadTransposeMatrixfARB;
490 glAPI->MultTransposeMatrixdARB = __indirect_glMultTransposeMatrixdARB;
491 glAPI->MultTransposeMatrixfARB = __indirect_glMultTransposeMatrixfARB;
492
493 /* ARB 5. GL_ARB_multisample */
494 glAPI->SampleCoverageARB = __indirect_glSampleCoverageARB;
495
496 /* ARB 12. GL_ARB_texture_compression / 1.3 */
497 glAPI->GetCompressedTexImageARB = __indirect_glGetCompressedTexImageARB;
498 glAPI->CompressedTexImage1DARB = __indirect_glCompressedTexImage1DARB;
499 glAPI->CompressedTexImage2DARB = __indirect_glCompressedTexImage2DARB;
500 glAPI->CompressedTexImage3DARB = __indirect_glCompressedTexImage3DARB;
501 glAPI->CompressedTexSubImage1DARB = __indirect_glCompressedTexSubImage1DARB;
502 glAPI->CompressedTexSubImage2DARB = __indirect_glCompressedTexSubImage2DARB;
503 glAPI->CompressedTexSubImage3DARB = __indirect_glCompressedTexSubImage3DARB;
504
505 /* ARB 14. GL_ARB_point_parameters */
506 glAPI->PointParameterfEXT = __indirect_glPointParameterfARB;
507 glAPI->PointParameterfvEXT = __indirect_glPointParameterfvARB;
508
509 /* ARB 15. GL_ARB_window_pos */
510 glAPI->WindowPos2dMESA = __indirect_glWindowPos2dARB;
511 glAPI->WindowPos2iMESA = __indirect_glWindowPos2iARB;
512 glAPI->WindowPos2fMESA = __indirect_glWindowPos2fARB;
513 glAPI->WindowPos2iMESA = __indirect_glWindowPos2iARB;
514 glAPI->WindowPos2sMESA = __indirect_glWindowPos2sARB;
515 glAPI->WindowPos2dvMESA = __indirect_glWindowPos2dvARB;
516 glAPI->WindowPos2fvMESA = __indirect_glWindowPos2fvARB;
517 glAPI->WindowPos2ivMESA = __indirect_glWindowPos2ivARB;
518 glAPI->WindowPos2svMESA = __indirect_glWindowPos2svARB;
519 glAPI->WindowPos3dMESA = __indirect_glWindowPos3dARB;
520 glAPI->WindowPos3fMESA = __indirect_glWindowPos3fARB;
521 glAPI->WindowPos3iMESA = __indirect_glWindowPos3iARB;
522 glAPI->WindowPos3sMESA = __indirect_glWindowPos3sARB;
523 glAPI->WindowPos3dvMESA = __indirect_glWindowPos3dvARB;
524 glAPI->WindowPos3fvMESA = __indirect_glWindowPos3fvARB;
525 glAPI->WindowPos3ivMESA = __indirect_glWindowPos3ivARB;
526 glAPI->WindowPos3svMESA = __indirect_glWindowPos3svARB;
527
528 /* 25. GL_SGIS_multisample */
529 glAPI->SampleMaskSGIS = __indirect_glSampleMaskSGIS;
530 glAPI->SamplePatternSGIS = __indirect_glSamplePatternSGIS;
531
532 /* 30. GL_EXT_vertex_array */
533 glAPI->ColorPointerEXT = __indirect_glColorPointerEXT;
534 glAPI->EdgeFlagPointerEXT = __indirect_glEdgeFlagPointerEXT;
535 glAPI->IndexPointerEXT = __indirect_glIndexPointerEXT;
536 glAPI->NormalPointerEXT = __indirect_glNormalPointerEXT;
537 glAPI->TexCoordPointerEXT = __indirect_glTexCoordPointerEXT;
538 glAPI->VertexPointerEXT = __indirect_glVertexPointerEXT;
539
540 /* 145. GL_EXT_secondary_color / GL 1.4 */
541 glAPI->SecondaryColor3bEXT = __indirect_glSecondaryColor3bEXT;
542 glAPI->SecondaryColor3bvEXT = __indirect_glSecondaryColor3bvEXT;
543 glAPI->SecondaryColor3sEXT = __indirect_glSecondaryColor3sEXT;
544 glAPI->SecondaryColor3svEXT = __indirect_glSecondaryColor3svEXT;
545 glAPI->SecondaryColor3iEXT = __indirect_glSecondaryColor3iEXT;
546 glAPI->SecondaryColor3ivEXT = __indirect_glSecondaryColor3ivEXT;
547 glAPI->SecondaryColor3ubEXT = __indirect_glSecondaryColor3ubEXT;
548 glAPI->SecondaryColor3ubvEXT = __indirect_glSecondaryColor3ubvEXT;
549 glAPI->SecondaryColor3usEXT = __indirect_glSecondaryColor3usEXT;
550 glAPI->SecondaryColor3usvEXT = __indirect_glSecondaryColor3usvEXT;
551 glAPI->SecondaryColor3uiEXT = __indirect_glSecondaryColor3uiEXT;
552 glAPI->SecondaryColor3uivEXT = __indirect_glSecondaryColor3uivEXT;
553 glAPI->SecondaryColor3fEXT = __indirect_glSecondaryColor3fEXT;
554 glAPI->SecondaryColor3fvEXT = __indirect_glSecondaryColor3fvEXT;
555 glAPI->SecondaryColor3dEXT = __indirect_glSecondaryColor3dEXT;
556 glAPI->SecondaryColor3dvEXT = __indirect_glSecondaryColor3dvEXT;
557 glAPI->SecondaryColorPointerEXT = __indirect_glSecondaryColorPointerEXT;
558
559 /* 149. GL_EXT_fog_coord / GL 1.4 */
560 glAPI->FogCoordfEXT = __indirect_glFogCoordfEXT;
561 glAPI->FogCoordfvEXT = __indirect_glFogCoordfvEXT;
562 glAPI->FogCoorddEXT = __indirect_glFogCoorddEXT;
563 glAPI->FogCoorddvEXT = __indirect_glFogCoorddvEXT;
564 glAPI->FogCoordPointerEXT = __indirect_glFogCoordPointerEXT;
565
566 /* 173. GL_EXT_blend_func_separate / GL 1.4 */
567 glAPI->BlendFuncSeparateEXT = __indirect_glBlendFuncSeparate;
568
569 /* 262. GL_NV_point_sprite / GL 1.4 */
570 glAPI->PointParameteriNV = __indirect_glPointParameteri;
571 glAPI->PointParameterivNV = __indirect_glPointParameteriv;
572
573 /* 268. GL_EXT_stencil_two_side */
574 glAPI->ActiveStencilFaceEXT = __indirect_glActiveStencilFaceEXT;
575
576 return glAPI;
577 }