Geometry access | |
|
typedef vcsn::geometry < hstate_t, hedge_t, GeometryCoords > | geometry_t |
| geometry_t & | geometry () |
| const geometry_t & | geometry () const |
Public Types | |
|
typedef Graph< K, WordValue, WeightValue, SeriesValue, Letter, Tag, GeometryCoords > | self_t |
| Self type definition. | |
|
typedef LabelOf< K, WordValue, WeightValue, SeriesValue, Letter >::ret | label_t |
| Typedefs on automaton related graphs elements. | |
| typedef misc::SparseInterval < hstate_t, std::set< hstate_t > > | StateContainer |
| Needed containers. | |
Public Member Functions | |
| states_t | states () const |
| Return states set. | |
| edges_t | edges () const |
| Return edges set. | |
| initial_support_t | initial () const |
| Initial/final state supports. | |
| self_t & | clone () const |
| FIXME: Not implemented. | |
State's manipulation | |
| hstate_t | get_state (int n) const |
| Remove state n. | |
| bool | has_state (const hstate_t &n) const |
| Remove state n. | |
| hstate_t | add_state () |
| Remove state n. | |
| void | del_state (const hstate_t &n) |
| Remove state n. | |
| void | set_initial (const hstate_t &s, const series_set_elt_value_t &v, const series_set_elt_value_t &z) |
| Change whether a state is initial or not. | |
| const series_set_elt_value_t & | get_initial (const hstate_t &, const series_set_elt_value_t &) const |
| Remove state n. | |
| bool | is_initial (const hstate_t &s, const series_set_elt_value_t &) const |
| Remove state n. | |
| void | clear_initial () |
| Remove state n. | |
| void | set_final (const hstate_t &, const series_set_elt_value_t &, const series_set_elt_value_t &) |
| Change whether a state is final or not. | |
| const series_set_elt_value_t & | get_final (const hstate_t &, const series_set_elt_value_t &) const |
| Remove state n. | |
| bool | is_final (const hstate_t &s, const series_set_elt_value_t &) const |
| Remove state n. | |
| void | clear_final () |
| Remove state n. | |
Edge's manipulation | |
| bool | has_edge (const hedge_t &n) const |
| hedge_t | add_edge (const hstate_t &h1, const hstate_t &h2, const label_t &v) |
| void | del_edge (const hedge_t &e) |
| hstate_t | src_of (const hedge_t &e1) const |
| hstate_t | dst_of (const hedge_t &e2) const |
| const label_t & | label_of (const hedge_t &n) const |
| void | update (const hedge_t &, label_t) |
Only automaton related methods | |
| template<class S> | |
| bool | exists (const AutomataBase< S > &s) const |
| Check the consistency of an automata. | |
| DECLARE_DELTAC_FUNCTION (deltac, states) | |
| Check the consistency of an automata. | |
| DECLARE_DELTAC_FUNCTION (deltac, transitions) | |
| Check the consistency of an automata. | |
| DECLARE_DELTAC_FUNCTION (rdeltac, states) | |
| Check the consistency of an automata. | |
| DECLARE_DELTAC_FUNCTION (rdeltac, transitions) | |
| Check the consistency of an automata. | |
Tag access | |
| tag_t & | tag () |
| const tag_t & | tag () const |
Classes | |
| struct | edge_value |
| Edge decorator. More... | |
| struct | state_value |
| State decorator. More... | |
Definition at line 47 of file listg_graph_impl.hh.
| typedef misc::SparseInterval<hstate_t, std::set<hstate_t> > StateContainer |
Needed containers.
FIXME: How about using std::vector instead of std::set?
Definition at line 105 of file listg_graph_impl.hh.
| Graph< Kind, WordValue, WeightValue, SeriesValue, Letter, Tag, GeometryCoords >::hstate_t get_state | ( | int | n | ) | const [inline] |
Remove state n.
Definition at line 126 of file listg_graph_impl.hxx.
References Graph::has_state().
| bool has_state | ( | const hstate_t & | n | ) | const [inline] |
Remove state n.
Definition at line 109 of file listg_graph_impl.hxx.
Referenced by Graph::add_state(), Graph::del_state(), Graph::exists(), Graph::get_final(), Graph::get_initial(), Graph::get_state(), Graph::set_final(), and Graph::set_initial().
| Graph< Kind, WordValue, WeightValue, SeriesValue, Letter, Tag, GeometryCoords >::hstate_t add_state | ( | ) | [inline] |
Remove state n.
Definition at line 134 of file listg_graph_impl.hxx.
References Graph::has_state().
| void del_state | ( | const hstate_t & | n | ) | [inline] |
Remove state n.
Definition at line 155 of file listg_graph_impl.hxx.
References SparseInterval::begin(), SparseInterval::end(), Graph::has_state(), Graph::state_value::input_edges, and Graph::state_value::output_edges.
| void set_initial | ( | const hstate_t & | s, | |
| const series_set_elt_value_t & | v, | |||
| const series_set_elt_value_t & | z | |||
| ) | [inline] |
Change whether a state is initial or not.
| s | the state | |
| v | its associated label | |
| z | the zero for the labels |
typename automaton_t::series_set_elt_t some_weight = ...; for_all_final_states(f, aut) lhs.set_final(*f, aut.get_final(*f) * some_weight);
some_weight is equal to z, then the state is removed from the set of final states, and invalidates all the iterators: the loop is broken. Definition at line 186 of file listg_graph_impl.hxx.
References Graph::has_state().
| const Graph< Kind, WordValue, WeightValue, SeriesValue, Letter, Tag, GeometryCoords >::series_set_elt_value_t & get_initial | ( | const hstate_t & | n, | |
| const series_set_elt_value_t & | z | |||
| ) | const [inline] |
Remove state n.
Definition at line 198 of file listg_graph_impl.hxx.
References Graph::has_state().
Referenced by Graph::is_initial().
| bool is_initial | ( | const hstate_t & | s, | |
| const series_set_elt_value_t & | z | |||
| ) | const [inline] |
Remove state n.
Definition at line 209 of file listg_graph_impl.hxx.
References Graph::get_initial().
| void clear_initial | ( | ) | [inline] |
Remove state n.
Definition at line 216 of file listg_graph_impl.hxx.
| void set_final | ( | const hstate_t & | n, | |
| const series_set_elt_value_t & | v, | |||
| const series_set_elt_value_t & | z | |||
| ) | [inline] |
Change whether a state is final or not.
| s | the state | |
| v | its associated label | |
| z | the zero for the labels |
Definition at line 223 of file listg_graph_impl.hxx.
References Graph::has_state().
| const Graph< Kind, WordValue, WeightValue, SeriesValue, Letter, Tag, GeometryCoords >::series_set_elt_value_t & get_final | ( | const hstate_t & | n, | |
| const series_set_elt_value_t & | z | |||
| ) | const [inline] |
Remove state n.
Definition at line 235 of file listg_graph_impl.hxx.
References Graph::has_state().
Referenced by Graph::is_final().
| bool is_final | ( | const hstate_t & | s, | |
| const series_set_elt_value_t & | z | |||
| ) | const [inline] |
Remove state n.
Definition at line 246 of file listg_graph_impl.hxx.
References Graph::get_final().
| void clear_final | ( | ) | [inline] |
Remove state n.
Definition at line 253 of file listg_graph_impl.hxx.
1.5.6