Berserk
Public Member Functions | Static Public Member Functions | Friends | List of all members
Engine Class Referencefinal

Root manager class. More...

#include <Engine.hpp>

Public Member Functions

BRK_API Engine ()=default
 
BRK_API ~Engine ()
 
BRK_API void RequestClose ()
 Request close of the application Call this function to request close and application shut-down. More...
 
BRK_API bool CloseRequested ()
 Check if close of the application is requested. More...
 
BRK_API const ConfigGetConfig ()
 
BRK_API OutputGetOutput ()
 
BRK_API FileSystemGetFileSystem ()
 
BRK_API SchedulerGetScheduler ()
 
BRK_API EventDispatcherGetEventDispatcher ()
 
BRK_API WindowManagerGetWindowManager ()
 
BRK_API InputGetInput ()
 
BRK_API RHIDeviceGetRHIDevice ()
 
BRK_API ThreadGetRHIThread ()
 
BRK_API RenderEngineGetRenderEngine ()
 
BRK_API ResourceManagerGetResourceManager ()
 
BRK_API std::thread::id GetGameThreadId () const
 
BRK_API float GetDeltaTime () const
 
BRK_API float GetTime () const
 

Static Public Member Functions

static BRK_API EngineInstance ()
 Return engine global instance. More...
 

Friends

class Application
 

Detailed Description

Root manager class.

Engine is singleton class which is responsible for core engine infrastructure setup, provides access to core managers, maintenance main loop update and controls execution.

Standard way to access Engine is Engine::Instance().

Engine responsible for:

Constructor & Destructor Documentation

◆ Engine()

BRK_API Engine::Engine ( )
default

◆ ~Engine()

BRK_NS_BEGIN Engine::~Engine ( )

Member Function Documentation

◆ CloseRequested()

bool Engine::CloseRequested ( )

Check if close of the application is requested.

Returns
True if application close requested

◆ GetConfig()

const Config & Engine::GetConfig ( )
Returns
Engine config file

◆ GetDeltaTime()

float Engine::GetDeltaTime ( ) const
Returns
Current in-engine delta-time

◆ GetEventDispatcher()

EventDispatcher & Engine::GetEventDispatcher ( )
Returns
Engine event dispatch instance for events management

◆ GetFileSystem()

FileSystem & Engine::GetFileSystem ( )
Returns
Engine file system utils

◆ GetGameThreadId()

std::thread::id Engine::GetGameThreadId ( ) const
Returns
Game thread id

◆ GetInput()

Input & Engine::GetInput ( )
Returns
Engine input class

◆ GetOutput()

Output & Engine::GetOutput ( )
Returns
Engine standard output

◆ GetRenderEngine()

RenderEngine & Engine::GetRenderEngine ( )
Returns
Rendering engine for game rendering

◆ GetResourceManager()

ResourceManager & Engine::GetResourceManager ( )
Returns
Resource manager for game resources

◆ GetRHIDevice()

RHIDevice & Engine::GetRHIDevice ( )
Returns
RHI Device for low-level rendering

◆ GetRHIThread()

Thread & Engine::GetRHIThread ( )
Returns
RHI thread (for safe cmd submission)

◆ GetScheduler()

Scheduler & Engine::GetScheduler ( )
Returns
Engine scheduler instance for frame/timer actions

◆ GetTime()

float Engine::GetTime ( ) const
Returns
Current in-engine time

◆ GetWindowManager()

WindowManager & Engine::GetWindowManager ( )
Returns
Engine windows manager class

◆ Instance()

Engine & Engine::Instance ( )
static

Return engine global instance.

◆ RequestClose()

void Engine::RequestClose ( )

Request close of the application Call this function to request close and application shut-down.

Friends And Related Function Documentation

◆ Application

friend class Application
friend

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