I3TApplication
#include "I3T.h"
Inherits from Application, IStateful
Public Functions
| Name | |
|---|---|
| ~I3TApplication() override | |
| virtual void | appendScene(const Memento & memento, State::Scene * scene) override<br>Called on scene append. |
| virtual void | clearGlobal() override<br>Set the global state to some default empty state. |
| virtual void | clearScene(bool newScene) override<br>Set the scene state to some default empty state. |
| virtual void | loadGlobal(const Memento & memento) override<br>Load global state from a memento. |
| virtual void | loadScene(const Memento & memento, State::Scene * scene) override<br>Called on scene load, undo and redo. |
| void | loadSettings() |
| virtual Memento | saveGlobal() override<br>Save shared global state. |
| virtual Memento | saveScene(State::Scene * scene) override<br>Save state for the current scene. |
| void | saveSettings() |
Protected Functions
| Name | |
|---|---|
| virtual void | onBeginFrame() override |
| virtual void | onClose() override |
| virtual void | onEndFrame() override |
| virtual void | onInit() override |
| virtual void | onUpdate(double delta) override |
Public Attributes
| Name | |
|---|---|
| bool | m_debugTrackball <br>Debug switch for WindowManager, toggled in Help > Debug trackball. |
| bool | m_debugWindowManager <br>Debug switch for WindowManager, toggled in Help > Debug window manager. |
| ApplicationSettings | g_settings |
Additional inherited members
Public Functions inherited from Application
| Name | |
|---|---|
| virtual | ~Application() |
| void | beginFrame() |
| void | close()<br>Shutdown the whole application. |
| void | display() |
| void | endFrame() |
| void | enqueueCommand(ICommand * command)<br>Issue command. |
| bool | frame()<br>Single iteration of the game loop. |
| AppLoopManager & | getAppLoopManager() |
| double | getDeltaTime() const |
| const std::string & | getTitle() |
| GLFWwindow * | getWindow()<br>Get the main GLFW window. |
| bool | init()<br>Performs initialization of the application. |
| void | initWindow()<br>Init OpenGL stuffs before display loop. |
| int | run()<br>Enter main loop. |
| void | setTitle(const std::string & title) |
| void | setVSync(bool enable) |
| void | update()<br>Perform logic update. |
| template <typename T ,typename... Args> <br>T * | createModule(Args &&... args)<br>Creates instance of module, registers it to the application, and calls its init() method. |
| Application & | get() |
| GLFWwindow * | getCurrentWindow()<br>Get the active GLFW window. |
| template <typename T > <br>T & | getModule() |
Protected Functions inherited from Application
| Name | |
|---|---|
| Application() | |
| virtual void | onBeforeFrame() |
Protected Attributes inherited from Application
| Name | |
|---|---|
| AppLoopManager | m_appLoopManager |
| bool | m_shouldClose |
| Window * | m_window |
Public Functions inherited from IStateful
| Name | |
|---|---|
| virtual | ~IStateful() |
| Memento | emptyMemento()<br>Create an empty memento (rapidjson::Document) |
Public Functions Documentation
function ~I3TApplication
~I3TApplication() override~I3TApplication() overridefunction appendScene
inline virtual void appendScene(
const Memento & memento,
State::Scene * scene
) overrideinline virtual void appendScene(
const Memento & memento,
State::Scene * scene
) overrideCalled on scene append.
Parameters:
- scene The current scene
- memento Scene state to appended
Reimplements: IStateful::appendScene
function clearGlobal
virtual void clearGlobal() overridevirtual void clearGlobal() overrideSet the global state to some default empty state.
Reimplements: IStateful::clearGlobal
function clearScene
inline virtual void clearScene(
bool newScene
) overrideinline virtual void clearScene(
bool newScene
) overrideSet the scene state to some default empty state.
Parameters:
- newScene Whether to perform basic new scene initialization.
Reimplements: IStateful::clearScene
function loadGlobal
virtual void loadGlobal(
const Memento & memento
) overridevirtual void loadGlobal(
const Memento & memento
) overrideLoad global state from a memento.
Parameters:
- memento New global state
Reimplements: IStateful::loadGlobal
function loadScene
inline virtual void loadScene(
const Memento & memento,
State::Scene * scene
) overrideinline virtual void loadScene(
const Memento & memento,
State::Scene * scene
) overrideCalled on scene load, undo and redo.
Parameters:
- scene The current scene or nullptr (in case of undo/redo)
- memento New scene state
Reimplements: IStateful::loadScene
function loadSettings
void loadSettings()void loadSettings()function saveGlobal
virtual Memento saveGlobal() overridevirtual Memento saveGlobal() overrideSave shared global state.
Reimplements: IStateful::saveGlobal
function saveScene
virtual Memento saveScene(
State::Scene * scene
) overridevirtual Memento saveScene(
State::Scene * scene
) overrideSave state for the current scene.
Parameters:
- scene The current scene or nullptr (in case of undo/redo)
Reimplements: IStateful::saveScene
The scene parameter should contain a scene object for full filesystem saves and nullptr for quick undo/redo operations.
function saveSettings
void saveSettings()void saveSettings()Protected Functions Documentation
function onBeginFrame
inline virtual void onBeginFrame() overrideinline virtual void onBeginFrame() overrideReimplements: Application::onBeginFrame
function onClose
virtual void onClose() overridevirtual void onClose() overrideReimplements: Application::onClose
function onEndFrame
inline virtual void onEndFrame() overrideinline virtual void onEndFrame() overrideReimplements: Application::onEndFrame
function onInit
virtual void onInit() overridevirtual void onInit() overrideReimplements: Application::onInit
function onUpdate
virtual void onUpdate(
double delta
) overridevirtual void onUpdate(
double delta
) overrideReimplements: Application::onUpdate
Public Attributes Documentation
variable m_debugTrackball
bool m_debugTrackball = false;bool m_debugTrackball = false;Debug switch for WindowManager, toggled in Help > Debug trackball.
variable m_debugWindowManager
bool m_debugWindowManager = false;bool m_debugWindowManager = false;Debug switch for WindowManager, toggled in Help > Debug window manager.
variable g_settings
static ApplicationSettings g_settings;static ApplicationSettings g_settings;Updated on 2026-05-21 at 15:39:35 +0000