Vcsn
2.3
Be Rational
|
#include <synchronize.hh>
Public Types | |
using | automaton_t = Aut |
using | out_automaton_t = synchronized_automaton< automaton_t > |
using | state_t = state_t_of< automaton_t > |
using | labelset_t = labelset_t_of< out_automaton_t > |
using | weightset_t = weightset_t_of< out_automaton_t > |
using | label_t = typename labelset_t::value_t |
using | state_name_t = typename out_automaton_t::element_type::state_name_t |
template<std::size_t... I> | |
using | seq = vcsn::detail::index_sequence< I... > |
A static list of integers. More... | |
using | index_t = detail::make_index_sequence< number_of_tapes > |
template<size_t I> | |
using | tape_labelset_t = typename labelset_t::template valueset_t< I > |
Public Member Functions | |
synchronizer (const automaton_t &aut) | |
out_automaton_t | synchronize () |
Static Public Attributes | |
static constexpr size_t | number_of_tapes = labelset_t_of<Aut>::size() |
static constexpr index_t | indices = {} |
Private Member Functions | |
std::pair< label_t, label_t > | get_prefix (const label_t &l) |
std::pair< label_t, label_t > | get_prefix (size_t length, const label_t &l) |
Split the label in prefix/suffix, with the prefix of size length. More... | |
size_t | get_min_length (const label_t &l) |
template<size_t... I> | |
size_t | get_min_length_ (const label_t &l, seq< I... >) |
Private Attributes | |
automaton_t | in_aut_ |
out_automaton_t | out_aut_ |
Definition at line 209 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::automaton_t = Aut |
Definition at line 215 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::index_t = detail::make_index_sequence<number_of_tapes> |
Definition at line 229 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::label_t = typename labelset_t::value_t |
Definition at line 220 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::labelset_t = labelset_t_of<out_automaton_t> |
Definition at line 218 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::out_automaton_t = synchronized_automaton<automaton_t> |
Definition at line 216 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::seq = vcsn::detail::index_sequence<I...> |
A static list of integers.
Definition at line 225 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::state_name_t = typename out_automaton_t::element_type::state_name_t |
Definition at line 221 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::state_t = state_t_of<automaton_t> |
Definition at line 217 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::tape_labelset_t = typename labelset_t::template valueset_t<I> |
Definition at line 234 of file synchronize.hh.
using vcsn::detail::synchronizer< Aut >::weightset_t = weightset_t_of<out_automaton_t> |
Definition at line 219 of file synchronize.hh.
|
inline |
Definition at line 236 of file synchronize.hh.
|
inlineprivate |
Definition at line 315 of file synchronize.hh.
|
inlineprivate |
Definition at line 322 of file synchronize.hh.
References vcsn::min, and vcsn::rat::size().
|
inlineprivate |
Definition at line 283 of file synchronize.hh.
|
inlineprivate |
Split the label in prefix/suffix, with the prefix of size length.
Definition at line 291 of file synchronize.hh.
References vcsn::prefix(), and vcsn::suffix().
|
inline |
Definition at line 240 of file synchronize.hh.
Referenced by vcsn::detail::synchronize().
|
private |
Definition at line 326 of file synchronize.hh.
|
static |
Definition at line 231 of file synchronize.hh.
|
static |
Definition at line 227 of file synchronize.hh.
|
private |
Definition at line 327 of file synchronize.hh.