1 /* This program is free software; you can redistribute it and/or modify it
2 * under the terms of the license (GNU LGPL) which comes with this package. */
11 #include "simdag/simdag.h"
14 #include "xbt/dynar.h"
16 #include "xbt/sysdep.h"
17 #include "xbt/function_types.h"
19 #include "surf/surfxml_parse.h"
20 #include "surf/surf_private.h"
21 #include "surf/surf.h"
22 #include "portable.h" /* Needed for the time of the SIMIX convertion */
25 extern xbt_dict_t process_function_set;
26 extern xbt_dynar_t process_list;
27 extern xbt_dict_t machine_set;
29 typedef struct s_process_t {
35 void s_process_free(void *process);
38 void generate_sim(const char *project);
39 void generate_rl(const char *project);
40 void generate_makefile_am(const char *project);
41 void generate_makefile_local(const char *project);
43 /* ********************************************************************************* */
44 /* Console functions */
45 /* ********************************************************************************* */
47 typedef struct t_AS_attr {
50 xbt_dynar_t host_list_d;
51 xbt_dynar_t link_list_d;
52 xbt_dynar_t route_list_d;
53 xbt_dynar_t router_list_d;
54 xbt_dynar_t sub_as_list_id;
55 } AS_attr, *p_AS_attr;
57 typedef struct t_host_attr {
59 // Mandatory attributes
62 // Optional attributes
64 const char *power_trace;
66 const char *state_trace;
68 //deployment attribute
70 xbt_dynar_t args_list;
71 xbt_dict_t properties;
72 } host_attr, *p_host_attr;
75 typedef struct t_link_attr {
76 //mandatory attributes
80 // Optional attributes
81 const char *bandwidth_trace;
82 const char *latency_trace;
83 const char *state_trace;
86 } link_attr, *p_link_attr;
89 typedef struct t_route_attr {
94 } route_attr, *p_route_attr;
96 typedef struct t_router_attr {
98 } router_attr, *p_router_attr;
102 int console_add_host(lua_State*);
103 int console_add_link(lua_State*);
104 int console_add_router(lua_State* L);
105 int console_add_route(lua_State*);
106 int console_add_AS(lua_State*);
107 int console_set_function(lua_State*);
108 int console_host_set_property(lua_State*);
110 int console_parse_platform(void);
111 int console_parse_application(void);
112 int console_parse_platform_wsL07(void);
114 #endif /* SIMGRID_LUA_H */