Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of https://github.com/Onesphore/simgrid into Onesphore-master
[simgrid.git] / include / simgrid / s4u / Host.hpp
index 4d9f607..cbb9485 100644 (file)
@@ -92,11 +92,11 @@ public:
   /** Turns that host off. All actors are forcefully stopped. */
   void turn_off();
   /** Returns if that host is currently up and running */
-  bool is_on();
+  bool is_on() const;
   /** Returns if that host is currently down and offline */
-  bool is_off() { return not is_on(); }
+  bool is_off() const { return not is_on(); }
 
-  const char* get_property(const char* key);
+  const char* get_property(const char* key) const;
   void set_property(std::string key, std::string value);
   std::unordered_map<std::string, std::string>* get_properties();
   XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_properties()") std::map<std::string, std::string>* getProperties()
@@ -108,16 +108,23 @@ public:
     return res;
   }
 
-  double getSpeed();
-  double get_available_speed();
-  int get_core_count();
+  double get_speed() const;
+  double get_available_speed() const;
+  int get_core_count() const;
+  double get_load() const;
 
-  double getPstateSpeed(int pstate_index);
+  double get_pstate_speed(int pstate_index) const;
   int get_pstate_count() const;
   void set_pstate(int pstate_index);
-  int get_pstate();
+  int get_pstate() const;
 
-  std::vector<const char*> get_attached_storages();
+  XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_speed() instead.") double getSpeed() { return get_speed(); }
+  XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_pstate_speed() instead.") double getPstateSpeed(int pstate_index)
+  {
+    return get_pstate_speed(pstate_index);
+  }
+
+  std::vector<const char*> get_attached_storages() const;
   XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_attached_storages() instead.") void getAttachedStorages(
       std::vector<const char*>* storages);
 
@@ -125,7 +132,11 @@ public:
    *
    *  This is defined in the platform file, and cannot be modified programatically (yet).
    */
-  std::unordered_map<std::string, Storage*> const& getMountedStorages();
+  std::unordered_map<std::string, Storage*> const& get_mounted_storages();
+  XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_mounted_storages() instead.") std::unordered_map<std::string, Storage*> const& getMountedStorages()
+  {
+    return get_mounted_storages();
+  }
 
   void route_to(Host* dest, std::vector<Link*>& links, double* latency);
   void route_to(Host* dest, std::vector<kernel::resource::LinkImpl*>& links, double* latency);
@@ -139,13 +150,6 @@ public:
   /** Block the calling actor on an execution located on the called host (with explicit priority) */
   void execute(double flops, double priority);
 
-  /** @brief Returns the current computation load (in flops per second)
-   * The external load (coming from an availability trace) is not taken in account.
-   *
-   * @return      The number of activities currently running on a host (an activity at priority 2 is counted twice).
-   */
-  double getLoad();
-
   // Deprecated functions
   XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_name()") simgrid::xbt::string const& getName() const
   {
@@ -187,7 +191,7 @@ public:
   }
 
 private:
-  simgrid::xbt::string name_{"noname"};
+  simgrid::xbt::string name_ {"noname"};
   std::unordered_map<std::string, Storage*>* mounts_ = nullptr; // caching
 
 public: