CSB fifo depth configurable

This commit is contained in:
Robin Müller 2020-10-05 22:47:32 +02:00
parent c17d50bd1e
commit 8c43c6993e
4 changed files with 9 additions and 7 deletions

View File

@ -8,13 +8,12 @@
#include "../tmtcservices/AcceptsTelemetryIF.h" #include "../tmtcservices/AcceptsTelemetryIF.h"
#include "../serviceinterface/ServiceInterfaceStream.h" #include "../serviceinterface/ServiceInterfaceStream.h"
Service1TelecommandVerification::Service1TelecommandVerification( Service1TelecommandVerification::Service1TelecommandVerification(
object_id_t objectId, uint16_t apid, uint8_t serviceId, object_id_t objectId, uint16_t apid, uint8_t serviceId,
object_id_t targetDestination): object_id_t targetDestination, uint16_t messageQueueDepth):
SystemObject(objectId), apid(apid), serviceId(serviceId), SystemObject(objectId), apid(apid), serviceId(serviceId),
targetDestination(targetDestination) { targetDestination(targetDestination) {
tmQueue = QueueFactory::instance()->createMessageQueue(); tmQueue = QueueFactory::instance()->createMessageQueue(messageQueueDepth);
} }
Service1TelecommandVerification::~Service1TelecommandVerification() {} Service1TelecommandVerification::~Service1TelecommandVerification() {}

View File

@ -44,7 +44,8 @@ public:
static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::PUS_SERVICE_1; static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::PUS_SERVICE_1;
Service1TelecommandVerification(object_id_t objectId, Service1TelecommandVerification(object_id_t objectId,
uint16_t apid, uint8_t serviceId, object_id_t targetDestination); uint16_t apid, uint8_t serviceId, object_id_t targetDestination,
uint16_t messageQueueDepth);
virtual ~Service1TelecommandVerification(); virtual ~Service1TelecommandVerification();
/** /**

View File

@ -13,6 +13,8 @@
#include "../container/FIFO.h" #include "../container/FIFO.h"
#include "../serialize/SerializeIF.h" #include "../serialize/SerializeIF.h"
#include <FSFWConfig.h>
class TcPacketStored; class TcPacketStored;
namespace Factory{ namespace Factory{
@ -40,7 +42,7 @@ class CommandingServiceBase: public SystemObject,
friend void (Factory::setStaticFrameworkObjectIds)(); friend void (Factory::setStaticFrameworkObjectIds)();
public: public:
// We could make this configurable via preprocessor and the FSFWConfig file. // We could make this configurable via preprocessor and the FSFWConfig file.
static constexpr uint8_t COMMAND_INFO_FIFO_DEPTH = 3; static constexpr uint8_t COMMAND_INFO_FIFO_DEPTH = FSFW_CSB_FIFO_DEPTH;
static const uint8_t INTERFACE_ID = CLASS_ID::COMMAND_SERVICE_BASE; static const uint8_t INTERFACE_ID = CLASS_ID::COMMAND_SERVICE_BASE;