Compare commits

...

9 Commits

4 changed files with 6 additions and 3 deletions

View File

@ -11,6 +11,7 @@ FreshDeviceHandlerBase::FreshDeviceHandlerBase(DhbConfig config)
healthHelper(this, getObjectId()),
paramHelper(this),
poolManager(this, nullptr),
fdirInstance(config.fdirInstance),
defaultFdirParent(config.defaultFdirParent) {
auto mqArgs = MqArgs(config.objectId, static_cast<void*>(this));
messageQueue = QueueFactory::instance()->createMessageQueue(
@ -30,6 +31,7 @@ FreshDeviceHandlerBase::~FreshDeviceHandlerBase() {
ReturnValue_t FreshDeviceHandlerBase::performOperation(uint8_t opCode) {
performDeviceOperationPreQueueHandling(opCode);
handleQueue();
fdirInstance->checkForFailures();
performDeviceOperation(opCode);
poolManager.performHkOperation();
return returnvalue::OK;

View File

@ -129,7 +129,7 @@ class FreshDeviceHandlerBase : public SystemObject,
ReturnValue_t executeAction(ActionId_t actionId, MessageQueueId_t commandedBy,
const uint8_t* data, size_t size) override = 0;
// Executable overrides.
ReturnValue_t performOperation(uint8_t opCode) override;
virtual ReturnValue_t performOperation(uint8_t opCode) override;
ReturnValue_t initializeAfterTaskCreation() override;
/**

View File

@ -1,7 +1,6 @@
#include "SpacePacketReader.h"
#include "fsfw/serialize/SerializeIF.h"
#include "fsfw/serviceinterface/ServiceInterface.h"
SpacePacketReader::SpacePacketReader(const uint8_t* setAddress, size_t maxSize_) {
setInternalFields(setAddress, maxSize_);

View File

@ -1,7 +1,7 @@
#ifndef FSFW_TMTCSERVICES_SOURCESEQUENCECOUNTER_H_
#define FSFW_TMTCSERVICES_SOURCESEQUENCECOUNTER_H_
#include "fsfw/tmtcpacket/ccsds/SpacePacketReader.h"
#include "fsfw/tmtcpacket/ccsds/defs.h"
class SourceSequenceCounter {
private:
@ -9,6 +9,7 @@ class SourceSequenceCounter {
public:
SourceSequenceCounter(uint16_t initialSequenceCount = 0) : sequenceCount(initialSequenceCount) {}
void increment() { sequenceCount = (sequenceCount + 1) % (ccsds::LIMIT_SEQUENCE_COUNT); }
void decrement() { sequenceCount = (sequenceCount - 1) % (ccsds::LIMIT_SEQUENCE_COUNT); }
uint16_t get() const { return this->sequenceCount; }
@ -25,6 +26,7 @@ class SourceSequenceCounter {
sequenceCount = newCount;
return *this;
}
void set(uint16_t sequenceCount) { this->sequenceCount = sequenceCount; }
operator uint16_t() { return this->get(); }
};