SignalManager.hpp

This file defines the SignalManager class, which collects sets of Signals to be looked up or manipulated later.

class SignalManager : public internal::SignalManager_Base
#include <SignalManager.hpp>

Public Functions

inline SignalManager()
SignalManager(SignalManager&&) = default
inline SignalManager(const SignalManager &in)
inline ~SignalManager()
inline uint32_t GetNextID() const
inline size_t GetSize() const
inline SignalBase &operator[](const std::string &name)
inline const SignalBase &operator[](const std::string &name) const
template<typename FUN_T>
inline auto &Add(const std::string &name)
template<typename FUN_T>
inline auto &Add(Signal<FUN_T> &signal)
inline void NotifyConstruct(SignalBase *signal) override
inline void NotifyDestruct(SignalBase *signal) override
inline void PrintNames(std::ostream &os = std::cout)

Private Functions

inline std::string GenerateSignalName(const std::string &pre = "")

Private Members

std::unordered_map<std::string, SignalBase*> signal_map
uint32_t next_id = 1
std::string prefix = "emp_signal_"