summaryrefslogtreecommitdiff
path: root/src/system_fsm/running.cpp
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2023-07-26 11:23:36 +1000
committerjacqueline <me@jacqueline.id.au>2023-07-26 11:23:36 +1000
commitf94be3db2f2bb6c1b359744cb915683095e4ee80 (patch)
tree79d335db661720947c518a535bdde733fe669032 /src/system_fsm/running.cpp
parentd8194135bbaad97d1f3428a74c7fc54ba3f604ec (diff)
downloadtangara-fw-f94be3db2f2bb6c1b359744cb915683095e4ee80.tar.gz
make event queue go faster
Diffstat (limited to 'src/system_fsm/running.cpp')
-rw-r--r--src/system_fsm/running.cpp20
1 files changed, 12 insertions, 8 deletions
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, SystemState, audio::AudioState, ui::UiState>(
- 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, SystemState, audio::AudioState, ui::UiState>(
- 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, SystemState, audio::AudioState, ui::UiState>(
- 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, SystemState>(
- internal::ReadyToUnmount());
+ events::System().Dispatch(internal::ReadyToUnmount{});
}
void Running::react(const internal::ReadyToUnmount& ev) {