Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef SPOT_TGBAALGOS_RUNDOTDEC_HH
00023 # define SPOT_TGBAALGOS_RUNDOTDEC_HH
00024
00025 #include <map>
00026 #include <utility>
00027 #include <list>
00028 #include "dottydec.hh"
00029 #include "emptiness.hh"
00030
00031 namespace spot
00032 {
00037 class tgba_run_dotty_decorator: public dotty_decorator
00038 {
00039 public:
00040 tgba_run_dotty_decorator(const tgba_run* run);
00041 virtual ~tgba_run_dotty_decorator();
00042
00043 virtual std::string state_decl(const tgba* a, const state* s, int n,
00044 tgba_succ_iterator* si,
00045 const std::string& label);
00046 virtual std::string link_decl(const tgba* a,
00047 const state* in_s, int in,
00048 const state* out_s, int out,
00049 const tgba_succ_iterator* si,
00050 const std::string& label);
00051 private:
00052 const tgba_run* run_;
00053 typedef std::pair<tgba_run::steps::const_iterator, int> step_num;
00054 typedef std::list<step_num> step_set;
00055 typedef std::map<const state*, std::pair<step_set, step_set>,
00056 spot::state_ptr_less_than> step_map;
00057 step_map map_;
00058 };
00059 }
00060
00061 #endif // SPOT_TGBAALGOS_RUNDOTDEC_HH