20 operator const VkDevice&()
const
22 return m_LogicalDevice;
25 const VkDevice& GetLogicalDevice()
const
27 return m_LogicalDevice;
29 const VkPhysicalDeviceFeatures& GetEnabledFeatures()
const
31 return m_EnabledFeatures;
33 const VkQueue& GetGraphicsQueue()
const
35 return m_GraphicsQueue;
37 const VkQueue& GetPresentQueue()
const
39 return m_PresentQueue;
41 const VkQueue& GetComputeQueue()
const
43 return m_ComputeQueue;
45 const VkQueue& GetTransferQueue()
const
47 return m_TransferQueue;
49 uint32_t GetGraphicsFamily()
const
51 return m_GraphicsFamily;
53 uint32_t GetPresentFamily()
const
55 return m_PresentFamily;
57 uint32_t GetComputeFamily()
const
59 return m_ComputeFamily;
61 uint32_t GetTransferFamily()
const
63 return m_TransferFamily;
66 static const std::vector<const char*> DeviceExtensions;
69 void CreateQueueIndices();
70 void CreateLogicalDevice();
75 VkDevice m_LogicalDevice = VK_NULL_HANDLE;
76 VkPhysicalDeviceFeatures m_EnabledFeatures = {};
78 VkQueueFlags m_SupportedQueues = {};
79 uint32_t m_GraphicsFamily = 0;
80 uint32_t m_PresentFamily = 0;
81 uint32_t m_ComputeFamily = 0;
82 uint32_t m_TransferFamily = 0;
84 VkQueue m_GraphicsQueue = VK_NULL_HANDLE;
85 VkQueue m_PresentQueue = VK_NULL_HANDLE;
86 VkQueue m_ComputeQueue = VK_NULL_HANDLE;
87 VkQueue m_TransferQueue = VK_NULL_HANDLE;
Module that manages the Vulkan m_Instance, Surface, Window and the renderpass structure.
Definition Graphics.hpp:32