zengine/engine/modules/render/vulkan/include/vkn/backend.h
2024-08-23 22:13:05 +08:00

22 lines
489 B
C++

#pragma once
#include "thread/worker.h"
namespace vkn {
class Device;
class Instance;
class Backend {
protected:
Instance* mInstance;
Device* mDevice;
table<Name, CommandWorker*> 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;
};
};