Rendering Engine 0.2.9
Modular Graphics Rendering Engine | v0.2.9
rendering_engine::IApplication Class Referenceabstract

Defines a generic application interface for rendering-based programs. More...

#include <i_application.hpp>

Inherited by rendering_engine::CoreApplication.

Public Member Functions

virtual void Initialize ()=0
 Initializes the application and its subsystems. More...
 
virtual void Run ()=0
 Runs the main application loop. More...
 
virtual void Update (float deltaTime)=0
 Updates the application state. More...
 
virtual void Draw ()=0
 Executes the rendering logic for the current frame. More...
 
virtual void Shutdown ()=0
 Performs cleanup and shuts down the application. More...
 
virtual ~IApplication ()=default
 Virtual destructor for safe polymorphic deletion. More...
 
virtual ScreenSettings GetScreenSettings () const =0
 Retrieves the current screen or window settings. More...
 
virtual FrameMetrics GetFrameMetrics () const =0
 Returns performance metrics of the last processed frame. More...
 

Detailed Description

Defines a generic application interface for rendering-based programs.

Provides lifecycle control for initialization, main loop, update, rendering, and shutdown. All specific applications built on top of the Rendering Engine should implement this interface.

See also
IRenderer

Definition at line 67 of file i_application.hpp.

Constructor & Destructor Documentation

◆ ~IApplication()

virtual rendering_engine::IApplication::~IApplication ( )
virtualdefault

Virtual destructor for safe polymorphic deletion.

Member Function Documentation

◆ Draw()

virtual void rendering_engine::IApplication::Draw ( )
pure virtual

Executes the rendering logic for the current frame.

Implemented in rendering_engine::CoreApplication.

◆ GetFrameMetrics()

virtual FrameMetrics rendering_engine::IApplication::GetFrameMetrics ( ) const
pure virtual

Returns performance metrics of the last processed frame.

Returns
FrameMetrics structure containing timing and FPS data.

Implemented in rendering_engine::CoreApplication.

◆ GetScreenSettings()

virtual ScreenSettings rendering_engine::IApplication::GetScreenSettings ( ) const
pure virtual

Retrieves the current screen or window settings.

Returns
A structure describing screen configuration parameters.

Implemented in rendering_engine::CoreApplication.

◆ Initialize()

virtual void rendering_engine::IApplication::Initialize ( )
pure virtual

Initializes the application and its subsystems.

Implemented in rendering_engine::CoreApplication.

◆ Run()

virtual void rendering_engine::IApplication::Run ( )
pure virtual

Runs the main application loop.

Implemented in rendering_engine::CoreApplication.

◆ Shutdown()

virtual void rendering_engine::IApplication::Shutdown ( )
pure virtual

Performs cleanup and shuts down the application.

Implemented in rendering_engine::CoreApplication.

◆ Update()

virtual void rendering_engine::IApplication::Update ( float  deltaTime)
pure virtual

Updates the application state.

Parameters
deltaTimeTime elapsed since the previous frame, in milliseconds.

Implemented in rendering_engine::CoreApplication.


The documentation for this class was generated from the following file: