X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/3a70f3d43980112b067cf0f51a8327bdccaf5ef9..07483e97b12350d1d293f19689575f0fbdcf0246:/src/mc/LivenessChecker.hpp diff --git a/src/mc/LivenessChecker.hpp b/src/mc/LivenessChecker.hpp index 18c32a0372..751dacc70f 100644 --- a/src/mc/LivenessChecker.hpp +++ b/src/mc/LivenessChecker.hpp @@ -16,7 +16,6 @@ #include #include -#include #include #include #include "src/mc/mc_state.h" @@ -39,7 +38,7 @@ struct XBT_PRIVATE Pair { int depth = 0; bool exploration_started = false; - Pair(); + Pair(unsigned long expanded_pairs); ~Pair(); Pair(Pair const&) = delete; @@ -53,7 +52,7 @@ struct XBT_PRIVATE VisitedPair { xbt_automaton_state_t automaton_state = nullptr; std::shared_ptr> atomic_propositions; std::size_t heap_bytes_used = 0; - int nb_processes = 0; + int actors_count = 0; VisitedPair( int pair_num, xbt_automaton_state_t automaton_state, @@ -69,6 +68,7 @@ public: int run() override; RecordTrace getRecordTrace() override; std::vector getTextualTrace() override; + void logState() override; private: int main(); void prepare(); @@ -82,11 +82,16 @@ private: void purgeVisitedPairs(); void backtrack(); std::shared_ptr newPair(Pair* pair, xbt_automaton_state_t state, std::shared_ptr> propositions); -public: +private: // A stack of (application_state, automaton_state) pairs for DFS exploration: std::list> explorationStack_; std::list> acceptancePairs_; std::list> visitedPairs_; + unsigned long visitedPairsCount_ = 0; + unsigned long expandedPairsCount_ = 0; + unsigned long expandedStatesCount_ = 0; + int previousPair_ = 0; + std::string previousRequest_; }; }