-/* Copyright (c) 2007-2020. The SimGrid Team.
+/* Copyright (c) 2007-2021. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
public:
int num = 0;
bool search_cycle = false;
- std::shared_ptr<simgrid::mc::State> graph_state = nullptr; /* System state included */
+ std::shared_ptr<State> graph_state = nullptr; /* System state included */
xbt_automaton_state_t automaton_state = nullptr;
std::shared_ptr<const std::vector<int>> atomic_propositions;
int requests = 0;
bool exploration_started = false;
explicit Pair(unsigned long expanded_pairs);
- ~Pair() = default;
Pair(Pair const&) = delete;
Pair& operator=(Pair const&) = delete;
public:
int num;
int other_num = 0; /* Dot output for */
- std::shared_ptr<simgrid::mc::State> graph_state = nullptr; /* System state included */
+ std::shared_ptr<State> graph_state = nullptr; /* System state included */
xbt_automaton_state_t automaton_state;
std::shared_ptr<const std::vector<int>> atomic_propositions;
std::size_t heap_bytes_used = 0;
int actors_count = 0;
- VisitedPair(
- int pair_num, xbt_automaton_state_t automaton_state,
- std::shared_ptr<const std::vector<int>> atomic_propositions,
- std::shared_ptr<simgrid::mc::State> graph_state);
- ~VisitedPair() = default;
+ VisitedPair(int pair_num, xbt_automaton_state_t automaton_state,
+ std::shared_ptr<const std::vector<int>> atomic_propositions, std::shared_ptr<State> graph_state);
};
class XBT_PRIVATE LivenessChecker : public Checker {
public:
- explicit LivenessChecker(Session& session);
- ~LivenessChecker() = default;
+ explicit LivenessChecker(Session* session);
void run() override;
RecordTrace get_record_trace() override;
std::vector<std::string> get_textual_trace() override;
void log_state() override;
private:
- std::shared_ptr<const std::vector<int>> get_proposition_values();
- std::shared_ptr<VisitedPair> insert_acceptance_pair(simgrid::mc::Pair* pair);
- int insert_visited_pair(std::shared_ptr<VisitedPair> visited_pair, simgrid::mc::Pair* pair);
+ std::shared_ptr<const std::vector<int>> get_proposition_values() const;
+ std::shared_ptr<VisitedPair> insert_acceptance_pair(Pair* pair);
+ int insert_visited_pair(std::shared_ptr<VisitedPair> visited_pair, Pair* pair);
void show_acceptance_cycle(std::size_t depth);
void replay();
void remove_acceptance_pair(int pair_num);
std::string previous_request_;
};
-}
-}
+} // namespace mc
+} // namespace simgrid
#endif