// ============================================= // Aster: gui.h // Copyright (c) 2020-2025 Anish Bhobe // ============================================= #pragma once #include "aster/aster.h" #include "aster/core/device.h" #include namespace aster { struct Device; struct Instance; struct Window; struct Swapchain; class RenderingDevice; class GraphicsContext; struct Frame; } // ReSharper disable once CppInconsistentNaming namespace ImGui { void Init(aster::RenderingDevice &device, aster::Window &window); void Destroy(const aster::RenderingDevice &device); void Recreate(); void StartBuild(); void EndBuild(); void Draw(aster::Frame &frame, aster::GraphicsContext &context); void PushDisable(); void PopDisable(); } // namespace ImGui namespace gui = ImGui;