8#include "SD/export.hpp"
20 void on_update(
float dt)
override;
21 void on_fixed_update(
double dt)
override;
22 void on_event(
Event&
e)
override;
23 void on_im_gui_menu_bar()
override;
24 void on_gui_render()
override;
28 void display_scene_selector();
29 void display_ecs_inspector();
30 void display_event_log();
31 void display_layout_menu();
32 void display_save_layout_dialog();
33 void display_delete_layout_dialog();
34 void display_overwrite_confirmation_dialog();
35 void handle_layout_shortcuts();
36 void handle_debug_shortcuts();
44 .timer = m_frame_timer,
45 .global_layers = m_global_layers,
46 .hot_reload_enabled = m_hot_reload_enabled,
60 bool m_show_save_layout_dialog =
false;
61 bool m_show_delete_layout_dialog =
false;
62 bool m_show_overwrite_confirmation =
false;
63 bool m_save_dialog_initialized =
false;
65 std::array<char, 64> m_layout_name_buffer{};
68 bool m_show_view_inspector =
true;
69 bool m_show_scene_inspector =
true;
70 bool m_show_event_log =
true;
71 bool m_show_renderer_info =
true;
72 bool m_show_context_overlay =
false;
91 bool m_log_events =
false;
92 bool m_log_scene_changes =
false;
93 bool m_log_view_resizes =
false;
94 bool m_log_entity_lifecycle =
false;
97 char m_log_search_buffer[128]{};
98 int m_log_level_filter = 0;
99 bool m_log_filter_initialized =
false;
109 bool m_category_tree_built =
false;
111 void build_category_tree();
113 bool is_log_visible(
const std::string& category);
116 float m_timer = 0.0f;
117 int m_update_count = 0;
118 int m_fixed_update_count = 0;
119 int m_prev_fixed = 0;
120 int m_prev_update = 0;
126 Scene* m_prev_scene_for_entity_count =
nullptr;
127 int m_prev_entity_count = -1;
130 bool m_debug_mode_active =
false;
131 float m_debug_mode_timer = 0.0f;
Definition EngineDebugLayer.hpp:16
void set_renderer_info_visible(bool visible)
Definition EngineDebugLayer.hpp:79
void set_event_log_visible(bool visible)
Definition EngineDebugLayer.hpp:78
void set_context_overlay_visible(bool visible)
Definition EngineDebugLayer.hpp:80
void set_view_inspector_visible(bool visible)
Definition EngineDebugLayer.hpp:76
bool & m_hot_reload_enabled
Definition EngineDebugLayer.hpp:55
VulkanRenderer & m_renderer
Definition EngineDebugLayer.hpp:57
bool is_view_inspector_visible() const
Definition EngineDebugLayer.hpp:82
SceneManager & m_scenes
Definition EngineDebugLayer.hpp:51
bool is_scene_inspector_visible() const
Definition EngineDebugLayer.hpp:83
std::optional< ViewId > m_selected_view_id
Definition EngineDebugLayer.hpp:123
FrameTimer & m_frame_timer
Definition EngineDebugLayer.hpp:54
ViewManager & m_views
Definition EngineDebugLayer.hpp:50
LayoutManager & m_layout
Definition EngineDebugLayer.hpp:52
bool is_renderer_info_visible() const
Definition EngineDebugLayer.hpp:85
void set_scene_inspector_visible(bool visible)
Definition EngineDebugLayer.hpp:77
bool is_event_log_visible() const
Definition EngineDebugLayer.hpp:84
ApplicationRuntime make_runtime()
Definition EngineDebugLayer.hpp:38
EventManager & m_events
Definition EngineDebugLayer.hpp:53
std::string m_pending_layout_name
Definition EngineDebugLayer.hpp:64
bool is_context_overlay_visible() const
Definition EngineDebugLayer.hpp:86
LayerList & m_global_layers
Definition EngineDebugLayer.hpp:56
Definition EventManager.hpp:20
Tracks frame timing, fixed timestep accumulation, and CPU work time.
Definition FrameTimer.hpp:21
Definition LayerList.hpp:21
Manages window layouts using ImGui DockBuilder for presets and INI for user layouts.
Definition LayoutManager.hpp:14
ImGui UI layer: panels, inspectors, debug tools. No GPU rendering.
Definition Layer.hpp:103
Definition SceneManager.hpp:14
Definition ViewManager.hpp:26
Definition VulkanRenderer.hpp:22
Definition Application.hpp:28
Definition ApplicationRuntime.hpp:12
ViewManager & views
Definition ApplicationRuntime.hpp:13
Definition EngineDebugLayer.hpp:102
std::string full_path
Definition EngineDebugLayer.hpp:104
std::string name
Definition EngineDebugLayer.hpp:103
std::vector< CategoryNode > children
Definition EngineDebugLayer.hpp:106
Definition EngineServices.hpp:10
constexpr T g_type_max
Definition types.hpp:21