2022-01-17 15:03:46 +01:00
|
|
|
#ifndef MISSION_DEVICES_BPXBATTERYHANDLER_H_
|
|
|
|
#define MISSION_DEVICES_BPXBATTERYHANDLER_H_
|
|
|
|
|
|
|
|
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
|
|
|
|
|
2022-01-17 16:44:20 +01:00
|
|
|
#include "devicedefinitions/BpxBatteryDefinitions.h"
|
|
|
|
|
2022-01-17 15:35:46 +01:00
|
|
|
class BpxBatteryHandler : public DeviceHandlerBase {
|
|
|
|
public:
|
2022-01-17 15:03:46 +01:00
|
|
|
BpxBatteryHandler(object_id_t objectId, object_id_t comIF, CookieIF* comCookie);
|
|
|
|
virtual ~BpxBatteryHandler();
|
2022-01-17 15:35:46 +01:00
|
|
|
|
|
|
|
protected:
|
2022-01-17 15:03:46 +01:00
|
|
|
void doStartUp() override;
|
|
|
|
void doShutDown() override;
|
|
|
|
ReturnValue_t buildNormalDeviceCommand(DeviceCommandId_t* id) override;
|
|
|
|
ReturnValue_t buildTransitionDeviceCommand(DeviceCommandId_t* id) override;
|
|
|
|
void fillCommandAndReplyMap() override;
|
|
|
|
ReturnValue_t buildCommandFromCommand(DeviceCommandId_t deviceCommand, const uint8_t* commandData,
|
2022-01-17 15:35:46 +01:00
|
|
|
size_t commandDataLen) override;
|
2022-01-17 15:03:46 +01:00
|
|
|
ReturnValue_t scanForReply(const uint8_t* start, size_t remainingSize, DeviceCommandId_t* foundId,
|
2022-01-17 15:35:46 +01:00
|
|
|
size_t* foundLen) override;
|
2022-01-17 15:03:46 +01:00
|
|
|
ReturnValue_t interpretDeviceReply(DeviceCommandId_t ixd, const uint8_t* packet) override;
|
|
|
|
void setNormalDatapoolEntriesInvalid() override;
|
|
|
|
virtual LocalPoolDataSetBase* getDataSetHandle(sid_t sid) override;
|
|
|
|
uint32_t getTransitionDelayMs(Mode_t modeFrom, Mode_t modeTo) override;
|
|
|
|
ReturnValue_t initializeLocalDataPool(localpool::DataPool& localDataPoolMap,
|
2022-01-17 15:35:46 +01:00
|
|
|
LocalDataPoolManager& poolManager) override;
|
2022-01-17 15:03:46 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* MISSION_DEVICES_BPXBATTERYHANDLER_H_ */
|