X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9bc2f7734295810a24f98d65169f06705e3ea951..4fa1717d674d45f694ea8637db1a32afcbd6cc8c:/src/kernel/activity/SynchroIo.cpp diff --git a/src/kernel/activity/SynchroIo.cpp b/src/kernel/activity/SynchroIo.cpp index cef2ced0f2..b1534848d2 100644 --- a/src/kernel/activity/SynchroIo.cpp +++ b/src/kernel/activity/SynchroIo.cpp @@ -1,61 +1,46 @@ -/* Copyright (c) 2007-2016. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2007-2018. 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/surf/surf_interface.hpp" -#include "src/simix/smx_private.h" +#include "simgrid/kernel/resource/Action.hpp" +#include "src/simix/smx_io_private.hpp" -void simgrid::kernel::activity::Io::suspend() +void simgrid::kernel::activity::IoImpl::suspend() { if (surf_io) surf_io->suspend(); } -void simgrid::kernel::activity::Io::resume() +void simgrid::kernel::activity::IoImpl::resume() { if (surf_io) surf_io->resume(); } -void simgrid::kernel::activity::Io::post() +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->get_cost()); + break; + case SIMCALL_STORAGE_READ: + simcall_storage_read__set__result(simcall, surf_io->get_cost()); + break; + default: + break; } } - switch (surf_io->getState()) { - - case simgrid::surf::Action::State::failed: - state = SIMIX_FAILED; + switch (surf_io->get_state()) { + case simgrid::kernel::resource::Action::State::FAILED: + state_ = SIMIX_FAILED; break; - - case simgrid::surf::Action::State::done: - state = SIMIX_DONE; + case simgrid::kernel::resource::Action::State::FINISHED: + state_ = SIMIX_DONE; break; - default: THROW_IMPOSSIBLE; break;