2022-11-11 11:23:13 +01:00
|
|
|
#include "tcsModeTree.h"
|
|
|
|
|
2022-11-14 13:46:26 +01:00
|
|
|
#include "eive/objects.h"
|
|
|
|
#include "fsfw/devicehandlers/DeviceHandlerIF.h"
|
2022-11-11 11:23:13 +01:00
|
|
|
#include "fsfw/subsystem/Subsystem.h"
|
|
|
|
#include "mission/system/tree/util.h"
|
|
|
|
|
|
|
|
Subsystem satsystem::tcs::SUBSYSTEM(objects::TCS_SUBSYSTEM, 12, 24);
|
|
|
|
|
|
|
|
namespace {
|
|
|
|
// Alias for checker function
|
|
|
|
const auto check = subsystem::checkInsert;
|
2022-11-14 13:46:26 +01:00
|
|
|
void buildOffSequence(Subsystem& ss, ModeListEntry& eh);
|
|
|
|
void buildNormalSequence(Subsystem& ss, ModeListEntry& eh);
|
|
|
|
} // namespace
|
|
|
|
|
|
|
|
static const auto OFF = HasModesIF::MODE_OFF;
|
|
|
|
static const auto NML = DeviceHandlerIF::MODE_NORMAL;
|
|
|
|
|
|
|
|
auto TCS_SEQUENCE_OFF = std::make_pair(OFF << 24, FixedArrayList<ModeListEntry, 2>());
|
|
|
|
auto TCS_TABLE_OFF_TGT = std::make_pair((OFF << 24) | 1, FixedArrayList<ModeListEntry, 4>());
|
|
|
|
auto TCS_TABLE_OFF_TRANS_0 = std::make_pair((OFF << 24) | 2, FixedArrayList<ModeListEntry, 4>());
|
|
|
|
auto TCS_TABLE_OFF_TRANS_1 = std::make_pair((OFF << 24) | 2, FixedArrayList<ModeListEntry, 4>());
|
|
|
|
|
|
|
|
auto TCS_SEQUENCE_NORMAL = std::make_pair(NML << 24, FixedArrayList<ModeListEntry, 2>());
|
|
|
|
auto TCS_TABLE_NORMAL_TGT = std::make_pair((NML << 24) | 1, FixedArrayList<ModeListEntry, 4>());
|
|
|
|
auto TCS_TABLE_NORMAL_TRANS_0 = std::make_pair((NML << 24) | 2, FixedArrayList<ModeListEntry, 4>());
|
|
|
|
auto TCS_TABLE_NORMAL_TRANS_1 = std::make_pair((NML << 24) | 2, FixedArrayList<ModeListEntry, 4>());
|
|
|
|
|
|
|
|
void satsystem::tcs::init() {
|
|
|
|
ModeListEntry entry;
|
|
|
|
buildOffSequence(SUBSYSTEM, entry);
|
|
|
|
buildNormalSequence(SUBSYSTEM, entry);
|
|
|
|
SUBSYSTEM.setInitialMode(OFF);
|
2022-11-11 11:23:13 +01:00
|
|
|
}
|
2022-11-14 13:46:26 +01:00
|
|
|
|
|
|
|
namespace {
|
|
|
|
|
|
|
|
void buildOffSequence(Subsystem& ss, ModeListEntry& eh) {}
|
|
|
|
|
|
|
|
void buildNormalSequence(Subsystem& ss, ModeListEntry& eh) {}
|
|
|
|
|
|
|
|
} // namespace
|