yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

Ellie Hermaszewskaformatf65d756bf

master
1.0 KiB38 linesraw
1// debug-swap-chain.h
2#pragma once
3#include "debug-base.h"
4
5namespace gfx
6{
7using namespace Slang;
8
9namespace debug
10{
11
12class DebugSwapchain : public DebugObject<ISwapchain>
13{
14public:
15    SLANG_COM_OBJECT_IUNKNOWN_ALL;
16
17public:
18    ISwapchain* getInterface(const Slang::Guid& guid);
19    virtual SLANG_NO_THROW const Desc& SLANG_MCALL getDesc() override;
20    virtual SLANG_NO_THROW Result SLANG_MCALL
21    getImage(GfxIndex index, ITextureResource** outResource) override;
22    virtual SLANG_NO_THROW Result SLANG_MCALL present() override;
23    virtual SLANG_NO_THROW int SLANG_MCALL acquireNextImage() override;
24    virtual SLANG_NO_THROW Result SLANG_MCALL resize(GfxCount width, GfxCount height) override;
25    virtual SLANG_NO_THROW bool SLANG_MCALL isOccluded() override;
26    virtual SLANG_NO_THROW Result SLANG_MCALL setFullScreenMode(bool mode) override;
27
28public:
29    Slang::RefPtr<DebugCommandQueue> queue;
30    Desc desc;
31
32private:
33    Slang::List<Slang::RefPtr<DebugTextureResource>> m_images;
34    void maybeRebuildImageList();
35};
36
37} // namespace debug
38} // namespace gfx