YourCityInvadedByAliens
Documentation for code of the game
main_ai_thread.h
Go to the documentation of this file.
1 // File: main_ai_thread.h
2 // Copyright: 2021 (c) mrseakg@gmail.com
3 // Web-site: https://sea-kg.com
4 
5 #pragma once
6 
7 #include <string>
8 #include <mutex>
9 #include <deque>
10 #include <thread>
11 #include <vector>
12 #include <mutex>
13 
14 #include "ai_object.h"
15 
16 class MainAiThread {
17  public:
18  MainAiThread();
19  void start();
20  void stop();
21  void run();
22 
23  void addAiObject(AiObject *pAiObject);
24 
25  private:
26  void cleanDestroyed();
27 
28  std::string TAG;
29  bool m_bStop;
30  std::thread *m_pThread;
31  std::vector<AiObject *> m_vObjects;
32  std::mutex m_vMutexObjects;
33 };
MainAiThread::m_bStop
bool m_bStop
Definition: main_ai_thread.h:29
MainAiThread::m_vObjects
std::vector< AiObject * > m_vObjects
Definition: main_ai_thread.h:31
MainAiThread::TAG
std::string TAG
Definition: main_ai_thread.h:28
MainAiThread::start
void start()
Definition: main_ai_thread.cpp:16
MainAiThread::MainAiThread
MainAiThread()
Definition: main_ai_thread.cpp:10
MainAiThread::m_pThread
std::thread * m_pThread
Definition: main_ai_thread.h:30
MainAiThread::addAiObject
void addAiObject(AiObject *pAiObject)
Definition: main_ai_thread.cpp:38
MainAiThread::m_vMutexObjects
std::mutex m_vMutexObjects
Definition: main_ai_thread.h:32
MainAiThread::stop
void stop()
Definition: main_ai_thread.cpp:21
ai_object.h
MainAiThread::run
void run()
Definition: main_ai_thread.cpp:25
MainAiThread
Definition: main_ai_thread.h:16
AiObject
Definition: ai_object.h:9
MainAiThread::cleanDestroyed
void cleanDestroyed()
Definition: main_ai_thread.cpp:43