Tizen 2.0 Release
[profile/ivi/osmesa.git] / src / mesa / main / APIspec.dtd
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>