1#ifndef VULKAN_LOGICALDEVICE
2#define VULKAN_LOGICALDEVICE
4#include <vulkan/vulkan.h>
10namespace Vulkan {
class LogicalDevice;
class PhysicalDevice;
enum class QueueFamily;
class Queue; }
46 std::map<QueueFamily, Queue> queues;
A logical device is an abstraction of the physical GPU which we can mainly use to send commands.
Definition: LogicalDevice.h:15
const VkDevice & operator+() const
Returns a const reference to the underlying Vulkan VkDevice object.
Definition: LogicalDevice.cpp:69
const Queue & operator[](QueueFamily queueFamily) const
Returns the queue of the specified queue family.
Definition: LogicalDevice.cpp:75
LogicalDevice & operator=(LogicalDevice &&)=delete
~LogicalDevice()
Definition: LogicalDevice.cpp:62
LogicalDevice & operator=(const LogicalDevice &)=delete
LogicalDevice(const LogicalDevice &)=delete
LogicalDevice(const PhysicalDevice &physicalGpu)
Definition: LogicalDevice.cpp:11
LogicalDevice(LogicalDevice &&)=delete
Represents the GPU (or any other device) that will be used with Vulkan to perform computer graphics.
Definition: PhysicalDevice.h:17
A Queue is an abstraction over the VkQueue Vulkan object. A Queue is where commands from the CPU to t...
Definition: Queue.h:13
Types of queue families.
Definition: Animations.h:17
QueueFamily
Definition: QueueFamily.h:8