00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef VCSN_ALGORITHMS_FORWARD_REALTIME_HXX
00018 # define VCSN_ALGORITHMS_FORWARD_REALTIME_HXX
00019
00020 # include <vaucanson/algorithms/forward_realtime.hh>
00021 # include <vaucanson/algorithms/realtime.hh>
00022
00023 namespace vcsn {
00024
00025
00026
00027
00028
00029 template <class A_, typename Auto_>
00030 void
00031 do_forward_realtime_here(const AutomataBase<A_>&b, Auto_& a)
00032 {
00033 do_realtime_here (b, a, misc::forward);
00034 }
00035
00036 template<typename A, typename T>
00037 void
00038 forward_realtime_here(Element<A, T>& a)
00039 {
00040 do_forward_realtime_here(a.structure(), a);
00041 }
00042
00043
00044
00045
00046
00047 template<typename A_, typename Auto_>
00048 Auto_
00049 do_forward_realtime(const AutomataBase<A_>&b, const Auto_& a)
00050 {
00051 return do_realtime (b, a, misc::forward);
00052 }
00053
00054
00055 template<typename A, typename T>
00056 Element<A, T>
00057 forward_realtime(const Element<A, T>& a)
00058 {
00059 return do_forward_realtime(a.structure(), a);
00060 }
00061
00062 }
00063
00064 #endif // ! VCSN_ALGORITHMS_FORWARD_REALTIME_HXX