Go to the documentation of this file.
44 class RenderDeviceVkImpl;
50 const Uint32 QueryHeapSizes[]);
67 return m_Heaps[
Type].vkQueryPool;
72 return m_CounterFrequency;
82 std::deque<Uint32> AvailableQueries;
83 std::vector<Uint32> StaleQueries;
86 Uint32 MaxAllocatedQueries = 0;
89 std::mutex m_HeapMutex;
90 std::array<QueryHeapInfo, QUERY_TYPE_NUM_TYPES> m_Heaps;
92 Uint64 m_CounterFrequency = 0;
~QueryManagerVk()
Definition: QueryManagerVk.cpp:142
Render device implementation in Vulkan backend.
Definition: RenderDeviceVkImpl.hpp:58
Uint64 GetCounterFrequency() const
Definition: QueryManagerVk.hpp:70
Definition: VulkanCommandBuffer.hpp:36
void DiscardQuery(QUERY_TYPE Type, Uint32 Index)
Definition: QueryManagerVk.cpp:190
uint64_t Uint64
64-bit unsigned integer
Definition: BasicTypes.h:50
Uint32 ResetStaleQueries(VulkanUtilities::VulkanCommandBuffer &CmdBuff)
Definition: QueryManagerVk.cpp:209
Uint32 AllocateQuery(QUERY_TYPE Type)
Definition: QueryManagerVk.cpp:173
const D3D12_PIPELINE_STATE_SUBOBJECT_TYPE Type
Definition: PipelineStateD3D12Impl.cpp:69
DEFINE_VULKAN_OBJECT_WRAPPER(QueryPool) QueryPoolWrapper
Definition: VulkanLogicalDevice.hpp:84
uint32_t Uint32
32-bit unsigned integer
Definition: BasicTypes.h:51
static constexpr Uint32 InvalidIndex
Definition: QueryManagerVk.hpp:60
QUERY_TYPE
Query type.
Definition: GraphicsTypes.h:1446
Definition: QueryManagerVk.hpp:46
QueryManagerVk(RenderDeviceVkImpl *RenderDeviceVk, const Uint32 QueryHeapSizes[])
Definition: QueryManagerVk.cpp:41
VkQueryPool GetQueryPool(QUERY_TYPE Type)
Definition: QueryManagerVk.hpp:65
The library uses Direct3D-style math:
Definition: AdvancedMath.hpp:37
QueryManagerVk & operator=(const QueryManagerVk &)=delete