mirror of
https://github.com/doitsujin/dxvk.git
synced 2024-12-04 16:24:29 +01:00
[dxvk] Add command list parameter to some query-related functions
And reintroduce cmdResetQueryPool.
This commit is contained in:
parent
4ce200bcae
commit
7d31a7f16f
@ -610,6 +610,7 @@ namespace dxvk {
|
|||||||
|
|
||||||
|
|
||||||
void cmdCopyQueryPoolResults(
|
void cmdCopyQueryPoolResults(
|
||||||
|
DxvkCmdBuffer cmdBuffer,
|
||||||
VkQueryPool queryPool,
|
VkQueryPool queryPool,
|
||||||
uint32_t firstQuery,
|
uint32_t firstQuery,
|
||||||
uint32_t queryCount,
|
uint32_t queryCount,
|
||||||
@ -617,9 +618,9 @@ namespace dxvk {
|
|||||||
VkDeviceSize dstOffset,
|
VkDeviceSize dstOffset,
|
||||||
VkDeviceSize stride,
|
VkDeviceSize stride,
|
||||||
VkQueryResultFlags flags) {
|
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,
|
queryPool, firstQuery, queryCount,
|
||||||
dstBuffer, dstOffset, stride, flags);
|
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(
|
void cmdResolveImage(
|
||||||
const VkResolveImageInfo2* resolveInfo) {
|
const VkResolveImageInfo2* resolveInfo) {
|
||||||
m_cmd.usedFlags.set(DxvkCmdBuffer::ExecBuffer);
|
m_cmd.usedFlags.set(DxvkCmdBuffer::ExecBuffer);
|
||||||
@ -969,12 +982,13 @@ namespace dxvk {
|
|||||||
|
|
||||||
|
|
||||||
void cmdWriteTimestamp(
|
void cmdWriteTimestamp(
|
||||||
|
DxvkCmdBuffer cmdBuffer,
|
||||||
VkPipelineStageFlagBits2 pipelineStage,
|
VkPipelineStageFlagBits2 pipelineStage,
|
||||||
VkQueryPool queryPool,
|
VkQueryPool queryPool,
|
||||||
uint32_t query) {
|
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);
|
pipelineStage, queryPool, query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -339,10 +339,9 @@ namespace dxvk {
|
|||||||
handle.queryPool,
|
handle.queryPool,
|
||||||
handle.queryId);
|
handle.queryId);
|
||||||
|
|
||||||
cmd->cmdWriteTimestamp(
|
cmd->cmdWriteTimestamp(DxvkCmdBuffer::ExecBuffer,
|
||||||
VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,
|
VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,
|
||||||
handle.queryPool,
|
handle.queryPool, handle.queryId);
|
||||||
handle.queryId);
|
|
||||||
|
|
||||||
cmd->trackResource<DxvkAccess::None>(query);
|
cmd->trackResource<DxvkAccess::None>(query);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user