Files
UwU-Engine/UwURenderEngine/RenderEngine/VkObjects/Device.hpp
T

26 lines
764 B
C++

#pragma once
#include <vector>
#include <vulkan/vulkan.h>
namespace VkObjects
{
class PhysicalDevice;
class Device final
{
VkDevice device_ = nullptr;
VkQueue graphics_queue_ = nullptr;
VkQueue present_queue_ = nullptr;
VkQueue transfer_queue_ = nullptr;
public:
explicit Device(const PhysicalDevice& physical_device, const std::vector<const char*>& device_extensions);
~Device();
inline VkDevice get_native() const { return device_; }
inline VkQueue get_graphics_queue() const { return graphics_queue_; }
inline VkQueue get_present_queue() const { return present_queue_; }
inline VkQueue get_transfer_queue() const { return transfer_queue_; }
};
}