class
PhysicalDeviceRepresents a read-only interface for the physical device for identification and querying its properties and capabilities.
Public functions
- auto getMemoryLocationInfo(MemoryLocation location) const -> MemoryLocationInfo
- Returns the details of the given memory location and what Vulkan memory types and heaps it maps to.
- auto getQueueTypeInfo(QueueType type) const -> QueueTypeInfo
- Returns the details of a particular queue type and what Vulkan queue family it maps to.
- auto isExtensionAvailable(const char* extension) const -> bool
- Returns
true
when the device extension is available on the device and can be enabled. - auto queryFormatCapabilities(Format format) const -> FormatCapabilities
- Returns the capabilities for the given tp::
Format. - auto querySurfaceCapabilitiesKHR(VkSurfaceKHR vkSurface) const -> SurfaceCapabilities
- Returns the capabilities of the device relating to the given VkSurfaceKHR Vulkan handle.
- auto vkGetPhysicalDeviceHandle() const -> VkPhysicalDeviceHandle
- Returns the associated Vulkan VkPhysicalDevice handle.
-
template<typename T>auto vkQueryFeatures() const -> const T&
- Queries the device for features defined in the Vulkan feature structure given as the template argument, for example
VkPhysicalDeviceFeatures
. -
template<typename T>auto vkQueryProperties() const -> const T&
- Queries the device for properties defined in the Vulkan property structure given as the template argument, for example
VkPhysicalDeviceProperties
.
Public variables
- Version apiVersion
- The highest Vulkan API version that the device implements.
- Version driverVersion
- The driver version number.
- const char* name
- The human readable name of the device.
- std::byte pipelineCacheUUID
- A universally unique identifier for the device. Can be used for identifying pipeline caches as they can only be used with a particular device.
- DeviceType type
- The type of the device, hinting at its performance characteristics.
- DeviceVendor vendor
- The device vendor, if identified. Otherwise, see
vendorID
. - uint32_t vendorID
- The device vendor ID.
Function documentation
template<typename T>
const T& tp:: PhysicalDevice:: vkQueryFeatures() const
Queries the device for features defined in the Vulkan feature structure given as the template argument, for example VkPhysicalDeviceFeatures
.
template<typename T>
const T& tp:: PhysicalDevice:: vkQueryProperties() const
Queries the device for properties defined in the Vulkan property structure given as the template argument, for example VkPhysicalDeviceProperties
.