Air-Trap 1.0.0
A multiplayer R-Type clone game engine built with C++23 and ECS architecture
Loading...
Searching...
No Matches
rtp::ecs::SystemManager Class Reference

#include <SystemManager.hpp>

Collaboration diagram for rtp::ecs::SystemManager:

Public Member Functions

 SystemManager (Registry &registry)
 
template<typename T , typename... Args>
T & add (Args &&...args)
 
template<typename T >
T & getSystem (void)
 
void update (float dt)
 

Private Attributes

Registry_registry
 Reference to the entity registry.
 
std::unordered_map< std::type_index, Signature_signatures
 
std::unordered_map< std::type_index, std::unique_ptr< ISystem > > _systems
 Registered systems.
 

Detailed Description

Definition at line 56 of file SystemManager.hpp.

Constructor & Destructor Documentation

◆ SystemManager()

rtp::ecs::SystemManager::SystemManager ( Registry registry)
explicit

Definition at line 17 of file SystemManager.cpp.

Member Function Documentation

◆ add()

template<typename T , typename... Args>
T & rtp::ecs::SystemManager::add ( Args &&...  args)

◆ getSystem()

◆ update()

void rtp::ecs::SystemManager::update ( float  dt)

Definition at line 22 of file SystemManager.cpp.

References _systems.

Referenced by rtp::client::Application::update().

Member Data Documentation

◆ _registry

Registry& rtp::ecs::SystemManager::_registry
private

Reference to the entity registry.

Definition at line 69 of file SystemManager.hpp.

◆ _signatures

std::unordered_map<std::type_index, Signature> rtp::ecs::SystemManager::_signatures
private

Definition at line 70 of file SystemManager.hpp.

◆ _systems

std::unordered_map<std::type_index, std::unique_ptr<ISystem> > rtp::ecs::SystemManager::_systems
private

Registered systems.

Definition at line 72 of file SystemManager.hpp.

Referenced by update().


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