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