SDEngine
Game Engine
Loading...
Searching...
No Matches
sd::EngineDebugLayer Class Reference

#include <EngineDebugLayer.hpp>

+ Inheritance diagram for sd::EngineDebugLayer:
+ Collaboration diagram for sd::EngineDebugLayer:

Classes

struct  CategoryNode
 

Public Member Functions

 EngineDebugLayer (ApplicationRuntime runtime, EngineServices services, Scene *scene=nullptr)
 
void on_update (float dt) override
 
void on_fixed_update (double dt) override
 
void on_event (Event &e) override
 
void on_im_gui_menu_bar () override
 
void on_gui_render () override
 
void set_view_inspector_visible (bool visible)
 
void set_scene_inspector_visible (bool visible)
 
void set_event_log_visible (bool visible)
 
void set_renderer_info_visible (bool visible)
 
void set_context_overlay_visible (bool visible)
 
bool is_view_inspector_visible () const
 
bool is_scene_inspector_visible () const
 
bool is_event_log_visible () const
 
bool is_renderer_info_visible () const
 
bool is_context_overlay_visible () const
 
void apply_preset_configuration (bool inspectors_visible, bool log_visible, bool renderer_visible)
 
void build_category_tree ()
 
void render_category_node (CategoryNode &node)
 
bool is_log_visible (const std::string &category)
 
void set_category_visible (CategoryNode &node, bool visible)
 
- Public Member Functions inherited from sd::Panel
void on_render (vk::CommandBuffer) final
 
void on_swapchain_recreated () final
 
 Layer (const std::string &name="Layer", Scene *scene=nullptr)
 
- Public Member Functions inherited from sd::Layer
virtual ~Layer ()=default
 
 Layer (const std::string &name="Layer", Scene *scene=nullptr)
 
virtual void on_attach ()
 
virtual void on_detach ()
 
virtual void on_activate ()
 
virtual void on_deactivate ()
 
const std::string & get_name () const
 
void set_scene (Scene *scene)
 
Sceneget_scene () const
 
bool is_active () const noexcept
 

Public Attributes

bool m_log_events = false
 
bool m_log_scene_changes = false
 
bool m_log_view_resizes = false
 
bool m_log_entity_lifecycle = false
 
char m_log_search_buffer [128] {}
 
int m_log_level_filter = 0
 
bool m_log_filter_initialized = false
 
CategoryNode m_category_root {"", "", true, {}}
 
bool m_category_tree_built = false
 
float m_timer = 0.0f
 
int m_update_count = 0
 
int m_fixed_update_count = 0
 
int m_prev_fixed = 0
 
int m_prev_update = 0
 
Scenem_selected_scene = nullptr
 
std::optional< ViewIdm_selected_view_id
 
Scenem_prev_scene_for_entity_count = nullptr
 
int m_prev_entity_count = -1
 
bool m_debug_mode_active = false
 
float m_debug_mode_timer = 0.0f
 

Private Member Functions

void display_view_info (View *selected_view)
 
void display_scene_selector ()
 
void display_ecs_inspector ()
 
void display_event_log ()
 
void display_layout_menu ()
 
void display_save_layout_dialog ()
 
void display_delete_layout_dialog ()
 
void display_overwrite_confirmation_dialog ()
 
void handle_layout_shortcuts ()
 
void handle_debug_shortcuts ()
 
ApplicationRuntime make_runtime ()
 

Private Attributes

ViewManagerm_views
 
SceneManagerm_scenes
 
LayoutManagerm_layout
 
EventManagerm_events
 
FrameTimerm_frame_timer
 
boolm_hot_reload_enabled
 
LayerListm_global_layers
 
VulkanRendererm_renderer
 
bool m_show_save_layout_dialog = false
 
bool m_show_delete_layout_dialog = false
 
bool m_show_overwrite_confirmation = false
 
bool m_save_dialog_initialized = false
 
std::string m_pending_layout_name
 
std::array< char, 64 > m_layout_name_buffer {}
 
bool m_show_view_inspector = true
 
bool m_show_scene_inspector = true
 
bool m_show_event_log = true
 
bool m_show_renderer_info = true
 
bool m_show_context_overlay = false
 

Additional Inherited Members

- Protected Attributes inherited from sd::Layer
bool m_is_active = true
 
std::string m_debug_name
 
Scenem_scene = nullptr
 
int m_stage_id
 
ViewId m_view_id
 
Viewm_view = nullptr
 

Constructor & Destructor Documentation

◆ EngineDebugLayer()

sd::EngineDebugLayer::EngineDebugLayer ( ApplicationRuntime  runtime,
EngineServices  services,
Scene scene = nullptr 
)

Member Function Documentation

◆ apply_preset_configuration()

void sd::EngineDebugLayer::apply_preset_configuration ( bool  inspectors_visible,
bool  log_visible,
bool  renderer_visible 
)

◆ build_category_tree()

void sd::EngineDebugLayer::build_category_tree ( )

◆ display_delete_layout_dialog()

void sd::EngineDebugLayer::display_delete_layout_dialog ( )
private

◆ display_ecs_inspector()

void sd::EngineDebugLayer::display_ecs_inspector ( )
private

◆ display_event_log()

void sd::EngineDebugLayer::display_event_log ( )
private

◆ display_layout_menu()

void sd::EngineDebugLayer::display_layout_menu ( )
private

◆ display_overwrite_confirmation_dialog()

void sd::EngineDebugLayer::display_overwrite_confirmation_dialog ( )
private

◆ display_save_layout_dialog()

void sd::EngineDebugLayer::display_save_layout_dialog ( )
private

◆ display_scene_selector()

void sd::EngineDebugLayer::display_scene_selector ( )
private

◆ display_view_info()

void sd::EngineDebugLayer::display_view_info ( View selected_view)
private

◆ handle_debug_shortcuts()

void sd::EngineDebugLayer::handle_debug_shortcuts ( )
private

◆ handle_layout_shortcuts()

void sd::EngineDebugLayer::handle_layout_shortcuts ( )
private

◆ is_context_overlay_visible()

bool sd::EngineDebugLayer::is_context_overlay_visible ( ) const
inline

◆ is_event_log_visible()

bool sd::EngineDebugLayer::is_event_log_visible ( ) const
inline

◆ is_log_visible()

bool sd::EngineDebugLayer::is_log_visible ( const std::string &  category)

◆ is_renderer_info_visible()

bool sd::EngineDebugLayer::is_renderer_info_visible ( ) const
inline

◆ is_scene_inspector_visible()

bool sd::EngineDebugLayer::is_scene_inspector_visible ( ) const
inline

◆ is_view_inspector_visible()

bool sd::EngineDebugLayer::is_view_inspector_visible ( ) const
inline

◆ make_runtime()

ApplicationRuntime sd::EngineDebugLayer::make_runtime ( )
inlineprivate

◆ on_event()

void sd::EngineDebugLayer::on_event ( Event e)
overridevirtual

Reimplemented from sd::Layer.

◆ on_fixed_update()

void sd::EngineDebugLayer::on_fixed_update ( double  dt)
overridevirtual

Reimplemented from sd::Layer.

◆ on_gui_render()

void sd::EngineDebugLayer::on_gui_render ( )
overridevirtual

Reimplemented from sd::Layer.

◆ on_im_gui_menu_bar()

void sd::EngineDebugLayer::on_im_gui_menu_bar ( )
overridevirtual

Reimplemented from sd::Layer.

◆ on_update()

void sd::EngineDebugLayer::on_update ( float  dt)
overridevirtual

Reimplemented from sd::Layer.

◆ render_category_node()

void sd::EngineDebugLayer::render_category_node ( CategoryNode node)

◆ set_category_visible()

void sd::EngineDebugLayer::set_category_visible ( CategoryNode node,
bool  visible 
)

◆ set_context_overlay_visible()

void sd::EngineDebugLayer::set_context_overlay_visible ( bool  visible)
inline

◆ set_event_log_visible()

void sd::EngineDebugLayer::set_event_log_visible ( bool  visible)
inline

◆ set_renderer_info_visible()

void sd::EngineDebugLayer::set_renderer_info_visible ( bool  visible)
inline

◆ set_scene_inspector_visible()

void sd::EngineDebugLayer::set_scene_inspector_visible ( bool  visible)
inline

◆ set_view_inspector_visible()

void sd::EngineDebugLayer::set_view_inspector_visible ( bool  visible)
inline

Member Data Documentation

◆ m_category_root

CategoryNode sd::EngineDebugLayer::m_category_root {"", "", true, {}}

◆ m_category_tree_built

bool sd::EngineDebugLayer::m_category_tree_built = false

◆ m_debug_mode_active

bool sd::EngineDebugLayer::m_debug_mode_active = false

◆ m_debug_mode_timer

float sd::EngineDebugLayer::m_debug_mode_timer = 0.0f

◆ m_events

EventManager& sd::EngineDebugLayer::m_events
private

◆ m_fixed_update_count

int sd::EngineDebugLayer::m_fixed_update_count = 0

◆ m_frame_timer

FrameTimer& sd::EngineDebugLayer::m_frame_timer
private

◆ m_global_layers

LayerList& sd::EngineDebugLayer::m_global_layers
private

◆ m_hot_reload_enabled

bool& sd::EngineDebugLayer::m_hot_reload_enabled
private

◆ m_layout

LayoutManager& sd::EngineDebugLayer::m_layout
private

◆ m_layout_name_buffer

std::array<char, 64> sd::EngineDebugLayer::m_layout_name_buffer {}
private

◆ m_log_entity_lifecycle

bool sd::EngineDebugLayer::m_log_entity_lifecycle = false

◆ m_log_events

bool sd::EngineDebugLayer::m_log_events = false

◆ m_log_filter_initialized

bool sd::EngineDebugLayer::m_log_filter_initialized = false

◆ m_log_level_filter

int sd::EngineDebugLayer::m_log_level_filter = 0

◆ m_log_scene_changes

bool sd::EngineDebugLayer::m_log_scene_changes = false

◆ m_log_search_buffer

char sd::EngineDebugLayer::m_log_search_buffer[128] {}

◆ m_log_view_resizes

bool sd::EngineDebugLayer::m_log_view_resizes = false

◆ m_pending_layout_name

std::string sd::EngineDebugLayer::m_pending_layout_name
private

◆ m_prev_entity_count

int sd::EngineDebugLayer::m_prev_entity_count = -1

◆ m_prev_fixed

int sd::EngineDebugLayer::m_prev_fixed = 0

◆ m_prev_scene_for_entity_count

Scene* sd::EngineDebugLayer::m_prev_scene_for_entity_count = nullptr

◆ m_prev_update

int sd::EngineDebugLayer::m_prev_update = 0

◆ m_renderer

VulkanRenderer& sd::EngineDebugLayer::m_renderer
private

◆ m_save_dialog_initialized

bool sd::EngineDebugLayer::m_save_dialog_initialized = false
private

◆ m_scenes

SceneManager& sd::EngineDebugLayer::m_scenes
private

◆ m_selected_scene

Scene* sd::EngineDebugLayer::m_selected_scene = nullptr

◆ m_selected_view_id

std::optional<ViewId> sd::EngineDebugLayer::m_selected_view_id

◆ m_show_context_overlay

bool sd::EngineDebugLayer::m_show_context_overlay = false
private

◆ m_show_delete_layout_dialog

bool sd::EngineDebugLayer::m_show_delete_layout_dialog = false
private

◆ m_show_event_log

bool sd::EngineDebugLayer::m_show_event_log = true
private

◆ m_show_overwrite_confirmation

bool sd::EngineDebugLayer::m_show_overwrite_confirmation = false
private

◆ m_show_renderer_info

bool sd::EngineDebugLayer::m_show_renderer_info = true
private

◆ m_show_save_layout_dialog

bool sd::EngineDebugLayer::m_show_save_layout_dialog = false
private

◆ m_show_scene_inspector

bool sd::EngineDebugLayer::m_show_scene_inspector = true
private

◆ m_show_view_inspector

bool sd::EngineDebugLayer::m_show_view_inspector = true
private

◆ m_timer

float sd::EngineDebugLayer::m_timer = 0.0f

◆ m_update_count

int sd::EngineDebugLayer::m_update_count = 0

◆ m_views

ViewManager& sd::EngineDebugLayer::m_views
private

The documentation for this class was generated from the following files: