Overload  1.1
Game engine with editor
Public Member Functions | Public Attributes | List of all members
OvCore::SceneSystem::SceneManager Class Reference

#include <SceneManager.h>

Public Member Functions

 SceneManager (const std::string &p_sceneRootFolder="")
 
 ~SceneManager ()
 
void Update ()
 
void LoadAndPlayDelayed (const std::string &p_path, bool p_absolute=false)
 
void LoadEmptyScene ()
 
void LoadEmptyLightedScene ()
 
bool LoadScene (const std::string &p_path, bool p_absolute=false)
 
bool LoadSceneFromMemory (tinyxml2::XMLDocument &p_doc)
 
void UnloadCurrentScene ()
 
bool HasCurrentScene () const
 
SceneGetCurrentScene ()
 
std::string GetCurrentSceneSourcePath () const
 
bool IsCurrentSceneLoadedFromDisk () const
 
void StoreCurrentSceneSourcePath (const std::string &p_path)
 
void ForgetCurrentSceneSourcePath ()
 

Public Attributes

OvTools::Eventing::Event SceneLoadEvent
 
OvTools::Eventing::Event SceneUnloadEvent
 
OvTools::Eventing::Event< const std::string & > CurrentSceneSourcePathChangedEvent
 

Detailed Description

The scene manager of the current scene

Constructor & Destructor Documentation

◆ SceneManager()

OvCore::SceneSystem::SceneManager::SceneManager ( const std::string &  p_sceneRootFolder = "")

Default constructor

Parameters
p_sceneRootFolder(Optional)

@project: Overload

Author
: Overload Tech. @restrictions: This software may not be resold, redistributed or otherwise conveyed to a third party.

◆ ~SceneManager()

OvCore::SceneSystem::SceneManager::~SceneManager ( )

Default destructor

Member Function Documentation

◆ ForgetCurrentSceneSourcePath()

void OvCore::SceneSystem::SceneManager::ForgetCurrentSceneSourcePath ( )

Reset the current scene source path to an empty string

◆ GetCurrentScene()

OvCore::SceneSystem::Scene * OvCore::SceneSystem::SceneManager::GetCurrentScene ( )

◆ GetCurrentSceneSourcePath()

std::string OvCore::SceneSystem::SceneManager::GetCurrentSceneSourcePath ( ) const

Return the current scene source path

◆ HasCurrentScene()

bool OvCore::SceneSystem::SceneManager::HasCurrentScene ( ) const

Return true if a scene is currently loaded

◆ IsCurrentSceneLoadedFromDisk()

bool OvCore::SceneSystem::SceneManager::IsCurrentSceneLoadedFromDisk ( ) const

Return true if the currently loaded scene has been loaded from a file

◆ LoadAndPlayDelayed()

void OvCore::SceneSystem::SceneManager::LoadAndPlayDelayed ( const std::string &  p_path,
bool  p_absolute = false 
)

Load an play a scene with a delay

Parameters
p_path
p_absolute

◆ LoadEmptyLightedScene()

void OvCore::SceneSystem::SceneManager::LoadEmptyLightedScene ( )

Load an empty lighted scene in memory

◆ LoadEmptyScene()

void OvCore::SceneSystem::SceneManager::LoadEmptyScene ( )

Load an empty scene in memory

◆ LoadScene()

bool OvCore::SceneSystem::SceneManager::LoadScene ( const std::string &  p_path,
bool  p_absolute = false 
)

Load specific scene in memory

Parameters
p_scenePath
p_absolute(If this setting is set to true, the scene loader will ignore the "SceneRootFolder" given on SceneManager construction)

◆ LoadSceneFromMemory()

bool OvCore::SceneSystem::SceneManager::LoadSceneFromMemory ( tinyxml2::XMLDocument &  p_doc)

Load specific scene in memory

Parameters
p_scenePath

◆ StoreCurrentSceneSourcePath()

void OvCore::SceneSystem::SceneManager::StoreCurrentSceneSourcePath ( const std::string &  p_path)

Store the given path as the current scene source path

Parameters
p_path

◆ UnloadCurrentScene()

void OvCore::SceneSystem::SceneManager::UnloadCurrentScene ( )

Destroy current scene from memory

◆ Update()

void OvCore::SceneSystem::SceneManager::Update ( )

Update

Member Data Documentation

◆ CurrentSceneSourcePathChangedEvent

OvTools::Eventing::Event<const std::string&> OvCore::SceneSystem::SceneManager::CurrentSceneSourcePathChangedEvent

◆ SceneLoadEvent

OvTools::Eventing::Event OvCore::SceneSystem::SceneManager::SceneLoadEvent

◆ SceneUnloadEvent

OvTools::Eventing::Event OvCore::SceneSystem::SceneManager::SceneUnloadEvent

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