acs ctrl triggers event now
EIVE/eive-obsw/pipeline/pr-main This commit looks good Details

This commit is contained in:
Marius Eggert 2024-02-13 16:45:59 +01:00
parent 7314c71062
commit efc0be104c
3 changed files with 15 additions and 3 deletions

View File

@ -357,8 +357,7 @@ void AcsController::performPointingCtrl() {
ptgCtrlStrat == acs::ControlModeStrategy::CTRL_NO_SENSORS_FOR_CONTROL) {
ptgCtrlLostCounter++;
if (ptgCtrlLostCounter > acsParameters.onBoardParams.ptgCtrlLostTimer) {
EventManagerIF::triggerEvent(objects::STAR_TRACKER, acs::PTG_CTRL_NO_ATTITUDE_INFORMATION, 0,
0);
triggerEvent(acs::PTG_CTRL_NO_ATTITUDE_INFORMATION);
ptgCtrlLostCounter = 0;
}
guidance.resetValues();

View File

@ -1,6 +1,8 @@
#include "StrFdir.h"
#include "mission/acs/defs.h"
#include <eive/objects.h>
#include <fsfw/events/EventManagerIF.h>
#include <mission/acs/defs.h>
StrFdir::StrFdir(object_id_t strObject)
: DeviceHandlerFailureIsolation(strObject, objects::NO_OBJECT) {}
@ -12,3 +14,13 @@ ReturnValue_t StrFdir::eventReceived(EventMessage* event) {
}
return DeviceHandlerFailureIsolation::eventReceived(event);
}
ReturnValue_t StrFdir::initialize() {
ReturnValue_t result = DeviceHandlerFailureIsolation::initialize();
if (result != returnvalue::OK) {
return result;
}
EventManagerIF* manager = ObjectManager::instance()->get<EventManagerIF>(objects::EVENT_MANAGER);
return manager->subscribeToEvent(eventQueue->getId(),
event::getEventId(acs::PTG_CTRL_NO_ATTITUDE_INFORMATION));
}

View File

@ -6,6 +6,7 @@
class StrFdir : public DeviceHandlerFailureIsolation {
public:
StrFdir(object_id_t strObject);
ReturnValue_t initialize() override;
ReturnValue_t eventReceived(EventMessage* event) override;
};