v1.10.0 #220

Merged
meierj merged 592 commits from develop into main 2022-04-22 07:42:20 +02:00
3 changed files with 10 additions and 16 deletions
Showing only changes of commit 1ebd92a17e - Show all commits

2
fsfw

@ -1 +1 @@
Subproject commit 6dd6f28db0259ec37c351a81ee8d26696f47118a Subproject commit bbe21e7e8957a39e6697c6dd4fb2fe044b560044

View File

@ -4,16 +4,14 @@
TcsSubsystem::TcsSubsystem(object_id_t objectId, object_id_t parentId, PowerSwitchIF* pwrSwitcher, TcsSubsystem::TcsSubsystem(object_id_t objectId, object_id_t parentId, PowerSwitchIF* pwrSwitcher,
power::Switch_t theSwitch, TcsBoardHelper helper) power::Switch_t theSwitch, TcsBoardHelper helper)
: SubsystemBase(objectId, parentId, MODE_OFF, 24), : AssemblyBase(objectId, parentId, 24),
switcher(pwrSwitcher, theSwitch), switcher(pwrSwitcher, theSwitch),
helper(helper) {} helper(helper) {}
ReturnValue_t TcsSubsystem::handleCommandMessage(CommandMessage* message) { return RETURN_OK; }
void TcsSubsystem::performChildOperation() { void TcsSubsystem::performChildOperation() {
switcher.doStateMachine(); switcher.doStateMachine();
if (not switcher.active()) { if (not switcher.active()) {
AssemblyBase::performChildOperation();
} }
} }
@ -35,5 +33,3 @@ ReturnValue_t TcsSubsystem::initialize() {
} }
return SubsystemBase::initialize(); return SubsystemBase::initialize();
} }
void TcsSubsystem::startTransition(Mode_t mode, Submode_t submode) {}

View File

@ -2,8 +2,8 @@
#define MISSION_SYSTEM_TCSSUBSYSTEM_H_ #define MISSION_SYSTEM_TCSSUBSYSTEM_H_
#include <fsfw/container/FixedArrayList.h> #include <fsfw/container/FixedArrayList.h>
#include <fsfw/devicehandlers/AssemblyBase.h>
#include <fsfw/power/PowerSwitcher.h> #include <fsfw/power/PowerSwitcher.h>
#include <fsfw/subsystem/SubsystemBase.h>
struct TcsBoardHelper { struct TcsBoardHelper {
TcsBoardHelper(std::array<object_id_t, 16> rtdIds) : rtdIds(rtdIds) {} TcsBoardHelper(std::array<object_id_t, 16> rtdIds) : rtdIds(rtdIds) {}
@ -11,27 +11,25 @@ struct TcsBoardHelper {
std::array<object_id_t, 16> rtdIds = {}; std::array<object_id_t, 16> rtdIds = {};
}; };
class TcsSubsystem : public SubsystemBase { class TcsSubsystem : public AssemblyBase {
public: public:
TcsSubsystem(object_id_t objectId, object_id_t parentId, PowerSwitchIF *pwrSwitcher, TcsSubsystem(object_id_t objectId, object_id_t parentId, PowerSwitchIF *pwrSwitcher,
power::Switch_t switcher, TcsBoardHelper helper); power::Switch_t switcher, TcsBoardHelper helper);
ReturnValue_t initialize() override; ReturnValue_t initialize() override;
void performChildOperation() override;
private: private:
static constexpr uint8_t NUMBER_RTDS = 16; static constexpr uint8_t NUMBER_RTDS = 16;
PowerSwitcher switcher; PowerSwitcher switcher;
TcsBoardHelper helper; TcsBoardHelper helper;
FixedArrayList<ModeListEntry, NUMBER_RTDS> modeTable; FixedArrayList<ModeListEntry, NUMBER_RTDS> modeTable;
ReturnValue_t handleCommandMessage(CommandMessage *message) override; ReturnValue_t commandChildren(Mode_t mode, Submode_t submode) override;
ReturnValue_t checkChildrenStateOn(Mode_t wantedMode, Submode_t wantedSubmode) override;
void performChildOperation() override; ReturnValue_t isModeCombinationValid(Mode_t mode, Submode_t submode) override;
ReturnValue_t checkModeCommand(Mode_t mode, Submode_t submode, ReturnValue_t checkModeCommand(Mode_t mode, Submode_t submode,
uint32_t *msToReachTheMode) override; uint32_t* msToReachTheMode) override;
void startTransition(Mode_t mode, Submode_t submode) override;
}; };
#endif /* MISSION_SYSTEM_TCSSUBSYSTEM_H_ */ #endif /* MISSION_SYSTEM_TCSSUBSYSTEM_H_ */