Merge remote-tracking branch 'origin/main' into event-definition
This commit is contained in:
commit
a994be47c3
@ -210,6 +210,7 @@ inline ReturnValue_t PoolVariable<T>::readWithoutLock() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
this->value = *(poolEntry->getDataPtr());
|
this->value = *(poolEntry->getDataPtr());
|
||||||
|
this->valid = poolEntry->getValid();
|
||||||
return returnvalue::OK;
|
return returnvalue::OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -241,6 +242,7 @@ ReturnValue_t PoolVariable<T>::commitWithoutLock() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
*(poolEntry->getDataPtr()) = this->value;
|
*(poolEntry->getDataPtr()) = this->value;
|
||||||
|
poolEntry->setValid(this->valid);
|
||||||
return returnvalue::OK;
|
return returnvalue::OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -53,17 +53,17 @@ void fsfwPrint(sif::PrintLevel printType, const char *fmt, va_list arg) {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (printType == sif::PrintLevel::INFO_LEVEL) {
|
if (printType == sif::PrintLevel::INFO_LEVEL) {
|
||||||
len += sprintf(bufferPosition + len, "INFO");
|
len += sprintf(bufferPosition + len, "INFO ");
|
||||||
}
|
}
|
||||||
if (printType == sif::PrintLevel::DEBUG_LEVEL) {
|
if (printType == sif::PrintLevel::DEBUG_LEVEL) {
|
||||||
len += sprintf(bufferPosition + len, "DEBUG");
|
len += sprintf(bufferPosition + len, "DEBUG ");
|
||||||
}
|
}
|
||||||
if (printType == sif::PrintLevel::WARNING_LEVEL) {
|
if (printType == sif::PrintLevel::WARNING_LEVEL) {
|
||||||
len += sprintf(bufferPosition + len, "WARNING");
|
len += sprintf(bufferPosition + len, "WARNING");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (printType == sif::PrintLevel::ERROR_LEVEL) {
|
if (printType == sif::PrintLevel::ERROR_LEVEL) {
|
||||||
len += sprintf(bufferPosition + len, "ERROR");
|
len += sprintf(bufferPosition + len, "ERROR ");
|
||||||
}
|
}
|
||||||
|
|
||||||
#if FSFW_COLORED_OUTPUT == 1
|
#if FSFW_COLORED_OUTPUT == 1
|
||||||
@ -75,7 +75,7 @@ void fsfwPrint(sif::PrintLevel printType, const char *fmt, va_list arg) {
|
|||||||
/*
|
/*
|
||||||
* Log current time to terminal if desired.
|
* Log current time to terminal if desired.
|
||||||
*/
|
*/
|
||||||
len += sprintf(bufferPosition + len, " | %lu:%02lu:%02lu.%03lu | ", (unsigned long)now.hour,
|
len += sprintf(bufferPosition + len, " | %02lu:%02lu:%02lu.%03lu | ", (unsigned long)now.hour,
|
||||||
(unsigned long)now.minute, (unsigned long)now.second,
|
(unsigned long)now.minute, (unsigned long)now.second,
|
||||||
(unsigned long)now.usecond / 1000);
|
(unsigned long)now.usecond / 1000);
|
||||||
|
|
||||||
|
@ -79,22 +79,36 @@ void SubsystemBase::executeTable(HybridIterator<ModeListEntry> tableIter, Submod
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (healthHelper.healthTable->hasHealth(object)) {
|
if (healthHelper.healthTable->hasHealth(object)) {
|
||||||
if (healthHelper.healthTable->isFaulty(object)) {
|
|
||||||
|
switch (healthHelper.healthTable->getHealth(object)) {
|
||||||
|
case NEEDS_RECOVERY:
|
||||||
|
case FAULTY:
|
||||||
|
case PERMANENT_FAULTY:
|
||||||
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND, HasModesIF::MODE_OFF,
|
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND, HasModesIF::MODE_OFF,
|
||||||
SUBMODE_NONE);
|
SUBMODE_NONE);
|
||||||
} else {
|
break;
|
||||||
|
case HEALTHY:
|
||||||
if (modeHelper.isForced()) {
|
if (modeHelper.isForced()) {
|
||||||
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND_FORCED,
|
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND_FORCED,
|
||||||
tableIter.value->getMode(), submodeToCommand);
|
tableIter.value->getMode(), submodeToCommand);
|
||||||
} else {
|
} else {
|
||||||
if (healthHelper.healthTable->isCommandable(object)) {
|
|
||||||
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND,
|
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND,
|
||||||
tableIter.value->getMode(), submodeToCommand);
|
tableIter.value->getMode(), submodeToCommand);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case EXTERNAL_CONTROL:
|
||||||
|
if (modeHelper.isForced()) {
|
||||||
|
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND_FORCED,
|
||||||
|
tableIter.value->getMode(), submodeToCommand);
|
||||||
} else {
|
} else {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// This never happens
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND,
|
ModeMessage::setModeMessage(&command, ModeMessage::CMD_MODE_COMMAND,
|
||||||
tableIter.value->getMode(), submodeToCommand);
|
tableIter.value->getMode(), submodeToCommand);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user