eive-obsw/mission/tmtc/Service15TmStorage.h

25 lines
1.2 KiB
C
Raw Normal View History

2022-10-24 10:14:58 +02:00
#ifndef MISSION_TMTC_SERVICE15TMSTORAGE_H_
#define MISSION_TMTC_SERVICE15TMSTORAGE_H_
2022-10-24 10:26:00 +02:00
#include <fsfw/tmtcservices/CommandingServiceBase.h>
2022-10-24 10:14:58 +02:00
2022-10-24 10:26:00 +02:00
class Service15TmStorage : public CommandingServiceBase {
public:
2022-12-14 13:19:14 +01:00
enum Subservices : uint8_t { START_BY_TIME_RANGE_RETRIEVAL = 9, DELETE_UP_TO = 11 };
2022-10-24 10:26:00 +02:00
explicit Service15TmStorage(object_id_t objectId, uint16_t apid, uint8_t numParallelCommands,
uint16_t commandTimeoutSecs, size_t queueDepth);
2022-10-24 10:14:58 +02:00
2022-10-24 10:26:00 +02:00
private:
ReturnValue_t isValidSubservice(uint8_t subservice) override;
ReturnValue_t getMessageQueueAndObject(uint8_t subservice, const uint8_t* tcData,
size_t tcDataLen, MessageQueueId_t* id,
object_id_t* objectId) override;
ReturnValue_t prepareCommand(CommandMessage* message, uint8_t subservice, const uint8_t* tcData,
size_t tcDataLen, uint32_t* state, object_id_t objectId) override;
ReturnValue_t handleReply(const CommandMessage* reply, Command_t previousCommand, uint32_t* state,
CommandMessage* optionalNextCommand, object_id_t objectId,
bool* isStep) override;
};
2022-10-24 10:14:58 +02:00
#endif /* MISSION_TMTC_SERVICE15TMSTORAGE_H_ */