summaryrefslogtreecommitdiffstats
path: root/tools/gfx/renderer-shared.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gfx/renderer-shared.h')
-rw-r--r--tools/gfx/renderer-shared.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/tools/gfx/renderer-shared.h b/tools/gfx/renderer-shared.h
index e3580b9b6..6863a95a0 100644
--- a/tools/gfx/renderer-shared.h
+++ b/tools/gfx/renderer-shared.h
@@ -245,22 +245,30 @@ protected:
Desc m_desc;
};
+class ResourceViewInternalBase : public Slang::ComObject
+{};
+
class ResourceViewBase
: public IResourceView
- , public Slang::ComObject
+ , public ResourceViewInternalBase
{
public:
+ Desc m_desc = {};
SLANG_COM_OBJECT_IUNKNOWN_ALL
IResourceView* getInterface(const Slang::Guid& guid);
+ virtual SLANG_NO_THROW Desc* SLANG_MCALL getViewDesc() override { return &m_desc; }
};
class AccelerationStructureBase
: public IAccelerationStructure
- , public Slang::ComObject
+ , public ResourceViewInternalBase
{
public:
+ IResourceView::Desc m_desc = {};
+
SLANG_COM_OBJECT_IUNKNOWN_ALL
IAccelerationStructure* getInterface(const Slang::Guid& guid);
+ virtual SLANG_NO_THROW Desc* SLANG_MCALL getViewDesc() override { return &m_desc; }
};
class RendererBase;