XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_comm_determinism, mc, "Logging specific to MC communication determinism detection");
-namespace simgrid {
-namespace mc {
+namespace simgrid::mc {
enum class CallType { NONE, SEND, RECV, WAIT, WAITANY };
enum class CommPatternDifference { NONE, TYPE, MBOX, TAG, SRC_PROC, DST_PROC, DATA_SIZE };
/********** State Extension ***********/
class StateCommDet {
- CommDetExtension* checker_;
-
public:
std::vector<std::vector<simgrid::mc::PatternCommunication>> incomplete_comm_pattern_;
std::vector<unsigned> communication_indices_;
static simgrid::xbt::Extension<simgrid::mc::State, StateCommDet> EXTENSION_ID;
- explicit StateCommDet(CommDetExtension* checker) : checker_(checker)
+ explicit StateCommDet(CommDetExtension* checker)
{
const unsigned long maxpid = Api::get().get_maxpid();
for (unsigned long i = 0; i < maxpid; i++) {
std::vector<simgrid::mc::PatternCommunication> res;
- for (auto const& comm : checker_->incomplete_communications_pattern[i])
+ for (auto const& comm : checker->incomplete_communications_pattern[i])
res.push_back(comm->dup());
incomplete_comm_pattern_.push_back(std::move(res));
}
- for (auto const& list_process_comm : checker_->initial_communications_pattern)
+ for (auto const& list_process_comm : checker->initial_communications_pattern)
this->communication_indices_.push_back(list_process_comm.index_comm);
}
};
switch (transition->type_) {
case Transition::Type::COMM_SEND:
- get_comm_pattern(transition);
- break;
case Transition::Type::COMM_RECV:
get_comm_pattern(transition);
break;
return new DFSExplorer(session);
}
-} // namespace mc
-} // namespace simgrid
+} // namespace simgrid::mc