project-aster/samples/00_util/gui.h

39 lines
780 B
C++

// =============================================
// Aster: gui.h
// Copyright (c) 2020-2025 Anish Bhobe
// =============================================
#pragma once
#include "aster/aster.h"
#include "aster/core/device.h"
#include <imgui.h>
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;