spot  1.99.4
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
Public Types | Public Member Functions | Protected Attributes | List of all members
spot::twa_graph Class Referencefinal
Inheritance diagram for spot::twa_graph:
Inheritance graph
Collaboration diagram for spot::twa_graph:
Collaboration graph

Public Types

typedef digraph
< twa_graph_state,
twa_graph_edge_data
graph_t
 
typedef graph_t::edge_storage_t edge_storage_t
 
template<typename State_Name , typename Name_Hash = std::hash<State_Name>, typename Name_Equal = std::equal_to<State_Name>>
using namer = named_graph< graph_t, State_Name, Name_Hash, Name_Equal >
 

Public Member Functions

 twa_graph (const bdd_dict_ptr &dict)
 
 twa_graph (const const_twa_graph_ptr &other, prop_set p)
 
template<typename State_Name , typename Name_Hash = std::hash<State_Name>, typename Name_Equal = std::equal_to<State_Name>>
namer< State_Name, Name_Hash,
Name_Equal > * 
create_namer ()
 
namer< formula > * create_formula_namer ()
 
void release_formula_namer (namer< formula > *namer, bool keep_names)
 
graph_tget_graph ()
 
const graph_tget_graph () const
 
unsigned num_states () const
 
unsigned num_edges () const
 
void set_init_state (graph_t::state s)
 
void set_init_state (const state *s)
 
graph_t::state get_init_state_number () const
 
virtual twa_graph_stateget_init_state () const
 Get the initial state of the automaton. More...
 
virtual twa_succ_iteratorsucc_iter (const state *st) const
 Get an iterator over the successors of local_state. More...
 
graph_t::state state_number (const state *st) const
 
const twa_graph_statestate_from_number (graph_t::state n) const
 
std::string format_state (unsigned n) const
 
virtual std::string format_state (const state *st) const
 
twa_graph_edge_dataedge_data (const twa_succ_iterator *it)
 
twa_graph_edge_dataedge_data (unsigned t)
 
const twa_graph_edge_dataedge_data (const twa_succ_iterator *it) const
 
const twa_graph_edge_dataedge_data (unsigned t) const
 
edge_storage_tedge_storage (const twa_succ_iterator *it)
 
edge_storage_tedge_storage (unsigned t)
 
const edge_storage_t edge_storage (const twa_succ_iterator *it) const
 
const edge_storage_t edge_storage (unsigned t) const
 
unsigned new_state ()
 
unsigned new_states (unsigned n)
 
unsigned new_edge (unsigned src, unsigned dst, bdd cond, acc_cond::mark_t acc=0U)
 
unsigned new_acc_edge (unsigned src, unsigned dst, bdd cond, bool acc=true)
 
auto out (unsigned src) const -> decltype(g_.out(src))
 
auto out (unsigned src) -> decltype(g_.out(src))
 
auto states () const -> decltype(g_.states())
 
auto states () -> decltype(g_.states())
 
auto edges () const -> decltype(g_.edges())
 
auto edges () -> decltype(g_.edges())
 
auto edge_vector () const -> decltype(g_.edge_vector())
 
auto edge_vector () -> decltype(g_.edge_vector())
 
auto is_dead_edge (const graph_t::edge_storage_t &t) const -> decltype(g_.is_dead_edge(t))
 
virtual bdd compute_support_conditions (const state *s) const
 
void merge_edges ()
 
void purge_dead_states ()
 Remove all states without successors. More...
 
void purge_unreachable_states ()
 Remove all unreachable states. More...
 
acc_cond::mark_t state_acc_sets (unsigned s) const
 
bool state_is_accepting (unsigned s) const
 
bool state_is_accepting (const state *s) const
 
bool operator== (const twa_graph &aut) const
 

Protected Attributes

graph_t g_
 
unsigned init_number_
 
twa_succ_iteratoriter_cache_
 
bdd_dict_ptr dict_
 

Member Function Documentation

virtual twa_graph_state* spot::twa_graph::get_init_state ( ) const
inlinevirtual

Get the initial state of the automaton.

The state has been allocated with new. It is the responsability of the caller to destroy it when no longer needed.

Implements spot::twa.

void spot::twa_graph::merge_edges ( )

Iterate over all edges, and merge those with compatible extremities and acceptance.

void spot::twa_graph::purge_dead_states ( )

Remove all states without successors.

void spot::twa_graph::purge_unreachable_states ( )

Remove all unreachable states.

virtual twa_succ_iterator* spot::twa_graph::succ_iter ( const state local_state) const
inlinevirtual

Get an iterator over the successors of local_state.

The iterator has been allocated with new. It is the responsability of the caller to delete it when no longer needed.

Implements spot::twa.


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

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Thu Oct 1 2015 05:49:15 for spot by doxygen 1.8.8