X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2376a01092173679830310f4d57b267445959f97..7d9763f5619c35b79077e30f5d32de44699824a6:/src/mc/SafetyChecker.hpp diff --git a/src/mc/SafetyChecker.hpp b/src/mc/SafetyChecker.hpp index b2aa1387cc..39b083454a 100644 --- a/src/mc/SafetyChecker.hpp +++ b/src/mc/SafetyChecker.hpp @@ -8,14 +8,18 @@ #define SIMGRID_MC_SAFETY_CHECKER_HPP #include +#include +#include +#include #include "src/mc/mc_forward.hpp" #include "src/mc/Checker.hpp" +#include "src/mc/VisitedState.hpp" namespace simgrid { namespace mc { -class SafetyChecker : public Checker { +class XBT_PRIVATE SafetyChecker : public Checker { simgrid::mc::ReductionMode reductionMode_ = simgrid::mc::ReductionMode::unset; public: SafetyChecker(Session& session); @@ -26,10 +30,12 @@ public: private: // Temp void init(); - bool is_exploration_stack_state(simgrid::mc::State* current_state); + bool checkNonTermination(simgrid::mc::State* current_state); private: /** Stack representing the position in the exploration graph */ - std::list stack_; + std::list> stack_; + simgrid::mc::VisitedStates visitedStates_; + std::unique_ptr visitedState_; }; }