// gui.h #pragma once #include "core/slang-basic.h" #include "imgui/imgui.h" #include "slang-com-ptr.h" #include "vector-math.h" #include "window.h" #include namespace platform { struct GUI : Slang::RefObject { GUI(Window* window, rhi::IDevice* device, rhi::ICommandQueue* queue); ~GUI(); void beginFrame(); void endFrame(rhi::ITexture* renderTarget); private: Slang::ComPtr device; Slang::ComPtr queue; Slang::ComPtr pipelineState; Slang::ComPtr samplerState; Slang::ComPtr shaderProgram; Slang::ComPtr inputLayout; }; } // namespace platform