1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2024-12-12 04:08:52 +01:00

[dxvk] Add command list parameter to some query-related functions

And reintroduce cmdResetQueryPool.
This commit is contained in:
Philip Rebohle 2024-10-01 14:52:08 +02:00 committed by Philip Rebohle
parent 4ce200bcae
commit 7d31a7f16f
2 changed files with 20 additions and 7 deletions

View File

@ -610,6 +610,7 @@ namespace dxvk {
void cmdCopyQueryPoolResults(
DxvkCmdBuffer cmdBuffer,
VkQueryPool queryPool,
uint32_t firstQuery,
uint32_t queryCount,
@ -617,9 +618,9 @@ namespace dxvk {
VkDeviceSize dstOffset,
VkDeviceSize stride,
VkQueryResultFlags flags) {
m_cmd.usedFlags.set(DxvkCmdBuffer::ExecBuffer);
m_cmd.usedFlags.set(cmdBuffer);
m_vkd->vkCmdCopyQueryPoolResults(m_cmd.execBuffer,
m_vkd->vkCmdCopyQueryPoolResults(getCmdBuffer(cmdBuffer),
queryPool, firstQuery, queryCount,
dstBuffer, dstOffset, stride, flags);
}
@ -791,6 +792,18 @@ namespace dxvk {
}
void cmdResetQueryPool(
DxvkCmdBuffer cmdBuffer,
VkQueryPool queryPool,
uint32_t firstQuery,
uint32_t queryCount) {
m_cmd.usedFlags.set(cmdBuffer);
m_vkd->vkCmdResetQueryPool(getCmdBuffer(cmdBuffer),
queryPool, firstQuery, queryCount);
}
void cmdResolveImage(
const VkResolveImageInfo2* resolveInfo) {
m_cmd.usedFlags.set(DxvkCmdBuffer::ExecBuffer);
@ -969,12 +982,13 @@ namespace dxvk {
void cmdWriteTimestamp(
DxvkCmdBuffer cmdBuffer,
VkPipelineStageFlagBits2 pipelineStage,
VkQueryPool queryPool,
uint32_t query) {
m_cmd.usedFlags.set(DxvkCmdBuffer::ExecBuffer);
m_cmd.usedFlags.set(cmdBuffer);
m_vkd->vkCmdWriteTimestamp2(m_cmd.execBuffer,
m_vkd->vkCmdWriteTimestamp2(getCmdBuffer(cmdBuffer),
pipelineStage, queryPool, query);
}

View File

@ -339,10 +339,9 @@ namespace dxvk {
handle.queryPool,
handle.queryId);
cmd->cmdWriteTimestamp(
cmd->cmdWriteTimestamp(DxvkCmdBuffer::ExecBuffer,
VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,
handle.queryPool,
handle.queryId);
handle.queryPool, handle.queryId);
cmd->trackResource<DxvkAccess::None>(query);
}