nngn
|
Aggregate type for information about a physical device. More...
#include <device.h>
Public Member Functions | |
void | init (VkSurfaceKHR s, VkPhysicalDevice d) |
Initializes all members. | |
std::tuple< bool, std::uint32_t, std::uint32_t > | find_queues () const |
Finds queue families that support graphics and presentation. | |
Public Attributes | |
VkPhysicalDevice | dev = {} |
Graphics::DeviceInfo | info = {} |
std::vector< Graphics::Extension > | extensions = {} |
std::vector< Graphics::QueueFamily > | queue_families = {} |
Private Member Functions | |
bool | can_present (VkSurfaceKHR surface, std::size_t queue_family) const |
Aggregate type for information about a physical device.
|
private |
std::tuple< bool, std::uint32_t, std::uint32_t > nngn::DeviceInfo::find_queues | ( | ) | const |
Finds queue families that support graphics and presentation.
{found, graphics, present}
. If a single family supports both types of operations, it is preferred and graphics
and present
will have the same value. void nngn::DeviceInfo::init | ( | VkSurfaceKHR | s, |
VkPhysicalDevice | d ) |
Initializes all members.
Must be called before any other operation.
VkPhysicalDevice nngn::DeviceInfo::dev = {} |
std::vector<Graphics::Extension> nngn::DeviceInfo::extensions = {} |
Graphics::DeviceInfo nngn::DeviceInfo::info = {} |
std::vector<Graphics::QueueFamily> nngn::DeviceInfo::queue_families = {} |