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