Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
[simgrid.git] / include / simgrid / s4u / VirtualMachine.hpp
index 89063d5..0419fc0 100644 (file)
@@ -7,7 +7,6 @@
 #define SIMGRID_S4U_VM_HPP
 
 #include <simgrid/s4u/Host.hpp>
-#include <simgrid/s4u/forward.hpp>
 
 enum e_surf_vm_state_t {
   SURF_VM_STATE_CREATED, /**< created, but not yet started */
@@ -17,10 +16,6 @@ enum e_surf_vm_state_t {
 };
 
 namespace simgrid {
-namespace vm {
-class VirtualMachineImpl;
-};
-
 namespace s4u {
 
 /** @ingroup s4u_api
@@ -36,8 +31,8 @@ class XBT_PUBLIC VirtualMachine : public s4u::Host {
   virtual ~VirtualMachine();
 
 public:
-  explicit VirtualMachine(const char* name, s4u::Host* hostPm, int coreAmount);
-  explicit VirtualMachine(const char* name, s4u::Host* hostPm, int coreAmount, size_t ramsize);
+  explicit VirtualMachine(const char* name, s4u::Host* physical_host, int core_amount);
+  explicit VirtualMachine(const char* name, s4u::Host* physical_host, int core_amount, size_t ramsize);
 
   // No copy/move
   VirtualMachine(VirtualMachine const&) = delete;
@@ -57,7 +52,11 @@ public:
   void setBound(double bound);
 
   e_surf_vm_state_t getState();
-  static simgrid::xbt::signal<void(simgrid::s4u::VirtualMachine*)> onVmShutdown;
+  static simgrid::xbt::signal<void(VirtualMachine&)> on_start;
+  static simgrid::xbt::signal<void(VirtualMachine&)> on_started;
+  static simgrid::xbt::signal<void(VirtualMachine&)> on_shutdown;
+  static simgrid::xbt::signal<void(VirtualMachine&)> on_suspend;
+  static simgrid::xbt::signal<void(VirtualMachine&)> on_resume;
 };
 }
 } // namespace simgrid::s4u