Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
plug a memleak
[simgrid.git] / src / mc / SafetyChecker.hpp
index c1896ee..b2dd269 100644 (file)
@@ -27,14 +27,19 @@ public:
   int run() override;
   RecordTrace getRecordTrace() override;
   std::vector<std::string> getTextualTrace() override;
+  void logState() override;
 private:
   // Temp
   void init();
   bool checkNonTermination(simgrid::mc::State* current_state);
+  int backtrack();
+  void restoreState();
 private:
   /** Stack representing the position in the exploration graph */
   std::list<std::unique_ptr<simgrid::mc::State>> stack_;
   simgrid::mc::VisitedStates visitedStates_;
+  std::unique_ptr<simgrid::mc::VisitedState> visitedState_;
+  unsigned long expandedStatesCount_ = 0;
 };
 
 }