Home | History | Annotate | Download | only in main
      1 <!ELEMENT apispec (template|api)+>
      2 
      3 <!ELEMENT api (category*, function*)>
      4 <!ELEMENT category EMPTY>
      5 <!ELEMENT function EMPTY>
      6 
      7 <!ELEMENT template (proto, desc*)>
      8 <!ELEMENT proto (return, (param|vector)*)>
      9 <!ELEMENT return EMPTY>
     10 <!ELEMENT param EMPTY>
     11 <!ELEMENT vector (param*)>
     12 <!ELEMENT desc ((value|range)*, desc*)>
     13 <!ELEMENT value EMPTY>
     14 <!ELEMENT range EMPTY>
     15 
     16 <!ATTLIST api      name                NMTOKEN #REQUIRED
     17                    implementation      (true | false) "false">
     18 <!ATTLIST category name                NMTOKEN #REQUIRED>
     19 <!ATTLIST function name                NMTOKEN #REQUIRED
     20                    default_prefix      NMTOKEN "_mesa_"
     21                    external            (true | false) "false"
     22                    template            NMTOKEN #REQUIRED
     23                    gltype              CDATA #IMPLIED
     24                    vector_size         NMTOKEN #IMPLIED
     25                    expand_vector       (true | false) "false"
     26                    skip_desc           (true | false) "false">
     27 
     28 <!ATTLIST template name                NMTOKEN #REQUIRED
     29                    direction           (set | get) "set">
     30 
     31 <!ATTLIST return   type                CDATA #REQUIRED>
     32 <!ATTLIST param    name                NMTOKEN #REQUIRED
     33                    type                CDATA #REQUIRED
     34                    hide_if_expanded    (true | false) "false"
     35                    category            NMTOKEN #IMPLIED>
     36 <!ATTLIST vector   name                NMTOKEN #REQUIRED
     37                    type                CDATA #REQUIRED
     38                    size                NMTOKEN #REQUIRED
     39                    category            NMTOKEN #IMPLIED>
     40 
     41 <!ATTLIST desc     name                NMTOKEN #REQUIRED
     42                    vector_size         CDATA #IMPLIED
     43                    convert             (true | false) #IMPLIED
     44                    error               NMTOKEN "GL_INVALID_ENUM"
     45                    category            NMTOKEN #IMPLIED>
     46 
     47 <!ATTLIST value    name                CDATA #REQUIRED
     48                    category            NMTOKEN #IMPLIED>
     49 <!ATTLIST range    from                NMTOKEN #REQUIRED
     50                    to                  NMTOKEN #REQUIRED
     51                    base                NMTOKEN #IMPLIED
     52                    category            NMTOKEN #IMPLIED>
     53