Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Regenerate with flexml 1.9 (robust against multiple definitions of attributes)
[simgrid.git] / include / xbt / graphxml.h
1 /* XML processor/application API for src/xbt/graphxml.dtd.
2  *
3  * This program was generated with the FleXML XML processor generator.
4  * FleXML is Copyright (C) 1999-2005 Kristoffer Rose.  All rights reserved.
5  * FleXML is Copyright (C) 2003-2006 Martin Quinson.  All rights reserved.
6  * (Id: flexml.pl,v 1.64 2007/11/09 13:38:20 mquinson Exp).
7  * 
8  * There are two, intertwined parts to this program, part A and part B.
9  *
10  * Part A
11  * ------
12  * 
13  * Some parts, here collectively called "Part A", are found in the 
14  * FleXML package.  They are Copyright (C) 1999-2005 Kristoffer Rose
15  * and Copyright (C) 2003-2006 Martin Quinson. All rights reserved.
16  *
17  * You can redistribute, use, perform, display and/or modify "Part A"
18  * provided the following two conditions hold:
19  *
20  * 1. The program is distributed WITHOUT ANY WARRANTY from the author of
21  *    FleXML; without even the implied warranty of MERCHANTABILITY or
22  *    FITNESS FOR A PARTICULAR PURPOSE.
23  *
24  * 2. The program distribution conditions do not in any way affect the
25  *    distribution conditions of the FleXML system used to generate this
26  *    file or any version of FleXML derived from that system.
27  *
28  * Notice that these are explicit rights granted to you for files
29  * generated by the FleXML system.  For your rights in connection with
30  * the FleXML system itself please consult the GNU General Public License.
31  * 
32  * Part B
33  * ------
34  * 
35  * The other parts, here collectively called "Part B", and which came 
36  * from the DTD used by FleXML to generate this program, can be 
37  * distributed (or not, as the case may be) under the terms of whoever
38  * wrote them, provided these terms respect and obey the two conditions 
39  * above under the heading "Part A".
40  *
41  * The author of and contributors to FleXML specifically disclaim
42  * any copyright interest in "Part B", unless "Part B" was written 
43  * by the author of or contributors to FleXML.
44  * 
45  */
46
47 #ifndef _FLEXML_graphxml_H
48 #define _FLEXML_graphxml_H
49
50 /* XML application entry points. */
51 XBT_PUBLIC(void ) STag_graphxml_graph(void);
52 XBT_PUBLIC(void ) ETag_graphxml_graph(void);
53 XBT_PUBLIC(void ) STag_graphxml_node(void);
54 XBT_PUBLIC(void ) ETag_graphxml_node(void);
55 XBT_PUBLIC(void ) STag_graphxml_edge(void);
56 XBT_PUBLIC(void ) ETag_graphxml_edge(void);
57
58 /* XML application data. */
59 short int graphxml_node_name_isset;
60 typedef int AT_graphxml_node_name;
61 #define AU_graphxml_node_name NULL
62 short int graphxml_edge_source_isset;
63 typedef int AT_graphxml_edge_source;
64 #define AU_graphxml_edge_source NULL
65 short int graphxml_node_position_y_isset;
66 typedef int AT_graphxml_node_position_y;
67 #define AU_graphxml_node_position_y NULL
68 short int graphxml_node_position_x_isset;
69 typedef int AT_graphxml_node_position_x;
70 #define AU_graphxml_node_position_x NULL
71 short int graphxml_edge_data_isset;
72 typedef int AT_graphxml_edge_data;
73 #define AU_graphxml_edge_data NULL
74 short int graphxml_edge_target_isset;
75 typedef int AT_graphxml_edge_target;
76 #define AU_graphxml_edge_target NULL
77 short int graphxml_graph_isDirected_isset;
78 typedef enum { AU_graphxml_graph_isDirected, A_graphxml_graph_isDirected_true,A_graphxml_graph_isDirected_false } AT_graphxml_graph_isDirected;
79 short int graphxml_node_label_isset;
80 typedef int AT_graphxml_node_label;
81 #define AU_graphxml_node_label NULL
82 short int graphxml_node_data_isset;
83 typedef int AT_graphxml_node_data;
84 #define AU_graphxml_node_data NULL
85 short int graphxml_edge_label_isset;
86 typedef int AT_graphxml_edge_label;
87 #define AU_graphxml_edge_label NULL
88 short int graphxml_edge_length_isset;
89 typedef int AT_graphxml_edge_length;
90 #define AU_graphxml_edge_length NULL
91 short int graphxml_edge_name_isset;
92 typedef int AT_graphxml_edge_name;
93 #define AU_graphxml_edge_name NULL
94
95 /* FleXML-provided data. */
96 XBT_PUBLIC_DATA(int ) graphxml_pcdata_ix;
97 XBT_PUBLIC_DATA(char *) graphxml_bufferstack;
98 #define graphxml_pcdata (graphxml_bufferstack + graphxml_pcdata_ix)
99 XBT_PUBLIC_DATA(AT_graphxml_node_name ) AX_graphxml_node_name;
100 #define A_graphxml_node_name (graphxml_bufferstack + AX_graphxml_node_name)
101 XBT_PUBLIC_DATA(AT_graphxml_edge_source ) AX_graphxml_edge_source;
102 #define A_graphxml_edge_source (graphxml_bufferstack + AX_graphxml_edge_source)
103 XBT_PUBLIC_DATA(AT_graphxml_node_position_y ) AX_graphxml_node_position_y;
104 #define A_graphxml_node_position_y (graphxml_bufferstack + AX_graphxml_node_position_y)
105 XBT_PUBLIC_DATA(AT_graphxml_node_position_x ) AX_graphxml_node_position_x;
106 #define A_graphxml_node_position_x (graphxml_bufferstack + AX_graphxml_node_position_x)
107 XBT_PUBLIC_DATA(AT_graphxml_edge_data ) AX_graphxml_edge_data;
108 #define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data)
109 XBT_PUBLIC_DATA(AT_graphxml_edge_target ) AX_graphxml_edge_target;
110 #define A_graphxml_edge_target (graphxml_bufferstack + AX_graphxml_edge_target)
111 XBT_PUBLIC_DATA(AT_graphxml_graph_isDirected ) AX_graphxml_graph_isDirected;
112 #define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected
113 XBT_PUBLIC_DATA(AT_graphxml_node_label ) AX_graphxml_node_label;
114 #define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label)
115 XBT_PUBLIC_DATA(AT_graphxml_node_data ) AX_graphxml_node_data;
116 #define A_graphxml_node_data (graphxml_bufferstack + AX_graphxml_node_data)
117 XBT_PUBLIC_DATA(AT_graphxml_edge_label ) AX_graphxml_edge_label;
118 #define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label)
119 XBT_PUBLIC_DATA(AT_graphxml_edge_length ) AX_graphxml_edge_length;
120 #define A_graphxml_edge_length (graphxml_bufferstack + AX_graphxml_edge_length)
121 XBT_PUBLIC_DATA(AT_graphxml_edge_name ) AX_graphxml_edge_name;
122 #define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name)
123
124 /* XML application utilities. */
125 XBT_PUBLIC(int ) graphxml_element_context(int);
126
127 /* XML processor entry point. */
128 XBT_PUBLIC(int ) yylex(void);
129
130 /* Flexml error handling function (useful only when -q flag passed to flexml) */
131 const char * graphxml_parse_err_msg(void);
132 #endif