Tweak serialisation to be equivalent but have nicer strings. Refs #220

This commit is contained in:
baldurk
2016-03-11 22:22:46 +01:00
parent c100e1b6a0
commit a8463bf1d2
3 changed files with 26 additions and 22 deletions
+18 -14
View File
@@ -3231,10 +3231,10 @@ void Serialiser::Serialise(const char *name, VkSubpassDependency &el)
Serialise("srcSubpass", el.srcSubpass);
Serialise("destSubpass", el.dstSubpass);
Serialise("srcStageMask", el.srcStageMask);
Serialise("destStageMask", el.dstStageMask);
Serialise("srcAccessMask", el.srcAccessMask);
Serialise("dstAccessMask", el.dstAccessMask);
Serialise("srcStageMask", (VkPipelineStageFlagBits &)el.srcStageMask);
Serialise("destStageMask", (VkPipelineStageFlagBits &)el.dstStageMask);
Serialise("srcAccessMask", (VkAccessFlagBits &)el.srcAccessMask);
Serialise("dstAccessMask", (VkAccessFlagBits &)el.dstAccessMask);
Serialise("dependencyFlags", (VkDependencyFlagBits &)el.dependencyFlags);
}
@@ -3861,8 +3861,8 @@ void Serialiser::Serialise(const char *name, VkMemoryBarrier &el)
RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_MEMORY_BARRIER);
SerialiseNext(this, el.sType, el.pNext);
Serialise("srcAccessMask", el.srcAccessMask);
Serialise("dstAccessMask", el.dstAccessMask);
Serialise("srcAccessMask", (VkAccessFlagBits &)el.srcAccessMask);
Serialise("dstAccessMask", (VkAccessFlagBits &)el.dstAccessMask);
}
template<>
@@ -3873,10 +3873,12 @@ void Serialiser::Serialise(const char *name, VkBufferMemoryBarrier &el)
RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER);
SerialiseNext(this, el.sType, el.pNext);
Serialise("srcAccessMask", el.srcAccessMask);
Serialise("dstAccessMask", el.dstAccessMask);
Serialise("srcQueueFamilyIndex", el.srcQueueFamilyIndex);
Serialise("dstQueueFamilyIndex", el.dstQueueFamilyIndex);
Serialise("srcAccessMask", (VkAccessFlagBits &)el.srcAccessMask);
Serialise("dstAccessMask", (VkAccessFlagBits &)el.dstAccessMask);
// serialise as signed because then QUEUE_FAMILY_IGNORED is -1 and queue
// family index won't be legitimately larger than 2 billion
Serialise("srcQueueFamilyIndex", (int32_t &)el.srcQueueFamilyIndex);
Serialise("dstQueueFamilyIndex", (int32_t &)el.dstQueueFamilyIndex);
SerialiseObject(VkBuffer, "buffer", el.buffer);
Serialise("offset", el.offset);
Serialise("size", el.size);
@@ -3890,12 +3892,14 @@ void Serialiser::Serialise(const char *name, VkImageMemoryBarrier &el)
RDCASSERT(m_Mode < WRITING || el.sType == VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER);
SerialiseNext(this, el.sType, el.pNext);
Serialise("srcAccessMask", el.srcAccessMask);
Serialise("dstAccessMask", el.dstAccessMask);
Serialise("srcAccessMask", (VkAccessFlagBits &)el.srcAccessMask);
Serialise("dstAccessMask", (VkAccessFlagBits &)el.dstAccessMask);
Serialise("oldLayout", el.oldLayout);
Serialise("newLayout", el.newLayout);
Serialise("srcQueueFamilyIndex", el.srcQueueFamilyIndex);
Serialise("dstQueueFamilyIndex", el.dstQueueFamilyIndex);
// serialise as signed because then QUEUE_FAMILY_IGNORED is -1 and queue
// family index won't be legitimately larger than 2 billion
Serialise("srcQueueFamilyIndex", (int32_t &)el.srcQueueFamilyIndex);
Serialise("dstQueueFamilyIndex", (int32_t &)el.dstQueueFamilyIndex);
SerialiseObject(VkImage, "image", el.image);
Serialise("subresourceRange", el.subresourceRange);
}
@@ -1642,8 +1642,8 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier(
const VkImageMemoryBarrier* pImageMemoryBarriers)
{
SERIALISE_ELEMENT(ResourceId, cmdid, GetResID(commandBuffer));
SERIALISE_ELEMENT(VkPipelineStageFlags, src, srcStageMask);
SERIALISE_ELEMENT(VkPipelineStageFlags, dest, destStageMask);
SERIALISE_ELEMENT(VkPipelineStageFlagBits, srcStages, (VkPipelineStageFlagBits)srcStageMask);
SERIALISE_ELEMENT(VkPipelineStageFlagBits, destStages, (VkPipelineStageFlagBits)destStageMask);
if(m_State < WRITING)
m_LastCmdBufferID = cmdid;
@@ -1690,7 +1690,7 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier(
if(ShouldRerecordCmd(cmdid) && InRerecordRange())
{
commandBuffer = RerecordCmdBuf(cmdid);
ObjDisp(commandBuffer)->CmdPipelineBarrier(Unwrap(commandBuffer), src, dest, flags,
ObjDisp(commandBuffer)->CmdPipelineBarrier(Unwrap(commandBuffer), (VkPipelineStageFlags)srcStages, (VkPipelineStageFlags)destStages, flags,
memCount, memBarriers,
(uint32_t)bufBarriers.size(), &bufBarriers[0],
(uint32_t)imgBarriers.size(), &imgBarriers[0]);
@@ -1703,7 +1703,7 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier(
{
commandBuffer = GetResourceManager()->GetLiveHandle<VkCommandBuffer>(cmdid);
ObjDisp(commandBuffer)->CmdPipelineBarrier(Unwrap(commandBuffer), src, dest, flags,
ObjDisp(commandBuffer)->CmdPipelineBarrier(Unwrap(commandBuffer), (VkPipelineStageFlags)srcStages, (VkPipelineStageFlags)destStages, flags,
memCount, memBarriers,
(uint32_t)bufBarriers.size(), &bufBarriers[0],
(uint32_t)imgBarriers.size(), &imgBarriers[0]);
@@ -675,8 +675,8 @@ bool WrappedVulkan::Serialise_vkCmdWaitEvents(
const VkImageMemoryBarrier* pImageMemoryBarriers)
{
SERIALISE_ELEMENT(ResourceId, cmdid, GetResID(cmdBuffer));
SERIALISE_ELEMENT(VkPipelineStageFlags, src, srcStageMask);
SERIALISE_ELEMENT(VkPipelineStageFlags, dest, dstStageMask);
SERIALISE_ELEMENT(VkPipelineStageFlagBits, srcStages, (VkPipelineStageFlagBits)srcStageMask);
SERIALISE_ELEMENT(VkPipelineStageFlagBits, destStages, (VkPipelineStageFlagBits)dstStageMask);
// we don't serialise the original events as we are going to replace this
// with our own
@@ -736,7 +736,7 @@ bool WrappedVulkan::Serialise_vkCmdWaitEvents(
ObjDisp(cmdBuffer)->ResetEvent(Unwrap(GetDev()), ev);
ObjDisp(cmdBuffer)->CmdSetEvent(Unwrap(cmdBuffer), ev, VK_PIPELINE_STAGE_ALL_COMMANDS_BIT);
ObjDisp(cmdBuffer)->CmdWaitEvents(Unwrap(cmdBuffer), 1, &ev, src, dest,
ObjDisp(cmdBuffer)->CmdWaitEvents(Unwrap(cmdBuffer), 1, &ev, (VkPipelineStageFlags)srcStages, (VkPipelineStageFlags)destStages,
memCount, memBarriers,
(uint32_t)bufBarriers.size(), &bufBarriers[0],
(uint32_t)imgBarriers.size(), &imgBarriers[0]);
@@ -763,7 +763,7 @@ bool WrappedVulkan::Serialise_vkCmdWaitEvents(
ObjDisp(cmdBuffer)->ResetEvent(Unwrap(GetDev()), ev);
ObjDisp(cmdBuffer)->CmdSetEvent(Unwrap(cmdBuffer), ev, VK_PIPELINE_STAGE_ALL_COMMANDS_BIT);
ObjDisp(cmdBuffer)->CmdWaitEvents(Unwrap(cmdBuffer), 1, &ev, src, dest,
ObjDisp(cmdBuffer)->CmdWaitEvents(Unwrap(cmdBuffer), 1, &ev, (VkPipelineStageFlags)srcStages, (VkPipelineStageFlags)destStages,
memCount, memBarriers,
(uint32_t)bufBarriers.size(), &bufBarriers[0],
(uint32_t)imgBarriers.size(), &imgBarriers[0]);