fsfw/src/fsfw/pus/Service17Test.cpp

44 lines
1.7 KiB
C++
Raw Normal View History

2021-07-13 20:58:45 +02:00
#include "fsfw/pus/Service17Test.h"
2020-09-16 19:05:25 +02:00
2022-02-02 10:29:30 +01:00
#include "fsfw/FSFW.h"
2021-07-13 20:58:45 +02:00
#include "fsfw/objectmanager/SystemObject.h"
2022-05-09 01:14:23 +02:00
#include "fsfw/serviceinterface.h"
2021-07-13 20:58:45 +02:00
#include "fsfw/tmtcpacket/pus/tm/TmPacketStored.h"
2020-09-16 19:05:25 +02:00
2022-02-02 10:29:30 +01:00
Service17Test::Service17Test(object_id_t objectId, uint16_t apid, uint8_t serviceId)
: PusServiceBase(objectId, apid, serviceId), packetSubCounter(0) {}
2020-09-16 19:05:25 +02:00
2022-05-09 01:14:23 +02:00
Service17Test::~Service17Test() = default;
2020-09-16 19:05:25 +02:00
ReturnValue_t Service17Test::handleRequest(uint8_t subservice) {
2022-02-02 10:29:30 +01:00
switch (subservice) {
case Subservice::CONNECTION_TEST: {
2021-04-13 00:19:09 +02:00
#if FSFW_USE_PUS_C_TELEMETRY == 0
2022-02-02 10:29:30 +01:00
TmPacketStoredPusA connectionPacket(apid, serviceId, Subservice::CONNECTION_TEST_REPORT,
packetSubCounter++);
2021-04-13 00:19:09 +02:00
#else
2022-02-02 10:29:30 +01:00
TmPacketStoredPusC connectionPacket(apid, serviceId, Subservice::CONNECTION_TEST_REPORT,
packetSubCounter++);
2021-04-13 00:19:09 +02:00
#endif
2022-02-02 10:29:30 +01:00
connectionPacket.sendPacket(requestQueue->getDefaultDestination(), requestQueue->getId());
return HasReturnvaluesIF::RETURN_OK;
}
2020-09-16 19:05:25 +02:00
case Subservice::EVENT_TRIGGER_TEST: {
2021-04-13 00:19:09 +02:00
#if FSFW_USE_PUS_C_TELEMETRY == 0
2022-02-02 10:29:30 +01:00
TmPacketStoredPusA connectionPacket(apid, serviceId, Subservice::CONNECTION_TEST_REPORT,
packetSubCounter++);
2021-04-13 00:19:09 +02:00
#else
2022-02-02 10:29:30 +01:00
TmPacketStoredPusC connectionPacket(apid, serviceId, Subservice::CONNECTION_TEST_REPORT,
packetSubCounter++);
2021-04-13 00:19:09 +02:00
#endif
2022-02-02 10:29:30 +01:00
connectionPacket.sendPacket(requestQueue->getDefaultDestination(), requestQueue->getId());
triggerEvent(TEST, 1234, 5678);
return RETURN_OK;
2020-09-16 19:05:25 +02:00
}
2022-02-02 10:29:30 +01:00
default:
return AcceptsTelecommandsIF::INVALID_SUBSERVICE;
}
2020-09-16 19:05:25 +02:00
}
2022-02-02 10:29:30 +01:00
ReturnValue_t Service17Test::performService() { return HasReturnvaluesIF::RETURN_OK; }