Class RenderStageBase

Inheritance Relationships

Derived Types

Class Documentation

class legion::rendering::RenderStageBase

Subclassed by legion::rendering::RenderStage< SelfType >, legion::rendering::RenderStage< ClearStage >, legion::rendering::RenderStage< DebugRenderStage >, legion::rendering::RenderStage< FramebufferResizeStage >, legion::rendering::RenderStage< ImGuiStage >, legion::rendering::RenderStage< LightBufferStage >, legion::rendering::RenderStage< MeshBatchingStage >, legion::rendering::RenderStage< MeshRenderStage >, legion::rendering::RenderStage< PostProcessingStage >, legion::rendering::RenderStage< SubmitStage >

Public Functions

inline bool isInitialized()
inline void init(app::window &context)
virtual void render(app::window &context, camera &cam, const camera::camera_input &camInput, time::span deltaTime) = 0
virtual priority_type priority () LEGION_IMPURE_RETURN(default_priority)

Public Static Attributes

static RenderPipelineBase *m_pipeline

Protected Functions

virtual void setup(app::window &context) = 0
void abort()
template<typename T>
inline bool has_meta(const std::string &name)
template<typename T, typename ...Args>
inline T *create_meta(const std::string &name, Args&&... args)
template<typename T>
inline T *get_meta(const std::string &name)
template<typename T>
inline bool has_meta(id_type nameHash)
template<typename T, typename ...Args>
inline T *create_meta(id_type nameHash, Args&&... args)
template<typename T>
inline T *get_meta(id_type nameHash)
framebuffer *addFramebuffer(const std::string &name, GLenum target = GL_FRAMEBUFFER)
bool hasFramebuffer(const std::string &name, GLenum target = GL_FRAMEBUFFER)
framebuffer *getFramebuffer(const std::string &name)
framebuffer *addFramebuffer(id_type nameHash, GLenum target = GL_FRAMEBUFFER)
bool hasFramebuffer(id_type nameHash, GLenum target = GL_FRAMEBUFFER)
framebuffer *getFramebuffer(id_type nameHash)

Protected Static Attributes

static ecs::EcsRegistry *m_ecs
static schd::Scheduler *m_scheduler
static events::EventBus *m_eventBus