Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
working version.
[simgrid.git] / src / s4u / s4u_Storage.cpp
index e8aa233..2b6b7f5 100644 (file)
@@ -60,18 +60,25 @@ IoPtr Storage::io_init(sg_size_t size)
 {
   IoPtr res  = IoPtr(new Io());
   res->size_ = size;
+  res->storage_ = this;
   res->set_remaining(size);
   return res;
 }
 
 sg_size_t Storage::read(sg_size_t size)
 {
-  return simcall_storage_read(pimpl_, size);
+  IoPtr i = io_init(size);
+  i->set_io_type(Io::OpType::READ);
+  i->start()->wait();
+  return i->get_performed_ioops();
 }
 
 sg_size_t Storage::write(sg_size_t size)
 {
-  return simcall_storage_write(pimpl_, size);
+  IoPtr i = io_init(size);
+  i->set_io_type(Io::OpType::WRITE);
+  i->start()->wait();
+  return i->get_performed_ioops();
 }
 
 // Deprecated functions