Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Remove redundant cast (Sonar).
[simgrid.git] / src / smpi / include / smpi_host.hpp
index e398448..938ee86 100644 (file)
@@ -9,17 +9,20 @@
 #include "smpi_utils.hpp"
 
 #include "simgrid/s4u/Host.hpp"
+#include "src/kernel/resource/FactorSet.hpp"
 #include <string>
 #include <vector>
 #include <xbt/Extendable.hpp>
 
-namespace simgrid {
-namespace smpi {
-
+namespace simgrid::smpi {
+static auto factor_lambda(std::vector<double> const& values, double size)
+{
+  return values[0] + values[1] * size;
+}
 class Host {
-  std::vector<s_smpi_factor_t> orecv_parsed_values;
-  std::vector<s_smpi_factor_t> osend_parsed_values;
-  std::vector<s_smpi_factor_t> oisend_parsed_values;
+  kernel::resource::FactorSet orecv_{"smpi/or", 0.0, factor_lambda};
+  kernel::resource::FactorSet osend_{"smpi/os", 0.0, factor_lambda};
+  kernel::resource::FactorSet oisend_{"smpi/ois", 0.0, factor_lambda};
   s4u::Host* host = nullptr;
   /**
    * @brief Generates warning message if user's config is conflicting (callback vs command line/xml)
@@ -37,6 +40,5 @@ public:
   double oisend(size_t size, s4u::Host* src, s4u::Host* dst);
 };
 
-}
-}
+} // namespace simgrid::smpi
 #endif