00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef VCSN_TOOLS_DOT_FORMAT_HH
00018 # define VCSN_TOOLS_DOT_FORMAT_HH
00019
00020 #include <iostream>
00021 #include <string>
00022
00023 namespace vcsn {
00024
00025 namespace io {
00026
00027 struct dot
00028 {
00029 inline dot(const std::string& auto_name = "automaton");
00030
00031 template <typename Saver, typename Conv>
00032 void operator()(std::ostream& out,
00033 const Saver& s,
00034 const Conv& conv) const;
00035
00036 protected:
00037 std::string name_;
00038 };
00039
00040 struct transducer_dot
00041 {
00042 inline transducer_dot(const std::string& auto_name = "transducer");
00043
00044 template <typename Saver, typename Conv>
00045 void operator()(std::ostream& out,
00046 const Saver& s,
00047 const Conv& conv) const;
00048
00049 protected:
00050 std::string name_;
00051 };
00052
00053 }
00054
00055 }
00056
00057
00058 #ifndef VCSN_USE_INTERFACE_ONLY
00059 # include <vaucanson/tools/dot_format.hxx>
00060 #endif // VCSN_USE_INTERFACE_ONLY
00061
00062
00063 #endif // ! VCSN_TOOLS_DOT_FORMAT_HH