6#include <Common/primitive_type.h>
7#include <Math/TVector2.h>
13namespace ph {
class Path; }
22class MainThreadUpdateContext;
23class MainThreadRenderUpdateContext;
54 void initialRenderThreadUpdate();
55 void finalRenderThreadUpdate();
60 void appCreateRenderCommands();
61 void appBeforeUpdateStage();
62 void appAfterUpdateStage();
63 void appBeforeRenderStage();
64 void appAfterRenderStage();
66 bool attachModule(
AppModule* targetModule);
67 bool detachModule(
AppModule* targetModule);
71 static Path getCoreSettingsFile();
73 std::shared_ptr<AppSettings> m_settings;
76 std::unique_ptr<Platform> m_platform;
77 std::vector<ProcedureModule*> m_procedureModules;
78 std::vector<RenderModule*> m_renderModules;
79 std::vector<AppModule*> m_modules;
81 bool m_shouldBreakMainLoop;
Definition AppModule.h:19
Definition Application.h:27
~Application()
Definition Application.cpp:88
bool detachProcedureModule(ProcedureModule *inModule)
Definition Application.cpp:416
void close()
Close the application. Closing an already-closed application has no effect.
Definition Application.cpp:122
bool attachRenderModule(RenderModule *inModule)
Definition Application.cpp:403
bool attachProcedureModule(ProcedureModule *inModule)
Definition Application.cpp:390
bool detachRenderModule(RenderModule *inModule)
Definition Application.cpp:431
void run()
Run the application. This call will block until the application is going to be closed.
Definition Application.cpp:99
Application(int argc, char *argv[])
Definition Application.cpp:34
Definition MainThreadRenderUpdateContext.h:11
Definition MainThreadUpdateContext.h:11
Definition ProcedureModule.h:12
Definition RenderModule.h:15
Definition RenderThread.h:25
Definition ph_editor.h:10