CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::Engine Class Reference

#include <CeresEngine/Engine.hpp>

Inheritance diagram for CeresEngine::Engine:
CeresEngine::Application

Classes

struct  Service
 A wrapper class that stores and manages an engine Service. More...
 

Public Member Functions

 Engine ()
 Creates a new engine instance.
 
 Engine (const Engine &engine)=delete
 
Engineoperator= (const Engine &engine)=delete
 
virtual ~Engine ()
 Destroys the engine instance.
 

Static Public Member Functions

static Engineshared () noexcept
 

Public Attributes

UPtr< ExecutionContextbackgroundQueue
 A work queue that gets drained by several background threads.
 
Service< RunLoopmainRunLoop
 The engine's main thread run loop.
 
Service< ResourceManagerresourceManager
 The engine's resource manager.
 
Service< RenderAPIrenderAPI
 The engine's render API.
 
Service< AudioAPIaudioAPI
 The engine's audio API.
 
Service< InputProviderinputProvider
 The engine's input provider.
 
Service< InputManagerinputManager
 The engine's input manager.
 
Service< SceneManagersceneManager
 The engine's scene manager. Handles the simulation of a scene.
 
Service< Rendererrenderer
 The engine's scene renderer. Can be null if rendering is disabled.
 
Service< Platformplatform
 The engine's platform implementation.
 
Service< URLSessionurlSession
 The engine URL session service.
 
double lastSimulationTime = 0.0
 The amount of time took to render the last frame.
 
double lastRenderTime = 0.0
 The amount of time took to render the last frame.
 
UInt64 visibleObjects = 0
 

Constructor & Destructor Documentation

◆ Engine() [1/2]

CeresEngine::Engine::Engine ( )

Creates a new engine instance.

◆ Engine() [2/2]

CeresEngine::Engine::Engine ( const Engine engine)
delete

◆ ~Engine()

virtual CeresEngine::Engine::~Engine ( )
virtual

Destroys the engine instance.

Member Function Documentation

◆ operator=()

Engine & CeresEngine::Engine::operator= ( const Engine engine)
delete

◆ shared()

static Engine & CeresEngine::Engine::shared ( )
staticnoexcept
Returns
A shared instance of the engine

Member Data Documentation

◆ audioAPI

Service<AudioAPI> CeresEngine::Engine::audioAPI

The engine's audio API.

◆ backgroundQueue

UPtr<ExecutionContext> CeresEngine::Engine::backgroundQueue

A work queue that gets drained by several background threads.

◆ inputManager

Service<InputManager> CeresEngine::Engine::inputManager

The engine's input manager.

◆ inputProvider

Service<InputProvider> CeresEngine::Engine::inputProvider

The engine's input provider.

◆ lastRenderTime

double CeresEngine::Engine::lastRenderTime = 0.0

The amount of time took to render the last frame.

◆ lastSimulationTime

double CeresEngine::Engine::lastSimulationTime = 0.0

The amount of time took to render the last frame.

◆ mainRunLoop

Service<RunLoop> CeresEngine::Engine::mainRunLoop

The engine's main thread run loop.

◆ platform

Service<Platform> CeresEngine::Engine::platform

The engine's platform implementation.

◆ renderAPI

Service<RenderAPI> CeresEngine::Engine::renderAPI

The engine's render API.

◆ renderer

Service<Renderer> CeresEngine::Engine::renderer

The engine's scene renderer. Can be null if rendering is disabled.

◆ resourceManager

Service<ResourceManager> CeresEngine::Engine::resourceManager

The engine's resource manager.

◆ sceneManager

Service<SceneManager> CeresEngine::Engine::sceneManager

The engine's scene manager. Handles the simulation of a scene.

◆ urlSession

Service<URLSession> CeresEngine::Engine::urlSession

The engine URL session service.

◆ visibleObjects

UInt64 CeresEngine::Engine::visibleObjects = 0

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