55 return queue_family_index;
58 void submit(
const vk::SubmitInfo& submit_info,
const vk::Fence& fence);
62 void createInstance();
63 void pickPhysicalDevice();
67 vk::raii::Context context;
68 vk::raii::Instance instance;
69 vk::raii::PhysicalDevice physical_device =
nullptr;
70 vk::raii::Device device =
nullptr;
71 vk::raii::Queue compute_queue =
nullptr;
73 uint32_t queue_family_index = -1;
74 std::mutex queue_mutex;
uint32_t getQueueFamilyIndex() const
VulkanContext(VulkanContext &&)=delete
vk::raii::Instance & getInstanceRef()
vk::raii::Device & getDevice()
static VulkanContext & getInstance()
VulkanContext & operator=(VulkanContext &&)=delete
void submit(const vk::SubmitInfo &submit_info, const vk::Fence &fence)
VulkanContext(int device_id=-1)
vk::raii::Queue & getComputeQueue()
VulkanContext(const VulkanContext &)=delete
VulkanContext & operator=(const VulkanContext &)=delete
vk::raii::PhysicalDevice & getPhysicalDevice()
vk::raii::Context & getContext()