X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/217557096673710f29ebe590ffcf76329ddd87de..6050383ef0dc59e1ca54d02bcf6bccb993593add:/src/simix/smx_synchro.cpp diff --git a/src/simix/smx_synchro.cpp b/src/simix/smx_synchro.cpp index 090c872fa9..de245a8ec7 100644 --- a/src/simix/smx_synchro.cpp +++ b/src/simix/smx_synchro.cpp @@ -4,6 +4,7 @@ /* 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/surf/surf_interface.hpp" #include "smx_private.h" #include "xbt/log.h" @@ -30,7 +31,7 @@ static smx_synchro_t SIMIX_synchro_wait(sg_host_t smx_host, double timeout) sync->name = xbt_strdup("synchro"); sync->synchro.sleep = surf_host_sleep(smx_host, timeout); - surf_action_set_data(sync->synchro.sleep, sync); + sync->synchro.sleep->setData(sync); XBT_OUT(); return sync; } @@ -71,7 +72,7 @@ void SIMIX_synchro_destroy(smx_synchro_t synchro) XBT_IN("(%p)",synchro); XBT_DEBUG("Destroying synchro %p", synchro); xbt_assert(synchro->type == SIMIX_SYNC_SYNCHRO); - surf_action_unref(synchro->synchro.sleep); + synchro->synchro.sleep->unref(); xbt_free(synchro->name); xbt_mallocator_release(simix_global->synchro_mallocator, synchro); XBT_OUT(); @@ -81,9 +82,9 @@ void SIMIX_post_synchro(smx_synchro_t synchro) { XBT_IN("(%p)",synchro); xbt_assert(synchro->type == SIMIX_SYNC_SYNCHRO); - if (surf_action_get_state(synchro->synchro.sleep) == SURF_ACTION_FAILED) + if (synchro->synchro.sleep->getState() == simgrid::surf::Action::State::failed) synchro->state = SIMIX_FAILED; - else if(surf_action_get_state(synchro->synchro.sleep) == SURF_ACTION_DONE) + else if(synchro->synchro.sleep->getState() == simgrid::surf::Action::State::done) synchro->state = SIMIX_SRC_TIMEOUT; SIMIX_synchro_finish(synchro); @@ -211,8 +212,8 @@ void SIMIX_mutex_unlock(smx_mutex_t mutex, smx_process_t issuer) /* If the mutex is not owned by the issuer, that's not good */ if (issuer != mutex->owner) - THROWF(mismatch_error, 0, "Cannot release that mutex: it was locked by %s (pid:%d), not by you.", - SIMIX_process_get_name(mutex->owner),SIMIX_process_get_PID(mutex->owner)); + THROWF(mismatch_error, 0, "Cannot release that mutex: it was locked by %s (pid:%d), not by you.", + SIMIX_process_get_name(mutex->owner),SIMIX_process_get_PID(mutex->owner)); if (xbt_swag_size(mutex->sleeping) > 0) { /*process to wake up */ @@ -283,7 +284,7 @@ void simcall_HANDLER_cond_wait(smx_simcall_t simcall, smx_cond_t cond, smx_mutex * \param simcall the simcall */ void simcall_HANDLER_cond_wait_timeout(smx_simcall_t simcall, smx_cond_t cond, - smx_mutex_t mutex, double timeout) + smx_mutex_t mutex, double timeout) { XBT_IN("(%p)",simcall); smx_process_t issuer = simcall->issuer;