semf
batterystateofhealth.h
Go to the documentation of this file.
1
10#ifndef SEMF_APP_BATTERY_BATTERYSTATEOFHEALTH_H_
11#define SEMF_APP_BATTERY_BATTERYSTATEOFHEALTH_H_
12
13#include <cstdint>
14
15namespace semf
16{
17namespace app
18{
26template <typename T_SOH, typename T_VOLTAGE, typename T_CURRENT, typename T_TEMPERATURE>
28{
29public:
30 virtual ~BatteryStateOfHealth() = default;
31
33 virtual void updateSoh() = 0;
38 virtual T_SOH soh() const = 0;
39
40protected:
45 virtual void initSoh(T_SOH lastSoh) = 0;
50 virtual void setSoh(T_SOH soh) = 0;
51};
52} /* namespace app */
53} /* namespace semf */
54#endif /* SEMF_APP_BATTERY_BATTERYSTATEOFHEALTH_H_ */
Interface for using state of health in a battery model.
virtual T_SOH soh() const =0
Returns the state of health.
virtual void setSoh(T_SOH soh)=0
Sets the state of health.
virtual void initSoh(T_SOH lastSoh)=0
Initializes the state of health calculation by the last known state of charge after booting.
virtual ~BatteryStateOfHealth()=default