#ifndef MISSION_TMTC_PERSISTENTSINGLETMSTORETASK_H_ #define MISSION_TMTC_PERSISTENTSINGLETMSTORETASK_H_ #include #include #include #include #include class PersistentSingleTmStoreTask : public TmStoreTaskBase, public ExecutableObjectIF { public: PersistentSingleTmStoreTask(object_id_t objectId, StorageManagerIF& ipcStore, PersistentTmStoreWithTmQueue& storeWithQueue, VirtualChannel& channel, Event eventIfDumpDone, Event eventIfCancelled, SdCardMountedIF& sdcMan); ReturnValue_t performOperation(uint8_t opCode) override; private: PersistentTmStoreWithTmQueue& storeWithQueue; DumpContext dumpContext; Countdown tcHandlingCd = Countdown(400); Countdown graceDelayDuringDumping = Countdown(100); bool initStoresIfPossible() override; }; #endif /* MISSION_TMTC_PERSISTENTSINGLETMSTORETASK_H_ */