Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add "explicit" keyword.
[simgrid.git] / include / simgrid / s4u / VirtualMachine.hpp
index f902d64..7fb4816 100644 (file)
@@ -45,8 +45,17 @@ class XBT_PUBLIC VirtualMachine : public s4u::Host {
   static xbt::signal<void(VirtualMachine const&)> on_migration_end;
   static xbt::signal<void(VirtualMachine const&)> on_destruction;
 
+#ifndef DOXYGEN
+  friend kernel::resource::VirtualMachineImpl; // calls signals from Impl
+  friend kernel::resource::HostImpl;           // call private constructor
+  explicit VirtualMachine(kernel::resource::VirtualMachineImpl* impl);
+#endif
+
 public:
-  explicit VirtualMachine(const std::string& name, Host* physical_host, int core_amount, size_t ramsize = 1024);
+  XBT_ATTRIB_DEPRECATED_v336("Please use s4u::Host::create_vm") explicit VirtualMachine(const std::string& name,
+                                                                                        Host* physical_host,
+                                                                                        int core_amount,
+                                                                                        size_t ramsize = 1024);
 
 #ifndef DOXYGEN
   // No copy/move