Function gpa::metrics::GetQueryManagerRequiredDeviceExtensions

Function Documentation

Result gpa::metrics::GetQueryManagerRequiredDeviceExtensions(gpa::metrics::GraphicsApi const graphicsApi, uint32_t *pDeviceExtensionCount, DeviceExtension *pDeviceExtensions)

Used to determine, for the specified graphics API, if there are any required device extensions/features that must be supported and enabled on the specified device when IQueryManager::Initialize is called. Has similar usage behavior to the Vulkan vkEnumerateDeviceExtensionProperties function.

Note

Upon success, if pDeviceExtensions is null, the value pointed to by pDeviceExtensionCount is set to the number of required device extensions and kSuccess is returned. Otherwise, the value pointed to by pDeviceExtensionCount must equal the number of elements in the pDeviceExtensions array and upon return it is set to the number of required device extensions copied to pDeviceExtensions. When the array is not large enough to copy all of them, kIncomplete is returned instead of kSuccess.

Note

This function has the same behavior as calling the GetQueryManagerRequiredGraphicsApiExtensions function with the extensionType set to GraphicsApiExtensionType::kDevice.

Parameters
  • graphicsApi -- [in] The graphics API to check for any required device extensions.

  • pDeviceExtensionCount -- [inout] Pointer to an variable related to the number of device extensions available or queried. Review notes for usage details.

  • pDeviceExtensions -- [inout] Pointer to an array of DeviceExtension structs or null. Review notes for usage details.

Returns

Upon success, kSuccess or kIncomplete is returned. Review notes for additional actions taken.