Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
Divide::ScenePool Class Reference

#include <ScenePool.h>

Public Member Functions

bool defaultSceneActive () const noexcept
 
ScenedefaultScene () const noexcept
 
SceneactiveScene () const noexcept
 
void activeScene (Scene &scene) noexcept
 
vector< Str< 256 > > customCodeScenes (bool sorted) const
 

Protected Member Functions

 ScenePool (Project &parentProject)
 
 ~ScenePool ()
 
ScenegetOrCreateScene (PlatformContext &context, Project &parent, const SceneEntry &sceneEntry, bool &foundInCache)
 
bool deleteScene (I64 targetGUID)
 

Private Attributes

SharedMutex _sceneLock
 
Project_parentProject
 
Scene_activeScene = nullptr
 
Scene_loadedScene = nullptr
 
Scene_defaultScene = nullptr
 
vector< Scene_ptr > _createdScenes
 

Friends

class Project
 

Detailed Description

Definition at line 45 of file ScenePool.h.

Constructor & Destructor Documentation

◆ ScenePool()

Divide::ScenePool::ScenePool ( Project parentProject)
protected

Definition at line 34 of file ScenePool.cpp.

◆ ~ScenePool()

Divide::ScenePool::~ScenePool ( )
protected

Definition at line 40 of file ScenePool.cpp.

Member Function Documentation

◆ activeScene() [1/2]

Scene * Divide::ScenePool::activeScene ( ) const
noexcept

Definition at line 67 of file ScenePool.cpp.

◆ activeScene() [2/2]

void Divide::ScenePool::activeScene ( Scene scene)
noexcept

Definition at line 72 of file ScenePool.cpp.

◆ customCodeScenes()

vector< Str< 256 > > Divide::ScenePool::customCodeScenes ( bool  sorted) const

Definition at line 155 of file ScenePool.cpp.

◆ defaultScene()

Scene * Divide::ScenePool::defaultScene ( ) const
noexcept

Definition at line 77 of file ScenePool.cpp.

◆ defaultSceneActive()

bool Divide::ScenePool::defaultSceneActive ( ) const
noexcept

Definition at line 62 of file ScenePool.cpp.

◆ deleteScene()

bool Divide::ScenePool::deleteScene ( I64  targetGUID)
protected

Definition at line 127 of file ScenePool.cpp.

◆ getOrCreateScene()

Scene * Divide::ScenePool::getOrCreateScene ( PlatformContext context,
Project parent,
const SceneEntry sceneEntry,
bool &  foundInCache 
)
protected

Definition at line 82 of file ScenePool.cpp.

Friends And Related Function Documentation

◆ Project

friend class Project
friend

Definition at line 48 of file ScenePool.h.

Member Data Documentation

◆ _activeScene

Scene* Divide::ScenePool::_activeScene = nullptr
private

Definition at line 70 of file ScenePool.h.

◆ _createdScenes

vector<Scene_ptr> Divide::ScenePool::_createdScenes
private

Definition at line 74 of file ScenePool.h.

◆ _defaultScene

Scene* Divide::ScenePool::_defaultScene = nullptr
private

Definition at line 72 of file ScenePool.h.

◆ _loadedScene

Scene* Divide::ScenePool::_loadedScene = nullptr
private

Definition at line 71 of file ScenePool.h.

◆ _parentProject

Project& Divide::ScenePool::_parentProject
private

Definition at line 68 of file ScenePool.h.

◆ _sceneLock

SharedMutex Divide::ScenePool::_sceneLock
mutableprivate

Definition at line 66 of file ScenePool.h.


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