summaryrefslogtreecommitdiff
path: root/tools/gfx/debug-layer.h
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2022-01-04 11:24:11 -0800
committerGitHub <noreply@github.com>2022-01-04 11:24:11 -0800
commit43b6f5c36cbe2529d93df0e44e319a330487ed0d (patch)
treebb9399d71a505c007327080285ce2583d12bc576 /tools/gfx/debug-layer.h
parent9d6c7763334908c78027199a0cb1ca3b9841ebab (diff)
gfx: Fix root shader object implementation in debug layer. (#2059)
* gfx: Fix root shader object implementation in debug layer. * Fix. Co-authored-by: Yong He <yhe@nvidia.com> Co-authored-by: Theresa Foley <tfoleyNV@users.noreply.github.com>
Diffstat (limited to 'tools/gfx/debug-layer.h')
-rw-r--r--tools/gfx/debug-layer.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/gfx/debug-layer.h b/tools/gfx/debug-layer.h
index 35410530e..c5482da87 100644
--- a/tools/gfx/debug-layer.h
+++ b/tools/gfx/debug-layer.h
@@ -293,9 +293,18 @@ public:
setConstantBufferOverride(IBufferResource* constantBuffer) override;
public:
+ // Type name of an ordinary shader object.
Slang::String m_typeName;
+
+ // The slang Type of an ordinary shader object. This is null for root objects.
slang::TypeReflection* m_slangType = nullptr;
+
+ // The slang program from which a root shader object is created, this is null for ordinary
+ // objects.
+ Slang::ComPtr<slang::IComponentType> m_rootComponentType;
+
DebugDevice* m_device;
+
Slang::List<Slang::RefPtr<DebugShaderObject>> m_entryPoints;
Slang::Dictionary<ShaderOffsetKey, Slang::RefPtr<DebugShaderObject>> m_objects;
Slang::Dictionary<ShaderOffsetKey, Slang::RefPtr<DebugResourceView>> m_resources;
@@ -626,6 +635,10 @@ public:
public:
IShaderProgram* getInterface(const Slang::Guid& guid);
+ DebugShaderProgram(const IShaderProgram::Desc& desc);
+
+public:
+ Slang::ComPtr<slang::IComponentType> m_slangProgram;
};
class DebugTransientResourceHeap : public DebugObject<ITransientResourceHeap>