Photon Editor Library 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
RenderModule.h
Go to the documentation of this file.
1#pragma once
2
4
5#include <Math/TVector2.h>
6
7namespace ph::editor
8{
9
10class ModuleAttachmentInfo;
11class MainThreadRenderUpdateContext;
12class RenderThreadCaller;
13
14class RenderModule : public AppModule
15{
16public:
17 std::string getName() const override = 0;
18
23 virtual void renderUpdate(const MainThreadRenderUpdateContext& ctx) = 0;
24
29 virtual void createRenderCommands(RenderThreadCaller& caller) = 0;
30
40
41 void onAttach(const ModuleAttachmentInfo& info) override = 0;
42 void onDetach() override = 0;
43};
44
45}// end namespace ph::editor
Definition AppModule.h:19
Definition MainThreadRenderUpdateContext.h:11
Definition ModuleAttachmentInfo.h:15
Definition RenderModule.h:15
void onAttach(const ModuleAttachmentInfo &info) override=0
std::string getName() const override=0
virtual void createSetupRenderCommands(RenderThreadCaller &caller)
Definition RenderModule.cpp:6
void onDetach() override=0
virtual void createCleanupRenderCommands(RenderThreadCaller &caller)
Definition RenderModule.cpp:9
virtual void createRenderCommands(RenderThreadCaller &caller)=0
virtual void renderUpdate(const MainThreadRenderUpdateContext &ctx)=0
Thin wrapper for render thread interactions from another thread. Mainly to hide unrelated render thre...
Definition RenderThreadCaller.h:16
Definition ph_editor.h:10