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