+// TODO, deduplicate with SafetyChecker
+RecordTrace CommunicationDeterminismChecker::getRecordTrace() // override
+{
+ RecordTrace res;
+ for (auto const& state : stack_)
+ res.push_back(state->getRecordElement());
+ return res;
+}
+
+// TODO, deduplicate with SafetyChecker
+std::vector<std::string> CommunicationDeterminismChecker::getTextualTrace() // override
+{
+ std::vector<std::string> trace;
+ for (auto const& state : stack_) {
+ int value = state->req_num;
+ smx_simcall_t req = &state->executed_req;
+ if (req)
+ trace.push_back(simgrid::mc::request_to_string(
+ req, value, simgrid::mc::RequestType::executed));
+ }
+ return trace;
+}
+