20 #ifndef SPOT_TGBAALGOS_CYCLES_HH
21 # define SPOT_TGBAALGOS_CYCLES_HH
24 #include "misc/hash.hh"
46 class SPOT_API enumerate_cycles
82 typedef Sgi::hash_set<
const state*,
83 state_ptr_hash, state_ptr_equal> set_type;
89 : reach(
false), mark(
false)
115 typedef hash_type::iterator tagged_state;
133 typedef std::deque<dfs_entry> dfs_stack;
145 void run(
unsigned scc);
163 virtual bool cycle_found(
const state* start);
167 tagged_state tag_state(
const state* s);
169 void push_state(tagged_state ts);
172 void nocycle(tagged_state x, tagged_state y);
174 void unmark(tagged_state y);
179 #endif // SPOT_TGBAALGOS_CYCLES_HH