X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1847d1441271d076b3de449c8853031ea208ce8f..0cd4d8c91c2648bdcb5d1f095132c0930e9427b7:/include/simgrid/s4u/Host.hpp diff --git a/include/simgrid/s4u/Host.hpp b/include/simgrid/s4u/Host.hpp index b27c954e0c..9f9ef0cf17 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" @@ -66,7 +65,9 @@ public: /** 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 +103,15 @@ 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 + * + * It is not a problem if the actor is not located on the called host. + * The actor will not be migrated in this case. Such remote execution are easy in simulation. + */ + void execute(double flops); private: simgrid::xbt::string name_ = "noname";