X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d68a0ac239494f0a1c7f21b7c195f453ee7a31eb..b22d0e4d776668a22f7bc6a680cc999c17fd43d4:/src/kernel/activity/SynchroIo.cpp diff --git a/src/kernel/activity/SynchroIo.cpp b/src/kernel/activity/SynchroIo.cpp index 012165b614..9001cf9c57 100644 --- a/src/kernel/activity/SynchroIo.cpp +++ b/src/kernel/activity/SynchroIo.cpp @@ -1,11 +1,11 @@ -/* Copyright (c) 2007-2016. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2007-2017. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ #include "src/kernel/activity/SynchroIo.hpp" +#include "src/simix/smx_private.hpp" #include "src/surf/surf_interface.hpp" -#include "src/simix/smx_private.h" void simgrid::kernel::activity::IoImpl::suspend() { @@ -21,41 +21,26 @@ void simgrid::kernel::activity::IoImpl::resume() void simgrid::kernel::activity::IoImpl::post() { - for (smx_simcall_t simcall : simcalls) { + for (smx_simcall_t const& simcall : simcalls) { switch (simcall->call) { - case SIMCALL_FILE_OPEN: { - smx_file_t tmp = xbt_new(s_smx_file_t,1); - tmp->surf_file = surf_storage_action_get_file(surf_io); - simcall_file_open__set__result(simcall, tmp); - break; - } - case SIMCALL_FILE_CLOSE: - xbt_free(simcall_file_close__get__fd(simcall)); - simcall_file_close__set__result(simcall, 0); - break; - case SIMCALL_FILE_WRITE: - simcall_file_write__set__result(simcall, surf_io->getCost()); - break; - - case SIMCALL_FILE_READ: - simcall_file_read__set__result(simcall, surf_io->getCost()); - break; - - default: - break; + case SIMCALL_STORAGE_WRITE: + simcall_storage_write__set__result(simcall, surf_io->getCost()); + break; + case SIMCALL_STORAGE_READ: + simcall_storage_read__set__result(simcall, surf_io->getCost()); + break; + default: + break; } } switch (surf_io->getState()) { - case simgrid::surf::Action::State::failed: state = SIMIX_FAILED; break; - case simgrid::surf::Action::State::done: state = SIMIX_DONE; break; - default: THROW_IMPOSSIBLE; break;