Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef VCSN_ALGORITHMS_THOMPSON_HH
00018 # define VCSN_ALGORITHMS_THOMPSON_HH
00019
00033
00034
00035 # include <vaucanson/algebra/implementation/series/rat/exp.hh>
00036 # include <vaucanson/automata/concept/automata.hh>
00037
00038 namespace vcsn {
00039
00051 template<typename A, typename T,
00052 typename Letter, typename Weight>
00053 void
00054 thompson_of(Element<A, T>& out, const rat::exp<Letter, Weight>& kexp);
00055
00065 template <typename AutoType, typename S, typename K, class T>
00066 Element<Automata<S, K>, AutoType>
00067 thompson_of(const Element<S, T>& exp);
00068
00071 }
00072
00073 # if !defined VCSN_USE_INTERFACE_ONLY && !defined VCSN_USE_LIB
00074 # include <vaucanson/algorithms/thompson.hxx>
00075 # endif // VCSN_USE_INTERFACE_ONLY
00076
00077 #endif // ! VCSN_ALGORITHMS_THOMPSON_HH