![]() |
Rendering Engine 0.2.0
Modular Graphics Rendering Engine | v0.2.0
|
Default implementation of the IApplication interface. More...
#include <core_application.hpp>
Inherits rendering_engine::IApplication.
Public Member Functions | |
| CoreApplication () | |
| Constructs a CoreApplication using settings from the config file. | |
| CoreApplication (char const *appName) | |
| Constructs a CoreApplication with full-screen window size. | |
| CoreApplication (unsigned int width, unsigned int height, char const *appName) | |
| Constructs a CoreApplication with explicit window size. | |
| CoreApplication (unsigned int width, unsigned int height, char const *appName, std::shared_ptr< IWindowSystem > windowSystem, std::shared_ptr< IRenderer > renderer) | |
| Constructs a CoreApplication with injected subsystems. | |
| CoreApplication (char const *appName, std::shared_ptr< IWindowSystem > windowSystem, std::shared_ptr< IRenderer > renderer) | |
| Constructs a CoreApplication with custom systems but default window size. | |
| virtual | ~CoreApplication () |
| void | Initialize () override |
| Initializes the application and its subsystems. | |
| void | Run () override |
| Runs the main application loop. | |
| void | Update (float deltaTime) override |
| Updates the application state. | |
| void | Draw () override |
| Executes the rendering logic for the current frame. | |
| void | Shutdown () override |
| Performs cleanup and shuts down the application. | |
| ScreenSettings | GetScreenSettings () const override |
| Retrieves the current screen or window settings. | |
| Public Member Functions inherited from rendering_engine::IApplication | |
| virtual | ~IApplication ()=default |
| Virtual destructor for safe polymorphic deletion. | |
Protected Attributes | |
| bool | bIsFullScreen |
| unsigned int | mWidth |
| unsigned int | mHeight |
| std::string | mAppName |
| std::shared_ptr< AppTime > | mAppTime |
| std::shared_ptr< IWindowSystem > | mWindowSystem |
| std::shared_ptr< IRenderer > | mRenderer |
| std::shared_ptr< SceneManager > | mSceneManager |
Default implementation of the IApplication interface.
Coordinates the main execution flow of a rendering-based application, including initialization, update, rendering, and shutdown. It acts as the central manager that connects the renderer, window system, and scene management subsystems.
Definition at line 33 of file core_application.hpp.
| rendering_engine::CoreApplication::CoreApplication | ( | ) |
Constructs a CoreApplication using settings from the config file.
Loads AppConfig and applies its values to window setup.
Definition at line 13 of file core_application.cpp.
| rendering_engine::CoreApplication::CoreApplication | ( | char const * | appName | ) |
Constructs a CoreApplication with full-screen window size.
| appName | Name of the application, used for window caption and logging. |
Definition at line 26 of file core_application.cpp.
| rendering_engine::CoreApplication::CoreApplication | ( | unsigned int | width, |
| unsigned int | height, | ||
| char const * | appName ) |
Constructs a CoreApplication with explicit window size.
| width | Window width in pixels. |
| height | Window height in pixels. |
| appName | Name of the application. |
Definition at line 36 of file core_application.cpp.
| rendering_engine::CoreApplication::CoreApplication | ( | unsigned int | width, |
| unsigned int | height, | ||
| char const * | appName, | ||
| std::shared_ptr< IWindowSystem > | windowSystem, | ||
| std::shared_ptr< IRenderer > | renderer ) |
Constructs a CoreApplication with injected subsystems.
| width | Window width in pixels. |
| height | Window height in pixels. |
| appName | Name of the application. |
| windowSystem | Shared pointer to a custom window system implementation. |
| renderer | Shared pointer to a custom renderer implementation. |
Definition at line 48 of file core_application.cpp.
| rendering_engine::CoreApplication::CoreApplication | ( | char const * | appName, |
| std::shared_ptr< IWindowSystem > | windowSystem, | ||
| std::shared_ptr< IRenderer > | renderer ) |
Constructs a CoreApplication with custom systems but default window size.
| appName | Name of the application. |
| windowSystem | Shared pointer to a custom window system implementation. |
| renderer | Shared pointer to a custom renderer implementation. |
Definition at line 63 of file core_application.cpp.
|
virtual |
Definition at line 76 of file core_application.cpp.
|
overridevirtual |
Executes the rendering logic for the current frame.
Implements rendering_engine::IApplication.
Definition at line 124 of file core_application.cpp.
|
overridevirtual |
Retrieves the current screen or window settings.
Implements rendering_engine::IApplication.
Definition at line 143 of file core_application.cpp.
|
overridevirtual |
Initializes the application and its subsystems.
Implements rendering_engine::IApplication.
Definition at line 78 of file core_application.cpp.
|
overridevirtual |
Runs the main application loop.
Implements rendering_engine::IApplication.
Definition at line 102 of file core_application.cpp.
|
overridevirtual |
Performs cleanup and shuts down the application.
Implements rendering_engine::IApplication.
Definition at line 135 of file core_application.cpp.
|
overridevirtual |
Updates the application state.
| deltaTime | Time elapsed since the previous frame, in milliseconds. |
Implements rendering_engine::IApplication.
Definition at line 116 of file core_application.cpp.
|
protected |
Definition at line 94 of file core_application.hpp.
|
protected |
Definition at line 97 of file core_application.hpp.
|
protected |
Definition at line 99 of file core_application.hpp.
|
protected |
Definition at line 96 of file core_application.hpp.
|
protected |
Definition at line 101 of file core_application.hpp.
|
protected |
Definition at line 103 of file core_application.hpp.
|
protected |
Definition at line 95 of file core_application.hpp.
|
protected |
Definition at line 100 of file core_application.hpp.