Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
cosmetics
[simgrid.git] / src / surf / surf_interface.cpp
index 249ee23..7d685bf 100644 (file)
@@ -12,6 +12,8 @@
 #include "src/surf/HostImpl.hpp"
 
 #include <fstream>
+#include <set>
+#include <string>
 #include <vector>
 
 XBT_LOG_NEW_CATEGORY(surf, "All SURF categories");
@@ -26,7 +28,8 @@ std::vector<surf_model_t> * all_existing_models = nullptr; /* to destroy models
 simgrid::trace_mgr::future_evt_set *future_evt_set = nullptr;
 std::vector<std::string> surf_path;
 std::vector<simgrid::s4u::Host*> host_that_restart;
-xbt_dict_t watched_hosts_lib;
+/**  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;
 
 namespace simgrid {
@@ -239,20 +242,18 @@ void model_help(const char *category, s_surf_model_description_t * table)
     printf("  %s: %s\n", table[i].name, table[i].description);
 }
 
-int find_model_description(s_surf_model_description_t * table,
-                           const char *name)
+int find_model_description(s_surf_model_description_t* table, const char* name)
 {
-  int i;
-  char *name_list = nullptr;
-
-  for (i = 0; table[i].name; i++)
+  for (int i = 0; table[i].name; i++)
     if (not strcmp(name, table[i].name)) {
       return i;
     }
+
   if (not table[0].name)
     xbt_die("No model is valid! This is a bug.");
-  name_list = xbt_strdup(table[0].name);
-  for (i = 1; table[i].name; i++) {
+
+  char* name_list = xbt_strdup(table[0].name);
+  for (int i = 1; table[i].name; i++) {
     name_list = (char *) xbt_realloc(name_list, strlen(name_list) + strlen(table[i].name) + 3);
     strncat(name_list, ", ", 2);
     strncat(name_list, table[i].name, strlen(table[i].name));
@@ -345,8 +346,6 @@ void surf_init(int *argc, char **argv)
   XBT_DEBUG("Create all Libs");
   USER_HOST_LEVEL = simgrid::s4u::Host::extension_create(nullptr);
 
-  watched_hosts_lib = xbt_dict_new_homogeneous(nullptr);
-
   xbt_init(argc, argv);
   if (not all_existing_models)
     all_existing_models = new std::vector<simgrid::surf::Model*>();
@@ -368,7 +367,6 @@ void surf_exit()
 
   sg_host_exit();
   sg_link_exit();
-  xbt_dict_free(&watched_hosts_lib);
   for (auto e : storage_types) {
     storage_type_t stype = e.second;
     free(stype->model);
@@ -445,9 +443,9 @@ double Model::nextOccuringEvent(double now)
 
 double Model::nextOccuringEventLazy(double now)
 {
-  XBT_DEBUG("Before share resources, the size of modified actions set is %zd", modifiedSet_->size());
+  XBT_DEBUG("Before share resources, the size of modified actions set is %zu", modifiedSet_->size());
   lmm_solve(maxminSystem_);
-  XBT_DEBUG("After share resources, The size of modified actions set is %zd", modifiedSet_->size());
+  XBT_DEBUG("After share resources, The size of modified actions set is %zu", modifiedSet_->size());
 
   while (not modifiedSet_->empty()) {
     Action *action = &(modifiedSet_->front());
@@ -650,7 +648,7 @@ Action::~Action() {
 }
 
 void Action::finish() {
-    finishTime_ = surf_get_clock();
+  finishTime_ = surf_get_clock();
 }
 
 Action::State Action::getState()
@@ -866,13 +864,10 @@ void Action::updateRemainingLazy(double now)
 {
   double delta = 0.0;
 
-  if(getModel() == surf_network_model)
-  {
+  if (getModel() == surf_network_model) {
     if (suspended_ != 0)
       return;
-  }
-  else
-  {
+  } else {
     xbt_assert(stateSet_ == getModel()->getRunningActionSet(), "You're updating an action that is not running.");
     xbt_assert(sharingWeight_ > 0, "You're updating an action that seems suspended.");
   }
@@ -891,8 +886,7 @@ void Action::updateRemainingLazy(double now)
     XBT_DEBUG("Updating action(%p): remains is now %f", this, remains_);
   }
 
-  if(getModel() == surf_network_model)
-  {
+  if (getModel() == surf_network_model) {
     if (maxDuration_ != NO_MAX_DURATION)
       double_update(&maxDuration_, delta, sg_surf_precision);