diff options
| author | assiduous <assiduous@diligentgraphics.com> | 2020-08-27 19:33:45 +0000 |
|---|---|---|
| committer | assiduous <assiduous@diligentgraphics.com> | 2020-08-27 19:33:45 +0000 |
| commit | 49be75e82241dbd5aa8959dcc4d3ba39a8a7a28c (patch) | |
| tree | e6a8c4e19da3cf57bbafeb09740f1ba9aa64dae7 /Graphics/GraphicsEngineD3D12 | |
| parent | Implemented duration query in D3D12 (diff) | |
| download | DiligentCore-49be75e82241dbd5aa8959dcc4d3ba39a8a7a28c.tar.gz DiligentCore-49be75e82241dbd5aa8959dcc4d3ba39a8a7a28c.zip | |
Implemented duration queries in Vulkan
Diffstat (limited to 'Graphics/GraphicsEngineD3D12')
| -rw-r--r-- | Graphics/GraphicsEngineD3D12/include/QueryD3D12Impl.hpp | 4 | ||||
| -rw-r--r-- | Graphics/GraphicsEngineD3D12/src/QueryD3D12Impl.cpp | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/Graphics/GraphicsEngineD3D12/include/QueryD3D12Impl.hpp b/Graphics/GraphicsEngineD3D12/include/QueryD3D12Impl.hpp index 7170a720..ab31743f 100644 --- a/Graphics/GraphicsEngineD3D12/include/QueryD3D12Impl.hpp +++ b/Graphics/GraphicsEngineD3D12/include/QueryD3D12Impl.hpp @@ -30,6 +30,7 @@ /// \file /// Declaration of Diligent::QueryD3D12Impl class +#include <array> #include "QueryD3D12.h" #include "QueryBase.hpp" #include "RenderDeviceD3D12Impl.hpp" @@ -73,7 +74,8 @@ public: bool OnEndQuery(IDeviceContext* pContext); private: - Uint32 m_QueryHeapIndex[2] = {~Uint32{0}, ~Uint32{0}}; + std::array<Uint32, 2> m_QueryHeapIndex = {QueryManagerD3D12::InvalidIndex, QueryManagerD3D12::InvalidIndex}; + Uint64 m_QueryEndFenceValue = 0; }; diff --git a/Graphics/GraphicsEngineD3D12/src/QueryD3D12Impl.cpp b/Graphics/GraphicsEngineD3D12/src/QueryD3D12Impl.cpp index 37337e53..30c9c4c4 100644 --- a/Graphics/GraphicsEngineD3D12/src/QueryD3D12Impl.cpp +++ b/Graphics/GraphicsEngineD3D12/src/QueryD3D12Impl.cpp @@ -60,11 +60,11 @@ QueryD3D12Impl::QueryD3D12Impl(IReferenceCounters* pRefCounters, QueryD3D12Impl::~QueryD3D12Impl() { auto& QueryMgr = m_pDevice->GetQueryManager(); - for (Uint32 i = 0; i < _countof(m_QueryHeapIndex); ++i) + for (auto HeapIdx : m_QueryHeapIndex) { - if (m_QueryHeapIndex[i] != QueryManagerD3D12::InvalidIndex) + if (HeapIdx != QueryManagerD3D12::InvalidIndex) { - QueryMgr.ReleaseQuery(m_Desc.Type, m_QueryHeapIndex[i]); + QueryMgr.ReleaseQuery(m_Desc.Type, HeapIdx); } } } |
