Vaucanson 1.4
int_z_fmp_transducer_structures.hh
00001 // int_z_fmp_transducer_structures.hh: this file is part of the Vaucanson project.
00002 //
00003 // Vaucanson, a generic library for finite state machines.
00004 //
00005 // Copyright (C) 2008, 2010 The Vaucanson Group.
00006 //
00007 // This program is free software; you can redistribute it and/or
00008 // modify it under the terms of the GNU General Public License
00009 // as published by the Free Software Foundation; either version 2
00010 // of the License, or (at your option) any later version.
00011 //
00012 // The complete GNU General Public Licence Notice can be found as the
00013 // `COPYING' file in the root directory.
00014 //
00015 // The Vaucanson Group consists of people listed in the `AUTHORS' file.
00016 //
00017 
00018 /*
00019  * CPP guard should not be inserted here as
00020  * VCSN_GRAPH_IMPL could be changed.
00021  */
00022 
00023 # include GRAPH_CONTEXT_HEADER_(int_z_automaton_structures.hh)
00024 
00025 # define AUTOMATON_CONTEXT int_z_automaton
00026 # define VCSN_CONTEXT_NAMESPACE namespace int_z_fmp_transducer
00027 
00028 namespace vcsn
00029 {
00030   namespace VCSN_GRAPH_IMPL
00031   {
00032     VCSN_CONTEXT_NAMESPACE
00033     {
00034 
00035       typedef AUTOMATON_CONTEXT::monoid_elt_t   first_monoid_elt_t;
00036       typedef first_monoid_elt_t::set_t         first_monoid_t;
00037       typedef first_monoid_elt_t::value_t       first_monoid_elt_value_t;
00038       typedef first_monoid_t::alphabet_t        first_alphabet_t;
00039       typedef first_monoid_t::monoid_rep_t      first_monoid_rep_t;
00040       typedef AUTOMATON_CONTEXT::series_rep_t   first_series_rep_t;
00041 
00042       typedef AUTOMATON_CONTEXT::monoid_elt_t   second_monoid_elt_t;
00043       typedef second_monoid_elt_t::set_t        second_monoid_t;
00044       typedef second_monoid_elt_t::value_t      second_monoid_elt_value_t;
00045       typedef second_monoid_t::alphabet_t       second_alphabet_t;
00046       typedef second_monoid_t::monoid_rep_t     second_monoid_rep_t;
00047       typedef AUTOMATON_CONTEXT::series_rep_t   second_series_rep_t;
00048 
00049     } // End of namespace VCSN_CONTEXT_NAMESPACE.
00050   } // End of namespace VCSN_GRAPH_IMPL
00051 } // End of namespace vcsn
00052 
00053 # include <vaucanson/contexts/free_monoid_product.thh>
00054 # include <vaucanson/contexts/z_semiring.thh>
00055 # include <vaucanson/contexts/generic_series.thh>
00056 # include <vaucanson/contexts/generic_automaton_impl.thh>
00057 # include <vaucanson/contexts/automaton.thh>
00058 # include <vaucanson/contexts/fmp_transducer.thh>
00059 
00060 /* Specializations */
00061 # include <vaucanson/algebra/implementation/monoid/free_monoid_int.hh>
00062 
00063 # include <vaucanson/contexts/fmp_transducer_maker.thh>
00064 
00065 # undef AUTOMATON_CONTEXT
00066 # undef VCSN_CONTEXT_NAMESPACE
00067