add paramHelper

This commit is contained in:
Robin Müller 2023-11-15 10:03:56 +01:00
parent 91b194d8eb
commit 7673d8b396
Signed by: muellerr
GPG Key ID: A649FB78196E3849
2 changed files with 16 additions and 1 deletions

View File

@ -9,6 +9,7 @@ FreshDeviceHandlerBase::FreshDeviceHandlerBase(DhbConfig config)
actionHelper(this, nullptr), actionHelper(this, nullptr),
modeHelper(this), modeHelper(this),
healthHelper(this, getObjectId()), healthHelper(this, getObjectId()),
paramHelper(this),
poolManager(this, nullptr), poolManager(this, nullptr),
defaultFdirParent(config.defaultFdirParent) { defaultFdirParent(config.defaultFdirParent) {
auto mqArgs = MqArgs(config.objectId, static_cast<void*>(this)); auto mqArgs = MqArgs(config.objectId, static_cast<void*>(this));
@ -83,6 +84,11 @@ ReturnValue_t FreshDeviceHandlerBase::handleQueue() {
continue; continue;
} }
result = paramHelper.handleParameterMessage(&command);
if (result == returnvalue::OK) {
continue;
}
result = poolManager.handleHousekeepingMessage(&command); result = poolManager.handleHousekeepingMessage(&command);
if (result == returnvalue::OK) { if (result == returnvalue::OK) {
continue; continue;
@ -155,6 +161,10 @@ ReturnValue_t FreshDeviceHandlerBase::initialize() {
if (result != returnvalue::OK) { if (result != returnvalue::OK) {
return result; return result;
} }
result = paramHelper.initialize();
if (result != returnvalue::OK) {
return result;
}
result = poolManager.initialize(messageQueue); result = poolManager.initialize(messageQueue);
if (result != returnvalue::OK) { if (result != returnvalue::OK) {
@ -171,6 +181,7 @@ ReturnValue_t FreshDeviceHandlerBase::initialize() {
} }
return SystemObject::initialize(); return SystemObject::initialize();
} }
ReturnValue_t FreshDeviceHandlerBase::getParameter(uint8_t domainId, uint8_t uniqueId, ReturnValue_t FreshDeviceHandlerBase::getParameter(uint8_t domainId, uint8_t uniqueId,
ParameterWrapper* parameterWrapper, ParameterWrapper* parameterWrapper,
const ParameterWrapper* newValues, const ParameterWrapper* newValues,

View File

@ -9,6 +9,8 @@
#include "fsfw/health/HealthHelper.h" #include "fsfw/health/HealthHelper.h"
#include "fsfw/modes/HasModesIF.h" #include "fsfw/modes/HasModesIF.h"
#include "fsfw/objectmanager.h" #include "fsfw/objectmanager.h"
#include "fsfw/parameters/ParameterHelper.h"
#include "fsfw/parameters/ReceivesParameterMessagesIF.h"
#include "fsfw/retval.h" #include "fsfw/retval.h"
#include "fsfw/subsystem/ModeTreeChildIF.h" #include "fsfw/subsystem/ModeTreeChildIF.h"
#include "fsfw/subsystem/ModeTreeConnectionIF.h" #include "fsfw/subsystem/ModeTreeConnectionIF.h"
@ -22,6 +24,7 @@ struct DhbConfig {
object_id_t defaultFdirParent = objects::NO_OBJECT; object_id_t defaultFdirParent = objects::NO_OBJECT;
uint32_t msgQueueDepth = 10; uint32_t msgQueueDepth = 10;
}; };
class FreshDeviceHandlerBase : public SystemObject, class FreshDeviceHandlerBase : public SystemObject,
public DeviceHandlerIF, public DeviceHandlerIF,
public HasModesIF, public HasModesIF,
@ -30,7 +33,7 @@ class FreshDeviceHandlerBase : public SystemObject,
public ModeTreeChildIF, public ModeTreeChildIF,
public ModeTreeConnectionIF, public ModeTreeConnectionIF,
public HasActionsIF, public HasActionsIF,
public HasParametersIF, public ReceivesParameterMessagesIF,
public HasLocalDataPoolIF { public HasLocalDataPoolIF {
public: public:
explicit FreshDeviceHandlerBase(DhbConfig config); explicit FreshDeviceHandlerBase(DhbConfig config);
@ -61,6 +64,7 @@ class FreshDeviceHandlerBase : public SystemObject,
ActionHelper actionHelper; ActionHelper actionHelper;
ModeHelper modeHelper; ModeHelper modeHelper;
HealthHelper healthHelper; HealthHelper healthHelper;
ParameterHelper paramHelper;
LocalDataPoolManager poolManager; LocalDataPoolManager poolManager;
bool hasCustomFdir = false; bool hasCustomFdir = false;