#include <evtgbaalgos/reachiter.hh>
Inheritance diagram for spot::evtgba_reachable_iterator:
Public Member Functions | |
evtgba_reachable_iterator (const evtgba *a) | |
virtual | ~evtgba_reachable_iterator () |
void | run () |
Iterate over all reachable states of a spot::evtgba. | |
virtual void | start (int n) |
Called by run() before starting its iteration. | |
virtual void | end () |
Called by run() once all states have been explored. | |
virtual void | process_state (const state *s, int n, evtgba_iterator *si) |
virtual void | process_link (int in, int out, const evtgba_iterator *si) |
Todo list management. | |
Called by run() to register newly discovered states.
spot::evtgba_reachable_iterator_depth_first and spot::evtgba_reachable_iterator_breadth_first offer two precanned implementations for these functions. | |
virtual void | add_state (const state *s)=0 |
virtual const state * | next_state ()=0 |
Called by run() to obtain the. | |
Protected Types | |
typedef Sgi::hash_map< const state *, int, state_ptr_hash, state_ptr_equal > | seen_map |
Protected Attributes | |
const evtgba * | automata_ |
The spot::evtgba to explore. | |
seen_map | seen |
States already seen. |
|
|
|
|
|
|
|
Implemented in spot::evtgba_reachable_iterator_depth_first, and spot::evtgba_reachable_iterator_breadth_first. |
|
Called by run() once all states have been explored.
|
|
Called by run() to obtain the.
Implemented in spot::evtgba_reachable_iterator_depth_first, and spot::evtgba_reachable_iterator_breadth_first. |
|
Called by run() to process a transition.
|
|
Called by run() to process a state.
|
|
Iterate over all reachable states of a spot::evtgba. This is a template method that will call add_state(), next_state(), start(), end(), process_state(), and process_link(), while it iterate over state. |
|
Called by run() before starting its iteration.
|
|
The spot::evtgba to explore.
|
|
States already seen.
|