Wraith  0.1.5
Basic 3D game engine in C++
SceneManager Class Reference

Manager for scenes. Allows access for current scene and setting scenes to use More...

#include <SceneManager.h>

Collaboration diagram for SceneManager:
Collaboration graph

Static Public Member Functions

static void SetStartScene (Scene *pScene)
 Sets a start scene to begin with. More...
 
static void SetNextScene (Scene *pScene)
 Sets the next scene to change to. More...
 
static SceneGetCurrentScene ()
 Gets the current scene. More...
 

Private Types

enum class  SceneChangeState { PENDING_SCENE_CHANGE , NO_SCENE_CHANGE }
 

Private Member Functions

 SceneManager (const SceneManager &)=delete
 
SceneManageroperator= (const SceneManager &)=delete
 
 SceneManager (SceneManager &&)=delete
 
SceneManageroperator= (SceneManager &&)=delete
 
void privSetStartScene (Scene *)
 
void privSetNextScene (Scene *)
 
SceneprivGetCurrentScene () const
 
void privInitializeStartScene () const
 
void privUpdate ()
 
void privDraw () const
 
void privChangeScene (Scene *)
 

Static Private Member Functions

static SceneManagerGetInstance ()
 
static void InitializeStartScene ()
 Initializes the starting scene. More...
 
static void Update ()
 Calls Scene::update() on current scene. More...
 
static void Draw ()
 Calls Scene::draw() on current scene. More...
 
static void ChangeScene (Scene *pScene)
 Changes to particular scene. More...
 
static void Delete ()
 

Private Attributes

Scene_pCurrentScene
 
SceneChangeNullCommand_pSceneChangeNullCommand
 
SceneChangeCommand_pSceneChangeCommand
 
SceneManagerCommand_pCurrentSceneCommand
 
SceneChangeState _currentSceneChangeState
 

Static Private Attributes

static SceneManagerpSceneManagerInstance = nullptr
 

Friends

class SceneManagerAttorney
 

Detailed Description

Manager for scenes. Allows access for current scene and setting scenes to use

Member Function Documentation

◆ ChangeScene()

static void SceneManager::ChangeScene ( Scene pScene)
inlinestaticprivate

Changes to particular scene.

Parameters
pScenethe pointer scene in which to change to.

◆ Draw()

static void SceneManager::Draw ( )
inlinestaticprivate

Calls Scene::draw() on current scene.

ONLY called by Wraith::Draw() through SceneManagerAttorney.

◆ InitializeStartScene()

static void SceneManager::InitializeStartScene ( )
inlinestaticprivate

Initializes the starting scene.

ONLY called by Wraith::LoadContent() through SceneManagerAttorney.

◆ Update()

static void SceneManager::Update ( )
inlinestaticprivate

Calls Scene::update() on current scene.

ONLY called by Wraith::update() through SceneManagerAttorney.


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