Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Various docs update
[simgrid.git] / src / plugins / link_energy.cpp
index b2b5e10..9653438 100644 (file)
@@ -3,6 +3,7 @@
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
+#include "simgrid/Exception.hpp"
 #include "simgrid/plugins/energy.h"
 #include "simgrid/s4u/Engine.hpp"
 #include "src/surf/network_interface.hpp"
@@ -33,8 +34,7 @@ SIMGRID_REGISTER_PLUGIN(link_energy, "Link energy consumption.", &sg_link_energy
  The second property means that when your host is turned off, it will dissipate only 10 Watts (please note that these
  values are arbitrary).
 
- To simulate the energy-related elements, first call the simgrid#energy#sg_link_energy_plugin_init() before your
- #MSG_init(),
+ To simulate the energy-related elements, first call the sg_link_energy_plugin_init() before loading the platform
  and then use the following function to retrieve the consumption of a given link: sg_link_get_consumed_energy().
  */
 
@@ -57,7 +57,7 @@ public:
 private:
   double get_power();
 
-  simgrid::s4u::Link* link_{};
+  s4u::Link* link_{};
 
   bool inited_{false};
   double idle_{0.0};
@@ -67,7 +67,7 @@ private:
   double last_updated_{0.0}; /*< Timestamp of the last energy update event*/
 };
 
-simgrid::xbt::Extension<simgrid::s4u::Link, LinkEnergy> LinkEnergy::EXTENSION_ID;
+xbt::Extension<s4u::Link, LinkEnergy> LinkEnergy::EXTENSION_ID;
 
 void LinkEnergy::update()
 {
@@ -125,7 +125,6 @@ void LinkEnergy::init_watts_range_list()
 
 double LinkEnergy::get_power()
 {
-
   if (!inited_)
     return 0.0;
 
@@ -140,7 +139,7 @@ double LinkEnergy::get_power()
 double LinkEnergy::get_consumed_energy()
 {
   if (last_updated_ < surf_get_clock()) // We need to simcall this as it modifies the environment
-    simgrid::kernel::actor::simcall(std::bind(&LinkEnergy::update, this));
+    kernel::actor::simcall(std::bind(&LinkEnergy::update, this));
   return this->total_energy_;
 }
 } // namespace plugin
@@ -154,7 +153,6 @@ static void on_communicate(simgrid::kernel::resource::NetworkAction const& actio
 {
   XBT_DEBUG("onCommunicate is called");
   for (simgrid::kernel::resource::LinkImpl* link : action.links()) {
-
     if (link == nullptr)
       continue;
 
@@ -186,7 +184,7 @@ int sg_link_energy_is_inited()
 /** @ingroup plugin_link_energy
  * @brief Enable energy plugin
  * @details Enable energy plugin to get joules consumption of each cpu. You should call this function before
- * #MSG_init().
+ * loading your platform.
  */
 void sg_link_energy_plugin_init()
 {
@@ -229,7 +227,7 @@ void sg_link_energy_plugin_init()
 double sg_link_get_consumed_energy(sg_link_t link)
 {
   if (not LinkEnergy::EXTENSION_ID.valid())
-    throw std::logic_error("The Energy plugin is not active. Please call sg_link_energy_plugin_init() before calling "
-                           "sg_link_get_consumed_energy().");
+    throw simgrid::xbt::InitializationError("The Energy plugin is not active. Please call sg_link_energy_plugin_init() "
+                                            "before calling sg_link_get_consumed_energy().");
   return link->extension<LinkEnergy>()->get_consumed_energy();
 }