#include <event_bus.h>
Classes | |
| struct | HandlerEntry |
Public Types | |
| using | HandlerId = size_t |
Public Member Functions | |
| template<typename T > | |
| HandlerId | Subscribe (std::function< void(const T &)> handler) |
| template<typename T > | |
| void | Publish (const T &event) |
| void | Unsubscribe (HandlerId id) |
Private Attributes | |
| std::unordered_map< std::type_index, std::vector< HandlerEntry > > | handlers_ |
| HandlerId | next_id_ = 1 |
Definition at line 17 of file event_bus.h.
| using yaze::EventBus::HandlerId = size_t |
Definition at line 19 of file event_bus.h.
|
inline |
Definition at line 22 of file event_bus.h.
References handlers_, and next_id_.
Referenced by yaze::editor::EditorActivator::Initialize(), yaze::editor::StatusBar::Initialize(), yaze::test::CoreSystemsTestSuite::RunEventBusMultipleSubscribersTest(), yaze::test::CoreSystemsTestSuite::RunEventBusSubscribePublishTest(), yaze::test::CoreSystemsTestSuite::RunEventBusTypeSafetyTest(), yaze::test::CoreSystemsTestSuite::RunEventBusUnsubscribeTest(), and yaze::editor::EditorManager::SubscribeToEvents().
|
inline |
Definition at line 35 of file event_bus.h.
References handlers_.
Referenced by yaze::editor::SessionCoordinator::NotifySessionClosed(), yaze::editor::SessionCoordinator::NotifySessionCreated(), yaze::editor::SessionCoordinator::NotifySessionRomLoaded(), yaze::editor::SessionCoordinator::NotifySessionSwitched(), yaze::editor::EditorManager::OpenEditorAndPanelsFromFlags(), yaze::editor::EditorManager::ProcessStartupActions(), yaze::test::CoreSystemsTestSuite::RunEventBusMultipleSubscribersTest(), yaze::test::CoreSystemsTestSuite::RunEventBusSubscribePublishTest(), yaze::test::CoreSystemsTestSuite::RunEventBusTypeSafetyTest(), yaze::test::CoreSystemsTestSuite::RunEventBusUnsubscribeTest(), yaze::editor::PanelManager::TriggerOpenRom(), yaze::editor::PanelManager::TriggerRedo(), yaze::editor::PanelManager::TriggerResetLayout(), yaze::editor::PanelManager::TriggerSaveRom(), yaze::editor::PanelManager::TriggerShowAgentChatSidebar(), yaze::editor::PanelManager::TriggerShowAgentProposalsSidebar(), yaze::editor::PanelManager::TriggerShowCommandPalette(), yaze::editor::PanelManager::TriggerShowEmulator(), yaze::editor::PanelManager::TriggerShowHelp(), yaze::editor::PanelManager::TriggerShowPanelBrowser(), yaze::editor::PanelManager::TriggerShowSearch(), yaze::editor::PanelManager::TriggerShowSettings(), yaze::editor::PanelManager::TriggerShowShortcuts(), and yaze::editor::PanelManager::TriggerUndo().
|
inline |
Definition at line 45 of file event_bus.h.
References handlers_.
Referenced by yaze::test::CoreSystemsTestSuite::RunEventBusUnsubscribeTest().
|
private |
Definition at line 62 of file event_bus.h.
Referenced by Publish(), Subscribe(), and Unsubscribe().
|
private |
Definition at line 63 of file event_bus.h.
Referenced by Subscribe().