Leviathan  0.8.0.0
Leviathan game engine
Leviathan::GameWorld::Implementation Class Reference

Public Member Functions

 ~Implementation ()
 

Public Attributes

std::map< std::string, ScriptComponentHolder::pointer > RegisteredScriptComponents
 
std::map< std::string, std::unique_ptr< ScriptSystemWrapper > > RegisteredScriptSystems
 
std::vector< std::tuple< WantedClockType::time_point, ResponseEntityUpdate > > QueuedEntityUpdates
 Queued entity updates. Contains the time it was received in order to throw out old ones. More...
 
bs::HSceneObject WorldCameraSO
 
bs::HCamera WorldCamera
 
bs::HSceneObject SunlightSO
 
bs::HLight Sunlight
 
bs::HSceneObject SkyboxSO
 
bs::HSkybox Skybox
 

Static Public Attributes

static int LayerNumber = 0
 A temporary solution around no multiple scenes in BSF. More...
 

Detailed Description

Definition at line 46 of file GameWorld.cpp.

Constructor & Destructor Documentation

◆ ~Implementation()

Leviathan::GameWorld::Implementation::~Implementation ( )
inline

Definition at line 48 of file GameWorld.cpp.

49  {
50  // Check that there are no external references to these
51  for(const auto& tuple : RegisteredScriptComponents) {
52 
53  if(tuple.second->GetRefCount() != 1) {
54 
55  LOG_FATAL("GameWorld: ImplRelease: RegisteredScriptComponent (holder): has "
56  "external refs, count: " +
57  std::to_string(tuple.second->GetRefCount()));
58  }
59  }
60  }
#define LOG_FATAL(x)
Definition: Define.h:92
std::map< std::string, ScriptComponentHolder::pointer > RegisteredScriptComponents
Definition: GameWorld.cpp:62

Member Data Documentation

◆ LayerNumber

int Leviathan::GameWorld::Implementation::LayerNumber = 0
static

A temporary solution around no multiple scenes in BSF.

Definition at line 79 of file GameWorld.cpp.

◆ QueuedEntityUpdates

std::vector<std::tuple<WantedClockType::time_point, ResponseEntityUpdate> > Leviathan::GameWorld::Implementation::QueuedEntityUpdates

Queued entity updates. Contains the time it was received in order to throw out old ones.

Definition at line 67 of file GameWorld.cpp.

◆ RegisteredScriptComponents

std::map<std::string, ScriptComponentHolder::pointer> Leviathan::GameWorld::Implementation::RegisteredScriptComponents

Definition at line 62 of file GameWorld.cpp.

◆ RegisteredScriptSystems

std::map<std::string, std::unique_ptr<ScriptSystemWrapper> > Leviathan::GameWorld::Implementation::RegisteredScriptSystems

Definition at line 63 of file GameWorld.cpp.

◆ Skybox

bs::HSkybox Leviathan::GameWorld::Implementation::Skybox

Definition at line 76 of file GameWorld.cpp.

◆ SkyboxSO

bs::HSceneObject Leviathan::GameWorld::Implementation::SkyboxSO

Definition at line 75 of file GameWorld.cpp.

◆ Sunlight

bs::HLight Leviathan::GameWorld::Implementation::Sunlight

Definition at line 74 of file GameWorld.cpp.

◆ SunlightSO

bs::HSceneObject Leviathan::GameWorld::Implementation::SunlightSO

Definition at line 73 of file GameWorld.cpp.

◆ WorldCamera

bs::HCamera Leviathan::GameWorld::Implementation::WorldCamera

Definition at line 71 of file GameWorld.cpp.

◆ WorldCameraSO

bs::HSceneObject Leviathan::GameWorld::Implementation::WorldCameraSO

Definition at line 70 of file GameWorld.cpp.


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