meggert
634f6c6001
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit
43 lines
1.7 KiB
C++
43 lines
1.7 KiB
C++
#include <mission/system/power/epsModeTree.h>
|
|
|
|
#include "eive/objects.h"
|
|
#include "fsfw/devicehandlers/DeviceHandlerIF.h"
|
|
#include "fsfw/subsystem/Subsystem.h"
|
|
#include "mission/system/treeUtil.h"
|
|
|
|
EpsSubsystem satsystem::eps::SUBSYSTEM(objects::EPS_SUBSYSTEM, 12, 24);
|
|
|
|
namespace {
|
|
// Alias for checker function
|
|
const auto check = subsystem::checkInsert;
|
|
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 EPS_SEQUENCE_OFF = std::make_pair(OFF, FixedArrayList<ModeListEntry, 3>());
|
|
auto EPS_TABLE_OFF_TGT = std::make_pair((OFF << 24) | 1, FixedArrayList<ModeListEntry, 2>());
|
|
auto EPS_TABLE_OFF_TRANS_0 = std::make_pair((OFF << 24) | 2, FixedArrayList<ModeListEntry, 2>());
|
|
auto EPS_TABLE_OFF_TRANS_1 = std::make_pair((OFF << 24) | 3, FixedArrayList<ModeListEntry, 7>());
|
|
|
|
auto EPS_SEQUENCE_NORMAL = std::make_pair(NML, FixedArrayList<ModeListEntry, 3>());
|
|
auto EPS_TABLE_NORMAL_TGT = std::make_pair((NML << 24) | 1, FixedArrayList<ModeListEntry, 2>());
|
|
auto EPS_TABLE_NORMAL_TRANS_0 = std::make_pair((NML << 24) | 2, FixedArrayList<ModeListEntry, 7>());
|
|
auto EPS_TABLE_NORMAL_TRANS_1 = std::make_pair((NML << 24) | 3, FixedArrayList<ModeListEntry, 2>());
|
|
|
|
Subsystem& satsystem::eps::init() {
|
|
ModeListEntry entry;
|
|
buildOffSequence(SUBSYSTEM, entry);
|
|
buildNormalSequence(SUBSYSTEM, entry);
|
|
SUBSYSTEM.setInitialMode(OFF);
|
|
return SUBSYSTEM;
|
|
}
|
|
|
|
namespace {
|
|
|
|
void buildOffSequence(Subsystem& ss, ModeListEntry& eh) {}
|
|
|
|
void buildNormalSequence(Subsystem& ss, ModeListEntry& eh) {} // namespace
|