25 #include "misc/bddlt.hh"
32 class ta_succ_iterator;
82 ta(
const bdd_dict_ptr& d)
92 typedef std::set<state*, state_ptr_less_than> states_set_t;
95 virtual const states_set_t
96 get_initial_states_set()
const = 0;
152 is_accepting_state(
const spot::state* s)
const = 0;
157 is_livelock_accepting_state(
const spot::state* s)
const = 0;
166 get_state_condition(
const spot::state* s)
const = 0;
185 typedef std::shared_ptr<ta> ta_ptr;
186 typedef std::shared_ptr<const ta> const_ta_ptr;
204 virtual bool first() = 0;
205 virtual bool next() = 0;
206 virtual bool done()
const = 0;
241 std::list<state*> rem;
272 typedef std::list<connected_component> stack_type;
virtual bdd current_condition() const =0
Get the changeset on the transition leading to current successor.
connected_component & top()
Access the top SCC.
void pop()
Pop the top SCC.
std::list< state * > & rem()
The rem member of the top SCC.
Abstract class for states.
Definition: twa.hh:42
virtual bool done() const =0
Check whether the iteration is finished.
acc_cond::mark_t current_acceptance_conditions() const =0
Get the acceptance conditions on the transition leading to this successor.
Iterate over the successors of a state.
Definition: twa.hh:331
bool empty() const
Is the stack empty?
acc_cond::mark_t condition
Definition: ta.hh:239
virtual spot::state * get_artificial_initial_state() const
Get the artificial initial state set of the automaton. Return 0 if this artificial state is not imple...
Definition: ta.hh:106
size_t size() const
How many SCC are in stack.
A Testing Automaton.
Definition: ta.hh:75
bdd_dict_ptr get_dict() const
Get the dictionary associated to the automaton.
Definition: ta.hh:138
int index
Index of the SCC.
Definition: ta.hh:233
void push(int index)
Stack a new SCC with index index.
Iterate over the successors of a state.
Definition: ta.hh:196
virtual bool first()=0
Position the iterator on the first successor (if any).
virtual bool next()=0
Jump to the next successor (if any).
virtual state * current_state() const =0
Get the state of the current successor.