Browse Source

Vk: doc++

pull/491/head
Vladimír Vondruš 5 years ago
parent
commit
6acd7b72b1
  1. 2
      src/Magnum/Vk/Device.cpp
  2. 50
      src/Magnum/Vk/DeviceProperties.h

2
src/Magnum/Vk/Device.cpp

@ -82,7 +82,7 @@ DeviceCreateInfo::DeviceCreateInfo(DeviceProperties& deviceProperties, const Ext
/* Take the minimum of instance and device version. Instance version being
smaller than a device version happens mainly if there's a forced Vulkan
version via --magnum-vulkan version, which will be later used to cap available features. */
version via --magnum-vulkan-version, which will be later used to cap available features. */
_state->version = Version(Math::min(UnsignedInt(deviceProperties._instance->version()), UnsignedInt(deviceProperties.version())));
/* If there are any disabled extensions, sort them and save for later --

50
src/Magnum/Vk/DeviceProperties.h

@ -246,16 +246,9 @@ MAGNUM_VK_EXPORT Debug& operator<<(Debug& debug, MemoryHeapFlags value);
@m_since_latest
Wraps a @type_vk_keyword{PhysicalDevice} along with its (lazy-populated)
properties such as @type_vk_keyword{PhysicalDeviceProperties2},
@type_vk_keyword{PhysicalDeviceQueueFamilyProperties2} and
@type_vk_keyword{PhysicalDeviceMemoryProperties2}, which are a superset
of @type_vk_keyword{PhysicalDeviceProperties},
@type_vk_keyword{PhysicalDeviceQueueFamilyProperties} and
@type_vk_keyword{PhysicalDeviceMemoryProperties}.
See the @ref Vk-Device-creation "Device creation docs" for an example of using
this class for enumerating available devices and picking one of them.
properties. See the @ref Vk-Device-creation "Device creation docs" for an
example of using this class for enumerating available devices and picking one
of them.
@see @ref pickDevice(), @ref enumerateDevices()
*/
class MAGNUM_VK_EXPORT DeviceProperties {
@ -318,15 +311,16 @@ class MAGNUM_VK_EXPORT DeviceProperties {
* subset of device properties is queried, with the `pNext` member
* being @cpp nullptr @ce. Otherwise:
*
* - If Vulkan 1.2 is supported or the
* @vk_extension{KHR,driver_properties} extension is supported by
* the device, the `pNext` chain contains a
* @type_vk{PhysicalDeviceDriverProperties} structure and the
* @ref driver(), @ref driverName() and @ref driverInfo()
* - If Vulkan 1.2 or the @vk_extension{KHR,driver_properties}
* extension is supported by the device, the `pNext` chain
* contains @type_vk_keyword{PhysicalDeviceDriverProperties} and
* the @ref driver(), @ref driverName() and @ref driverInfo()
* properties are populated.
*
* @see @fn_vk_keyword{GetPhysicalDeviceProperties2},
* @fn_vk_keyword{GetPhysicalDeviceProperties}
* @fn_vk_keyword{GetPhysicalDeviceProperties},
* @type_vk_keyword{PhysicalDeviceProperties2},
* @type_vk_keyword{PhysicalDeviceProperties}
*/
const VkPhysicalDeviceProperties2& properties();
@ -419,12 +413,14 @@ class MAGNUM_VK_EXPORT DeviceProperties {
/**
* @brief Queue family properties
*
* Populated lazily on first request. If Vulkan 1.1 or the
* @vk_extension{KHR,get_physical_device_properties2} extension is not
* enabled on the originating instance, only the Vulkan 1.0 subset of
* device properties is queried.
* Populated lazily on first request. If Vulkan 1.1 is not supported
* and the @vk_extension{KHR,get_physical_device_properties2} extension
* is not enabled on the originating instance, only the Vulkan 1.0
* subset of device properties is queried.
* @see @fn_vk_keyword{GetPhysicalDeviceQueueFamilyProperties2},
* @fn_vk_keyword{GetPhysicalDeviceQueueFamilyProperties}
* @fn_vk_keyword{GetPhysicalDeviceQueueFamilyProperties},
* @type_vk_keyword{PhysicalDeviceQueueFamilyProperties2},
* @type_vk_keyword{PhysicalDeviceQueueFamilyProperties}
*/
Containers::ArrayView<const VkQueueFamilyProperties2> queueFamilyProperties();
@ -480,12 +476,14 @@ class MAGNUM_VK_EXPORT DeviceProperties {
/**
* @brief Device memory properties
*
* Populated lazily on first request. If Vulkan 1.1 or the
* @vk_extension{KHR,get_physical_device_properties2} extension is not
* enabled on the originating instance, only the Vulkan 1.0 subset of
* device properties is queried.
* Populated lazily on first request. If Vulkan 1.1 is not supported
* and the @vk_extension{KHR,get_physical_device_properties2} extension
* is not enabled on the originating instance, only the Vulkan 1.0
* subset of device properties is queried.
* @see @fn_vk_keyword{GetPhysicalDeviceMemoryProperties2},
* @fn_vk_keyword{GetPhysicalDeviceMemoryProperties}
* @fn_vk_keyword{GetPhysicalDeviceMemoryProperties},
* @type_vk_keyword{PhysicalDeviceMemoryProperties2},
* @type_vk_keyword{PhysicalDeviceMemoryProperties}
*/
const VkPhysicalDeviceMemoryProperties2& memoryProperties();

Loading…
Cancel
Save