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

Base class for all layers. Prefer using System, RenderStage, or Panel instead. More...

#include <Layer.hpp>

+ Inheritance diagram for sd::Layer:
+ Collaboration diagram for sd::Layer:

Public Member Functions

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 ()
 
virtual void on_swapchain_recreated ()
 
const std::string & get_name () const
 
void set_scene (Scene *scene)
 
Sceneget_scene () const
 
virtual void on_event (Event &)
 
virtual void on_fixed_update (double fixedDelta)
 
virtual void on_update (float dt)
 
virtual void on_render (vk::CommandBuffer cmd)
 
virtual void on_gui_render ()
 
virtual void on_im_gui_menu_bar ()
 
bool is_active () const noexcept
 

Protected Attributes

bool m_is_active = true
 
std::string m_debug_name
 
Scenem_scene = nullptr
 
int m_stage_id
 
ViewId m_view_id
 
Viewm_view = nullptr
 

Friends

class View
 

Detailed Description

Base class for all layers. Prefer using System, RenderStage, or Panel instead.

Constructor & Destructor Documentation

◆ ~Layer()

virtual sd::Layer::~Layer ( )
virtualdefault

◆ Layer()

sd::Layer::Layer ( const std::string &  name = "Layer",
Scene scene = nullptr 
)
inlineexplicit

Member Function Documentation

◆ get_name()

const std::string & sd::Layer::get_name ( ) const
inline

◆ get_scene()

Scene * sd::Layer::get_scene ( ) const
inline

◆ is_active()

bool sd::Layer::is_active ( ) const
inlinenoexcept

◆ on_activate()

virtual void sd::Layer::on_activate ( )
inlinevirtual

◆ on_attach()

virtual void sd::Layer::on_attach ( )
inlinevirtual

◆ on_deactivate()

virtual void sd::Layer::on_deactivate ( )
inlinevirtual

◆ on_detach()

virtual void sd::Layer::on_detach ( )
inlinevirtual

◆ on_event()

virtual void sd::Layer::on_event ( Event )
inlinevirtual

Reimplemented in sd::EngineDebugLayer.

◆ on_fixed_update()

virtual void sd::Layer::on_fixed_update ( double  fixedDelta)
inlinevirtual

Reimplemented in sd::EngineDebugLayer, and sd::RenderStage.

◆ on_gui_render()

virtual void sd::Layer::on_gui_render ( )
inlinevirtual

◆ on_im_gui_menu_bar()

virtual void sd::Layer::on_im_gui_menu_bar ( )
inlinevirtual

◆ on_render()

virtual void sd::Layer::on_render ( vk::CommandBuffer  cmd)
inlinevirtual

Reimplemented in sd::System, and sd::Panel.

◆ on_swapchain_recreated()

virtual void sd::Layer::on_swapchain_recreated ( )
inlinevirtual

Reimplemented in sd::System, and sd::Panel.

◆ on_update()

virtual void sd::Layer::on_update ( float  dt)
inlinevirtual

◆ set_scene()

void sd::Layer::set_scene ( Scene scene)
inline

Friends And Related Symbol Documentation

◆ View

friend class View
friend

Member Data Documentation

◆ m_debug_name

std::string sd::Layer::m_debug_name
protected

◆ m_is_active

bool sd::Layer::m_is_active = true
protected

◆ m_scene

Scene* sd::Layer::m_scene = nullptr
protected

◆ m_stage_id

int sd::Layer::m_stage_id
protected

◆ m_view

View* sd::Layer::m_view = nullptr
protected

◆ m_view_id

ViewId sd::Layer::m_view_id
protected

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