Marionette: Introduce concept and add other 3 component threads

We introduce the 4 main component threads of execution for Harikoff:
* Marionette: This is the resident hijacking module that makes Harikoff
  instances non-persons, if configured to allow hijacking.
* Director: :)
* Canvas: :)
* Subconscious: DB, storage and recall.
This commit is contained in:
2025-01-10 17:37:49 -04:00
parent 4a9d2cb546
commit 870b8de249
4 changed files with 168 additions and 15 deletions
+23
View File
@@ -0,0 +1,23 @@
#include <componentThread.h>
namespace hk {
namespace director {
ComponentThread director;
}
namespace simulator {
ComponentThread canvas;
}
namespace subconscious {
ComponentThread subconscious;
}
std::unordered_map<std::thread::id, ComponentThread&>
ComponentThread::componentThreads =
{
{director::director.thread.get_id(), director::director},
{simulator::canvas.thread.get_id(), simulator::canvas},
{subconscious::subconscious.thread.get_id(), subconscious::subconscious}
};
} // namespace hk