strcat(name_list, ", ");
strcat(name_list, table[i].name);
}
- xbt_assert2(0, "Model '%s' is invalid! Valid models are: %s.", name,
- name_list);
+ xbt_die("Model '%s' is invalid! Valid models are: %s.", name, name_list);
return -1;
}
void surf_init(int *argc, char **argv)
{
+ XBT_DEBUG("Create all Libs");
+ host_lib = xbt_lib_new();
+ link_lib = xbt_lib_new();
+ as_router_lib = xbt_lib_new();
+
+ XBT_DEBUG("ADD ROUTING LEVEL");
+ ROUTING_HOST_LEVEL = xbt_lib_add_level(host_lib,free);
+ ROUTING_ASR_LEVEL = xbt_lib_add_level(as_router_lib,free);
+
+ XBT_DEBUG("ADD SURF LEVELS");
+ SURF_CPU_LEVEL = xbt_lib_add_level(host_lib,free);
+ SURF_WKS_LEVEL = xbt_lib_add_level(host_lib,free);
+ SURF_LINK_LEVEL = xbt_lib_add_level(link_lib,free);
+
+ XBT_DEBUG("ADD COORD LEVEL");
+ COORD_HOST_LEVEL = xbt_lib_add_level(host_lib,free);
+ COORD_ASR_LEVEL = xbt_lib_add_level(as_router_lib,free);
+
/* Connect our log channels: that must be done manually under windows */
XBT_LOG_CONNECT(surf_cpu, surf);
XBT_LOG_CONNECT(surf_kernel, surf);
surf_parse_lex_destroy();
surf_parse_free_callbacks();
NOW = 0; /* Just in case the user plans to restart the simulation afterward */
+ // Exit the LIB host_lib
+ xbt_lib_free(&host_lib);
+ xbt_lib_free(&link_lib);
+ xbt_lib_free(&as_router_lib);
}
void surf_presolve(void)