![]() |
TerraLib 4.1
|
00001 #ifndef _GLX_glxproto_h_ 00002 #define _GLX_glxproto_h_ 00003 00004 /* $XFree86: xc/include/GL/glxproto.h,v 1.6 2003/09/28 20:14:58 alanh Exp $ */ 00005 /* 00006 ** License Applicability. Except to the extent portions of this file are 00007 ** made subject to an alternative license as permitted in the SGI Free 00008 ** Software License B, Version 1.1 (the "License"), the contents of this 00009 ** file are subject only to the provisions of the License. You may not use 00010 ** this file except in compliance with the License. You may obtain a copy 00011 ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 00012 ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: 00013 ** 00014 ** http://oss.sgi.com/projects/FreeB 00015 ** 00016 ** Note that, as provided in the License, the Software is distributed on an 00017 ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS 00018 ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND 00019 ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A 00020 ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT. 00021 ** 00022 ** Original Code. The Original Code is: OpenGL Sample Implementation, 00023 ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, 00024 ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. 00025 ** Copyright in any portions created by third parties is as indicated 00026 ** elsewhere herein. All Rights Reserved. 00027 ** 00028 ** Additional Notice Provisions: The application programming interfaces 00029 ** established by SGI in conjunction with the Original Code are The 00030 ** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released 00031 ** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version 00032 ** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X 00033 ** Window System(R) (Version 1.3), released October 19, 1998. This software 00034 ** was created using the OpenGL(R) version 1.2.1 Sample Implementation 00035 ** published by SGI, but has not been independently verified as being 00036 ** compliant with the OpenGL(R) version 1.2.1 Specification. 00037 */ 00038 00039 #include <GL/glxmd.h> 00040 00041 /*****************************************************************************/ 00042 00043 /* 00044 ** Errrors. 00045 */ 00046 #define GLXBadContext 0 00047 #define GLXBadContextState 1 00048 #define GLXBadDrawable 2 00049 #define GLXBadPixmap 3 00050 #define GLXBadContextTag 4 00051 #define GLXBadCurrentWindow 5 00052 #define GLXBadRenderRequest 6 00053 #define GLXBadLargeRequest 7 00054 #define GLXUnsupportedPrivateRequest 8 00055 #define GLXBadFBConfig 9 00056 #define GLXBadPbuffer 10 00057 #define GLXBadCurrentDrawable 11 00058 #define GLXBadWindow 12 00059 00060 #define __GLX_NUMBER_ERRORS 12 00061 00062 /* 00063 ** Events. 00064 ** __GLX_NUMBER_EVENTS is set to 17 to account for the BufferClobberSGIX 00065 ** event - this helps initialization if the server supports the pbuffer 00066 ** extension and the client doesn't. 00067 */ 00068 #define GLX_PbufferClobber 0 00069 00070 #define __GLX_NUMBER_EVENTS 17 00071 00072 #define GLX_EXTENSION_NAME "GLX" 00073 #define GLX_EXTENSION_ALIAS "SGI-GLX" 00074 00075 #define __GLX_MAX_CONTEXT_PROPS 3 00076 00077 #ifndef GLX_VENDOR 00078 #define GLX_VENDOR 0x1 00079 #endif 00080 #ifndef GLX_VERSION 00081 #define GLX_VERSION 0x2 00082 #endif 00083 #ifndef GLX_EXTENSIONS 00084 #define GLX_EXTENSIONS 0x3 00085 #endif 00086 00087 /*****************************************************************************/ 00088 00089 /* 00090 ** For the structure definitions in this file, we must redefine these types in 00091 ** terms of Xmd.h types, which may include bitfields. All of these are 00092 ** undef'ed at the end of this file, restoring the definitions in glx.h. 00093 */ 00094 #define GLXContextID CARD32 00095 #define GLXPixmap CARD32 00096 #define GLXDrawable CARD32 00097 #define GLXPbuffer CARD32 00098 #define GLXWindow CARD32 00099 #define GLXFBConfigID CARD32 00100 #define GLXFBConfigIDSGIX CARD32 00101 #define GLXPbufferSGIX CARD32 00102 00103 /* 00104 ** ContextTag is not exposed to the API. 00105 */ 00106 typedef CARD32 GLXContextTag; 00107 00108 /*****************************************************************************/ 00109 00110 /* 00111 ** Sizes of basic wire types. 00112 */ 00113 #define __GLX_SIZE_INT8 1 00114 #define __GLX_SIZE_INT16 2 00115 #define __GLX_SIZE_INT32 4 00116 #define __GLX_SIZE_CARD8 1 00117 #define __GLX_SIZE_CARD16 2 00118 #define __GLX_SIZE_CARD32 4 00119 #define __GLX_SIZE_FLOAT32 4 00120 #define __GLX_SIZE_FLOAT64 8 00121 00122 /*****************************************************************************/ 00123 00124 /* Requests */ 00125 00126 /* 00127 ** Render command request. A bunch of rendering commands are packed into 00128 ** a single X extension request. 00129 */ 00130 typedef struct GLXRender { 00131 CARD8 reqType; 00132 CARD8 glxCode; 00133 CARD16 length B16; 00134 GLXContextTag contextTag B32; 00135 } xGLXRenderReq; 00136 #define sz_xGLXRenderReq 8 00137 00138 /* 00139 ** The maximum size that a GLXRender command can be. The value must fit 00140 ** in 16 bits and should be a multiple of 4. 00141 */ 00142 #define __GLX_MAX_RENDER_CMD_SIZE 64000 00143 00144 /* 00145 ** Large render command request. A single large rendering command 00146 ** is output in multiple X extension requests. The first packet 00147 ** contains an opcode dependent header (see below) that describes 00148 ** the data that follows. 00149 */ 00150 typedef struct GLXRenderLarge { 00151 CARD8 reqType; 00152 CARD8 glxCode; 00153 CARD16 length B16; 00154 GLXContextTag contextTag B32; 00155 CARD16 requestNumber B16; 00156 CARD16 requestTotal B16; 00157 CARD32 dataBytes B32; 00158 } xGLXRenderLargeReq; 00159 #define sz_xGLXRenderLargeReq 16 00160 00161 /* 00162 ** GLX single request. Commands that go over as single GLX protocol 00163 ** requests use this structure. The glxCode will be one of the X_GLsop 00164 ** opcodes. 00165 */ 00166 typedef struct GLXSingle { 00167 CARD8 reqType; 00168 CARD8 glxCode; 00169 CARD16 length B16; 00170 GLXContextTag contextTag B32; 00171 } xGLXSingleReq; 00172 #define sz_xGLXSingleReq 8 00173 00174 /* 00175 ** glXQueryVersion request 00176 */ 00177 typedef struct GLXQueryVersion { 00178 CARD8 reqType; 00179 CARD8 glxCode; 00180 CARD16 length B16; 00181 CARD32 majorVersion B32; 00182 CARD32 minorVersion B32; 00183 } xGLXQueryVersionReq; 00184 #define sz_xGLXQueryVersionReq 12 00185 00186 /* 00187 ** glXIsDirect request 00188 */ 00189 typedef struct GLXIsDirect { 00190 CARD8 reqType; 00191 CARD8 glxCode; 00192 CARD16 length B16; 00193 GLXContextID context B32; 00194 } xGLXIsDirectReq; 00195 #define sz_xGLXIsDirectReq 8 00196 00197 /* 00198 ** glXCreateContext request 00199 */ 00200 typedef struct GLXCreateContext { 00201 CARD8 reqType; 00202 CARD8 glxCode; 00203 CARD16 length B16; 00204 GLXContextID context B32; 00205 CARD32 visual B32; 00206 CARD32 screen B32; 00207 GLXContextID shareList B32; 00208 BOOL isDirect; 00209 CARD8 reserved1; 00210 CARD16 reserved2 B16; 00211 } xGLXCreateContextReq; 00212 #define sz_xGLXCreateContextReq 24 00213 00214 /* 00215 ** glXDestroyContext request 00216 */ 00217 typedef struct GLXDestroyContext { 00218 CARD8 reqType; 00219 CARD8 glxCode; 00220 CARD16 length B16; 00221 GLXContextID context B32; 00222 } xGLXDestroyContextReq; 00223 #define sz_xGLXDestroyContextReq 8 00224 00225 /* 00226 ** glXMakeCurrent request 00227 */ 00228 typedef struct GLXMakeCurrent { 00229 CARD8 reqType; 00230 CARD8 glxCode; 00231 CARD16 length B16; 00232 GLXDrawable drawable B32; 00233 GLXContextID context B32; 00234 GLXContextTag oldContextTag B32; 00235 } xGLXMakeCurrentReq; 00236 #define sz_xGLXMakeCurrentReq 16 00237 00238 /* 00239 ** glXWaitGL request 00240 */ 00241 typedef struct GLXWaitGL { 00242 CARD8 reqType; 00243 CARD8 glxCode; 00244 CARD16 length B16; 00245 GLXContextTag contextTag B32; 00246 } xGLXWaitGLReq; 00247 #define sz_xGLXWaitGLReq 8 00248 00249 /* 00250 ** glXWaitX request 00251 */ 00252 typedef struct GLXWaitX { 00253 CARD8 reqType; 00254 CARD8 glxCode; 00255 CARD16 length B16; 00256 GLXContextTag contextTag B32; 00257 } xGLXWaitXReq; 00258 #define sz_xGLXWaitXReq 8 00259 00260 /* 00261 ** glXCopyContext request 00262 */ 00263 typedef struct GLXCopyContext { 00264 CARD8 reqType; 00265 CARD8 glxCode; 00266 CARD16 length B16; 00267 GLXContextID source B32; 00268 GLXContextID dest B32; 00269 CARD32 mask B32; 00270 GLXContextTag contextTag B32; 00271 } xGLXCopyContextReq; 00272 #define sz_xGLXCopyContextReq 20 00273 00274 /* 00275 ** glXSwapBuffers request 00276 */ 00277 typedef struct GLXSwapBuffers { 00278 CARD8 reqType; 00279 CARD8 glxCode; 00280 CARD16 length B16; 00281 GLXContextTag contextTag B32; 00282 GLXDrawable drawable B32; 00283 } xGLXSwapBuffersReq; 00284 #define sz_xGLXSwapBuffersReq 12 00285 00286 /* 00287 ** glXUseXFont request 00288 */ 00289 typedef struct GLXUseXFont { 00290 CARD8 reqType; 00291 CARD8 glxCode; 00292 CARD16 length B16; 00293 GLXContextTag contextTag B32; 00294 CARD32 font B32; 00295 CARD32 first B32; 00296 CARD32 count B32; 00297 CARD32 listBase B32; 00298 } xGLXUseXFontReq; 00299 #define sz_xGLXUseXFontReq 24 00300 00301 /* 00302 ** glXCreateGLXPixmap request 00303 */ 00304 typedef struct GLXCreateGLXPixmap { 00305 CARD8 reqType; 00306 CARD8 glxCode; 00307 CARD16 length B16; 00308 CARD32 screen B32; 00309 CARD32 visual B32; 00310 CARD32 pixmap B32; 00311 GLXPixmap glxpixmap B32; 00312 } xGLXCreateGLXPixmapReq; 00313 #define sz_xGLXCreateGLXPixmapReq 20 00314 00315 /* 00316 ** glXDestroyGLXPixmap request 00317 */ 00318 typedef struct GLXDestroyGLXPixmap { 00319 CARD8 reqType; 00320 CARD8 glxCode; 00321 CARD16 length B16; 00322 GLXPixmap glxpixmap B32; 00323 } xGLXDestroyGLXPixmapReq; 00324 #define sz_xGLXDestroyGLXPixmapReq 8 00325 00326 /* 00327 ** glXGetVisualConfigs request 00328 */ 00329 typedef struct GLXGetVisualConfigs { 00330 CARD8 reqType; 00331 CARD8 glxCode; 00332 CARD16 length B16; 00333 CARD32 screen B32; 00334 } xGLXGetVisualConfigsReq; 00335 #define sz_xGLXGetVisualConfigsReq 8 00336 00337 /* 00338 ** glXVendorPrivate request. 00339 */ 00340 typedef struct GLXVendorPrivate { 00341 CARD8 reqType; 00342 CARD8 glxCode; 00343 CARD16 length B16; 00344 CARD32 vendorCode B32; /* vendor-specific opcode */ 00345 GLXContextTag contextTag B32; 00346 /* 00347 ** More data may follow; this is just the header. 00348 */ 00349 } xGLXVendorPrivateReq; 00350 #define sz_xGLXVendorPrivateReq 12 00351 00352 /* 00353 ** glXVendorPrivateWithReply request 00354 */ 00355 typedef struct GLXVendorPrivateWithReply { 00356 CARD8 reqType; 00357 CARD8 glxCode; 00358 CARD16 length B16; 00359 CARD32 vendorCode B32; /* vendor-specific opcode */ 00360 GLXContextTag contextTag B32; 00361 /* 00362 ** More data may follow; this is just the header. 00363 */ 00364 } xGLXVendorPrivateWithReplyReq; 00365 #define sz_xGLXVendorPrivateWithReplyReq 12 00366 00367 /* 00368 ** glXQueryExtensionsString request 00369 */ 00370 typedef struct GLXQueryExtensionsString { 00371 CARD8 reqType; 00372 CARD8 glxCode; 00373 CARD16 length B16; 00374 CARD32 screen B32; 00375 } xGLXQueryExtensionsStringReq; 00376 #define sz_xGLXQueryExtensionsStringReq 8 00377 00378 /* 00379 ** glXQueryServerString request 00380 */ 00381 typedef struct GLXQueryServerString { 00382 CARD8 reqType; 00383 CARD8 glxCode; 00384 CARD16 length B16; 00385 CARD32 screen B32; 00386 CARD32 name B32; 00387 } xGLXQueryServerStringReq; 00388 #define sz_xGLXQueryServerStringReq 12 00389 00390 /* 00391 ** glXClientInfo request 00392 */ 00393 typedef struct GLXClientInfo { 00394 CARD8 reqType; 00395 CARD8 glxCode; 00396 CARD16 length B16; 00397 CARD32 major B32; 00398 CARD32 minor B32; 00399 CARD32 numbytes B32; 00400 } xGLXClientInfoReq; 00401 #define sz_xGLXClientInfoReq 16 00402 00403 /*** Start of GLX 1.3 requests */ 00404 00405 /* 00406 ** glXGetFBConfigs request 00407 */ 00408 typedef struct GLXGetFBConfigs { 00409 CARD8 reqType; 00410 CARD8 glxCode; 00411 CARD16 length B16; 00412 CARD32 screen B32; 00413 } xGLXGetFBConfigsReq; 00414 #define sz_xGLXGetFBConfigsReq 8 00415 00416 /* 00417 ** glXCreatePixmap request 00418 */ 00419 typedef struct GLXCreatePixmap { 00420 CARD8 reqType; 00421 CARD8 glxCode; 00422 CARD16 length B16; 00423 CARD32 screen B32; 00424 GLXFBConfigID fbconfig B32; 00425 CARD32 pixmap B32; 00426 GLXPixmap glxpixmap B32; 00427 CARD32 numAttribs B32; 00428 /* followed by attribute list */ 00429 } xGLXCreatePixmapReq; 00430 #define sz_xGLXCreatePixmapReq 24 00431 00432 /* 00433 ** glXDestroyPixmap request 00434 */ 00435 typedef struct GLXDestroyPixmap { 00436 CARD8 reqType; 00437 CARD8 glxCode; 00438 CARD16 length B16; 00439 GLXPixmap glxpixmap B32; 00440 } xGLXDestroyPixmapReq; 00441 #define sz_xGLXDestroyPixmapReq 8 00442 00443 /* 00444 ** glXCreateNewContext request 00445 */ 00446 typedef struct GLXCreateNewContext { 00447 CARD8 reqType; 00448 CARD8 glxCode; 00449 CARD16 length B16; 00450 GLXContextID context B32; 00451 GLXFBConfigID fbconfig B32; 00452 CARD32 screen B32; 00453 CARD32 renderType; 00454 GLXContextID shareList B32; 00455 BOOL isDirect; 00456 CARD8 reserved1; 00457 CARD16 reserved2 B16; 00458 } xGLXCreateNewContextReq; 00459 #define sz_xGLXCreateNewContextReq 28 00460 00461 /* 00462 ** glXQueryContext request 00463 */ 00464 typedef struct GLXQueryContext { 00465 CARD8 reqType; 00466 CARD8 glxCode; 00467 CARD16 length B16; 00468 GLXContextID context B32; 00469 } xGLXQueryContextReq; 00470 #define sz_xGLXQueryContextReq 8 00471 00472 /* 00473 ** glXMakeContextCurrent request 00474 */ 00475 typedef struct GLXMakeContextCurrent { 00476 CARD8 reqType; 00477 CARD8 glxCode; 00478 CARD16 length B16; 00479 GLXContextTag oldContextTag B32; 00480 GLXDrawable drawable B32; 00481 GLXDrawable readdrawable B32; 00482 GLXContextID context B32; 00483 } xGLXMakeContextCurrentReq; 00484 #define sz_xGLXMakeContextCurrentReq 20 00485 00486 /* 00487 ** glXCreatePbuffer request 00488 */ 00489 typedef struct GLXCreatePbuffer { 00490 CARD8 reqType; 00491 CARD8 glxCode; 00492 CARD16 length B16; 00493 CARD32 screen B32; 00494 GLXFBConfigID fbconfig B32; 00495 GLXPbuffer pbuffer B32; 00496 CARD32 numAttribs B32; 00497 /* followed by attribute list */ 00498 } xGLXCreatePbufferReq; 00499 #define sz_xGLXCreatePbufferReq 20 00500 00501 /* 00502 ** glXDestroyPbuffer request 00503 */ 00504 typedef struct GLXDestroyPbuffer { 00505 CARD8 reqType; 00506 CARD8 glxCode; 00507 CARD16 length B16; 00508 GLXPbuffer pbuffer B32; 00509 } xGLXDestroyPbufferReq; 00510 #define sz_xGLXDestroyPbufferReq 8 00511 00512 /* 00513 ** glXGetDrawableAttributes request 00514 */ 00515 typedef struct GLXGetDrawableAttributes { 00516 CARD8 reqType; 00517 CARD8 glxCode; 00518 CARD16 length B16; 00519 GLXDrawable drawable B32; 00520 } xGLXGetDrawableAttributesReq; 00521 #define sz_xGLXGetDrawableAttributesReq 8 00522 00523 /* 00524 ** glXChangeDrawableAttributes request 00525 */ 00526 typedef struct GLXChangeDrawableAttributes { 00527 CARD8 reqType; 00528 CARD8 glxCode; 00529 CARD16 length B16; 00530 GLXDrawable drawable B32; 00531 CARD32 numAttribs B32; 00532 /* followed by attribute list */ 00533 } xGLXChangeDrawableAttributesReq; 00534 #define sz_xGLXChangeDrawableAttributesReq 12 00535 00536 /* 00537 ** glXCreateWindow request 00538 */ 00539 typedef struct GLXCreateWindow { 00540 CARD8 reqType; 00541 CARD8 glxCode; 00542 CARD16 length B16; 00543 CARD32 screen B32; 00544 GLXFBConfigID fbconfig B32; 00545 CARD32 window B32; 00546 GLXWindow glxwindow B32; 00547 CARD32 numAttribs B32; 00548 /* followed by attribute list */ 00549 } xGLXCreateWindowReq; 00550 #define sz_xGLXCreateWindowReq 24 00551 00552 /* 00553 ** glXDestroyWindow request 00554 */ 00555 typedef struct GLXDestroyWindow { 00556 CARD8 reqType; 00557 CARD8 glxCode; 00558 CARD16 length B16; 00559 GLXWindow glxwindow B32; 00560 } xGLXDestroyWindowReq; 00561 #define sz_xGLXDestroyWindowReq 8 00562 00563 /* Replies */ 00564 00565 typedef struct { 00566 BYTE type; /* X_Reply */ 00567 CARD8 unused; /* not used */ 00568 CARD16 sequenceNumber B16; 00569 CARD32 length B32; 00570 CARD32 error B32; 00571 CARD32 pad2 B32; 00572 CARD32 pad3 B32; 00573 CARD32 pad4 B32; 00574 CARD32 pad5 B32; 00575 CARD32 pad6 B32; 00576 } xGLXGetErrorReply; 00577 #define sz_xGLXGetErrorReply 32 00578 00579 typedef struct { 00580 BYTE type; /* X_Reply */ 00581 CARD8 unused; /* not used */ 00582 CARD16 sequenceNumber B16; 00583 CARD32 length B32; 00584 GLXContextTag contextTag B32; 00585 CARD32 pad2 B32; 00586 CARD32 pad3 B32; 00587 CARD32 pad4 B32; 00588 CARD32 pad5 B32; 00589 CARD32 pad6 B32; 00590 } xGLXMakeCurrentReply; 00591 #define sz_xGLXMakeCurrentReply 32 00592 00593 typedef struct { 00594 BYTE type; /* X_Reply */ 00595 CARD8 unused; /* not used */ 00596 CARD16 sequenceNumber B16; 00597 CARD32 length B32; 00598 CARD32 pad1 B32; 00599 CARD32 pad2 B32; 00600 CARD32 pad3 B32; 00601 CARD32 pad4 B32; 00602 CARD32 pad5 B32; 00603 CARD32 pad6 B32; 00604 } xGLXReadPixelsReply; 00605 #define sz_xGLXReadPixelsReply 32 00606 00607 typedef struct { 00608 BYTE type; /* X_Reply */ 00609 CARD8 unused; /* not used */ 00610 CARD16 sequenceNumber B16; 00611 CARD32 length B32; 00612 CARD32 pad1 B32; 00613 CARD32 pad2 B32; 00614 CARD32 width B32; 00615 CARD32 height B32; 00616 CARD32 depth B32; 00617 CARD32 pad6 B32; 00618 } xGLXGetTexImageReply; 00619 #define sz_xGLXGetTexImageReply 32 00620 00621 typedef struct { 00622 BYTE type; /* X_Reply */ 00623 CARD8 unused; /* not used */ 00624 CARD16 sequenceNumber B16; 00625 CARD32 length B32; 00626 CARD32 pad1 B32; 00627 CARD32 pad2 B32; 00628 CARD32 width B32; 00629 CARD32 height B32; 00630 CARD32 pad5 B32; 00631 CARD32 pad6 B32; 00632 } xGLXGetSeparableFilterReply; 00633 #define sz_xGLXGetSeparableFilterReply 32 00634 00635 typedef struct { 00636 BYTE type; /* X_Reply */ 00637 CARD8 unused; /* not used */ 00638 CARD16 sequenceNumber B16; 00639 CARD32 length B32; 00640 CARD32 pad1 B32; 00641 CARD32 pad2 B32; 00642 CARD32 width B32; 00643 CARD32 height B32; 00644 CARD32 pad5 B32; 00645 CARD32 pad6 B32; 00646 } xGLXGetConvolutionFilterReply; 00647 #define sz_xGLXGetConvolutionFilterReply 32 00648 00649 typedef struct { 00650 BYTE type; /* X_Reply */ 00651 CARD8 unused; /* not used */ 00652 CARD16 sequenceNumber B16; 00653 CARD32 length B32; 00654 CARD32 pad1 B32; 00655 CARD32 pad2 B32; 00656 CARD32 width B32; 00657 CARD32 pad4 B32; 00658 CARD32 pad5 B32; 00659 CARD32 pad6 B32; 00660 } xGLXGetHistogramReply; 00661 #define sz_xGLXGetHistogramReply 32 00662 00663 typedef struct { 00664 BYTE type; /* X_Reply */ 00665 CARD8 unused; /* not used */ 00666 CARD16 sequenceNumber B16; 00667 CARD32 length B32; 00668 CARD32 pad1 B32; 00669 CARD32 pad2 B32; 00670 CARD32 pad3 B32; 00671 CARD32 pad4 B32; 00672 CARD32 pad5 B32; 00673 CARD32 pad6 B32; 00674 } xGLXGetMinmaxReply; 00675 #define sz_xGLXGetMinmaxReply 32 00676 00677 typedef struct { 00678 BYTE type; /* X_Reply */ 00679 CARD8 unused; /* not used */ 00680 CARD16 sequenceNumber B16; 00681 CARD32 length B32; 00682 CARD32 retval B32; 00683 CARD32 size B32; 00684 CARD32 newMode B32; 00685 CARD32 pad4 B32; 00686 CARD32 pad5 B32; 00687 CARD32 pad6 B32; 00688 } xGLXRenderModeReply; 00689 #define sz_xGLXRenderModeReply 32 00690 00691 typedef struct { 00692 BYTE type; /* X_Reply */ 00693 CARD8 unused; /* not used */ 00694 CARD16 sequenceNumber B16; 00695 CARD32 length B32; 00696 CARD32 majorVersion B32; 00697 CARD32 minorVersion B32; 00698 CARD32 pad3 B32; 00699 CARD32 pad4 B32; 00700 CARD32 pad5 B32; 00701 CARD32 pad6 B32; 00702 } xGLXQueryVersionReply; 00703 #define sz_xGLXQueryVersionReply 32 00704 00705 typedef struct { 00706 BYTE type; /* X_Reply */ 00707 CARD8 unused; /* not used */ 00708 CARD16 sequenceNumber B16; 00709 CARD32 length B32; 00710 CARD32 numVisuals B32; 00711 CARD32 numProps B32; 00712 CARD32 pad3 B32; 00713 CARD32 pad4 B32; 00714 CARD32 pad5 B32; 00715 CARD32 pad6 B32; 00716 } xGLXGetVisualConfigsReply; 00717 #define sz_xGLXGetVisualConfigsReply 32 00718 00719 typedef struct { 00720 BYTE type; /* X_Reply */ 00721 CARD8 unused; /* not used */ 00722 CARD16 sequenceNumber B16; 00723 CARD32 length B32; 00724 BOOL isDirect; 00725 CARD8 pad1; 00726 CARD16 pad2 B16; 00727 CARD32 pad3 B32; 00728 CARD32 pad4 B32; 00729 CARD32 pad5 B32; 00730 CARD32 pad6 B32; 00731 CARD32 pad7 B32; 00732 } xGLXIsDirectReply; 00733 #define sz_xGLXIsDirectReply 32 00734 00735 /* 00736 ** This reply structure is used for all single replies. Single replies 00737 ** ship either 1 piece of data or N pieces of data. In these cases 00738 ** size indicates how much data is to be returned. 00739 */ 00740 typedef struct { 00741 BYTE type; /* X_Reply */ 00742 CARD8 unused; /* not used */ 00743 CARD16 sequenceNumber B16; 00744 CARD32 length B32; 00745 CARD32 retval B32; 00746 CARD32 size B32; 00747 CARD32 pad3 B32; /* NOTE: may hold a single value */ 00748 CARD32 pad4 B32; /* NOTE: may hold half a double */ 00749 CARD32 pad5 B32; 00750 CARD32 pad6 B32; 00751 } xGLXSingleReply; 00752 #define sz_xGLXSingleReply 32 00753 00754 /* 00755 ** This reply structure is used for all Vendor Private replies. Vendor 00756 ** Private replies can ship up to 24 bytes within the header or can 00757 ** be variable sized, in which case, the reply length field indicates 00758 ** the number of words of data which follow the header. 00759 */ 00760 typedef struct { 00761 BYTE type; /* X_Reply */ 00762 CARD8 unused; /* not used */ 00763 CARD16 sequenceNumber B16; 00764 CARD32 length B32; 00765 CARD32 retval B32; 00766 CARD32 size B32; 00767 CARD32 pad3 B32; 00768 CARD32 pad4 B32; 00769 CARD32 pad5 B32; 00770 CARD32 pad6 B32; 00771 } xGLXVendorPrivReply; 00772 #define sz_xGLXVendorPrivReply 32 00773 00774 /* 00775 ** QueryExtensionsStringReply 00776 ** n indicates the number of bytes to be returned. 00777 */ 00778 typedef struct { 00779 BYTE type; /* X_Reply */ 00780 CARD8 unused; /* not used */ 00781 CARD16 sequenceNumber B16; 00782 CARD32 length B32; 00783 CARD32 pad1 B32; 00784 CARD32 n B32; 00785 CARD32 pad3 B32; 00786 CARD32 pad4 B32; 00787 CARD32 pad5 B32; 00788 CARD32 pad6 B32; 00789 } xGLXQueryExtensionsStringReply; 00790 #define sz_xGLXQueryExtensionsStringReply 32 00791 00792 /* 00793 ** QueryServerString Reply struct 00794 ** n indicates the number of bytes to be returned. 00795 */ 00796 typedef struct { 00797 BYTE type; /* X_Reply */ 00798 CARD8 unused; /* not used */ 00799 CARD16 sequenceNumber B16; 00800 CARD32 length B32; 00801 CARD32 pad1 B32; 00802 CARD32 n B32; 00803 CARD32 pad3 B32; /* NOTE: may hold a single value */ 00804 CARD32 pad4 B32; /* NOTE: may hold half a double */ 00805 CARD32 pad5 B32; 00806 CARD32 pad6 B32; 00807 } xGLXQueryServerStringReply; 00808 #define sz_xGLXQueryServerStringReply 32 00809 00810 /*** Start of GLX 1.3 replies */ 00811 00812 /* 00813 ** glXGetFBConfigs reply 00814 */ 00815 typedef struct { 00816 BYTE type; /* X_Reply */ 00817 CARD8 unused; /* not used */ 00818 CARD16 sequenceNumber B16; 00819 CARD32 length B32; 00820 CARD32 numFBConfigs B32; 00821 CARD32 numAttribs B32; 00822 CARD32 pad3 B32; 00823 CARD32 pad4 B32; 00824 CARD32 pad5 B32; 00825 CARD32 pad6 B32; 00826 } xGLXGetFBConfigsReply; 00827 #define sz_xGLXGetFBConfigsReply 32 00828 00829 /* 00830 ** glXQueryContext reply 00831 */ 00832 typedef struct { 00833 BYTE type; /* X_Reply */ 00834 CARD8 unused; /* not used */ 00835 CARD16 sequenceNumber B16; 00836 CARD32 length B32; 00837 CARD32 n B32; /* number of attribute/value pairs */ 00838 CARD32 pad2 B32; 00839 CARD32 pad3 B32; 00840 CARD32 pad4 B32; 00841 CARD32 pad5 B32; 00842 CARD32 pad6 B32; 00843 } xGLXQueryContextReply; 00844 #define sz_xGLXQueryContextReply 32 00845 00846 /* 00847 ** glXMakeContextCurrent reply 00848 */ 00849 typedef struct { 00850 BYTE type; /* X_Reply */ 00851 CARD8 unused; /* not used */ 00852 CARD16 sequenceNumber B16; 00853 CARD32 length B32; 00854 GLXContextTag contextTag B32; 00855 CARD32 pad2 B32; 00856 CARD32 pad3 B32; 00857 CARD32 pad4 B32; 00858 CARD32 pad5 B32; 00859 CARD32 pad6 B32; 00860 } xGLXMakeContextCurrentReply; 00861 #define sz_xGLXMakeContextCurrentReply 32 00862 00863 /* 00864 ** glXCreateGLXPbuffer reply 00865 ** This is used only in the direct rendering case on SGIs - otherwise 00866 ** CreateGLXPbuffer has no reply. It is not part of GLX 1.3. 00867 */ 00868 typedef struct { 00869 BYTE type; /* X_Reply */ 00870 CARD8 success; 00871 CARD16 sequenceNumber B16; 00872 CARD32 length B32; 00873 CARD32 pad1 B32; 00874 CARD32 pad2 B32; 00875 CARD32 pad3 B32; 00876 CARD32 pad4 B32; 00877 CARD32 pad5 B32; 00878 CARD32 pad6 B32; 00879 } xGLXCreateGLXPbufferReply; 00880 #define sz_xGLXCreateGLXPbufferReply 32 00881 00882 /* 00883 ** glXGetDrawableAttributes reply 00884 */ 00885 typedef struct { 00886 BYTE type; /* X_Reply */ 00887 CARD8 unused; /* not used */ 00888 CARD16 sequenceNumber B16; 00889 CARD32 length B32; 00890 CARD32 numAttribs B32; 00891 CARD32 pad2 B32; 00892 CARD32 pad3 B32; 00893 CARD32 pad4 B32; 00894 CARD32 pad5 B32; 00895 CARD32 pad6 B32; 00896 } xGLXGetDrawableAttributesReply; 00897 #define sz_xGLXGetDrawableAttributesReply 32 00898 00899 /* 00900 ** glXGetColorTable reply 00901 */ 00902 typedef struct { 00903 BYTE type; /* X_Reply */ 00904 CARD8 unused; /* not used */ 00905 CARD16 sequenceNumber B16; 00906 CARD32 length B32; 00907 CARD32 pad1 B32; 00908 CARD32 pad2 B32; 00909 CARD32 width B32; 00910 CARD32 pad4 B32; 00911 CARD32 pad5 B32; 00912 CARD32 pad6 B32; 00913 } xGLXGetColorTableReply; 00914 #define sz_xGLXGetColorTableReply 32 00915 00916 /************************************************************************/ 00917 00918 /* GLX extension requests and replies */ 00919 00920 /* 00921 ** glXQueryContextInfoEXT request 00922 */ 00923 typedef struct GLXQueryContextInfoEXT { 00924 CARD8 reqType; 00925 CARD8 glxCode; 00926 CARD16 length B16; 00927 CARD32 vendorCode B32; /* vendor-specific opcode */ 00928 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 00929 GLXContextID context B32; 00930 } xGLXQueryContextInfoEXTReq; 00931 #define sz_xGLXQueryContextInfoEXTReq 16 00932 00933 /* 00934 ** glXQueryContextInfoEXT reply 00935 */ 00936 typedef struct { 00937 BYTE type; /* X_Reply */ 00938 CARD8 unused; /* not used */ 00939 CARD16 sequenceNumber B16; 00940 CARD32 length B32; 00941 CARD32 n B32; /* number of attribute/value pairs */ 00942 CARD32 pad2 B32; 00943 CARD32 pad3 B32; 00944 CARD32 pad4 B32; 00945 CARD32 pad5 B32; 00946 CARD32 pad6 B32; 00947 } xGLXQueryContextInfoEXTReply; 00948 #define sz_xGLXQueryContextInfoEXTReply 32 00949 00950 /* 00951 ** glXMakeCurrentReadSGI request 00952 */ 00953 typedef struct GLXMakeCurrentReadSGI { 00954 CARD8 reqType; 00955 CARD8 glxCode; 00956 CARD16 length B16; 00957 CARD32 vendorCode B32; /* vendor-specific opcode */ 00958 GLXContextTag oldContextTag B32; 00959 GLXDrawable drawable B32; 00960 GLXDrawable readable B32; 00961 GLXContextID context B32; 00962 } xGLXMakeCurrentReadSGIReq; 00963 #define sz_xGLXMakeCurrentReadSGIReq 24 00964 00965 typedef struct { 00966 BYTE type; /* X_Reply */ 00967 CARD8 unused; /* not used */ 00968 CARD16 sequenceNumber B16; 00969 CARD32 length B32; 00970 GLXContextTag contextTag B32; 00971 CARD32 writeVid B32; 00972 CARD32 writeType B32; 00973 CARD32 readVid B32; 00974 CARD32 readType B32; 00975 CARD32 pad6 B32; 00976 } xGLXMakeCurrentReadSGIReply; 00977 #define sz_xGLXMakeCurrentReadSGIReply 32 00978 00979 /* 00980 ** glXGetFBConfigsSGIX request 00981 */ 00982 typedef struct GLXGetFBConfigsSGIX { 00983 CARD8 reqType; 00984 CARD8 glxCode; 00985 CARD16 length B16; 00986 CARD32 vendorCode B32; /* vendor-specific opcode */ 00987 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 00988 CARD32 screen B32; 00989 } xGLXGetFBConfigsSGIXReq; 00990 #define sz_xGLXGetFBConfigsSGIXReq 16 00991 00992 /* 00993 ** glXCreateContextWithConfigSGIX request 00994 */ 00995 00996 typedef struct GLXCreateContextWithConfigSGIX { 00997 CARD8 reqType; 00998 CARD8 glxCode; 00999 CARD16 length B16; 01000 CARD32 vendorCode B32; /* vendor-specific opcode */ 01001 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 01002 GLXContextID context B32; 01003 GLXFBConfigID fbconfig B32; 01004 CARD32 screen B32; 01005 CARD32 renderType; 01006 GLXContextID shareList B32; 01007 BOOL isDirect; 01008 CARD8 reserved1; 01009 CARD16 reserved2 B16; 01010 } xGLXCreateContextWithConfigSGIXReq; 01011 #define sz_xGLXCreateContextWithConfigSGIXReq 36 01012 01013 /* 01014 ** glXCreatePixmapWithConfigSGIX request 01015 */ 01016 01017 typedef struct GLXCreateGLXPixmapWithConfigSGIX { 01018 CARD8 reqType; 01019 CARD8 glxCode; 01020 CARD16 length B16; 01021 CARD32 vendorCode B32; /* vendor-specific opcode */ 01022 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 01023 CARD32 screen B32; 01024 GLXFBConfigID fbconfig B32; 01025 CARD32 pixmap B32; 01026 GLXPixmap glxpixmap B32; 01027 } xGLXCreateGLXPixmapWithConfigSGIXReq; 01028 #define sz_xGLXCreateGLXPixmapWithConfigSGIXReq 28 01029 01030 /* 01031 ** glXJoinSwapGroupSGIX request 01032 */ 01033 typedef struct GLXJoinSwapGroupSGIX { 01034 CARD8 reqType; 01035 CARD8 glxCode; 01036 CARD16 length B16; 01037 CARD32 vendorCode B32; /* vendor-specific opcode */ 01038 CARD32 unused B32; /* corresponds to contextTag in hdr */ 01039 GLXDrawable drawable B32; 01040 GLXDrawable member B32; 01041 } xGLXJoinSwapGroupSGIXReq; 01042 #define sz_xGLXJoinSwapGroupSGIXReq 20 01043 01044 /* 01045 ** glXBindSwapBarrierSGIX request 01046 */ 01047 typedef struct GLXBindSwapBarrierSGIX { 01048 CARD8 reqType; 01049 CARD8 glxCode; 01050 CARD16 length B16; 01051 CARD32 vendorCode B32; /* vendor-specific opcode */ 01052 CARD32 unused B32; /* corresponds to contextTag in hdr */ 01053 GLXDrawable drawable B32; 01054 CARD32 barrier B32; 01055 } xGLXBindSwapBarrierSGIXReq; 01056 #define sz_xGLXBindSwapBarrierSGIXReq 20 01057 01058 /* 01059 ** glXQueryMaxSwapBarriersSGIX request 01060 */ 01061 typedef struct GLXQueryMaxSwapBarriersSGIX { 01062 CARD8 reqType; 01063 CARD8 glxCode; 01064 CARD16 length B16; 01065 CARD32 vendorCode B32; /* vendor-specific opcode */ 01066 CARD32 unused B32; /* corresponds to contextTag in hdr */ 01067 CARD32 screen B32; 01068 } xGLXQueryMaxSwapBarriersSGIXReq; 01069 #define sz_xGLXQueryMaxSwapBarriersSGIXReq 16 01070 01071 typedef struct { 01072 BYTE type; /* X_Reply */ 01073 CARD8 unused; /* not used */ 01074 CARD16 sequenceNumber B16; 01075 CARD32 length B32; 01076 CARD32 max B32; 01077 CARD32 size B32; 01078 CARD32 pad3 B32; 01079 CARD32 pad4 B32; 01080 CARD32 pad5 B32; 01081 CARD32 pad6 B32; 01082 } xGLXQueryMaxSwapBarriersSGIXReply; 01083 #define sz_xGLXQueryMaxSwapBarriersSGIXReply 32 01084 01085 /* 01086 ** glXQueryHyperpipeNetworkSGIX request 01087 */ 01088 typedef struct GLXQueryHyperpipeNetworkSGIX { 01089 CARD8 reqType; 01090 CARD8 glxCode; 01091 CARD16 length B16; 01092 CARD32 vendorCode B32; /* vendor-specific opcode */ 01093 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 01094 CARD32 screen B32; 01095 } xGLXQueryHyperpipeNetworkSGIXReq; 01096 #define sz_xGLXQueryHyperpipeNetworkSGIXReq 16 01097 01098 /* 01099 ** glXQueryHyperpipeNetworkSGIX reply 01100 */ 01101 typedef struct { 01102 BYTE type; /* X_Reply */ 01103 CARD8 unused; /* not used */ 01104 CARD16 sequenceNumber B16; 01105 CARD32 length B32; 01106 CARD32 pad1 B32; 01107 CARD32 n B32; 01108 CARD32 npipes B32; /* NOTE: may hold a single value */ 01109 CARD32 pad4 B32; /* NOTE: may hold half a double */ 01110 CARD32 pad5 B32; 01111 CARD32 pad6 B32; 01112 } xGLXQueryHyperpipeNetworkSGIXReply; 01113 #define sz_xGLXQueryHyperpipeNetworkSGIXReply 32 01114 01115 /* 01116 ** glXDestroyHyperpipeConfigSGIX request 01117 */ 01118 typedef struct GLXDestroyHyperpipeConfigSGIX { 01119 CARD8 reqType; 01120 CARD8 glxCode; 01121 CARD16 length B16; 01122 CARD32 vendorCode B32; /* vendor-specific opcode */ 01123 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 01124 CARD32 screen B32; 01125 CARD32 hpId B32; 01126 CARD32 pad2 B32; 01127 CARD32 pad3 B32; 01128 CARD32 pad4 B32; 01129 } xGLXDestroyHyperpipeConfigSGIXReq; 01130 #define sz_xGLXDestroyHyperpipeConfigSGIXReq 32 01131 01132 /* 01133 ** glXDestroyHyperpipeConfigSGIX reply 01134 */ 01135 typedef struct { 01136 BYTE type; /* X_Reply */ 01137 CARD8 unused; /* not used */ 01138 CARD16 sequenceNumber B16; 01139 CARD32 length B32; 01140 CARD32 pad1 B32; 01141 CARD32 n B32; 01142 CARD32 success B32; /* NOTE: may hold a single value */ 01143 CARD32 pad4 B32; /* NOTE: may hold half a double */ 01144 CARD32 pad5 B32; 01145 CARD32 pad6 B32; 01146 } xGLXDestroyHyperpipeConfigSGIXReply; 01147 #define sz_xGLXDestroyHyperpipeConfigSGIXReply 32 01148 01149 /* 01150 ** glXQueryHyperpipeConfigSGIX request 01151 */ 01152 typedef struct GLXQueryHyperpipeConfigSGIX { 01153 CARD8 reqType; 01154 CARD8 glxCode; 01155 CARD16 length B16; 01156 CARD32 vendorCode B32; /* vendor-specific opcode */ 01157 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 01158 CARD32 screen B32; 01159 CARD32 hpId B32; 01160 CARD32 pad2 B32; 01161 CARD32 pad3 B32; 01162 CARD32 pad4 B32; 01163 } xGLXQueryHyperpipeConfigSGIXReq; 01164 #define sz_xGLXQueryHyperpipeConfigSGIXReq 32 01165 01166 /* 01167 ** glXQueryHyperpipeConfigSGIX reply 01168 */ 01169 typedef struct { 01170 BYTE type; /* X_Reply */ 01171 CARD8 unused; /* not used */ 01172 CARD16 sequenceNumber B16; 01173 CARD32 length B32; 01174 CARD32 pad1 B32; 01175 CARD32 n B32; 01176 CARD32 npipes B32; 01177 CARD32 pad4 B32; 01178 CARD32 pad5 B32; 01179 CARD32 pad6 B32; 01180 } xGLXQueryHyperpipeConfigSGIXReply; 01181 #define sz_xGLXQueryHyperpipeConfigSGIXReply 32 01182 01183 /* 01184 ** glXHyperpipeConfigSGIX request 01185 */ 01186 typedef struct GLXHyperpipeConfigSGIX { 01187 CARD8 reqType; 01188 CARD8 glxCode; 01189 CARD16 length B16; 01190 CARD32 vendorCode B32; /* vendor-specific opcode */ 01191 CARD32 pad1 B32; /* unused; corresponds to contextTag in header */ 01192 CARD32 screen B32; 01193 CARD32 npipes B32; 01194 CARD32 networkId B32; 01195 CARD32 pad2 B32; 01196 CARD32 pad3 B32; 01197 /* followed by attribute list */ 01198 } xGLXHyperpipeConfigSGIXReq; 01199 #define sz_xGLXHyperpipeConfigSGIXReq 32 01200 01201 /* 01202 ** glXHyperpipeConfigSGIX reply 01203 */ 01204 typedef struct { 01205 BYTE type; /* X_Reply */ 01206 CARD8 unused; /* not used */ 01207 CARD16 sequenceNumber B16; 01208 CARD32 length B32; 01209 CARD32 pad1 B32; 01210 CARD32 n B32; 01211 CARD32 npipes B32; 01212 CARD32 hpId B32; 01213 CARD32 pad5 B32; 01214 CARD32 pad6 B32; 01215 } xGLXHyperpipeConfigSGIXReply; 01216 #define sz_xGLXHyperpipeConfigSGIXReply 32 01217 01218 /************************************************************************/ 01219 01220 /* 01221 ** Events 01222 */ 01223 01224 typedef struct { 01225 BYTE type; 01226 BYTE pad; 01227 CARD16 sequenceNumber B16; 01228 CARD16 event_type B16; /*** was clobber_class */ 01229 CARD16 draw_type B16; 01230 CARD32 drawable B32; 01231 CARD32 buffer_mask B32; /*** was mask */ 01232 CARD16 aux_buffer B16; 01233 CARD16 x B16; 01234 CARD16 y B16; 01235 CARD16 width B16; 01236 CARD16 height B16; 01237 CARD16 count B16; 01238 CARD32 unused2 B32; 01239 } xGLXPbufferClobberEvent; 01240 01241 /************************************************************************/ 01242 01243 /* 01244 ** Size of the standard X request header. 01245 */ 01246 #define __GLX_SINGLE_HDR_SIZE sz_xGLXSingleReq 01247 #define __GLX_VENDPRIV_HDR_SIZE sz_xGLXVendorPrivateReq 01248 01249 #define __GLX_RENDER_HDR \ 01250 CARD16 length B16; \ 01251 CARD16 opcode B16 01252 01253 #define __GLX_RENDER_HDR_SIZE 4 01254 01255 typedef struct { 01256 __GLX_RENDER_HDR; 01257 } __GLXrenderHeader; 01258 01259 #define __GLX_RENDER_LARGE_HDR \ 01260 CARD32 length B32; \ 01261 CARD32 opcode B32 01262 01263 #define __GLX_RENDER_LARGE_HDR_SIZE 8 01264 01265 typedef struct { 01266 __GLX_RENDER_LARGE_HDR; 01267 } __GLXrenderLargeHeader; 01268 01269 /* 01270 ** The glBitmap, glPolygonStipple, glTexImage[12]D, glTexSubImage[12]D 01271 ** and glDrawPixels calls all have a pixel header transmitted after the 01272 ** Render or RenderLarge header and before their own opcode specific 01273 ** headers. 01274 */ 01275 #define __GLX_PIXEL_HDR \ 01276 BOOL swapBytes; \ 01277 BOOL lsbFirst; \ 01278 CARD8 reserved0; \ 01279 CARD8 reserved1; \ 01280 CARD32 rowLength B32; \ 01281 CARD32 skipRows B32; \ 01282 CARD32 skipPixels B32; \ 01283 CARD32 alignment B32 01284 01285 #define __GLX_PIXEL_HDR_SIZE 20 01286 01287 typedef struct { 01288 __GLX_PIXEL_HDR; 01289 } __GLXpixelHeader; 01290 01291 /* 01292 ** glTexImage[34]D and glTexSubImage[34]D calls 01293 ** all have a pixel header transmitted after the Render or RenderLarge 01294 ** header and before their own opcode specific headers. 01295 */ 01296 #define __GLX_PIXEL_3D_HDR \ 01297 BOOL swapBytes; \ 01298 BOOL lsbFirst; \ 01299 CARD8 reserved0; \ 01300 CARD8 reserved1; \ 01301 CARD32 rowLength B32; \ 01302 CARD32 imageHeight B32; \ 01303 CARD32 imageDepth B32; \ 01304 CARD32 skipRows B32; \ 01305 CARD32 skipImages B32; \ 01306 CARD32 skipVolumes B32; \ 01307 CARD32 skipPixels B32; \ 01308 CARD32 alignment B32 01309 01310 #define __GLX_PIXEL_3D_HDR_SIZE 36 01311 01312 /* 01313 ** Data that is specific to a glBitmap call. The data is sent in the 01314 ** following order: 01315 ** Render or RenderLarge header 01316 ** Pixel header 01317 ** Bitmap header 01318 */ 01319 #define __GLX_BITMAP_HDR \ 01320 CARD32 width B32; \ 01321 CARD32 height B32; \ 01322 FLOAT32 xorig F32; \ 01323 FLOAT32 yorig F32; \ 01324 FLOAT32 xmove F32; \ 01325 FLOAT32 ymove F32 01326 01327 typedef struct { 01328 __GLX_RENDER_HDR; 01329 __GLX_PIXEL_HDR; 01330 __GLX_BITMAP_HDR; 01331 } __GLXbitmapHeader; 01332 01333 typedef struct { 01334 __GLX_RENDER_LARGE_HDR; 01335 __GLX_PIXEL_HDR; 01336 __GLX_BITMAP_HDR; 01337 } __GLXbitmapLargeHeader; 01338 01339 typedef struct { 01340 __GLX_PIXEL_HDR; 01341 __GLX_BITMAP_HDR; 01342 } __GLXdispatchBitmapHeader; 01343 01344 #define __GLX_BITMAP_HDR_SIZE 24 01345 01346 #define __GLX_BITMAP_CMD_HDR_SIZE \ 01347 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_BITMAP_HDR_SIZE) 01348 01349 #define __GLX_BITMAP_CMD_DISPATCH_HDR_SIZE \ 01350 (__GLX_PIXEL_HDR_SIZE + __GLX_BITMAP_HDR_SIZE) 01351 01352 typedef struct { 01353 __GLX_RENDER_HDR; 01354 __GLX_PIXEL_HDR; 01355 } __GLXpolygonStippleHeader; 01356 01357 #define __GLX_POLYGONSTIPPLE_CMD_HDR_SIZE \ 01358 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE) 01359 01360 /* 01361 ** Data that is specific to a glTexImage1D or glTexImage2D call. The 01362 ** data is sent in the following order: 01363 ** Render or RenderLarge header 01364 ** Pixel header 01365 ** TexImage header 01366 ** When a glTexImage1D call the height field is unexamined by the server. 01367 */ 01368 #define __GLX_TEXIMAGE_HDR \ 01369 CARD32 target B32; \ 01370 CARD32 level B32; \ 01371 CARD32 components B32; \ 01372 CARD32 width B32; \ 01373 CARD32 height B32; \ 01374 CARD32 border B32; \ 01375 CARD32 format B32; \ 01376 CARD32 type B32 01377 01378 #define __GLX_TEXIMAGE_HDR_SIZE 32 01379 01380 #define __GLX_TEXIMAGE_CMD_HDR_SIZE \ 01381 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_TEXIMAGE_HDR_SIZE) 01382 01383 #define __GLX_TEXIMAGE_CMD_DISPATCH_HDR_SIZE \ 01384 (__GLX_PIXEL_HDR_SIZE + __GLX_TEXIMAGE_HDR_SIZE) 01385 01386 typedef struct { 01387 __GLX_RENDER_HDR; 01388 __GLX_PIXEL_HDR; 01389 __GLX_TEXIMAGE_HDR; 01390 } __GLXtexImageHeader; 01391 01392 typedef struct { 01393 __GLX_RENDER_LARGE_HDR; 01394 __GLX_PIXEL_HDR; 01395 __GLX_TEXIMAGE_HDR; 01396 } __GLXtexImageLargeHeader; 01397 01398 typedef struct { 01399 __GLX_PIXEL_HDR; 01400 __GLX_TEXIMAGE_HDR; 01401 } __GLXdispatchTexImageHeader; 01402 01403 /* 01404 ** Data that is specific to a glTexImage3D or glTexImage4D call. The 01405 ** data is sent in the following order: 01406 ** Render or RenderLarge header 01407 ** Pixel 3D header 01408 ** TexImage 3D header 01409 ** When a glTexImage3D call the size4d and woffset fields are unexamined 01410 ** by the server. 01411 ** Could be used by all TexImage commands and perhaps should be in the 01412 ** future. 01413 */ 01414 #define __GLX_TEXIMAGE_3D_HDR \ 01415 CARD32 target B32; \ 01416 CARD32 level B32; \ 01417 CARD32 internalformat B32; \ 01418 CARD32 width B32; \ 01419 CARD32 height B32; \ 01420 CARD32 depth B32; \ 01421 CARD32 size4d B32; \ 01422 CARD32 border B32; \ 01423 CARD32 format B32; \ 01424 CARD32 type B32; \ 01425 CARD32 nullimage B32 01426 01427 #define __GLX_TEXIMAGE_3D_HDR_SIZE 44 01428 01429 #define __GLX_TEXIMAGE_3D_CMD_HDR_SIZE \ 01430 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_3D_HDR_SIZE + \ 01431 __GLX_TEXIMAGE_3D_HDR_SIZE) 01432 01433 #define __GLX_TEXIMAGE_3D_CMD_DISPATCH_HDR_SIZE \ 01434 (__GLX_PIXEL_3D_HDR_SIZE + __GLX_TEXIMAGE_3D_HDR_SIZE) 01435 01436 typedef struct { 01437 __GLX_RENDER_HDR; 01438 __GLX_PIXEL_3D_HDR; 01439 __GLX_TEXIMAGE_3D_HDR; 01440 } __GLXtexImage3DHeader; 01441 01442 typedef struct { 01443 __GLX_RENDER_LARGE_HDR; 01444 __GLX_PIXEL_3D_HDR; 01445 __GLX_TEXIMAGE_3D_HDR; 01446 } __GLXtexImage3DLargeHeader; 01447 01448 typedef struct { 01449 __GLX_PIXEL_3D_HDR; 01450 __GLX_TEXIMAGE_3D_HDR; 01451 } __GLXdispatchTexImage3DHeader; 01452 01453 /* 01454 ** Data that is specific to a glTexSubImage1D or glTexSubImage2D call. The 01455 ** data is sent in the following order: 01456 ** Render or RenderLarge header 01457 ** Pixel header 01458 ** TexSubImage header 01459 ** When a glTexSubImage1D call is made, the yoffset and height fields 01460 ** are unexamined by the server and are considered to be padding. 01461 */ 01462 #define __GLX_TEXSUBIMAGE_HDR \ 01463 CARD32 target B32; \ 01464 CARD32 level B32; \ 01465 CARD32 xoffset B32; \ 01466 CARD32 yoffset B32; \ 01467 CARD32 width B32; \ 01468 CARD32 height B32; \ 01469 CARD32 format B32; \ 01470 CARD32 type B32; \ 01471 CARD32 nullImage \ 01472 01473 #define __GLX_TEXSUBIMAGE_HDR_SIZE 36 01474 01475 #define __GLX_TEXSUBIMAGE_CMD_HDR_SIZE \ 01476 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_TEXSUBIMAGE_HDR_SIZE) 01477 01478 #define __GLX_TEXSUBIMAGE_CMD_DISPATCH_HDR_SIZE \ 01479 (__GLX_PIXEL_HDR_SIZE + __GLX_TEXSUBIMAGE_HDR_SIZE) 01480 01481 typedef struct { 01482 __GLX_RENDER_HDR; 01483 __GLX_PIXEL_HDR; 01484 __GLX_TEXSUBIMAGE_HDR; 01485 } __GLXtexSubImageHeader; 01486 01487 typedef struct { 01488 __GLX_RENDER_LARGE_HDR; 01489 __GLX_PIXEL_HDR; 01490 __GLX_TEXSUBIMAGE_HDR; 01491 } __GLXtexSubImageLargeHeader; 01492 01493 typedef struct { 01494 __GLX_PIXEL_HDR; 01495 __GLX_TEXSUBIMAGE_HDR; 01496 } __GLXdispatchTexSubImageHeader; 01497 01498 /* 01499 ** Data that is specific to a glTexSubImage3D and 4D calls. The 01500 ** data is sent in the following order: 01501 ** Render or RenderLarge header 01502 ** Pixel 3D header 01503 ** TexSubImage 3D header 01504 ** When a glTexSubImage3D call is made, the woffset and size4d fields 01505 ** are unexamined by the server and are considered to be padding. 01506 */ 01507 #define __GLX_TEXSUBIMAGE_3D_HDR \ 01508 CARD32 target B32; \ 01509 CARD32 level B32; \ 01510 CARD32 xoffset B32; \ 01511 CARD32 yoffset B32; \ 01512 CARD32 zoffset B32; \ 01513 CARD32 woffset B32; \ 01514 CARD32 width B32; \ 01515 CARD32 height B32; \ 01516 CARD32 depth B32; \ 01517 CARD32 size4d B32; \ 01518 CARD32 format B32; \ 01519 CARD32 type B32; \ 01520 CARD32 nullImage \ 01521 01522 #define __GLX_TEXSUBIMAGE_3D_HDR_SIZE 52 01523 01524 #define __GLX_TEXSUBIMAGE_3D_CMD_HDR_SIZE \ 01525 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_3D_HDR_SIZE + \ 01526 __GLX_TEXSUBIMAGE_3D_HDR_SIZE) 01527 01528 #define __GLX_TEXSUBIMAGE_3D_CMD_DISPATCH_HDR_SIZE \ 01529 (__GLX_PIXEL_3D_HDR_SIZE + __GLX_TEXSUBIMAGE_3D_HDR_SIZE) 01530 01531 typedef struct { 01532 __GLX_RENDER_HDR; 01533 __GLX_PIXEL_3D_HDR; 01534 __GLX_TEXSUBIMAGE_3D_HDR; 01535 } __GLXtexSubImage3DHeader; 01536 01537 typedef struct { 01538 __GLX_RENDER_LARGE_HDR; 01539 __GLX_PIXEL_3D_HDR; 01540 __GLX_TEXSUBIMAGE_3D_HDR; 01541 } __GLXtexSubImage3DLargeHeader; 01542 01543 typedef struct { 01544 __GLX_PIXEL_3D_HDR; 01545 __GLX_TEXSUBIMAGE_3D_HDR; 01546 } __GLXdispatchTexSubImage3DHeader; 01547 01559 #define __GLX_COMPRESSED_TEXIMAGE_HDR \ 01560 CARD32 target B32; \ 01561 CARD32 level B32; \ 01562 CARD32 internalFormat B32; \ 01563 CARD32 width B32; \ 01564 CARD32 height B32; \ 01565 CARD32 border B32; \ 01566 CARD32 imageSize B32 01567 01568 #define __GLX_COMPRESSED_TEXIMAGE_HDR_SIZE 28 01569 01570 #define __GLX_COMPRESSED_TEXIMAGE_CMD_HDR_SIZE \ 01571 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXIMAGE_HDR_SIZE) 01572 01573 #define __GLX_COMPRESSED_TEXIMAGE_DISPATCH_HDR_SIZE \ 01574 (__GLX_COMPRESSED_TEXIMAGE_HDR_SIZE) 01575 01576 typedef struct { 01577 __GLX_RENDER_HDR; 01578 __GLX_COMPRESSED_TEXIMAGE_HDR; 01579 } __GLXcompressedTexImageHeader; 01580 01581 typedef struct { 01582 __GLX_RENDER_LARGE_HDR; 01583 __GLX_COMPRESSED_TEXIMAGE_HDR; 01584 } __GLXcompressedTexImageLargeHeader; 01585 01586 typedef struct { 01587 __GLX_COMPRESSED_TEXIMAGE_HDR; 01588 } __GLXdispatchCompressedTexImageHeader; 01589 01601 #define __GLX_COMPRESSED_TEXSUBIMAGE_HDR \ 01602 CARD32 target B32; \ 01603 CARD32 level B32; \ 01604 CARD32 xoffset B32; \ 01605 CARD32 yoffset B32; \ 01606 CARD32 width B32; \ 01607 CARD32 height B32; \ 01608 CARD32 format B32; \ 01609 CARD32 imageSize B32 01610 01611 #define __GLX_COMPRESSED_TEXSUBIMAGE_HDR_SIZE 32 01612 01613 #define __GLX_COMPRESSED_TEXSUBIMAGE_CMD_HDR_SIZE \ 01614 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXSUBIMAGE_HDR_SIZE) 01615 01616 #define __GLX_COMPRESSED_TEXSUBIMAGE_DISPATCH_HDR_SIZE \ 01617 (__GLX_COMPRESSED_TEXSUBIMAGE_HDR_SIZE) 01618 01619 typedef struct { 01620 __GLX_RENDER_HDR; 01621 __GLX_COMPRESSED_TEXSUBIMAGE_HDR; 01622 } __GLXcompressedTexSubImageHeader; 01623 01624 typedef struct { 01625 __GLX_RENDER_LARGE_HDR; 01626 __GLX_COMPRESSED_TEXSUBIMAGE_HDR; 01627 } __GLXcompressedTexSubImageLargeHeader; 01628 01629 typedef struct { 01630 __GLX_COMPRESSED_TEXSUBIMAGE_HDR; 01631 } __GLXdispatchCompressedTexSubImageHeader; 01632 01640 #define __GLX_COMPRESSED_TEXIMAGE_3D_HDR \ 01641 CARD32 target B32; \ 01642 CARD32 level B32; \ 01643 CARD32 internalFormat B32; \ 01644 CARD32 width B32; \ 01645 CARD32 height B32; \ 01646 CARD32 depth B32; \ 01647 CARD32 border B32; \ 01648 CARD32 imageSize B32 01649 01650 #define __GLX_COMPRESSED_TEXIMAGE_3D_HDR_SIZE 32 01651 01652 #define __GLX_COMPRESSED_TEXIMAGE_3D_CMD_HDR_SIZE \ 01653 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXIMAGE_3D_HDR_SIZE) 01654 01655 #define __GLX_COMPRESSED_TEXIMAGE_3D_DISPATCH_HDR_SIZE \ 01656 (__GLX_COMPRESSED_TEXIMAGE_3D_HDR_SIZE) 01657 01658 typedef struct { 01659 __GLX_RENDER_HDR; 01660 __GLX_COMPRESSED_TEXIMAGE_3D_HDR; 01661 } __GLXcompressedTexImage3DHeader; 01662 01663 typedef struct { 01664 __GLX_RENDER_LARGE_HDR; 01665 __GLX_COMPRESSED_TEXIMAGE_3D_HDR; 01666 } __GLXcompressedTexImage3DLargeHeader; 01667 01668 typedef struct { 01669 __GLX_COMPRESSED_TEXIMAGE_3D_HDR; 01670 } __GLXdispatchCompressedTexImage3DHeader; 01671 01679 #define __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR \ 01680 CARD32 target B32; \ 01681 CARD32 level B32; \ 01682 CARD32 xoffset B32; \ 01683 CARD32 yoffset B32; \ 01684 CARD32 zoffset B32; \ 01685 CARD32 width B32; \ 01686 CARD32 height B32; \ 01687 CARD32 depth B32; \ 01688 CARD32 format B32; \ 01689 CARD32 imageSize B32 01690 01691 #define __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR_SIZE 32 01692 01693 #define __GLX_COMPRESSED_TEXSUBIMAGE_3D_CMD_HDR_SIZE \ 01694 (__GLX_RENDER_HDR_SIZE + __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR_SIZE) 01695 01696 #define __GLX_COMPRESSED_TEXSUBIMAGE_3D_DISPATCH_HDR_SIZE \ 01697 (__GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR_SIZE) 01698 01699 typedef struct { 01700 __GLX_RENDER_HDR; 01701 __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR; 01702 } __GLXcompressedTexSubImage3DHeader; 01703 01704 typedef struct { 01705 __GLX_RENDER_LARGE_HDR; 01706 __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR; 01707 } __GLXcompressedTexSubImage3DLargeHeader; 01708 01709 typedef struct { 01710 __GLX_COMPRESSED_TEXSUBIMAGE_3D_HDR; 01711 } __GLXdispatchCompressedTexSubImage3DHeader; 01712 01713 /* 01714 ** Data that is specific to a glDrawPixels call. The data is sent in the 01715 ** following order: 01716 ** Render or RenderLarge header 01717 ** Pixel header 01718 ** DrawPixels header 01719 */ 01720 #define __GLX_DRAWPIXELS_HDR \ 01721 CARD32 width B32; \ 01722 CARD32 height B32; \ 01723 CARD32 format B32; \ 01724 CARD32 type B32 01725 01726 #define __GLX_DRAWPIXELS_HDR_SIZE 16 01727 01728 #define __GLX_DRAWPIXELS_CMD_HDR_SIZE \ 01729 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_DRAWPIXELS_HDR_SIZE) 01730 01731 #define __GLX_DRAWPIXELS_CMD_DISPATCH_HDR_SIZE \ 01732 (__GLX_PIXEL_HDR_SIZE + __GLX_DRAWPIXELS_HDR_SIZE) 01733 01734 typedef struct { 01735 __GLX_RENDER_HDR; 01736 __GLX_PIXEL_HDR; 01737 __GLX_DRAWPIXELS_HDR; 01738 } __GLXdrawPixelsHeader; 01739 01740 typedef struct { 01741 __GLX_RENDER_LARGE_HDR; 01742 __GLX_PIXEL_HDR; 01743 __GLX_DRAWPIXELS_HDR; 01744 } __GLXdrawPixelsLargeHeader; 01745 01746 typedef struct { 01747 __GLX_PIXEL_HDR; 01748 __GLX_DRAWPIXELS_HDR; 01749 } __GLXdispatchDrawPixelsHeader; 01750 01751 /* 01752 ** Data that is specific to a glConvolutionFilter1D or glConvolutionFilter2D 01753 ** call. The data is sent in the following order: 01754 ** Render or RenderLarge header 01755 ** Pixel header 01756 ** ConvolutionFilter header 01757 ** When a glConvolutionFilter1D call the height field is unexamined by the server. 01758 */ 01759 #define __GLX_CONV_FILT_HDR \ 01760 CARD32 target B32; \ 01761 CARD32 internalformat B32; \ 01762 CARD32 width B32; \ 01763 CARD32 height B32; \ 01764 CARD32 format B32; \ 01765 CARD32 type B32 01766 01767 #define __GLX_CONV_FILT_HDR_SIZE 24 01768 01769 #define __GLX_CONV_FILT_CMD_HDR_SIZE \ 01770 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_CONV_FILT_HDR_SIZE) 01771 01772 #define __GLX_CONV_FILT_CMD_DISPATCH_HDR_SIZE \ 01773 (__GLX_PIXEL_HDR_SIZE + __GLX_CONV_FILT_HDR_SIZE) 01774 typedef struct { 01775 __GLX_RENDER_HDR; 01776 __GLX_PIXEL_HDR; 01777 __GLX_CONV_FILT_HDR; 01778 } __GLXConvolutionFilterHeader; 01779 01780 typedef struct { 01781 __GLX_RENDER_LARGE_HDR; 01782 __GLX_PIXEL_HDR; 01783 __GLX_CONV_FILT_HDR; 01784 } __GLXConvolutionFilterLargeHeader; 01785 01786 typedef struct { 01787 __GLX_PIXEL_HDR; 01788 __GLX_CONV_FILT_HDR; 01789 } __GLXdispatchConvolutionFilterHeader; 01790 01791 /* 01792 ** Data that is specific to a glDrawArraysEXT call. The data is sent in the 01793 ** following order: 01794 ** Render or RenderLarge header 01795 ** Draw Arrays header 01796 ** a variable number of Component headers 01797 ** vertex data for each component type 01798 */ 01799 01800 #define __GLX_DRAWARRAYS_HDR \ 01801 CARD32 numVertexes B32; \ 01802 CARD32 numComponents B32; \ 01803 CARD32 primType B32 01804 01805 #define __GLX_DRAWARRAYS_HDR_SIZE 12 01806 01807 #define __GLX_DRAWARRAYS_CMD_HDR_SIZE \ 01808 (__GLX_RENDER_HDR_SIZE + __GLX_DRAWARRAYS_HDR_SIZE) 01809 01810 typedef struct { 01811 __GLX_RENDER_HDR; 01812 __GLX_DRAWARRAYS_HDR; 01813 } __GLXdrawArraysHeader; 01814 01815 typedef struct { 01816 __GLX_RENDER_LARGE_HDR; 01817 __GLX_DRAWARRAYS_HDR; 01818 } __GLXdrawArraysLargeHeader; 01819 01820 typedef struct { 01821 __GLX_DRAWARRAYS_HDR; 01822 } __GLXdispatchDrawArraysHeader; 01823 01824 #define __GLX_COMPONENT_HDR \ 01825 CARD32 datatype B32; \ 01826 INT32 numVals B32; \ 01827 CARD32 component B32 01828 01829 typedef struct { 01830 __GLX_COMPONENT_HDR; 01831 } __GLXdispatchDrawArraysComponentHeader; 01832 01833 #define __GLX_COMPONENT_HDR_SIZE 12 01834 01835 /* 01836 ** Data that is specific to a glColorTable call 01837 ** The data is sent in the following order: 01838 ** Render or RenderLarge header 01839 ** Pixel header 01840 ** ColorTable header 01841 */ 01842 01843 #define __GLX_COLOR_TABLE_HDR \ 01844 CARD32 target B32; \ 01845 CARD32 internalformat B32; \ 01846 CARD32 width B32; \ 01847 CARD32 format B32; \ 01848 CARD32 type B32 01849 01850 #define __GLX_COLOR_TABLE_HDR_SIZE 20 01851 01852 #define __GLX_COLOR_TABLE_CMD_HDR_SIZE \ 01853 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_COLOR_TABLE_HDR_SIZE) 01854 01855 typedef struct { 01856 __GLX_RENDER_HDR; 01857 __GLX_PIXEL_HDR; 01858 __GLX_COLOR_TABLE_HDR; 01859 } __GLXColorTableHeader; 01860 01861 typedef struct { 01862 __GLX_RENDER_LARGE_HDR; 01863 __GLX_PIXEL_HDR; 01864 __GLX_COLOR_TABLE_HDR; 01865 } __GLXColorTableLargeHeader; 01866 01867 typedef struct { 01868 __GLX_PIXEL_HDR; 01869 __GLX_COLOR_TABLE_HDR; 01870 } __GLXdispatchColorTableHeader; 01871 01872 /* 01873 ** Data that is specific to a glColorSubTable call 01874 ** The data is sent in the following order: 01875 ** Render or RenderLarge header 01876 ** Pixel header 01877 ** ColorTable header 01878 */ 01879 01880 #define __GLX_COLOR_SUBTABLE_HDR \ 01881 CARD32 target B32; \ 01882 CARD32 start B32; \ 01883 CARD32 count B32; \ 01884 CARD32 format B32; \ 01885 CARD32 type B32 01886 01887 #define __GLX_COLOR_SUBTABLE_HDR_SIZE 20 01888 01889 #define __GLX_COLOR_SUBTABLE_CMD_HDR_SIZE \ 01890 (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + \ 01891 __GLX_COLOR_SUBTABLE_HDR_SIZE) 01892 01893 typedef struct { 01894 __GLX_RENDER_HDR; 01895 __GLX_PIXEL_HDR; 01896 __GLX_COLOR_SUBTABLE_HDR; 01897 } __GLXColorSubTableHeader; 01898 01899 typedef struct { 01900 __GLX_RENDER_LARGE_HDR; 01901 __GLX_PIXEL_HDR; 01902 __GLX_COLOR_SUBTABLE_HDR; 01903 } __GLXColorSubTableLargeHeader; 01904 01905 typedef struct { 01906 __GLX_PIXEL_HDR; 01907 __GLX_COLOR_SUBTABLE_HDR; 01908 } __GLXdispatchColorSubTableHeader; 01909 01910 #define GLX_WINDOW_TYPE 1 01911 #define GLX_PIXMAP_TYPE 2 01912 #define GLX_VIDEO_SOURCE_TYPE 3 01913 #define GLX_PBUFFER_TYPE 4 01914 /* 5 is for DM_PBUFFER */ 01915 #define GLX_GLXWINDOW_TYPE 6 01916 01917 /*****************************************************************************/ 01918 01919 /* 01920 ** Restore these definitions back to the typedefs in glx.h 01921 */ 01922 #undef GLXContextID 01923 #undef GLXPixmap 01924 #undef GLXDrawable 01925 #undef GLXPbuffer 01926 #undef GLXWindow 01927 #undef GLXFBConfigID 01928 #undef GLXFBConfigIDSGIX 01929 #undef GLXPbufferSGIX 01930 01931 01932 /* Opcodes for GLX commands */ 01933 01934 #define X_GLXRender 1 01935 #define X_GLXRenderLarge 2 01936 #define X_GLXCreateContext 3 01937 #define X_GLXDestroyContext 4 01938 #define X_GLXMakeCurrent 5 01939 #define X_GLXIsDirect 6 01940 #define X_GLXQueryVersion 7 01941 #define X_GLXWaitGL 8 01942 #define X_GLXWaitX 9 01943 #define X_GLXCopyContext 10 01944 #define X_GLXSwapBuffers 11 01945 #define X_GLXUseXFont 12 01946 #define X_GLXCreateGLXPixmap 13 01947 #define X_GLXGetVisualConfigs 14 01948 #define X_GLXDestroyGLXPixmap 15 01949 #define X_GLXVendorPrivate 16 01950 #define X_GLXVendorPrivateWithReply 17 01951 #define X_GLXQueryExtensionsString 18 01952 #define X_GLXQueryServerString 19 01953 #define X_GLXClientInfo 20 01954 #define X_GLXGetFBConfigs 21 01955 #define X_GLXCreatePixmap 22 01956 #define X_GLXDestroyPixmap 23 01957 #define X_GLXCreateNewContext 24 01958 #define X_GLXQueryContext 25 01959 #define X_GLXMakeContextCurrent 26 01960 #define X_GLXCreatePbuffer 27 01961 #define X_GLXDestroyPbuffer 28 01962 #define X_GLXGetDrawableAttributes 29 01963 #define X_GLXChangeDrawableAttributes 30 01964 #define X_GLXCreateWindow 31 01965 #define X_GLXDestroyWindow 32 01966 01967 01968 /* Opcodes for single commands (part of GLX command space) */ 01969 01970 #define X_GLsop_NewList 101 01971 #define X_GLsop_EndList 102 01972 #define X_GLsop_DeleteLists 103 01973 #define X_GLsop_GenLists 104 01974 #define X_GLsop_FeedbackBuffer 105 01975 #define X_GLsop_SelectBuffer 106 01976 #define X_GLsop_RenderMode 107 01977 #define X_GLsop_Finish 108 01978 #define X_GLsop_Flush 142 01979 #define X_GLsop_PixelStoref 109 01980 #define X_GLsop_PixelStorei 110 01981 #define X_GLsop_ReadPixels 111 01982 #define X_GLsop_GetBooleanv 112 01983 #define X_GLsop_GetClipPlane 113 01984 #define X_GLsop_GetDoublev 114 01985 #define X_GLsop_GetError 115 01986 #define X_GLsop_GetFloatv 116 01987 #define X_GLsop_GetIntegerv 117 01988 #define X_GLsop_GetLightfv 118 01989 #define X_GLsop_GetLightiv 119 01990 #define X_GLsop_GetMapdv 120 01991 #define X_GLsop_GetMapfv 121 01992 #define X_GLsop_GetMapiv 122 01993 #define X_GLsop_GetMaterialfv 123 01994 #define X_GLsop_GetMaterialiv 124 01995 #define X_GLsop_GetPixelMapfv 125 01996 #define X_GLsop_GetPixelMapuiv 126 01997 #define X_GLsop_GetPixelMapusv 127 01998 #define X_GLsop_GetPolygonStipple 128 01999 #define X_GLsop_GetString 129 02000 #define X_GLsop_GetTexEnvfv 130 02001 #define X_GLsop_GetTexEnviv 131 02002 #define X_GLsop_GetTexGendv 132 02003 #define X_GLsop_GetTexGenfv 133 02004 #define X_GLsop_GetTexGeniv 134 02005 #define X_GLsop_GetTexImage 135 02006 #define X_GLsop_GetTexParameterfv 136 02007 #define X_GLsop_GetTexParameteriv 137 02008 #define X_GLsop_GetTexLevelParameterfv 138 02009 #define X_GLsop_GetTexLevelParameteriv 139 02010 #define X_GLsop_IsEnabled 140 02011 #define X_GLsop_IsList 141 02012 #define X_GLsop_AreTexturesResident 143 02013 #define X_GLsop_DeleteTextures 144 02014 #define X_GLsop_GenTextures 145 02015 #define X_GLsop_IsTexture 146 02016 #define X_GLsop_GetColorTable 147 02017 #define X_GLsop_GetColorTableParameterfv 148 02018 #define X_GLsop_GetColorTableParameteriv 149 02019 #define X_GLsop_GetConvolutionFilter 150 02020 #define X_GLsop_GetConvolutionParameterfv 151 02021 #define X_GLsop_GetConvolutionParameteriv 152 02022 #define X_GLsop_GetSeparableFilter 153 02023 #define X_GLsop_GetHistogram 154 02024 #define X_GLsop_GetHistogramParameterfv 155 02025 #define X_GLsop_GetHistogramParameteriv 156 02026 #define X_GLsop_GetMinmax 157 02027 #define X_GLsop_GetMinmaxParameterfv 158 02028 #define X_GLsop_GetMinmaxParameteriv 159 02029 #define X_GLsop_GetCompressedTexImage 160 02030 02031 02032 /* Opcodes for rendering commands */ 02033 02034 #define X_GLrop_CallList 1 02035 #define X_GLrop_CallLists 2 02036 #define X_GLrop_ListBase 3 02037 #define X_GLrop_Begin 4 02038 #define X_GLrop_Bitmap 5 02039 #define X_GLrop_Color3bv 6 02040 #define X_GLrop_Color3dv 7 02041 #define X_GLrop_Color3fv 8 02042 #define X_GLrop_Color3iv 9 02043 #define X_GLrop_Color3sv 10 02044 #define X_GLrop_Color3ubv 11 02045 #define X_GLrop_Color3uiv 12 02046 #define X_GLrop_Color3usv 13 02047 #define X_GLrop_Color4bv 14 02048 #define X_GLrop_Color4dv 15 02049 #define X_GLrop_Color4fv 16 02050 #define X_GLrop_Color4iv 17 02051 #define X_GLrop_Color4sv 18 02052 #define X_GLrop_Color4ubv 19 02053 #define X_GLrop_Color4uiv 20 02054 #define X_GLrop_Color4usv 21 02055 #define X_GLrop_EdgeFlagv 22 02056 #define X_GLrop_End 23 02057 #define X_GLrop_Indexdv 24 02058 #define X_GLrop_Indexfv 25 02059 #define X_GLrop_Indexiv 26 02060 #define X_GLrop_Indexsv 27 02061 #define X_GLrop_Normal3bv 28 02062 #define X_GLrop_Normal3dv 29 02063 #define X_GLrop_Normal3fv 30 02064 #define X_GLrop_Normal3iv 31 02065 #define X_GLrop_Normal3sv 32 02066 #define X_GLrop_RasterPos2dv 33 02067 #define X_GLrop_RasterPos2fv 34 02068 #define X_GLrop_RasterPos2iv 35 02069 #define X_GLrop_RasterPos2sv 36 02070 #define X_GLrop_RasterPos3dv 37 02071 #define X_GLrop_RasterPos3fv 38 02072 #define X_GLrop_RasterPos3iv 39 02073 #define X_GLrop_RasterPos3sv 40 02074 #define X_GLrop_RasterPos4dv 41 02075 #define X_GLrop_RasterPos4fv 42 02076 #define X_GLrop_RasterPos4iv 43 02077 #define X_GLrop_RasterPos4sv 44 02078 #define X_GLrop_Rectdv 45 02079 #define X_GLrop_Rectfv 46 02080 #define X_GLrop_Rectiv 47 02081 #define X_GLrop_Rectsv 48 02082 #define X_GLrop_TexCoord1dv 49 02083 #define X_GLrop_TexCoord1fv 50 02084 #define X_GLrop_TexCoord1iv 51 02085 #define X_GLrop_TexCoord1sv 52 02086 #define X_GLrop_TexCoord2dv 53 02087 #define X_GLrop_TexCoord2fv 54 02088 #define X_GLrop_TexCoord2iv 55 02089 #define X_GLrop_TexCoord2sv 56 02090 #define X_GLrop_TexCoord3dv 57 02091 #define X_GLrop_TexCoord3fv 58 02092 #define X_GLrop_TexCoord3iv 59 02093 #define X_GLrop_TexCoord3sv 60 02094 #define X_GLrop_TexCoord4dv 61 02095 #define X_GLrop_TexCoord4fv 62 02096 #define X_GLrop_TexCoord4iv 63 02097 #define X_GLrop_TexCoord4sv 64 02098 #define X_GLrop_Vertex2dv 65 02099 #define X_GLrop_Vertex2fv 66 02100 #define X_GLrop_Vertex2iv 67 02101 #define X_GLrop_Vertex2sv 68 02102 #define X_GLrop_Vertex3dv 69 02103 #define X_GLrop_Vertex3fv 70 02104 #define X_GLrop_Vertex3iv 71 02105 #define X_GLrop_Vertex3sv 72 02106 #define X_GLrop_Vertex4dv 73 02107 #define X_GLrop_Vertex4fv 74 02108 #define X_GLrop_Vertex4iv 75 02109 #define X_GLrop_Vertex4sv 76 02110 #define X_GLrop_ClipPlane 77 02111 #define X_GLrop_ColorMaterial 78 02112 #define X_GLrop_CullFace 79 02113 #define X_GLrop_Fogf 80 02114 #define X_GLrop_Fogfv 81 02115 #define X_GLrop_Fogi 82 02116 #define X_GLrop_Fogiv 83 02117 #define X_GLrop_FrontFace 84 02118 #define X_GLrop_Hint 85 02119 #define X_GLrop_Lightf 86 02120 #define X_GLrop_Lightfv 87 02121 #define X_GLrop_Lighti 88 02122 #define X_GLrop_Lightiv 89 02123 #define X_GLrop_LightModelf 90 02124 #define X_GLrop_LightModelfv 91 02125 #define X_GLrop_LightModeli 92 02126 #define X_GLrop_LightModeliv 93 02127 #define X_GLrop_LineStipple 94 02128 #define X_GLrop_LineWidth 95 02129 #define X_GLrop_Materialf 96 02130 #define X_GLrop_Materialfv 97 02131 #define X_GLrop_Materiali 98 02132 #define X_GLrop_Materialiv 99 02133 #define X_GLrop_PointSize 100 02134 #define X_GLrop_PolygonMode 101 02135 #define X_GLrop_PolygonStipple 102 02136 #define X_GLrop_Scissor 103 02137 #define X_GLrop_ShadeModel 104 02138 #define X_GLrop_TexParameterf 105 02139 #define X_GLrop_TexParameterfv 106 02140 #define X_GLrop_TexParameteri 107 02141 #define X_GLrop_TexParameteriv 108 02142 #define X_GLrop_TexImage1D 109 02143 #define X_GLrop_TexImage2D 110 02144 #define X_GLrop_TexEnvf 111 02145 #define X_GLrop_TexEnvfv 112 02146 #define X_GLrop_TexEnvi 113 02147 #define X_GLrop_TexEnviv 114 02148 #define X_GLrop_TexGend 115 02149 #define X_GLrop_TexGendv 116 02150 #define X_GLrop_TexGenf 117 02151 #define X_GLrop_TexGenfv 118 02152 #define X_GLrop_TexGeni 119 02153 #define X_GLrop_TexGeniv 120 02154 #define X_GLrop_InitNames 121 02155 #define X_GLrop_LoadName 122 02156 #define X_GLrop_PassThrough 123 02157 #define X_GLrop_PopName 124 02158 #define X_GLrop_PushName 125 02159 #define X_GLrop_DrawBuffer 126 02160 #define X_GLrop_Clear 127 02161 #define X_GLrop_ClearAccum 128 02162 #define X_GLrop_ClearIndex 129 02163 #define X_GLrop_ClearColor 130 02164 #define X_GLrop_ClearStencil 131 02165 #define X_GLrop_ClearDepth 132 02166 #define X_GLrop_StencilMask 133 02167 #define X_GLrop_ColorMask 134 02168 #define X_GLrop_DepthMask 135 02169 #define X_GLrop_IndexMask 136 02170 #define X_GLrop_Accum 137 02171 #define X_GLrop_Disable 138 02172 #define X_GLrop_Enable 139 02173 #define X_GLrop_PopAttrib 141 02174 #define X_GLrop_PushAttrib 142 02175 #define X_GLrop_Map1d 143 02176 #define X_GLrop_Map1f 144 02177 #define X_GLrop_Map2d 145 02178 #define X_GLrop_Map2f 146 02179 #define X_GLrop_MapGrid1d 147 02180 #define X_GLrop_MapGrid1f 148 02181 #define X_GLrop_MapGrid2d 149 02182 #define X_GLrop_MapGrid2f 150 02183 #define X_GLrop_EvalCoord1dv 151 02184 #define X_GLrop_EvalCoord1fv 152 02185 #define X_GLrop_EvalCoord2dv 153 02186 #define X_GLrop_EvalCoord2fv 154 02187 #define X_GLrop_EvalMesh1 155 02188 #define X_GLrop_EvalPoint1 156 02189 #define X_GLrop_EvalMesh2 157 02190 #define X_GLrop_EvalPoint2 158 02191 #define X_GLrop_AlphaFunc 159 02192 #define X_GLrop_BlendFunc 160 02193 #define X_GLrop_LogicOp 161 02194 #define X_GLrop_StencilFunc 162 02195 #define X_GLrop_StencilOp 163 02196 #define X_GLrop_DepthFunc 164 02197 #define X_GLrop_PixelZoom 165 02198 #define X_GLrop_PixelTransferf 166 02199 #define X_GLrop_PixelTransferi 167 02200 #define X_GLrop_PixelMapfv 168 02201 #define X_GLrop_PixelMapuiv 169 02202 #define X_GLrop_PixelMapusv 170 02203 #define X_GLrop_ReadBuffer 171 02204 #define X_GLrop_CopyPixels 172 02205 #define X_GLrop_DrawPixels 173 02206 #define X_GLrop_DepthRange 174 02207 #define X_GLrop_Frustum 175 02208 #define X_GLrop_LoadIdentity 176 02209 #define X_GLrop_LoadMatrixf 177 02210 #define X_GLrop_LoadMatrixd 178 02211 #define X_GLrop_MatrixMode 179 02212 #define X_GLrop_MultMatrixf 180 02213 #define X_GLrop_MultMatrixd 181 02214 #define X_GLrop_Ortho 182 02215 #define X_GLrop_PopMatrix 183 02216 #define X_GLrop_PushMatrix 184 02217 #define X_GLrop_Rotated 185 02218 #define X_GLrop_Rotatef 186 02219 #define X_GLrop_Scaled 187 02220 #define X_GLrop_Scalef 188 02221 #define X_GLrop_Translated 189 02222 #define X_GLrop_Translatef 190 02223 #define X_GLrop_Viewport 191 02224 #define X_GLrop_DrawArrays 193 02225 #define X_GLrop_PolygonOffset 192 02226 #define X_GLrop_CopyTexImage1D 4119 02227 #define X_GLrop_CopyTexImage2D 4120 02228 #define X_GLrop_CopyTexSubImage1D 4121 02229 #define X_GLrop_CopyTexSubImage2D 4122 02230 #define X_GLrop_TexSubImage1D 4099 02231 #define X_GLrop_TexSubImage2D 4100 02232 #define X_GLrop_BindTexture 4117 02233 #define X_GLrop_PrioritizeTextures 4118 02234 #define X_GLrop_Indexubv 194 02235 #define X_GLrop_BlendColor 4096 02236 #define X_GLrop_BlendEquation 4097 02237 #define X_GLrop_ColorTable 2053 02238 #define X_GLrop_ColorTableParameterfv 2054 02239 #define X_GLrop_ColorTableParameteriv 2055 02240 #define X_GLrop_CopyColorTable 2056 02241 #define X_GLrop_ColorSubTable 195 02242 #define X_GLrop_CopyColorSubTable 196 02243 #define X_GLrop_ConvolutionFilter1D 4101 02244 #define X_GLrop_ConvolutionFilter2D 4102 02245 #define X_GLrop_ConvolutionParameterf 4103 02246 #define X_GLrop_ConvolutionParameterfv 4104 02247 #define X_GLrop_ConvolutionParameteri 4105 02248 #define X_GLrop_ConvolutionParameteriv 4106 02249 #define X_GLrop_CopyConvolutionFilter1D 4107 02250 #define X_GLrop_CopyConvolutionFilter2D 4108 02251 #define X_GLrop_SeparableFilter2D 4109 02252 #define X_GLrop_Histogram 4110 02253 #define X_GLrop_Minmax 4111 02254 #define X_GLrop_ResetHistogram 4112 02255 #define X_GLrop_ResetMinmax 4113 02256 #define X_GLrop_TexImage3D 4114 02257 #define X_GLrop_TexSubImage3D 4115 02258 #define X_GLrop_CopyTexSubImage3D 4123 02259 #define X_GLrop_DrawArraysEXT 4116 02260 02261 /* Added for core GL version 1.3 */ 02262 02263 #define X_GLrop_ActiveTextureARB 197 02264 #define X_GLrop_MultiTexCoord1dvARB 198 02265 #define X_GLrop_MultiTexCoord1fvARB 199 02266 #define X_GLrop_MultiTexCoord1ivARB 200 02267 #define X_GLrop_MultiTexCoord1svARB 201 02268 #define X_GLrop_MultiTexCoord2dvARB 202 02269 #define X_GLrop_MultiTexCoord2fvARB 203 02270 #define X_GLrop_MultiTexCoord2ivARB 204 02271 #define X_GLrop_MultiTexCoord2svARB 205 02272 #define X_GLrop_MultiTexCoord3dvARB 206 02273 #define X_GLrop_MultiTexCoord3fvARB 207 02274 #define X_GLrop_MultiTexCoord3ivARB 208 02275 #define X_GLrop_MultiTexCoord3svARB 209 02276 #define X_GLrop_MultiTexCoord4dvARB 210 02277 #define X_GLrop_MultiTexCoord4fvARB 211 02278 #define X_GLrop_MultiTexCoord4ivARB 212 02279 #define X_GLrop_MultiTexCoord4svARB 213 02280 #define X_GLrop_CompressedTexImage1D 214 02281 #define X_GLrop_CompressedTexImage2D 215 02282 #define X_GLrop_CompressedTexImage3D 216 02283 #define X_GLrop_CompressedTexSubImage1D 217 02284 #define X_GLrop_CompressedTexSubImage2D 218 02285 #define X_GLrop_CompressedTexSubImage3D 219 02286 #define X_GLrop_SampleCoverageARB 229 02287 02288 /* Added for core GL version 1.4 */ 02289 02290 #define X_GLrop_WindowPos3fARB 230 02291 #define X_GLrop_FogCoordfv 4124 02292 #define X_GLrop_FogCoorddv 4125 02293 #define X_GLrop_PointParameterfARB 2065 02294 #define X_GLrop_PointParameterfvARB 2066 02295 #define X_GLrop_SecondaryColor3bv 4126 02296 #define X_GLrop_SecondaryColor3sv 4127 02297 #define X_GLrop_SecondaryColor3iv 4128 02298 #define X_GLrop_SecondaryColor3fv 4129 02299 #define X_GLrop_SecondaryColor3dv 4130 02300 #define X_GLrop_SecondaryColor3ubv 4131 02301 #define X_GLrop_SecondaryColor3usv 4132 02302 #define X_GLrop_SecondaryColor3uiv 4133 02303 #define X_GLrop_BlendFuncSeparate 4134 02304 #define X_GLrop_PointParameteri 4221 02305 #define X_GLrop_PointParameteriv 4222 02306 02307 /* Added for core GL version 1.5 */ 02308 /* XXX opcodes not defined in the spec */ 02309 02310 /* Opcodes for Vendor Private commands */ 02311 02312 02313 #define X_GLvop_GetConvolutionFilterEXT 1 02314 #define X_GLvop_GetConvolutionParameterfvEXT 2 02315 #define X_GLvop_GetConvolutionParameterivEXT 3 02316 #define X_GLvop_GetSeparableFilterEXT 4 02317 #define X_GLvop_GetHistogramEXT 5 02318 #define X_GLvop_GetHistogramParameterfvEXT 6 02319 #define X_GLvop_GetHistogramParameterivEXT 7 02320 #define X_GLvop_GetMinmaxEXT 8 02321 #define X_GLvop_GetMinmaxParameterfvEXT 9 02322 #define X_GLvop_GetMinmaxParameterivEXT 10 02323 #define X_GLvop_AreTexturesResidentEXT 11 02324 #define X_GLvop_DeleteTexturesEXT 12 02325 #define X_GLvop_GenTexturesEXT 13 02326 #define X_GLvop_IsTextureEXT 14 02327 #define X_GLvop_GetCombinerInputParameterfvNV 1270 02328 #define X_GLvop_GetCombinerInputParameterivNV 1271 02329 #define X_GLvop_GetCombinerOutputParameterfvNV 1272 02330 #define X_GLvop_GetCombinerOutputParameterivNV 1273 02331 #define X_GLvop_GetFinalCombinerOutputParameterfvNV 1274 02332 #define X_GLvop_GetFinalCombinerOutputParameterivNV 1275 02333 #define X_GLvop_DeleteFenceNV 1276 02334 #define X_GLvop_GenFencesNV 1277 02335 #define X_GLvop_IsFenceNV 1278 02336 #define X_GLvop_TestFenceNV 1279 02337 #define X_GLvop_GetFenceivNV 1280 02338 #define X_GLvop_AreProgramsResidentNV 1293 02339 #define X_GLvop_DeleteProgramARB 1294 02340 #define X_GLvop_GenProgramsARB 1295 02341 #define X_GLvop_GetProgramEnvParameterfvARB 1296 02342 #define X_GLvop_GetProgramEnvParameterdvARB 1297 02343 #define X_GLvop_GetProgramEnvParameterivNV 1298 02344 #define X_GLvop_GetProgramStringNV 1299 02345 #define X_GLvop_GetTrackMatrixivNV 1300 02346 #define X_GLvop_GetVertexAttribdvARB 1301 02347 #define X_GLvop_GetVertexAttribfvARB 1302 02348 #define X_GLvop_GetVertexAttribivARB 1303 02349 #define X_GLvop_IsProgramARB 1304 02350 #define X_GLvop_GetProgramLocalParameterfvARB 1305 02351 #define X_GLvop_GetProgramLocalParameterdvARB 1306 02352 #define X_GLvop_GetProgramivARB 1307 02353 #define X_GLvop_GetProgramStringARB 1308 02354 #define X_GLvop_GetProgramNamedParameter4fvNV 1310 02355 #define X_GLvop_GetProgramNamedParameter4dvNV 1311 02356 #define X_GLvop_SampleMaskSGIS 2048 02357 #define X_GLvop_SamplePatternSGIS 2049 02358 #define X_GLvop_GetDetailTexFuncSGIS 4096 02359 #define X_GLvop_GetSharpenTexFuncSGIS 4097 02360 #define X_GLvop_GetColorTableSGI 4098 02361 #define X_GLvop_GetColorTableParameterfvSGI 4099 02362 #define X_GLvop_GetColorTableParameterivSGI 4100 02363 #define X_GLvop_GetTexFilterFuncSGIS 4101 02364 #define X_GLvop_GetInstrumentsSGIX 4102 02365 #define X_GLvop_InstrumentsBufferSGIX 4103 02366 #define X_GLvop_PollInstrumentsSGIX 4104 02367 #define X_GLvop_FlushRasterSGIX 4105 02368 02369 /* Opcodes for GLX vendor private commands */ 02370 02371 #define X_GLXvop_QueryContextInfoEXT 1024 02372 #define X_GLXvop_SwapIntervalSGI 65536 02373 #define X_GLXvop_MakeCurrentReadSGI 65537 02374 #define X_GLXvop_CreateGLXVideoSourceSGIX 65538 02375 #define X_GLXvop_DestroyGLXVideoSourceSGIX 65539 02376 #define X_GLXvop_GetFBConfigsSGIX 65540 02377 #define X_GLXvop_CreateContextWithConfigSGIX 65541 02378 #define X_GLXvop_CreateGLXPixmapWithConfigSGIX 65542 02379 #define X_GLXvop_CreateGLXPbufferSGIX 65543 02380 #define X_GLXvop_DestroyGLXPbufferSGIX 65544 02381 #define X_GLXvop_ChangeDrawableAttributesSGIX 65545 02382 #define X_GLXvop_GetDrawableAttributesSGIX 65546 02383 #define X_GLXvop_JoinSwapGroupSGIX 65547 02384 #define X_GLXvop_BindSwapBarrierSGIX 65548 02385 #define X_GLXvop_QueryMaxSwapBarriersSGIX 65549 02386 #define X_GLXvop_QueryHyperpipeNetworkSGIX 65550 02387 #define X_GLXvop_QueryHyperpipeConfigSGIX 65551 02388 #define X_GLXvop_HyperpipeConfigSGIX 65552 02389 #define X_GLXvop_DestroyHyperpipeConfigSGIX 65553 02390 #define X_GLXvop_BindTexImageEXT 5152 02391 #define X_GLXvop_ReleaseTexImageEXT 5153 02392 02393 /* ARB extension opcodes */ 02394 02395 /* 1. GL_ARB_multitexture - see GL 1.2 opcodes */ 02396 /* 5. GL_ARB_multisample - see GL 1.3 opcodes */ 02397 /* 12. GL_ARB_texture_compression - see GL 1.3 opcodes */ 02398 /* 14. GL_ARB_point_parameters - see GL 1.4 opcodees */ 02399 02400 /* 15. GL_ARB_vertex_blend */ 02401 #define X_GLrop_WeightbvARB 220 02402 #define X_GLrop_WeightubvARB 221 02403 #define X_GLrop_WeightsvARB 222 02404 #define X_GLrop_WeightusvARB 223 02405 #define X_GLrop_WeightivARB 224 02406 #define X_GLrop_WeightuivARB 225 02407 #define X_GLrop_VertexBlendARB 226 02408 #define X_GLrop_WeightfvARB 227 02409 #define X_GLrop_WeightdvARB 228 02410 02411 /* 16. GL_ARB_matrix_palette */ 02412 /* XXX opcodes not defined in the spec */ 02413 02414 /* 25. GL_ARB_window_pos - see GL 1.4 opcodes */ 02415 02416 /* 26. GL_ARB_vertex_program */ 02417 #define X_GLrop_BindProgramARB 4180 02418 #define X_GLrop_ProgramEnvParameter4fvARB 4184 02419 #define X_GLrop_ProgramEnvParameter4dvARB 4185 02420 #define X_GLrop_VertexAttrib1svARB 4189 02421 #define X_GLrop_VertexAttrib2svARB 4190 02422 #define X_GLrop_VertexAttrib3svARB 4191 02423 #define X_GLrop_VertexAttrib4svARB 4192 02424 #define X_GLrop_VertexAttrib1fvARB 4193 02425 #define X_GLrop_VertexAttrib2fvARB 4194 02426 #define X_GLrop_VertexAttrib3fvARB 4195 02427 #define X_GLrop_VertexAttrib4fvARB 4196 02428 #define X_GLrop_VertexAttrib1dvARB 4197 02429 #define X_GLrop_VertexAttrib2dvARB 4198 02430 #define X_GLrop_VertexAttrib3dvARB 4199 02431 #define X_GLrop_ProgramLocalParameter4fvARB 4215 02432 #define X_GLrop_ProgramLocalParameter4dvARB 4216 02433 #define X_GLrop_ProgramStringARB 4217 02434 #define X_GLrop_VertexAttrib4dvARB 4200 02435 #define X_GLrop_VertexAttrib4NubvARB 4201 02436 #define X_GLrop_VertexAttrib4bvARB 4230 02437 #define X_GLrop_VertexAttrib4ivARB 4231 02438 #define X_GLrop_VertexAttrib4ubvARB 4232 02439 #define X_GLrop_VertexAttrib4usvARB 4233 02440 #define X_GLrop_VertexAttrib4uivARB 4234 02441 #define X_GLrop_VertexAttrib4NbvARB 4235 02442 #define X_GLrop_VertexAttrib4NsvARB 4236 02443 #define X_GLrop_VertexAttrib4NivARB 4237 02444 #define X_GLrop_VertexAttrib4NusvARB 4238 02445 #define X_GLrop_VertexAttrib4NuivARB 4239 02446 02447 /* 27. GL_ARB_fragment_program - see GL_ARB_vertex_program opcodes */ 02448 02449 /* 29. GL_ARB_occlusion_query */ 02450 /* XXX opcodes not defined in the spec */ 02451 02452 02453 /* New extension opcodes */ 02454 02455 /* 145. GL_EXT_secondary_color - see GL 1.4 opcodes */ 02456 02457 /* 188. GL_EXT_vertex_weighting */ 02458 #define X_GLrop_VertexWeightfvEXT 4135 02459 02460 /* 191. GL_NV_register_combiners */ 02461 #define X_GLrop_CombinerParameterfNV 4136 02462 #define X_GLrop_CombinerParameterfvNV 4137 02463 #define X_GLrop_CombinerParameteriNV 4138 02464 #define X_GLrop_CombinerParameterivNV 4139 02465 #define X_GLrop_CombinerInputNV 4140 02466 #define X_GLrop_CombinerOutputNV 4141 02467 #define X_GLrop_FinalCombinerInputNV 4142 02468 02469 /* 222. GL_NV_fence */ 02470 #define X_GLrop_SetFenceNV 4143 02471 #define X_GLrop_FinishFenceNV 4144 02472 02473 /* 227. GL_NV_register_combiners2 */ 02474 /* XXX opcodes not defined in the spec */ 02475 02476 /* 233. GL_NV_vertex_program - see also GL_ARB_vertex_program opcodes */ 02477 #define X_GLrop_ExecuteProgramNV 4181 02478 #define X_GLrop_RequestResidentProgramsNV 4182 02479 #define X_GLrop_LoadProgamNV 4183 02480 #define X_GLrop_ProgramParameters4fvNV 4186 02481 #define X_GLrop_ProgramParameters4dvNV 4187 02482 #define X_GLrop_TrackMatrixNV 4188 02483 #define X_GLrop_VertexAttribs1svNV 4202 02484 #define X_GLrop_VertexAttribs2svNV 4203 02485 #define X_GLrop_VertexAttribs3svNV 4204 02486 #define X_GLrop_VertexAttribs4svNV 4205 02487 #define X_GLrop_VertexAttribs1fvNV 4206 02488 #define X_GLrop_VertexAttribs2fvNV 4207 02489 #define X_GLrop_VertexAttribs3fvNV 4208 02490 #define X_GLrop_VertexAttribs4fvNV 4209 02491 #define X_GLrop_VertexAttribs1dvNV 4210 02492 #define X_GLrop_VertexAttribs2dvNV 4211 02493 #define X_GLrop_VertexAttribs3dvNV 4212 02494 #define X_GLrop_VertexAttribs4dvNV 4213 02495 #define X_GLrop_VertexAttribs4ubvNV 4214 02496 02497 /* 261. GL_NV_occlusion_query */ 02498 /* XXX opcodes not defined in the spec */ 02499 02500 /* 262. GL_NV_point_sprite - see GL 1.4 opcodes */ 02501 02502 /* 268. GL_EXT_stencil_two_side */ 02503 #define X_GLrop_ActiveStencilFaceEXT 4220 02504 02505 /* 282. GL_NV_fragment_program - see also GL_NV_vertex_program and GL_ARB_vertex_program opcodes */ 02506 #define X_GLrop_ProgramNamedParameter4fvNV 4218 02507 #define X_GLrop_ProgramNamedParameter4dvNV 4219 02508 02509 /* 285. GL_NV_primitive_restart */ 02510 /* XXX opcodes not defined in the spec */ 02511 02512 /* 297. GL_EXT_depth_bounds_test */ 02513 #define X_GLrop_DepthBoundsEXT 4229 02514 02515 /* 299. GL_EXT_blend_equation_separate */ 02516 #define X_GLrop_BlendEquationSeparateEXT 4228 02517 02518 /* 310. GL_EXT_framebuffer_object */ 02519 #define X_GLvop_IsRenderbufferEXT 1422 02520 #define X_GLvop_GenRenderbuffersEXT 1423 02521 #define X_GLvop_GetRenderbufferParameterivEXT 1424 02522 #define X_GLvop_IsFramebufferEXT 1425 02523 #define X_GLvop_GenFramebuffersEXT 1426 02524 #define X_GLvop_CheckFramebufferStatusEXT 1427 02525 #define X_GLvop_GetFramebufferAttachmentParameterivEXT 1428 02526 02527 #endif /* _GLX_glxproto_h_ */