};
#endif /* #ifdef _XBT_WIN32 */
+int surf_cfg_get_int(const char* name)
+{
+ return xbt_cfg_get_int(_surf_cfg_set,name);
+}
+double surf_cfg_get_double(const char* name)
+{
+ return xbt_cfg_get_double(_surf_cfg_set,name);
+}
+char* surf_cfg_get_string(const char* name)
+{
+ return xbt_cfg_get_string(_surf_cfg_set,name);
+}
+void surf_cfg_get_peer(const char *name, char **peer, int *port)
+{
+ xbt_cfg_get_peer(_surf_cfg_set,name, peer, port);
+}
+xbt_dynar_t surf_cfg_get_dynar(const char* name)
+{
+ return xbt_cfg_get_dynar(_surf_cfg_set,name);
+}
/*
* Returns the initial path. On Windows the initial path is
* the current directory for the current process in the other
{NULL, NULL, NULL} /* this array must be NULL terminated */
};
+/* ********************************************************************* */
+/* TUTORIAL: New model */
+s_surf_model_description_t surf_new_model_description[] = {
+ {"default",
+ "Tutorial model.",
+ surf_new_model_init_default},
+ {NULL, NULL, NULL} /* this array must be NULL terminated */
+};
+/* ********************************************************************* */
+
#ifdef CONTEXT_THREADS
static xbt_parmap_t surf_parmap = NULL; /* parallel map on models */
#endif
*ver_patch = SIMGRID_VERSION_PATCH;
}
+xbt_dynar_t sg_cmdline = NULL;
+
void surf_init(int *argc, char **argv)
{
XBT_DEBUG("Create all Libs");
SURF_WKS_LEVEL = xbt_lib_add_level(host_lib,surf_resource_free);
SURF_LINK_LEVEL = xbt_lib_add_level(link_lib,surf_resource_free);
+ sg_cmdline = xbt_dynar_new(sizeof(char*),NULL);
+ int i;
+ for (i=0;i<*argc;i++) {
+ xbt_dynar_push(sg_cmdline,&(argv[i]));
+ }
xbt_init(argc, argv);
if (!model_list)
model_list = xbt_dynar_new(sizeof(surf_model_private_t), NULL);
history = tmgr_history_new();
surf_config_init(argc, argv);
+
surf_action_init();
- if (MC_IS_ENABLED)
+ if (MC_is_active())
MC_memory_init();
}
#endif
xbt_dynar_free(&surf_path);
+ xbt_dynar_free(&sg_cmdline);
xbt_lib_free(&host_lib);
xbt_lib_free(&link_lib);