X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a001b13d7aa269a90f035f58c71778c6812b07f6..509ed39fb4a45e2d53f855613a3639000b278f62:/include/simgrid/s4u/Host.hpp diff --git a/include/simgrid/s4u/Host.hpp b/include/simgrid/s4u/Host.hpp index 09c55ec295..a959c5cb89 100644 --- a/include/simgrid/s4u/Host.hpp +++ b/include/simgrid/s4u/Host.hpp @@ -13,7 +13,6 @@ #include "xbt/Extendable.hpp" #include "xbt/signal.hpp" #include "xbt/string.hpp" -#include "xbt/swag.h" #include "simgrid/forward.h" #include "simgrid/s4u/forward.hpp" @@ -62,11 +61,15 @@ public: /** Retrieves an host from its name, or return nullptr */ static Host* by_name_or_null(std::string name); /** Retrieves an host from its name, or die */ + static s4u::Host* by_name(const char* name); + /** Retrieves an host from its name, or die */ static s4u::Host* by_name(std::string name); /** Retrieves the host on which the current actor is running */ static s4u::Host* current(); + /** Retrieves the name of that host as a C++ string */ simgrid::xbt::string const& getName() const { return name_; } + /** Retrieves the name of that host as a C string */ const char* getCname() const { return name_.c_str(); } void actorList(std::vector * whereto); @@ -102,8 +105,8 @@ public: */ std::unordered_map const& getMountedStorages(); - void routeTo(Host * dest, std::vector * links, double* latency); - void routeTo(Host * dest, std::vector * links, double* latency); + void routeTo(Host* dest, std::vector& links, double* latency); + void routeTo(Host* dest, std::vector& links, double* latency); /** Block the calling actor on an execution located on the called host * @@ -112,8 +115,11 @@ public: */ void execute(double flops); + /** @brief Returns the current computation load (in flops per second) */ + double getLoad(); + private: - simgrid::xbt::string name_ = "noname"; + simgrid::xbt::string name_{"noname"}; std::unordered_map* mounts = nullptr; // caching public: