VirtualBox

source: vbox/trunk/src/VBox/Additions/x11/x11include/glproto-1.4.8/GL/glxproto.h@ 17232

Last change on this file since 17232 was 17232, checked in by vboxsync, 16 years ago

Additions/x11/x11include: added header files needed for DRI support in vboxvideo

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 74.0 KB
Line 
1#ifndef _GLX_glxproto_h_
2#define _GLX_glxproto_h_
3
4/* $XFree86: xc/include/GL/glxproto.h,v 1.6 2003/09/28 20:14:58 alanh Exp $ */
5/*
6** License Applicability. Except to the extent portions of this file are
7** made subject to an alternative license as permitted in the SGI Free
8** Software License B, Version 1.1 (the "License"), the contents of this
9** file are subject only to the provisions of the License. You may not use
10** this file except in compliance with the License. You may obtain a copy
11** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
12** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
13**
14** http://oss.sgi.com/projects/FreeB
15**
16** Note that, as provided in the License, the Software is distributed on an
17** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
18** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
19** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
20** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
21**
22** Original Code. The Original Code is: OpenGL Sample Implementation,
23** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
24** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
25** Copyright in any portions created by third parties is as indicated
26** elsewhere herein. All Rights Reserved.
27**
28** Additional Notice Provisions: The application programming interfaces
29** established by SGI in conjunction with the Original Code are The
30** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
31** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
32** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
33** Window System(R) (Version 1.3), released October 19, 1998. This software
34** was created using the OpenGL(R) version 1.2.1 Sample Implementation
35** published by SGI, but has not been independently verified as being
36** compliant with the OpenGL(R) version 1.2.1 Specification.
37*/
38
39#include <GL/glxmd.h>
40
41/*****************************************************************************/
42
43/*
44** Errrors.
45*/
46#define GLXBadContext 0
47#define GLXBadContextState 1
48#define GLXBadDrawable 2
49#define GLXBadPixmap 3
50#define GLXBadContextTag 4
51#define GLXBadCurrentWindow 5
52#define GLXBadRenderRequest 6
53#define GLXBadLargeRequest 7
54#define GLXUnsupportedPrivateRequest 8
55#define GLXBadFBConfig 9
56#define GLXBadPbuffer 10
57#define GLXBadCurrentDrawable 11
58#define GLXBadWindow 12
59
60#define __GLX_NUMBER_ERRORS 13
61
62/*
63** Events.
64** __GLX_NUMBER_EVENTS is set to 17 to account for the BufferClobberSGIX
65** event - this helps initialization if the server supports the pbuffer
66** extension and the client doesn't.
67*/
68#define GLX_PbufferClobber 0
69
70#define __GLX_NUMBER_EVENTS 17
71
72#define GLX_EXTENSION_NAME "GLX"
73#define GLX_EXTENSION_ALIAS "SGI-GLX"
74
75#define __GLX_MAX_CONTEXT_PROPS 3
76
77#ifndef GLX_VENDOR
78#define GLX_VENDOR 0x1
79#endif
80#ifndef GLX_VERSION
81#define GLX_VERSION 0x2
82#endif
83#ifndef GLX_EXTENSIONS
84#define GLX_EXTENSIONS 0x3
85#endif
86
87/*****************************************************************************/
88
89/*
90** For the structure definitions in this file, we must redefine these types in
91** terms of Xmd.h types, which may include bitfields. All of these are
92** undef'ed at the end of this file, restoring the definitions in glx.h.
93*/
94#define GLXContextID CARD32
95#define GLXPixmap CARD32
96#define GLXDrawable CARD32
97#define GLXPbuffer CARD32
98#define GLXWindow CARD32
99#define GLXFBConfigID CARD32
100#define GLXFBConfigIDSGIX CARD32
101#define GLXPbufferSGIX CARD32
102
103/*
104** ContextTag is not exposed to the API.
105*/
106typedef CARD32 GLXContextTag;
107
108/*****************************************************************************/
109
110/*
111** Sizes of basic wire types.
112*/
113#define __GLX_SIZE_INT8 1
114#define __GLX_SIZE_INT16 2
115#define __GLX_SIZE_INT32 4
116#define __GLX_SIZE_CARD8 1
117#define __GLX_SIZE_CARD16 2
118#define __GLX_SIZE_CARD32 4
119#define __GLX_SIZE_FLOAT32 4
120#define __GLX_SIZE_FLOAT64 8
121
122/*****************************************************************************/
123
124/* Requests */
125
126/*
127** Render command request. A bunch of rendering commands are packed into
128** a single X extension request.
129*/
130typedef struct GLXRender {
131 CARD8 reqType;
132 CARD8 glxCode;
133 CARD16 length B16;
134 GLXContextTag contextTag B32;
135} xGLXRenderReq;
136#define sz_xGLXRenderReq 8
137
138/*
139** The maximum size that a GLXRender command can be. The value must fit
140** in 16 bits and should be a multiple of 4.
141*/
142#define __GLX_MAX_RENDER_CMD_SIZE 64000
143
144/*
145** Large render command request. A single large rendering command
146** is output in multiple X extension requests. The first packet
147** contains an opcode dependent header (see below) that describes
148** the data that follows.
149*/
150typedef struct GLXRenderLarge {
151 CARD8 reqType;
152 CARD8 glxCode;
153 CARD16 length B16;
154 GLXContextTag contextTag B32;
155 CARD16 requestNumber B16;
156 CARD16 requestTotal B16;
157 CARD32 dataBytes B32;
158} xGLXRenderLargeReq;
159#define sz_xGLXRenderLargeReq 16
160
161/*
162** GLX single request. Commands that go over as single GLX protocol
163** requests use this structure. The glxCode will be one of the X_GLsop
164** opcodes.
165*/
166typedef struct GLXSingle {
167 CARD8 reqType;
168 CARD8 glxCode;
169 CARD16 length B16;
170 GLXContextTag contextTag B32;
171} xGLXSingleReq;
172#define sz_xGLXSingleReq 8
173
174/*
175** glXQueryVersion request
176*/
177typedef struct GLXQueryVersion {
178 CARD8 reqType;
179 CARD8 glxCode;
180 CARD16 length B16;
181 CARD32 majorVersion B32;
182 CARD32 minorVersion B32;
183} xGLXQueryVersionReq;
184#define sz_xGLXQueryVersionReq 12
185
186/*
187** glXIsDirect request
188*/
189typedef struct GLXIsDirect {
190 CARD8 reqType;
191 CARD8 glxCode;
192 CARD16 length B16;
193 GLXContextID context B32;
194} xGLXIsDirectReq;
195#define sz_xGLXIsDirectReq 8
196
197/*
198** glXCreateContext request
199*/
200typedef struct GLXCreateContext {
201 CARD8 reqType;
202 CARD8 glxCode;
203 CARD16 length B16;
204 GLXContextID context B32;
205 CARD32 visual B32;
206 CARD32 screen B32;
207 GLXContextID shareList B32;
208 BOOL isDirect;
209 CARD8 reserved1;
210 CARD16 reserved2 B16;
211} xGLXCreateContextReq;
212#define sz_xGLXCreateContextReq 24
213
214/*
215** glXDestroyContext request
216*/
217typedef struct GLXDestroyContext {
218 CARD8 reqType;
219 CARD8 glxCode;
220 CARD16 length B16;
221 GLXContextID context B32;
222} xGLXDestroyContextReq;
223#define sz_xGLXDestroyContextReq 8
224
225/*
226** glXMakeCurrent request
227*/
228typedef struct GLXMakeCurrent {
229 CARD8 reqType;
230 CARD8 glxCode;
231 CARD16 length B16;
232 GLXDrawable drawable B32;
233 GLXContextID context B32;
234 GLXContextTag oldContextTag B32;
235} xGLXMakeCurrentReq;
236#define sz_xGLXMakeCurrentReq 16
237
238/*
239** glXWaitGL request
240*/
241typedef struct GLXWaitGL {
242 CARD8 reqType;
243 CARD8 glxCode;
244 CARD16 length B16;
245 GLXContextTag contextTag B32;
246} xGLXWaitGLReq;
247#define sz_xGLXWaitGLReq 8
248
249/*
250** glXWaitX request
251*/
252typedef struct GLXWaitX {
253 CARD8 reqType;
254 CARD8 glxCode;
255 CARD16 length B16;
256 GLXContextTag contextTag B32;
257} xGLXWaitXReq;
258#define sz_xGLXWaitXReq 8
259
260/*
261** glXCopyContext request
262*/
263typedef struct GLXCopyContext {
264 CARD8 reqType;
265 CARD8 glxCode;
266 CARD16 length B16;
267 GLXContextID source B32;
268 GLXContextID dest B32;
269 CARD32 mask B32;
270 GLXContextTag contextTag B32;
271} xGLXCopyContextReq;
272#define sz_xGLXCopyContextReq 20
273
274/*
275** glXSwapBuffers request
276*/
277typedef struct GLXSwapBuffers {
278 CARD8 reqType;
279 CARD8 glxCode;
280 CARD16 length B16;
281 GLXContextTag contextTag B32;
282 GLXDrawable drawable B32;
283} xGLXSwapBuffersReq;
284#define sz_xGLXSwapBuffersReq 12
285
286/*
287** glXUseXFont request
288*/
289typedef struct GLXUseXFont {
290 CARD8 reqType;
291 CARD8 glxCode;
292 CARD16 length B16;
293 GLXContextTag contextTag B32;
294 CARD32 font B32;
295 CARD32 first B32;
296 CARD32 count B32;
297 CARD32 listBase B32;
298} xGLXUseXFontReq;
299#define sz_xGLXUseXFontReq 24
300
301/*
302** glXCreateGLXPixmap request
303*/
304typedef struct GLXCreateGLXPixmap {
305 CARD8 reqType;
306 CARD8 glxCode;
307 CARD16 length B16;
308 CARD32 screen B32;
309 CARD32 visual B32;
310 CARD32 pixmap B32;
311 GLXPixmap glxpixmap B32;
312} xGLXCreateGLXPixmapReq;
313#define sz_xGLXCreateGLXPixmapReq 20
314
315/*
316** glXDestroyGLXPixmap request
317*/
318typedef struct GLXDestroyGLXPixmap {
319 CARD8 reqType;
320 CARD8 glxCode;
321 CARD16 length B16;
322 GLXPixmap glxpixmap B32;
323} xGLXDestroyGLXPixmapReq;
324#define sz_xGLXDestroyGLXPixmapReq 8
325
326/*
327** glXGetVisualConfigs request
328*/
329typedef struct GLXGetVisualConfigs {
330 CARD8 reqType;
331 CARD8 glxCode;
332 CARD16 length B16;
333 CARD32 screen B32;
334} xGLXGetVisualConfigsReq;
335#define sz_xGLXGetVisualConfigsReq 8
336
337/*
338** glXVendorPrivate request.
339*/
340typedef struct GLXVendorPrivate {
341 CARD8 reqType;
342 CARD8 glxCode;
343 CARD16 length B16;
344 CARD32 vendorCode B32; /* vendor-specific opcode */
345 GLXContextTag contextTag B32;
346 /*
347 ** More data may follow; this is just the header.
348 */
349} xGLXVendorPrivateReq;
350#define sz_xGLXVendorPrivateReq 12
351
352/*
353** glXVendorPrivateWithReply request
354*/
355typedef struct GLXVendorPrivateWithReply {
356 CARD8 reqType;
357 CARD8 glxCode;
358 CARD16 length B16;
359 CARD32 vendorCode B32; /* vendor-specific opcode */
360 GLXContextTag contextTag B32;
361 /*
362 ** More data may follow; this is just the header.
363 */
364} xGLXVendorPrivateWithReplyReq;
365#define sz_xGLXVendorPrivateWithReplyReq 12
366
367/*
368** glXQueryExtensionsString request
369*/
370typedef struct GLXQueryExtensionsString {
371 CARD8 reqType;
372 CARD8 glxCode;
373 CARD16 length B16;
374 CARD32 screen B32;
375} xGLXQueryExtensionsStringReq;
376#define sz_xGLXQueryExtensionsStringReq 8
377
378/*
379** glXQueryServerString request
380*/
381typedef struct GLXQueryServerString {
382 CARD8 reqType;
383 CARD8 glxCode;
384 CARD16 length B16;
385 CARD32 screen B32;
386 CARD32 name B32;
387} xGLXQueryServerStringReq;
388#define sz_xGLXQueryServerStringReq 12
389
390/*
391** glXClientInfo request
392*/
393typedef struct GLXClientInfo {
394 CARD8 reqType;
395 CARD8 glxCode;
396 CARD16 length B16;
397 CARD32 major B32;
398 CARD32 minor B32;
399 CARD32 numbytes B32;
400} xGLXClientInfoReq;
401#define sz_xGLXClientInfoReq 16
402
403/*** Start of GLX 1.3 requests */
404
405/*
406** glXGetFBConfigs request
407*/
408typedef struct GLXGetFBConfigs {
409 CARD8 reqType;
410 CARD8 glxCode;
411 CARD16 length B16;
412 CARD32 screen B32;
413} xGLXGetFBConfigsReq;
414#define sz_xGLXGetFBConfigsReq 8
415
416/*
417** glXCreatePixmap request
418*/
419typedef struct GLXCreatePixmap {
420 CARD8 reqType;
421 CARD8 glxCode;
422 CARD16 length B16;
423 CARD32 screen B32;
424 GLXFBConfigID fbconfig B32;
425 CARD32 pixmap B32;
426 GLXPixmap glxpixmap B32;
427 CARD32 numAttribs B32;
428 /* followed by attribute list */
429} xGLXCreatePixmapReq;
430#define sz_xGLXCreatePixmapReq 24
431
432/*
433** glXDestroyPixmap request
434*/
435typedef struct GLXDestroyPixmap {
436 CARD8 reqType;
437 CARD8 glxCode;
438 CARD16 length B16;
439 GLXPixmap glxpixmap B32;
440} xGLXDestroyPixmapReq;
441#define sz_xGLXDestroyPixmapReq 8
442
443/*
444** glXCreateNewContext request
445*/
446typedef struct GLXCreateNewContext {
447 CARD8 reqType;
448 CARD8 glxCode;
449 CARD16 length B16;
450 GLXContextID context B32;
451 GLXFBConfigID fbconfig B32;
452 CARD32 screen B32;
453 CARD32 renderType;
454 GLXContextID shareList B32;
455 BOOL isDirect;
456 CARD8 reserved1;
457 CARD16 reserved2 B16;
458} xGLXCreateNewContextReq;
459#define sz_xGLXCreateNewContextReq 28
460
461/*
462** glXQueryContext request
463*/
464typedef struct GLXQueryContext {
465 CARD8 reqType;
466 CARD8 glxCode;
467 CARD16 length B16;
468 GLXContextID context B32;
469} xGLXQueryContextReq;
470#define sz_xGLXQueryContextReq 8
471
472/*
473** glXMakeContextCurrent request
474*/
475typedef struct GLXMakeContextCurrent {
476 CARD8 reqType;
477 CARD8 glxCode;
478 CARD16 length B16;
479 GLXContextTag oldContextTag B32;
480 GLXDrawable drawable B32;
481 GLXDrawable readdrawable B32;
482 GLXContextID context B32;
483} xGLXMakeContextCurrentReq;
484#define sz_xGLXMakeContextCurrentReq 20
485
486/*
487** glXCreatePbuffer request
488*/
489typedef struct GLXCreatePbuffer {
490 CARD8 reqType;
491 CARD8 glxCode;
492 CARD16 length B16;
493 CARD32 screen B32;
494 GLXFBConfigID fbconfig B32;
495 GLXPbuffer pbuffer B32;
496 CARD32 numAttribs B32;
497 /* followed by attribute list */
498} xGLXCreatePbufferReq;
499#define sz_xGLXCreatePbufferReq 20
500
501/*
502** glXDestroyPbuffer request
503*/
504typedef struct GLXDestroyPbuffer {
505 CARD8 reqType;
506 CARD8 glxCode;
507 CARD16 length B16;
508 GLXPbuffer pbuffer B32;
509} xGLXDestroyPbufferReq;
510#define sz_xGLXDestroyPbufferReq 8
511
512/*
513** glXGetDrawableAttributes request
514*/
515typedef struct GLXGetDrawableAttributes {
516 CARD8 reqType;
517 CARD8 glxCode;
518 CARD16 length B16;
519 GLXDrawable drawable B32;
520} xGLXGetDrawableAttributesReq;
521#define sz_xGLXGetDrawableAttributesReq 8
522
523/*
524** glXChangeDrawableAttributes request
525*/
526typedef struct GLXChangeDrawableAttributes {
527 CARD8 reqType;
528 CARD8 glxCode;
529 CARD16 length B16;
530 GLXDrawable drawable B32;
531 CARD32 numAttribs B32;
532 /* followed by attribute list */
533} xGLXChangeDrawableAttributesReq;
534#define sz_xGLXChangeDrawableAttributesReq 12
535
536/*
537** glXCreateWindow request
538*/
539typedef struct GLXCreateWindow {
540 CARD8 reqType;
541 CARD8 glxCode;
542 CARD16 length B16;
543 CARD32 screen B32;
544 GLXFBConfigID fbconfig B32;
545 CARD32 window B32;
546 GLXWindow glxwindow B32;
547 CARD32 numAttribs B32;
548 /* followed by attribute list */
549} xGLXCreateWindowReq;
550#define sz_xGLXCreateWindowReq 24
551
552/*
553** glXDestroyWindow request
554*/
555typedef struct GLXDestroyWindow {
556 CARD8 reqType;
557 CARD8 glxCode;
558 CARD16 length B16;
559 GLXWindow glxwindow B32;
560} xGLXDestroyWindowReq;
561#define sz_xGLXDestroyWindowReq 8
562
563/* Replies */
564
565typedef struct {
566 BYTE type; /* X_Reply */
567 CARD8 unused; /* not used */
568 CARD16 sequenceNumber B16;
569 CARD32 length B32;
570 CARD32 error B32;
571 CARD32 pad2 B32;
572 CARD32 pad3 B32;
573 CARD32 pad4 B32;
574 CARD32 pad5 B32;
575 CARD32 pad6 B32;
576} xGLXGetErrorReply;
577#define sz_xGLXGetErrorReply 32
578
579typedef struct {
580 BYTE type; /* X_Reply */
581 CARD8 unused; /* not used */
582 CARD16 sequenceNumber B16;
583 CARD32 length B32;
584 GLXContextTag contextTag B32;
585 CARD32 pad2 B32;
586 CARD32 pad3 B32;
587 CARD32 pad4 B32;
588 CARD32 pad5 B32;
589 CARD32 pad6 B32;
590} xGLXMakeCurrentReply;
591#define sz_xGLXMakeCurrentReply 32
592
593typedef struct {
594 BYTE type; /* X_Reply */
595 CARD8 unused; /* not used */
596 CARD16 sequenceNumber B16;
597 CARD32 length B32;
598 CARD32 pad1 B32;
599 CARD32 pad2 B32;
600 CARD32 pad3 B32;
601 CARD32 pad4 B32;
602 CARD32 pad5 B32;
603 CARD32 pad6 B32;
604} xGLXReadPixelsReply;
605#define sz_xGLXReadPixelsReply 32
606
607typedef struct {
608 BYTE type; /* X_Reply */
609 CARD8 unused; /* not used */
610 CARD16 sequenceNumber B16;
611 CARD32 length B32;
612 CARD32 pad1 B32;
613 CARD32 pad2 B32;
614 CARD32 width B32;
615 CARD32 height B32;
616 CARD32 depth B32;
617 CARD32 pad6 B32;
618} xGLXGetTexImageReply;
619#define sz_xGLXGetTexImageReply 32
620
621typedef struct {
622 BYTE type; /* X_Reply */
623 CARD8 unused; /* not used */
624 CARD16 sequenceNumber B16;
625 CARD32 length B32;
626 CARD32 pad1 B32;
627 CARD32 pad2 B32;
628 CARD32 width B32;
629 CARD32 height B32;
630 CARD32 pad5 B32;
631 CARD32 pad6 B32;
632} xGLXGetSeparableFilterReply;
633#define sz_xGLXGetSeparableFilterReply 32
634
635typedef struct {
636 BYTE type; /* X_Reply */
637 CARD8 unused; /* not used */
638 CARD16 sequenceNumber B16;
639 CARD32 length B32;
640 CARD32 pad1 B32;
641 CARD32 pad2 B32;
642 CARD32 width B32;
643 CARD32 height B32;
644 CARD32 pad5 B32;
645 CARD32 pad6 B32;
646} xGLXGetConvolutionFilterReply;
647#define sz_xGLXGetConvolutionFilterReply 32
648
649typedef struct {
650 BYTE type; /* X_Reply */
651 CARD8 unused; /* not used */
652 CARD16 sequenceNumber B16;
653 CARD32 length B32;
654 CARD32 pad1 B32;
655 CARD32 pad2 B32;
656 CARD32 width B32;
657 CARD32 pad4 B32;
658 CARD32 pad5 B32;
659 CARD32 pad6 B32;
660} xGLXGetHistogramReply;
661#define sz_xGLXGetHistogramReply 32
662
663typedef struct {
664 BYTE type; /* X_Reply */
665 CARD8 unused; /* not used */
666 CARD16 sequenceNumber B16;
667 CARD32 length B32;
668 CARD32 pad1 B32;
669 CARD32 pad2 B32;
670 CARD32 pad3 B32;
671 CARD32 pad4 B32;
672 CARD32 pad5 B32;
673 CARD32 pad6 B32;
674} xGLXGetMinmaxReply;
675#define sz_xGLXGetMinmaxReply 32
676
677typedef struct {
678 BYTE type; /* X_Reply */
679 CARD8 unused; /* not used */
680 CARD16 sequenceNumber B16;
681 CARD32 length B32;
682 CARD32 retval B32;
683 CARD32 size B32;
684 CARD32 newMode B32;
685 CARD32 pad4 B32;
686 CARD32 pad5 B32;
687 CARD32 pad6 B32;
688} xGLXRenderModeReply;
689#define sz_xGLXRenderModeReply 32
690
691typedef struct {
692 BYTE type; /* X_Reply */
693 CARD8 unused; /* not used */
694 CARD16 sequenceNumber B16;
695 CARD32 length B32;
696 CARD32 majorVersion B32;
697 CARD32 minorVersion B32;
698 CARD32 pad3 B32;
699 CARD32 pad4 B32;
700 CARD32 pad5 B32;
701 CARD32 pad6 B32;
702} xGLXQueryVersionReply;
703#define sz_xGLXQueryVersionReply 32
704
705typedef struct {
706 BYTE type; /* X_Reply */
707 CARD8 unused; /* not used */
708 CARD16 sequenceNumber B16;
709 CARD32 length B32;
710 CARD32 numVisuals B32;
711 CARD32 numProps B32;
712 CARD32 pad3 B32;
713 CARD32 pad4 B32;
714 CARD32 pad5 B32;
715 CARD32 pad6 B32;
716} xGLXGetVisualConfigsReply;
717#define sz_xGLXGetVisualConfigsReply 32
718
719typedef struct {
720 BYTE type; /* X_Reply */
721 CARD8 unused; /* not used */
722 CARD16 sequenceNumber B16;
723 CARD32 length B32;
724 BOOL isDirect;
725 CARD8 pad1;
726 CARD16 pad2 B16;
727 CARD32 pad3 B32;
728 CARD32 pad4 B32;
729 CARD32 pad5 B32;
730 CARD32 pad6 B32;
731 CARD32 pad7 B32;
732} xGLXIsDirectReply;
733#define sz_xGLXIsDirectReply 32
734
735/*
736** This reply structure is used for all single replies. Single replies
737** ship either 1 piece of data or N pieces of data. In these cases
738** size indicates how much data is to be returned.
739*/
740typedef struct {
741 BYTE type; /* X_Reply */
742 CARD8 unused; /* not used */
743 CARD16 sequenceNumber B16;
744 CARD32 length B32;
745 CARD32 retval B32;
746 CARD32 size B32;
747 CARD32 pad3 B32; /* NOTE: may hold a single value */
748 CARD32 pad4 B32; /* NOTE: may hold half a double */
749 CARD32 pad5 B32;
750 CARD32 pad6 B32;
751} xGLXSingleReply;
752#define sz_xGLXSingleReply 32
753
754/*
755** This reply structure is used for all Vendor Private replies. Vendor
756** Private replies can ship up to 24 bytes within the header or can
757** be variable sized, in which case, the reply length field indicates
758** the number of words of data which follow the header.
759*/
760typedef struct {
761 BYTE type; /* X_Reply */
762 CARD8 unused; /* not used */
763 CARD16 sequenceNumber B16;
764 CARD32 length B32;
765 CARD32 retval B32;
766 CARD32 size B32;
767 CARD32 pad3 B32;
768 CARD32 pad4 B32;
769 CARD32 pad5 B32;
770 CARD32 pad6 B32;
771} xGLXVendorPrivReply;
772#define sz_xGLXVendorPrivReply 32
773
774/*
775** QueryExtensionsStringReply
776** n indicates the number of bytes to be returned.
777*/
778typedef struct {
779 BYTE type; /* X_Reply */
780 CARD8 unused; /* not used */
781 CARD16 sequenceNumber B16;
782 CARD32 length B32;
783 CARD32 pad1 B32;
784 CARD32 n B32;
785 CARD32 pad3 B32;
786 CARD32 pad4 B32;
787 CARD32 pad5 B32;
788 CARD32 pad6 B32;
789} xGLXQueryExtensionsStringReply;
790#define sz_xGLXQueryExtensionsStringReply 32
791
792/*
793** QueryServerString Reply struct
794** n indicates the number of bytes to be returned.
795*/
796typedef struct {
797 BYTE type; /* X_Reply */
798 CARD8 unused; /* not used */
799 CARD16 sequenceNumber B16;
800 CARD32 length B32;
801 CARD32 pad1 B32;
802 CARD32 n B32;
803 CARD32 pad3 B32; /* NOTE: may hold a single value */
804 CARD32 pad4 B32; /* NOTE: may hold half a double */
805 CARD32 pad5 B32;
806 CARD32 pad6 B32;
807} xGLXQueryServerStringReply;
808#define sz_xGLXQueryServerStringReply 32
809
810/*** Start of GLX 1.3 replies */
811
812/*
813** glXGetFBConfigs reply
814*/
815typedef struct {
816 BYTE type; /* X_Reply */
817 CARD8 unused; /* not used */
818 CARD16 sequenceNumber B16;
819 CARD32 length B32;
820 CARD32 numFBConfigs B32;
821 CARD32 numAttribs B32;
822 CARD32 pad3 B32;
823 CARD32 pad4 B32;
824 CARD32 pad5 B32;
825 CARD32 pad6 B32;
826} xGLXGetFBConfigsReply;
827#define sz_xGLXGetFBConfigsReply 32
828
829/*
830** glXQueryContext reply
831*/
832typedef struct {
833 BYTE type; /* X_Reply */
834 CARD8 unused; /* not used */
835 CARD16 sequenceNumber B16;
836 CARD32 length B32;
837 CARD32 n B32; /* number of attribute/value pairs */
838 CARD32 pad2 B32;
839 CARD32 pad3 B32;
840 CARD32 pad4 B32;
841 CARD32 pad5 B32;
842 CARD32 pad6 B32;
843} xGLXQueryContextReply;
844#define sz_xGLXQueryContextReply 32
845
846/*
847** glXMakeContextCurrent reply
848*/
849typedef struct {
850 BYTE type; /* X_Reply */
851 CARD8 unused; /* not used */
852 CARD16 sequenceNumber B16;
853 CARD32 length B32;
854 GLXContextTag contextTag B32;
855 CARD32 pad2 B32;
856 CARD32 pad3 B32;
857 CARD32 pad4 B32;
858 CARD32 pad5 B32;
859 CARD32 pad6 B32;
860} xGLXMakeContextCurrentReply;
861#define sz_xGLXMakeContextCurrentReply 32
862
863/*
864** glXCreateGLXPbuffer reply
865** This is used only in the direct rendering case on SGIs - otherwise
866** CreateGLXPbuffer has no reply. It is not part of GLX 1.3.
867*/
868typedef struct {
869 BYTE type; /* X_Reply */
870 CARD8 success;
871 CARD16 sequenceNumber B16;
872 CARD32 length B32;
873 CARD32 pad1 B32;
874 CARD32 pad2 B32;
875 CARD32 pad3 B32;
876 CARD32 pad4 B32;
877 CARD32 pad5 B32;
878 CARD32 pad6 B32;
879} xGLXCreateGLXPbufferReply;
880#define sz_xGLXCreateGLXPbufferReply 32
881
882/*
883** glXGetDrawableAttributes reply
884*/
885typedef struct {
886 BYTE type; /* X_Reply */
887 CARD8 unused; /* not used */
888 CARD16 sequenceNumber B16;
889 CARD32 length B32;
890 CARD32 numAttribs B32;
891 CARD32 pad2 B32;
892 CARD32 pad3 B32;
893 CARD32 pad4 B32;
894 CARD32 pad5 B32;
895 CARD32 pad6 B32;
896} xGLXGetDrawableAttributesReply;
897#define sz_xGLXGetDrawableAttributesReply 32
898
899/*
900** glXGetColorTable reply
901*/
902typedef struct {
903 BYTE type; /* X_Reply */
904 CARD8 unused; /* not used */
905 CARD16 sequenceNumber B16;
906 CARD32 length B32;
907 CARD32 pad1 B32;
908 CARD32 pad2 B32;
909 CARD32 width B32;
910 CARD32 pad4 B32;
911 CARD32 pad5 B32;
912 CARD32 pad6 B32;
913} xGLXGetColorTableReply;
914#define sz_xGLXGetColorTableReply 32
915
916/************************************************************************/
917
918/* GLX extension requests and replies */
919
920/*
921** glXQueryContextInfoEXT request
922*/
923typedef struct GLXQueryContextInfoEXT {
924 CARD8 reqType;
925 CARD8 glxCode;
926 CARD16 length B16;
927 CARD32 vendorCode B32; /* vendor-specific opcode */
928 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
929 GLXContextID context B32;
930} xGLXQueryContextInfoEXTReq;
931#define sz_xGLXQueryContextInfoEXTReq 16
932
933/*
934** glXQueryContextInfoEXT reply
935*/
936typedef struct {
937 BYTE type; /* X_Reply */
938 CARD8 unused; /* not used */
939 CARD16 sequenceNumber B16;
940 CARD32 length B32;
941 CARD32 n B32; /* number of attribute/value pairs */
942 CARD32 pad2 B32;
943 CARD32 pad3 B32;
944 CARD32 pad4 B32;
945 CARD32 pad5 B32;
946 CARD32 pad6 B32;
947} xGLXQueryContextInfoEXTReply;
948#define sz_xGLXQueryContextInfoEXTReply 32
949
950/*
951** glXMakeCurrentReadSGI request
952*/
953typedef struct GLXMakeCurrentReadSGI {
954 CARD8 reqType;
955 CARD8 glxCode;
956 CARD16 length B16;
957 CARD32 vendorCode B32; /* vendor-specific opcode */
958 GLXContextTag oldContextTag B32;
959 GLXDrawable drawable B32;
960 GLXDrawable readable B32;
961 GLXContextID context B32;
962} xGLXMakeCurrentReadSGIReq;
963#define sz_xGLXMakeCurrentReadSGIReq 24
964
965typedef struct {
966 BYTE type; /* X_Reply */
967 CARD8 unused; /* not used */
968 CARD16 sequenceNumber B16;
969 CARD32 length B32;
970 GLXContextTag contextTag B32;
971 CARD32 writeVid B32;
972 CARD32 writeType B32;
973 CARD32 readVid B32;
974 CARD32 readType B32;
975 CARD32 pad6 B32;
976} xGLXMakeCurrentReadSGIReply;
977#define sz_xGLXMakeCurrentReadSGIReply 32
978
979/*
980** glXGetFBConfigsSGIX request
981*/
982typedef struct GLXGetFBConfigsSGIX {
983 CARD8 reqType;
984 CARD8 glxCode;
985 CARD16 length B16;
986 CARD32 vendorCode B32; /* vendor-specific opcode */
987 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
988 CARD32 screen B32;
989} xGLXGetFBConfigsSGIXReq;
990#define sz_xGLXGetFBConfigsSGIXReq 16
991
992/*
993** glXCreateContextWithConfigSGIX request
994*/
995
996typedef struct GLXCreateContextWithConfigSGIX {
997 CARD8 reqType;
998 CARD8 glxCode;
999 CARD16 length B16;
1000 CARD32 vendorCode B32; /* vendor-specific opcode */
1001 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
1002 GLXContextID context B32;
1003 GLXFBConfigID fbconfig B32;
1004 CARD32 screen B32;
1005 CARD32 renderType;
1006 GLXContextID shareList B32;
1007 BOOL isDirect;
1008 CARD8 reserved1;
1009 CARD16 reserved2 B16;
1010} xGLXCreateContextWithConfigSGIXReq;
1011#define sz_xGLXCreateContextWithConfigSGIXReq 36
1012
1013/*
1014** glXCreatePixmapWithConfigSGIX request
1015*/
1016
1017typedef struct GLXCreateGLXPixmapWithConfigSGIX {
1018 CARD8 reqType;
1019 CARD8 glxCode;
1020 CARD16 length B16;
1021 CARD32 vendorCode B32; /* vendor-specific opcode */
1022 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
1023 CARD32 screen B32;
1024 GLXFBConfigID fbconfig B32;
1025 CARD32 pixmap B32;
1026 GLXPixmap glxpixmap B32;
1027} xGLXCreateGLXPixmapWithConfigSGIXReq;
1028#define sz_xGLXCreateGLXPixmapWithConfigSGIXReq 28
1029
1030/*
1031** glXJoinSwapGroupSGIX request
1032*/
1033typedef struct GLXJoinSwapGroupSGIX {
1034 CARD8 reqType;
1035 CARD8 glxCode;
1036 CARD16 length B16;
1037 CARD32 vendorCode B32; /* vendor-specific opcode */
1038 CARD32 unused B32; /* corresponds to contextTag in hdr */
1039 GLXDrawable drawable B32;
1040 GLXDrawable member B32;
1041} xGLXJoinSwapGroupSGIXReq;
1042#define sz_xGLXJoinSwapGroupSGIXReq 20
1043
1044/*
1045** glXBindSwapBarrierSGIX request
1046*/
1047typedef struct GLXBindSwapBarrierSGIX {
1048 CARD8 reqType;
1049 CARD8 glxCode;
1050 CARD16 length B16;
1051 CARD32 vendorCode B32; /* vendor-specific opcode */
1052 CARD32 unused B32; /* corresponds to contextTag in hdr */
1053 GLXDrawable drawable B32;
1054 CARD32 barrier B32;
1055} xGLXBindSwapBarrierSGIXReq;
1056#define sz_xGLXBindSwapBarrierSGIXReq 20
1057
1058/*
1059** glXQueryMaxSwapBarriersSGIX request
1060*/
1061typedef struct GLXQueryMaxSwapBarriersSGIX {
1062 CARD8 reqType;
1063 CARD8 glxCode;
1064 CARD16 length B16;
1065 CARD32 vendorCode B32; /* vendor-specific opcode */
1066 CARD32 unused B32; /* corresponds to contextTag in hdr */
1067 CARD32 screen B32;
1068} xGLXQueryMaxSwapBarriersSGIXReq;
1069#define sz_xGLXQueryMaxSwapBarriersSGIXReq 16
1070
1071typedef struct {
1072 BYTE type; /* X_Reply */
1073 CARD8 unused; /* not used */
1074 CARD16 sequenceNumber B16;
1075 CARD32 length B32;
1076 CARD32 max B32;
1077 CARD32 size B32;
1078 CARD32 pad3 B32;
1079 CARD32 pad4 B32;
1080 CARD32 pad5 B32;
1081 CARD32 pad6 B32;
1082} xGLXQueryMaxSwapBarriersSGIXReply;
1083#define sz_xGLXQueryMaxSwapBarriersSGIXReply 32
1084
1085/*
1086** glXQueryHyperpipeNetworkSGIX request
1087*/
1088typedef struct GLXQueryHyperpipeNetworkSGIX {
1089 CARD8 reqType;
1090 CARD8 glxCode;
1091 CARD16 length B16;
1092 CARD32 vendorCode B32; /* vendor-specific opcode */
1093 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
1094 CARD32 screen B32;
1095} xGLXQueryHyperpipeNetworkSGIXReq;
1096#define sz_xGLXQueryHyperpipeNetworkSGIXReq 16
1097
1098/*
1099** glXQueryHyperpipeNetworkSGIX reply
1100*/
1101typedef struct {
1102 BYTE type; /* X_Reply */
1103 CARD8 unused; /* not used */
1104 CARD16 sequenceNumber B16;
1105 CARD32 length B32;
1106 CARD32 pad1 B32;
1107 CARD32 n B32;
1108 CARD32 npipes B32; /* NOTE: may hold a single value */
1109 CARD32 pad4 B32; /* NOTE: may hold half a double */
1110 CARD32 pad5 B32;
1111 CARD32 pad6 B32;
1112} xGLXQueryHyperpipeNetworkSGIXReply;
1113#define sz_xGLXQueryHyperpipeNetworkSGIXReply 32
1114
1115/*
1116** glXDestroyHyperpipeConfigSGIX request
1117*/
1118typedef struct GLXDestroyHyperpipeConfigSGIX {
1119 CARD8 reqType;
1120 CARD8 glxCode;
1121 CARD16 length B16;
1122 CARD32 vendorCode B32; /* vendor-specific opcode */
1123 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
1124 CARD32 screen B32;
1125 CARD32 hpId B32;
1126 CARD32 pad2 B32;
1127 CARD32 pad3 B32;
1128 CARD32 pad4 B32;
1129} xGLXDestroyHyperpipeConfigSGIXReq;
1130#define sz_xGLXDestroyHyperpipeConfigSGIXReq 32
1131
1132/*
1133** glXDestroyHyperpipeConfigSGIX reply
1134*/
1135typedef struct {
1136 BYTE type; /* X_Reply */
1137 CARD8 unused; /* not used */
1138 CARD16 sequenceNumber B16;
1139 CARD32 length B32;
1140 CARD32 pad1 B32;
1141 CARD32 n B32;
1142 CARD32 success B32; /* NOTE: may hold a single value */
1143 CARD32 pad4 B32; /* NOTE: may hold half a double */
1144 CARD32 pad5 B32;
1145 CARD32 pad6 B32;
1146} xGLXDestroyHyperpipeConfigSGIXReply;
1147#define sz_xGLXDestroyHyperpipeConfigSGIXReply 32
1148
1149/*
1150** glXQueryHyperpipeConfigSGIX request
1151*/
1152typedef struct GLXQueryHyperpipeConfigSGIX {
1153 CARD8 reqType;
1154 CARD8 glxCode;
1155 CARD16 length B16;
1156 CARD32 vendorCode B32; /* vendor-specific opcode */
1157 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
1158 CARD32 screen B32;
1159 CARD32 hpId B32;
1160 CARD32 pad2 B32;
1161 CARD32 pad3 B32;
1162 CARD32 pad4 B32;
1163} xGLXQueryHyperpipeConfigSGIXReq;
1164#define sz_xGLXQueryHyperpipeConfigSGIXReq 32
1165
1166/*
1167** glXQueryHyperpipeConfigSGIX reply
1168*/
1169typedef struct {
1170 BYTE type; /* X_Reply */
1171 CARD8 unused; /* not used */
1172 CARD16 sequenceNumber B16;
1173 CARD32 length B32;
1174 CARD32 pad1 B32;
1175 CARD32 n B32;
1176 CARD32 npipes B32;
1177 CARD32 pad4 B32;
1178 CARD32 pad5 B32;
1179 CARD32 pad6 B32;
1180} xGLXQueryHyperpipeConfigSGIXReply;
1181#define sz_xGLXQueryHyperpipeConfigSGIXReply 32
1182
1183/*
1184** glXHyperpipeConfigSGIX request
1185*/
1186typedef struct GLXHyperpipeConfigSGIX {
1187 CARD8 reqType;
1188 CARD8 glxCode;
1189 CARD16 length B16;
1190 CARD32 vendorCode B32; /* vendor-specific opcode */
1191 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
1192 CARD32 screen B32;
1193 CARD32 npipes B32;
1194 CARD32 networkId B32;
1195 CARD32 pad2 B32;
1196 CARD32 pad3 B32;
1197 /* followed by attribute list */
1198} xGLXHyperpipeConfigSGIXReq;
1199#define sz_xGLXHyperpipeConfigSGIXReq 32
1200
1201/*
1202** glXHyperpipeConfigSGIX reply
1203*/
1204typedef struct {
1205 BYTE type; /* X_Reply */
1206 CARD8 unused; /* not used */
1207 CARD16 sequenceNumber B16;
1208 CARD32 length B32;
1209 CARD32 pad1 B32;
1210 CARD32 n B32;
1211 CARD32 npipes B32;
1212 CARD32 hpId B32;
1213 CARD32 pad5 B32;
1214 CARD32 pad6 B32;
1215} xGLXHyperpipeConfigSGIXReply;
1216#define sz_xGLXHyperpipeConfigSGIXReply 32
1217
1218/************************************************************************/
1219
1220/*
1221** Events
1222*/
1223
1224typedef struct {
1225 BYTE type;
1226 BYTE pad;
1227 CARD16 sequenceNumber B16;
1228 CARD16 event_type B16; /*** was clobber_class */
1229 CARD16 draw_type B16;
1230 CARD32 drawable B32;
1231 CARD32 buffer_mask B32; /*** was mask */
1232 CARD16 aux_buffer B16;
1233 CARD16 x B16;
1234 CARD16 y B16;
1235 CARD16 width B16;
1236 CARD16 height B16;
1237 CARD16 count B16;
1238 CARD32 unused2 B32;
1239} xGLXPbufferClobberEvent;
1240
1241/************************************************************************/
1242
1243/*
1244** Size of the standard X request header.
1245*/
1246#define __GLX_SINGLE_HDR_SIZE sz_xGLXSingleReq
1247#define __GLX_VENDPRIV_HDR_SIZE sz_xGLXVendorPrivateReq
1248
1249#define __GLX_RENDER_HDR \
1250 CARD16 length B16; \
1251 CARD16 opcode B16
1252
1253#define __GLX_RENDER_HDR_SIZE 4
1254
1255typedef struct {
1256 __GLX_RENDER_HDR;
1257} __GLXrenderHeader;
1258
1259#define __GLX_RENDER_LARGE_HDR \
1260 CARD32 length B32; \
1261 CARD32 opcode B32
1262
1263#define __GLX_RENDER_LARGE_HDR_SIZE 8
1264
1265typedef struct {
1266 __GLX_RENDER_LARGE_HDR;
1267} __GLXrenderLargeHeader;
1268
1269/*
1270** The glBitmap, glPolygonStipple, glTexImage[12]D, glTexSubImage[12]D
1271** and glDrawPixels calls all have a pixel header transmitted after the
1272** Render or RenderLarge header and before their own opcode specific
1273** headers.
1274*/
1275#define __GLX_PIXEL_HDR \
1276 BOOL swapBytes; \
1277 BOOL lsbFirst; \
1278 CARD8 reserved0; \
1279 CARD8 reserved1; \
1280 CARD32 rowLength B32; \
1281 CARD32 skipRows B32; \
1282 CARD32 skipPixels B32; \
1283 CARD32 alignment B32
1284
1285#define __GLX_PIXEL_HDR_SIZE 20
1286
1287typedef struct {
1288 __GLX_PIXEL_HDR;
1289} __GLXpixelHeader;
1290
1291/*
1292** glTexImage[34]D and glTexSubImage[34]D calls
1293** all have a pixel header transmitted after the Render or RenderLarge
1294** header and before their own opcode specific headers.
1295*/
1296#define __GLX_PIXEL_3D_HDR \
1297 BOOL swapBytes; \
1298 BOOL lsbFirst; \
1299 CARD8 reserved0; \
1300 CARD8 reserved1; \
1301 CARD32 rowLength B32; \
1302 CARD32 imageHeight B32; \
1303 CARD32 imageDepth B32; \
1304 CARD32 skipRows B32; \
1305 CARD32 skipImages B32; \
1306 CARD32 skipVolumes B32; \
1307 CARD32 skipPixels B32; \
1308 CARD32 alignment B32
1309
1310#define __GLX_PIXEL_3D_HDR_SIZE 36
1311
1312/*
1313** Data that is specific to a glBitmap call. The data is sent in the
1314** following order:
1315** Render or RenderLarge header
1316** Pixel header
1317** Bitmap header
1318*/
1319#define __GLX_BITMAP_HDR \
1320 CARD32 width B32; \
1321 CARD32 height B32; \
1322 FLOAT32 xorig F32; \
1323 FLOAT32 yorig F32; \
1324 FLOAT32 xmove F32; \
1325 FLOAT32 ymove F32
1326
1327typedef struct {
1328 __GLX_RENDER_HDR;
1329 __GLX_PIXEL_HDR;
1330 __GLX_BITMAP_HDR;
1331} __GLXbitmapHeader;
1332
1333typedef struct {
1334 __GLX_RENDER_LARGE_HDR;
1335 __GLX_PIXEL_HDR;
1336 __GLX_BITMAP_HDR;
1337} __GLXbitmapLargeHeader;
1338
1339typedef struct {
1340 __GLX_PIXEL_HDR;
1341 __GLX_BITMAP_HDR;
1342} __GLXdispatchBitmapHeader;
1343
1344#define __GLX_BITMAP_HDR_SIZE 24
1345
1346#define __GLX_BITMAP_CMD_HDR_SIZE \
1347 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_BITMAP_HDR_SIZE)
1348
1349#define __GLX_BITMAP_CMD_DISPATCH_HDR_SIZE \
1350 (__GLX_PIXEL_HDR_SIZE + __GLX_BITMAP_HDR_SIZE)
1351
1352typedef struct {
1353 __GLX_RENDER_HDR;
1354 __GLX_PIXEL_HDR;
1355} __GLXpolygonStippleHeader;
1356
1357#define __GLX_POLYGONSTIPPLE_CMD_HDR_SIZE \
1358 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE)
1359
1360/*
1361** Data that is specific to a glTexImage1D or glTexImage2D call. The
1362** data is sent in the following order:
1363** Render or RenderLarge header
1364** Pixel header
1365** TexImage header
1366** When a glTexImage1D call the height field is unexamined by the server.
1367*/
1368#define __GLX_TEXIMAGE_HDR \
1369 CARD32 target B32; \
1370 CARD32 level B32; \
1371 CARD32 components B32; \
1372 CARD32 width B32; \
1373 CARD32 height B32; \
1374 CARD32 border B32; \
1375 CARD32 format B32; \
1376 CARD32 type B32
1377
1378#define __GLX_TEXIMAGE_HDR_SIZE 32
1379
1380#define __GLX_TEXIMAGE_CMD_HDR_SIZE \
1381 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_TEXIMAGE_HDR_SIZE)
1382
1383#define __GLX_TEXIMAGE_CMD_DISPATCH_HDR_SIZE \
1384 (__GLX_PIXEL_HDR_SIZE + __GLX_TEXIMAGE_HDR_SIZE)
1385
1386typedef struct {
1387 __GLX_RENDER_HDR;
1388 __GLX_PIXEL_HDR;
1389 __GLX_TEXIMAGE_HDR;
1390} __GLXtexImageHeader;
1391
1392typedef struct {
1393 __GLX_RENDER_LARGE_HDR;
1394 __GLX_PIXEL_HDR;
1395 __GLX_TEXIMAGE_HDR;
1396} __GLXtexImageLargeHeader;
1397
1398typedef struct {
1399 __GLX_PIXEL_HDR;
1400 __GLX_TEXIMAGE_HDR;
1401} __GLXdispatchTexImageHeader;
1402
1403/*
1404** Data that is specific to a glTexImage3D or glTexImage4D call. The
1405** data is sent in the following order:
1406** Render or RenderLarge header
1407** Pixel 3D header
1408** TexImage 3D header
1409** When a glTexImage3D call the size4d and woffset fields are unexamined
1410** by the server.
1411** Could be used by all TexImage commands and perhaps should be in the
1412** future.
1413*/
1414#define __GLX_TEXIMAGE_3D_HDR \
1415 CARD32 target B32; \
1416 CARD32 level B32; \
1417 CARD32 internalformat B32; \
1418 CARD32 width B32; \
1419 CARD32 height B32; \
1420 CARD32 depth B32; \
1421 CARD32 size4d B32; \
1422 CARD32 border B32; \
1423 CARD32 format B32; \
1424 CARD32 type B32; \
1425 CARD32 nullimage B32
1426
1427#define __GLX_TEXIMAGE_3D_HDR_SIZE 44
1428
1429#define __GLX_TEXIMAGE_3D_CMD_HDR_SIZE \
1430 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_3D_HDR_SIZE + \
1431 __GLX_TEXIMAGE_3D_HDR_SIZE)
1432
1433#define __GLX_TEXIMAGE_3D_CMD_DISPATCH_HDR_SIZE \
1434 (__GLX_PIXEL_3D_HDR_SIZE + __GLX_TEXIMAGE_3D_HDR_SIZE)
1435
1436typedef struct {
1437 __GLX_RENDER_HDR;
1438 __GLX_PIXEL_3D_HDR;
1439 __GLX_TEXIMAGE_3D_HDR;
1440} __GLXtexImage3DHeader;
1441
1442typedef struct {
1443 __GLX_RENDER_LARGE_HDR;
1444 __GLX_PIXEL_3D_HDR;
1445 __GLX_TEXIMAGE_3D_HDR;
1446} __GLXtexImage3DLargeHeader;
1447
1448typedef struct {
1449 __GLX_PIXEL_3D_HDR;
1450 __GLX_TEXIMAGE_3D_HDR;
1451} __GLXdispatchTexImage3DHeader;
1452
1453/*
1454** Data that is specific to a glTexSubImage1D or glTexSubImage2D call. The
1455** data is sent in the following order:
1456** Render or RenderLarge header
1457** Pixel header
1458** TexSubImage header
1459** When a glTexSubImage1D call is made, the yoffset and height fields
1460** are unexamined by the server and are considered to be padding.
1461*/
1462#define __GLX_TEXSUBIMAGE_HDR \
1463 CARD32 target B32; \
1464 CARD32 level B32; \
1465 CARD32 xoffset B32; \
1466 CARD32 yoffset B32; \
1467 CARD32 width B32; \
1468 CARD32 height B32; \
1469 CARD32 format B32; \
1470 CARD32 type B32; \
1471 CARD32 nullImage \
1472
1473#define __GLX_TEXSUBIMAGE_HDR_SIZE 36
1474
1475#define __GLX_TEXSUBIMAGE_CMD_HDR_SIZE \
1476 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_TEXSUBIMAGE_HDR_SIZE)
1477
1478#define __GLX_TEXSUBIMAGE_CMD_DISPATCH_HDR_SIZE \
1479 (__GLX_PIXEL_HDR_SIZE + __GLX_TEXSUBIMAGE_HDR_SIZE)
1480
1481typedef struct {
1482 __GLX_RENDER_HDR;
1483 __GLX_PIXEL_HDR;
1484 __GLX_TEXSUBIMAGE_HDR;
1485} __GLXtexSubImageHeader;
1486
1487typedef struct {
1488 __GLX_RENDER_LARGE_HDR;
1489 __GLX_PIXEL_HDR;
1490 __GLX_TEXSUBIMAGE_HDR;
1491} __GLXtexSubImageLargeHeader;
1492
1493typedef struct {
1494 __GLX_PIXEL_HDR;
1495 __GLX_TEXSUBIMAGE_HDR;
1496} __GLXdispatchTexSubImageHeader;
1497
1498/*
1499** Data that is specific to a glTexSubImage3D and 4D calls. The
1500** data is sent in the following order:
1501** Render or RenderLarge header
1502** Pixel 3D header
1503** TexSubImage 3D header
1504** When a glTexSubImage3D call is made, the woffset and size4d fields
1505** are unexamined by the server and are considered to be padding.
1506*/
1507#define __GLX_TEXSUBIMAGE_3D_HDR \
1508 CARD32 target B32; \
1509 CARD32 level B32; \
1510 CARD32 xoffset B32; \
1511 CARD32 yoffset B32; \
1512 CARD32 zoffset B32; \
1513 CARD32 woffset B32; \
1514 CARD32 width B32; \
1515 CARD32 height B32; \
1516 CARD32 depth B32; \
1517 CARD32 size4d B32; \
1518 CARD32 format B32; \
1519 CARD32 type B32; \
1520 CARD32 nullImage \
1521
1522#define __GLX_TEXSUBIMAGE_3D_HDR_SIZE 52
1523
1524#define __GLX_TEXSUBIMAGE_3D_CMD_HDR_SIZE \
1525 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_3D_HDR_SIZE + \
1526 __GLX_TEXSUBIMAGE_3D_HDR_SIZE)
1527
1528#define __GLX_TEXSUBIMAGE_3D_CMD_DISPATCH_HDR_SIZE \
1529 (__GLX_PIXEL_3D_HDR_SIZE + __GLX_TEXSUBIMAGE_3D_HDR_SIZE)
1530
1531typedef struct {
1532 __GLX_RENDER_HDR;
1533 __GLX_PIXEL_3D_HDR;
1534 __GLX_TEXSUBIMAGE_3D_HDR;
1535} __GLXtexSubImage3DHeader;
1536
1537typedef struct {
1538 __GLX_RENDER_LARGE_HDR;
1539 __GLX_PIXEL_3D_HDR;
1540 __GLX_TEXSUBIMAGE_3D_HDR;
1541} __GLXtexSubImage3DLargeHeader;
1542
1543typedef struct {
1544 __GLX_PIXEL_3D_HDR;
1545 __GLX_TEXSUBIMAGE_3D_HDR;
1546} __GLXdispatchTexSubImage3DHeader;
1547
1548/**
1549 * Data that is specific to a \c glCompressedTexImage1D or
1550 * \c glCompressedTexImage2D call. The data is sent in the following
1551 * order:
1552 * - Render or RenderLarge header
1553 * - CompressedTexImage header
1554 *
1555 * When a \c glCompressedTexImage1D call is made, the \c height field is
1556 * not examined by the server and is considered padding.
1557 */
1558
1559#define __GLX_COMPRESSED_TEXIMAGE_HDR \
1560 CARD32 target B32; \
1561 CARD32 level B32; \
1562 CARD32 internalFormat B32; \
1563 CARD32 width B32; \
1564 CARD32 height B32; \
1565 CARD32 border B32; \
1566 CARD32 imageSize B32
1567
1568#define __GLX_COMPRESSED_TEXIMAGE_HDR_SIZE 28
1569
1570#define __GLX_COMPRESSED_TEXIMAGE_CMD_HDR_SIZE \
1571 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXIMAGE_HDR_SIZE)
1572
1573#define __GLX_COMPRESSED_TEXIMAGE_DISPATCH_HDR_SIZE \
1574 (__GLX_COMPRESSED_TEXIMAGE_HDR_SIZE)
1575
1576typedef struct {
1577 __GLX_RENDER_HDR;
1578 __GLX_COMPRESSED_TEXIMAGE_HDR;
1579} __GLXcompressedTexImageHeader;
1580
1581typedef struct {
1582 __GLX_RENDER_LARGE_HDR;
1583 __GLX_COMPRESSED_TEXIMAGE_HDR;
1584} __GLXcompressedTexImageLargeHeader;
1585
1586typedef struct {
1587 __GLX_COMPRESSED_TEXIMAGE_HDR;
1588} __GLXdispatchCompressedTexImageHeader;
1589
1590/**
1591 * Data that is specifi to a \c glCompressedTexSubImage1D or
1592 * \c glCompressedTexSubImage2D call. The data is sent in the following
1593 * order:
1594 * - Render or RenderLarge header
1595 * - CompressedTexSubImage header
1596 *
1597 * When a \c glCompressedTexSubImage1D call is made, the \c yoffset and
1598 * \c height fields are not examined by the server and are considered padding.
1599 */
1600
1601#define __GLX_COMPRESSED_TEXSUBIMAGE_HDR \
1602 CARD32 target B32; \
1603 CARD32 level B32; \
1604 CARD32 xoffset B32; \
1605 CARD32 yoffset B32; \
1606 CARD32 width B32; \
1607 CARD32 height B32; \
1608 CARD32 format B32; \
1609 CARD32 imageSize B32
1610
1611#define __GLX_COMPRESSED_TEXSUBIMAGE_HDR_SIZE 32
1612
1613#define __GLX_COMPRESSED_TEXSUBIMAGE_CMD_HDR_SIZE \
1614 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXSUBIMAGE_HDR_SIZE)
1615
1616#define __GLX_COMPRESSED_TEXSUBIMAGE_DISPATCH_HDR_SIZE \
1617 (__GLX_COMPRESSED_TEXSUBIMAGE_HDR_SIZE)
1618
1619typedef struct {
1620 __GLX_RENDER_HDR;
1621 __GLX_COMPRESSED_TEXSUBIMAGE_HDR;
1622} __GLXcompressedTexSubImageHeader;
1623
1624typedef struct {
1625 __GLX_RENDER_LARGE_HDR;
1626 __GLX_COMPRESSED_TEXSUBIMAGE_HDR;
1627} __GLXcompressedTexSubImageLargeHeader;
1628
1629typedef struct {
1630 __GLX_COMPRESSED_TEXSUBIMAGE_HDR;
1631} __GLXdispatchCompressedTexSubImageHeader;
1632
1633/**
1634 * Data that is specific to a \c glCompressedTexImage3D call. The data is
1635 * sent in the following order:
1636 * - Render or RenderLarge header
1637 * - CompressedTexImage3D header
1638 */
1639
1640#define __GLX_COMPRESSED_TEXIMAGE_3D_HDR \
1641 CARD32 target B32; \
1642 CARD32 level B32; \
1643 CARD32 internalFormat B32; \
1644 CARD32 width B32; \
1645 CARD32 height B32; \
1646 CARD32 depth B32; \
1647 CARD32 border B32; \
1648 CARD32 imageSize B32
1649
1650#define __GLX_COMPRESSED_TEXIMAGE_3D_HDR_SIZE 32
1651
1652#define __GLX_COMPRESSED_TEXIMAGE_3D_CMD_HDR_SIZE \
1653 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXIMAGE_3D_HDR_SIZE)
1654
1655#define __GLX_COMPRESSED_TEXIMAGE_3D_DISPATCH_HDR_SIZE \
1656 (__GLX_COMPRESSED_TEXIMAGE_3D_HDR_SIZE)
1657
1658typedef struct {
1659 __GLX_RENDER_HDR;
1660 __GLX_COMPRESSED_TEXIMAGE_3D_HDR;
1661} __GLXcompressedTexImage3DHeader;
1662
1663typedef struct {
1664 __GLX_RENDER_LARGE_HDR;
1665 __GLX_COMPRESSED_TEXIMAGE_3D_HDR;
1666} __GLXcompressedTexImage3DLargeHeader;
1667
1668typedef struct {
1669 __GLX_COMPRESSED_TEXIMAGE_3D_HDR;
1670} __GLXdispatchCompressedTexImage3DHeader;
1671
1672/**
1673 * Data that is specifi to a \c glCompressedTexSubImage3D call. The data is
1674 * sent in the following order:
1675 * - Render or RenderLarge header
1676 * - CompressedTexSubImage3D header
1677 */
1678
1679#define __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR \
1680 CARD32 target B32; \
1681 CARD32 level B32; \
1682 CARD32 xoffset B32; \
1683 CARD32 yoffset B32; \
1684 CARD32 zoffset B32; \
1685 CARD32 width B32; \
1686 CARD32 height B32; \
1687 CARD32 depth B32; \
1688 CARD32 format B32; \
1689 CARD32 imageSize B32
1690
1691#define __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR_SIZE 32
1692
1693#define __GLX_COMPRESSED_TEXSUBIMAGE_3D_CMD_HDR_SIZE \
1694 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR_SIZE)
1695
1696#define __GLX_COMPRESSED_TEXSUBIMAGE_3D_DISPATCH_HDR_SIZE \
1697 (__GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR_SIZE)
1698
1699typedef struct {
1700 __GLX_RENDER_HDR;
1701 __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR;
1702} __GLXcompressedTexSubImage3DHeader;
1703
1704typedef struct {
1705 __GLX_RENDER_LARGE_HDR;
1706 __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR;
1707} __GLXcompressedTexSubImage3DLargeHeader;
1708
1709typedef struct {
1710 __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR;
1711} __GLXdispatchCompressedTexSubImage3DHeader;
1712
1713/*
1714** Data that is specific to a glDrawPixels call. The data is sent in the
1715** following order:
1716** Render or RenderLarge header
1717** Pixel header
1718** DrawPixels header
1719*/
1720#define __GLX_DRAWPIXELS_HDR \
1721 CARD32 width B32; \
1722 CARD32 height B32; \
1723 CARD32 format B32; \
1724 CARD32 type B32
1725
1726#define __GLX_DRAWPIXELS_HDR_SIZE 16
1727
1728#define __GLX_DRAWPIXELS_CMD_HDR_SIZE \
1729 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_DRAWPIXELS_HDR_SIZE)
1730
1731#define __GLX_DRAWPIXELS_CMD_DISPATCH_HDR_SIZE \
1732 (__GLX_PIXEL_HDR_SIZE + __GLX_DRAWPIXELS_HDR_SIZE)
1733
1734typedef struct {
1735 __GLX_RENDER_HDR;
1736 __GLX_PIXEL_HDR;
1737 __GLX_DRAWPIXELS_HDR;
1738} __GLXdrawPixelsHeader;
1739
1740typedef struct {
1741 __GLX_RENDER_LARGE_HDR;
1742 __GLX_PIXEL_HDR;
1743 __GLX_DRAWPIXELS_HDR;
1744} __GLXdrawPixelsLargeHeader;
1745
1746typedef struct {
1747 __GLX_PIXEL_HDR;
1748 __GLX_DRAWPIXELS_HDR;
1749} __GLXdispatchDrawPixelsHeader;
1750
1751/*
1752** Data that is specific to a glConvolutionFilter1D or glConvolutionFilter2D
1753** call. The data is sent in the following order:
1754** Render or RenderLarge header
1755** Pixel header
1756** ConvolutionFilter header
1757** When a glConvolutionFilter1D call the height field is unexamined by the server.
1758*/
1759#define __GLX_CONV_FILT_HDR \
1760 CARD32 target B32; \
1761 CARD32 internalformat B32; \
1762 CARD32 width B32; \
1763 CARD32 height B32; \
1764 CARD32 format B32; \
1765 CARD32 type B32
1766
1767#define __GLX_CONV_FILT_HDR_SIZE 24
1768
1769#define __GLX_CONV_FILT_CMD_HDR_SIZE \
1770 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_CONV_FILT_HDR_SIZE)
1771
1772#define __GLX_CONV_FILT_CMD_DISPATCH_HDR_SIZE \
1773 (__GLX_PIXEL_HDR_SIZE + __GLX_CONV_FILT_HDR_SIZE)
1774typedef struct {
1775 __GLX_RENDER_HDR;
1776 __GLX_PIXEL_HDR;
1777 __GLX_CONV_FILT_HDR;
1778} __GLXConvolutionFilterHeader;
1779
1780typedef struct {
1781 __GLX_RENDER_LARGE_HDR;
1782 __GLX_PIXEL_HDR;
1783 __GLX_CONV_FILT_HDR;
1784} __GLXConvolutionFilterLargeHeader;
1785
1786typedef struct {
1787 __GLX_PIXEL_HDR;
1788 __GLX_CONV_FILT_HDR;
1789} __GLXdispatchConvolutionFilterHeader;
1790
1791/*
1792** Data that is specific to a glDrawArraysEXT call. The data is sent in the
1793** following order:
1794** Render or RenderLarge header
1795** Draw Arrays header
1796** a variable number of Component headers
1797** vertex data for each component type
1798*/
1799
1800#define __GLX_DRAWARRAYS_HDR \
1801 CARD32 numVertexes B32; \
1802 CARD32 numComponents B32; \
1803 CARD32 primType B32
1804
1805#define __GLX_DRAWARRAYS_HDR_SIZE 12
1806
1807#define __GLX_DRAWARRAYS_CMD_HDR_SIZE \
1808 (__GLX_RENDER_HDR_SIZE + __GLX_DRAWARRAYS_HDR_SIZE)
1809
1810typedef struct {
1811 __GLX_RENDER_HDR;
1812 __GLX_DRAWARRAYS_HDR;
1813} __GLXdrawArraysHeader;
1814
1815typedef struct {
1816 __GLX_RENDER_LARGE_HDR;
1817 __GLX_DRAWARRAYS_HDR;
1818} __GLXdrawArraysLargeHeader;
1819
1820typedef struct {
1821 __GLX_DRAWARRAYS_HDR;
1822} __GLXdispatchDrawArraysHeader;
1823
1824#define __GLX_COMPONENT_HDR \
1825 CARD32 datatype B32; \
1826 INT32 numVals B32; \
1827 CARD32 component B32
1828
1829typedef struct {
1830 __GLX_COMPONENT_HDR;
1831} __GLXdispatchDrawArraysComponentHeader;
1832
1833#define __GLX_COMPONENT_HDR_SIZE 12
1834
1835/*
1836** Data that is specific to a glColorTable call
1837** The data is sent in the following order:
1838** Render or RenderLarge header
1839** Pixel header
1840** ColorTable header
1841*/
1842
1843#define __GLX_COLOR_TABLE_HDR \
1844 CARD32 target B32; \
1845 CARD32 internalformat B32; \
1846 CARD32 width B32; \
1847 CARD32 format B32; \
1848 CARD32 type B32
1849
1850#define __GLX_COLOR_TABLE_HDR_SIZE 20
1851
1852#define __GLX_COLOR_TABLE_CMD_HDR_SIZE \
1853 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_COLOR_TABLE_HDR_SIZE)
1854
1855typedef struct {
1856 __GLX_RENDER_HDR;
1857 __GLX_PIXEL_HDR;
1858 __GLX_COLOR_TABLE_HDR;
1859} __GLXColorTableHeader;
1860
1861typedef struct {
1862 __GLX_RENDER_LARGE_HDR;
1863 __GLX_PIXEL_HDR;
1864 __GLX_COLOR_TABLE_HDR;
1865} __GLXColorTableLargeHeader;
1866
1867typedef struct {
1868 __GLX_PIXEL_HDR;
1869 __GLX_COLOR_TABLE_HDR;
1870} __GLXdispatchColorTableHeader;
1871
1872/*
1873** Data that is specific to a glColorSubTable call
1874** The data is sent in the following order:
1875** Render or RenderLarge header
1876** Pixel header
1877** ColorTable header
1878*/
1879
1880#define __GLX_COLOR_SUBTABLE_HDR \
1881 CARD32 target B32; \
1882 CARD32 start B32; \
1883 CARD32 count B32; \
1884 CARD32 format B32; \
1885 CARD32 type B32
1886
1887#define __GLX_COLOR_SUBTABLE_HDR_SIZE 20
1888
1889#define __GLX_COLOR_SUBTABLE_CMD_HDR_SIZE \
1890 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + \
1891 __GLX_COLOR_SUBTABLE_HDR_SIZE)
1892
1893typedef struct {
1894 __GLX_RENDER_HDR;
1895 __GLX_PIXEL_HDR;
1896 __GLX_COLOR_SUBTABLE_HDR;
1897} __GLXColorSubTableHeader;
1898
1899typedef struct {
1900 __GLX_RENDER_LARGE_HDR;
1901 __GLX_PIXEL_HDR;
1902 __GLX_COLOR_SUBTABLE_HDR;
1903} __GLXColorSubTableLargeHeader;
1904
1905typedef struct {
1906 __GLX_PIXEL_HDR;
1907 __GLX_COLOR_SUBTABLE_HDR;
1908} __GLXdispatchColorSubTableHeader;
1909
1910#define GLX_WINDOW_TYPE 1
1911#define GLX_PIXMAP_TYPE 2
1912#define GLX_VIDEO_SOURCE_TYPE 3
1913#define GLX_PBUFFER_TYPE 4
1914/* 5 is for DM_PBUFFER */
1915#define GLX_GLXWINDOW_TYPE 6
1916
1917/*****************************************************************************/
1918
1919/*
1920** Restore these definitions back to the typedefs in glx.h
1921*/
1922#undef GLXContextID
1923#undef GLXPixmap
1924#undef GLXDrawable
1925#undef GLXPbuffer
1926#undef GLXWindow
1927#undef GLXFBConfigID
1928#undef GLXFBConfigIDSGIX
1929#undef GLXPbufferSGIX
1930
1931
1932/* Opcodes for GLX commands */
1933
1934#define X_GLXRender 1
1935#define X_GLXRenderLarge 2
1936#define X_GLXCreateContext 3
1937#define X_GLXDestroyContext 4
1938#define X_GLXMakeCurrent 5
1939#define X_GLXIsDirect 6
1940#define X_GLXQueryVersion 7
1941#define X_GLXWaitGL 8
1942#define X_GLXWaitX 9
1943#define X_GLXCopyContext 10
1944#define X_GLXSwapBuffers 11
1945#define X_GLXUseXFont 12
1946#define X_GLXCreateGLXPixmap 13
1947#define X_GLXGetVisualConfigs 14
1948#define X_GLXDestroyGLXPixmap 15
1949#define X_GLXVendorPrivate 16
1950#define X_GLXVendorPrivateWithReply 17
1951#define X_GLXQueryExtensionsString 18
1952#define X_GLXQueryServerString 19
1953#define X_GLXClientInfo 20
1954#define X_GLXGetFBConfigs 21
1955#define X_GLXCreatePixmap 22
1956#define X_GLXDestroyPixmap 23
1957#define X_GLXCreateNewContext 24
1958#define X_GLXQueryContext 25
1959#define X_GLXMakeContextCurrent 26
1960#define X_GLXCreatePbuffer 27
1961#define X_GLXDestroyPbuffer 28
1962#define X_GLXGetDrawableAttributes 29
1963#define X_GLXChangeDrawableAttributes 30
1964#define X_GLXCreateWindow 31
1965#define X_GLXDestroyWindow 32
1966
1967
1968/* Opcodes for single commands (part of GLX command space) */
1969
1970#define X_GLsop_NewList 101
1971#define X_GLsop_EndList 102
1972#define X_GLsop_DeleteLists 103
1973#define X_GLsop_GenLists 104
1974#define X_GLsop_FeedbackBuffer 105
1975#define X_GLsop_SelectBuffer 106
1976#define X_GLsop_RenderMode 107
1977#define X_GLsop_Finish 108
1978#define X_GLsop_Flush 142
1979#define X_GLsop_PixelStoref 109
1980#define X_GLsop_PixelStorei 110
1981#define X_GLsop_ReadPixels 111
1982#define X_GLsop_GetBooleanv 112
1983#define X_GLsop_GetClipPlane 113
1984#define X_GLsop_GetDoublev 114
1985#define X_GLsop_GetError 115
1986#define X_GLsop_GetFloatv 116
1987#define X_GLsop_GetIntegerv 117
1988#define X_GLsop_GetLightfv 118
1989#define X_GLsop_GetLightiv 119
1990#define X_GLsop_GetMapdv 120
1991#define X_GLsop_GetMapfv 121
1992#define X_GLsop_GetMapiv 122
1993#define X_GLsop_GetMaterialfv 123
1994#define X_GLsop_GetMaterialiv 124
1995#define X_GLsop_GetPixelMapfv 125
1996#define X_GLsop_GetPixelMapuiv 126
1997#define X_GLsop_GetPixelMapusv 127
1998#define X_GLsop_GetPolygonStipple 128
1999#define X_GLsop_GetString 129
2000#define X_GLsop_GetTexEnvfv 130
2001#define X_GLsop_GetTexEnviv 131
2002#define X_GLsop_GetTexGendv 132
2003#define X_GLsop_GetTexGenfv 133
2004#define X_GLsop_GetTexGeniv 134
2005#define X_GLsop_GetTexImage 135
2006#define X_GLsop_GetTexParameterfv 136
2007#define X_GLsop_GetTexParameteriv 137
2008#define X_GLsop_GetTexLevelParameterfv 138
2009#define X_GLsop_GetTexLevelParameteriv 139
2010#define X_GLsop_IsEnabled 140
2011#define X_GLsop_IsList 141
2012#define X_GLsop_AreTexturesResident 143
2013#define X_GLsop_DeleteTextures 144
2014#define X_GLsop_GenTextures 145
2015#define X_GLsop_IsTexture 146
2016#define X_GLsop_GetColorTable 147
2017#define X_GLsop_GetColorTableParameterfv 148
2018#define X_GLsop_GetColorTableParameteriv 149
2019#define X_GLsop_GetConvolutionFilter 150
2020#define X_GLsop_GetConvolutionParameterfv 151
2021#define X_GLsop_GetConvolutionParameteriv 152
2022#define X_GLsop_GetSeparableFilter 153
2023#define X_GLsop_GetHistogram 154
2024#define X_GLsop_GetHistogramParameterfv 155
2025#define X_GLsop_GetHistogramParameteriv 156
2026#define X_GLsop_GetMinmax 157
2027#define X_GLsop_GetMinmaxParameterfv 158
2028#define X_GLsop_GetMinmaxParameteriv 159
2029#define X_GLsop_GetCompressedTexImage 160
2030
2031
2032/* Opcodes for rendering commands */
2033
2034#define X_GLrop_CallList 1
2035#define X_GLrop_CallLists 2
2036#define X_GLrop_ListBase 3
2037#define X_GLrop_Begin 4
2038#define X_GLrop_Bitmap 5
2039#define X_GLrop_Color3bv 6
2040#define X_GLrop_Color3dv 7
2041#define X_GLrop_Color3fv 8
2042#define X_GLrop_Color3iv 9
2043#define X_GLrop_Color3sv 10
2044#define X_GLrop_Color3ubv 11
2045#define X_GLrop_Color3uiv 12
2046#define X_GLrop_Color3usv 13
2047#define X_GLrop_Color4bv 14
2048#define X_GLrop_Color4dv 15
2049#define X_GLrop_Color4fv 16
2050#define X_GLrop_Color4iv 17
2051#define X_GLrop_Color4sv 18
2052#define X_GLrop_Color4ubv 19
2053#define X_GLrop_Color4uiv 20
2054#define X_GLrop_Color4usv 21
2055#define X_GLrop_EdgeFlagv 22
2056#define X_GLrop_End 23
2057#define X_GLrop_Indexdv 24
2058#define X_GLrop_Indexfv 25
2059#define X_GLrop_Indexiv 26
2060#define X_GLrop_Indexsv 27
2061#define X_GLrop_Normal3bv 28
2062#define X_GLrop_Normal3dv 29
2063#define X_GLrop_Normal3fv 30
2064#define X_GLrop_Normal3iv 31
2065#define X_GLrop_Normal3sv 32
2066#define X_GLrop_RasterPos2dv 33
2067#define X_GLrop_RasterPos2fv 34
2068#define X_GLrop_RasterPos2iv 35
2069#define X_GLrop_RasterPos2sv 36
2070#define X_GLrop_RasterPos3dv 37
2071#define X_GLrop_RasterPos3fv 38
2072#define X_GLrop_RasterPos3iv 39
2073#define X_GLrop_RasterPos3sv 40
2074#define X_GLrop_RasterPos4dv 41
2075#define X_GLrop_RasterPos4fv 42
2076#define X_GLrop_RasterPos4iv 43
2077#define X_GLrop_RasterPos4sv 44
2078#define X_GLrop_Rectdv 45
2079#define X_GLrop_Rectfv 46
2080#define X_GLrop_Rectiv 47
2081#define X_GLrop_Rectsv 48
2082#define X_GLrop_TexCoord1dv 49
2083#define X_GLrop_TexCoord1fv 50
2084#define X_GLrop_TexCoord1iv 51
2085#define X_GLrop_TexCoord1sv 52
2086#define X_GLrop_TexCoord2dv 53
2087#define X_GLrop_TexCoord2fv 54
2088#define X_GLrop_TexCoord2iv 55
2089#define X_GLrop_TexCoord2sv 56
2090#define X_GLrop_TexCoord3dv 57
2091#define X_GLrop_TexCoord3fv 58
2092#define X_GLrop_TexCoord3iv 59
2093#define X_GLrop_TexCoord3sv 60
2094#define X_GLrop_TexCoord4dv 61
2095#define X_GLrop_TexCoord4fv 62
2096#define X_GLrop_TexCoord4iv 63
2097#define X_GLrop_TexCoord4sv 64
2098#define X_GLrop_Vertex2dv 65
2099#define X_GLrop_Vertex2fv 66
2100#define X_GLrop_Vertex2iv 67
2101#define X_GLrop_Vertex2sv 68
2102#define X_GLrop_Vertex3dv 69
2103#define X_GLrop_Vertex3fv 70
2104#define X_GLrop_Vertex3iv 71
2105#define X_GLrop_Vertex3sv 72
2106#define X_GLrop_Vertex4dv 73
2107#define X_GLrop_Vertex4fv 74
2108#define X_GLrop_Vertex4iv 75
2109#define X_GLrop_Vertex4sv 76
2110#define X_GLrop_ClipPlane 77
2111#define X_GLrop_ColorMaterial 78
2112#define X_GLrop_CullFace 79
2113#define X_GLrop_Fogf 80
2114#define X_GLrop_Fogfv 81
2115#define X_GLrop_Fogi 82
2116#define X_GLrop_Fogiv 83
2117#define X_GLrop_FrontFace 84
2118#define X_GLrop_Hint 85
2119#define X_GLrop_Lightf 86
2120#define X_GLrop_Lightfv 87
2121#define X_GLrop_Lighti 88
2122#define X_GLrop_Lightiv 89
2123#define X_GLrop_LightModelf 90
2124#define X_GLrop_LightModelfv 91
2125#define X_GLrop_LightModeli 92
2126#define X_GLrop_LightModeliv 93
2127#define X_GLrop_LineStipple 94
2128#define X_GLrop_LineWidth 95
2129#define X_GLrop_Materialf 96
2130#define X_GLrop_Materialfv 97
2131#define X_GLrop_Materiali 98
2132#define X_GLrop_Materialiv 99
2133#define X_GLrop_PointSize 100
2134#define X_GLrop_PolygonMode 101
2135#define X_GLrop_PolygonStipple 102
2136#define X_GLrop_Scissor 103
2137#define X_GLrop_ShadeModel 104
2138#define X_GLrop_TexParameterf 105
2139#define X_GLrop_TexParameterfv 106
2140#define X_GLrop_TexParameteri 107
2141#define X_GLrop_TexParameteriv 108
2142#define X_GLrop_TexImage1D 109
2143#define X_GLrop_TexImage2D 110
2144#define X_GLrop_TexEnvf 111
2145#define X_GLrop_TexEnvfv 112
2146#define X_GLrop_TexEnvi 113
2147#define X_GLrop_TexEnviv 114
2148#define X_GLrop_TexGend 115
2149#define X_GLrop_TexGendv 116
2150#define X_GLrop_TexGenf 117
2151#define X_GLrop_TexGenfv 118
2152#define X_GLrop_TexGeni 119
2153#define X_GLrop_TexGeniv 120
2154#define X_GLrop_InitNames 121
2155#define X_GLrop_LoadName 122
2156#define X_GLrop_PassThrough 123
2157#define X_GLrop_PopName 124
2158#define X_GLrop_PushName 125
2159#define X_GLrop_DrawBuffer 126
2160#define X_GLrop_Clear 127
2161#define X_GLrop_ClearAccum 128
2162#define X_GLrop_ClearIndex 129
2163#define X_GLrop_ClearColor 130
2164#define X_GLrop_ClearStencil 131
2165#define X_GLrop_ClearDepth 132
2166#define X_GLrop_StencilMask 133
2167#define X_GLrop_ColorMask 134
2168#define X_GLrop_DepthMask 135
2169#define X_GLrop_IndexMask 136
2170#define X_GLrop_Accum 137
2171#define X_GLrop_Disable 138
2172#define X_GLrop_Enable 139
2173#define X_GLrop_PopAttrib 141
2174#define X_GLrop_PushAttrib 142
2175#define X_GLrop_Map1d 143
2176#define X_GLrop_Map1f 144
2177#define X_GLrop_Map2d 145
2178#define X_GLrop_Map2f 146
2179#define X_GLrop_MapGrid1d 147
2180#define X_GLrop_MapGrid1f 148
2181#define X_GLrop_MapGrid2d 149
2182#define X_GLrop_MapGrid2f 150
2183#define X_GLrop_EvalCoord1dv 151
2184#define X_GLrop_EvalCoord1fv 152
2185#define X_GLrop_EvalCoord2dv 153
2186#define X_GLrop_EvalCoord2fv 154
2187#define X_GLrop_EvalMesh1 155
2188#define X_GLrop_EvalPoint1 156
2189#define X_GLrop_EvalMesh2 157
2190#define X_GLrop_EvalPoint2 158
2191#define X_GLrop_AlphaFunc 159
2192#define X_GLrop_BlendFunc 160
2193#define X_GLrop_LogicOp 161
2194#define X_GLrop_StencilFunc 162
2195#define X_GLrop_StencilOp 163
2196#define X_GLrop_DepthFunc 164
2197#define X_GLrop_PixelZoom 165
2198#define X_GLrop_PixelTransferf 166
2199#define X_GLrop_PixelTransferi 167
2200#define X_GLrop_PixelMapfv 168
2201#define X_GLrop_PixelMapuiv 169
2202#define X_GLrop_PixelMapusv 170
2203#define X_GLrop_ReadBuffer 171
2204#define X_GLrop_CopyPixels 172
2205#define X_GLrop_DrawPixels 173
2206#define X_GLrop_DepthRange 174
2207#define X_GLrop_Frustum 175
2208#define X_GLrop_LoadIdentity 176
2209#define X_GLrop_LoadMatrixf 177
2210#define X_GLrop_LoadMatrixd 178
2211#define X_GLrop_MatrixMode 179
2212#define X_GLrop_MultMatrixf 180
2213#define X_GLrop_MultMatrixd 181
2214#define X_GLrop_Ortho 182
2215#define X_GLrop_PopMatrix 183
2216#define X_GLrop_PushMatrix 184
2217#define X_GLrop_Rotated 185
2218#define X_GLrop_Rotatef 186
2219#define X_GLrop_Scaled 187
2220#define X_GLrop_Scalef 188
2221#define X_GLrop_Translated 189
2222#define X_GLrop_Translatef 190
2223#define X_GLrop_Viewport 191
2224#define X_GLrop_DrawArrays 193
2225#define X_GLrop_PolygonOffset 192
2226#define X_GLrop_CopyTexImage1D 4119
2227#define X_GLrop_CopyTexImage2D 4120
2228#define X_GLrop_CopyTexSubImage1D 4121
2229#define X_GLrop_CopyTexSubImage2D 4122
2230#define X_GLrop_TexSubImage1D 4099
2231#define X_GLrop_TexSubImage2D 4100
2232#define X_GLrop_BindTexture 4117
2233#define X_GLrop_PrioritizeTextures 4118
2234#define X_GLrop_Indexubv 194
2235#define X_GLrop_BlendColor 4096
2236#define X_GLrop_BlendEquation 4097
2237#define X_GLrop_ColorTable 2053
2238#define X_GLrop_ColorTableParameterfv 2054
2239#define X_GLrop_ColorTableParameteriv 2055
2240#define X_GLrop_CopyColorTable 2056
2241#define X_GLrop_ColorSubTable 195
2242#define X_GLrop_CopyColorSubTable 196
2243#define X_GLrop_ConvolutionFilter1D 4101
2244#define X_GLrop_ConvolutionFilter2D 4102
2245#define X_GLrop_ConvolutionParameterf 4103
2246#define X_GLrop_ConvolutionParameterfv 4104
2247#define X_GLrop_ConvolutionParameteri 4105
2248#define X_GLrop_ConvolutionParameteriv 4106
2249#define X_GLrop_CopyConvolutionFilter1D 4107
2250#define X_GLrop_CopyConvolutionFilter2D 4108
2251#define X_GLrop_SeparableFilter2D 4109
2252#define X_GLrop_Histogram 4110
2253#define X_GLrop_Minmax 4111
2254#define X_GLrop_ResetHistogram 4112
2255#define X_GLrop_ResetMinmax 4113
2256#define X_GLrop_TexImage3D 4114
2257#define X_GLrop_TexSubImage3D 4115
2258#define X_GLrop_CopyTexSubImage3D 4123
2259#define X_GLrop_DrawArraysEXT 4116
2260
2261/* Added for core GL version 1.3 */
2262
2263#define X_GLrop_ActiveTextureARB 197
2264#define X_GLrop_MultiTexCoord1dvARB 198
2265#define X_GLrop_MultiTexCoord1fvARB 199
2266#define X_GLrop_MultiTexCoord1ivARB 200
2267#define X_GLrop_MultiTexCoord1svARB 201
2268#define X_GLrop_MultiTexCoord2dvARB 202
2269#define X_GLrop_MultiTexCoord2fvARB 203
2270#define X_GLrop_MultiTexCoord2ivARB 204
2271#define X_GLrop_MultiTexCoord2svARB 205
2272#define X_GLrop_MultiTexCoord3dvARB 206
2273#define X_GLrop_MultiTexCoord3fvARB 207
2274#define X_GLrop_MultiTexCoord3ivARB 208
2275#define X_GLrop_MultiTexCoord3svARB 209
2276#define X_GLrop_MultiTexCoord4dvARB 210
2277#define X_GLrop_MultiTexCoord4fvARB 211
2278#define X_GLrop_MultiTexCoord4ivARB 212
2279#define X_GLrop_MultiTexCoord4svARB 213
2280#define X_GLrop_CompressedTexImage1D 214
2281#define X_GLrop_CompressedTexImage2D 215
2282#define X_GLrop_CompressedTexImage3D 216
2283#define X_GLrop_CompressedTexSubImage1D 217
2284#define X_GLrop_CompressedTexSubImage2D 218
2285#define X_GLrop_CompressedTexSubImage3D 219
2286#define X_GLrop_SampleCoverageARB 229
2287
2288/* Added for core GL version 1.4 */
2289
2290#define X_GLrop_WindowPos3fARB 230
2291#define X_GLrop_FogCoordfv 4124
2292#define X_GLrop_FogCoorddv 4125
2293#define X_GLrop_PointParameterfARB 2065
2294#define X_GLrop_PointParameterfvARB 2066
2295#define X_GLrop_SecondaryColor3bv 4126
2296#define X_GLrop_SecondaryColor3sv 4127
2297#define X_GLrop_SecondaryColor3iv 4128
2298#define X_GLrop_SecondaryColor3fv 4129
2299#define X_GLrop_SecondaryColor3dv 4130
2300#define X_GLrop_SecondaryColor3ubv 4131
2301#define X_GLrop_SecondaryColor3usv 4132
2302#define X_GLrop_SecondaryColor3uiv 4133
2303#define X_GLrop_BlendFuncSeparate 4134
2304#define X_GLrop_PointParameteri 4221
2305#define X_GLrop_PointParameteriv 4222
2306
2307/* Added for core GL version 1.5 */
2308/* XXX opcodes not defined in the spec */
2309
2310/* Opcodes for Vendor Private commands */
2311
2312
2313#define X_GLvop_GetConvolutionFilterEXT 1
2314#define X_GLvop_GetConvolutionParameterfvEXT 2
2315#define X_GLvop_GetConvolutionParameterivEXT 3
2316#define X_GLvop_GetSeparableFilterEXT 4
2317#define X_GLvop_GetHistogramEXT 5
2318#define X_GLvop_GetHistogramParameterfvEXT 6
2319#define X_GLvop_GetHistogramParameterivEXT 7
2320#define X_GLvop_GetMinmaxEXT 8
2321#define X_GLvop_GetMinmaxParameterfvEXT 9
2322#define X_GLvop_GetMinmaxParameterivEXT 10
2323#define X_GLvop_AreTexturesResidentEXT 11
2324#define X_GLvop_DeleteTexturesEXT 12
2325#define X_GLvop_GenTexturesEXT 13
2326#define X_GLvop_IsTextureEXT 14
2327#define X_GLvop_GetCombinerInputParameterfvNV 1270
2328#define X_GLvop_GetCombinerInputParameterivNV 1271
2329#define X_GLvop_GetCombinerOutputParameterfvNV 1272
2330#define X_GLvop_GetCombinerOutputParameterivNV 1273
2331#define X_GLvop_GetFinalCombinerOutputParameterfvNV 1274
2332#define X_GLvop_GetFinalCombinerOutputParameterivNV 1275
2333#define X_GLvop_DeleteFenceNV 1276
2334#define X_GLvop_GenFencesNV 1277
2335#define X_GLvop_IsFenceNV 1278
2336#define X_GLvop_TestFenceNV 1279
2337#define X_GLvop_GetFenceivNV 1280
2338#define X_GLvop_AreProgramsResidentNV 1293
2339#define X_GLvop_DeleteProgramARB 1294
2340#define X_GLvop_GenProgramsARB 1295
2341#define X_GLvop_GetProgramEnvParameterfvARB 1296
2342#define X_GLvop_GetProgramEnvParameterdvARB 1297
2343#define X_GLvop_GetProgramEnvParameterivNV 1298
2344#define X_GLvop_GetProgramStringNV 1299
2345#define X_GLvop_GetTrackMatrixivNV 1300
2346#define X_GLvop_GetVertexAttribdvARB 1301
2347#define X_GLvop_GetVertexAttribfvARB 1302
2348#define X_GLvop_GetVertexAttribivARB 1303
2349#define X_GLvop_IsProgramARB 1304
2350#define X_GLvop_GetProgramLocalParameterfvARB 1305
2351#define X_GLvop_GetProgramLocalParameterdvARB 1306
2352#define X_GLvop_GetProgramivARB 1307
2353#define X_GLvop_GetProgramStringARB 1308
2354#define X_GLvop_GetProgramNamedParameter4fvNV 1310
2355#define X_GLvop_GetProgramNamedParameter4dvNV 1311
2356#define X_GLvop_SampleMaskSGIS 2048
2357#define X_GLvop_SamplePatternSGIS 2049
2358#define X_GLvop_GetDetailTexFuncSGIS 4096
2359#define X_GLvop_GetSharpenTexFuncSGIS 4097
2360#define X_GLvop_GetColorTableSGI 4098
2361#define X_GLvop_GetColorTableParameterfvSGI 4099
2362#define X_GLvop_GetColorTableParameterivSGI 4100
2363#define X_GLvop_GetTexFilterFuncSGIS 4101
2364#define X_GLvop_GetInstrumentsSGIX 4102
2365#define X_GLvop_InstrumentsBufferSGIX 4103
2366#define X_GLvop_PollInstrumentsSGIX 4104
2367#define X_GLvop_FlushRasterSGIX 4105
2368
2369/* Opcodes for GLX vendor private commands */
2370
2371#define X_GLXvop_QueryContextInfoEXT 1024
2372#define X_GLXvop_BindTexImageEXT 1330
2373#define X_GLXvop_ReleaseTexImageEXT 1331
2374#define X_GLXvop_SwapIntervalSGI 65536
2375#define X_GLXvop_MakeCurrentReadSGI 65537
2376#define X_GLXvop_CreateGLXVideoSourceSGIX 65538
2377#define X_GLXvop_DestroyGLXVideoSourceSGIX 65539
2378#define X_GLXvop_GetFBConfigsSGIX 65540
2379#define X_GLXvop_CreateContextWithConfigSGIX 65541
2380#define X_GLXvop_CreateGLXPixmapWithConfigSGIX 65542
2381#define X_GLXvop_CreateGLXPbufferSGIX 65543
2382#define X_GLXvop_DestroyGLXPbufferSGIX 65544
2383#define X_GLXvop_ChangeDrawableAttributesSGIX 65545
2384#define X_GLXvop_GetDrawableAttributesSGIX 65546
2385#define X_GLXvop_JoinSwapGroupSGIX 65547
2386#define X_GLXvop_BindSwapBarrierSGIX 65548
2387#define X_GLXvop_QueryMaxSwapBarriersSGIX 65549
2388#define X_GLXvop_QueryHyperpipeNetworkSGIX 65550
2389#define X_GLXvop_QueryHyperpipeConfigSGIX 65551
2390#define X_GLXvop_HyperpipeConfigSGIX 65552
2391#define X_GLXvop_DestroyHyperpipeConfigSGIX 65553
2392
2393/* ARB extension opcodes */
2394
2395/* 1. GL_ARB_multitexture - see GL 1.2 opcodes */
2396/* 5. GL_ARB_multisample - see GL 1.3 opcodes */
2397/* 12. GL_ARB_texture_compression - see GL 1.3 opcodes */
2398/* 14. GL_ARB_point_parameters - see GL 1.4 opcodees */
2399
2400/* 15. GL_ARB_vertex_blend */
2401#define X_GLrop_WeightbvARB 220
2402#define X_GLrop_WeightubvARB 221
2403#define X_GLrop_WeightsvARB 222
2404#define X_GLrop_WeightusvARB 223
2405#define X_GLrop_WeightivARB 224
2406#define X_GLrop_WeightuivARB 225
2407#define X_GLrop_VertexBlendARB 226
2408#define X_GLrop_WeightfvARB 227
2409#define X_GLrop_WeightdvARB 228
2410
2411/* 16. GL_ARB_matrix_palette */
2412/* XXX opcodes not defined in the spec */
2413
2414/* 25. GL_ARB_window_pos - see GL 1.4 opcodes */
2415
2416/* 26. GL_ARB_vertex_program */
2417#define X_GLrop_BindProgramARB 4180
2418#define X_GLrop_ProgramEnvParameter4fvARB 4184
2419#define X_GLrop_ProgramEnvParameter4dvARB 4185
2420#define X_GLrop_VertexAttrib1svARB 4189
2421#define X_GLrop_VertexAttrib2svARB 4190
2422#define X_GLrop_VertexAttrib3svARB 4191
2423#define X_GLrop_VertexAttrib4svARB 4192
2424#define X_GLrop_VertexAttrib1fvARB 4193
2425#define X_GLrop_VertexAttrib2fvARB 4194
2426#define X_GLrop_VertexAttrib3fvARB 4195
2427#define X_GLrop_VertexAttrib4fvARB 4196
2428#define X_GLrop_VertexAttrib1dvARB 4197
2429#define X_GLrop_VertexAttrib2dvARB 4198
2430#define X_GLrop_VertexAttrib3dvARB 4199
2431#define X_GLrop_ProgramLocalParameter4fvARB 4215
2432#define X_GLrop_ProgramLocalParameter4dvARB 4216
2433#define X_GLrop_ProgramStringARB 4217
2434#define X_GLrop_VertexAttrib4dvARB 4200
2435#define X_GLrop_VertexAttrib4NubvARB 4201
2436#define X_GLrop_VertexAttrib4bvARB 4230
2437#define X_GLrop_VertexAttrib4ivARB 4231
2438#define X_GLrop_VertexAttrib4ubvARB 4232
2439#define X_GLrop_VertexAttrib4usvARB 4233
2440#define X_GLrop_VertexAttrib4uivARB 4234
2441#define X_GLrop_VertexAttrib4NbvARB 4235
2442#define X_GLrop_VertexAttrib4NsvARB 4236
2443#define X_GLrop_VertexAttrib4NivARB 4237
2444#define X_GLrop_VertexAttrib4NusvARB 4238
2445#define X_GLrop_VertexAttrib4NuivARB 4239
2446
2447/* 27. GL_ARB_fragment_program - see GL_ARB_vertex_program opcodes */
2448
2449/* 29. GL_ARB_occlusion_query */
2450/* XXX opcodes not defined in the spec */
2451
2452
2453/* New extension opcodes */
2454
2455/* 145. GL_EXT_secondary_color - see GL 1.4 opcodes */
2456
2457/* 188. GL_EXT_vertex_weighting */
2458#define X_GLrop_VertexWeightfvEXT 4135
2459
2460/* 191. GL_NV_register_combiners */
2461#define X_GLrop_CombinerParameterfNV 4136
2462#define X_GLrop_CombinerParameterfvNV 4137
2463#define X_GLrop_CombinerParameteriNV 4138
2464#define X_GLrop_CombinerParameterivNV 4139
2465#define X_GLrop_CombinerInputNV 4140
2466#define X_GLrop_CombinerOutputNV 4141
2467#define X_GLrop_FinalCombinerInputNV 4142
2468
2469/* 222. GL_NV_fence */
2470#define X_GLrop_SetFenceNV 4143
2471#define X_GLrop_FinishFenceNV 4144
2472
2473/* 227. GL_NV_register_combiners2 */
2474/* XXX opcodes not defined in the spec */
2475
2476/* 233. GL_NV_vertex_program - see also GL_ARB_vertex_program opcodes */
2477#define X_GLrop_ExecuteProgramNV 4181
2478#define X_GLrop_RequestResidentProgramsNV 4182
2479#define X_GLrop_LoadProgamNV 4183
2480#define X_GLrop_ProgramParameters4fvNV 4186
2481#define X_GLrop_ProgramParameters4dvNV 4187
2482#define X_GLrop_TrackMatrixNV 4188
2483#define X_GLrop_VertexAttribs1svNV 4202
2484#define X_GLrop_VertexAttribs2svNV 4203
2485#define X_GLrop_VertexAttribs3svNV 4204
2486#define X_GLrop_VertexAttribs4svNV 4205
2487#define X_GLrop_VertexAttribs1fvNV 4206
2488#define X_GLrop_VertexAttribs2fvNV 4207
2489#define X_GLrop_VertexAttribs3fvNV 4208
2490#define X_GLrop_VertexAttribs4fvNV 4209
2491#define X_GLrop_VertexAttribs1dvNV 4210
2492#define X_GLrop_VertexAttribs2dvNV 4211
2493#define X_GLrop_VertexAttribs3dvNV 4212
2494#define X_GLrop_VertexAttribs4dvNV 4213
2495#define X_GLrop_VertexAttribs4ubvNV 4214
2496
2497/* 261. GL_NV_occlusion_query */
2498/* XXX opcodes not defined in the spec */
2499
2500/* 262. GL_NV_point_sprite - see GL 1.4 opcodes */
2501
2502/* 268. GL_EXT_stencil_two_side */
2503#define X_GLrop_ActiveStencilFaceEXT 4220
2504
2505/* 282. GL_NV_fragment_program - see also GL_NV_vertex_program and GL_ARB_vertex_program opcodes */
2506#define X_GLrop_ProgramNamedParameter4fvNV 4218
2507#define X_GLrop_ProgramNamedParameter4dvNV 4219
2508
2509/* 285. GL_NV_primitive_restart */
2510/* XXX opcodes not defined in the spec */
2511
2512/* 297. GL_EXT_depth_bounds_test */
2513#define X_GLrop_DepthBoundsEXT 4229
2514
2515/* 299. GL_EXT_blend_equation_separate */
2516#define X_GLrop_BlendEquationSeparateEXT 4228
2517
2518/* 310. GL_EXT_framebuffer_object */
2519#define X_GLvop_IsRenderbufferEXT 1422
2520#define X_GLvop_GenRenderbuffersEXT 1423
2521#define X_GLvop_GetRenderbufferParameterivEXT 1424
2522#define X_GLvop_IsFramebufferEXT 1425
2523#define X_GLvop_GenFramebuffersEXT 1426
2524#define X_GLvop_CheckFramebufferStatusEXT 1427
2525#define X_GLvop_GetFramebufferAttachmentParameterivEXT 1428
2526
2527#endif /* _GLX_glxproto_h_ */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette