usual_io.hh

00001 // usual_io.hh: this file is part of the Vaucanson project.
00002 //
00003 // Vaucanson, a generic library for finite state machines.
00004 //
00005 // Copyright (C) 2001, 2002, 2003, 2004 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 #ifndef VCSN_TOOLS_USUAL_IO_HH
00018 # define VCSN_TOOLS_USUAL_IO_HH
00019 
00020 # include <string>
00021 
00022 namespace vcsn
00023 {
00024   namespace io
00025   {
00026     struct usual_converter_exp
00027     {
00028       template<typename Auto>
00029       typename Auto::series_set_elt_t operator()(const Auto&, const std::string& lbl) const;
00030       template<typename Auto>
00031       std::string operator()(const Auto&, const typename Auto::series_set_elt_t& exp_series) const;
00032     };
00033 
00034     template<typename ExpType>
00035     struct usual_converter_poly
00036     {
00037       template<typename Auto>
00038       typename Auto::series_set_elt_t operator()(const Auto&, const std::string& lbl) const;
00039       template<typename Auto>
00040       std::string operator()(const Auto&, const typename Auto::series_set_elt_t& poly_series) const;
00041     };
00042   }
00043 }
00044 
00045 
00046 #ifndef VCSN_USE_INTERFACE_ONLY
00047     # include <vaucanson/tools/usual_io.hxx>
00048 #endif // VCSN_USE_INTERFACE_ONLY
00049 
00050 
00051 #endif // ! VCSN_TOOLS_USUAL_IO_HH

Generated on Fri Jul 28 12:18:55 2006 for Vaucanson by  doxygen 1.4.6