Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
implement sg_platf_new_disk
[simgrid.git] / src / surf / sg_platf.cpp
index 4201ba0..2e211f7 100644 (file)
@@ -19,6 +19,7 @@
 #include "src/include/simgrid/sg_config.hpp"
 #include "src/include/surf/surf.hpp"
 #include "src/kernel/EngineImpl.hpp"
+#include "src/kernel/resource/DiskImpl.hpp"
 #include "src/kernel/resource/profile/Profile.hpp"
 #include "src/simix/smx_private.hpp"
 #include "src/surf/HostImpl.hpp"
@@ -331,6 +332,16 @@ void sg_platf_new_cabinet(simgrid::kernel::routing::CabinetCreationArgs* cabinet
   delete cabinet->radicals;
 }
 
+void sg_platf_new_disk(simgrid::kernel::routing::DiskCreationArgs* disk)
+{
+  auto s = surf_disk_model->createDisk(disk->id, disk->read_bw, disk->write_bw);
+
+  if (disk->properties) {
+    s->set_properties(*disk->properties);
+    delete disk->properties;
+  }
+}
+
 void sg_platf_new_storage(simgrid::kernel::routing::StorageCreationArgs* storage)
 {
   xbt_assert(std::find(known_storages.begin(), known_storages.end(), storage->id) == known_storages.end(),