summaryrefslogtreecommitdiff
path: root/tools/gfx/debug-layer/debug-transient-heap.h
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2022-10-12 14:51:13 -0700
committerGitHub <noreply@github.com>2022-10-12 14:51:13 -0700
commit344898b091867e5450a3fa432a207d75255df77a (patch)
treee9779a112e371ad141d1f6d9b8778acb4207179b /tools/gfx/debug-layer/debug-transient-heap.h
parentd96250bcc2e8fedb485df3ed0fdc28f89f6d23c8 (diff)
Add gfx debug layer trampoline for D3D12 interfaces. (#2445)
Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'tools/gfx/debug-layer/debug-transient-heap.h')
-rw-r--r--tools/gfx/debug-layer/debug-transient-heap.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/tools/gfx/debug-layer/debug-transient-heap.h b/tools/gfx/debug-layer/debug-transient-heap.h
index dd89d8a21..60430228d 100644
--- a/tools/gfx/debug-layer/debug-transient-heap.h
+++ b/tools/gfx/debug-layer/debug-transient-heap.h
@@ -12,15 +12,31 @@ namespace debug
class DebugTransientResourceHeap : public DebugObject<ITransientResourceHeap>
{
public:
- SLANG_COM_OBJECT_IUNKNOWN_ALL;
+ SLANG_COM_OBJECT_IUNKNOWN_ADD_REF;
+ SLANG_COM_OBJECT_IUNKNOWN_RELEASE;
public:
- ITransientResourceHeap* getInterface(const Slang::Guid& guid);
+ virtual SLANG_NO_THROW SlangResult SLANG_MCALL queryInterface(SlangUUID const& uuid, void** outObject) override;
+
virtual SLANG_NO_THROW Result SLANG_MCALL synchronizeAndReset() override;
virtual SLANG_NO_THROW Result SLANG_MCALL finish() override;
virtual SLANG_NO_THROW Result SLANG_MCALL
createCommandBuffer(ICommandBuffer** outCommandBuffer) override;
};
+class DebugTransientResourceHeapD3D12 : public DebugObject<ITransientResourceHeapD3D12>
+{
+public:
+ SLANG_COM_OBJECT_IUNKNOWN_ADD_REF;
+ SLANG_COM_OBJECT_IUNKNOWN_RELEASE;
+public:
+ virtual SLANG_NO_THROW SlangResult SLANG_MCALL queryInterface(SlangUUID const& uuid, void** outObject) override;
+ virtual SLANG_NO_THROW Result SLANG_MCALL allocateTransientDescriptorTable(
+ DescriptorType type,
+ GfxCount count,
+ Offset& outDescriptorOffset,
+ void** outD3DDescriptorHeapHandle) override;
+};
+
} // namespace debug
} // namespace gfx