|
|
template<std::derived_from< Module > T> |
| void | Register (std::unique_ptr< T > module) |
| | Add a new module to the registry. Overwrites any existing module of the same type.
|
| |
|
template<std::derived_from< Module > T> |
| void | Unregister () |
| | Remove a module from the registry. Does nothing if no matching module is found.
|
| |
|
template<std::derived_from< Module > T> |
| auto | IsRegistered () const noexcept -> bool |
| | Check if a module matching a type is registered.
|
| |
|
auto | IsRegistered (size_t id) const noexcept -> bool |
| | Check if a module matching an id is registered.
|
| |
|
template<std::derived_from< Module > T> |
| auto | Get () const noexcept -> T * |
| | Get a pointer to a module or nullptr if it is unregistered.
|
| |
|
auto | Get (size_t id) const noexcept -> Module * |
| | Get a pointer to a module by id or nullptr if it is unregistered.
|
| |
|
auto | GetAllModules () const noexcept -> const std::vector< std::unique_ptr< Module > > & |
| |
|
| StableAddress (const StableAddress &)=delete |
| |
|
| StableAddress (StableAddress &&)=delete |
| |
|
StableAddress & | operator= (const StableAddress &)=delete |
| |
|
StableAddress & | operator= (StableAddress &&)=delete |
| |
The documentation for this class was generated from the following file: