diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2015-07-31 13:47:42 -0600 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2015-07-31 14:17:24 -0600 |
| commit | ced5981fac1fe700973f4ce7ee13f6e5688442c2 (patch) | |
| tree | 92d45afc7d59e34ef48f1ecf1e75626f2c2a6bd9 | |
| parent | ea12567ed28031e1ed1a2240df145a63dc3b2354 (diff) | |
| download | usermoji-ced5981fac1fe700973f4ce7ee13f6e5688442c2.tar.xz | |
layers: Rework APIDump changes to fix windows compilation errors
MSVC compiler hated unions of structs with non-default constructors.
| -rwxr-xr-x | vk-layer-generate.py | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/vk-layer-generate.py b/vk-layer-generate.py index 51f4a27e..21b3f188 100755 --- a/vk-layer-generate.py +++ b/vk-layer-generate.py @@ -752,26 +752,17 @@ class APIDumpSubcommand(Subcommand): header_txt.append('{') header_txt.append(' if (ppMemBarriers) {') header_txt.append(' string tmp_str;') - header_txt.append(' uint32_t i;') - header_txt.append(' for (i = 0; i < memBarrierCount; i++) {') - header_txt.append('') - header_txt.append(' const union worker_union {') - header_txt.append(' VkStructureType type;') - header_txt.append(' VkMemoryBarrier mem;') - header_txt.append(' VkBufferMemoryBarrier buf;') - header_txt.append(' VkImageMemoryBarrier img;') - header_txt.append(' } *umb = (worker_union*)(ppMemBarriers[i]);') - header_txt.append('') - header_txt.append(' switch(umb->type)') + header_txt.append(' for (uint32_t i = 0; i < memBarrierCount; i++) {') + header_txt.append(' switch(*(VkStructureType*)ppMemBarriers[i])') header_txt.append(' {') header_txt.append(' case VK_STRUCTURE_TYPE_MEMORY_BARRIER:') - header_txt.append(' tmp_str = vk_print_vkmemorybarrier(&umb->mem, " ");') + header_txt.append(' tmp_str = vk_print_vkmemorybarrier((VkMemoryBarrier*)ppMemBarriers[i], " ");') header_txt.append(' break;') header_txt.append(' case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER:') - header_txt.append(' tmp_str = vk_print_vkbuffermemorybarrier(&umb->buf, " ");') + header_txt.append(' tmp_str = vk_print_vkbuffermemorybarrier((VkBufferMemoryBarrier*)ppMemBarriers[i], " ");') header_txt.append(' break;') header_txt.append(' case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER:') - header_txt.append(' tmp_str = vk_print_vkimagememorybarrier(&umb->img, " ");') + header_txt.append(' tmp_str = vk_print_vkimagememorybarrier((VkImageMemoryBarrier*)ppMemBarriers[i], " ");') header_txt.append(' break;') header_txt.append(' default:') header_txt.append(' break;') |
