VisuTwin Canvas
C++ 3D Engine — Metal Backend
Loading...
Searching...
No Matches
visutwin::canvas::ComponentSystemRegistry Class Reference

#include <framework/components/componentSystemRegistry.h>

Inheritance diagram for visutwin::canvas::ComponentSystemRegistry:
[legend]

Public Member Functions

void add (std::unique_ptr< IComponentSystem > system)
template<typename ComponentType>
IComponentSystemgetByComponentType () const
IComponentSystemgetByComponentTypeInfo (const std::type_info &typeInfo) const
IComponentSystemgetById (const std::string &id) const
Public Member Functions inherited from visutwin::canvas::EventHandler
template<typename... Args>
EventHandlerfire (const std::string &name, Args &&... args)
bool hasEvent (const std::string &name) const
void initEventHandler ()
template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandleroff (const std::string &name, Callback &&callback, void *scope=nullptr)
EventHandleroff (const std::string &name="", const HandleEventCallback &callback=HandleEventCallback(), void *scope=nullptr)
EventHandleroffByHandle (EventHandle *handle)
template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandleon (const std::string &name, Callback &&callback, void *scope=nullptr)
EventHandleon (const std::string &name, HandleEventCallback callback, void *scope=nullptr)
template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandleonce (const std::string &name, Callback &&callback, void *scope=nullptr)
EventHandleonce (const std::string &name, HandleEventCallback callback, void *scope=nullptr)
virtual ~EventHandler ()=default

Additional Inherited Members

Protected Member Functions inherited from visutwin::canvas::EventHandler
EventHandleaddCallback (const std::string &name, HandleEventCallback callback, void *scope=nullptr, bool once=false)

Detailed Description

Definition at line 20 of file componentSystemRegistry.h.

Member Function Documentation

◆ add()

void visutwin::canvas::ComponentSystemRegistry::add ( std::unique_ptr< IComponentSystem > system)

◆ getByComponentType()

template<typename ComponentType>
IComponentSystem * visutwin::canvas::ComponentSystemRegistry::getByComponentType ( ) const
inline

Definition at line 28 of file componentSystemRegistry.h.

◆ getByComponentTypeInfo()

IComponentSystem * visutwin::canvas::ComponentSystemRegistry::getByComponentTypeInfo ( const std::type_info & typeInfo) const
inline

Look up a component system by runtime type_info. Useful when the concrete Component type is only known at runtime (e.g., during clone).

Definition at line 38 of file componentSystemRegistry.h.

◆ getById()

IComponentSystem * visutwin::canvas::ComponentSystemRegistry::getById ( const std::string & id) const

Definition at line 24 of file componentSystemRegistry.cpp.


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