void WaitForIdle()
Definition: LogicalDevice.cpp:130
const VkSurfaceKHR m_Surface
Definition: LogicalDevice.h:38
VkQueueFlags m_SupportedQueues
Queue families.
Definition: LogicalDevice.h:47
const class Instance * m_Instance
Definition: LogicalDevice.h:36
UINT32 m_GraphicsFamily
Definition: LogicalDevice.h:48
const VkDevice & GetVkDevice() const
Definition: LogicalDevice.h:18
A physical device represents the Vulkan physical device (the GPU) that we are currently using...
Definition: PhyscialDevice.h:11
VkQueue m_GraphicsQueue
Handle for the graphics queue.
Definition: LogicalDevice.h:41
A logical device represents the application view of the device.
Definition: LogicalDevice.h:10
The instance is a representation of this application graphics instance in Vulkan. ...
Definition: Instance.h:11
void CreateQueueIndecies()
Get what queue Indecies/families this device should use.
Definition: LogicalDevice.cpp:18
const VkQueue & GetPresentQueue() const
Definition: LogicalDevice.h:21
const class PhysicalDevice * m_PhysicalDevice
Definition: LogicalDevice.h:37
LogicalDevice(class Instance *t_Instance, class PhysicalDevice *t_PhysDevice, const VkSurfaceKHR t_Surface)
Definition: LogicalDevice.cpp:8
~LogicalDevice()
Definition: LogicalDevice.cpp:135
const VkQueue & GetGraphicsQueue() const
Definition: LogicalDevice.h:20
UINT32 GetPresentFamily() const
Definition: LogicalDevice.h:26
const VkQueueFlags & GetSupportedQueues() const
Definition: LogicalDevice.h:23
VkDevice m_Device
The vulkan logical device.
Definition: LogicalDevice.h:34
UINT32 GetGraphicsFamily() const
Definition: LogicalDevice.h:25
UINT32 m_ComputeFamily
Definition: LogicalDevice.h:50
VkQueue m_PresentQueue
Handle to the presentation queue.
Definition: LogicalDevice.h:44
uint32_t UINT32
Definition: FlingTypes.h:10
UINT32 m_PresentFamily
Definition: LogicalDevice.h:49
UINT32 m_TransferFamily
Definition: LogicalDevice.h:51
void CreateDevice()
Create the Vk resoruces for this logical device.
Definition: LogicalDevice.cpp:79