summaryrefslogtreecommitdiff
path: root/src/mesa/main/APIspec.dtd
blob: efcfa31f10e0f78aaeb75e0c074910e6cc47d4ea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!ELEMENT apispec (template|api)+>

<!ELEMENT api (category*, function*)>
<!ELEMENT category EMPTY>
<!ELEMENT function EMPTY>

<!ELEMENT template (proto, desc*)>
<!ELEMENT proto (return, (param|vector)*)>
<!ELEMENT return EMPTY>
<!ELEMENT param EMPTY>
<!ELEMENT vector (param*)>
<!ELEMENT desc ((value|range)*, desc*)>
<!ELEMENT value EMPTY>
<!ELEMENT range EMPTY>

<!ATTLIST api      name                NMTOKEN #REQUIRED
                   implementation      (true | false) "false">
<!ATTLIST category name                NMTOKEN #REQUIRED>
<!ATTLIST function name                NMTOKEN #REQUIRED
                   default_prefix      NMTOKEN "_mesa_"
                   external            (true | false) "false"
                   template            NMTOKEN #REQUIRED
                   gltype              CDATA #IMPLIED
                   vector_size         NMTOKEN #IMPLIED
                   expand_vector       (true | false) "false"
                   skip_desc           (true | false) "false">

<!ATTLIST template name                NMTOKEN #REQUIRED
                   direction           (set | get) "set">

<!ATTLIST return   type                CDATA #REQUIRED>
<!ATTLIST param    name                NMTOKEN #REQUIRED
                   type                CDATA #REQUIRED
                   hide_if_expanded    (true | false) "false"
                   category            NMTOKEN #IMPLIED>
<!ATTLIST vector   name                NMTOKEN #REQUIRED
                   type                CDATA #REQUIRED
                   size                NMTOKEN #REQUIRED
                   category            NMTOKEN #IMPLIED>

<!ATTLIST desc     name                NMTOKEN #REQUIRED
                   vector_size         CDATA #IMPLIED
                   convert             (true | false) #IMPLIED
                   error               NMTOKEN "GL_INVALID_ENUM"
                   category            NMTOKEN #IMPLIED>

<!ATTLIST value    name                CDATA #REQUIRED
                   category            NMTOKEN #IMPLIED>
<!ATTLIST range    from                NMTOKEN #REQUIRED
                   to                  NMTOKEN #REQUIRED
                   base                NMTOKEN #IMPLIED
                   category            NMTOKEN #IMPLIED>