From 5d67b896aaf232535096b5640e4e2948ab1cf285 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Wed, 14 Dec 2022 11:00:07 +0100 Subject: [PATCH] improve store init handling, add remaining stores --- mission/tmtc/PusTmFunnel.cpp | 21 +++++++++++++-------- mission/tmtc/PusTmFunnel.h | 1 + 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/mission/tmtc/PusTmFunnel.cpp b/mission/tmtc/PusTmFunnel.cpp index c0aabf89..5c4c8ead 100644 --- a/mission/tmtc/PusTmFunnel.cpp +++ b/mission/tmtc/PusTmFunnel.cpp @@ -19,6 +19,8 @@ PusTmFunnel::PusTmFunnel(object_id_t objectId, TimeReaderIF &timeReader, Storage sdcMan(sdcMan) { Clock::getClock_timeval(¤tTv); Clock::getUptime(&lastTvUpdate); + hkStore.addApid(config::EIVE_PUS_APID); + hkStore.addService(3); miscStore.addApid(config::EIVE_PUS_APID); miscStore.addService(17); miscStore.addService(200); @@ -88,12 +90,9 @@ ReturnValue_t PusTmFunnel::handlePacket(TmTcMessage &message) { lastTvUpdate = currentUptime; } - if (sdcMan.isSdCardUsable(std::nullopt)) { - if (not storesInitialized) { - miscStore.updateBaseDir(); - okStore.updateBaseDir(); - storesInitialized = true; - } + bool sdcUsable = sdcMan.isSdCardUsable(std::nullopt); + initStoresIfPossible(sdcUsable); + if (sdcUsable) { miscStore.passPacket(packet); okStore.passPacket(packet); } @@ -131,11 +130,17 @@ ReturnValue_t PusTmFunnel::handlePacket(TmTcMessage &message) { const char *PusTmFunnel::getName() const { return "PUS TM Funnel"; } -ReturnValue_t PusTmFunnel::initialize() { - if (not storesInitialized and sdcMan.isSdCardUsable(std::nullopt)) { +void PusTmFunnel::initStoresIfPossible(bool sdCardUsable) { + if (not storesInitialized and sdCardUsable) { miscStore.updateBaseDir(); okStore.updateBaseDir(); + hkStore.updateBaseDir(); + notOkStore.updateBaseDir(); storesInitialized = true; } +} + +ReturnValue_t PusTmFunnel::initialize() { + initStoresIfPossible(sdcMan.isSdCardUsable(std::nullopt)); return returnvalue::OK; } diff --git a/mission/tmtc/PusTmFunnel.h b/mission/tmtc/PusTmFunnel.h index d447e88b..b380ec79 100644 --- a/mission/tmtc/PusTmFunnel.h +++ b/mission/tmtc/PusTmFunnel.h @@ -45,6 +45,7 @@ class PusTmFunnel : public TmFunnelBase { SdCardMountedIF &sdcMan; ReturnValue_t handlePacket(TmTcMessage &message); + void initStoresIfPossible(bool sdCardUsable); ReturnValue_t initialize() override; };