Samchon Framework for CPP  1.0.0
ExternalSystemArrayBase.hpp
1 #pragma once
2 #include <samchon/API.hpp>
3 
4 #include <vector>
5 #include <memory>
6 #include <samchon/library/RWMutex.hpp>
7 
8 namespace samchon
9 {
10 namespace templates
11 {
12 namespace external
13 {
14  class ExternalSystem;
15 
16 namespace base
17 {
18  class ExternalSystemArrayBase
19  {
20  private:
21  library::RWMutex mtx;
22 
23  public:
24  virtual auto _Get_children() const -> std::vector<std::shared_ptr<ExternalSystem>> = 0;
25 
26  auto getMutex() -> library::RWMutex& { return mtx; };
27  auto getMutex() const -> const library::RWMutex& { return mtx; };
28  };
29 };
30 };
31 };
32 };