--- /dev/null
+/* XML processor/application API for ../../src/surf/surfxml.dtd.
+ * Generated 2005/08/16 14:42:02.
+ *
+ * This program was generated with the FleXML XML processor generator.
+ * FleXML is Copyright © 1999-2005 Kristoffer Rose. All rights reserved.
+ * (Id: flexml.pl,v 1.44 2005/02/23 23:08:16 mquinson Exp).
+ *
+ * There are two, intertwined parts to this program, part A and part B.
+ *
+ * Part A
+ * ------
+ *
+ * Some parts, here collectively called "Part A", are found in the
+ * FleXML package. They are Copyright © 1999-2005 Kristoffer Rose.
+ * All rights reserved.
+ *
+ * You can redistribute, use, perform, display and/or modify "Part A"
+ * provided the following two conditions hold:
+ *
+ * 1. The program is distributed WITHOUT ANY WARRANTY from the author of
+ * FleXML; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * 2. The program distribution conditions do not in any way affect the
+ * distribution conditions of the FleXML system used to generate this
+ * file or any version of FleXML derived from that system.
+ *
+ * Notice that these are explicit rights granted to you for files
+ * generated by the FleXML system. For your rights in connection with
+ * the FleXML system itself please consult the GNU General Public License.
+ *
+ * Part B
+ * ------
+ *
+ * The other parts, here collectively called "Part B", and which came
+ * from the DTD used by FleXML to generate this program, can be
+ * distributed (or not, as the case may be) under the terms of whoever
+ * wrote them, provided these terms respect and obey the two conditions
+ * above under the heading "Part A".
+ *
+ * The author of and contributors to FleXML specifically disclaim
+ * any copyright interest in "Part B", unless "Part B" was written
+ * by the author of or contributors to FleXML.
+ *
+ */
+
+#ifndef _FLEXML_surfxml_H
+#define _FLEXML_surfxml_H
+
+/* XML application entry points. */
+extern void STag_platform_description(void);
+extern void ETag_platform_description(void);
+extern void STag_include(void);
+extern void ETag_include(void);
+extern void STag_cpu(void);
+extern void ETag_cpu(void);
+extern void STag_network_link(void);
+extern void ETag_network_link(void);
+extern void STag_route(void);
+extern void ETag_route(void);
+extern void STag_route_element(void);
+extern void ETag_route_element(void);
+extern void STag_process(void);
+extern void ETag_process(void);
+extern void STag_argument(void);
+extern void ETag_argument(void);
+
+/* XML application data. */
+typedef const char* AT_network_link_bandwidth;
+#define AU_network_link_bandwidth NULL
+typedef const char* AT_cpu_name;
+#define AU_cpu_name NULL
+typedef const char* AT_process_kill_time;
+#define AU_process_kill_time NULL
+typedef enum { AU_network_link_state, A_network_link_state_ON,A_network_link_state_OFF } AT_network_link_state;
+typedef const char* AT_argument_value;
+#define AU_argument_value NULL
+typedef const char* AT_cpu_availability_file;
+#define AU_cpu_availability_file NULL
+typedef const char* AT_process_host;
+#define AU_process_host NULL
+typedef const char* AT_route_impact_on_src;
+#define AU_route_impact_on_src NULL
+typedef const char* AT_route_src;
+#define AU_route_src NULL
+typedef const char* AT_network_link_latency_file;
+#define AU_network_link_latency_file NULL
+typedef const char* AT_cpu_max_outgoing_rate;
+#define AU_cpu_max_outgoing_rate NULL
+typedef const char* AT_route_impact_on_dst_with_other_send;
+#define AU_route_impact_on_dst_with_other_send NULL
+typedef const char* AT_cpu_interference_send_recv;
+#define AU_cpu_interference_send_recv NULL
+typedef const char* AT_cpu_availability;
+#define AU_cpu_availability NULL
+typedef const char* AT_route_impact_on_dst;
+#define AU_route_impact_on_dst NULL
+typedef const char* AT_cpu_interference_recv;
+#define AU_cpu_interference_recv NULL
+typedef const char* AT_route_impact_on_src_with_other_recv;
+#define AU_route_impact_on_src_with_other_recv NULL
+typedef const char* AT_network_link_name;
+#define AU_network_link_name NULL
+typedef const char* AT_route_element_name;
+#define AU_route_element_name NULL
+typedef const char* AT_cpu_power;
+#define AU_cpu_power NULL
+typedef const char* AT_process_start_time;
+#define AU_process_start_time NULL
+typedef const char* AT_include_file;
+#define AU_include_file NULL
+typedef const char* AT_process_function;
+#define AU_process_function NULL
+typedef enum { AU_network_link_sharing_policy, A_network_link_sharing_policy_SHARED,A_network_link_sharing_policy_FATPIPE } AT_network_link_sharing_policy;
+typedef const char* AT_route_dst;
+#define AU_route_dst NULL
+typedef enum { AU_cpu_state, A_cpu_state_ON,A_cpu_state_OFF } AT_cpu_state;
+typedef const char* AT_network_link_latency;
+#define AU_network_link_latency NULL
+typedef const char* AT_network_link_state_file;
+#define AU_network_link_state_file NULL
+typedef const char* AT_cpu_interference_send;
+#define AU_cpu_interference_send NULL
+typedef const char* AT_cpu_state_file;
+#define AU_cpu_state_file NULL
+typedef const char* AT_network_link_bandwidth_file;
+#define AU_network_link_bandwidth_file NULL
+
+/* FleXML-provided data. */
+extern const char* pcdata;
+extern AT_network_link_bandwidth A_network_link_bandwidth;
+extern AT_cpu_name A_cpu_name;
+extern AT_process_kill_time A_process_kill_time;
+extern AT_network_link_state A_network_link_state;
+extern AT_argument_value A_argument_value;
+extern AT_cpu_availability_file A_cpu_availability_file;
+extern AT_process_host A_process_host;
+extern AT_route_impact_on_src A_route_impact_on_src;
+extern AT_route_src A_route_src;
+extern AT_network_link_latency_file A_network_link_latency_file;
+extern AT_cpu_max_outgoing_rate A_cpu_max_outgoing_rate;
+extern AT_route_impact_on_dst_with_other_send A_route_impact_on_dst_with_other_send;
+extern AT_cpu_interference_send_recv A_cpu_interference_send_recv;
+extern AT_cpu_availability A_cpu_availability;
+extern AT_route_impact_on_dst A_route_impact_on_dst;
+extern AT_cpu_interference_recv A_cpu_interference_recv;
+extern AT_route_impact_on_src_with_other_recv A_route_impact_on_src_with_other_recv;
+extern AT_network_link_name A_network_link_name;
+extern AT_route_element_name A_route_element_name;
+extern AT_cpu_power A_cpu_power;
+extern AT_process_start_time A_process_start_time;
+extern AT_include_file A_include_file;
+extern AT_process_function A_process_function;
+extern AT_network_link_sharing_policy A_network_link_sharing_policy;
+extern AT_route_dst A_route_dst;
+extern AT_cpu_state A_cpu_state;
+extern AT_network_link_latency A_network_link_latency;
+extern AT_network_link_state_file A_network_link_state_file;
+extern AT_cpu_interference_send A_cpu_interference_send;
+extern AT_cpu_state_file A_cpu_state_file;
+extern AT_network_link_bandwidth_file A_network_link_bandwidth_file;
+
+/* XML application utilities. */
+extern int element_context(int);
+
+/* XML processor entry point. */
+extern int yylex(void);
+
+/* Flexml error handling function (useful only when -q flag passed to flexml) */
+const char * parse_err_msg(void);
+#endif