11 #ifndef WRENCH_S4U_VIRTUALMACHINE_H
12 #define WRENCH_S4U_VIRTUALMACHINE_H
14 #include <simgrid/s4u/VirtualMachine.hpp>
16 #include <wrench/services/Service.h>
28 class S4U_VirtualMachine {
35 static std::unordered_map<std::string,std::string> vm_to_pm_map;
44 S4U_VirtualMachine(
const std::string &vm_hostname,
45 unsigned long num_cores,
47 WRENCH_PROPERTY_COLLECTION_TYPE property_list,
48 WRENCH_MESSAGE_PAYLOADCOLLECTION_TYPE messagepayload_list);
50 void start(std::string &pm_name);
58 void migrate(
const std::string &dst_pm_name);
60 std::string getPhysicalHostname();
61 unsigned long getNumCores();
63 WRENCH_PROPERTY_COLLECTION_TYPE getPropertyList();
64 WRENCH_MESSAGE_PAYLOADCOLLECTION_TYPE getMessagePayloadList();
67 std::string getStateAsString();
73 simgrid::s4u::VirtualMachine *vm;
74 unsigned long num_cores;
77 WRENCH_PROPERTY_COLLECTION_TYPE property_list;
78 WRENCH_MESSAGE_PAYLOADCOLLECTION_TYPE messagepayload_list;
86 #endif //WRENCH_S4U_VIRTUALMACHINE_H