spot  0.9.1
Public Member Functions | Protected Types | Protected Attributes
spot::evtgba_reachable_iterator Class Reference

Iterate over all reachable states of a spot::evtgba. More...

#include <evtgbaalgos/reachiter.hh>

Inheritance diagram for spot::evtgba_reachable_iterator:
Inheritance graph
[legend]
Collaboration diagram for spot::evtgba_reachable_iterator:
Collaboration graph
[legend]

List of all members.

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 statenext_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 evtgbaautomata_
 The spot::evtgba to explore.
seen_map seen
 States already seen.

Detailed Description

Iterate over all reachable states of a spot::evtgba.


Member Typedef Documentation


Constructor & Destructor Documentation


Member Function Documentation

virtual void spot::evtgba_reachable_iterator::add_state ( const state s) [pure virtual]
virtual void spot::evtgba_reachable_iterator::end ( ) [virtual]

Called by run() once all states have been explored.

virtual const state* spot::evtgba_reachable_iterator::next_state ( ) [pure virtual]
virtual void spot::evtgba_reachable_iterator::process_link ( int  in,
int  out,
const evtgba_iterator si 
) [virtual]

Called by run() to process a transition.

Parameters:
inThe source state number.
outThe destination state number.
siThe spot::evtgba_iterator positionned on the current transition.
virtual void spot::evtgba_reachable_iterator::process_state ( const state s,
int  n,
evtgba_iterator si 
) [virtual]

Called by run() to process a state.

Parameters:
sThe current state.
nAn unique number assigned to s.
siThe spot::evtgba_iterator for s.

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.

virtual void spot::evtgba_reachable_iterator::start ( int  n) [virtual]

Called by run() before starting its iteration.

Parameters:
nThe number of initial states.

Member Data Documentation

The spot::evtgba to explore.

States already seen.


The documentation for this class was generated from the following file:

Please comment this page and report errors about it on the RefDocComments page.
Generated on Wed May 23 2012 12:06:46 for spot by doxygen 1.7.6.1