X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2d2995483b57463581ffdc4365fe1999ddc306c2..49a75a876cd9b9284722a63f1b3a02d1283630e1:/src/mc/mc_state.cpp diff --git a/src/mc/mc_state.cpp b/src/mc/mc_state.cpp index 369ea0130b..7095aa97b5 100644 --- a/src/mc/mc_state.cpp +++ b/src/mc/mc_state.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2008-2018. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2008-2019. 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. */ @@ -63,7 +63,7 @@ Transition State::getTransition() const static inline smx_simcall_t MC_state_get_request_for_process(simgrid::mc::State* state, smx_actor_t actor) { /* reset the outgoing transition */ - simgrid::mc::ProcessState* procstate = &state->actorStates[actor->pid_]; + simgrid::mc::ProcessState* procstate = &state->actorStates[actor->get_pid()]; state->transition.pid = -1; state->transition.argument = -1; state->executed_req.call = SIMCALL_NONE; @@ -115,9 +115,10 @@ static inline smx_simcall_t MC_state_get_request_for_process(simgrid::mc::State* simgrid::mc::Remote temp_act; mc_model_checker->process().read(temp_act, remote_act); simgrid::kernel::activity::CommImpl* act = temp_act.getBuffer(); - if (act->src_proc && act->dst_proc) + if (act->src_actor_.get() && act->dst_actor_.get()) state->transition.argument = 0; - else if (act->src_proc == nullptr && act->type == SIMIX_COMM_READY && act->detached == 1) + else if (act->src_actor_.get() == nullptr && act->type == simgrid::kernel::activity::CommImpl::Type::READY && + act->detached == 1) state->transition.argument = 0; else state->transition.argument = -1; @@ -145,7 +146,7 @@ static inline smx_simcall_t MC_state_get_request_for_process(simgrid::mc::State* if (not req) return nullptr; - state->transition.pid = actor->pid_; + state->transition.pid = actor->get_pid(); state->executed_req = *req; // Fetch the data of the request and translate it: state->internal_req = *req; @@ -205,7 +206,7 @@ smx_simcall_t MC_state_get_request(simgrid::mc::State* state) { for (auto& actor : mc_model_checker->process().actors()) { /* Only consider the actors that were marked as interleaving by the checker algorithm */ - if (not state->actorStates[actor.copy.getBuffer()->pid_].isTodo()) + if (not state->actorStates[actor.copy.getBuffer()->get_pid()].isTodo()) continue; smx_simcall_t res = MC_state_get_request_for_process(state, actor.copy.getBuffer());