Olympe Engine 2.0
2D Game Engine with ECS Architecture
Loading...
Searching...
No Matches
DebugPanel.h
Go to the documentation of this file.
1/**
2 * @file DebugPanel.h
3 * @brief ImGui debug panel for ATS VS runtime debugging (Phase 5).
4 * @author Olympe Engine
5 * @date 2026-03-09
6 *
7 * @details
8 * DebugPanel provides the debug toolbar (Continue/Pause/Step/Stop),
9 * breakpoints list, SubGraph call stack, and live blackboard watch.
10 *
11 * C++14 compliant — no std::optional, structured bindings, std::filesystem.
12 */
13
14#pragma once
15
16#include <string>
17
18namespace Olympe {
19
20/**
21 * @class DebugPanel
22 * @brief ImGui panel that exposes DebugController UI.
23 */
25public:
26
27 DebugPanel();
29
30 void Initialize();
31 void Shutdown();
32
33 /**
34 * @brief Renders the debug panel window.
35 * Includes toolbar, breakpoints list, call stack, and watch variables.
36 */
37 void Render();
38
39 /** @brief Show / hide the panel. */
40 void SetVisible(bool v) { m_visible = v; }
41 bool IsVisible() const { return m_visible; }
42
43private:
44
45 void RenderToolbar();
47 void RenderCallStack();
50
51 bool m_visible = true;
52};
53
54} // namespace Olympe
ComponentTypeID GetComponentTypeID_Static()
Definition ECS_Entity.h:56
ImGui panel that exposes DebugController UI.
Definition DebugPanel.h:24
void Render()
Renders the debug panel window.
void SetVisible(bool v)
Show / hide the panel.
Definition DebugPanel.h:40
bool IsVisible() const
Definition DebugPanel.h:41
< Provides AssetID and INVALID_ASSET_ID