1 /*
2 * Mesa 3-D graphics library
3 * Version: 2.5
4 * Copyright (C) 1995-1997 Brian Paul
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
15 *
16 * You should have received a copy of the GNU Library General Public
17 * License along with this library; if not, write to the Free
18 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 */
20
21 #ifdef PC_HEADER
22 #include "all.h"
23 #else
24 #include <stdio.h>
25 #include <stdlib.h>
26 #include "api.h"
27 #include "bitmap.h"
28 #include "context.h"
29
30 #include "drawpix.h"
31
32 #include "eval.h"
33 #include "image.h"
34 #include "macros.h"
35 #include "matrix.h"
36 #include "teximage.h"
37 #include "types.h"
38 #include "vb.h"
39 #endif
40
_mesa_Accum(GLenum op,GLfloat value)41 void APIENTRY _mesa_Accum( GLenum op, GLfloat value )
42 {
43 GET_CONTEXT;
44 (*CC->API.Accum)(CC, op, value);
45 }
46
_mesa_AlphaFunc(GLenum func,GLclampf ref)47 void APIENTRY _mesa_AlphaFunc( GLenum func, GLclampf ref )
48 {
49 GET_CONTEXT;
50 (*CC->API.AlphaFunc)(CC, func, ref);
51 }
52
53
_mesa_AreTexturesResident(GLsizei n,const GLuint * textures,GLboolean * residences)54 GLboolean APIENTRY _mesa_AreTexturesResident( GLsizei n, const GLuint *textures,
55 GLboolean *residences )
56 {
57 GET_CONTEXT;
58 return (*CC->API.AreTexturesResident)(CC, n, textures, residences);
59 }
60
_mesa_ArrayElement(GLint i)61 void APIENTRY _mesa_ArrayElement( GLint i )
62 {
63 GET_CONTEXT;
64 (*CC->API.ArrayElement)(CC, i);
65 }
66
67
_mesa_Begin(GLenum mode)68 void APIENTRY _mesa_Begin( GLenum mode )
69 {
70 GET_CONTEXT;
71 (*CC->API.Begin)( CC, mode );
72 }
73
74
_mesa_BindTexture(GLenum target,GLuint texture)75 void APIENTRY _mesa_BindTexture( GLenum target, GLuint texture )
76 {
77 GET_CONTEXT;
78 (*CC->API.BindTexture)(CC, target, texture);
79 }
80
81
_mesa_Bitmap(GLsizei width,GLsizei height,GLfloat xorig,GLfloat yorig,GLfloat xmove,GLfloat ymove,const GLubyte * bitmap)82 void APIENTRY _mesa_Bitmap( GLsizei width, GLsizei height,
83 GLfloat xorig, GLfloat yorig,
84 GLfloat xmove, GLfloat ymove,
85 const GLubyte *bitmap )
86 {
87 GET_CONTEXT;
88 if (!CC->CompileFlag) {
89 /* execute only, try optimized case where no unpacking needed */
90 if ( CC->Unpack.LsbFirst==GL_FALSE
91 && CC->Unpack.Alignment==1
92 && CC->Unpack.RowLength==0
93 && CC->Unpack.SkipPixels==0
94 && CC->Unpack.SkipRows==0) {
95 /* Special case: no unpacking needed */
96 struct gl_image image;
97 image.Width = width;
98 image.Height = height;
99 image.Components = 0;
100 image.Type = GL_BITMAP;
101 image.Format = GL_COLOR_INDEX;
102 image.Data = (GLvoid *) bitmap;
103 (*CC->Exec.Bitmap)( CC, width, height, xorig, yorig,
104 xmove, ymove, &image );
105 }
106 else {
107 struct gl_image *image;
108 image = gl_unpack_bitmap( CC, width, height, bitmap );
109 (*CC->Exec.Bitmap)( CC, width, height, xorig, yorig,
110 xmove, ymove, image );
111 if (image) {
112 gl_free_image( image );
113 }
114 }
115 }
116 else {
117 /* compile and maybe execute */
118 struct gl_image *image;
119 image = gl_unpack_bitmap( CC, width, height, bitmap );
120 (*CC->API.Bitmap)(CC, width, height, xorig, yorig, xmove, ymove, image );
121 }
122 }
123
124
_mesa_BlendFunc(GLenum sfactor,GLenum dfactor)125 void APIENTRY _mesa_BlendFunc( GLenum sfactor, GLenum dfactor )
126 {
127 GET_CONTEXT;
128 (*CC->API.BlendFunc)(CC, sfactor, dfactor);
129 }
130
131
_mesa_CallList(GLuint list)132 void APIENTRY _mesa_CallList( GLuint list )
133 {
134 GET_CONTEXT;
135 (*CC->API.CallList)(CC, list);
136 }
137
138
_mesa_CallLists(GLsizei n,GLenum type,const GLvoid * lists)139 void APIENTRY _mesa_CallLists( GLsizei n, GLenum type, const GLvoid *lists )
140 {
141 GET_CONTEXT;
142 (*CC->API.CallLists)(CC, n, type, lists);
143 }
144
145
_mesa_Clear(GLbitfield mask)146 void APIENTRY _mesa_Clear( GLbitfield mask )
147 {
148 GET_CONTEXT;
149 (*CC->API.Clear)(CC, mask);
150 }
151
152
_mesa_ClearAccum(GLfloat red,GLfloat green,GLfloat blue,GLfloat alpha)153 void APIENTRY _mesa_ClearAccum( GLfloat red, GLfloat green,
154 GLfloat blue, GLfloat alpha )
155 {
156 GET_CONTEXT;
157 (*CC->API.ClearAccum)(CC, red, green, blue, alpha);
158 }
159
160
161
_mesa_ClearIndex(GLfloat c)162 void APIENTRY _mesa_ClearIndex( GLfloat c )
163 {
164 GET_CONTEXT;
165 (*CC->API.ClearIndex)(CC, c);
166 }
167
168
_mesa_ClearColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)169 void APIENTRY _mesa_ClearColor( GLclampf red,
170 GLclampf green,
171 GLclampf blue,
172 GLclampf alpha )
173 {
174 GET_CONTEXT;
175 (*CC->API.ClearColor)(CC, red, green, blue, alpha);
176 }
177
178
_mesa_ClearDepth(GLclampd depth)179 void APIENTRY _mesa_ClearDepth( GLclampd depth )
180 {
181 GET_CONTEXT;
182 (*CC->API.ClearDepth)( CC, depth );
183 }
184
185
_mesa_ClearStencil(GLint s)186 void APIENTRY _mesa_ClearStencil( GLint s )
187 {
188 GET_CONTEXT;
189 (*CC->API.ClearStencil)(CC, s);
190 }
191
192
_mesa_ClipPlane(GLenum plane,const GLdouble * equation)193 void APIENTRY _mesa_ClipPlane( GLenum plane, const GLdouble *equation )
194 {
195 GLfloat eq[4];
196 GET_CONTEXT;
197 eq[0] = (GLfloat) equation[0];
198 eq[1] = (GLfloat) equation[1];
199 eq[2] = (GLfloat) equation[2];
200 eq[3] = (GLfloat) equation[3];
201 (*CC->API.ClipPlane)(CC, plane, eq );
202 }
203
204
_mesa_Color3b(GLbyte red,GLbyte green,GLbyte blue)205 void APIENTRY _mesa_Color3b( GLbyte red, GLbyte green, GLbyte blue )
206 {
207 GET_CONTEXT;
208 (*CC->API.Color3f)( CC, BYTE_TO_FLOAT(red), BYTE_TO_FLOAT(green),
209 BYTE_TO_FLOAT(blue) );
210 }
211
212
_mesa_Color3d(GLdouble red,GLdouble green,GLdouble blue)213 void APIENTRY _mesa_Color3d( GLdouble red, GLdouble green, GLdouble blue )
214 {
215 GET_CONTEXT;
216 (*CC->API.Color3f)( CC, (GLfloat) red, (GLfloat) green, (GLfloat) blue );
217 }
218
219
_mesa_Color3f(GLfloat red,GLfloat green,GLfloat blue)220 void APIENTRY _mesa_Color3f( GLfloat red, GLfloat green, GLfloat blue )
221 {
222 GET_CONTEXT;
223 (*CC->API.Color3f)( CC, red, green, blue );
224 }
225
226
_mesa_Color3i(GLint red,GLint green,GLint blue)227 void APIENTRY _mesa_Color3i( GLint red, GLint green, GLint blue )
228 {
229 GET_CONTEXT;
230 (*CC->API.Color3f)( CC, INT_TO_FLOAT(red), INT_TO_FLOAT(green),
231 INT_TO_FLOAT(blue) );
232 }
233
234
_mesa_Color3s(GLshort red,GLshort green,GLshort blue)235 void APIENTRY _mesa_Color3s( GLshort red, GLshort green, GLshort blue )
236 {
237 GET_CONTEXT;
238 (*CC->API.Color3f)( CC, SHORT_TO_FLOAT(red), SHORT_TO_FLOAT(green),
239 SHORT_TO_FLOAT(blue) );
240 }
241
242
_mesa_Color3ub(GLubyte red,GLubyte green,GLubyte blue)243 void APIENTRY _mesa_Color3ub( GLubyte red, GLubyte green, GLubyte blue )
244 {
245 GET_CONTEXT;
246 (*CC->API.Color4ub)( CC, red, green, blue, 255 );
247 }
248
249
_mesa_Color3ui(GLuint red,GLuint green,GLuint blue)250 void APIENTRY _mesa_Color3ui( GLuint red, GLuint green, GLuint blue )
251 {
252 GET_CONTEXT;
253 (*CC->API.Color3f)( CC, UINT_TO_FLOAT(red), UINT_TO_FLOAT(green),
254 UINT_TO_FLOAT(blue) );
255 }
256
257
_mesa_Color3us(GLushort red,GLushort green,GLushort blue)258 void APIENTRY _mesa_Color3us( GLushort red, GLushort green, GLushort blue )
259 {
260 GET_CONTEXT;
261 (*CC->API.Color3f)( CC, USHORT_TO_FLOAT(red), USHORT_TO_FLOAT(green),
262 USHORT_TO_FLOAT(blue) );
263 }
264
265
_mesa_Color4b(GLbyte red,GLbyte green,GLbyte blue,GLbyte alpha)266 void APIENTRY _mesa_Color4b( GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha )
267 {
268 GET_CONTEXT;
269 (*CC->API.Color4f)( CC, BYTE_TO_FLOAT(red), BYTE_TO_FLOAT(green),
270 BYTE_TO_FLOAT(blue), BYTE_TO_FLOAT(alpha) );
271 }
272
273
_mesa_Color4d(GLdouble red,GLdouble green,GLdouble blue,GLdouble alpha)274 void APIENTRY _mesa_Color4d( GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha )
275 {
276 GET_CONTEXT;
277 (*CC->API.Color4f)( CC, (GLfloat) red, (GLfloat) green,
278 (GLfloat) blue, (GLfloat) alpha );
279 }
280
281
_mesa_Color4f(GLfloat red,GLfloat green,GLfloat blue,GLfloat alpha)282 void APIENTRY _mesa_Color4f( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha )
283 {
284 GET_CONTEXT;
285 (*CC->API.Color4f)( CC, red, green, blue, alpha );
286 }
287
_mesa_Color4i(GLint red,GLint green,GLint blue,GLint alpha)288 void APIENTRY _mesa_Color4i( GLint red, GLint green, GLint blue, GLint alpha )
289 {
290 GET_CONTEXT;
291 (*CC->API.Color4f)( CC, INT_TO_FLOAT(red), INT_TO_FLOAT(green),
292 INT_TO_FLOAT(blue), INT_TO_FLOAT(alpha) );
293 }
294
295
_mesa_Color4s(GLshort red,GLshort green,GLshort blue,GLshort alpha)296 void APIENTRY _mesa_Color4s( GLshort red, GLshort green, GLshort blue, GLshort alpha )
297 {
298 GET_CONTEXT;
299 (*CC->API.Color4f)( CC, SHORT_TO_FLOAT(red), SHORT_TO_FLOAT(green),
300 SHORT_TO_FLOAT(blue), SHORT_TO_FLOAT(alpha) );
301 }
302
_mesa_Color4ub(GLubyte red,GLubyte green,GLubyte blue,GLubyte alpha)303 void APIENTRY _mesa_Color4ub( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha )
304 {
305 GET_CONTEXT;
306 (*CC->API.Color4ub)( CC, red, green, blue, alpha );
307 }
308
_mesa_Color4ui(GLuint red,GLuint green,GLuint blue,GLuint alpha)309 void APIENTRY _mesa_Color4ui( GLuint red, GLuint green, GLuint blue, GLuint alpha )
310 {
311 GET_CONTEXT;
312 (*CC->API.Color4f)( CC, UINT_TO_FLOAT(red), UINT_TO_FLOAT(green),
313 UINT_TO_FLOAT(blue), UINT_TO_FLOAT(alpha) );
314 }
315
_mesa_Color4us(GLushort red,GLushort green,GLushort blue,GLushort alpha)316 void APIENTRY _mesa_Color4us( GLushort red, GLushort green, GLushort blue, GLushort alpha )
317 {
318 GET_CONTEXT;
319 (*CC->API.Color4f)( CC, USHORT_TO_FLOAT(red), USHORT_TO_FLOAT(green),
320 USHORT_TO_FLOAT(blue), USHORT_TO_FLOAT(alpha) );
321 }
322
323
_mesa_Color3bv(const GLbyte * v)324 void APIENTRY _mesa_Color3bv( const GLbyte *v )
325 {
326 GET_CONTEXT;
327 (*CC->API.Color3f)( CC, BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]),
328 BYTE_TO_FLOAT(v[2]) );
329 }
330
331
_mesa_Color3dv(const GLdouble * v)332 void APIENTRY _mesa_Color3dv( const GLdouble *v )
333 {
334 GET_CONTEXT;
335 (*CC->API.Color3f)( CC, (GLdouble) v[0], (GLdouble) v[1], (GLdouble) v[2] );
336 }
337
338
_mesa_Color3fv(const GLfloat * v)339 void APIENTRY _mesa_Color3fv( const GLfloat *v )
340 {
341 GET_CONTEXT;
342 (*CC->API.Color3fv)( CC, v );
343 }
344
345
_mesa_Color3iv(const GLint * v)346 void APIENTRY _mesa_Color3iv( const GLint *v )
347 {
348 GET_CONTEXT;
349 (*CC->API.Color3f)( CC, INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]),
350 INT_TO_FLOAT(v[2]) );
351 }
352
353
_mesa_Color3sv(const GLshort * v)354 void APIENTRY _mesa_Color3sv( const GLshort *v )
355 {
356 GET_CONTEXT;
357 (*CC->API.Color3f)( CC, SHORT_TO_FLOAT(v[0]), SHORT_TO_FLOAT(v[1]),
358 SHORT_TO_FLOAT(v[2]) );
359 }
360
361
_mesa_Color3ubv(const GLubyte * v)362 void APIENTRY _mesa_Color3ubv( const GLubyte *v )
363 {
364 GET_CONTEXT;
365 (*CC->API.Color4ub)( CC, v[0], v[1], v[2], 255 );
366 }
367
368
_mesa_Color3uiv(const GLuint * v)369 void APIENTRY _mesa_Color3uiv( const GLuint *v )
370 {
371 GET_CONTEXT;
372 (*CC->API.Color3f)( CC, UINT_TO_FLOAT(v[0]), UINT_TO_FLOAT(v[1]),
373 UINT_TO_FLOAT(v[2]) );
374 }
375
376
_mesa_Color3usv(const GLushort * v)377 void APIENTRY _mesa_Color3usv( const GLushort *v )
378 {
379 GET_CONTEXT;
380 (*CC->API.Color3f)( CC, USHORT_TO_FLOAT(v[0]), USHORT_TO_FLOAT(v[1]),
381 USHORT_TO_FLOAT(v[2]) );
382
383 }
384
385
_mesa_Color4bv(const GLbyte * v)386 void APIENTRY _mesa_Color4bv( const GLbyte *v )
387 {
388 GET_CONTEXT;
389 (*CC->API.Color4f)( CC, BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]),
390 BYTE_TO_FLOAT(v[2]), BYTE_TO_FLOAT(v[3]) );
391 }
392
393
_mesa_Color4dv(const GLdouble * v)394 void APIENTRY _mesa_Color4dv( const GLdouble *v )
395 {
396 GET_CONTEXT;
397 (*CC->API.Color4f)( CC, (GLdouble) v[0], (GLdouble) v[1],
398 (GLdouble) v[2], (GLdouble) v[3] );
399 }
400
401
_mesa_Color4fv(const GLfloat * v)402 void APIENTRY _mesa_Color4fv( const GLfloat *v )
403 {
404 GET_CONTEXT;
405 (*CC->API.Color4f)( CC, v[0], v[1], v[2], v[3] );
406 }
407
408
_mesa_Color4iv(const GLint * v)409 void APIENTRY _mesa_Color4iv( const GLint *v )
410 {
411 GET_CONTEXT;
412 (*CC->API.Color4f)( CC, INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]),
413 INT_TO_FLOAT(v[2]), INT_TO_FLOAT(v[3]) );
414 }
415
416
_mesa_Color4sv(const GLshort * v)417 void APIENTRY _mesa_Color4sv( const GLshort *v )
418 {
419 GET_CONTEXT;
420 (*CC->API.Color4f)( CC, SHORT_TO_FLOAT(v[0]), SHORT_TO_FLOAT(v[1]),
421 SHORT_TO_FLOAT(v[2]), SHORT_TO_FLOAT(v[3]) );
422 }
423
424
_mesa_Color4ubv(const GLubyte * v)425 void APIENTRY _mesa_Color4ubv( const GLubyte *v )
426 {
427 GET_CONTEXT;
428 (*CC->API.Color4ubv)( CC, v );
429 }
430
431
_mesa_Color4uiv(const GLuint * v)432 void APIENTRY _mesa_Color4uiv( const GLuint *v )
433 {
434 GET_CONTEXT;
435 (*CC->API.Color4f)( CC, UINT_TO_FLOAT(v[0]), UINT_TO_FLOAT(v[1]),
436 UINT_TO_FLOAT(v[2]), UINT_TO_FLOAT(v[3]) );
437 }
438
439
_mesa_Color4usv(const GLushort * v)440 void APIENTRY _mesa_Color4usv( const GLushort *v )
441 {
442 GET_CONTEXT;
443 (*CC->API.Color4f)( CC, USHORT_TO_FLOAT(v[0]), USHORT_TO_FLOAT(v[1]),
444 USHORT_TO_FLOAT(v[2]), USHORT_TO_FLOAT(v[3]) );
445 }
446
447
_mesa_ColorMask(GLboolean red,GLboolean green,GLboolean blue,GLboolean alpha)448 void APIENTRY _mesa_ColorMask( GLboolean red, GLboolean green,
449 GLboolean blue, GLboolean alpha )
450 {
451 GET_CONTEXT;
452 (*CC->API.ColorMask)(CC, red, green, blue, alpha);
453 }
454
455
_mesa_ColorMaterial(GLenum face,GLenum mode)456 void APIENTRY _mesa_ColorMaterial( GLenum face, GLenum mode )
457 {
458 GET_CONTEXT;
459 (*CC->API.ColorMaterial)(CC, face, mode);
460 }
461
462
_mesa_ColorPointer(GLint size,GLenum type,GLsizei stride,const GLvoid * ptr)463 void APIENTRY _mesa_ColorPointer( GLint size, GLenum type, GLsizei stride,
464 const GLvoid *ptr )
465 {
466 GET_CONTEXT;
467 (*CC->API.ColorPointer)(CC, size, type, stride, ptr);
468 }
469
470
_mesa_CopyPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum type)471 void APIENTRY _mesa_CopyPixels( GLint x, GLint y, GLsizei width, GLsizei height,
472 GLenum type )
473 {
474 GET_CONTEXT;
475 (*CC->API.CopyPixels)(CC, x, y, width, height, type);
476 }
477
478
_mesa_CopyTexImage1D(GLenum target,GLint level,GLenum internalformat,GLint x,GLint y,GLsizei width,GLint border)479 void APIENTRY _mesa_CopyTexImage1D( GLenum target, GLint level,
480 GLenum internalformat,
481 GLint x, GLint y,
482 GLsizei width, GLint border )
483 {
484 GET_CONTEXT;
485 (*CC->API.CopyTexImage1D)( CC, target, level, internalformat,
486 x, y, width, border );
487 }
488
489
_mesa_CopyTexImage2D(GLenum target,GLint level,GLenum internalformat,GLint x,GLint y,GLsizei width,GLsizei height,GLint border)490 void APIENTRY _mesa_CopyTexImage2D( GLenum target, GLint level,
491 GLenum internalformat,
492 GLint x, GLint y,
493 GLsizei width, GLsizei height, GLint border )
494 {
495 GET_CONTEXT;
496 (*CC->API.CopyTexImage2D)( CC, target, level, internalformat,
497 x, y, width, height, border );
498 }
499
500
_mesa_CopyTexSubImage1D(GLenum target,GLint level,GLint xoffset,GLint x,GLint y,GLsizei width)501 void APIENTRY _mesa_CopyTexSubImage1D( GLenum target, GLint level,
502 GLint xoffset, GLint x, GLint y,
503 GLsizei width )
504 {
505 GET_CONTEXT;
506 (*CC->API.CopyTexSubImage1D)( CC, target, level, xoffset, x, y, width );
507 }
508
509
_mesa_CopyTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint x,GLint y,GLsizei width,GLsizei height)510 void APIENTRY _mesa_CopyTexSubImage2D( GLenum target, GLint level,
511 GLint xoffset, GLint yoffset,
512 GLint x, GLint y,
513 GLsizei width, GLsizei height )
514 {
515 GET_CONTEXT;
516 (*CC->API.CopyTexSubImage2D)( CC, target, level, xoffset, yoffset,
517 x, y, width, height );
518 }
519
520
521
_mesa_CullFace(GLenum mode)522 void APIENTRY _mesa_CullFace( GLenum mode )
523 {
524 GET_CONTEXT;
525 (*CC->API.CullFace)(CC, mode);
526 }
527
528
_mesa_DepthFunc(GLenum func)529 void APIENTRY _mesa_DepthFunc( GLenum func )
530 {
531 GET_CONTEXT;
532 (*CC->API.DepthFunc)( CC, func );
533 }
534
535
_mesa_DepthMask(GLboolean flag)536 void APIENTRY _mesa_DepthMask( GLboolean flag )
537 {
538 GET_CONTEXT;
539 (*CC->API.DepthMask)( CC, flag );
540 }
541
542
_mesa_DepthRange(GLclampd near_val,GLclampd far_val)543 void APIENTRY _mesa_DepthRange( GLclampd near_val, GLclampd far_val )
544 {
545 GET_CONTEXT;
546 (*CC->API.DepthRange)( CC, near_val, far_val );
547 }
548
549
_mesa_DeleteLists(GLuint list,GLsizei range)550 void APIENTRY _mesa_DeleteLists( GLuint list, GLsizei range )
551 {
552 GET_CONTEXT;
553 (*CC->API.DeleteLists)(CC, list, range);
554 }
555
556
_mesa_DeleteTextures(GLsizei n,const GLuint * textures)557 void APIENTRY _mesa_DeleteTextures( GLsizei n, const GLuint *textures)
558 {
559 GET_CONTEXT;
560 (*CC->API.DeleteTextures)(CC, n, textures);
561 }
562
563
_mesa_Disable(GLenum cap)564 void APIENTRY _mesa_Disable( GLenum cap )
565 {
566 GET_CONTEXT;
567 (*CC->API.Disable)( CC, cap );
568 }
569
570
_mesa_DisableClientState(GLenum cap)571 void APIENTRY _mesa_DisableClientState( GLenum cap )
572 {
573 GET_CONTEXT;
574 (*CC->API.DisableClientState)( CC, cap );
575 }
576
577
_mesa_DrawArrays(GLenum mode,GLint first,GLsizei count)578 void APIENTRY _mesa_DrawArrays( GLenum mode, GLint first, GLsizei count )
579 {
580 GET_CONTEXT;
581 (*CC->API.DrawArrays)(CC, mode, first, count);
582 }
583
584
_mesa_DrawBuffer(GLenum mode)585 void APIENTRY _mesa_DrawBuffer( GLenum mode )
586 {
587 GET_CONTEXT;
588 (*CC->API.DrawBuffer)(CC, mode);
589 }
590
591
_mesa_DrawElements(GLenum mode,GLsizei count,GLenum type,const GLvoid * indices)592 void APIENTRY _mesa_DrawElements( GLenum mode, GLsizei count,
593 GLenum type, const GLvoid *indices )
594 {
595 GET_CONTEXT;
596 (*CC->API.DrawElements)( CC, mode, count, type, indices );
597 }
598
599
_mesa_DrawPixels(GLsizei width,GLsizei height,GLenum format,GLenum type,const GLvoid * pixels)600 void APIENTRY _mesa_DrawPixels( GLsizei width, GLsizei height,
601 GLenum format, GLenum type, const GLvoid *pixels )
602 {
603 GET_CONTEXT;
604 (*CC->API.DrawPixels)( CC, width, height, format, type, pixels );
605 }
606
607
_mesa_Enable(GLenum cap)608 void APIENTRY _mesa_Enable( GLenum cap )
609 {
610 GET_CONTEXT;
611 (*CC->API.Enable)( CC, cap );
612 }
613
614
_mesa_EnableClientState(GLenum cap)615 void APIENTRY _mesa_EnableClientState( GLenum cap )
616 {
617 GET_CONTEXT;
618 (*CC->API.EnableClientState)( CC, cap );
619 }
620
621
_mesa_End(void)622 void APIENTRY _mesa_End( void )
623 {
624 GET_CONTEXT;
625 (*CC->API.End)( CC );
626 }
627
628
_mesa_EndList(void)629 void APIENTRY _mesa_EndList( void )
630 {
631 GET_CONTEXT;
632 (*CC->API.EndList)(CC);
633 }
634
635
636
637
_mesa_EvalCoord1d(GLdouble u)638 void APIENTRY _mesa_EvalCoord1d( GLdouble u )
639 {
640 GET_CONTEXT;
641 (*CC->API.EvalCoord1f)( CC, (GLfloat) u );
642 }
643
644
_mesa_EvalCoord1f(GLfloat u)645 void APIENTRY _mesa_EvalCoord1f( GLfloat u )
646 {
647 GET_CONTEXT;
648 (*CC->API.EvalCoord1f)( CC, u );
649 }
650
651
_mesa_EvalCoord1dv(const GLdouble * u)652 void APIENTRY _mesa_EvalCoord1dv( const GLdouble *u )
653 {
654 GET_CONTEXT;
655 (*CC->API.EvalCoord1f)( CC, (GLfloat) *u );
656 }
657
658
_mesa_EvalCoord1fv(const GLfloat * u)659 void APIENTRY _mesa_EvalCoord1fv( const GLfloat *u )
660 {
661 GET_CONTEXT;
662 (*CC->API.EvalCoord1f)( CC, (GLfloat) *u );
663 }
664
665
_mesa_EvalCoord2d(GLdouble u,GLdouble v)666 void APIENTRY _mesa_EvalCoord2d( GLdouble u, GLdouble v )
667 {
668 GET_CONTEXT;
669 (*CC->API.EvalCoord2f)( CC, (GLfloat) u, (GLfloat) v );
670 }
671
672
_mesa_EvalCoord2f(GLfloat u,GLfloat v)673 void APIENTRY _mesa_EvalCoord2f( GLfloat u, GLfloat v )
674 {
675 GET_CONTEXT;
676 (*CC->API.EvalCoord2f)( CC, u, v );
677 }
678
679
_mesa_EvalCoord2dv(const GLdouble * u)680 void APIENTRY _mesa_EvalCoord2dv( const GLdouble *u )
681 {
682 GET_CONTEXT;
683 (*CC->API.EvalCoord2f)( CC, (GLfloat) u[0], (GLfloat) u[1] );
684 }
685
686
_mesa_EvalCoord2fv(const GLfloat * u)687 void APIENTRY _mesa_EvalCoord2fv( const GLfloat *u )
688 {
689 GET_CONTEXT;
690 (*CC->API.EvalCoord2f)( CC, u[0], u[1] );
691 }
692
693
_mesa_EvalPoint1(GLint i)694 void APIENTRY _mesa_EvalPoint1( GLint i )
695 {
696 GET_CONTEXT;
697 (*CC->API.EvalPoint1)( CC, i );
698 }
699
700
_mesa_EvalPoint2(GLint i,GLint j)701 void APIENTRY _mesa_EvalPoint2( GLint i, GLint j )
702 {
703 GET_CONTEXT;
704 (*CC->API.EvalPoint2)( CC, i, j );
705 }
706
707
_mesa_EvalMesh1(GLenum mode,GLint i1,GLint i2)708 void APIENTRY _mesa_EvalMesh1( GLenum mode, GLint i1, GLint i2 )
709 {
710 GET_CONTEXT;
711 (*CC->API.EvalMesh1)( CC, mode, i1, i2 );
712 }
713
714
_mesa_EdgeFlag(GLboolean flag)715 void APIENTRY _mesa_EdgeFlag( GLboolean flag )
716 {
717 GET_CONTEXT;
718 (*CC->API.EdgeFlag)(CC, flag);
719 }
720
721
_mesa_EdgeFlagv(const GLboolean * flag)722 void APIENTRY _mesa_EdgeFlagv( const GLboolean *flag )
723 {
724 GET_CONTEXT;
725 (*CC->API.EdgeFlag)(CC, *flag);
726 }
727
728
_mesa_EdgeFlagPointer(GLsizei stride,const GLboolean * ptr)729 void APIENTRY _mesa_EdgeFlagPointer( GLsizei stride, const GLboolean *ptr )
730 {
731 GET_CONTEXT;
732 (*CC->API.EdgeFlagPointer)(CC, stride, ptr);
733 }
734
735
_mesa_EvalMesh2(GLenum mode,GLint i1,GLint i2,GLint j1,GLint j2)736 void APIENTRY _mesa_EvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 )
737 {
738 GET_CONTEXT;
739 (*CC->API.EvalMesh2)( CC, mode, i1, i2, j1, j2 );
740 }
741
742
_mesa_FeedbackBuffer(GLsizei size,GLenum type,GLfloat * buffer)743 void APIENTRY _mesa_FeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer )
744 {
745 GET_CONTEXT;
746 (*CC->API.FeedbackBuffer)(CC, size, type, buffer);
747 }
748
749
_mesa_Finish(void)750 void APIENTRY _mesa_Finish( void )
751 {
752 GET_CONTEXT;
753 (*CC->API.Finish)(CC);
754 }
755
756
_mesa_Flush(void)757 void APIENTRY _mesa_Flush( void )
758 {
759 GET_CONTEXT;
760 (*CC->API.Flush)(CC);
761 }
762
763
_mesa_Fogf(GLenum pname,GLfloat param)764 void APIENTRY _mesa_Fogf( GLenum pname, GLfloat param )
765 {
766 GET_CONTEXT;
767 (*CC->API.Fogfv)(CC, pname, ¶m);
768 }
769
770
_mesa_Fogi(GLenum pname,GLint param)771 void APIENTRY _mesa_Fogi( GLenum pname, GLint param )
772 {
773 GLfloat fparam = (GLfloat) param;
774 GET_CONTEXT;
775 (*CC->API.Fogfv)(CC, pname, &fparam);
776 }
777
778
_mesa_Fogfv(GLenum pname,const GLfloat * params)779 void APIENTRY _mesa_Fogfv( GLenum pname, const GLfloat *params )
780 {
781 GET_CONTEXT;
782 (*CC->API.Fogfv)(CC, pname, params);
783 }
784
785
_mesa_Fogiv(GLenum pname,const GLint * params)786 void APIENTRY _mesa_Fogiv( GLenum pname, const GLint *params )
787 {
788 GLfloat p[4];
789 GET_CONTEXT;
790
791 switch (pname) {
792 case GL_FOG_MODE:
793 case GL_FOG_DENSITY:
794 case GL_FOG_START:
795 case GL_FOG_END:
796 case GL_FOG_INDEX:
797 p[0] = (GLfloat) *params;
798 break;
799 case GL_FOG_COLOR:
800 p[0] = INT_TO_FLOAT( params[0] );
801 p[1] = INT_TO_FLOAT( params[1] );
802 p[2] = INT_TO_FLOAT( params[2] );
803 p[3] = INT_TO_FLOAT( params[3] );
804 break;
805 default:
806 /* Error will be caught later in gl_Fogfv */
807 ;
808 }
809 (*CC->API.Fogfv)( CC, pname, p );
810 }
811
812
813
_mesa_FrontFace(GLenum mode)814 void APIENTRY _mesa_FrontFace( GLenum mode )
815 {
816 GET_CONTEXT;
817 (*CC->API.FrontFace)(CC, mode);
818 }
819
820
_mesa_Frustum(GLdouble left,GLdouble right,GLdouble bottom,GLdouble top,GLdouble nearval,GLdouble farval)821 void APIENTRY _mesa_Frustum( GLdouble left, GLdouble right,
822 GLdouble bottom, GLdouble top,
823 GLdouble nearval, GLdouble farval )
824 {
825 GET_CONTEXT;
826 (*CC->API.Frustum)(CC, left, right, bottom, top, nearval, farval);
827 }
828
829
_mesa_GenLists(GLsizei range)830 GLuint APIENTRY _mesa_GenLists( GLsizei range )
831 {
832 GET_CONTEXT;
833 return (*CC->API.GenLists)(CC, range);
834 }
835
836
_mesa_GenTextures(GLsizei n,GLuint * textures)837 void APIENTRY _mesa_GenTextures( GLsizei n, GLuint *textures )
838 {
839 GET_CONTEXT;
840 (*CC->API.GenTextures)(CC, n, textures);
841 }
842
843
_mesa_GetBooleanv(GLenum pname,GLboolean * params)844 void APIENTRY _mesa_GetBooleanv( GLenum pname, GLboolean *params )
845 {
846 GET_CONTEXT;
847 (*CC->API.GetBooleanv)(CC, pname, params);
848 }
849
850
_mesa_GetClipPlane(GLenum plane,GLdouble * equation)851 void APIENTRY _mesa_GetClipPlane( GLenum plane, GLdouble *equation )
852 {
853 GET_CONTEXT;
854 (*CC->API.GetClipPlane)(CC, plane, equation);
855 }
856
_mesa_GetDoublev(GLenum pname,GLdouble * params)857 void APIENTRY _mesa_GetDoublev( GLenum pname, GLdouble *params )
858 {
859 GET_CONTEXT;
860 (*CC->API.GetDoublev)(CC, pname, params);
861 }
862
863
_mesa_GetError(void)864 GLenum APIENTRY _mesa_GetError( void )
865 {
866 GET_CONTEXT;
867 if (!CC) {
868 /* No current context */
869 return GL_NO_ERROR;
870 }
871 return (*CC->API.GetError)(CC);
872 }
873
874
_mesa_GetFloatv(GLenum pname,GLfloat * params)875 void APIENTRY _mesa_GetFloatv( GLenum pname, GLfloat *params )
876 {
877 GET_CONTEXT;
878 (*CC->API.GetFloatv)(CC, pname, params);
879 }
880
881
_mesa_GetIntegerv(GLenum pname,GLint * params)882 void APIENTRY _mesa_GetIntegerv( GLenum pname, GLint *params )
883 {
884 GET_CONTEXT;
885 (*CC->API.GetIntegerv)(CC, pname, params);
886 }
887
888
_mesa_GetLightfv(GLenum light,GLenum pname,GLfloat * params)889 void APIENTRY _mesa_GetLightfv( GLenum light, GLenum pname, GLfloat *params )
890 {
891 GET_CONTEXT;
892 (*CC->API.GetLightfv)(CC, light, pname, params);
893 }
894
895
_mesa_GetLightiv(GLenum light,GLenum pname,GLint * params)896 void APIENTRY _mesa_GetLightiv( GLenum light, GLenum pname, GLint *params )
897 {
898 GET_CONTEXT;
899 (*CC->API.GetLightiv)(CC, light, pname, params);
900 }
901
902
_mesa_GetMapdv(GLenum target,GLenum query,GLdouble * v)903 void APIENTRY _mesa_GetMapdv( GLenum target, GLenum query, GLdouble *v )
904 {
905 GET_CONTEXT;
906 (*CC->API.GetMapdv)( CC, target, query, v );
907 }
908
909
_mesa_GetMapfv(GLenum target,GLenum query,GLfloat * v)910 void APIENTRY _mesa_GetMapfv( GLenum target, GLenum query, GLfloat *v )
911 {
912 GET_CONTEXT;
913 (*CC->API.GetMapfv)( CC, target, query, v );
914 }
915
916
_mesa_GetMapiv(GLenum target,GLenum query,GLint * v)917 void APIENTRY _mesa_GetMapiv( GLenum target, GLenum query, GLint *v )
918 {
919 GET_CONTEXT;
920 (*CC->API.GetMapiv)( CC, target, query, v );
921 }
922
923
_mesa_GetMaterialfv(GLenum face,GLenum pname,GLfloat * params)924 void APIENTRY _mesa_GetMaterialfv( GLenum face, GLenum pname, GLfloat *params )
925 {
926 GET_CONTEXT;
927 (*CC->API.GetMaterialfv)(CC, face, pname, params);
928 }
929
930
_mesa_GetMaterialiv(GLenum face,GLenum pname,GLint * params)931 void APIENTRY _mesa_GetMaterialiv( GLenum face, GLenum pname, GLint *params )
932 {
933 GET_CONTEXT;
934 (*CC->API.GetMaterialiv)(CC, face, pname, params);
935 }
936
937
_mesa_GetPixelMapfv(GLenum map,GLfloat * values)938 void APIENTRY _mesa_GetPixelMapfv( GLenum map, GLfloat *values )
939 {
940 GET_CONTEXT;
941 (*CC->API.GetPixelMapfv)(CC, map, values);
942 }
943
944
_mesa_GetPixelMapuiv(GLenum map,GLuint * values)945 void APIENTRY _mesa_GetPixelMapuiv( GLenum map, GLuint *values )
946 {
947 GET_CONTEXT;
948 (*CC->API.GetPixelMapuiv)(CC, map, values);
949 }
950
951
_mesa_GetPixelMapusv(GLenum map,GLushort * values)952 void APIENTRY _mesa_GetPixelMapusv( GLenum map, GLushort *values )
953 {
954 GET_CONTEXT;
955 (*CC->API.GetPixelMapusv)(CC, map, values);
956 }
957
958
_mesa_GetPointerv(GLenum pname,GLvoid ** params)959 void APIENTRY _mesa_GetPointerv( GLenum pname, GLvoid **params )
960 {
961 GET_CONTEXT;
962 (*CC->API.GetPointerv)(CC, pname, params);
963 }
964
965
_mesa_GetPolygonStipple(GLubyte * mask)966 void APIENTRY _mesa_GetPolygonStipple( GLubyte *mask )
967 {
968 GET_CONTEXT;
969 (*CC->API.GetPolygonStipple)(CC, mask);
970 }
971
972
_mesa_GetString(GLenum name)973 const GLubyte * APIENTRY _mesa_GetString( GLenum name )
974 {
975 GET_CONTEXT;
976 return (*CC->API.GetString)(CC, name);
977 }
978
979
980
_mesa_GetTexEnvfv(GLenum target,GLenum pname,GLfloat * params)981 void APIENTRY _mesa_GetTexEnvfv( GLenum target, GLenum pname, GLfloat *params )
982 {
983 GET_CONTEXT;
984 (*CC->API.GetTexEnvfv)(CC, target, pname, params);
985 }
986
987
_mesa_GetTexEnviv(GLenum target,GLenum pname,GLint * params)988 void APIENTRY _mesa_GetTexEnviv( GLenum target, GLenum pname, GLint *params )
989 {
990 GET_CONTEXT;
991 (*CC->API.GetTexEnviv)(CC, target, pname, params);
992 }
993
994
_mesa_GetTexGeniv(GLenum coord,GLenum pname,GLint * params)995 void APIENTRY _mesa_GetTexGeniv( GLenum coord, GLenum pname, GLint *params )
996 {
997 GET_CONTEXT;
998 (*CC->API.GetTexGeniv)(CC, coord, pname, params);
999 }
1000
1001
_mesa_GetTexGendv(GLenum coord,GLenum pname,GLdouble * params)1002 void APIENTRY _mesa_GetTexGendv( GLenum coord, GLenum pname, GLdouble *params )
1003 {
1004 GET_CONTEXT;
1005 (*CC->API.GetTexGendv)(CC, coord, pname, params);
1006 }
1007
1008
_mesa_GetTexGenfv(GLenum coord,GLenum pname,GLfloat * params)1009 void APIENTRY _mesa_GetTexGenfv( GLenum coord, GLenum pname, GLfloat *params )
1010 {
1011 GET_CONTEXT;
1012 (*CC->API.GetTexGenfv)(CC, coord, pname, params);
1013 }
1014
1015
1016
_mesa_GetTexImage(GLenum target,GLint level,GLenum format,GLenum type,GLvoid * pixels)1017 void APIENTRY _mesa_GetTexImage( GLenum target, GLint level, GLenum format,
1018 GLenum type, GLvoid *pixels )
1019 {
1020 GET_CONTEXT;
1021 (*CC->API.GetTexImage)(CC, target, level, format, type, pixels);
1022 }
1023
1024
_mesa_GetTexLevelParameterfv(GLenum target,GLint level,GLenum pname,GLfloat * params)1025 void APIENTRY _mesa_GetTexLevelParameterfv( GLenum target, GLint level,
1026 GLenum pname, GLfloat *params )
1027 {
1028 GET_CONTEXT;
1029 (*CC->API.GetTexLevelParameterfv)(CC, target, level, pname, params);
1030 }
1031
1032
_mesa_GetTexLevelParameteriv(GLenum target,GLint level,GLenum pname,GLint * params)1033 void APIENTRY _mesa_GetTexLevelParameteriv( GLenum target, GLint level,
1034 GLenum pname, GLint *params )
1035 {
1036 GET_CONTEXT;
1037 (*CC->API.GetTexLevelParameteriv)(CC, target, level, pname, params);
1038 }
1039
1040
1041
1042
_mesa_GetTexParameterfv(GLenum target,GLenum pname,GLfloat * params)1043 void APIENTRY _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params)
1044 {
1045 GET_CONTEXT;
1046 (*CC->API.GetTexParameterfv)(CC, target, pname, params);
1047 }
1048
1049
_mesa_GetTexParameteriv(GLenum target,GLenum pname,GLint * params)1050 void APIENTRY _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params )
1051 {
1052 GET_CONTEXT;
1053 (*CC->API.GetTexParameteriv)(CC, target, pname, params);
1054 }
1055
1056
_mesa_Hint(GLenum target,GLenum mode)1057 void APIENTRY _mesa_Hint( GLenum target, GLenum mode )
1058 {
1059 GET_CONTEXT;
1060 (*CC->API.Hint)(CC, target, mode);
1061 }
1062
1063
_mesa_Indexd(GLdouble c)1064 void APIENTRY _mesa_Indexd( GLdouble c )
1065 {
1066 GET_CONTEXT;
1067 (*CC->API.Indexf)( CC, (GLfloat) c );
1068 }
1069
1070
_mesa_Indexf(GLfloat c)1071 void APIENTRY _mesa_Indexf( GLfloat c )
1072 {
1073 GET_CONTEXT;
1074 (*CC->API.Indexf)( CC, c );
1075 }
1076
1077
_mesa_Indexi(GLint c)1078 void APIENTRY _mesa_Indexi( GLint c )
1079 {
1080 GET_CONTEXT;
1081 (*CC->API.Indexi)( CC, c );
1082 }
1083
1084
_mesa_Indexs(GLshort c)1085 void APIENTRY _mesa_Indexs( GLshort c )
1086 {
1087 GET_CONTEXT;
1088 (*CC->API.Indexi)( CC, (GLint) c );
1089 }
1090
1091
1092 #ifdef GL_VERSION_1_1
_mesa_Indexub(GLubyte c)1093 void APIENTRY _mesa_Indexub( GLubyte c )
1094 {
1095 GET_CONTEXT;
1096 (*CC->API.Indexi)( CC, (GLint) c );
1097 }
1098 #endif
1099
1100
_mesa_Indexdv(const GLdouble * c)1101 void APIENTRY _mesa_Indexdv( const GLdouble *c )
1102 {
1103 GET_CONTEXT;
1104 (*CC->API.Indexf)( CC, (GLfloat) *c );
1105 }
1106
1107
_mesa_Indexfv(const GLfloat * c)1108 void APIENTRY _mesa_Indexfv( const GLfloat *c )
1109 {
1110 GET_CONTEXT;
1111 (*CC->API.Indexf)( CC, *c );
1112 }
1113
1114
_mesa_Indexiv(const GLint * c)1115 void APIENTRY _mesa_Indexiv( const GLint *c )
1116 {
1117 GET_CONTEXT;
1118 (*CC->API.Indexi)( CC, *c );
1119 }
1120
1121
_mesa_Indexsv(const GLshort * c)1122 void APIENTRY _mesa_Indexsv( const GLshort *c )
1123 {
1124 GET_CONTEXT;
1125 (*CC->API.Indexi)( CC, (GLint) *c );
1126 }
1127
1128
1129 #ifdef GL_VERSION_1_1
_mesa_Indexubv(const GLubyte * c)1130 void APIENTRY _mesa_Indexubv( const GLubyte *c )
1131 {
1132 GET_CONTEXT;
1133 (*CC->API.Indexi)( CC, (GLint) *c );
1134 }
1135 #endif
1136
1137
_mesa_IndexMask(GLuint mask)1138 void APIENTRY _mesa_IndexMask( GLuint mask )
1139 {
1140 GET_CONTEXT;
1141 (*CC->API.IndexMask)(CC, mask);
1142 }
1143
1144
_mesa_IndexPointer(GLenum type,GLsizei stride,const GLvoid * ptr)1145 void APIENTRY _mesa_IndexPointer( GLenum type, GLsizei stride, const GLvoid *ptr )
1146 {
1147 GET_CONTEXT;
1148 (*CC->API.IndexPointer)(CC, type, stride, ptr);
1149 }
1150
1151
_mesa_InterleavedArrays(GLenum format,GLsizei stride,const GLvoid * pointer)1152 void APIENTRY _mesa_InterleavedArrays( GLenum format, GLsizei stride,
1153 const GLvoid *pointer )
1154 {
1155 GET_CONTEXT;
1156 (*CC->API.InterleavedArrays)( CC, format, stride, pointer );
1157 }
1158
1159
_mesa_InitNames(void)1160 void APIENTRY _mesa_InitNames( void )
1161 {
1162 GET_CONTEXT;
1163 (*CC->API.InitNames)(CC);
1164 }
1165
1166
_mesa_IsList(GLuint list)1167 GLboolean APIENTRY _mesa_IsList( GLuint list )
1168 {
1169 GET_CONTEXT;
1170 return (*CC->API.IsList)(CC, list);
1171 }
1172
1173
_mesa_IsTexture(GLuint texture)1174 GLboolean APIENTRY _mesa_IsTexture( GLuint texture )
1175 {
1176 GET_CONTEXT;
1177 return (*CC->API.IsTexture)(CC, texture);
1178 }
1179
1180
_mesa_Lightf(GLenum light,GLenum pname,GLfloat param)1181 void APIENTRY _mesa_Lightf( GLenum light, GLenum pname, GLfloat param )
1182 {
1183 GET_CONTEXT;
1184 (*CC->API.Lightfv)( CC, light, pname, ¶m, 1 );
1185 }
1186
1187
1188
_mesa_Lighti(GLenum light,GLenum pname,GLint param)1189 void APIENTRY _mesa_Lighti( GLenum light, GLenum pname, GLint param )
1190 {
1191 GLfloat fparam = (GLfloat) param;
1192 GET_CONTEXT;
1193 (*CC->API.Lightfv)( CC, light, pname, &fparam, 1 );
1194 }
1195
1196
1197
_mesa_Lightfv(GLenum light,GLenum pname,const GLfloat * params)1198 void APIENTRY _mesa_Lightfv( GLenum light, GLenum pname, const GLfloat *params )
1199 {
1200 GET_CONTEXT;
1201 (*CC->API.Lightfv)( CC, light, pname, params, 4 );
1202 }
1203
1204
1205
_mesa_Lightiv(GLenum light,GLenum pname,const GLint * params)1206 void APIENTRY _mesa_Lightiv( GLenum light, GLenum pname, const GLint *params )
1207 {
1208 GLfloat fparam[4];
1209 GET_CONTEXT;
1210
1211 switch (pname) {
1212 case GL_AMBIENT:
1213 case GL_DIFFUSE:
1214 case GL_SPECULAR:
1215 fparam[0] = INT_TO_FLOAT( params[0] );
1216 fparam[1] = INT_TO_FLOAT( params[1] );
1217 fparam[2] = INT_TO_FLOAT( params[2] );
1218 fparam[3] = INT_TO_FLOAT( params[3] );
1219 break;
1220 case GL_POSITION:
1221 fparam[0] = (GLfloat) params[0];
1222 fparam[1] = (GLfloat) params[1];
1223 fparam[2] = (GLfloat) params[2];
1224 fparam[3] = (GLfloat) params[3];
1225 break;
1226 case GL_SPOT_DIRECTION:
1227 fparam[0] = (GLfloat) params[0];
1228 fparam[1] = (GLfloat) params[1];
1229 fparam[2] = (GLfloat) params[2];
1230 break;
1231 case GL_SPOT_EXPONENT:
1232 case GL_SPOT_CUTOFF:
1233 case GL_CONSTANT_ATTENUATION:
1234 case GL_LINEAR_ATTENUATION:
1235 case GL_QUADRATIC_ATTENUATION:
1236 fparam[0] = (GLfloat) params[0];
1237 break;
1238 default:
1239 /* error will be caught later in gl_Lightfv */
1240 ;
1241 }
1242 (*CC->API.Lightfv)( CC, light, pname, fparam, 4 );
1243 }
1244
1245
1246
_mesa_LightModelf(GLenum pname,GLfloat param)1247 void APIENTRY _mesa_LightModelf( GLenum pname, GLfloat param )
1248 {
1249 GET_CONTEXT;
1250 (*CC->API.LightModelfv)( CC, pname, ¶m );
1251 }
1252
1253
_mesa_LightModeli(GLenum pname,GLint param)1254 void APIENTRY _mesa_LightModeli( GLenum pname, GLint param )
1255 {
1256 GLfloat fparam[4];
1257 GET_CONTEXT;
1258 fparam[0] = (GLfloat) param;
1259 (*CC->API.LightModelfv)( CC, pname, fparam );
1260 }
1261
1262
_mesa_LightModelfv(GLenum pname,const GLfloat * params)1263 void APIENTRY _mesa_LightModelfv( GLenum pname, const GLfloat *params )
1264 {
1265 GET_CONTEXT;
1266 (*CC->API.LightModelfv)( CC, pname, params );
1267 }
1268
1269
_mesa_LightModeliv(GLenum pname,const GLint * params)1270 void APIENTRY _mesa_LightModeliv( GLenum pname, const GLint *params )
1271 {
1272 GLfloat fparam[4];
1273 GET_CONTEXT;
1274
1275 switch (pname) {
1276 case GL_LIGHT_MODEL_AMBIENT:
1277 fparam[0] = INT_TO_FLOAT( params[0] );
1278 fparam[1] = INT_TO_FLOAT( params[1] );
1279 fparam[2] = INT_TO_FLOAT( params[2] );
1280 fparam[3] = INT_TO_FLOAT( params[3] );
1281 break;
1282 case GL_LIGHT_MODEL_LOCAL_VIEWER:
1283 case GL_LIGHT_MODEL_TWO_SIDE:
1284 fparam[0] = (GLfloat) params[0];
1285 break;
1286 default:
1287 /* Error will be caught later in gl_LightModelfv */
1288 ;
1289 }
1290 (*CC->API.LightModelfv)( CC, pname, fparam );
1291 }
1292
1293
_mesa_LineWidth(GLfloat width)1294 void APIENTRY _mesa_LineWidth( GLfloat width )
1295 {
1296 GET_CONTEXT;
1297 (*CC->API.LineWidth)(CC, width);
1298 }
1299
1300
_mesa_LineStipple(GLint factor,GLushort pattern)1301 void APIENTRY _mesa_LineStipple( GLint factor, GLushort pattern )
1302 {
1303 GET_CONTEXT;
1304 (*CC->API.LineStipple)(CC, factor, pattern);
1305 }
1306
1307
_mesa_ListBase(GLuint base)1308 void APIENTRY _mesa_ListBase( GLuint base )
1309 {
1310 GET_CONTEXT;
1311 (*CC->API.ListBase)(CC, base);
1312 }
1313
1314
_mesa_LoadIdentity(void)1315 void APIENTRY _mesa_LoadIdentity( void )
1316 {
1317 GET_CONTEXT;
1318 (*CC->API.LoadIdentity)( CC );
1319 }
1320
1321
_mesa_LoadMatrixd(const GLdouble * m)1322 void APIENTRY _mesa_LoadMatrixd( const GLdouble *m )
1323 {
1324 GLfloat fm[16];
1325 GLuint i;
1326 GET_CONTEXT;
1327
1328 for (i=0;i<16;i++) {
1329 fm[i] = (GLfloat) m[i];
1330 }
1331
1332 (*CC->API.LoadMatrixf)( CC, fm );
1333 }
1334
1335
_mesa_LoadMatrixf(const GLfloat * m)1336 void APIENTRY _mesa_LoadMatrixf( const GLfloat *m )
1337 {
1338 GET_CONTEXT;
1339 (*CC->API.LoadMatrixf)( CC, m );
1340 }
1341
1342
_mesa_LoadName(GLuint name)1343 void APIENTRY _mesa_LoadName( GLuint name )
1344 {
1345 GET_CONTEXT;
1346 (*CC->API.LoadName)(CC, name);
1347 }
1348
1349
_mesa_LogicOp(GLenum opcode)1350 void APIENTRY _mesa_LogicOp( GLenum opcode )
1351 {
1352 GET_CONTEXT;
1353 (*CC->API.LogicOp)(CC, opcode);
1354 }
1355
1356
1357
_mesa_Map1d(GLenum target,GLdouble u1,GLdouble u2,GLint stride,GLint order,const GLdouble * points)1358 void APIENTRY _mesa_Map1d( GLenum target, GLdouble u1, GLdouble u2, GLint stride,
1359 GLint order, const GLdouble *points )
1360 {
1361 GLfloat *pnts;
1362 GLboolean retain;
1363 GET_CONTEXT;
1364
1365 pnts = gl_copy_map_points1d( target, stride, order, points );
1366 retain = CC->CompileFlag;
1367 (*CC->API.Map1f)( CC, target, u1, u2, stride, order, pnts, retain );
1368 }
1369
1370
_mesa_Map1f(GLenum target,GLfloat u1,GLfloat u2,GLint stride,GLint order,const GLfloat * points)1371 void APIENTRY _mesa_Map1f( GLenum target, GLfloat u1, GLfloat u2, GLint stride,
1372 GLint order, const GLfloat *points )
1373 {
1374 GLfloat *pnts;
1375 GLboolean retain;
1376 GET_CONTEXT;
1377
1378 pnts = gl_copy_map_points1f( target, stride, order, points );
1379 retain = CC->CompileFlag;
1380 (*CC->API.Map1f)( CC, target, u1, u2, stride, order, pnts, retain );
1381 }
1382
1383
_mesa_Map2d(GLenum target,GLdouble u1,GLdouble u2,GLint ustride,GLint uorder,GLdouble v1,GLdouble v2,GLint vstride,GLint vorder,const GLdouble * points)1384 void APIENTRY _mesa_Map2d( GLenum target,
1385 GLdouble u1, GLdouble u2, GLint ustride, GLint uorder,
1386 GLdouble v1, GLdouble v2, GLint vstride, GLint vorder,
1387 const GLdouble *points )
1388 {
1389 GLfloat *pnts;
1390 GLboolean retain;
1391 GET_CONTEXT;
1392
1393 pnts = gl_copy_map_points2d( target, ustride, uorder,
1394 vstride, vorder, points );
1395 retain = CC->CompileFlag;
1396 (*CC->API.Map2f)( CC, target, u1, u2, ustride, uorder,
1397 v1, v2, vstride, vorder, pnts, retain );
1398 }
1399
1400
_mesa_Map2f(GLenum target,GLfloat u1,GLfloat u2,GLint ustride,GLint uorder,GLfloat v1,GLfloat v2,GLint vstride,GLint vorder,const GLfloat * points)1401 void APIENTRY _mesa_Map2f( GLenum target,
1402 GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
1403 GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,
1404 const GLfloat *points )
1405 {
1406 GLfloat *pnts;
1407 GLboolean retain;
1408 GET_CONTEXT;
1409
1410 pnts = gl_copy_map_points2f( target, ustride, uorder,
1411 vstride, vorder, points );
1412 retain = CC->CompileFlag;
1413 (*CC->API.Map2f)( CC, target, u1, u2, ustride, uorder,
1414 v1, v2, vstride, vorder, pnts, retain );
1415 }
1416
1417
_mesa_MapGrid1d(GLint un,GLdouble u1,GLdouble u2)1418 void APIENTRY _mesa_MapGrid1d( GLint un, GLdouble u1, GLdouble u2 )
1419 {
1420 GET_CONTEXT;
1421 (*CC->API.MapGrid1f)( CC, un, (GLfloat) u1, (GLfloat) u2 );
1422 }
1423
1424
_mesa_MapGrid1f(GLint un,GLfloat u1,GLfloat u2)1425 void APIENTRY _mesa_MapGrid1f( GLint un, GLfloat u1, GLfloat u2 )
1426 {
1427 GET_CONTEXT;
1428 (*CC->API.MapGrid1f)( CC, un, u1, u2 );
1429 }
1430
1431
_mesa_MapGrid2d(GLint un,GLdouble u1,GLdouble u2,GLint vn,GLdouble v1,GLdouble v2)1432 void APIENTRY _mesa_MapGrid2d( GLint un, GLdouble u1, GLdouble u2,
1433 GLint vn, GLdouble v1, GLdouble v2 )
1434 {
1435 GET_CONTEXT;
1436 (*CC->API.MapGrid2f)( CC, un, (GLfloat) u1, (GLfloat) u2,
1437 vn, (GLfloat) v1, (GLfloat) v2 );
1438 }
1439
1440
_mesa_MapGrid2f(GLint un,GLfloat u1,GLfloat u2,GLint vn,GLfloat v1,GLfloat v2)1441 void APIENTRY _mesa_MapGrid2f( GLint un, GLfloat u1, GLfloat u2,
1442 GLint vn, GLfloat v1, GLfloat v2 )
1443 {
1444 GET_CONTEXT;
1445 (*CC->API.MapGrid2f)( CC, un, u1, u2, vn, v1, v2 );
1446 }
1447
1448
_mesa_Materialf(GLenum face,GLenum pname,GLfloat param)1449 void APIENTRY _mesa_Materialf( GLenum face, GLenum pname, GLfloat param )
1450 {
1451 GET_CONTEXT;
1452 (*CC->API.Materialfv)( CC, face, pname, ¶m );
1453 }
1454
1455
1456
_mesa_Materiali(GLenum face,GLenum pname,GLint param)1457 void APIENTRY _mesa_Materiali( GLenum face, GLenum pname, GLint param )
1458 {
1459 GLfloat fparam[4];
1460 GET_CONTEXT;
1461 fparam[0] = (GLfloat) param;
1462 (*CC->API.Materialfv)( CC, face, pname, fparam );
1463 }
1464
1465
_mesa_Materialfv(GLenum face,GLenum pname,const GLfloat * params)1466 void APIENTRY _mesa_Materialfv( GLenum face, GLenum pname, const GLfloat *params )
1467 {
1468 GET_CONTEXT;
1469 (*CC->API.Materialfv)( CC, face, pname, params );
1470 }
1471
1472
_mesa_Materialiv(GLenum face,GLenum pname,const GLint * params)1473 void APIENTRY _mesa_Materialiv( GLenum face, GLenum pname, const GLint *params )
1474 {
1475 GLfloat fparam[4];
1476 GET_CONTEXT;
1477 switch (pname) {
1478 case GL_AMBIENT:
1479 case GL_DIFFUSE:
1480 case GL_SPECULAR:
1481 case GL_EMISSION:
1482 case GL_AMBIENT_AND_DIFFUSE:
1483 fparam[0] = INT_TO_FLOAT( params[0] );
1484 fparam[1] = INT_TO_FLOAT( params[1] );
1485 fparam[2] = INT_TO_FLOAT( params[2] );
1486 fparam[3] = INT_TO_FLOAT( params[3] );
1487 break;
1488 case GL_SHININESS:
1489 fparam[0] = (GLfloat) params[0];
1490 break;
1491 case GL_COLOR_INDEXES:
1492 fparam[0] = (GLfloat) params[0];
1493 fparam[1] = (GLfloat) params[1];
1494 fparam[2] = (GLfloat) params[2];
1495 break;
1496 default:
1497 /* Error will be caught later in gl_Materialfv */
1498 ;
1499 }
1500 (*CC->API.Materialfv)( CC, face, pname, fparam );
1501 }
1502
1503
_mesa_MatrixMode(GLenum mode)1504 void APIENTRY _mesa_MatrixMode( GLenum mode )
1505 {
1506 GET_CONTEXT;
1507 (*CC->API.MatrixMode)( CC, mode );
1508 }
1509
1510
_mesa_MultMatrixd(const GLdouble * m)1511 void APIENTRY _mesa_MultMatrixd( const GLdouble *m )
1512 {
1513 GLfloat fm[16];
1514 GLuint i;
1515 GET_CONTEXT;
1516
1517 for (i=0;i<16;i++) {
1518 fm[i] = (GLfloat) m[i];
1519 }
1520
1521 (*CC->API.MultMatrixf)( CC, fm );
1522 }
1523
1524
_mesa_MultMatrixf(const GLfloat * m)1525 void APIENTRY _mesa_MultMatrixf( const GLfloat *m )
1526 {
1527 GET_CONTEXT;
1528 (*CC->API.MultMatrixf)( CC, m );
1529 }
1530
1531
_mesa_NewList(GLuint list,GLenum mode)1532 void APIENTRY _mesa_NewList( GLuint list, GLenum mode )
1533 {
1534 GET_CONTEXT;
1535 (*CC->API.NewList)(CC, list, mode);
1536 }
1537
_mesa_Normal3b(GLbyte nx,GLbyte ny,GLbyte nz)1538 void APIENTRY _mesa_Normal3b( GLbyte nx, GLbyte ny, GLbyte nz )
1539 {
1540 GET_CONTEXT;
1541 (*CC->API.Normal3f)( CC, BYTE_TO_FLOAT(nx),
1542 BYTE_TO_FLOAT(ny), BYTE_TO_FLOAT(nz) );
1543 }
1544
1545
_mesa_Normal3d(GLdouble nx,GLdouble ny,GLdouble nz)1546 void APIENTRY _mesa_Normal3d( GLdouble nx, GLdouble ny, GLdouble nz )
1547 {
1548 GLfloat fx, fy, fz;
1549 GET_CONTEXT;
1550 if (ABSD(nx)<0.00001) fx = 0.0F; else fx = nx;
1551 if (ABSD(ny)<0.00001) fy = 0.0F; else fy = ny;
1552 if (ABSD(nz)<0.00001) fz = 0.0F; else fz = nz;
1553 (*CC->API.Normal3f)( CC, fx, fy, fz );
1554 }
1555
1556
_mesa_Normal3f(GLfloat nx,GLfloat ny,GLfloat nz)1557 void APIENTRY _mesa_Normal3f( GLfloat nx, GLfloat ny, GLfloat nz )
1558 {
1559 GET_CONTEXT;
1560 #ifdef SHORTCUT
1561 if (CC->CompileFlag) {
1562 (*CC->Save.Normal3f)( CC, nx, ny, nz );
1563 }
1564 else {
1565 /* Execute */
1566 CC->Current.Normal[0] = nx;
1567 CC->Current.Normal[1] = ny;
1568 CC->Current.Normal[2] = nz;
1569 CC->VB->MonoNormal = GL_FALSE;
1570 }
1571 #else
1572 (*CC->API.Normal3f)( CC, nx, ny, nz );
1573 #endif
1574 }
1575
1576
_mesa_Normal3i(GLint nx,GLint ny,GLint nz)1577 void APIENTRY _mesa_Normal3i( GLint nx, GLint ny, GLint nz )
1578 {
1579 GET_CONTEXT;
1580 (*CC->API.Normal3f)( CC, INT_TO_FLOAT(nx),
1581 INT_TO_FLOAT(ny), INT_TO_FLOAT(nz) );
1582 }
1583
1584
_mesa_Normal3s(GLshort nx,GLshort ny,GLshort nz)1585 void APIENTRY _mesa_Normal3s( GLshort nx, GLshort ny, GLshort nz )
1586 {
1587 GET_CONTEXT;
1588 (*CC->API.Normal3f)( CC, SHORT_TO_FLOAT(nx),
1589 SHORT_TO_FLOAT(ny), SHORT_TO_FLOAT(nz) );
1590 }
1591
1592
_mesa_Normal3bv(const GLbyte * v)1593 void APIENTRY _mesa_Normal3bv( const GLbyte *v )
1594 {
1595 GET_CONTEXT;
1596 (*CC->API.Normal3f)( CC, BYTE_TO_FLOAT(v[0]),
1597 BYTE_TO_FLOAT(v[1]), BYTE_TO_FLOAT(v[2]) );
1598 }
1599
1600
_mesa_Normal3dv(const GLdouble * v)1601 void APIENTRY _mesa_Normal3dv( const GLdouble *v )
1602 {
1603 GLfloat fx, fy, fz;
1604 GET_CONTEXT;
1605 if (ABSD(v[0])<0.00001) fx = 0.0F; else fx = v[0];
1606 if (ABSD(v[1])<0.00001) fy = 0.0F; else fy = v[1];
1607 if (ABSD(v[2])<0.00001) fz = 0.0F; else fz = v[2];
1608 (*CC->API.Normal3f)( CC, fx, fy, fz );
1609 }
1610
1611
_mesa_Normal3fv(const GLfloat * v)1612 void APIENTRY _mesa_Normal3fv( const GLfloat *v )
1613 {
1614 GET_CONTEXT;
1615 #ifdef SHORTCUT
1616 if (CC->CompileFlag) {
1617 (*CC->Save.Normal3fv)( CC, v );
1618 }
1619 else {
1620 /* Execute */
1621 GLfloat *n = CC->Current.Normal;
1622 n[0] = v[0];
1623 n[1] = v[1];
1624 n[2] = v[2];
1625 CC->VB->MonoNormal = GL_FALSE;
1626 }
1627 #else
1628 (*CC->API.Normal3fv)( CC, v );
1629 #endif
1630 }
1631
1632
_mesa_Normal3iv(const GLint * v)1633 void APIENTRY _mesa_Normal3iv( const GLint *v )
1634 {
1635 GET_CONTEXT;
1636 (*CC->API.Normal3f)( CC, INT_TO_FLOAT(v[0]),
1637 INT_TO_FLOAT(v[1]), INT_TO_FLOAT(v[2]) );
1638 }
1639
1640
_mesa_Normal3sv(const GLshort * v)1641 void APIENTRY _mesa_Normal3sv( const GLshort *v )
1642 {
1643 GET_CONTEXT;
1644 (*CC->API.Normal3f)( CC, SHORT_TO_FLOAT(v[0]),
1645 SHORT_TO_FLOAT(v[1]), SHORT_TO_FLOAT(v[2]) );
1646 }
1647
1648
_mesa_NormalPointer(GLenum type,GLsizei stride,const GLvoid * ptr)1649 void APIENTRY _mesa_NormalPointer( GLenum type, GLsizei stride, const GLvoid *ptr )
1650 {
1651 GET_CONTEXT;
1652 (*CC->API.NormalPointer)(CC, type, stride, ptr);
1653 }
_mesa_Ortho(GLdouble left,GLdouble right,GLdouble bottom,GLdouble top,GLdouble nearval,GLdouble farval)1654 void APIENTRY _mesa_Ortho( GLdouble left, GLdouble right,
1655 GLdouble bottom, GLdouble top,
1656 GLdouble nearval, GLdouble farval )
1657 {
1658 GET_CONTEXT;
1659 (*CC->API.Ortho)(CC, left, right, bottom, top, nearval, farval);
1660 }
1661
1662
_mesa_PassThrough(GLfloat token)1663 void APIENTRY _mesa_PassThrough( GLfloat token )
1664 {
1665 GET_CONTEXT;
1666 (*CC->API.PassThrough)(CC, token);
1667 }
1668
1669
_mesa_PixelMapfv(GLenum map,GLint mapsize,const GLfloat * values)1670 void APIENTRY _mesa_PixelMapfv( GLenum map, GLint mapsize, const GLfloat *values )
1671 {
1672 GET_CONTEXT;
1673 (*CC->API.PixelMapfv)( CC, map, mapsize, values );
1674 }
1675
1676
_mesa_PixelMapuiv(GLenum map,GLint mapsize,const GLuint * values)1677 void APIENTRY _mesa_PixelMapuiv( GLenum map, GLint mapsize, const GLuint *values )
1678 {
1679 GLfloat fvalues[MAX_PIXEL_MAP_TABLE];
1680 GLuint i;
1681 GET_CONTEXT;
1682
1683 if (map==GL_PIXEL_MAP_I_TO_I || map==GL_PIXEL_MAP_S_TO_S) {
1684 for (i=0;i<mapsize;i++) {
1685 fvalues[i] = (GLfloat) values[i];
1686 }
1687 }
1688 else {
1689 for (i=0;i<mapsize;i++) {
1690 fvalues[i] = UINT_TO_FLOAT( values[i] );
1691 }
1692 }
1693 (*CC->API.PixelMapfv)( CC, map, mapsize, fvalues );
1694 }
1695
1696
1697
_mesa_PixelMapusv(GLenum map,GLint mapsize,const GLushort * values)1698 void APIENTRY _mesa_PixelMapusv( GLenum map, GLint mapsize, const GLushort *values )
1699 {
1700 GLfloat fvalues[MAX_PIXEL_MAP_TABLE];
1701 GLuint i;
1702 GET_CONTEXT;
1703
1704 if (map==GL_PIXEL_MAP_I_TO_I || map==GL_PIXEL_MAP_S_TO_S) {
1705 for (i=0;i<mapsize;i++) {
1706 fvalues[i] = (GLfloat) values[i];
1707 }
1708 }
1709 else {
1710 for (i=0;i<mapsize;i++) {
1711 fvalues[i] = USHORT_TO_FLOAT( values[i] );
1712 }
1713 }
1714 (*CC->API.PixelMapfv)( CC, map, mapsize, fvalues );
1715 }
1716
1717
_mesa_PixelStoref(GLenum pname,GLfloat param)1718 void APIENTRY _mesa_PixelStoref( GLenum pname, GLfloat param )
1719 {
1720 GET_CONTEXT;
1721 (*CC->API.PixelStorei)( CC, pname, (GLint) param );
1722 }
1723
1724
_mesa_PixelStorei(GLenum pname,GLint param)1725 void APIENTRY _mesa_PixelStorei( GLenum pname, GLint param )
1726 {
1727 GET_CONTEXT;
1728 (*CC->API.PixelStorei)( CC, pname, param );
1729 }
1730
1731
_mesa_PixelTransferf(GLenum pname,GLfloat param)1732 void APIENTRY _mesa_PixelTransferf( GLenum pname, GLfloat param )
1733 {
1734 GET_CONTEXT;
1735 (*CC->API.PixelTransferf)(CC, pname, param);
1736 }
1737
1738
_mesa_PixelTransferi(GLenum pname,GLint param)1739 void APIENTRY _mesa_PixelTransferi( GLenum pname, GLint param )
1740 {
1741 GET_CONTEXT;
1742 (*CC->API.PixelTransferf)(CC, pname, (GLfloat) param);
1743 }
1744
1745
_mesa_PixelZoom(GLfloat xfactor,GLfloat yfactor)1746 void APIENTRY _mesa_PixelZoom( GLfloat xfactor, GLfloat yfactor )
1747 {
1748 GET_CONTEXT;
1749 (*CC->API.PixelZoom)(CC, xfactor, yfactor);
1750 }
1751
1752
_mesa_PointSize(GLfloat size)1753 void APIENTRY _mesa_PointSize( GLfloat size )
1754 {
1755 GET_CONTEXT;
1756 (*CC->API.PointSize)(CC, size);
1757 }
1758
1759
_mesa_PolygonMode(GLenum face,GLenum mode)1760 void APIENTRY _mesa_PolygonMode( GLenum face, GLenum mode )
1761 {
1762 GET_CONTEXT;
1763 (*CC->API.PolygonMode)(CC, face, mode);
1764 }
1765
1766
_mesa_PolygonOffset(GLfloat factor,GLfloat units)1767 void APIENTRY _mesa_PolygonOffset( GLfloat factor, GLfloat units )
1768 {
1769 GET_CONTEXT;
1770 (*CC->API.PolygonOffset)( CC, factor, units );
1771 }
1772
_mesa_PolygonStipple(const GLubyte * mask)1773 void APIENTRY _mesa_PolygonStipple( const GLubyte *mask )
1774 {
1775 GET_CONTEXT;
1776 (*CC->API.PolygonStipple)(CC, mask);
1777 }
1778
1779
_mesa_PopAttrib(void)1780 void APIENTRY _mesa_PopAttrib( void )
1781 {
1782 GET_CONTEXT;
1783 (*CC->API.PopAttrib)(CC);
1784 }
1785
1786
_mesa_PopClientAttrib(void)1787 void APIENTRY _mesa_PopClientAttrib( void )
1788 {
1789 GET_CONTEXT;
1790 (*CC->API.PopClientAttrib)(CC);
1791 }
1792
1793
_mesa_PopMatrix(void)1794 void APIENTRY _mesa_PopMatrix( void )
1795 {
1796 GET_CONTEXT;
1797 (*CC->API.PopMatrix)( CC );
1798 }
1799
1800
_mesa_PopName(void)1801 void APIENTRY _mesa_PopName( void )
1802 {
1803 GET_CONTEXT;
1804 (*CC->API.PopName)(CC);
1805 }
1806
1807
_mesa_PrioritizeTextures(GLsizei n,const GLuint * textures,const GLclampf * priorities)1808 void APIENTRY _mesa_PrioritizeTextures( GLsizei n, const GLuint *textures,
1809 const GLclampf *priorities )
1810 {
1811 GET_CONTEXT;
1812 (*CC->API.PrioritizeTextures)(CC, n, textures, priorities);
1813 }
1814
1815
_mesa_PushMatrix(void)1816 void APIENTRY _mesa_PushMatrix( void )
1817 {
1818 GET_CONTEXT;
1819 (*CC->API.PushMatrix)( CC );
1820 }
1821
1822
_mesa_RasterPos2d(GLdouble x,GLdouble y)1823 void APIENTRY _mesa_RasterPos2d( GLdouble x, GLdouble y )
1824 {
1825 GET_CONTEXT;
1826 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, 0.0F, 1.0F );
1827 }
1828
1829
_mesa_RasterPos2f(GLfloat x,GLfloat y)1830 void APIENTRY _mesa_RasterPos2f( GLfloat x, GLfloat y )
1831 {
1832 GET_CONTEXT;
1833 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, 0.0F, 1.0F );
1834 }
1835
1836
_mesa_RasterPos2i(GLint x,GLint y)1837 void APIENTRY _mesa_RasterPos2i( GLint x, GLint y )
1838 {
1839 GET_CONTEXT;
1840 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, 0.0F, 1.0F );
1841 }
1842
1843
_mesa_RasterPos2s(GLshort x,GLshort y)1844 void APIENTRY _mesa_RasterPos2s( GLshort x, GLshort y )
1845 {
1846 GET_CONTEXT;
1847 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, 0.0F, 1.0F );
1848 }
1849
1850
_mesa_RasterPos3d(GLdouble x,GLdouble y,GLdouble z)1851 void APIENTRY _mesa_RasterPos3d( GLdouble x, GLdouble y, GLdouble z )
1852 {
1853 GET_CONTEXT;
1854 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z, 1.0F );
1855 }
1856
1857
_mesa_RasterPos3f(GLfloat x,GLfloat y,GLfloat z)1858 void APIENTRY _mesa_RasterPos3f( GLfloat x, GLfloat y, GLfloat z )
1859 {
1860 GET_CONTEXT;
1861 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z, 1.0F );
1862 }
1863
1864
_mesa_RasterPos3i(GLint x,GLint y,GLint z)1865 void APIENTRY _mesa_RasterPos3i( GLint x, GLint y, GLint z )
1866 {
1867 GET_CONTEXT;
1868 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z, 1.0F );
1869 }
1870
1871
_mesa_RasterPos3s(GLshort x,GLshort y,GLshort z)1872 void APIENTRY _mesa_RasterPos3s( GLshort x, GLshort y, GLshort z )
1873 {
1874 GET_CONTEXT;
1875 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z, 1.0F );
1876 }
1877
1878
_mesa_RasterPos4d(GLdouble x,GLdouble y,GLdouble z,GLdouble w)1879 void APIENTRY _mesa_RasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w )
1880 {
1881 GET_CONTEXT;
1882 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y,
1883 (GLfloat) z, (GLfloat) w );
1884 }
1885
1886
_mesa_RasterPos4f(GLfloat x,GLfloat y,GLfloat z,GLfloat w)1887 void APIENTRY _mesa_RasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w )
1888 {
1889 GET_CONTEXT;
1890 (*CC->API.RasterPos4f)( CC, x, y, z, w );
1891 }
1892
1893
_mesa_RasterPos4i(GLint x,GLint y,GLint z,GLint w)1894 void APIENTRY _mesa_RasterPos4i( GLint x, GLint y, GLint z, GLint w )
1895 {
1896 GET_CONTEXT;
1897 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y,
1898 (GLfloat) z, (GLfloat) w );
1899 }
1900
1901
_mesa_RasterPos4s(GLshort x,GLshort y,GLshort z,GLshort w)1902 void APIENTRY _mesa_RasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w )
1903 {
1904 GET_CONTEXT;
1905 (*CC->API.RasterPos4f)( CC, (GLfloat) x, (GLfloat) y,
1906 (GLfloat) z, (GLfloat) w );
1907 }
1908
1909
_mesa_RasterPos2dv(const GLdouble * v)1910 void APIENTRY _mesa_RasterPos2dv( const GLdouble *v )
1911 {
1912 GET_CONTEXT;
1913 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1], 0.0F, 1.0F );
1914 }
1915
1916
_mesa_RasterPos2fv(const GLfloat * v)1917 void APIENTRY _mesa_RasterPos2fv( const GLfloat *v )
1918 {
1919 GET_CONTEXT;
1920 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1], 0.0F, 1.0F );
1921 }
1922
1923
_mesa_RasterPos2iv(const GLint * v)1924 void APIENTRY _mesa_RasterPos2iv( const GLint *v )
1925 {
1926 GET_CONTEXT;
1927 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1], 0.0F, 1.0F );
1928 }
1929
1930
_mesa_RasterPos2sv(const GLshort * v)1931 void APIENTRY _mesa_RasterPos2sv( const GLshort *v )
1932 {
1933 GET_CONTEXT;
1934 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1], 0.0F, 1.0F );
1935 }
1936
1937
1938 /*** 3 element vector ***/
1939
_mesa_RasterPos3dv(const GLdouble * v)1940 void APIENTRY _mesa_RasterPos3dv( const GLdouble *v )
1941 {
1942 GET_CONTEXT;
1943 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
1944 (GLfloat) v[2], 1.0F );
1945 }
1946
1947
_mesa_RasterPos3fv(const GLfloat * v)1948 void APIENTRY _mesa_RasterPos3fv( const GLfloat *v )
1949 {
1950 GET_CONTEXT;
1951 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
1952 (GLfloat) v[2], 1.0F );
1953 }
1954
1955
_mesa_RasterPos3iv(const GLint * v)1956 void APIENTRY _mesa_RasterPos3iv( const GLint *v )
1957 {
1958 GET_CONTEXT;
1959 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
1960 (GLfloat) v[2], 1.0F );
1961 }
1962
1963
_mesa_RasterPos3sv(const GLshort * v)1964 void APIENTRY _mesa_RasterPos3sv( const GLshort *v )
1965 {
1966 GET_CONTEXT;
1967 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
1968 (GLfloat) v[2], 1.0F );
1969 }
1970
1971
_mesa_RasterPos4dv(const GLdouble * v)1972 void APIENTRY _mesa_RasterPos4dv( const GLdouble *v )
1973 {
1974 GET_CONTEXT;
1975 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
1976 (GLfloat) v[2], (GLfloat) v[3] );
1977 }
1978
1979
_mesa_RasterPos4fv(const GLfloat * v)1980 void APIENTRY _mesa_RasterPos4fv( const GLfloat *v )
1981 {
1982 GET_CONTEXT;
1983 (*CC->API.RasterPos4f)( CC, v[0], v[1], v[2], v[3] );
1984 }
1985
1986
_mesa_RasterPos4iv(const GLint * v)1987 void APIENTRY _mesa_RasterPos4iv( const GLint *v )
1988 {
1989 GET_CONTEXT;
1990 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
1991 (GLfloat) v[2], (GLfloat) v[3] );
1992 }
1993
1994
_mesa_RasterPos4sv(const GLshort * v)1995 void APIENTRY _mesa_RasterPos4sv( const GLshort *v )
1996 {
1997 GET_CONTEXT;
1998 (*CC->API.RasterPos4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
1999 (GLfloat) v[2], (GLfloat) v[3] );
2000 }
2001
2002
_mesa_ReadBuffer(GLenum mode)2003 void APIENTRY _mesa_ReadBuffer( GLenum mode )
2004 {
2005 GET_CONTEXT;
2006 (*CC->API.ReadBuffer)( CC, mode );
2007 }
2008
2009
_mesa_ReadPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLvoid * pixels)2010 void APIENTRY _mesa_ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height,
2011 GLenum format, GLenum type, GLvoid *pixels )
2012 {
2013 GET_CONTEXT;
2014 (*CC->API.ReadPixels)( CC, x, y, width, height, format, type, pixels );
2015 }
2016
2017
_mesa_Rectd(GLdouble x1,GLdouble y1,GLdouble x2,GLdouble y2)2018 void APIENTRY _mesa_Rectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 )
2019 {
2020 GET_CONTEXT;
2021 (*CC->API.Rectf)( CC, (GLfloat) x1, (GLfloat) y1,
2022 (GLfloat) x2, (GLfloat) y2 );
2023 }
2024
2025
_mesa_Rectf(GLfloat x1,GLfloat y1,GLfloat x2,GLfloat y2)2026 void APIENTRY _mesa_Rectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 )
2027 {
2028 GET_CONTEXT;
2029 (*CC->API.Rectf)( CC, x1, y1, x2, y2 );
2030 }
2031
2032
_mesa_Recti(GLint x1,GLint y1,GLint x2,GLint y2)2033 void APIENTRY _mesa_Recti( GLint x1, GLint y1, GLint x2, GLint y2 )
2034 {
2035 GET_CONTEXT;
2036 (*CC->API.Rectf)( CC, (GLfloat) x1, (GLfloat) y1,
2037 (GLfloat) x2, (GLfloat) y2 );
2038 }
2039
2040
_mesa_Rects(GLshort x1,GLshort y1,GLshort x2,GLshort y2)2041 void APIENTRY _mesa_Rects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 )
2042 {
2043 GET_CONTEXT;
2044 (*CC->API.Rectf)( CC, (GLfloat) x1, (GLfloat) y1,
2045 (GLfloat) x2, (GLfloat) y2 );
2046 }
2047
2048
_mesa_Rectdv(const GLdouble * v1,const GLdouble * v2)2049 void APIENTRY _mesa_Rectdv( const GLdouble *v1, const GLdouble *v2 )
2050 {
2051 GET_CONTEXT;
2052 (*CC->API.Rectf)(CC, (GLfloat) v1[0], (GLfloat) v1[1],
2053 (GLfloat) v2[0], (GLfloat) v2[1]);
2054 }
2055
2056
_mesa_Rectfv(const GLfloat * v1,const GLfloat * v2)2057 void APIENTRY _mesa_Rectfv( const GLfloat *v1, const GLfloat *v2 )
2058 {
2059 GET_CONTEXT;
2060 (*CC->API.Rectf)(CC, v1[0], v1[1], v2[0], v2[1]);
2061 }
2062
2063
_mesa_Rectiv(const GLint * v1,const GLint * v2)2064 void APIENTRY _mesa_Rectiv( const GLint *v1, const GLint *v2 )
2065 {
2066 GET_CONTEXT;
2067 (*CC->API.Rectf)( CC, (GLfloat) v1[0], (GLfloat) v1[1],
2068 (GLfloat) v2[0], (GLfloat) v2[1] );
2069 }
2070
2071
_mesa_Rectsv(const GLshort * v1,const GLshort * v2)2072 void APIENTRY _mesa_Rectsv( const GLshort *v1, const GLshort *v2 )
2073 {
2074 GET_CONTEXT;
2075 (*CC->API.Rectf)(CC, (GLfloat) v1[0], (GLfloat) v1[1],
2076 (GLfloat) v2[0], (GLfloat) v2[1]);
2077 }
2078
2079
_mesa_Scissor(GLint x,GLint y,GLsizei width,GLsizei height)2080 void APIENTRY _mesa_Scissor( GLint x, GLint y, GLsizei width, GLsizei height)
2081 {
2082 GET_CONTEXT;
2083 (*CC->API.Scissor)(CC, x, y, width, height);
2084 }
2085
2086
_mesa_IsEnabled(GLenum cap)2087 GLboolean APIENTRY _mesa_IsEnabled( GLenum cap )
2088 {
2089 GET_CONTEXT;
2090 return (*CC->API.IsEnabled)( CC, cap );
2091 }
2092
2093
2094
_mesa_PushAttrib(GLbitfield mask)2095 void APIENTRY _mesa_PushAttrib( GLbitfield mask )
2096 {
2097 GET_CONTEXT;
2098 (*CC->API.PushAttrib)(CC, mask);
2099 }
2100
2101
_mesa_PushClientAttrib(GLbitfield mask)2102 void APIENTRY _mesa_PushClientAttrib( GLbitfield mask )
2103 {
2104 GET_CONTEXT;
2105 (*CC->API.PushClientAttrib)(CC, mask);
2106 }
2107
2108
_mesa_PushName(GLuint name)2109 void APIENTRY _mesa_PushName( GLuint name )
2110 {
2111 GET_CONTEXT;
2112 (*CC->API.PushName)(CC, name);
2113 }
2114
2115
_mesa_RenderMode(GLenum mode)2116 GLint APIENTRY _mesa_RenderMode( GLenum mode )
2117 {
2118 GET_CONTEXT;
2119 return (*CC->API.RenderMode)(CC, mode);
2120 }
2121
2122
_mesa_Rotated(GLdouble angle,GLdouble x,GLdouble y,GLdouble z)2123 void APIENTRY _mesa_Rotated( GLdouble angle, GLdouble x, GLdouble y, GLdouble z )
2124 {
2125 GET_CONTEXT;
2126 (*CC->API.Rotatef)( CC, (GLfloat) angle,
2127 (GLfloat) x, (GLfloat) y, (GLfloat) z );
2128 }
2129
2130
_mesa_Rotatef(GLfloat angle,GLfloat x,GLfloat y,GLfloat z)2131 void APIENTRY _mesa_Rotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z )
2132 {
2133 GET_CONTEXT;
2134 (*CC->API.Rotatef)( CC, angle, x, y, z );
2135 }
2136
2137
_mesa_SelectBuffer(GLsizei size,GLuint * buffer)2138 void APIENTRY _mesa_SelectBuffer( GLsizei size, GLuint *buffer )
2139 {
2140 GET_CONTEXT;
2141 (*CC->API.SelectBuffer)(CC, size, buffer);
2142 }
2143
2144
_mesa_Scaled(GLdouble x,GLdouble y,GLdouble z)2145 void APIENTRY _mesa_Scaled( GLdouble x, GLdouble y, GLdouble z )
2146 {
2147 GET_CONTEXT;
2148 (*CC->API.Scalef)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z );
2149 }
2150
2151
_mesa_Scalef(GLfloat x,GLfloat y,GLfloat z)2152 void APIENTRY _mesa_Scalef( GLfloat x, GLfloat y, GLfloat z )
2153 {
2154 GET_CONTEXT;
2155 (*CC->API.Scalef)( CC, x, y, z );
2156 }
2157
2158
_mesa_ShadeModel(GLenum mode)2159 void APIENTRY _mesa_ShadeModel( GLenum mode )
2160 {
2161 GET_CONTEXT;
2162 (*CC->API.ShadeModel)(CC, mode);
2163 }
2164
2165
_mesa_StencilFunc(GLenum func,GLint ref,GLuint mask)2166 void APIENTRY _mesa_StencilFunc( GLenum func, GLint ref, GLuint mask )
2167 {
2168 GET_CONTEXT;
2169 (*CC->API.StencilFunc)(CC, func, ref, mask);
2170 }
2171
2172
_mesa_StencilMask(GLuint mask)2173 void APIENTRY _mesa_StencilMask( GLuint mask )
2174 {
2175 GET_CONTEXT;
2176 (*CC->API.StencilMask)(CC, mask);
2177 }
2178
2179
_mesa_StencilOp(GLenum fail,GLenum zfail,GLenum zpass)2180 void APIENTRY _mesa_StencilOp( GLenum fail, GLenum zfail, GLenum zpass )
2181 {
2182 GET_CONTEXT;
2183 (*CC->API.StencilOp)(CC, fail, zfail, zpass);
2184 }
2185
2186
_mesa_TexCoord1d(GLdouble s)2187 void APIENTRY _mesa_TexCoord1d( GLdouble s )
2188 {
2189 GET_CONTEXT;
2190 (*CC->API.TexCoord4f)( CC, (GLfloat) s, 0.0, 0.0, 1.0 );
2191 }
2192
2193
_mesa_TexCoord1f(GLfloat s)2194 void APIENTRY _mesa_TexCoord1f( GLfloat s )
2195 {
2196 GET_CONTEXT;
2197 (*CC->API.TexCoord4f)( CC, s, 0.0, 0.0, 1.0 );
2198 }
2199
2200
_mesa_TexCoord1i(GLint s)2201 void APIENTRY _mesa_TexCoord1i( GLint s )
2202 {
2203 GET_CONTEXT;
2204 (*CC->API.TexCoord4f)( CC, (GLfloat) s, 0.0, 0.0, 1.0 );
2205 }
2206
2207
_mesa_TexCoord1s(GLshort s)2208 void APIENTRY _mesa_TexCoord1s( GLshort s )
2209 {
2210 GET_CONTEXT;
2211 (*CC->API.TexCoord4f)( CC, (GLfloat) s, 0.0, 0.0, 1.0 );
2212 }
2213
2214
_mesa_TexCoord2d(GLdouble s,GLdouble t)2215 void APIENTRY _mesa_TexCoord2d( GLdouble s, GLdouble t )
2216 {
2217 GET_CONTEXT;
2218 (*CC->API.TexCoord2f)( CC, (GLfloat) s, (GLfloat) t );
2219 }
2220
2221
_mesa_TexCoord2f(GLfloat s,GLfloat t)2222 void APIENTRY _mesa_TexCoord2f( GLfloat s, GLfloat t )
2223 {
2224 GET_CONTEXT;
2225 (*CC->API.TexCoord2f)( CC, s, t );
2226 }
2227
2228
_mesa_TexCoord2i(GLint s,GLint t)2229 void APIENTRY _mesa_TexCoord2i( GLint s, GLint t )
2230 {
2231 GET_CONTEXT;
2232 (*CC->API.TexCoord2f)( CC, (GLfloat) s, (GLfloat) t );
2233 }
2234
2235
_mesa_TexCoord2s(GLshort s,GLshort t)2236 void APIENTRY _mesa_TexCoord2s( GLshort s, GLshort t )
2237 {
2238 GET_CONTEXT;
2239 (*CC->API.TexCoord2f)( CC, (GLfloat) s, (GLfloat) t );
2240 }
2241
2242
_mesa_TexCoord3d(GLdouble s,GLdouble t,GLdouble r)2243 void APIENTRY _mesa_TexCoord3d( GLdouble s, GLdouble t, GLdouble r )
2244 {
2245 GET_CONTEXT;
2246 (*CC->API.TexCoord4f)( CC, (GLfloat) s, (GLfloat) t, (GLfloat) r, 1.0 );
2247 }
2248
2249
_mesa_TexCoord3f(GLfloat s,GLfloat t,GLfloat r)2250 void APIENTRY _mesa_TexCoord3f( GLfloat s, GLfloat t, GLfloat r )
2251 {
2252 GET_CONTEXT;
2253 (*CC->API.TexCoord4f)( CC, s, t, r, 1.0 );
2254 }
2255
2256
_mesa_TexCoord3i(GLint s,GLint t,GLint r)2257 void APIENTRY _mesa_TexCoord3i( GLint s, GLint t, GLint r )
2258 {
2259 GET_CONTEXT;
2260 (*CC->API.TexCoord4f)( CC, (GLfloat) s, (GLfloat) t,
2261 (GLfloat) r, 1.0 );
2262 }
2263
2264
_mesa_TexCoord3s(GLshort s,GLshort t,GLshort r)2265 void APIENTRY _mesa_TexCoord3s( GLshort s, GLshort t, GLshort r )
2266 {
2267 GET_CONTEXT;
2268 (*CC->API.TexCoord4f)( CC, (GLfloat) s, (GLfloat) t,
2269 (GLfloat) r, 1.0 );
2270 }
2271
2272
_mesa_TexCoord4d(GLdouble s,GLdouble t,GLdouble r,GLdouble q)2273 void APIENTRY _mesa_TexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q )
2274 {
2275 GET_CONTEXT;
2276 (*CC->API.TexCoord4f)( CC, (GLfloat) s, (GLfloat) t,
2277 (GLfloat) r, (GLfloat) q );
2278 }
2279
2280
_mesa_TexCoord4f(GLfloat s,GLfloat t,GLfloat r,GLfloat q)2281 void APIENTRY _mesa_TexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q )
2282 {
2283 GET_CONTEXT;
2284 (*CC->API.TexCoord4f)( CC, s, t, r, q );
2285 }
2286
2287
_mesa_TexCoord4i(GLint s,GLint t,GLint r,GLint q)2288 void APIENTRY _mesa_TexCoord4i( GLint s, GLint t, GLint r, GLint q )
2289 {
2290 GET_CONTEXT;
2291 (*CC->API.TexCoord4f)( CC, (GLfloat) s, (GLfloat) t,
2292 (GLfloat) r, (GLfloat) q );
2293 }
2294
2295
_mesa_TexCoord4s(GLshort s,GLshort t,GLshort r,GLshort q)2296 void APIENTRY _mesa_TexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q )
2297 {
2298 GET_CONTEXT;
2299 (*CC->API.TexCoord4f)( CC, (GLfloat) s, (GLfloat) t,
2300 (GLfloat) r, (GLfloat) q );
2301 }
2302
2303
_mesa_TexCoord1dv(const GLdouble * v)2304 void APIENTRY _mesa_TexCoord1dv( const GLdouble *v )
2305 {
2306 GET_CONTEXT;
2307 (*CC->API.TexCoord4f)( CC, (GLfloat) *v, 0.0, 0.0, 1.0 );
2308 }
2309
2310
_mesa_TexCoord1fv(const GLfloat * v)2311 void APIENTRY _mesa_TexCoord1fv( const GLfloat *v )
2312 {
2313 GET_CONTEXT;
2314 (*CC->API.TexCoord4f)( CC, *v, 0.0, 0.0, 1.0 );
2315 }
2316
2317
_mesa_TexCoord1iv(const GLint * v)2318 void APIENTRY _mesa_TexCoord1iv( const GLint *v )
2319 {
2320 GET_CONTEXT;
2321 (*CC->API.TexCoord4f)( CC, *v, 0.0, 0.0, 1.0 );
2322 }
2323
2324
_mesa_TexCoord1sv(const GLshort * v)2325 void APIENTRY _mesa_TexCoord1sv( const GLshort *v )
2326 {
2327 GET_CONTEXT;
2328 (*CC->API.TexCoord4f)( CC, (GLfloat) *v, 0.0, 0.0, 1.0 );
2329 }
2330
2331
_mesa_TexCoord2dv(const GLdouble * v)2332 void APIENTRY _mesa_TexCoord2dv( const GLdouble *v )
2333 {
2334 GET_CONTEXT;
2335 (*CC->API.TexCoord2f)( CC, (GLfloat) v[0], (GLfloat) v[1] );
2336 }
2337
2338
_mesa_TexCoord2fv(const GLfloat * v)2339 void APIENTRY _mesa_TexCoord2fv( const GLfloat *v )
2340 {
2341 GET_CONTEXT;
2342 (*CC->API.TexCoord2f)( CC, v[0], v[1] );
2343 }
2344
2345
_mesa_TexCoord2iv(const GLint * v)2346 void APIENTRY _mesa_TexCoord2iv( const GLint *v )
2347 {
2348 GET_CONTEXT;
2349 (*CC->API.TexCoord2f)( CC, (GLfloat) v[0], (GLfloat) v[1] );
2350 }
2351
2352
_mesa_TexCoord2sv(const GLshort * v)2353 void APIENTRY _mesa_TexCoord2sv( const GLshort *v )
2354 {
2355 GET_CONTEXT;
2356 (*CC->API.TexCoord2f)( CC, (GLfloat) v[0], (GLfloat) v[1] );
2357 }
2358
2359
_mesa_TexCoord3dv(const GLdouble * v)2360 void APIENTRY _mesa_TexCoord3dv( const GLdouble *v )
2361 {
2362 GET_CONTEXT;
2363 (*CC->API.TexCoord4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2364 (GLfloat) v[2], 1.0 );
2365 }
2366
2367
_mesa_TexCoord3fv(const GLfloat * v)2368 void APIENTRY _mesa_TexCoord3fv( const GLfloat *v )
2369 {
2370 GET_CONTEXT;
2371 (*CC->API.TexCoord4f)( CC, v[0], v[1], v[2], 1.0 );
2372 }
2373
2374
_mesa_TexCoord3iv(const GLint * v)2375 void APIENTRY _mesa_TexCoord3iv( const GLint *v )
2376 {
2377 GET_CONTEXT;
2378 (*CC->API.TexCoord4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2379 (GLfloat) v[2], 1.0 );
2380 }
2381
2382
_mesa_TexCoord3sv(const GLshort * v)2383 void APIENTRY _mesa_TexCoord3sv( const GLshort *v )
2384 {
2385 GET_CONTEXT;
2386 (*CC->API.TexCoord4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2387 (GLfloat) v[2], 1.0 );
2388 }
2389
2390
_mesa_TexCoord4dv(const GLdouble * v)2391 void APIENTRY _mesa_TexCoord4dv( const GLdouble *v )
2392 {
2393 GET_CONTEXT;
2394 (*CC->API.TexCoord4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2395 (GLfloat) v[2], (GLfloat) v[3] );
2396 }
2397
2398
_mesa_TexCoord4fv(const GLfloat * v)2399 void APIENTRY _mesa_TexCoord4fv( const GLfloat *v )
2400 {
2401 GET_CONTEXT;
2402 (*CC->API.TexCoord4f)( CC, v[0], v[1], v[2], v[3] );
2403 }
2404
2405
_mesa_TexCoord4iv(const GLint * v)2406 void APIENTRY _mesa_TexCoord4iv( const GLint *v )
2407 {
2408 GET_CONTEXT;
2409 (*CC->API.TexCoord4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2410 (GLfloat) v[2], (GLfloat) v[3] );
2411 }
2412
2413
_mesa_TexCoord4sv(const GLshort * v)2414 void APIENTRY _mesa_TexCoord4sv( const GLshort *v )
2415 {
2416 GET_CONTEXT;
2417 (*CC->API.TexCoord4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2418 (GLfloat) v[2], (GLfloat) v[3] );
2419 }
2420
2421
_mesa_TexCoordPointer(GLint size,GLenum type,GLsizei stride,const GLvoid * ptr)2422 void APIENTRY _mesa_TexCoordPointer( GLint size, GLenum type, GLsizei stride,
2423 const GLvoid *ptr )
2424 {
2425 GET_CONTEXT;
2426 (*CC->API.TexCoordPointer)(CC, size, type, stride, ptr);
2427 }
2428
2429
_mesa_TexGend(GLenum coord,GLenum pname,GLdouble param)2430 void APIENTRY _mesa_TexGend( GLenum coord, GLenum pname, GLdouble param )
2431 {
2432 GLfloat p = (GLfloat) param;
2433 GET_CONTEXT;
2434 (*CC->API.TexGenfv)( CC, coord, pname, &p );
2435 }
2436
2437
_mesa_TexGenf(GLenum coord,GLenum pname,GLfloat param)2438 void APIENTRY _mesa_TexGenf( GLenum coord, GLenum pname, GLfloat param )
2439 {
2440 GET_CONTEXT;
2441 (*CC->API.TexGenfv)( CC, coord, pname, ¶m );
2442 }
2443
2444
_mesa_TexGeni(GLenum coord,GLenum pname,GLint param)2445 void APIENTRY _mesa_TexGeni( GLenum coord, GLenum pname, GLint param )
2446 {
2447 GLfloat p = (GLfloat) param;
2448 GET_CONTEXT;
2449 (*CC->API.TexGenfv)( CC, coord, pname, &p );
2450 }
2451
2452
_mesa_TexGendv(GLenum coord,GLenum pname,const GLdouble * params)2453 void APIENTRY _mesa_TexGendv( GLenum coord, GLenum pname, const GLdouble *params )
2454 {
2455 GLfloat p[4];
2456 GET_CONTEXT;
2457 p[0] = params[0];
2458 p[1] = params[1];
2459 p[2] = params[2];
2460 p[3] = params[3];
2461 (*CC->API.TexGenfv)( CC, coord, pname, p );
2462 }
2463
2464
_mesa_TexGeniv(GLenum coord,GLenum pname,const GLint * params)2465 void APIENTRY _mesa_TexGeniv( GLenum coord, GLenum pname, const GLint *params )
2466 {
2467 GLfloat p[4];
2468 GET_CONTEXT;
2469 p[0] = params[0];
2470 p[1] = params[1];
2471 p[2] = params[2];
2472 p[3] = params[3];
2473 (*CC->API.TexGenfv)( CC, coord, pname, p );
2474 }
2475
2476
_mesa_TexGenfv(GLenum coord,GLenum pname,const GLfloat * params)2477 void APIENTRY _mesa_TexGenfv( GLenum coord, GLenum pname, const GLfloat *params )
2478 {
2479 GET_CONTEXT;
2480 (*CC->API.TexGenfv)( CC, coord, pname, params );
2481 }
2482
2483
2484
2485
_mesa_TexEnvf(GLenum target,GLenum pname,GLfloat param)2486 void APIENTRY _mesa_TexEnvf( GLenum target, GLenum pname, GLfloat param )
2487 {
2488 GET_CONTEXT;
2489 (*CC->API.TexEnvfv)( CC, target, pname, ¶m );
2490 }
2491
2492
2493
_mesa_TexEnvi(GLenum target,GLenum pname,GLint param)2494 void APIENTRY _mesa_TexEnvi( GLenum target, GLenum pname, GLint param )
2495 {
2496 GLfloat p[4];
2497 GET_CONTEXT;
2498 p[0] = (GLfloat) param;
2499 p[1] = p[2] = p[3] = 0.0;
2500 (*CC->API.TexEnvfv)( CC, target, pname, p );
2501 }
2502
2503
2504
_mesa_TexEnvfv(GLenum target,GLenum pname,const GLfloat * param)2505 void APIENTRY _mesa_TexEnvfv( GLenum target, GLenum pname, const GLfloat *param )
2506 {
2507 GET_CONTEXT;
2508 (*CC->API.TexEnvfv)( CC, target, pname, param );
2509 }
2510
2511
2512
_mesa_TexEnviv(GLenum target,GLenum pname,const GLint * param)2513 void APIENTRY _mesa_TexEnviv( GLenum target, GLenum pname, const GLint *param )
2514 {
2515 GLfloat p[4];
2516 GET_CONTEXT;
2517 p[0] = INT_TO_FLOAT( param[0] );
2518 p[1] = INT_TO_FLOAT( param[1] );
2519 p[2] = INT_TO_FLOAT( param[2] );
2520 p[3] = INT_TO_FLOAT( param[3] );
2521 (*CC->API.TexEnvfv)( CC, target, pname, p );
2522 }
2523
2524
_mesa_TexImage1D(GLenum target,GLint level,GLint internalformat,GLsizei width,GLint border,GLenum format,GLenum type,const GLvoid * pixels)2525 void APIENTRY _mesa_TexImage1D( GLenum target, GLint level, GLint internalformat,
2526 GLsizei width, GLint border,
2527 GLenum format, GLenum type, const GLvoid *pixels )
2528 {
2529 struct gl_image *teximage;
2530 GET_CONTEXT;
2531 teximage = gl_unpack_image( CC, width, 1, format, type, pixels );
2532 (*CC->API.TexImage1D)( CC, target, level, internalformat,
2533 width, border, format, type, teximage );
2534 }
2535
2536
2537
_mesa_TexImage2D(GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLint border,GLenum format,GLenum type,const GLvoid * pixels)2538 void APIENTRY _mesa_TexImage2D( GLenum target, GLint level, GLint internalformat,
2539 GLsizei width, GLsizei height, GLint border,
2540 GLenum format, GLenum type, const GLvoid *pixels )
2541 {
2542 struct gl_image *teximage;
2543
2544 GET_CONTEXT;
2545
2546 teximage = gl_unpack_image( CC, width, height, format, type, pixels );
2547 (*CC->API.TexImage2D)( CC, target, level, internalformat,
2548 width, height, border, format, type, teximage );
2549 }
2550
2551
_mesa_TexParameterf(GLenum target,GLenum pname,GLfloat param)2552 void APIENTRY _mesa_TexParameterf( GLenum target, GLenum pname, GLfloat param )
2553 {
2554 GET_CONTEXT;
2555 (*CC->API.TexParameterfv)( CC, target, pname, ¶m );
2556 }
2557
2558
_mesa_TexParameteri(GLenum target,GLenum pname,GLint param)2559 void APIENTRY _mesa_TexParameteri( GLenum target, GLenum pname, GLint param )
2560 {
2561 GLfloat fparam[4];
2562 GET_CONTEXT;
2563 fparam[0] = (GLfloat) param;
2564 fparam[1] = fparam[2] = fparam[3] = 0.0;
2565 (*CC->API.TexParameterfv)( CC, target, pname, fparam );
2566 }
2567
2568
_mesa_TexParameterfv(GLenum target,GLenum pname,const GLfloat * params)2569 void APIENTRY _mesa_TexParameterfv( GLenum target, GLenum pname, const GLfloat *params )
2570 {
2571 GET_CONTEXT;
2572 (*CC->API.TexParameterfv)( CC, target, pname, params );
2573 }
2574
2575
_mesa_TexParameteriv(GLenum target,GLenum pname,const GLint * params)2576 void APIENTRY _mesa_TexParameteriv( GLenum target, GLenum pname, const GLint *params )
2577 {
2578 GLfloat p[4];
2579 GET_CONTEXT;
2580 if (pname==GL_TEXTURE_BORDER_COLOR) {
2581 p[0] = INT_TO_FLOAT( params[0] );
2582 p[1] = INT_TO_FLOAT( params[1] );
2583 p[2] = INT_TO_FLOAT( params[2] );
2584 p[3] = INT_TO_FLOAT( params[3] );
2585 }
2586 else {
2587 p[0] = (GLfloat) params[0];
2588 p[1] = (GLfloat) params[1];
2589 p[2] = (GLfloat) params[2];
2590 p[3] = (GLfloat) params[3];
2591 }
2592 (*CC->API.TexParameterfv)( CC, target, pname, p );
2593 }
2594
2595
_mesa_TexSubImage1D(GLenum target,GLint level,GLint xoffset,GLsizei width,GLenum format,GLenum type,const GLvoid * pixels)2596 void APIENTRY _mesa_TexSubImage1D( GLenum target, GLint level, GLint xoffset,
2597 GLsizei width, GLenum format,
2598 GLenum type, const GLvoid *pixels )
2599 {
2600 struct gl_image *image;
2601 GET_CONTEXT;
2602 image = gl_unpack_texsubimage( CC, width, 1, format, type, pixels );
2603 (*CC->API.TexSubImage1D)( CC, target, level, xoffset, width,
2604 format, type, image );
2605 }
2606
2607
_mesa_TexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,const GLvoid * pixels)2608 void APIENTRY _mesa_TexSubImage2D( GLenum target, GLint level,
2609 GLint xoffset, GLint yoffset,
2610 GLsizei width, GLsizei height,
2611 GLenum format, GLenum type,
2612 const GLvoid *pixels )
2613 {
2614 struct gl_image *image;
2615 GET_CONTEXT;
2616 image = gl_unpack_texsubimage( CC, width, height, format, type, pixels );
2617 (*CC->API.TexSubImage2D)( CC, target, level, xoffset, yoffset,
2618 width, height, format, type, image );
2619 }
2620
2621
_mesa_Translated(GLdouble x,GLdouble y,GLdouble z)2622 void APIENTRY _mesa_Translated( GLdouble x, GLdouble y, GLdouble z )
2623 {
2624 GET_CONTEXT;
2625 (*CC->API.Translatef)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z );
2626 }
2627
2628
_mesa_Translatef(GLfloat x,GLfloat y,GLfloat z)2629 void APIENTRY _mesa_Translatef( GLfloat x, GLfloat y, GLfloat z )
2630 {
2631 GET_CONTEXT;
2632 (*CC->API.Translatef)( CC, x, y, z );
2633 }
2634
2635
_mesa_Vertex2d(GLdouble x,GLdouble y)2636 void APIENTRY _mesa_Vertex2d( GLdouble x, GLdouble y )
2637 {
2638 GET_CONTEXT;
2639 (*CC->API.Vertex2f)( CC, (GLfloat) x, (GLfloat) y );
2640 }
2641
2642
_mesa_Vertex2f(GLfloat x,GLfloat y)2643 void APIENTRY _mesa_Vertex2f( GLfloat x, GLfloat y )
2644 {
2645 GET_CONTEXT;
2646 (*CC->API.Vertex2f)( CC, x, y );
2647 }
2648
2649
_mesa_Vertex2i(GLint x,GLint y)2650 void APIENTRY _mesa_Vertex2i( GLint x, GLint y )
2651 {
2652 GET_CONTEXT;
2653 (*CC->API.Vertex2f)( CC, (GLfloat) x, (GLfloat) y );
2654 }
2655
2656
_mesa_Vertex2s(GLshort x,GLshort y)2657 void APIENTRY _mesa_Vertex2s( GLshort x, GLshort y )
2658 {
2659 GET_CONTEXT;
2660 (*CC->API.Vertex2f)( CC, (GLfloat) x, (GLfloat) y );
2661 }
2662
2663
_mesa_Vertex3d(GLdouble x,GLdouble y,GLdouble z)2664 void APIENTRY _mesa_Vertex3d( GLdouble x, GLdouble y, GLdouble z )
2665 {
2666 GET_CONTEXT;
2667 (*CC->API.Vertex3f)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z );
2668 }
2669
2670
_mesa_Vertex3f(GLfloat x,GLfloat y,GLfloat z)2671 void APIENTRY _mesa_Vertex3f( GLfloat x, GLfloat y, GLfloat z )
2672 {
2673 GET_CONTEXT;
2674 (*CC->API.Vertex3f)( CC, x, y, z );
2675 }
2676
2677
_mesa_Vertex3i(GLint x,GLint y,GLint z)2678 void APIENTRY _mesa_Vertex3i( GLint x, GLint y, GLint z )
2679 {
2680 GET_CONTEXT;
2681 (*CC->API.Vertex3f)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z );
2682 }
2683
2684
_mesa_Vertex3s(GLshort x,GLshort y,GLshort z)2685 void APIENTRY _mesa_Vertex3s( GLshort x, GLshort y, GLshort z )
2686 {
2687 GET_CONTEXT;
2688 (*CC->API.Vertex3f)( CC, (GLfloat) x, (GLfloat) y, (GLfloat) z );
2689 }
2690
2691
_mesa_Vertex4d(GLdouble x,GLdouble y,GLdouble z,GLdouble w)2692 void APIENTRY _mesa_Vertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w )
2693 {
2694 GET_CONTEXT;
2695 (*CC->API.Vertex4f)( CC, (GLfloat) x, (GLfloat) y,
2696 (GLfloat) z, (GLfloat) w );
2697 }
2698
2699
_mesa_Vertex4f(GLfloat x,GLfloat y,GLfloat z,GLfloat w)2700 void APIENTRY _mesa_Vertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w )
2701 {
2702 GET_CONTEXT;
2703 (*CC->API.Vertex4f)( CC, x, y, z, w );
2704 }
2705
2706
_mesa_Vertex4i(GLint x,GLint y,GLint z,GLint w)2707 void APIENTRY _mesa_Vertex4i( GLint x, GLint y, GLint z, GLint w )
2708 {
2709 GET_CONTEXT;
2710 (*CC->API.Vertex4f)( CC, (GLfloat) x, (GLfloat) y,
2711 (GLfloat) z, (GLfloat) w );
2712 }
2713
2714
_mesa_Vertex4s(GLshort x,GLshort y,GLshort z,GLshort w)2715 void APIENTRY _mesa_Vertex4s( GLshort x, GLshort y, GLshort z, GLshort w )
2716 {
2717 GET_CONTEXT;
2718 (*CC->API.Vertex4f)( CC, (GLfloat) x, (GLfloat) y,
2719 (GLfloat) z, (GLfloat) w );
2720 }
2721
2722
_mesa_Vertex2dv(const GLdouble * v)2723 void APIENTRY _mesa_Vertex2dv( const GLdouble *v )
2724 {
2725 GET_CONTEXT;
2726 (*CC->API.Vertex2f)( CC, (GLfloat) v[0], (GLfloat) v[1] );
2727 }
2728
2729
_mesa_Vertex2fv(const GLfloat * v)2730 void APIENTRY _mesa_Vertex2fv( const GLfloat *v )
2731 {
2732 GET_CONTEXT;
2733 (*CC->API.Vertex2f)( CC, v[0], v[1] );
2734 }
2735
2736
_mesa_Vertex2iv(const GLint * v)2737 void APIENTRY _mesa_Vertex2iv( const GLint *v )
2738 {
2739 GET_CONTEXT;
2740 (*CC->API.Vertex2f)( CC, (GLfloat) v[0], (GLfloat) v[1] );
2741 }
2742
2743
_mesa_Vertex2sv(const GLshort * v)2744 void APIENTRY _mesa_Vertex2sv( const GLshort *v )
2745 {
2746 GET_CONTEXT;
2747 (*CC->API.Vertex2f)( CC, (GLfloat) v[0], (GLfloat) v[1] );
2748 }
2749
2750
_mesa_Vertex3dv(const GLdouble * v)2751 void APIENTRY _mesa_Vertex3dv( const GLdouble *v )
2752 {
2753 GET_CONTEXT;
2754 (*CC->API.Vertex3f)( CC, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
2755 }
2756
2757
_mesa_Vertex3fv(const GLfloat * v)2758 void APIENTRY _mesa_Vertex3fv( const GLfloat *v )
2759 {
2760 GET_CONTEXT;
2761 (*CC->API.Vertex3fv)( CC, v );
2762 }
2763
2764
_mesa_Vertex3iv(const GLint * v)2765 void APIENTRY _mesa_Vertex3iv( const GLint *v )
2766 {
2767 GET_CONTEXT;
2768 (*CC->API.Vertex3f)( CC, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
2769 }
2770
2771
_mesa_Vertex3sv(const GLshort * v)2772 void APIENTRY _mesa_Vertex3sv( const GLshort *v )
2773 {
2774 GET_CONTEXT;
2775 (*CC->API.Vertex3f)( CC, (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
2776 }
2777
2778
_mesa_Vertex4dv(const GLdouble * v)2779 void APIENTRY _mesa_Vertex4dv( const GLdouble *v )
2780 {
2781 GET_CONTEXT;
2782 (*CC->API.Vertex4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2783 (GLfloat) v[2], (GLfloat) v[3] );
2784 }
2785
2786
_mesa_Vertex4fv(const GLfloat * v)2787 void APIENTRY _mesa_Vertex4fv( const GLfloat *v )
2788 {
2789 GET_CONTEXT;
2790 (*CC->API.Vertex4f)( CC, v[0], v[1], v[2], v[3] );
2791 }
2792
2793
_mesa_Vertex4iv(const GLint * v)2794 void APIENTRY _mesa_Vertex4iv( const GLint *v )
2795 {
2796 GET_CONTEXT;
2797 (*CC->API.Vertex4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2798 (GLfloat) v[2], (GLfloat) v[3] );
2799 }
2800
2801
_mesa_Vertex4sv(const GLshort * v)2802 void APIENTRY _mesa_Vertex4sv( const GLshort *v )
2803 {
2804 GET_CONTEXT;
2805 (*CC->API.Vertex4f)( CC, (GLfloat) v[0], (GLfloat) v[1],
2806 (GLfloat) v[2], (GLfloat) v[3] );
2807 }
2808
2809
_mesa_VertexPointer(GLint size,GLenum type,GLsizei stride,const GLvoid * ptr)2810 void APIENTRY _mesa_VertexPointer( GLint size, GLenum type, GLsizei stride,
2811 const GLvoid *ptr )
2812 {
2813 GET_CONTEXT;
2814 (*CC->API.VertexPointer)(CC, size, type, stride, ptr);
2815 }
2816
2817
_mesa_Viewport(GLint x,GLint y,GLsizei width,GLsizei height)2818 void APIENTRY _mesa_Viewport( GLint x, GLint y, GLsizei width, GLsizei height )
2819 {
2820 GET_CONTEXT;
2821 (*CC->API.Viewport)( CC, x, y, width, height );
2822 }
2823
2824 /* GL_EXT_paletted_texture */
2825
_mesa_ColorTableEXT(GLenum target,GLenum internalFormat,GLsizei width,GLenum format,GLenum type,const GLvoid * table)2826 void APIENTRY _mesa_ColorTableEXT( GLenum target, GLenum internalFormat,
2827 GLsizei width, GLenum format, GLenum type,
2828 const GLvoid *table )
2829 {
2830 struct gl_image *image;
2831 GET_CONTEXT;
2832 image = gl_unpack_image( CC, width, 1, format, type, table );
2833 (*CC->API.ColorTable)( CC, target, internalFormat, image );
2834 if (image->RefCount == 0)
2835 gl_free_image(image);
2836 }
2837
2838
_mesa_ColorSubTableEXT(GLenum target,GLsizei start,GLsizei count,GLenum format,GLenum type,const GLvoid * data)2839 void APIENTRY _mesa_ColorSubTableEXT( GLenum target, GLsizei start, GLsizei count,
2840 GLenum format, GLenum type,
2841 const GLvoid *data )
2842 {
2843 struct gl_image *image;
2844 GET_CONTEXT;
2845 image = gl_unpack_image( CC, count, 1, format, type, data );
2846 (*CC->API.ColorSubTable)( CC, target, start, image );
2847 if (image->RefCount == 0)
2848 gl_free_image(image);
2849 }
2850
_mesa_GetColorTableEXT(GLenum target,GLenum format,GLenum type,GLvoid * table)2851 void APIENTRY _mesa_GetColorTableEXT( GLenum target, GLenum format,
2852 GLenum type, GLvoid *table )
2853 {
2854 GET_CONTEXT;
2855 (*CC->API.GetColorTable)(CC, target, format, type, table);
2856 }
2857
2858
_mesa_GetColorTableParameterivEXT(GLenum target,GLenum pname,GLint * params)2859 void APIENTRY _mesa_GetColorTableParameterivEXT( GLenum target, GLenum pname,
2860 GLint *params )
2861 {
2862 GET_CONTEXT;
2863 (*CC->API.GetColorTableParameteriv)(CC, target, pname, params);
2864 }
2865
2866
_mesa_GetColorTableParameterfvEXT(GLenum target,GLenum pname,GLfloat * params)2867 void APIENTRY _mesa_GetColorTableParameterfvEXT( GLenum target, GLenum pname,
2868 GLfloat *params )
2869 {
2870 GLint iparams;
2871 _mesa_GetColorTableParameterivEXT( target, pname, &iparams );
2872 *params = (GLfloat) iparams;
2873 }
2874 /* End GL_EXT_paletted_texture */
2875