Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
more refactoring of get_instance calls
authorSUTER Frederic <frederic.suter@cc.in2p3.fr>
Wed, 22 Sep 2021 09:06:22 +0000 (11:06 +0200)
committerSUTER Frederic <frederic.suter@cc.in2p3.fr>
Wed, 22 Sep 2021 09:12:26 +0000 (11:12 +0200)
src/kernel/routing/NetZoneImpl.cpp
src/kernel/routing/VivaldiZone.cpp
src/plugins/vm/VirtualMachineImpl.cpp

index bd320c8..bfcf4ce 100644 (file)
@@ -72,12 +72,13 @@ xbt::signal<void(bool symmetrical, kernel::routing::NetPoint* src, kernel::routi
 
 NetZoneImpl::NetZoneImpl(const std::string& name) : piface_(this), name_(name)
 {
+  auto* engine = s4u::Engine::get_instance();
   /* workaroud: first netzoneImpl will be the root netzone.
    * Without globals and with current surf_*_model_description init functions, we need
    * the root netzone to exist when creating the models.
    * This was usually done at sg_platf.cpp, during XML parsing */
-  if (not s4u::Engine::get_instance()->get_netzone_root()) {
-    s4u::Engine::get_instance()->set_netzone_root(&piface_);
+  if (not engine->get_netzone_root()) {
+    engine->set_netzone_root(&piface_);
     /* root netzone set, initialize models */
     simgrid::s4u::Engine::on_platform_creation();
 
@@ -91,7 +92,7 @@ NetZoneImpl::NetZoneImpl(const std::string& name) : piface_(this), name_(name)
     surf_config_models_setup();
   }
 
-  xbt_assert(nullptr == s4u::Engine::get_instance()->netpoint_by_name_or_null(get_name()),
+  xbt_assert(nullptr == engine->netpoint_by_name_or_null(get_name()),
              "Refusing to create a second NetZone called '%s'.", get_cname());
   netpoint_ = new NetPoint(name_, NetPoint::Type::NetZone);
   XBT_DEBUG("NetZone '%s' created with the id '%lu'", get_cname(), netpoint_->id());
index d15f521..0c3ea7c 100644 (file)
@@ -73,12 +73,12 @@ void VivaldiZone::set_peer_link(NetPoint* netpoint, double bw_in, double bw_out)
 void VivaldiZone::get_local_route(const NetPoint* src, const NetPoint* dst, Route* route, double* lat)
 {
   XBT_DEBUG("vivaldi getLocalRoute from '%s'[%lu] '%s'[%lu]", src->get_cname(), src->id(), dst->get_cname(), dst->id());
-
+  auto* engine = s4u::Engine::get_instance();
   if (src->is_netzone()) {
     std::string srcName = "router_" + src->get_name();
     std::string dstName = "router_" + dst->get_name();
-    route->gw_src_      = s4u::Engine::get_instance()->netpoint_by_name_or_null(srcName);
-    route->gw_dst_      = s4u::Engine::get_instance()->netpoint_by_name_or_null(dstName);
+    route->gw_src_      = engine->netpoint_by_name_or_null(srcName);
+    route->gw_dst_      = engine->netpoint_by_name_or_null(dstName);
   }
 
   StarZone::get_local_route(src, dst, route, lat);
index 876b473..0f389ca 100644 (file)
@@ -20,8 +20,9 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(res_vm, ker_resource, "Virtual Machines, contain
 void surf_vm_model_init_HL13(simgrid::kernel::resource::CpuModel* cpu_pm_model)
 {
   auto vm_model = std::make_shared<simgrid::vm::VMModel>("VM_HL13");
+  auto* engine  = simgrid::kernel::EngineImpl::get_instance();
 
-  simgrid::kernel::EngineImpl::get_instance()->add_model(vm_model, {cpu_pm_model});
+  engine->add_model(vm_model, {cpu_pm_model});
   std::shared_ptr<simgrid::kernel::resource::CpuModel> cpu_model_vm;
 
   auto cpu_optim = simgrid::config::get_value<std::string>("cpu/optim");
@@ -30,8 +31,8 @@ void surf_vm_model_init_HL13(simgrid::kernel::resource::CpuModel* cpu_pm_model)
   } else {
     cpu_model_vm = std::make_shared<simgrid::kernel::resource::CpuCas01Model>("VmCpu_Cas01");
   }
-  simgrid::kernel::EngineImpl::get_instance()->add_model(cpu_model_vm, {cpu_pm_model, vm_model.get()});
-  simgrid::s4u::Engine::get_instance()->get_netzone_root()->get_impl()->set_cpu_vm_model(cpu_model_vm);
+  engine->add_model(cpu_model_vm, {cpu_pm_model, vm_model.get()});
+  engine->get_netzone_root()->set_cpu_vm_model(cpu_model_vm);
 }
 
 namespace simgrid {