vulkaninfo: Add VK_EXT_host_query_reset
authorJeremy Kniager <jeremyk@lunarg.com>
Mon, 29 Apr 2019 20:38:50 +0000 (14:38 -0600)
committerjeremyk-lunarg <jeremyk@lunarg.com>
Wed, 29 May 2019 08:15:55 +0000 (02:15 -0600)
Added output for the following structures from
extension VK_EXT_host_query_reset:

        VkPhysicalDeviceHostQueryResetFeaturesEXT

Change-Id: Ibc3dce6261ff5e46926d4f969562d377c74f23f5

vulkaninfo/vulkaninfo.c

index 13e8137..e4bed85 100644 (file)
@@ -1096,7 +1096,9 @@ static void AppGpuInit(struct AppGpu *gpu, struct AppInstance *inst, uint32_t id
             {.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT,
              .mem_size = sizeof(VkPhysicalDeviceBufferAddressFeaturesEXT)},
             {.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT,
-             .mem_size = sizeof(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT)}};
+             .mem_size = sizeof(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT)},
+            {.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT,
+             .mem_size = sizeof(VkPhysicalDeviceHostQueryResetFeaturesEXT)}};
 
         uint32_t chain_info_len = ARRAY_SIZE(chain_info);
 
@@ -3214,6 +3216,23 @@ static void AppGpuDumpFeatures(const struct AppGpu *gpu, FILE *out) {
                     printf("=========================================\n");
                     printf("\tycbcrImageArrays = %" PRIuLEAST32 "\n", ycbcr_image_arrays_features->ycbcrImageArrays);
                 }
+            } else if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT &&
+                       CheckPhysicalDeviceExtensionIncluded(VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, gpu->device_extensions,
+                                                            gpu->device_extension_count)) {
+                VkPhysicalDeviceHostQueryResetFeaturesEXT *host_query_reset_features =
+                    (VkPhysicalDeviceHostQueryResetFeaturesEXT *)structure;
+                if (html_output) {
+                    fprintf(out, "\n\t\t\t\t\t<details><summary>VkPhysicalDeviceHostQueryResetFeatures</summary>\n");
+                    fprintf(out,
+                            "\t\t\t\t\t\t<details><summary>hostQueryReset = <span class='val'>%" PRIuLEAST32
+                            "</span></summary></details>\n",
+                            host_query_reset_features->hostQueryReset);
+                    fprintf(out, "\t\t\t\t\t</details>\n");
+                } else if (human_readable_output) {
+                    printf("\nVkPhysicalDeviceHostQueryResetFeatures:\n");
+                    printf("=======================================\n");
+                    printf("\thostQueryReset = %" PRIuLEAST32 "\n", host_query_reset_features->hostQueryReset);
+                }
             }
             place = structure->pNext;
         }