std::vector<simgrid::s4u::Host*> host_that_restart;
/** set of hosts for which one want to be notified if they ever restart. */
std::set<std::string> watched_hosts;
-extern std::map<std::string, storage_type_t> storage_types;
+extern std::map<std::string, simgrid::surf::StorageType*> storage_types;
namespace simgrid {
namespace surf {
}
}
-#include <simgrid/plugins/energy.h> // FIXME: this plugin should not be linked to the core
-#include <simgrid/plugins/load.h> // FIXME: this plugin should not be linked to the core
+#include <simgrid/plugins/energy.h> // FIXME: this plug-in should not be linked to the core
+#include <simgrid/plugins/load.h> // FIXME: this plug-in should not be linked to the core
s_surf_model_description_t surf_plugin_description[] = {
{"Energy", "Cpu energy consumption.", &sg_host_energy_plugin_init},
{nullptr, nullptr, nullptr} /* this array must be nullptr terminated */
};
-#if HAVE_THREAD_CONTEXTS
-static xbt_parmap_t surf_parmap = nullptr; /* parallel map on models */
-#endif
-
double NOW = 0;
double surf_get_clock()
# define FILE_DELIM "/" /* FIXME: move to better location */
#endif
-std::ifstream* surf_ifsopen(const char* name)
+std::ifstream* surf_ifsopen(std::string name)
{
std::ifstream* fs = new std::ifstream();
- xbt_assert(name);
- if (__surf_is_absolute_file_path(name)) { /* don't mess with absolute file names */
- fs->open(name, std::ifstream::in);
+ xbt_assert(not name.empty());
+ if (__surf_is_absolute_file_path(name.c_str())) { /* don't mess with absolute file names */
+ fs->open(name.c_str(), std::ifstream::in);
}
/* search relative files in the path */
return fs;
}
+
FILE *surf_fopen(const char *name, const char *mode)
{
FILE *file = nullptr;
if (not future_evt_set)
future_evt_set = new simgrid::trace_mgr::future_evt_set();
- TRACE_surf_alloc();
- simgrid::surf::surfExitCallbacks.connect(TRACE_surf_release);
-
sg_config_init(argc, argv);
if (MC_is_active())
sg_host_exit();
sg_link_exit();
for (auto e : storage_types) {
- storage_type_t stype = e.second;
- free(stype->model);
- free(stype->type_id);
- free(stype->content);
- xbt_dict_free(&(stype->properties));
+ simgrid::surf::StorageType* stype = e.second;
+ delete stype->properties;
delete stype->model_properties;
- free(stype);
+ delete stype;
}
for (auto s : *simgrid::surf::StorageImpl::storagesMap())
delete s.second;
future_evt_set = nullptr;
}
-#if HAVE_THREAD_CONTEXTS
- xbt_parmap_destroy(surf_parmap);
-#endif
-
tmgr_finalize();
sg_platf_exit();
simgrid::s4u::Engine::shutdown();