spot  1.2.6
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
spot::explicit_graph< State, Type > Class Template Reference

#include <tgba/tgbaexplicit.hh>

Inheritance diagram for spot::explicit_graph< State, Type >:
Inheritance graph
Collaboration diagram for spot::explicit_graph< State, Type >:
Collaboration graph

Public Types

typedef State::label_t label_t
 
typedef State::label_hash_t label_hash_t
 
typedef State::transitions_t transitions_t
 
typedef State::transition transition
 
typedef State state
 
typedef std::string(* to_string_func_t )(const label_t &t)
 

Public Member Functions

 explicit_graph (bdd_dict *dict)
 
State * add_default_init ()
 
size_t num_states () const
 
transition * create_transition (State *source, const State *dest)
 
transition * create_transition (const label_t &source, const label_t &dest)
 
transition * get_transition (const tgba_explicit_succ_iterator< State > *si)
 
transition * get_transition (const tgba_succ_iterator *si)
 
void add_condition (transition *t, const ltl::formula *f)
 
void add_conditions (transition *t, bdd f)
 This assumes that all variables in f are known from dict. More...
 
bool has_acceptance_condition (const ltl::formula *f) const
 
bool has_state (const label_t &name)
 
const State * get_state (const label_t &name)
 Return the state associated to a given label. More...
 
const label_t & get_label (const State *s) const
 
const label_t & get_label (const spot::state *s) const
 
void complement_all_acceptance_conditions ()
 
void merge_transitions ()
 
State * add_state (const label_t &name)
 
State * set_init_state (const label_t &state)
 
virtual State * get_init_state () const
 
virtual
tgba_explicit_succ_iterator
< State > * 
succ_iter (const spot::state *state, const spot::state *global_state=0, const tgba *global_automaton=0) const
 
void set_to_string_func (to_string_func_t f)
 
to_string_func_t get_to_string_func () const
 
virtual std::string format_state (const spot::state *state) const
 
void add_state_alias (const label_t &alias, const label_t &real)
 
void copy_acceptance_conditions_of (const tgba *a)
 Copy the acceptance conditions of a tgba. More...
 
void set_acceptance_conditions (bdd acc)
 Acceptance conditions handling. More...
 
void add_acceptance_condition (transition *t, const ltl::formula *f)
 
void add_acceptance_conditions (transition *t, bdd f)
 
virtual bdd all_acceptance_conditions () const
 
virtual bdd_dictget_dict () const
 
virtual bdd neg_acceptance_conditions () const
 
void declare_acceptance_condition (const ltl::formula *f)
 
bdd get_acceptance_condition (const ltl::formula *f)
 

Protected Types

typedef Sgi::hash_map< label_t,
State, label_hash_t > 
ls_map
 
typedef Sgi::hash_map< label_t,
State *, label_hash_t > 
alias_map
 
typedef Sgi::hash_map< const
State *, label_t, ptr_hash
< State > > 
sl_map
 

Protected Member Functions

virtual bdd compute_support_conditions (const spot::state *in) const
 
virtual bdd compute_support_variables (const spot::state *in) const
 

Protected Attributes

ls_map ls_
 
alias_map alias_
 
sl_map sl_
 
State * init_
 
bdd_dictdict_
 
bdd all_acceptance_conditions_
 
bool all_acceptance_conditions_computed_
 
bdd neg_acceptance_conditions_
 
to_string_func_t to_string_func_
 

Detailed Description

template<typename State, typename Type>
class spot::explicit_graph< State, Type >

Graph implementation for explicit automaton

Member Function Documentation

template<typename State, typename Type>
void spot::explicit_graph< State, Type >::add_acceptance_conditions ( transition *  t,
bdd  f 
)
inline

This assumes that all acceptance conditions in f are known from dict.

template<typename State, typename Type>
void spot::explicit_graph< State, Type >::add_conditions ( transition *  t,
bdd  f 
)
inline

This assumes that all variables in f are known from dict.

template<typename State, typename Type>
State* spot::explicit_graph< State, Type >::add_state ( const label_t &  name)
inline

Return the state_explicit for name, creating the state if it does not exist.

template<typename State, typename Type>
void spot::explicit_graph< State, Type >::add_state_alias ( const label_t &  alias,
const label_t &  real 
)
inline

Create an alias for a state. Any reference to alias_name will act as a reference to real_name.

template<typename State, typename Type>
void spot::explicit_graph< State, Type >::copy_acceptance_conditions_of ( const tgba a)
inline

Copy the acceptance conditions of a tgba.

If used, this function should be called before creating any transition.

template<typename State, typename Type>
const State* spot::explicit_graph< State, Type >::get_state ( const label_t &  name)
inline

Return the state associated to a given label.

This is similar to add_state(), except that it returns 0 if the state does not exist.

template<typename State, typename Type>
void spot::explicit_graph< State, Type >::set_acceptance_conditions ( bdd  acc)
inline

Acceptance conditions handling.


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 Sat Dec 6 2014 12:28:44 for spot by doxygen 1.8.4