yasmine
region_model_impl.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 #ifndef REGION_MODEL_IMPL_2907B5BB_8F99_4B72_94E1_AFA0D1F8106E
12 #define REGION_MODEL_IMPL_2907B5BB_8F99_4B72_94E1_AFA0D1F8106E
13 
14 
15 #include "region_model.hpp"
17 
18 
19 namespace sxy
20 {
21 
22 
23 namespace model
24 {
25 
26 
29 class region_model_impl SX_FINAL:
30  public virtual region_model, public state_machine_element_model_impl
31 {
32 public:
35  explicit region_model_impl( const std::string& _name );
36  virtual ~region_model_impl() SX_NOEXCEPT SX_OVERRIDE;
37  SX_NO_COPY( region_model_impl )
39  row_const_state_models get_states() const SX_OVERRIDE;
41  void add_state( state_model_uptr _state ) SX_OVERRIDE;
43  raw_const_pseduostate_models get_pseudostates() const SX_OVERRIDE;
45  void add_pseudostate( pseudostate_model_uptr _region_pseudostate ) SX_OVERRIDE;
46 
47 
48 private:
49  state_models_uptr states_;
50  pseudostate_models_uptr pseudostates_;
51 };
52 
53 
54 }
55 
56 
57 }
58 
59 
60 #endif
sxe::SX_UNIQUE_PTR< pseudostate_model > pseudostate_model_uptr
Definition: pseudostate_model_fwd.hpp:28
sxe::SX_UNIQUE_PTR< state_model > state_model_uptr
Definition: state_model_fwd.hpp:28
Definition: algorithm_parameters.hpp:16
A region in the model.
std::vector< state_model_uptr > state_models_uptr
Definition: state_model_fwd.hpp:32
std::vector< pseudostate_model_uptr > pseudostate_models_uptr
Definition: pseudostate_model_fwd.hpp:32
std::vector< const pseudostate_model * > raw_const_pseduostate_models
Definition: pseudostate_model_fwd.hpp:33
std::vector< const state_model * > row_const_state_models
Definition: state_model_fwd.hpp:33