#ifndef SIMGRID_MC_SAFETY_CHECKER_HPP
#define SIMGRID_MC_SAFETY_CHECKER_HPP
+#include <list>
+
#include "src/mc/mc_forward.hpp"
#include "src/mc/Checker.hpp"
+#include "src/mc/VisitedState.hpp"
namespace simgrid {
namespace mc {
~SafetyChecker();
int run() override;
RecordTrace getRecordTrace() override;
+ std::vector<std::string> getTextualTrace() override;
private:
// Temp
void init();
+ bool checkNonDeterminism(simgrid::mc::State* current_state);
+private:
+ /** Stack representing the position in the exploration graph */
+ std::list<simgrid::mc::State*> stack_;
+ simgrid::mc::VisitedStates visitedStates_;
};
}