31#include <condition_variable>
64 std::queue<std::function<void()>>
tasks;
120 void update(
size_t threadNum)
noexcept;
Kale::Application * createApplication()
std::string getAssetFolderPath() const
std::condition_variable threadSyncCondVar
static std::vector< std::function< void()> > nodeCleanupFuncs
std::condition_variable renderSyncCondVar
static void addNodeSetupFunction(std::function< void()> func)
void runTaskOnMainThread(std::function< void()> task)
std::shared_ptr< Scene > presentedScene
const std::string applicationName
std::shared_ptr< Scene > sceneToPresent
std::mutex taskManagerMutex
std::list< std::thread > updateThreads
std::mutex threadSyncMutex
static void addNodeCleanupFunction(std::function< void()> func)
static std::vector< std::function< void()> > nodeSetupFuncs
void presentScene(const std::shared_ptr< Scene > &scene)
size_t getNumUpdateThreads() const noexcept
std::queue< std::function< void()> > tasks
Window & getWindow() noexcept
std::shared_ptr< Scene > getPresentedScene() noexcept
void update(size_t threadNum) noexcept