Ketchup Engine
Loading...
Searching...
No Matches
SceneManager Class Reference

#include <SceneManager.h>

Collaboration diagram for SceneManager:
Collaboration graph

Static Public Member Functions

static void SetStartScene (Scene *start)
 Sets the start Scene. Should be set by the user in Ketchup::LoadResources.
 
static void SetNextScene (Scene *scene)
 Sets the next Scene. SceneManager will switch to the next scene at the top of the next frame.
 
static SceneGetCurrentScene ()
 Gets a pointer to the currently active Scene.
 

Private Member Functions

 SceneManager ()
 
 SceneManager (const SceneManager &)=delete
 
SceneManageroperator= (const SceneManager &)=delete
 
 ~SceneManager ()
 

Static Private Member Functions

static SceneManagerInstance ()
 
static void Free ()
 
static void UpdateCurrentScene ()
 
static void DrawCurrentScene ()
 
static void SwapScene ()
 

Private Attributes

Scenep_currScene
 
Scenep_nextScene
 
SceneUpdateStrategyp_updateStrategy
 
DefaultSceneUpdatep_defaultUpdate
 
SwapSceneUpdatep_swapUpdate
 

Static Private Attributes

static SceneManagerp_instance
 

Friends

class SceneManagerAttorney
 

Constructor & Destructor Documentation

◆ SceneManager() [1/2]

SceneManager::SceneManager ( )
private

◆ SceneManager() [2/2]

SceneManager::SceneManager ( const SceneManager )
privatedelete

◆ ~SceneManager()

SceneManager::~SceneManager ( )
private

Member Function Documentation

◆ DrawCurrentScene()

void SceneManager::DrawCurrentScene ( )
staticprivate

◆ Free()

void SceneManager::Free ( )
staticprivate

◆ GetCurrentScene()

Scene * SceneManager::GetCurrentScene ( )
static

Gets a pointer to the currently active Scene.

Haru, 3/19/2023.

Returns
A pointer to the active Scene.

◆ Instance()

SceneManager * SceneManager::Instance ( )
staticprivate

◆ operator=()

SceneManager & SceneManager::operator= ( const SceneManager )
privatedelete

◆ SetNextScene()

void SceneManager::SetNextScene ( Scene scene)
static

Sets the next Scene. SceneManager will switch to the next scene at the top of the next frame.

Haru, 3/19/2023.

Parameters
startThe Scene to switch to.

◆ SetStartScene()

void SceneManager::SetStartScene ( Scene start)
static

Sets the start Scene. Should be set by the user in Ketchup::LoadResources.

Haru, 3/19/2023.

Parameters
startThe Scene to start the game in.

◆ SwapScene()

void SceneManager::SwapScene ( )
staticprivate

◆ UpdateCurrentScene()

void SceneManager::UpdateCurrentScene ( )
staticprivate

Friends And Related Function Documentation

◆ SceneManagerAttorney

friend class SceneManagerAttorney
friend

Member Data Documentation

◆ p_currScene

Scene* SceneManager::p_currScene
private

◆ p_defaultUpdate

DefaultSceneUpdate* SceneManager::p_defaultUpdate
private

◆ p_instance

SceneManager * SceneManager::p_instance
staticprivate

◆ p_nextScene

Scene* SceneManager::p_nextScene
private

◆ p_swapUpdate

SwapSceneUpdate* SceneManager::p_swapUpdate
private

◆ p_updateStrategy

SceneUpdateStrategy* SceneManager::p_updateStrategy
private

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