2022-11-03 22:59:51 +01:00
|
|
|
#ifndef MISSION_SYSTEM_OBJECTS_CAMSWITCHER_H_
|
|
|
|
#define MISSION_SYSTEM_OBJECTS_CAMSWITCHER_H_
|
|
|
|
|
2023-09-29 15:26:21 +02:00
|
|
|
#include <common/config/eive/objects.h>
|
2022-11-03 22:59:51 +01:00
|
|
|
#include <fsfw/power/PowerSwitcherComponent.h>
|
2023-09-29 15:26:21 +02:00
|
|
|
#include <mission/controller/controllerdefinitions/PowerCtrlDefinitions.h>
|
2022-11-03 22:59:51 +01:00
|
|
|
|
|
|
|
class CamSwitcher : public PowerSwitcherComponent {
|
|
|
|
public:
|
2023-09-29 15:26:21 +02:00
|
|
|
CamSwitcher(object_id_t objectId, PowerSwitchIF& pwrSwitcher, power::Switch_t pwrSwitch);
|
2022-11-03 22:59:51 +01:00
|
|
|
|
|
|
|
private:
|
2023-09-29 15:26:21 +02:00
|
|
|
pwrctrl::EnablePl enablePl = pwrctrl::EnablePl(objects::POWER_CONTROLLER);
|
|
|
|
ReturnValue_t checkModeCommand(Mode_t commandedMode, Submode_t commandedSubmode,
|
|
|
|
uint32_t* msToReachTheMode) override;
|
|
|
|
|
2023-03-13 15:59:19 +01:00
|
|
|
void performFaultyOperation() override;
|
2022-11-03 22:59:51 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* MISSION_SYSTEM_OBJECTS_CAMSWITCHER_H_ */
|