2024-09-04 14:08:50 +10:00
|
|
|
#ifndef _MIND_H
|
|
|
|
|
#define _MIND_H
|
|
|
|
|
|
2025-01-04 07:33:15 -04:00
|
|
|
#include <config.h>
|
|
|
|
|
#include <thread>
|
2024-09-08 01:04:41 +10:00
|
|
|
|
2025-01-04 07:33:15 -04:00
|
|
|
#include <director/director.h>
|
|
|
|
|
#include <simulator/simulator.h>
|
2024-09-04 14:08:50 +10:00
|
|
|
|
2025-07-22 06:48:04 -04:00
|
|
|
namespace smo {
|
2025-01-04 11:32:37 -04:00
|
|
|
|
2024-09-04 14:08:50 +10:00
|
|
|
class Mind
|
|
|
|
|
{
|
2025-01-04 13:21:33 -04:00
|
|
|
public:
|
2025-07-30 09:09:38 -04:00
|
|
|
void initialize(void);
|
2025-01-04 13:21:33 -04:00
|
|
|
void execute(void);
|
2025-07-30 10:14:18 -04:00
|
|
|
void finalize(void);
|
2025-01-04 13:21:33 -04:00
|
|
|
|
2024-09-04 14:08:50 +10:00
|
|
|
public:
|
2025-01-04 07:33:15 -04:00
|
|
|
std::thread directorThread;
|
|
|
|
|
std::thread simulatorThread;
|
|
|
|
|
std::thread subconsciousThread;
|
2024-09-04 14:08:50 +10:00
|
|
|
|
2025-01-04 07:33:15 -04:00
|
|
|
director::Director director;
|
2025-01-04 18:17:19 -04:00
|
|
|
simulator::Simulator canvas;
|
2024-09-04 14:08:50 +10:00
|
|
|
};
|
|
|
|
|
|
2025-07-22 06:48:04 -04:00
|
|
|
} // namespace smo
|
2025-01-04 11:32:37 -04:00
|
|
|
|
2024-09-04 14:08:50 +10:00
|
|
|
#endif
|