2022-03-28 12:48:15 +02:00
|
|
|
#ifndef FSFW_SRC_FSFW_POWER_DUMMYPOWERSWITCHER_H_
|
|
|
|
#define FSFW_SRC_FSFW_POWER_DUMMYPOWERSWITCHER_H_
|
|
|
|
|
2022-03-28 12:57:11 +02:00
|
|
|
#include <cstddef>
|
|
|
|
#include <vector>
|
|
|
|
|
2022-03-28 12:48:15 +02:00
|
|
|
#include "PowerSwitchIF.h"
|
|
|
|
#include "definitions.h"
|
|
|
|
|
2022-03-28 12:57:11 +02:00
|
|
|
class DummyPowerSwitcher : public PowerSwitchIF {
|
|
|
|
public:
|
2022-03-28 12:48:15 +02:00
|
|
|
DummyPowerSwitcher(size_t numberOfSwitches, size_t numberOfFuses, uint32_t switchDelayMs = 5000);
|
|
|
|
|
|
|
|
void setInitialSwitcherList(std::vector<ReturnValue_t> switcherList);
|
|
|
|
void setInitialFusesList(std::vector<ReturnValue_t> switcherList);
|
|
|
|
|
|
|
|
virtual ReturnValue_t sendSwitchCommand(power::Switch_t switchNr, ReturnValue_t onOff) override;
|
|
|
|
virtual ReturnValue_t sendFuseOnCommand(uint8_t fuseNr) override;
|
|
|
|
virtual ReturnValue_t getSwitchState(power::Switch_t switchNr) const override;
|
|
|
|
virtual ReturnValue_t getFuseState(uint8_t fuseNr) const override;
|
|
|
|
virtual uint32_t getSwitchDelayMs(void) const override;
|
|
|
|
|
2022-03-28 12:57:11 +02:00
|
|
|
private:
|
2022-03-28 12:48:15 +02:00
|
|
|
std::vector<ReturnValue_t> switcherList;
|
|
|
|
std::vector<ReturnValue_t> fuseList;
|
|
|
|
uint32_t switchDelayMs = 5000;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* FSFW_SRC_FSFW_POWER_DUMMYPOWERSWITCHER_H_ */
|