1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3Copyright (C) 2005 Jeremy Kolb. 4All Rights Reserved. 5 6Permission is hereby granted, free of charge, to any person ob/Sintaining a copy 7of this software and associated documentation files (the "Software"), to deal 8in the Software without restriction, including without limitation the rights 9to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10copies of the Software, and to permit persons to whom the Software is 11furnished to do so, subject to the following conditions: 12 13The above copyright notice and this permission notice shall be included in all 14copies or substantial portions of the Software. 15 16THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 20ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 21WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 23Except as contained in this notice, the names of the authors or their 24institutions shall not be used in advertising or otherwise to promote the 25sale, use or other dealings in this Software without prior written 26authorization from the authors. 27--> 28 29<!-- 30Note that on X.org servers before 6.9 (and probably others as well) the length 31field in the reply is computed incorrectly for GetFBConfigs and 32VendorPrivateWithReply vendor_code 0x10004 (GetFBConfigsSGIX). For these 33requests the reply structure begins: 34 <pad bytes="1" /> 35 <field type="CARD32" name="numVisuals" /> 36 <field type="CARD32" name="numProps" /> 37The correct value for the length field is 38 numVisuals * numProps * 2 39but on broken servers the "* 2" was missing. A workaround that is correct for 40all implementations is to rewrite the length field on receipt on the client 41side, using the expression above. 42 43The patch that fixed this server bug in X.org CVS is here: 44 http://cvs.freedesktop.org/xorg/xserver/xorg/GL/glx/glxcmds.c?r1=1.6&r2=1.7 45--> 46 47<xcb header="glx" extension-xname="GLX" extension-name="Glx" 48 major-version="1" minor-version="4"> 49 50 <import>xproto</import> 51 52 <xidtype name="PIXMAP" /> 53 <xidtype name="CONTEXT" /> 54 <xidtype name="PBUFFER" /> 55 <xidtype name="WINDOW" /> 56 <xidtype name="FBCONFIG" /> 57 58 <xidunion name="DRAWABLE"> 59 <type>xproto:WINDOW</type> 60 <type>PBUFFER</type> 61 <type>glx:PIXMAP</type> 62 <type>glx:WINDOW</type> 63 </xidunion> 64 65 <typedef oldname="float" newname="FLOAT32" /> 66 <typedef oldname="double" newname="FLOAT64" /> 67 <typedef oldname="CARD32" newname="BOOL32" /> 68 <typedef oldname="CARD32" newname="CONTEXT_TAG" /> 69 70 <!-- Errors --> 71 <error name="Generic" number="-1"> <!-- FIXME: fake number --> 72 <field type="CARD32" name="bad_value" /> 73 <field type="CARD16" name="minor_opcode" /> 74 <field type="CARD8" name="major_opcode" /> 75 <pad bytes="21" /> 76 </error> 77 78 <errorcopy name="BadContext" number="0" ref="Generic" /> 79 <errorcopy name="BadContextState" number="1" ref="Generic" /> 80 <errorcopy name="BadDrawable" number="2" ref="Generic" /> 81 <errorcopy name="BadPixmap" number="3" ref="Generic" /> 82 <errorcopy name="BadContextTag" number="4" ref="Generic" /> 83 <errorcopy name="BadCurrentWindow" number="5" ref="Generic" /> 84 <errorcopy name="BadRenderRequest" number="6" ref="Generic" /> 85 <errorcopy name="BadLargeRequest" number="7" ref="Generic" /> 86 <errorcopy name="UnsupportedPrivateRequest" number="8" ref="Generic" /> 87 <errorcopy name="BadFBConfig" number="9" ref="Generic" /> 88 <errorcopy name="BadPbuffer" number="10" ref="Generic" /> 89 <errorcopy name="BadCurrentDrawable" number="11" ref="Generic" /> 90 <errorcopy name="BadWindow" number="12" ref="Generic" /> 91 <errorcopy name="GLXBadProfileARB" number="13" ref="Generic" /> 92 93 <!-- Events --> 94 <event name="PbufferClobber" number="0"> 95 <pad bytes="1" /> 96 <field type="CARD16" name="event_type" /> 97 <field type="CARD16" name="draw_type" /> 98 <field type="glx:DRAWABLE" name="drawable" /> 99 <field type="CARD32" name="b_mask" /> 100 <field type="CARD16" name="aux_buffer" /> 101 <field type="CARD16" name="x" /> 102 <field type="CARD16" name="y" /> 103 <field type="CARD16" name="width" /> 104 <field type="CARD16" name="height" /> 105 <field type="CARD16" name="count" /> 106 <pad bytes="4" /> 107 </event> 108 109 <event name="BufferSwapComplete" number="1"> 110 <pad bytes="1" /> 111 <field type="CARD16" name="event_type" /> 112 <pad bytes="2" /> 113 <field type="glx:DRAWABLE" name="drawable" /> 114 <field type="CARD32" name="ust_hi" /> 115 <field type="CARD32" name="ust_lo" /> 116 <field type="CARD32" name="msc_hi" /> 117 <field type="CARD32" name="msc_lo" /> 118 <field type="CARD32" name="sbc" /> 119 </event> 120 121 <!-- enums for PbufferClobber event/draw type --> 122 <enum name="PBCET"> 123 <item name="Damaged"> 124 <value>32791</value> 125 </item> 126 <item name="Saved"> 127 <value>32792</value> 128 </item> 129 </enum> 130 131 <enum name="PBCDT"> 132 <item name="Window"> 133 <value>32793</value> 134 </item> 135 <item name="Pbuffer"> 136 <value>32794</value> 137 </item> 138 </enum> 139 140 <!-- Requests --> 141 <request name="Render" opcode="1" combine-adjacent="true"> 142 <field type="CONTEXT_TAG" name="context_tag" /> 143 <list type="BYTE" name="data" /> 144 </request> 145 146 <request name="RenderLarge" opcode="2"> 147 <field type="CONTEXT_TAG" name="context_tag" /> 148 <field type="CARD16" name="request_num" /> 149 <field type="CARD16" name="request_total" /> 150 <field type="CARD32" name="data_len" /> 151 <list type="BYTE" name="data"> 152 <fieldref>data_len</fieldref> 153 </list> 154 </request> 155 156 <request name="CreateContext" opcode="3"> 157 <field type="glx:CONTEXT" name="context" /> 158 <field type="VISUALID" name="visual" /> 159 <field type="CARD32" name="screen" /> 160 <field type="glx:CONTEXT" name="share_list" /> 161 <field type="BOOL" name="is_direct" /> 162 <pad bytes="3" /> 163 </request> 164 165 <request name="DestroyContext" opcode="4"> 166 <field type="glx:CONTEXT" name="context" /> 167 </request> 168 169 <request name="MakeCurrent" opcode="5"> 170 <field type="glx:DRAWABLE" name="drawable" /> 171 <field type="glx:CONTEXT" name="context" /> 172 <field type="CONTEXT_TAG" name="old_context_tag" /> 173 <reply> 174 <pad bytes="1" /> 175 <field type="CONTEXT_TAG" name="context_tag" /> 176 <pad bytes="20" /> 177 </reply> 178 </request> 179 180 <request name="IsDirect" opcode="6"> 181 <field type="glx:CONTEXT" name="context" /> 182 <reply> 183 <pad bytes="1" /> 184 <field type="BOOL" name="is_direct" /> 185 <pad bytes="23" /> 186 </reply> 187 </request> 188 189 <request name="QueryVersion" opcode="7"> 190 <field type="CARD32" name="major_version" /> 191 <field type="CARD32" name="minor_version" /> 192 <reply> 193 <pad bytes="1" /> 194 <field type="CARD32" name="major_version" /> 195 <field type="CARD32" name="minor_version" /> 196 <pad bytes="16" /> 197 </reply> 198 </request> 199 200 <request name="WaitGL" opcode="8"> 201 <field type="CONTEXT_TAG" name="context_tag" /> 202 </request> 203 204 <request name="WaitX" opcode="9"> 205 <field type="CONTEXT_TAG" name="context_tag" /> 206 </request> 207 208 <request name="CopyContext" opcode="10"> 209 <field type="glx:CONTEXT" name="src" /> 210 <field type="glx:CONTEXT" name="dest" /> 211 <field type="CARD32" name="mask" /> 212 <field type="CONTEXT_TAG" name="src_context_tag" /> 213 </request> 214 215 <!-- Enum for CopyContext: mask --> 216 <enum name="GC"> 217 <item name="GL_CURRENT_BIT"><bit>0</bit></item> 218 <item name="GL_POINT_BIT"><bit>1</bit></item> 219 <item name="GL_LINE_BIT"><bit>2</bit></item> 220 <item name="GL_POLYGON_BIT"><bit>3</bit></item> 221 <item name="GL_POLYGON_STIPPLE_BIT"><bit>4</bit></item> 222 <item name="GL_PIXEL_MODE_BIT"><bit>5</bit></item> 223 <item name="GL_LIGHTING_BIT"><bit>6</bit></item> 224 <item name="GL_FOG_BIT"><bit>7</bit></item> 225 <item name="GL_DEPTH_BUFFER_BIT"><bit>8</bit></item> 226 <item name="GL_ACCUM_BUFFER_BIT"><bit>9</bit></item> 227 <item name="GL_STENCIL_BUFFER_BIT"><bit>10</bit></item> 228 <item name="GL_VIEWPORT_BIT"><bit>11</bit></item> 229 <item name="GL_TRANSFORM_BIT"><bit>12</bit></item> 230 <item name="GL_ENABLE_BIT"><bit>13</bit></item> 231 <item name="GL_COLOR_BUFFER_BIT"><bit>14</bit></item> 232 <item name="GL_HINT_BIT"><bit>15</bit></item> 233 <item name="GL_EVAL_BIT"><bit>16</bit></item> 234 <item name="GL_LIST_BIT"><bit>17</bit></item> 235 <item name="GL_TEXTURE_BIT"><bit>18</bit></item> 236 <item name="GL_SCISSOR_BIT"><bit>19</bit></item> 237 <item name="GL_ALL_ATTRIB_BITS"><value>16777215<!--0x000ffffff--></value></item> 238 </enum> 239 240 <request name="SwapBuffers" opcode="11"> 241 <field type="CONTEXT_TAG" name="context_tag" /> 242 <field type="glx:DRAWABLE" name="drawable" /> 243 </request> 244 245 <request name="UseXFont" opcode="12"> 246 <field type="CONTEXT_TAG" name="context_tag" /> 247 <field type="FONT" name="font" /> 248 <field type="CARD32" name="first" /> 249 <field type="CARD32" name="count" /> 250 <field type="CARD32" name="list_base" /> 251 </request> 252 253 <request name="CreateGLXPixmap" opcode="13"> 254 <field type="CARD32" name="screen" /> 255 <field type="VISUALID" name="visual" /> 256 <field type="xproto:PIXMAP" name="pixmap" /> 257 <field type="glx:PIXMAP" name="glx_pixmap" /> 258 </request> 259 260 261 <request name="GetVisualConfigs" opcode="14"> 262 <field type="CARD32" name="screen" /> 263 <reply> 264 <pad bytes="1" /> 265 <field type="CARD32" name="num_visuals" /> 266 <field type="CARD32" name="num_properties" /> 267 <pad bytes="16" /> 268 <list type="CARD32" name="property_list"> 269 <fieldref>length</fieldref> 270 </list> 271 </reply> 272 </request> 273 274 <request name="DestroyGLXPixmap" opcode="15"> 275 <field type="glx:PIXMAP" name="glx_pixmap" /> 276 </request> 277 278 <!-- 279 Context tag is not in the proto, should be part of the list of bytes 280 but every VendorPrivate and VendorPrivateWithReply request uses them 281 so it is safe to put them in. That's how Mesa does it. 282 --> 283 <request name="VendorPrivate" opcode="16"> 284 <field type="CARD32" name="vendor_code" /> 285 <field type="CONTEXT_TAG" name="context_tag" /> 286 <list type="BYTE" name="data" /> 287 </request> 288 289 <request name="VendorPrivateWithReply" opcode="17"> 290 <field type="CARD32" name="vendor_code" /> 291 <field type="CONTEXT_TAG" name="context_tag" /> 292 <list type="BYTE" name="data" /> 293 <reply> 294 <pad bytes="1" /> 295 <field type="CARD32" name="retval" /> 296 <list type="BYTE" name="data1"> 297 <value>24</value> 298 </list> 299 <list type="BYTE" name="data2"> 300 <op op="*"> 301 <fieldref>length</fieldref> 302 <value>4</value> 303 </op> 304 </list> 305 </reply> 306 </request> 307 308 <request name="QueryExtensionsString" opcode="18"> 309 <field type="CARD32" name="screen" /> 310 <reply> 311 <pad bytes="1" /> 312 <pad bytes="4" /> 313 <field type="CARD32" name="n" /> 314 <pad bytes="16" /> 315 </reply> 316 </request> 317 318 <request name="QueryServerString" opcode="19"> 319 <field type="CARD32" name="screen" /> 320 <field type="CARD32" name="name" /> 321 <reply> 322 <pad bytes="1" /> 323 <pad bytes="4" /> 324 <field type="CARD32" name="str_len" /> 325 <pad bytes="16" /> 326 <list type="char" name="string"> 327 <fieldref>str_len</fieldref> 328 </list> 329 </reply> 330 </request> 331 332 <request name="ClientInfo" opcode="20"> 333 <field type="CARD32" name="major_version" /> 334 <field type="CARD32" name="minor_version" /> 335 <field type="CARD32" name="str_len" /> 336 <list type="char" name="string"> 337 <fieldref>str_len</fieldref> 338 </list> 339 </request> 340 341 <!-- Start of GLX 1.3 Requests --> 342 343 <request name="GetFBConfigs" opcode="21"> 344 <field type="CARD32" name="screen" /> 345 <reply> 346 <pad bytes="1" /> 347 <field type="CARD32" name="num_FB_configs" /> 348 <field type="CARD32" name="num_properties" /> 349 <pad bytes="16" /> 350 <!-- 351 <valueparam value-mask-type="CARD32" 352 value-mask-name="value_mask" 353 value-list-name="value_list" /> 354 --> 355 <list type="CARD32" name="property_list"> 356 <fieldref>length</fieldref> 357 </list> 358 </reply> 359 </request> 360 361 <request name="CreatePixmap" opcode="22"> 362 <field type="CARD32" name="screen" /> 363 <field type="FBCONFIG" name="fbconfig" /> 364 <field type="xproto:PIXMAP" name="pixmap" /> 365 <field type="glx:PIXMAP" name="glx_pixmap" /> 366 <field type="CARD32" name="num_attribs" /> 367 <list type="CARD32" name="attribs"> 368 <op op="*"> 369 <fieldref>num_attribs</fieldref> 370 <value>2</value> 371 </op> 372 </list> 373 </request> 374 375 <request name="DestroyPixmap" opcode="23"> 376 <field type="glx:PIXMAP" name="glx_pixmap" /> 377 </request> 378 379 <request name="CreateNewContext" opcode="24"> 380 <field type="glx:CONTEXT" name="context" /> 381 <field type="FBCONFIG" name="fbconfig" /> 382 <field type="CARD32" name="screen" /> 383 <field type="CARD32" name="render_type" /> 384 <field type="glx:CONTEXT" name="share_list" /> 385 <field type="BOOL" name="is_direct" /> 386 <pad bytes="3" /> 387 </request> 388 389 <request name="QueryContext" opcode="25"> 390 <field type="glx:CONTEXT" name="context" /> 391 <reply> 392 <pad bytes="1" /> 393 <field type="CARD32" name="num_attribs"/> 394 <pad bytes="20" /> 395 <list type="CARD32" name="attribs"> 396 <op op="*"> 397 <fieldref>num_attribs</fieldref> 398 <value>2</value> 399 </op> 400 </list> 401 </reply> 402 </request> 403 404 <request name="MakeContextCurrent" opcode="26"> 405 <field type="CONTEXT_TAG" name="old_context_tag" /> 406 <field type="glx:DRAWABLE" name="drawable" /> 407 <field type="glx:DRAWABLE" name="read_drawable" /> 408 <field type="glx:CONTEXT" name="context" /> 409 <reply> 410 <pad bytes="1" /> 411 <field type="CONTEXT_TAG" name="context_tag" /> 412 <pad bytes="20" /> 413 </reply> 414 </request> 415 416 <request name="CreatePbuffer" opcode="27"> 417 <field type="CARD32" name="screen" /> 418 <field type="FBCONFIG" name="fbconfig" /> 419 <field type="PBUFFER" name="pbuffer" /> 420 <field type="CARD32" name="num_attribs" /> 421 <list type="CARD32" name="attribs"> 422 <op op="*"> 423 <fieldref>num_attribs</fieldref> 424 <value>2</value> 425 </op> 426 </list> 427 </request> 428 429 <request name="DestroyPbuffer" opcode="28"> 430 <field type="PBUFFER" name="pbuffer" /> 431 </request> 432 433 <request name="GetDrawableAttributes" opcode="29"> 434 <field type="glx:DRAWABLE" name="drawable" /> 435 <reply> 436 <pad bytes="1" /> 437 <field type="CARD32" name="num_attribs" /> 438 <pad bytes="20" /> 439 <list type="CARD32" name="attribs"> 440 <op op="*"> 441 <fieldref>num_attribs</fieldref> 442 <value>2</value> 443 </op> 444 </list> 445 </reply> 446 </request> 447 448 <request name="ChangeDrawableAttributes" opcode="30"> 449 <field type="glx:DRAWABLE" name="drawable" /> 450 <field type="CARD32" name="num_attribs" /> 451 <list type="CARD32" name="attribs"> 452 <op op="*"> 453 <fieldref>num_attribs</fieldref> 454 <value>2</value> 455 </op> 456 </list> 457 </request> 458 459 <request name="CreateWindow" opcode="31"> 460 <field type="CARD32" name="screen" /> 461 <field type="FBCONFIG" name="fbconfig" /> 462 <field type="xproto:WINDOW" name="window" /> 463 <field type="glx:WINDOW" name="glx_window" /> 464 <field type="CARD32" name="num_attribs" /> 465 <list type="CARD32" name="attribs"> 466 <op op="*"> 467 <fieldref>num_attribs</fieldref> 468 <value>2</value> 469 </op> 470 </list> 471 </request> 472 473 <request name="DeleteWindow" opcode="32"> 474 <field type="glx:WINDOW" name="glxwindow" /> 475 </request> 476 477 <!-- Start of GLX_ARB_create_context and GLX_ARB_create_context_profile 478 requests. --> 479 <request name="SetClientInfoARB" opcode="33"> 480 <field type="CARD32" name="major_version" /> 481 <field type="CARD32" name="minor_version" /> 482 <field type="CARD32" name="num_versions" /> 483 <field type="CARD32" name="gl_str_len" /> 484 <field type="CARD32" name="glx_str_len" /> 485 <list type="CARD32" name="gl_versions"> 486 <op op="*"> 487 <fieldref>num_versions</fieldref> 488 <value>2</value> 489 </op> 490 </list> 491 <list type="char" name="gl_extension_string"> 492 <fieldref>gl_str_len</fieldref> 493 </list> 494 <list type="char" name="glx_extension_string"> 495 <fieldref>glx_str_len</fieldref> 496 </list> 497 </request> 498 499 <request name="CreateContextAttribsARB" opcode="34"> 500 <field type="glx:CONTEXT" name="context" /> 501 <field type="FBCONFIG" name="fbconfig" /> 502 <field type="CARD32" name="screen" /> 503 <field type="glx:CONTEXT" name="share_list" /> 504 <field type="BOOL" name="is_direct" /> 505 <pad bytes="3" /> 506 <field type="CARD32" name="num_attribs" /> 507 <list type="CARD32" name="attribs"> 508 <op op="*"> 509 <fieldref>num_attribs</fieldref> 510 <value>2</value> 511 </op> 512 </list> 513 </request> 514 515 <request name="SetClientInfo2ARB" opcode="35"> 516 <field type="CARD32" name="major_version" /> 517 <field type="CARD32" name="minor_version" /> 518 <field type="CARD32" name="num_versions" /> 519 <field type="CARD32" name="gl_str_len" /> 520 <field type="CARD32" name="glx_str_len" /> 521 <list type="CARD32" name="gl_versions"> 522 <op op="*"> 523 <fieldref>num_versions</fieldref> 524 <value>3</value> 525 </op> 526 </list> 527 <list type="char" name="gl_extension_string"> 528 <fieldref>gl_str_len</fieldref> 529 </list> 530 <list type="char" name="glx_extension_string"> 531 <fieldref>glx_str_len</fieldref> 532 </list> 533 </request> 534 535 <!-- Requests for GL Non-rendering Commands (single ops) --> 536 537 <request name="NewList" opcode="101"> 538 <field type="CONTEXT_TAG" name="context_tag" /> 539 <field type="CARD32" name="list" /> 540 <field type="CARD32" name="mode" /> 541 </request> 542 543 <request name="EndList" opcode="102"> 544 <field type="CONTEXT_TAG" name="context_tag" /> 545 </request> 546 547 <request name="DeleteLists" opcode="103"> 548 <field type="CONTEXT_TAG" name="context_tag" /> 549 <field type="CARD32" name="list" /> 550 <field type="INT32" name="range" /> 551 </request> 552 553 <request name="GenLists" opcode="104"> 554 <field type="CONTEXT_TAG" name="context_tag" /> 555 <field type="INT32" name="range" /> 556 <reply> 557 <pad bytes="1" /> 558 <field type="CARD32" name="ret_val" /> 559 </reply> 560 </request> 561 562 <request name="FeedbackBuffer" opcode="105"> 563 <field type="CONTEXT_TAG" name="context_tag" /> 564 <field type="INT32" name="size" /> 565 <field type="INT32" name="type" /> 566 </request> 567 568 <request name="SelectBuffer" opcode="106"> 569 <field type="CONTEXT_TAG" name="context_tag" /> 570 <field type="INT32" name="size" /> 571 <!-- the reply is actually returned in the data 572 of the next RenderMode request --> 573 </request> 574 575 576 <request name="RenderMode" opcode="107"> 577 <field type="CONTEXT_TAG" name="context_tag" /> 578 <field type="CARD32" name="mode" /> 579 <!-- 580 This reply is only if RM was previously feedback/selection. 581 If it was in feedback mode then data is FLOAT32. 582 If previously in render mode there is no reply. 583 --> 584 <reply> 585 <pad bytes="1" /> 586 <field type="CARD32" name="ret_val" /> 587 <field type="CARD32" name="n" /> 588 <field type="CARD32" name="new_mode" /> 589 <pad bytes="12" /> 590 <list type="CARD32" name="data"> 591 <fieldref>n</fieldref> 592 </list> 593 </reply> 594 </request> 595 596 <enum name="RM"> 597 <item name="GL_RENDER"><value>7168</value></item> 598 <item name="GL_FEEDBACK"><value>7169</value></item> 599 <item name="GL_SELECT"><value>7170</value></item> 600 </enum> 601 602 <request name="Finish" opcode="108"> 603 <field type="CONTEXT_TAG" name="context_tag" /> 604 <reply> 605 <pad bytes="1" /> 606 </reply> 607 </request> 608 609 <request name="PixelStoref" opcode="109"> 610 <field type="CONTEXT_TAG" name="context_tag" /> 611 <field type="CARD32" name="pname" /> 612 <field type="FLOAT32" name="datum" /> 613 </request> 614 615 <request name="PixelStorei" opcode="110"> 616 <field type="CONTEXT_TAG" name="context_tag" /> 617 <field type="CARD32" name="pname" /> 618 <field type="INT32" name="datum" /> 619 </request> 620 621 <request name="ReadPixels" opcode="111"> 622 <field type="CONTEXT_TAG" name="context_tag" /> 623 <field type="INT32" name="x" /> 624 <field type="INT32" name="y" /> 625 <field type="INT32" name="width" /> 626 <field type="INT32" name="height" /> 627 <field type="CARD32" name="format" /> 628 <field type="CARD32" name="type" /> 629 <field type="BOOL" name="swap_bytes" /> 630 <field type="BOOL" name="lsb_first" /> 631 <reply> 632 <pad bytes="1" /> 633 <pad bytes="24" /> 634 <list type="BYTE" name="data"> 635 <op op="*"> 636 <fieldref>length</fieldref> 637 <value>4</value> 638 </op> 639 </list> 640 </reply> 641 </request> 642 643 <!-- FIXME: 644 All the Get* functions can return different stuff for replies. 645 Hopefully xcb will support multiple reply structures at some point 646 but for now... grrrr 647 Starts on page 58/180 648 --> 649 <request name="GetBooleanv" opcode="112"> 650 <field type="CONTEXT_TAG" name="context_tag" /> 651 <field type="INT32" name="pname" /> 652 <reply> 653 <pad bytes="1" /> 654 <pad bytes="4" /> 655 <field type="CARD32" name="n" /> 656 <field type="BOOL" name="datum" /> 657 <pad bytes="15" /> 658 <list type="BOOL" name="data"> 659 <fieldref>n</fieldref> 660 </list> 661 </reply> 662 </request> 663 664 <request name="GetClipPlane" opcode="113"> 665 <field type="CONTEXT_TAG" name="context_tag" /> 666 <field type="INT32" name="plane" /> 667 <reply> 668 <pad bytes="1" /> 669 <pad bytes="24" /> 670 <list type="FLOAT64" name="data"> 671 <op op="/"> 672 <fieldref>length</fieldref> 673 <value>2</value> 674 </op> 675 </list> 676 </reply> 677 </request> 678 679 <request name="GetDoublev" opcode="114"> 680 <field type="CONTEXT_TAG" name="context_tag" /> 681 <field type="CARD32" name="pname" /> 682 <reply> 683 <pad bytes="1" /> 684 <pad bytes="4" /> 685 <field type="CARD32" name="n" /> 686 <field type="FLOAT64" name="datum" /> 687 <pad bytes="8" /> 688 <list type="FLOAT64" name="data"> 689 <fieldref>n</fieldref> 690 </list> 691 </reply> 692 </request> 693 694 <request name="GetError" opcode="115"> 695 <field type="CONTEXT_TAG" name="context_tag" /> 696 <reply> 697 <pad bytes="1" /> 698 <field type="INT32" name="error" /> 699 </reply> 700 </request> 701 702 <request name="GetFloatv" opcode="116"> 703 <field type="CONTEXT_TAG" name="context_tag" /> 704 <field type="CARD32" name="pname" /> 705 <reply> 706 <pad bytes="1" /> 707 <pad bytes="4" /> 708 <field type="CARD32" name="n" /> 709 <field type="FLOAT32" name="datum" /> 710 <pad bytes="12" /> 711 <list type="FLOAT32" name="data"> 712 <fieldref>n</fieldref> 713 </list> 714 </reply> 715 </request> 716 717 <request name="GetIntegerv" opcode="117"> 718 <field type="CONTEXT_TAG" name="context_tag" /> 719 <field type="CARD32" name="pname" /> 720 <reply> 721 <pad bytes="1" /> 722 <pad bytes="4" /> 723 <field type="CARD32" name="n" /> 724 <field type="INT32" name="datum" /> 725 <pad bytes="12" /> 726 <list type="INT32" name="data"> 727 <fieldref>n</fieldref> 728 </list> 729 </reply> 730 </request> 731 732 <request name="GetLightfv" opcode="118"> 733 <field type="CONTEXT_TAG" name="context_tag" /> 734 <field type="CARD32" name="light" /> 735 <field type="CARD32" name="pname" /> 736 <reply> 737 <pad bytes="1" /> 738 <pad bytes="4" /> 739 <field type="CARD32" name="n" /> 740 <field type="FLOAT32" name="datum" /> 741 <pad bytes="12" /> 742 <list type="FLOAT32" name="data"> 743 <fieldref>n</fieldref> 744 </list> 745 </reply> 746 </request> 747 748 <request name="GetLightiv" opcode="119"> 749 <field type="CONTEXT_TAG" name="context_tag" /> 750 <field type="CARD32" name="light" /> 751 <field type="CARD32" name="pname" /> 752 <reply> 753 <pad bytes="1" /> 754 <pad bytes="4" /> 755 <field type="CARD32" name="n" /> 756 <field type="INT32" name="datum" /> 757 <pad bytes="12" /> 758 <list type="INT32" name="data"> 759 <fieldref>n</fieldref> 760 </list> 761 </reply> 762 </request> 763 764 <request name="GetMapdv" opcode="120"> 765 <field type="CONTEXT_TAG" name="context_tag" /> 766 <field type="CARD32" name="target" /> 767 <field type="CARD32" name="query" /> 768 <reply> 769 <pad bytes="1" /> 770 <pad bytes="4" /> 771 <field type="CARD32" name="n" /> 772 <field type="FLOAT64" name="datum" /> 773 <pad bytes="8" /> 774 <list type="FLOAT64" name="data"> 775 <fieldref>n</fieldref> 776 </list> 777 </reply> 778 </request> 779 780 <request name="GetMapfv" opcode="121"> 781 <field type="CONTEXT_TAG" name="context_tag" /> 782 <field type="CARD32" name="target" /> 783 <field type="CARD32" name="query" /> 784 <reply> 785 <pad bytes="1" /> 786 <pad bytes="4" /> 787 <field type="CARD32" name="n" /> 788 <field type="FLOAT32" name="datum" /> 789 <pad bytes="12" /> 790 <list type="FLOAT32" name="data"> 791 <fieldref>n</fieldref> 792 </list> 793 </reply> 794 </request> 795 796 <request name="GetMapiv" opcode="122"> 797 <field type="CONTEXT_TAG" name="context_tag" /> 798 <field type="CARD32" name="target" /> 799 <field type="CARD32" name="query" /> 800 <reply> 801 <pad bytes="1" /> 802 <pad bytes="4" /> 803 <field type="CARD32" name="n" /> 804 <field type="INT32" name="datum" /> 805 <pad bytes="12" /> 806 <list type="INT32" name="data"> 807 <fieldref>n</fieldref> 808 </list> 809 </reply> 810 </request> 811 812 <request name="GetMaterialfv" opcode="123"> 813 <field type="CONTEXT_TAG" name="context_tag" /> 814 <field type="CARD32" name="face" /> 815 <field type="CARD32" name="pname" /> 816 <reply> 817 <pad bytes="1" /> 818 <pad bytes="4" /> 819 <field type="CARD32" name="n" /> 820 <field type="FLOAT32" name="datum" /> 821 <pad bytes="12" /> 822 <list type="FLOAT32" name="data"> 823 <fieldref>n</fieldref> 824 </list> 825 </reply> 826 </request> 827 828 <request name="GetMaterialiv" opcode="124"> 829 <field type="CONTEXT_TAG" name="context_tag" /> 830 <field type="CARD32" name="face" /> 831 <field type="CARD32" name="pname" /> 832 <reply> 833 <pad bytes="1" /> 834 <pad bytes="4" /> 835 <field type="CARD32" name="n" /> 836 <field type="INT32" name="datum" /> 837 <pad bytes="12" /> 838 <list type="INT32" name="data"> 839 <fieldref>n</fieldref> 840 </list> 841 </reply> 842 </request> 843 844 <request name="GetPixelMapfv" opcode="125"> 845 <field type="CONTEXT_TAG" name="context_tag" /> 846 <field type="CARD32" name="map" /> 847 <reply> 848 <pad bytes="1" /> 849 <pad bytes="4" /> 850 <field type="CARD32" name="n" /> 851 <field type="FLOAT32" name="datum" /> 852 <pad bytes="12" /> 853 <list type="FLOAT32" name="data"> 854 <fieldref>n</fieldref> 855 </list> 856 </reply> 857 </request> 858 859 <request name="GetPixelMapuiv" opcode="126"> 860 <field type="CONTEXT_TAG" name="context_tag" /> 861 <field type="CARD32" name="map" /> 862 <reply> 863 <pad bytes="1" /> 864 <pad bytes="4" /> 865 <field type="CARD32" name="n" /> 866 <field type="CARD32" name="datum" /> 867 <pad bytes="12" /> 868 <list type="CARD32" name="data"> 869 <fieldref>n</fieldref> 870 </list> 871 </reply> 872 </request> 873 874 <request name="GetPixelMapusv" opcode="127"> 875 <field type="CONTEXT_TAG" name="context_tag" /> 876 <field type="CARD32" name="map" /> 877 <reply> 878 <pad bytes="1" /> 879 <pad bytes="4" /> 880 <field type="CARD32" name="n" /> 881 <field type="CARD16" name="datum" /> 882 <pad bytes="16" /> 883 <list type="CARD16" name="data"> 884 <fieldref>n</fieldref> 885 </list> 886 </reply> 887 </request> 888 889 <request name="GetPolygonStipple" opcode="128"> 890 <field type="CONTEXT_TAG" name="context_tag" /> 891 <field type="BOOL" name="lsb_first" /> 892 <reply> 893 <pad bytes="1" /> 894 <pad bytes="24" /> 895 <list type="BYTE" name="data"> 896 <op op="*"> 897 <fieldref>length</fieldref> 898 <value>4</value> 899 </op> 900 </list> 901 </reply> 902 </request> 903 904 905 <request name="GetString" opcode="129"> 906 <field type="CONTEXT_TAG" name="context_tag" /> 907 <field type="CARD32" name="name" /> 908 <reply> 909 <pad bytes="1" /> 910 <pad bytes="4" /> 911 <field type="CARD32" name="n" /> 912 <pad bytes="16" /> 913 <list type="char" name="string"> 914 <fieldref>n</fieldref> 915 </list> 916 </reply> 917 </request> 918 919 <request name="GetTexEnvfv" opcode="130"> 920 <field type="CONTEXT_TAG" name="context_tag" /> 921 <field type="CARD32" name="target" /> 922 <field type="CARD32" name="pname" /> 923 <reply> 924 <pad bytes="1" /> 925 <pad bytes="4" /> 926 <field type="CARD32" name="n" /> 927 <field type="FLOAT32" name="datum" /> 928 <pad bytes="12" /> 929 <list type="FLOAT32" name="data"> 930 <fieldref>n</fieldref> 931 </list> 932 </reply> 933 </request> 934 935 <request name="GetTexEnviv" opcode="131"> 936 <field type="CONTEXT_TAG" name="context_tag" /> 937 <field type="CARD32" name="target" /> 938 <field type="CARD32" name="pname" /> 939 <reply> 940 <pad bytes="1" /> 941 <pad bytes="4" /> 942 <field type="CARD32" name="n" /> 943 <field type="INT32" name="datum" /> 944 <pad bytes="12" /> 945 <list type="INT32" name="data"> 946 <fieldref>n</fieldref> 947 </list> 948 </reply> 949 </request> 950 951 <request name="GetTexGendv" opcode="132"> 952 <field type="CONTEXT_TAG" name="context_tag" /> 953 <field type="CARD32" name="coord" /> 954 <field type="CARD32" name="pname" /> 955 <reply> 956 <pad bytes="1" /> 957 <pad bytes="4" /> 958 <field type="CARD32" name="n" /> 959 <field type="FLOAT64" name="datum" /> 960 <pad bytes="8" /> 961 <list type="FLOAT64" name="data"> 962 <fieldref>n</fieldref> 963 </list> 964 </reply> 965 </request> 966 967 <request name="GetTexGenfv" opcode="133"> 968 <field type="CONTEXT_TAG" name="context_tag" /> 969 <field type="CARD32" name="coord" /> 970 <field type="CARD32" name="pname" /> 971 <reply> 972 <pad bytes="1" /> 973 <pad bytes="4" /> 974 <field type="CARD32" name="n" /> 975 <field type="FLOAT32" name="datum" /> 976 <pad bytes="12" /> 977 <list type="FLOAT32" name="data"> 978 <fieldref>n</fieldref> 979 </list> 980 </reply> 981 </request> 982 983 <request name="GetTexGeniv" opcode="134"> 984 <field type="CONTEXT_TAG" name="context_tag" /> 985 <field type="CARD32" name="coord" /> 986 <field type="CARD32" name="pname" /> 987 <reply> 988 <pad bytes="1" /> 989 <pad bytes="4" /> 990 <field type="CARD32" name="n" /> 991 <field type="INT32" name="datum" /> 992 <pad bytes="12" /> 993 <list type="INT32" name="data"> 994 <fieldref>n</fieldref> 995 </list> 996 </reply> 997 </request> 998 999 <request name="GetTexImage" opcode="135"> 1000 <field type="CONTEXT_TAG" name="context_tag" /> 1001 <field type="CARD32" name="target" /> 1002 <field type="INT32" name="level" /> 1003 <field type="CARD32" name="format" /> 1004 <field type="CARD32" name="type" /> 1005 <field type="BOOL" name="swap_bytes" /> 1006 <reply> 1007 <pad bytes="1" /> 1008 <pad bytes="8" /> 1009 <field type="INT32" name="width" /> 1010 <field type="INT32" name="height" /> 1011 <field type="INT32" name="depth" /> 1012 <pad bytes="4" /> 1013 <list type="BYTE" name="data"> 1014 <op op="*"> 1015 <fieldref>length</fieldref> 1016 <value>4</value> 1017 </op> 1018 </list> 1019 </reply> 1020 </request> 1021 1022 1023 <request name="GetTexParameterfv" opcode="136"> 1024 <field type="CONTEXT_TAG" name="context_tag" /> 1025 <field type="CARD32" name="target" /> 1026 <field type="CARD32" name="pname" /> 1027 <reply> 1028 <pad bytes="1" /> 1029 <pad bytes="4" /> 1030 <field type="CARD32" name="n" /> 1031 <field type="FLOAT32" name="datum" /> 1032 <pad bytes="12" /> 1033 <list type="FLOAT32" name="data"> 1034 <fieldref>n</fieldref> 1035 </list> 1036 </reply> 1037 </request> 1038 1039 <request name="GetTexParameteriv" opcode="137"> 1040 <field type="CONTEXT_TAG" name="context_tag" /> 1041 <field type="CARD32" name="target" /> 1042 <field type="CARD32" name="pname" /> 1043 <reply> 1044 <pad bytes="1" /> 1045 <pad bytes="4" /> 1046 <field type="CARD32" name="n" /> 1047 <field type="INT32" name="datum" /> 1048 <pad bytes="12" /> 1049 <list type="INT32" name="data"> 1050 <fieldref>n</fieldref> 1051 </list> 1052 </reply> 1053 </request> 1054 1055 <request name="GetTexLevelParameterfv" opcode="138"> 1056 <field type="CONTEXT_TAG" name="context_tag" /> 1057 <field type="CARD32" name="target" /> 1058 <field type="INT32" name="level" /> 1059 <field type="CARD32" name="pname" /> 1060 <reply> 1061 <pad bytes="1" /> 1062 <pad bytes="4" /> 1063 <field type="CARD32" name="n" /> 1064 <field type="FLOAT32" name="datum" /> 1065 <pad bytes="12" /> 1066 <list type="FLOAT32" name="data"> 1067 <fieldref>n</fieldref> 1068 </list> 1069 </reply> 1070 </request> 1071 1072 <request name="GetTexLevelParameteriv" opcode="139"> 1073 <field type="CONTEXT_TAG" name="context_tag" /> 1074 <field type="CARD32" name="target" /> 1075 <field type="INT32" name="level" /> 1076 <field type="CARD32" name="pname" /> 1077 <reply> 1078 <pad bytes="1" /> 1079 <pad bytes="4" /> 1080 <field type="CARD32" name="n" /> 1081 <field type="INT32" name="datum" /> 1082 <pad bytes="12" /> 1083 <list type="INT32" name="data"> 1084 <fieldref>n</fieldref> 1085 </list> 1086 </reply> 1087 </request> 1088 1089 <request name="IsList" opcode="141" > 1090 <field type="CONTEXT_TAG" name="context_tag" /> 1091 <field type="CARD32" name="list" /> 1092 <reply> 1093 <pad bytes="1" /> 1094 <field type="BOOL32" name="ret_val" /> 1095 </reply> 1096 </request> 1097 1098 <request name="Flush" opcode="142"> 1099 <field type="CONTEXT_TAG" name="context_tag" /> 1100 </request> 1101 1102 <request name="AreTexturesResident" opcode="143"> 1103 <field type="CONTEXT_TAG" name="context_tag" /> 1104 <field type="INT32" name="n" /> 1105 <list type="CARD32" name="textures"> 1106 <fieldref>n</fieldref> 1107 </list> 1108 <reply> 1109 <pad bytes="1" /> 1110 <field type="BOOL32" name="ret_val" /> 1111 <pad bytes="20" /> 1112 <list type="BOOL" name="data"> 1113 <op op="*"> 1114 <fieldref>length</fieldref> 1115 <value>4</value> 1116 </op> 1117 </list> 1118 </reply> 1119 </request> 1120 1121 <request name="DeleteTextures" opcode="144"> 1122 <field type="CONTEXT_TAG" name="context_tag" /> 1123 <field type="INT32" name="n" /> 1124 <list type="CARD32" name="textures"> 1125 <fieldref>n</fieldref> 1126 </list> 1127 </request> 1128 1129 <request name="GenTextures" opcode="145"> 1130 <field type="CONTEXT_TAG" name="context_tag" /> 1131 <field type="INT32" name="n" /> 1132 <reply> 1133 <pad bytes="1" /> 1134 <pad bytes="24" /> 1135 <list type="CARD32" name="data"> 1136 <fieldref>length</fieldref> 1137 </list> 1138 </reply> 1139 </request> 1140 1141 <request name="IsTexture" opcode="146"> 1142 <field type="CONTEXT_TAG" name="context_tag" /> 1143 <field type="CARD32" name="texture" /> 1144 <reply> 1145 <pad bytes="1" /> 1146 <field type="BOOL32" name="ret_val" /> 1147 </reply> 1148 </request> 1149 1150 <request name="GetColorTable" opcode="147"> 1151 <field type="CONTEXT_TAG" name="context_tag" /> 1152 <field type="CARD32" name="target" /> 1153 <field type="CARD32" name="format" /> 1154 <field type="CARD32" name="type" /> 1155 <field type="BOOL" name="swap_bytes" /> 1156 <reply> 1157 <pad bytes="1" /> 1158 <pad bytes="8" /> 1159 <field type="INT32" name="width" /> 1160 <pad bytes="12" /> 1161 <list type="BYTE" name="data"> 1162 <op op="*"> 1163 <fieldref>length</fieldref> 1164 <value>4</value> 1165 </op> 1166 </list> 1167 </reply> 1168 </request> 1169 1170 <request name="GetColorTableParameterfv" opcode="148"> 1171 <field type="CONTEXT_TAG" name="context_tag" /> 1172 <field type="CARD32" name="target" /> 1173 <field type="CARD32" name="pname" /> 1174 <reply> 1175 <pad bytes="1" /> 1176 <pad bytes="4" /> 1177 <field type="CARD32" name="n" /> 1178 <field type="FLOAT32" name="datum" /> 1179 <pad bytes="12" /> 1180 <list type="FLOAT32" name="data"> 1181 <fieldref>n</fieldref> 1182 </list> 1183 </reply> 1184 </request> 1185 1186 <request name="GetColorTableParameteriv" opcode="149"> 1187 <field type="CONTEXT_TAG" name="context_tag" /> 1188 <field type="CARD32" name="target" /> 1189 <field type="CARD32" name="pname" /> 1190 <reply> 1191 <pad bytes="1" /> 1192 <pad bytes="4" /> 1193 <field type="CARD32" name="n" /> 1194 <field type="INT32" name="datum" /> 1195 <pad bytes="12" /> 1196 <list type="INT32" name="data"> 1197 <fieldref>n</fieldref> 1198 </list> 1199 </reply> 1200 </request> 1201 1202 <request name="GetConvolutionFilter" opcode="150"> 1203 <field type="CONTEXT_TAG" name="context_tag" /> 1204 <field type="CARD32" name="target" /> 1205 <field type="CARD32" name="format" /> 1206 <field type="CARD32" name="type" /> 1207 <field type="BOOL" name="swap_bytes" /> 1208 <reply> 1209 <pad bytes="1" /> 1210 <pad bytes="8" /> 1211 <field type="INT32" name="width" /> 1212 <field type="INT32" name="height" /> 1213 <pad bytes="8" /> 1214 <list type="BYTE" name="data"> 1215 <op op="*"> 1216 <fieldref>length</fieldref> 1217 <value>4</value> 1218 </op> 1219 </list> 1220 </reply> 1221 </request> 1222 1223 1224 <request name="GetConvolutionParameterfv" opcode="151"> 1225 <field type="CONTEXT_TAG" name="context_tag" /> 1226 <field type="CARD32" name="target" /> 1227 <field type="CARD32" name="pname" /> 1228 <reply> 1229 <pad bytes="1" /> 1230 <pad bytes="4" /> 1231 <field type="CARD32" name="n" /> 1232 <field type="FLOAT32" name="datum" /> 1233 <pad bytes="12" /> 1234 <list type="FLOAT32" name="data"> 1235 <fieldref>n</fieldref> 1236 </list> 1237 </reply> 1238 </request> 1239 1240 <request name="GetConvolutionParameteriv" opcode="152"> 1241 <field type="CONTEXT_TAG" name="context_tag" /> 1242 <field type="CARD32" name="target" /> 1243 <field type="CARD32" name="pname" /> 1244 <reply> 1245 <pad bytes="1" /> 1246 <pad bytes="4" /> 1247 <field type="CARD32" name="n" /> 1248 <field type="INT32" name="datum" /> 1249 <pad bytes="12" /> 1250 <list type="INT32" name="data"> 1251 <fieldref>n</fieldref> 1252 </list> 1253 </reply> 1254 </request> 1255 1256 <request name="GetSeparableFilter" opcode="153"> 1257 <field type="CONTEXT_TAG" name="context_tag" /> 1258 <field type="CARD32" name="target" /> 1259 <field type="CARD32" name="format" /> 1260 <field type="CARD32" name="type" /> 1261 <field type="BOOL" name="swap_bytes" /> 1262 <reply> 1263 <pad bytes="1" /> 1264 <pad bytes="8" /> 1265 <field type="INT32" name="row_w" /> 1266 <field type="INT32" name="col_h" /> 1267 <pad bytes="8" /> 1268 <list type="BYTE" name="rows_and_cols"> 1269 <op op="*"> 1270 <fieldref>length</fieldref> 1271 <value>4</value> 1272 </op> 1273 </list> 1274 </reply> 1275 </request> 1276 1277 <request name="GetHistogram" opcode="154"> 1278 <field type="CONTEXT_TAG" name="context_tag" /> 1279 <field type="CARD32" name="target" /> 1280 <field type="CARD32" name="format" /> 1281 <field type="CARD32" name="type" /> 1282 <field type="BOOL" name="swap_bytes" /> 1283 <field type="BOOL" name="reset" /> 1284 <reply> 1285 <pad bytes="1" /> 1286 <pad bytes="8" /> 1287 <field type="INT32" name="width" /> 1288 <pad bytes="12" /> 1289 <list type="BYTE" name="data"> 1290 <op op="*"> 1291 <fieldref>length</fieldref> 1292 <value>4</value> 1293 </op> 1294 </list> 1295 </reply> 1296 </request> 1297 1298 1299 <request name="GetHistogramParameterfv" opcode="155"> 1300 <field type="CONTEXT_TAG" name="context_tag" /> 1301 <field type="CARD32" name="target" /> 1302 <field type="CARD32" name="pname" /> 1303 <reply> 1304 <pad bytes="1" /> 1305 <pad bytes="4" /> 1306 <field type="CARD32" name="n" /> 1307 <field type="FLOAT32" name="datum" /> 1308 <pad bytes="12" /> 1309 <list type="FLOAT32" name="data"> 1310 <fieldref>n</fieldref> 1311 </list> 1312 </reply> 1313 </request> 1314 1315 <request name="GetHistogramParameteriv" opcode="156"> 1316 <field type="CONTEXT_TAG" name="context_tag" /> 1317 <field type="CARD32" name="target" /> 1318 <field type="CARD32" name="pname" /> 1319 <reply> 1320 <pad bytes="1" /> 1321 <pad bytes="4" /> 1322 <field type="CARD32" name="n" /> 1323 <field type="INT32" name="datum" /> 1324 <pad bytes="12" /> 1325 <list type="INT32" name="data"> 1326 <fieldref>n</fieldref> 1327 </list> 1328 </reply> 1329 </request> 1330 1331 <request name="GetMinmax" opcode="157"> 1332 <field type="CONTEXT_TAG" name="context_tag" /> 1333 <field type="CARD32" name="target" /> 1334 <field type="CARD32" name="format" /> 1335 <field type="CARD32" name="type" /> 1336 <field type="BOOL" name="swap_bytes" /> 1337 <field type="BOOL" name="reset" /> 1338 <reply> 1339 <pad bytes="1" /> 1340 <pad bytes="24" /> 1341 <list type="BYTE" name="data"> 1342 <op op="*"> 1343 <fieldref>length</fieldref> 1344 <value>4</value> 1345 </op> 1346 </list> 1347 </reply> 1348 </request> 1349 1350 <request name="GetMinmaxParameterfv" opcode="158"> 1351 <field type="CONTEXT_TAG" name="context_tag" /> 1352 <field type="CARD32" name="target" /> 1353 <field type="CARD32" name="pname" /> 1354 <reply> 1355 <pad bytes="1" /> 1356 <pad bytes="4" /> 1357 <field type="CARD32" name="n" /> 1358 <field type="FLOAT32" name="datum" /> 1359 <pad bytes="12" /> 1360 <list type="FLOAT32" name="data"> 1361 <fieldref>n</fieldref> 1362 </list> 1363 </reply> 1364 </request> 1365 1366 <request name="GetMinmaxParameteriv" opcode="159"> 1367 <field type="CONTEXT_TAG" name="context_tag" /> 1368 <field type="CARD32" name="target" /> 1369 <field type="CARD32" name="pname" /> 1370 <reply> 1371 <pad bytes="1" /> 1372 <pad bytes="4" /> 1373 <field type="CARD32" name="n" /> 1374 <field type="INT32" name="datum" /> 1375 <pad bytes="12" /> 1376 <list type="INT32" name="data"> 1377 <fieldref>n</fieldref> 1378 </list> 1379 </reply> 1380 </request> 1381 1382 <!-- 1383 GLX Extensions 1384 1385 * XXX: So far only define non-rendering commands. 1386 * Only those extensions that affect the GLX wire protocol are listed. 1387 --> 1388 1389 <!-- 1390 GL_ARB_texture_compression 1391 http://oss.sgi.com/projects/ogl-sample/registry/ARB/texture_compression.txt 1392 --> 1393 <request name="GetCompressedTexImageARB" opcode="160"> 1394 <field type="CONTEXT_TAG" name="context_tag" /> 1395 <field type="CARD32" name="target" /> 1396 <field type="INT32" name="level" /> 1397 <reply> 1398 <pad bytes="1" /> 1399 <pad bytes="8" /> 1400 <field type="INT32" name="size" /> 1401 <pad bytes="12" /> 1402 <list type="BYTE" name="data"> 1403 <op op="*"> 1404 <fieldref>length</fieldref> 1405 <value>4</value> 1406 </op> 1407 </list> 1408 </reply> 1409 </request> 1410 1411 1412 <!-- 1413 GL_ARB_occlusion_query 1414 http://oss.sgi.com/projects/ogl-sample/registry/ARB/occlusion_query.txt 1415 --> 1416 1417 <request name="DeleteQueriesARB" opcode="161"> 1418 <field type="CONTEXT_TAG" name="context_tag" /> 1419 <field type="INT32" name="n" /> 1420 <list type="CARD32" name="ids"> 1421 <fieldref>n</fieldref> 1422 </list> 1423 </request> 1424 1425 <request name="GenQueriesARB" opcode="162"> 1426 <field type="CONTEXT_TAG" name="context_tag" /> 1427 <field type="INT32" name="n" /> 1428 <reply> 1429 <pad bytes="1" /> 1430 <pad bytes="24" /> 1431 <list type="CARD32" name="data"> 1432 <fieldref>length</fieldref> 1433 </list> 1434 </reply> 1435 </request> 1436 1437 <request name="IsQueryARB" opcode="163"> 1438 <field type="CONTEXT_TAG" name="context_tag" /> 1439 <field type="CARD32" name="id" /> 1440 <reply> 1441 <pad bytes="1" /> 1442 <field type="BOOL32" name="ret_val" /> 1443 </reply> 1444 </request> 1445 1446 <request name="GetQueryivARB" opcode="164"> 1447 <field type="CONTEXT_TAG" name="context_tag" /> 1448 <field type="CARD32" name="target" /> 1449 <field type="CARD32" name="pname" /> 1450 <reply> 1451 <pad bytes="1" /> 1452 <pad bytes="4" /> 1453 <field type="CARD32" name="n" /> 1454 <field type="INT32" name="datum" /> 1455 <pad bytes="12" /> 1456 <list type="INT32" name="data"> 1457 <fieldref>n</fieldref> 1458 </list> 1459 </reply> 1460 </request> 1461 1462 <request name="GetQueryObjectivARB" opcode="165"> 1463 <field type="CONTEXT_TAG" name="context_tag" /> 1464 <field type="CARD32" name="id" /> 1465 <field type="CARD32" name="pname" /> 1466 <reply> 1467 <pad bytes="1" /> 1468 <pad bytes="4" /> 1469 <field type="CARD32" name="n" /> 1470 <field type="INT32" name="datum" /> 1471 <pad bytes="12" /> 1472 <list type="INT32" name="data"> 1473 <fieldref>n</fieldref> 1474 </list> 1475 </reply> 1476 </request> 1477 1478 <request name="GetQueryObjectuivARB" opcode="166"> 1479 <field type="CONTEXT_TAG" name="context_tag" /> 1480 <field type="CARD32" name="id" /> 1481 <field type="CARD32" name="pname" /> 1482 <reply> 1483 <pad bytes="1" /> 1484 <pad bytes="4" /> 1485 <field type="CARD32" name="n" /> 1486 <field type="CARD32" name="datum" /> 1487 <pad bytes="12" /> 1488 <list type="CARD32" name="data"> 1489 <fieldref>n</fieldref> 1490 </list> 1491 </reply> 1492 </request> 1493 1494 <!-- 1495 GL_ARB_vertex_program 1496 http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_program.txt 1497 XXX: Need to write up vops 1498 --> 1499 1500 <!-- 1501 GL_ARB_fragment_program 1502 http://oss.sgi.com/projects/ogl-sample/registry/ARB/fragment_program.txt 1503 XXX: Need to write up vops 1504 --> 1505 1506 <!-- 1507 GL_SGIS_texture_filter4 1508 http://oss.sgi.com/projects/ogl-sample/registry/SGIS/texture_filter4.txt 1509 XXX: Need to write up vops 1510 --> 1511 1512 <!-- 1513 GL_EXT_histogram 1514 http://oss.sgi.com/projects/ogl-sample/registry/EXT/histogram.txt 1515 XXX: Need to write up vops 1516 --> 1517 1518 <!-- 1519 GL_EXT_convolution 1520 http://oss.sgi.com/projects/ogl-sample/registry/EXT/convolution.txt 1521 XXX: Need to write up vops 1522 --> 1523 1524 <!-- 1525 GL_SGI_color_table 1526 http://oss.sgi.com/projects/ogl-sample/registry/SGI/color_table.txt 1527 XXX: Need to write up vops 1528 --> 1529 1530 <!-- 1531 GL_EXT_texture_object 1532 http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_object.txt 1533 XXX: Need to write up vops 1534 --> 1535 1536 <!-- 1537 GL_SGIS_detail_texture 1538 http://oss.sgi.com/projects/ogl-sample/registry/SGIS/detail_texture.txt 1539 XXX: Need to write up vops 1540 --> 1541 1542 <!-- 1543 GL_SGIS_sharpen_texture 1544 http://oss.sgi.com/projects/ogl-sample/registry/SGIS/sharpen_texture.txt 1545 XXX: Need to write up vops 1546 --> 1547 1548 <!-- 1549 GL_SGI_make_current_read 1550 http://oss.sgi.com/projects/ogl-sample/registry/SGI/make_current_read.txt 1551 XXX: Need to write up vops 1552 --> 1553 1554 <!-- 1555 GL_EXT_import_context 1556 http://oss.sgi.com/projects/ogl-sample/registry/EXT/import_context.txt 1557 XXX: Need to write up vops 1558 --> 1559 1560 <!-- 1561 GL_SGIX_fbconfig 1562 http://oss.sgi.com/projects/ogl-sample/registry/SGIX/fbconfig.txt 1563 XXX: Need to write up vops 1564 --> 1565 1566 <!-- 1567 GL_SGIX_pbuffer 1568 http://oss.sgi.com/projects/ogl-sample/registry/SGIX/pbuffer.txt 1569 XXX: Need to write up vops 1570 --> 1571 1572 <!-- 1573 GL_EXT_pixel_transform 1574 http://oss.sgi.com/projects/ogl-sample/registry/EXT/pixel_transform.txt 1575 XXX: Need to write up vops 1576 --> 1577 1578 <!-- 1579 GL_NV_register_combiners 1580 http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners.txt 1581 XXX: Need to write up vops 1582 --> 1583 1584 <!-- 1585 GL_NV_fence 1586 http://oss.sgi.com/projects/ogl-sample/registry/NV/fence.txt 1587 XXX: Need to write up vops 1588 --> 1589 1590 <!-- 1591 GL_NV_register_combiners2 1592 http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners2.txt 1593 XXX: Need to write up vops 1594 --> 1595 1596 <!-- 1597 GL_NV_vertex_program 1598 http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt 1599 XXX: Need to write up vops 1600 --> 1601 1602 <!-- 1603 GL_NV_vertex_program 1604 http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt 1605 XXX: Need to write up vops 1606 --> 1607 1608 <!-- 1609 GL_NV_occlusion_query 1610 http://oss.sgi.com/projects/ogl-sample/registry/NV/occlusion_query.txt 1611 XXX: Need to write up vops 1612 --> 1613 1614 <!-- 1615 GL_NV_fragment_program 1616 http://oss.sgi.com/projects/ogl-sample/registry/NV/fragment_program.txt 1617 XXX: Need to write up vops 1618 --> 1619 1620 <!-- 1621 GL_OES_single_precision 1622 http://oss.sgi.com/projects/ogl-sample/registry/OES/single_precision.txt 1623 XXX: Need to write up vops 1624 --> 1625 1626</xcb> 1627