Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
overall optimization of map usage
[simgrid.git] / src / surf / network_interface.cpp
index 8b4f978..fdb99fc 100644 (file)
@@ -22,33 +22,35 @@ namespace simgrid {
 
   LinkImpl* LinkImpl::byName(const char* name)
   {
-    if (links->find(name) == links->end())
+    try {
+      return links->at(name);
+    } catch (std::out_of_range& unfound) {
       return nullptr;
-    return links->at(name);
+    }
   }
   /** @brief Returns the amount of links in the platform */
   int LinkImpl::linksCount()
   {
     return links->size();
+  }
+  /** @brief Returns a list of all existing links */
+  LinkImpl** LinkImpl::linksList()
+  {
+    LinkImpl** res = xbt_new(LinkImpl*, (int)links->size());
+    int i          = 0;
+    for (auto kv : *links) {
+      res[i] = kv.second;
+      i++;
     }
-    /** @brief Returns a list of all existing links */
-    LinkImpl** LinkImpl::linksList()
-    {
-      LinkImpl** res = xbt_new(LinkImpl*, (int)links->size());
-      int i          = 0;
-      for (auto kv : *links) {
-        res[i] = kv.second;
-        i++;
-      }
-      return res;
-    }
-    /** @brief destructor of the static data */
-    void LinkImpl::linksExit()
-    {
-      for (auto kv : *links)
-        (kv.second)->destroy();
-      delete links;
-    }
+    return res;
+  }
+  /** @brief destructor of the static data */
+  void LinkImpl::linksExit()
+  {
+    for (auto kv : *links)
+      (kv.second)->destroy();
+    delete links;
+  }
   }
 }
 
@@ -104,7 +106,7 @@ namespace simgrid {
     {
 
       if (strcmp(name,"__loopback__"))
-        xbt_assert(!LinkImpl::byName(name), "Link '%s' declared several times in the platform.", name);
+        xbt_assert(not LinkImpl::byName(name), "Link '%s' declared several times in the platform.", name);
 
       latency_.scale   = 1;
       bandwidth_.scale = 1;
@@ -125,7 +127,7 @@ namespace simgrid {
      */
     void LinkImpl::destroy()
     {
-      if (!currentlyDestroying_) {
+      if (not currentlyDestroying_) {
         currentlyDestroying_ = true;
         s4u::Link::onDestruction(this->piface_);
         delete this;
@@ -198,7 +200,7 @@ namespace simgrid {
     {
       std::list<LinkImpl*> retlist;
       lmm_system_t sys = getModel()->getMaxminSystem();
-      int llen         = lmm_get_number_of_cnst_from_var(sys, getVariable());
+      int llen         = lmm_get_number_of_cnst_from_var(sys, variable_);
 
       for (int i = 0; i < llen; i++) {
         /* Beware of composite actions: ptasks put links and cpus together */