add debugging for compresssed textures
[mesa.git] / src / mesa / glapi / gl_API.xml
index 9852c4c2b49412fbd9c0ff3143eb6c2ad46931cf..fda4b4e6ac983914110a999389aa921c890dc1d2 100644 (file)
                    value  CDATA #REQUIRED>
 <!ATTLIST function name   CDATA #REQUIRED
                    offset CDATA #REQUIRED
-                  vectorequiv CDATA #IMPLIED>
+                   vectorequiv CDATA #IMPLIED>
 <!ATTLIST param    name   CDATA #REQUIRED
                    type   CDATA #REQUIRED
-                  count  CDATA #IMPLIED
-                  variable_param  CDATA #IMPLIED>
+                   count  CDATA #IMPLIED
+                   variable_param  CDATA #IMPLIED>
 <!ATTLIST return   type     CDATA #REQUIRED>
 <!ATTLIST glx      rop      CDATA #IMPLIED
                    sop      CDATA #IMPLIED
+                   large    CDATA #IMPLIED
+                  doubles_in_order CDATA #IMPLIED
                    handcode CDATA #IMPLIED
                    ignore   CDATA #IMPLIED>
 ]>
     <function name="CallLists" offset="3">
         <param name="n" type="GLsizei"/>
         <param name="type" type="GLenum"/>
-        <param name="lists" type="const GLvoid *" variable_count="n, type"/>
-        <glx rop="2" handcode="true"/>
+        <param name="lists" type="const GLvoid *" variable_param="type" count="n"/>
+        <glx rop="2" large="true"/>
     </function>
 
     <function name="DeleteLists" offset="4">
     <function name="PixelStoref" offset="249">
         <param name="pname" type="GLenum"/>
         <param name="param" type="GLfloat"/>
-        <glx rop="109" handcode="true"/>
+        <glx sop="109" handcode="true"/>
     </function>
 
     <function name="PixelStorei" offset="250">
         <param name="pname" type="GLenum"/>
         <param name="param" type="GLint"/>
-        <glx rop="110" handcode="true"/>
+        <glx sop="110" handcode="true"/>
     </function>
 
     <function name="PixelMapfv" offset="251">
         <param name="map" type="GLenum"/>
-        <param name="mapsize" type="GLsizei"/>
-        <param name="values" type="const GLfloat *"/>
-        <glx sop="125" handcode="true"/>
+        <param name="mapsize" type="GLsizei" counter="true"/>
+        <param name="values" type="const GLfloat *" count="mapsize" variable_param="map" />
+        <glx rop="168" large="true"/>
     </function>
 
     <function name="PixelMapuiv" offset="252">
         <param name="map" type="GLenum"/>
         <param name="mapsize" type="GLsizei"/>
-        <param name="values" type="const GLuint *"/>
-        <glx sop="126" handcode="true"/>
+        <param name="values" type="const GLuint *" count="mapsize" variable_param="map" />
+        <glx rop="169" large="true"/>
     </function>
 
     <function name="PixelMapusv" offset="253">
         <param name="map" type="GLenum"/>
         <param name="mapsize" type="GLsizei"/>
-        <param name="values" type="const GLushort *"/>
-        <glx sop="127" handcode="true"/>
+        <param name="values" type="const GLushort *" count="mapsize" variable_param="map" />
+        <glx rop="170" large="true"/>
     </function>
 
     <function name="ReadBuffer" offset="254">
     </function>
 
     <function name="AreTexturesResident" offset="322">
-        <param name="n" type="GLsizei"/>
-        <param name="textures" type="const GLuint *"/>
-        <param name="residences" type="GLboolean *"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <param name="residences" type="GLboolean *" output="true"/>
         <return type="GLboolean"/>
-        <glx sop="143" handcode="true"/>
+        <glx sop="143"/>
     </function>
 
     <function name="BindTexture" offset="307">
     <function name="TexFilterFuncSGIS" offset="416">
         <param name="target" type="GLenum"/>
         <param name="filter" type="GLenum"/>
-        <param name="n" type="GLsizei"/>
-        <param name="weights" type="const GLfloat *"/>
-        <glx rop="2064" handcode="true"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="weights" type="const GLfloat *" count="n"/>
+        <glx rop="2064"/>
     </function>
 </category>
 
 
 <category name="GL_EXT_texture_object" number="20">
     <function name="AreTexturesResidentEXT" offset="439">
-        <param name="n" type="GLsizei"/>
-        <param name="textures" type="const GLuint *"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
         <param name="residences" type="GLboolean *" output="true"/>
         <return type="GLboolean"/>
-        <glx vendorpriv="11" handcode="true"/>
+        <glx vendorpriv="11"/>
     </function>
 
     <function name="BindTextureEXT" alias="BindTexture">
         <param name="texture" type="GLuint"/>
     </function>
 
+    <!-- For GLX, this is wrong.  DeleteTexturesEXT and DeleteTextures
+         do not have the same protocol!
+    -->
     <function name="DeleteTexturesEXT" alias="DeleteTextures">
         <param name="n" type="GLsizei"/>
         <param name="textures" type="const GLuint *"/>
     <function name="GenTexturesEXT" offset="440">
         <param name="n" type="GLsizei"/>
         <param name="textures" type="GLuint *" output="true"/>
-        <glx vendorpriv="13" handcode="true"/>
+        <glx vendorpriv="13"/>
     </function>
 
     <function name="IsTextureEXT" offset="441">
 <category name="GL_SGIS_detail_texture" number="21">
     <function name="DetailTexFuncSGIS" offset="442">
         <param name="target" type="GLenum"/>
-        <param name="n" type="GLsizei"/>
-        <param name="points" type="const GLfloat *"/>
-        <glx rop="2051" handcode="true"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="points" type="const GLfloat *" count="n"/>
+        <glx rop="2051"/>
     </function>
 
     <function name="GetDetailTexFuncSGIS" offset="443">
         <param name="target" type="GLenum"/>
         <param name="n" type="GLsizei"/>
         <param name="points" type="const GLfloat *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'points' is 2*n.
+        -->
         <glx rop="2052" handcode="true"/>
     </function>
 
 
 <category name="GL_NV_vertex_program" number="233">
     <function name="AreProgramsResidentNV" offset="578">
-        <param name="n" type="GLsizei"/>
-        <param name="ids" type="const GLuint *"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="ids" type="const GLuint *" count="n"/>
         <param name="residences" type="GLboolean *"/>
         <return type="GLboolean"/>
-        <glx vendorpriv="1293" handcode="true"/>
+        <glx vendorpriv="1293"/>
     </function>
 
     <function name="BindProgramNV" offset="579">
     </function>
 
     <function name="DeleteProgramsNV" offset="580">
-        <param name="n" type="GLsizei"/>
-        <param name="ids" type="const GLuint *"/>
-        <glx vendorpriv="1294" handcode="true"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="ids" type="const GLuint *" count="n"/>
+        <glx vendorpriv="1294"/>
     </function>
 
     <function name="ExecuteProgramNV" offset="581">
     <function name="GenProgramsNV" offset="582">
         <param name="n" type="GLsizei"/>
         <param name="ids" type="GLuint *"/>
-        <glx vendorpriv="1295" handcode="true"/>
+        <glx vendorpriv="1295"/>
     </function>
 
     <function name="GetProgramParameterdvNV" offset="583">
     <function name="LoadProgramNV" offset="593">
         <param name="target" type="GLenum"/>
         <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei"/>
-        <param name="program" type="const GLubyte *"/>
-        <glx rop="4183" handcode="true"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="program" type="const GLubyte *" count="len"/>
+        <glx rop="4183"/>
     </function>
 
     <function name="ProgramParameter4dNV" offset="594" vectorequiv="ProgramParameter4dvNV">
         <param name="index" type="GLuint"/>
         <param name="num" type="GLuint"/>
         <param name="params" type="const GLdouble *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'params' is 4*num.
+        -->
         <glx rop="4187" handcode="true"/>
     </function>
 
     <function name="ProgramParameters4fvNV" offset="599">
         <param name="target" type="GLenum"/>
         <param name="index" type="GLuint"/>
-        <param name="num" type="GLuint"/>
-        <param name="params" type="const GLfloat *"/>
+        <param name="num" type="GLuint" counter="true"/>
+        <param name="params" type="const GLfloat *" count="num"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'params' is 4*num.
+        -->
         <glx rop="4186" handcode="true"/>
     </function>
 
 
     <function name="VertexAttribs1dvNV" offset="629">
         <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei"/>
-        <param name="v" type="const GLdouble *"/>
-        <glx rop="4210" handcode="true"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLdouble *" count="n"/>
+        <glx rop="4210" doubles_in_order="true"/>
     </function>
 
     <function name="VertexAttribs1fvNV" offset="630">
         <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei"/>
-        <param name="v" type="const GLfloat *"/>
-        <glx rop="4206" handcode="true"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLfloat *" count="n"/>
+        <glx rop="4206"/>
     </function>
 
     <function name="VertexAttribs1svNV" offset="631">
         <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei"/>
-        <param name="v" type="const GLshort *"/>
-        <glx rop="4202" handcode="true"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLshort *" count="n"/>
+        <glx rop="4202"/>
     </function>
 
     <function name="VertexAttribs2dvNV" offset="632">
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLdouble *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 2*n.
+        -->
         <glx rop="4211" handcode="true"/>
     </function>
 
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLfloat *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 2*n.
+        -->
         <glx rop="4207" handcode="true"/>
     </function>
 
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLshort *"/>
         <glx rop="4203" handcode="true"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 2*n.
+        -->
     </function>
 
     <function name="VertexAttribs3dvNV" offset="635">
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLdouble *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 3*n.
+        -->
         <glx rop="4212" handcode="true"/>
     </function>
 
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLfloat *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 3*n.
+        -->
         <glx rop="4208" handcode="true"/>
     </function>
 
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLshort *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 3*n.
+        -->
         <glx rop="4204" handcode="true"/>
     </function>
 
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLdouble *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 4*n.
+        -->
         <glx rop="4213" handcode="true"/>
     </function>
 
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLfloat *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 4*n.
+        -->
         <glx rop="4209" handcode="true"/>
     </function>
 
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLshort *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 4*n.
+        -->
         <glx rop="4205" handcode="true"/>
     </function>
 
         <param name="index" type="GLuint"/>
         <param name="n" type="GLsizei"/>
         <param name="v" type="const GLubyte *"/>
+
+        <!-- This is hand coded because the number of array elements
+             pointed to by 'v' is 4*n.
+        -->
         <glx rop="4214" handcode="true"/>
     </function>
 </category>
 
 <category name="GL_ATI_draw_buffers" number="277">
     <function name="DrawBuffersATI" offset="?">
-        <param name="n" type="GLsizei"/>
-        <param name="bufs" type="const GLenum *"/>
-        <glx handcode="true"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="bufs" type="const GLenum *" count="n"/>
+       <!-- GLX protocol is not fully defined for this extension. -->
     </function>
 </category>