From f94be3db2f2bb6c1b359744cb915683095e4ee80 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Wed, 26 Jul 2023 11:23:36 +1000 Subject: make event queue go faster --- src/system_fsm/running.cpp | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'src/system_fsm/running.cpp') diff --git a/src/system_fsm/running.cpp b/src/system_fsm/running.cpp index a46cb8dc..0e988193 100644 --- a/src/system_fsm/running.cpp +++ b/src/system_fsm/running.cpp @@ -33,8 +33,10 @@ void Running::entry() { auto storage_res = drivers::SdStorage::Create(sGpios.get()); if (storage_res.has_error()) { ESP_LOGW(kTag, "failed to mount!"); - events::Dispatch( - StorageError()); + + events::System().Dispatch(StorageError{}); + events::Audio().Dispatch(StorageError{}); + events::Ui().Dispatch(StorageError{}); return; } sStorage.reset(storage_res.value()); @@ -45,16 +47,19 @@ void Running::entry() { auto database_res = database::Database::Open(sFileGatherer, sTagParser.get()); if (database_res.has_error()) { ESP_LOGW(kTag, "failed to open!"); - events::Dispatch( - StorageError()); + events::System().Dispatch(StorageError{}); + events::Audio().Dispatch(StorageError{}); + events::Ui().Dispatch(StorageError{}); return; } sDatabase.reset(database_res.value()); console::AppConsole::sDatabase = sDatabase; ESP_LOGI(kTag, "storage loaded okay"); - events::Dispatch( - StorageMounted{.db = sDatabase}); + StorageMounted ev{.db = sDatabase}; + events::System().Dispatch(ev); + events::Audio().Dispatch(ev); + events::Ui().Dispatch(ev); } void Running::exit() { @@ -63,8 +68,7 @@ void Running::exit() { } void Running::react(const StorageUnmountRequested& ev) { - events::Dispatch( - internal::ReadyToUnmount()); + events::System().Dispatch(internal::ReadyToUnmount{}); } void Running::react(const internal::ReadyToUnmount& ev) { -- cgit v1.2.3