From ceb87b5abb2992a18266328e0ea34d9af15db7af Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Tue, 30 Nov 2021 14:53:49 +0100 Subject: [PATCH] added warning latch to avoid spam --- src/fsfw/tmtcservices/TmTcBridge.cpp | 17 ++++++++++------- src/fsfw/tmtcservices/TmTcBridge.h | 1 + 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/fsfw/tmtcservices/TmTcBridge.cpp b/src/fsfw/tmtcservices/TmTcBridge.cpp index 7346cfe2a..be45b6987 100644 --- a/src/fsfw/tmtcservices/TmTcBridge.cpp +++ b/src/fsfw/tmtcservices/TmTcBridge.cpp @@ -183,13 +183,16 @@ ReturnValue_t TmTcBridge::storeDownlinkData(TmTcMessage *message) { } if(tmFifo->full()) { -#if FSFW_CPP_OSTREAM_ENABLED == 1 - sif::warning << "TmTcBridge::storeDownlinkData: TM downlink max. number " - "of stored packet IDs reached!" << std::endl; -#else - sif::printWarning("TmTcBridge::storeDownlinkData: TM downlink max. number " - "of stored packet IDs reached!\n"); -#endif + if(warningLatch) { + #if FSFW_CPP_OSTREAM_ENABLED == 1 + sif::warning << "TmTcBridge::storeDownlinkData: TM downlink max. number " + "of stored packet IDs reached!" << std::endl; + #else + sif::printWarning("TmTcBridge::storeDownlinkData: TM downlink max. number " + "of stored packet IDs reached!\n"); + #endif + warningLatch = true; + } if(overwriteOld) { tmFifo->retrieve(&storeId); tmStore->deleteData(storeId); diff --git a/src/fsfw/tmtcservices/TmTcBridge.h b/src/fsfw/tmtcservices/TmTcBridge.h index 4980caff9..490d57fac 100644 --- a/src/fsfw/tmtcservices/TmTcBridge.h +++ b/src/fsfw/tmtcservices/TmTcBridge.h @@ -75,6 +75,7 @@ public: virtual uint16_t getIdentifier() override; virtual MessageQueueId_t getRequestQueue() override; + bool warningLatch = true; protected: //! Cached for initialize function. object_id_t tmStoreId = objects::NO_OBJECT;