Merge commit 'origin/gallium-0.1'
[mesa.git] / src / mesa / glapi / gl_API.dtd
index 352e1b53a5d7861c8cb57ce9bc477932c25f7597..30c646c9244a467fc8ac3283f1ee3f8a3a7cd2ac 100644 (file)
@@ -1,4 +1,4 @@
-<!ELEMENT OpenGLAPI (category+)>
+<!ELEMENT OpenGLAPI (category?, xi:include?, OpenGLAPI?)+>
 <!ELEMENT category (type*, enum*, function*)*>
 <!ELEMENT type EMPTY>
 <!ELEMENT enum (size*)>
@@ -8,10 +8,24 @@
 <!ELEMENT return EMPTY>
 <!ELEMENT glx EMPTY>
 
+<!ELEMENT xi:include (xi:fallback)?>
+<!ATTLIST xi:include
+          xmlns:xi  CDATA #FIXED "http://www.w3.org/2001/XInclude"
+          href       CDATA #REQUIRED
+          parse      (xml|text) "xml"
+          encoding   CDATA #IMPLIED>
+<!ELEMENT xi:fallback ANY>
+<!ATTLIST xi:fallback
+          xmlns:xi   CDATA #FIXED "http://www.w3.org/2001/XInclude">
+
+
 <!ATTLIST category name                NMTOKEN #REQUIRED
-                   number              NMTOKEN #IMPLIED>
+                   number              NMTOKEN #IMPLIED
+                  window_system       NMTOKEN #IMPLIED>
 <!ATTLIST type     name                NMTOKEN #REQUIRED
                    size                NMTOKEN #REQUIRED
+                  float               (true | false) "false"
+                  unsigned            (true | false) "false"
                    glx_name            NMTOKEN #IMPLIED>
 <!ATTLIST enum     name                NMTOKEN #REQUIRED
                    count               CDATA   #IMPLIED
 <!ATTLIST function name                NMTOKEN #REQUIRED
                    alias               NMTOKEN #IMPLIED
                    offset              CDATA   #IMPLIED
+                   static_dispatch     (true | false) "true"
                    vectorequiv         NMTOKEN #IMPLIED>
 <!ATTLIST size     name                NMTOKEN #REQUIRED
                    count               NMTOKEN #IMPLIED
-                   mode                NMTOKEN #IMPLIED>
+                   mode                (get | set) "set">
 <!ATTLIST param    name                NMTOKEN #REQUIRED
                    type                CDATA   #REQUIRED
+                  client_only         (true | false) "false"
                    count               NMTOKEN #IMPLIED
                    counter             (true | false) "false"
-                   count_scale         NMTOKEN #IMPLIED
+                   count_scale         NMTOKEN "1"
                    output              (true | false) "false"
+                   padding             (true | false) "false"
                    img_width           NMTOKEN #IMPLIED
                    img_height          NMTOKEN #IMPLIED
                    img_depth           NMTOKEN #IMPLIED
@@ -64,6 +81,9 @@ will just mean adding a '<glx ignore="true"/>' tag.
 param:
      name - name of the parameter
      type - fully qualified type (e.g., with "const", etc.)
+     client_only - boolean flag set on parameters which are interpreted only
+         by the client and are not present in the protocol encoding (e.g.,
+        the stride parameters to Map1f, etc.)
      count - for counted arrays (e.g., the 'lists' parameter to glCallLists),
          the parameter or literal that represents the count.  For functions
          like glVertex3fv it will be a litteral, for others it will be one of