#pragma once #include "thread/worker.h" namespace vkn { class Device; class Instance; class Backend { protected: Instance* mInstance; Device* mDevice; table mWorkerMap; public: Backend(string_view appName); ~Backend(); void InitWorker(Name name, VkCommandPoolCreateFlags flag); CommandWorker* GetWorker(Name name); public: static CommandWorker* TransferWorker; static CommandWorker* RenderWorker; static CommandWorker* PresentWorker; }; };