X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9ba3bfdef0f13d77474c16059ca813b75ade43ab..a23283368258c196be2e66730a7d691f313ef315:/include/simgrid/Host.hpp diff --git a/include/simgrid/Host.hpp b/include/simgrid/Host.hpp index c887ee7431..42fa5ec1da 100644 --- a/include/simgrid/Host.hpp +++ b/include/simgrid/Host.hpp @@ -13,18 +13,47 @@ #include #include +#include +#include #include #include +#include + namespace simgrid { -XBT_PUBLIC_CLASS Host : public simgrid::xbt::Extendable { +XBT_PUBLIC_CLASS Host : +public simgrid::xbt::Extendable { + +public: + double getSpeed(); + int getCoreAmount(); + + /* FIXME: these should be protected, but it leads to many errors */ + surf::Cpu *p_cpu = nullptr; + surf::NetCard *p_netcard = nullptr; private: - simgrid::xbt::string id_; + simgrid::xbt::string name_ = "noname"; public: - Host(std::string const& id); + Host(std::string const& name); ~Host(); - simgrid::xbt::string const& id() const { return id_; } + simgrid::xbt::string const& getName() const { return name_; } + void turnOn(); + void turnOff(); + bool isOn(); + bool isOff(); + xbt_dict_t getProperties(); + xbt_swag_t getProcessList(); + double getCurrentPowerPeak(); + double getPowerPeakAt(int pstate_index); + void setPstate(int pstate_index); + double getWattMinAt(int pstate); + double getWattMaxAt(int pstate); + void getParams(vm_params_t params); + void setParams(vm_params_t params); + xbt_dict_t getMountedStorageList(); + xbt_dynar_t getAttachedStorageList(); + static Host* by_name_or_null(const char* name); static Host* by_name_or_create(const char* name); };