diff options
| author | Charles Giessen <charles@lunarg.com> | 2021-09-24 14:09:58 -0600 |
|---|---|---|
| committer | Mike Schuchardt <mikes@lunarg.com> | 2022-01-26 14:29:01 -0800 |
| commit | 3ed7fe55cdd334a552ffd33d6d8d80496ecc96cf (patch) | |
| tree | e3eec59fdac475913e7d96bd6a12af878910573a /vulkaninfo | |
| parent | 5ac40c6583b7d47467545a01af0a52eedc7ae9b9 (diff) | |
| download | usermoji-3ed7fe55cdd334a552ffd33d6d8d80496ecc96cf.tar.xz | |
vulkaninfo: Update to 1.3
Only changes are making the autogen print all required structs, and
moving from using the EXT version of tool properties to the core version.
Diffstat (limited to 'vulkaninfo')
| -rw-r--r-- | vulkaninfo/generated/vulkaninfo.hpp | 39 | ||||
| -rw-r--r-- | vulkaninfo/vulkaninfo.cpp | 2 |
2 files changed, 40 insertions, 1 deletions
diff --git a/vulkaninfo/generated/vulkaninfo.hpp b/vulkaninfo/generated/vulkaninfo.hpp index b852b1f5..ad0e0851 100644 --- a/vulkaninfo/generated/vulkaninfo.hpp +++ b/vulkaninfo/generated/vulkaninfo.hpp @@ -994,6 +994,37 @@ void DumpVkSurfaceTransformFlagBitsKHR(Printer &p, std::string name, VkSurfaceTr p.PrintKeyString(name, strings.at(0), width); } +std::vector<const char *>VkToolPurposeFlagBitsGetStrings(VkToolPurposeFlagBits value) { + std::vector<const char *> strings; + if (value == 0) { strings.push_back("None"); return strings; } + if (0x1 & value) strings.push_back("TOOL_PURPOSE_VALIDATION_BIT"); + if (0x2 & value) strings.push_back("TOOL_PURPOSE_PROFILING_BIT"); + if (0x4 & value) strings.push_back("TOOL_PURPOSE_TRACING_BIT"); + if (0x8 & value) strings.push_back("TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT"); + if (0x10 & value) strings.push_back("TOOL_PURPOSE_MODIFYING_FEATURES_BIT"); + if (0x20 & value) strings.push_back("TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT"); + if (0x40 & value) strings.push_back("TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT"); + return strings; +} +void DumpVkToolPurposeFlags(Printer &p, std::string name, VkToolPurposeFlags value, int width = 0) { + if (p.Type() == OutputType::json) { p.PrintKeyValue(name, value); return; } + if (static_cast<VkToolPurposeFlagBits>(value) == 0) { + ArrayWrapper arr(p, name, 0); + if (p.Type() != OutputType::vkconfig_output) + p.SetAsType().PrintString("None"); + return; + } + auto strings = VkToolPurposeFlagBitsGetStrings(static_cast<VkToolPurposeFlagBits>(value)); + ArrayWrapper arr(p, name, strings.size()); + for(auto& str : strings){ + p.SetAsType().PrintString(str); + } +} +void DumpVkToolPurposeFlagBits(Printer &p, std::string name, VkToolPurposeFlagBits value, int width = 0) { + auto strings = VkToolPurposeFlagBitsGetStrings(value); + p.PrintKeyString(name, strings.at(0), width); +} + void DumpVkDrmFormatModifierProperties2EXT(Printer &p, std::string name, VkDrmFormatModifierProperties2EXT &obj) { ObjectWrapper object{p, name}; p.PrintKeyValue("drmFormatModifier", obj.drmFormatModifier, 27); @@ -1986,6 +2017,14 @@ void DumpVkPhysicalDeviceTimelineSemaphoreProperties(Printer &p, std::string nam ObjectWrapper object{p, name}; p.PrintKeyValue("maxTimelineSemaphoreValueDifference", obj.maxTimelineSemaphoreValueDifference, 35); } +void DumpVkPhysicalDeviceToolProperties(Printer &p, std::string name, VkPhysicalDeviceToolProperties &obj) { + ObjectWrapper object{p, name}; + p.PrintKeyString("name", obj.name, 16); + p.PrintKeyString("version", obj.version, 16); + DumpVkToolPurposeFlags(p, "purposes", obj.purposes, 16); + p.PrintKeyString("description", obj.description, 16); + p.PrintKeyString("layer", obj.layer, 16); +} void DumpVkPhysicalDeviceTransformFeedbackFeaturesEXT(Printer &p, std::string name, VkPhysicalDeviceTransformFeedbackFeaturesEXT &obj) { ObjectWrapper object{p, name}; p.PrintKeyBool("transformFeedback", static_cast<bool>(obj.transformFeedback), 17); diff --git a/vulkaninfo/vulkaninfo.cpp b/vulkaninfo/vulkaninfo.cpp index 1e24ce81..01ed1743 100644 --- a/vulkaninfo/vulkaninfo.cpp +++ b/vulkaninfo/vulkaninfo.cpp @@ -550,7 +550,7 @@ void GpuDumpToolingInfo(Printer &p, AppGpu &gpu) { p.SetSubHeader(); ObjectWrapper obj(p, "Tooling Info"); for (auto tool : tools) { - DumpVkPhysicalDeviceToolPropertiesEXT(p, tool.name, tool); + DumpVkPhysicalDeviceToolProperties(p, tool.name, tool); p.AddNewline(); } } |
