MetaElement< TransducerBase< Self >, T > Struct Template Reference
[Concept]

MetaElement<TransducerBase<Self>, T> defines the interface of every transducer that is the result of the interaction of a structural element (TransducerBase<Self>) and an implementation T. More...

Inheritance diagram for MetaElement< TransducerBase< Self >, T >:

Inheritance graph
[legend]
List of all members.

Public Types

typedef MetaElement< AutomataBase<
Self >, T > 
automaton_t
 type of the interface of an automaton.
typedef MetaElement< TransducerBase<
Self >, T > 
self_t
 type of the interface of an automaton.
typedef MetaElement< AutomataBase<
Self >, T > 
mother_t
 type of the mother class.
typedef mother_t::semiring_elt_t output_series_set_elt_t
 type of the output.
typedef algebra::series_traits<
semiring_elt_value_t >::monoid_elt_value_t 
output_monoid_elt_value_t
typedef semiring_t::monoid_t output_monoid_t
 type of the output monoid.
typedef Element< output_monoid_t,
output_monoid_elt_value_t
output_monoid_elt_t
 type of the output monoid element.
typedef output_monoid_t::letter_t output_letter_t
typedef mother_t::monoid_elt_value_t input_monoid_elt_value_t
 type of the input monoid element implementation.
typedef mother_t::monoid_t input_monoid_t
 type of the input monoid.
typedef Element< input_monoid_t,
input_monoid_elt_value_t
input_monoid_elt_t
typedef input_monoid_t::letter_t input_letter_t
typedef algebra::series_traits<
semiring_elt_value_t >::semiring_elt_value_t 
output_semiring_elt_value_t
 type of the output weight implementation.
typedef semiring_t::semiring_t output_semiring_t
 type of the output semiring.
typedef Element< output_semiring_t,
output_semiring_elt_value_t
output_semiring_elt_t
 type of the output weight.
typedef AutomataBase< Self
>::series_set_t 
series_set_t
 type the series set from which is build the automaton.
typedef automaton_traits<
T >::series_set_elt_value_t 
series_set_elt_value_t
 type of the implementation of series that holds the automaton.
typedef Element< series_set_t,
series_set_elt_value_t
series_set_elt_t
 type of the element of the set of series that holds the automaton.
typedef series_set_t::monoid_t monoid_t
 type of the free monoid.
typedef series_set_elt_t::monoid_elt_t monoid_elt_t
 type of the free monoid element.
typedef monoid_elt_t::value_t monoid_elt_value_t
 type of the implementation of a word.
typedef monoid_t::letter_t letter_t
 type of the letter.
typedef series_set_t::semiring_t semiring_t
 type of the semiring set.
typedef series_set_elt_t::semiring_elt_t semiring_elt_t
 type of the free monoid element.
typedef series_set_elt_t::semiring_elt_value_t semiring_elt_value_t
 type of the implementation of a semiring_elt.
typedef automaton_traits<
T >::tag_t 
tag_t
 type of additional information that is aggregated to the automaton.
typedef automaton_traits<
T >::label_t 
label_t
 type of the label of the automaton implementation.
typedef automaton_traits<
T >::states_t 
states_t
 type of the states container.
typedef automaton_traits<
T >::state_iterator 
state_iterator
 type of the iterator over the states set.
typedef automaton_traits<
T >::transitions_t 
transitions_t
 type of the transitions set.
typedef automaton_traits<
T >::transition_iterator 
transition_iterator
 type of the iterator over the transitions.
typedef automaton_traits<
T >::initial_t 
initial_t
 type of the initial application.
typedef automaton_traits<
T >::initial_support_t 
initial_support_t
 type of the initial application support.
typedef automaton_traits<
T >::initial_iterator 
initial_iterator
 type of the iterator of the initial application support.
typedef automaton_traits<
T >::final_t 
final_t
 type of the final application.
typedef automaton_traits<
T >::final_iterator 
final_iterator
 type of the iterator of the final application support.
typedef automaton_traits<
T >::geometry_t 
geometry_t
 type of the geometry map containing state coordinates.

Public Member Functions

 INHERIT_TYPEDEF_ (automaton_t, series_set_t)
 type the series set from which is build the automaton.
 INHERIT_TYPEDEF_ (automaton_t, series_set_elt_value_t)
 type of the implementation of series that holds the automaton.
 INHERIT_TYPEDEF_ (automaton_t, series_set_elt_t)
 type of the element of the set of series that holds the automaton.
 INHERIT_TYPEDEF_ (automaton_t, monoid_t)
 type of the free monoid.
 INHERIT_TYPEDEF_ (automaton_t, monoid_elt_t)
 type of the free monoid element.
 INHERIT_TYPEDEF_ (automaton_t, monoid_elt_value_t)
 type of the implementation of a word.
 INHERIT_TYPEDEF_ (automaton_t, letter_t)
 type of the letter.
 INHERIT_TYPEDEF_ (automaton_t, semiring_t)
 type of the semiring set.
 INHERIT_TYPEDEF_ (automaton_t, semiring_elt_t)
 type of the free monoid element.
 INHERIT_TYPEDEF_ (automaton_t, semiring_elt_value_t)
 type of the implementation of a semiring_elt.
 INHERIT_TYPEDEF_ (automaton_t, tag_t)
 type of additional information that is aggregated to the automaton.
 INHERIT_TYPEDEF_ (automaton_t, label_t)
 type of the label of the automaton implementation.
 INHERIT_TYPEDEF_ (automaton_t, states_t)
 type of the states container.
 INHERIT_TYPEDEF_ (automaton_t, state_iterator)
 type of the iterator over the states set.
 INHERIT_TYPEDEF_ (automaton_t, transitions_t)
 type of the transitions set.
 INHERIT_TYPEDEF_ (automaton_t, transition_iterator)
 type of the iterator over the transitions.
 INHERIT_TYPEDEF_ (automaton_t, initial_t)
 type of the initial application.
 INHERIT_TYPEDEF_ (automaton_t, initial_support_t)
 type of the initial application support.
 INHERIT_TYPEDEF_ (automaton_t, initial_iterator)
 type of the iterator of the initial application support.
 INHERIT_TYPEDEF_ (automaton_t, final_t)
 type of the final application.
 INHERIT_TYPEDEF_ (automaton_t, final_iterator)
 type of the iterator of the final application support.
input_monoid_elt_t input_of (htransition_t) const
 return the input of a transition
output_series_set_elt_t output_of (htransition_t) const
 return the output of a transition
htransition_t add_io_transition (hstate_t, hstate_t, input_monoid_elt_value_t, output_monoid_elt_value_t, output_semiring_elt_t=output_semiring_elt_t())
 add a transition specified as an input word value and output word value.
htransition_t add_io_transition (hstate_t, hstate_t, input_letter_t, output_letter_t, output_semiring_elt_t=output_semiring_elt_t())
 add a transition specified using an input letter, an output letter and a weight linked to it.
htransition_t add_o_transition (hstate_t, hstate_t, output_letter_t, output_semiring_elt_t=output_semiring_elt_t())
 add an only-output transition (epsilon as input).
htransition_t add_i_transition (hstate_t, hstate_t, input_letter_t, output_semiring_elt_t=output_semiring_elt_t())
 add an only-input transition (epsilon as output).
void set_o_final (hstate_t, output_monoid_elt_value_t)
 set a weight on the final transition, specifying an output_monoid value.
void set_o_initial (hstate_t, output_monoid_elt_value_t)
 set a weight on the initial transition, specifying an output_monoid value.
const series_set_tseries () const
 the optional information aggregated to the automaton.
tag_ttag ()
 the optional information aggregated to the automaton.
const tag_ttag () const
 the optional information aggregated to the automaton.
geometry_tgeometry ()
 the optional geometry information aggregated to the automaton.
const geometry_tgeometry () const
 the optional geometry information aggregated to the automaton.
bool exists () const
 return true if the automaton is consistent.
automaton_traits< T >::states_t states () const
 accessor to the set of states.
automaton_traits< T >::transitions_t transitions () const
 accessor to the set of states.
automaton_traits< T >::initial_support_t initial () const
 accessor to the initial application.
automaton_traits< T >::final_support_t final () const
 accessor to the final application.
bool is_initial (hstate_t state) const
 return true if the state is initial (ie it is in the initial support) .
bool is_final (hstate_t state) const
 return true if the state is final (ie it is in the final support).
void set_initial (hstate_t state)
 set the state to be initial.
void set_initial (hstate_t state, const series_set_elt_t &m)
 set an initial multiplicity to the state.
void set_final (hstate_t state)
 set the state to be final.
void set_final (hstate_t state, const series_set_elt_t &m)
 set a final multiplicity to the state.
void unset_initial (hstate_t state)
 set the state not to be initial.
void unset_final (hstate_t state)
 set the set not to be final.
void clear_initial ()
 make the support of the initial application to be empty.
void clear_final ()
 make the support of the final application to be empty.
Element< series_set_t, series_set_elt_value_tget_initial (hstate_t state) const
 return the initial multiplicity of the state.
Element< series_set_t, series_set_elt_value_tget_final (hstate_t what) const
 return the final multiplicity of the state.
hstate_t add_state ()
 add a new state to the automaton.
hstate_t choose_state () const
 return a randomly chosen state.
htransition_t add_transition (hstate_t from, hstate_t to, const label_t &label)
 add a new transition between 'from' and 'to' labelled by 'label'
htransition_t add_weighted_transition (hstate_t from, hstate_t to, const semiring_elt_t &w, const monoid_elt_value_t &m)
 add a new weighted transition.
htransition_t add_series_transition (hstate_t from, hstate_t to, const series_set_elt_t &e)
 If the underlying implementation is not sufficiently general to support this operation, you will have several transitions created.
htransition_t add_spontaneous (hstate_t from, hstate_t to, const semiring_elt_t &w)
 add a spontaneous transition between 'from' and 'to'.
htransition_t add_spontaneous (hstate_t from, hstate_t to)
 add a spontaneous transition between 'from' and 'to'.
htransition_t add_letter_transition (hstate_t from, hstate_t to, const letter_t &l)
 add a transition between 'from' and 'to' labelled by a letter.
void update (htransition_t e, const label_t &l)
 update the label of a transition.
void del_state (hstate_t s)
 delete the state 's'.
void del_transition (htransition_t e)
 delete the transition 'e'.
bool has_state (hstate_t s) const
 check if the state 's' is in the automaton.
bool has_transition (htransition_t e) const
 check if the transition 'e' is in the automaton.
hstate_t src_of (htransition_t e) const
 return the origin of the transition 'e'.
hstate_t dst_of (htransition_t e) const
 return the aim of the transition 'e'.
automaton_traits< T >::label_t label_of (htransition_t e) const
 return the label of the transition 'e'.
series_set_elt_t series_of (htransition_t e) const
 return the label seen as a series.
series_set_elt_value_t series_value_of (htransition_t e) const
 return the label seen as a series implementation.
bool is_spontaneous (htransition_t e) const
 return true if the transition is spontaneous.
monoid_elt_t word_of (htransition_t e) const
 return the label seen as a word.
semiring_elt_t weight_of (htransition_t e) const
 return the label seen as a weight.
monoid_elt_value_t word_value_of (htransition_t e) const
 returns the label seen as word implementation.
letter_t letter_of (htransition_t e) const
 Becareful, when you have more general label this method is probably invalidated.
template<typename OutputIterator, typename Kind>
void delta (OutputIterator res, hstate_t from, delta_kind::kind< Kind > k) const
 Store the output transitions/states of the state from using res.
template<typename OutputIterator, typename L, typename Kind>
void delta (OutputIterator res, hstate_t from, const L &query, delta_kind::kind< Kind > k) const
 Store the output transitions/states of the state from where query is true on a transition/state, using res.
template<typename OutputIterator, typename L, typename Kind>
void letter_delta (OutputIterator res, hstate_t from, const L &letter, delta_kind::kind< Kind > k) const
 Store the output transitions/states of the state from where the label matches the letter letter.
template<typename OutputIterator, typename Kind>
void spontaneous_delta (OutputIterator res, hstate_t from, delta_kind::kind< Kind > k) const
 Store the output spontaneous transitions or states reached from from by an epsilon-transition.
template<typename Container, typename Kind>
void deltac (Container &res, hstate_t from, delta_kind::kind< Kind > k) const
 Store the output transitions/states of the state from in the container res.
template<typename Container, typename L, typename Kind>
void deltac (Container &res, hstate_t from, const L &query, delta_kind::kind< Kind > k) const
 Store the output transitions/states of the state from where query is true on a transition/state, using the container res.
template<typename Container, typename L, typename Kind>
void letter_deltac (Container &res, hstate_t from, const L &letter, delta_kind::kind< Kind > k) const
 Store the output transitions/states of the state from where the label matches the letter letter.
template<typename Container, typename Kind>
void spontaneous_deltac (Container &res, hstate_t from, delta_kind::kind< Kind > k) const
 Store the output spontaneous transitions or states reached from from by an epsilon-transition in the container res.
template<typename Functor, typename Kind>
void deltaf (Functor &fun, hstate_t from, delta_kind::kind< Kind > k) const
 Call the functor fun on every output transitions/states of the state from.
template<typename Functor, typename L, typename Kind>
void deltaf (Functor &fun, hstate_t from, const L &query, delta_kind::kind< Kind > k) const
 Call the functor fun on every output transitions/states of the state from where query is true.
template<typename Functor, typename L, typename Kind>
void letter_deltaf (Functor &fun, hstate_t from, const L &letter, delta_kind::kind< Kind > k) const
 Call the functor fun on every output transitions/states of the state from where the label matches the letter letter.
template<typename Functor, typename Kind>
void spontaneous_deltaf (Functor &fun, hstate_t from, delta_kind::kind< Kind > k) const
 Call the functor fun on every output spontaneous transitions or every states reached by from with an epsilon-transition.
template<typename OutputIterator, typename Kind>
void rdelta (OutputIterator res, hstate_t from, delta_kind::kind< Kind > k) const
 Store the input transitions/states of the state from using res.
template<typename OutputIterator, typename L, typename Kind>
void rdelta (OutputIterator res, hstate_t from, const L &query, delta_kind::kind< Kind > k) const
 Store the input transitions/states of the state from where query is true on a transition/state, using res.
template<typename OutputIterator, typename L, typename Kind>
void letter_rdelta (OutputIterator res, hstate_t from, const L &letter, delta_kind::kind< Kind > k) const
 Store the input transitions/states of the state from where the label matches the letter letter.
template<typename OutputIterator, typename Kind>
void spontaneous_rdelta (OutputIterator res, hstate_t from, delta_kind::kind< Kind > k) const
 Store every input spontaneous transitions or every states that reach from with an epsilon-transition using res.
template<typename Container, typename Kind>
void rdeltac (Container &res, hstate_t from, delta_kind::kind< Kind > k) const
 Store the input transitions/states of the state from in the container res.
template<typename Container, typename L, typename Kind>
void rdeltac (Container &res, hstate_t from, const L &query, delta_kind::kind< Kind > k) const
 Store the input transitions/states of the state from where query is true on a transition/state, using the container res.
template<typename Container, typename L, typename Kind>
void letter_rdeltac (Container &res, hstate_t from, const L &letter, delta_kind::kind< Kind > k) const
 Store the input transitions/states of the state from where the label matches the letter letter.
template<typename Container, typename Kind>
void spontaneous_rdeltac (Container &res, hstate_t from, delta_kind::kind< Kind > k) const
 Store every input spontaneous transitions or every states that reach from with an epsilon-transition in the container res.
template<typename Functor, typename Kind>
void rdeltaf (Functor &fun, hstate_t from, delta_kind::kind< Kind > k) const
 Call the functor fun on every input transitions/states of the state from.
template<typename Functor, typename L, typename Kind>
void rdeltaf (Functor &fun, hstate_t from, const L &query, delta_kind::kind< Kind > k) const
 Call the functor fun on every input transitions/states of the state from where query is true.
template<typename Functor, typename L, typename Kind>
void letter_rdeltaf (Functor &fun, hstate_t from, const L &letter, delta_kind::kind< Kind > k) const
 Call the functor fun on every input transitions/states of the state from where the label matches the letter letter.
template<typename Functor, typename Kind>
void spontaneous_rdeltaf (Functor &fun, hstate_t from, delta_kind::kind< Kind > k) const
 Call the functor fun on every input spontaneous transitions or every states that reach from with an epsilon-transition.

Protected Member Functions

 MetaElement ()
 MetaElement (const MetaElement &other)
 copy constructor

Detailed Description

template<typename Self, typename T>
struct vcsn::MetaElement< TransducerBase< Self >, T >

MetaElement<TransducerBase<Self>, T> defines the interface of every transducer that is the result of the interaction of a structural element (TransducerBase<Self>) and an implementation T.

Definition at line 109 of file transducer_base.hh.


Generated on Sat Jul 29 17:29:45 2006 for Vaucanson by  doxygen 1.4.6