00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef VCSN_ALGORITHMS_PROJECTION_HH
00018 # define VCSN_ALGORITHMS_PROJECTION_HH
00019
00030 #include <vaucanson/automata/concept/transducer.hh>
00031
00032 namespace vcsn {
00033
00036
00037 template <class ST, class TT,
00038 class SA, class TA>
00039 void
00040 output_projection(const Element<ST, TT>&,
00041 Element<SA, TA>&);
00042
00043 template <class S, class T>
00044 typename output_projection_helper<S, T>::ret
00045 output_projection(const Element<S, T>&,
00046 std::map<hstate_t, hstate_t>& m);
00047
00048 template <class S, class T>
00049 typename output_projection_helper<S, T>::ret
00050 output_projection(const Element<S, T>&);
00051
00052 template <class S, class T>
00053 typename input_projection_helper<S, T>::ret
00054 input_projection(const Element<S, T>&);
00055
00058 }
00059
00060 # ifndef VCSN_USE_INTERFACE_ONLY
00061 # include <vaucanson/algorithms/projection.hxx>
00062 # endif // VCSN_USE_INTERFACE_ONLY
00063
00064 #endif // ! VCSN_ALGORITHMS_PROJECTION_HH