diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2016-01-05 11:32:53 -0700 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2016-01-05 13:06:54 -0700 |
| commit | 8d5998e0a6ddf24c5e5997e9bcbdeccb50926df9 (patch) | |
| tree | 8d463daf58aed425c466b774eb5744f84cc0ddda /layers/vk_layer_utils.cpp | |
| parent | 2c46e9dfa4ed9cb47932da713de155601705463e (diff) | |
| download | usermoji-8d5998e0a6ddf24c5e5997e9bcbdeccb50926df9.tar.xz | |
layers: LX255, Print readable version of VkAccessFlags
Also update related validation messages to indicate src/dest accessMask
Diffstat (limited to 'layers/vk_layer_utils.cpp')
| -rw-r--r-- | layers/vk_layer_utils.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/layers/vk_layer_utils.cpp b/layers/vk_layer_utils.cpp index a96c97e6..568d3b0c 100644 --- a/layers/vk_layer_utils.cpp +++ b/layers/vk_layer_utils.cpp @@ -25,8 +25,10 @@ */ #include <string.h> +#include <string> #include "vulkan/vulkan.h" #include "vk_layer_utils.h" +#include "vk_enum_string_helper.h" typedef struct _VULKAN_FORMAT_INFO { size_t size; @@ -575,3 +577,24 @@ unsigned int vk_format_get_channel_count(VkFormat format) { return vk_format_table[format].channel_count; } + +// Print readable FlagBits in FlagMask +std::string string_VkAccessFlags(VkAccessFlags accessMask) +{ + std::string result; + std::string separator; + + if (accessMask == 0) { + result = "[None]"; + } else { + result = "["; + for (auto i = 0; i < 32; i++) { + if (accessMask & (1 << i)) { + result = result + separator + string_VkAccessFlagBits((VkAccessFlagBits)(1 << i)); + separator = " | "; + } + } + result = result + "]"; + } + return result; +} |
