yasmine
complex_state.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 COMPLEX_STATE_91053A02_65AF_40C3_B9F9_C283A743A85F
13 #define COMPLEX_STATE_91053A02_65AF_40C3_B9F9_C283A743A85F
14 
15 
16 #include "state.hpp"
17 
18 
19 namespace sxy
20 {
21 
22 
23 class complex_state_visitor;
24 
25 
27  public virtual state
28 {
29 public:
31  {
32  // Nothing to do...
33  }
34 
35 
36  virtual ~complex_state() SX_NOEXCEPT SX_OVERRIDE
37  {
38  // Nothing to do...
39  }
40 
41 
42  SX_NO_COPY(complex_state)
43  virtual void accept_complex_state_visitor( complex_state_visitor& _visitor ) const = 0;
44  virtual void add_deferred_event( const event_id& _event_id ) = 0;
45 };
46 
47 
48 }
49 
50 
51 #endif
Definition: complex_state.hpp:26
Definition: state.hpp:33
sxe::uint32_t event_id
The type alias for yasmine's event IDs.
Definition: event_id.hpp:26
complex_state()
Definition: complex_state.hpp:30
Definition: adapter_cpp11.hpp:21
virtual ~complex_state() SX_NOEXCEPT SX_OVERRIDE
Definition: complex_state.hpp:36
virtual void add_deferred_event(const event_id &_event_id)=0
Definition: complex_state_visitor.hpp:27
virtual void accept_complex_state_visitor(complex_state_visitor &_visitor) const =0