yasmine
vertex_visitor.hpp
Go to the documentation of this file.
1 // //
3 // This file is part of the Seadex yasmine ecosystem (http://yasmine.seadex.de). //
4 // Copyright (C) 2016-2017 Seadex GmbH //
5 // //
6 // Licensing information is available in the folder "license" which is part of this distribution. //
7 // The same information is available on the www @ http://yasmine.seadex.de/Licenses.html. //
8 // //
10 
11 
12 #ifndef VERTEX_VISITOR_D71F9484_F3C5_4DEF_BC94_F273B6223268
13 #define VERTEX_VISITOR_D71F9484_F3C5_4DEF_BC94_F273B6223268
14 
15 
16 #include "essentials/non_copyable.hpp"
17 
18 
19 namespace sxy
20 {
21 
22 
23 class composite_state;
24 class final_state;
25 class simple_state;
26 class choice;
27 class deep_history;
28 class entry_point;
29 class exit_point;
30 class fork;
31 class initial_pseudostate;
32 class join;
33 class junction;
34 class shallow_history;
35 class terminate_pseudostate;
36 
37 
39 {
40 public:
42  {
43  // Nothing to do...
44  }
45 
46 
47  virtual ~vertex_visitor() SX_NOEXCEPT
48  {
49  // Nothing to do...
50  }
51 
52 
53  SX_NO_COPY(vertex_visitor)
54  virtual void visit( composite_state& _composite_state ) = 0;
55  virtual void visit( simple_state& _simple_state ) = 0;
56  virtual void visit( final_state& _final_state ) = 0;
57  virtual void visit( initial_pseudostate& _initial_pseudostate ) = 0;
58  virtual void visit( choice& _choice ) = 0;
59  virtual void visit( junction& _junction ) = 0;
60  virtual void visit( join& _join ) = 0;
61  virtual void visit( fork& _fork ) = 0;
62  virtual void visit( entry_point& _entry_point ) = 0;
63  virtual void visit( exit_point& _exit_point ) = 0;
64  virtual void visit( deep_history& _deep_history ) = 0;
65  virtual void visit( shallow_history& _shallow_history ) = 0;
66  virtual void visit( terminate_pseudostate& _terminate_pseudostate ) = 0;
67 };
68 
69 
70 }
71 
72 
73 #endif
virtual void visit(composite_state &_composite_state)=0
Definition: deep_history.hpp:24
Definition: composite_state.hpp:28
Definition: initial_pseudostate.hpp:27
vertex_visitor()
Definition: vertex_visitor.hpp:41
Definition: exit_point.hpp:24
Definition: fork.hpp:24
Definition: terminate_pseudostate.hpp:24
Definition: adapter_cpp11.hpp:21
Definition: vertex_visitor.hpp:38
Definition: final_state.hpp:23
Definition: junction.hpp:24
Definition: simple_state.hpp:23
Definition: choice.hpp:24
Definition: join.hpp:24
virtual ~vertex_visitor() SX_NOEXCEPT
Definition: vertex_visitor.hpp:47
Definition: entry_point.hpp:24
Definition: shallow_history.hpp:24