2022-02-25 11:58:02 +01:00
|
|
|
#include "EiveSystem.h"
|
2022-04-14 09:54:07 +02:00
|
|
|
|
2023-02-13 01:26:30 +01:00
|
|
|
#include <mission/acsDefs.h>
|
|
|
|
|
2022-09-29 19:40:00 +02:00
|
|
|
EiveSystem::EiveSystem(object_id_t setObjectId, uint32_t maxNumberOfSequences,
|
2022-04-14 09:54:07 +02:00
|
|
|
uint32_t maxNumberOfTables)
|
2022-09-29 19:40:00 +02:00
|
|
|
: Subsystem(setObjectId, maxNumberOfSequences, maxNumberOfTables) {}
|
2023-02-13 01:26:30 +01:00
|
|
|
|
|
|
|
void EiveSystem::announceMode(bool recursive) {
|
|
|
|
const char* modeStr = "UNKNOWN";
|
|
|
|
switch (mode) {
|
|
|
|
case (acs::AcsMode::OFF): {
|
|
|
|
modeStr = "OFF";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case (acs::AcsMode::SAFE): {
|
|
|
|
modeStr = "SAFE";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case (acs::AcsMode::DETUMBLE): {
|
|
|
|
modeStr = "DETUBMLE";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case (acs::AcsMode::PTG_IDLE): {
|
|
|
|
modeStr = "POINTING IDLE";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case (acs::AcsMode::PTG_INERTIAL): {
|
|
|
|
modeStr = "POINTING INERTIAL";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case (acs::AcsMode::PTG_TARGET): {
|
|
|
|
modeStr = "POINTING TARGET";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case (acs::AcsMode::PTG_TARGET_GS): {
|
|
|
|
modeStr = "POINTING TARGET GS";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
sif::info << "EIVE system is now in " << modeStr << " mode" << std::endl;
|
|
|
|
return Subsystem::announceMode(recursive);
|
|
|
|
}
|