- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

# z_transducer_structures.hh

    00001 // vcsn_z_tdc.hh: this file is part of the Vaucanson project.
    00002 //
    00003 // Vaucanson, a generic library for finite state machines.
    00004 //
    00005 // Copyright (C) 2007 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 #ifndef VCSN_Z_TRANSDUCER_STRUCTURES_HH
    00019 # define VCSN_Z_TRANSDUCER_STRUCTURES_HH
    00020
    00021 # include <vaucanson/z_automaton_structures.hh>
    00022 # include <vaucanson/boolean_automaton_structures.hh>
    00023
    00024 # define AUTOMATON_CONTEXT z_automaton
    00025 # define VCSN_CONTEXT_NAMESPACE namespace z_transducer
    00026
    00027 # include <vaucanson/contexts/char_letter.thh>
    00028 # include <vaucanson/contexts/dynamic_alphabet.thh>
    00029 # include <vaucanson/contexts/free_monoid.thh>
    00030
    00031 namespace vcsn
    00032 {
    00033   VCSN_CONTEXT_NAMESPACE
    00034   {
    00035     typedef AUTOMATON_CONTEXT::semiring_elt_t   output_semiring_elt_t;
    00036     typedef output_semiring_elt_t::set_t        output_semiring_t;
    00037     typedef output_semiring_elt_t::value_t      output_semiring_elt_value_t;
    00038
    00039     typedef AUTOMATON_CONTEXT::rat_exp_t        output_series_set_elt_t;
    00040     typedef output_series_set_elt_t::set_t      output_series_set_t;
    00041     typedef output_series_set_elt_t::value_t    output_series_set_elt_value_t;
    00042   } // End of namespace VCSN_CONTEXT_NAMESPACE.
    00043 } // namespace vcsn
    00044
    00045 # include <vaucanson/contexts/ratseries_semiring.thh>
    00046 # include <vaucanson/contexts/polynom_series.thh>
    00047 # include <vaucanson/contexts/generic_automaton_impl.thh>
    00048 # include <vaucanson/contexts/transducer.thh>
    00049
    00050 namespace vcsn
    00051 {
    00052   VCSN_CONTEXT_NAMESPACE
    00053   {
    00054     AUTOMATON_TYPES_EXACT(automaton_t);
    00055     AUTOMATON_FREEMONOID_TYPES_EXACT(automaton_t);
    00056   } // End of namespace VCSN_CONTEXT_NAMESPACE
    00057 } // End of namespace vcsn
    00058
    00059 # include <vaucanson/contexts/transducer_maker.thh>
    00060
    00061 # undef AUTOMATON_CONTEXT
    00062 # undef VCSN_CONTEXT_NAMESPACE
    00063
    00064 #endif // !VCSN_Z_TRANSDUCER_STRUCTURES_HH