X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9104957deccc59e0e804215d5db498fabfd40d29..e6dcda80c72f6c1c092cf257c308812fe4442599:/src/mc/mc_comm_pattern.hpp diff --git a/src/mc/mc_comm_pattern.hpp b/src/mc/mc_comm_pattern.hpp index 68a42e545d..ca221ea58d 100644 --- a/src/mc/mc_comm_pattern.hpp +++ b/src/mc/mc_comm_pattern.hpp @@ -14,56 +14,53 @@ namespace simgrid { namespace mc { +enum class CallType { + NONE, + SEND, + RECV, + WAIT, + WAITANY, +}; + +enum class CommPatternDifference { + NONE, + TYPE, + RDV, + TAG, + SRC_PROC, + DST_PROC, + DATA_SIZE, + DATA, +}; + struct PatternCommunicationList { unsigned int index_comm = 0; std::vector> list; }; -} -} +} // namespace mc +} // namespace simgrid extern XBT_PRIVATE std::vector initial_communications_pattern; extern XBT_PRIVATE std::vector> incomplete_communications_pattern; -enum e_mc_call_type_t { - MC_CALL_TYPE_NONE, - MC_CALL_TYPE_SEND, - MC_CALL_TYPE_RECV, - MC_CALL_TYPE_WAIT, - MC_CALL_TYPE_WAITANY, -}; - -enum e_mc_comm_pattern_difference_t { - NONE_DIFF, - TYPE_DIFF, - RDV_DIFF, - TAG_DIFF, - SRC_PROC_DIFF, - DST_PROC_DIFF, - DATA_SIZE_DIFF, - DATA_DIFF, -}; - -static inline e_mc_call_type_t MC_get_call_type(const s_smx_simcall* req) +static inline simgrid::mc::CallType MC_get_call_type(const s_smx_simcall* req) { + using simgrid::mc::CallType; + using simgrid::simix::Simcall; switch (req->call_) { - case SIMCALL_COMM_ISEND: - return MC_CALL_TYPE_SEND; - case SIMCALL_COMM_IRECV: - return MC_CALL_TYPE_RECV; - case SIMCALL_COMM_WAIT: - return MC_CALL_TYPE_WAIT; - case SIMCALL_COMM_WAITANY: - return MC_CALL_TYPE_WAITANY; + case Simcall::COMM_ISEND: + return CallType::SEND; + case Simcall::COMM_IRECV: + return CallType::RECV; + case Simcall::COMM_WAIT: + return CallType::WAIT; + case Simcall::COMM_WAITANY: + return CallType::WAITANY; default: - return MC_CALL_TYPE_NONE; + return CallType::NONE; } } -XBT_PRIVATE void MC_handle_comm_pattern(e_mc_call_type_t call_type, smx_simcall_t request, int value, int backtracking); - XBT_PRIVATE void MC_restore_communications_pattern(simgrid::mc::State* state); -XBT_PRIVATE void MC_state_copy_incomplete_communications_pattern(simgrid::mc::State* state); -XBT_PRIVATE void MC_state_copy_index_communications_pattern(simgrid::mc::State* state); - #endif