mirror of
https://github.com/esphome/esphome.git
synced 2024-12-26 07:24:54 +01:00
Add state_class total (#3608)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
This commit is contained in:
parent
479f7703a2
commit
aeb81e547b
7 changed files with 11 additions and 0 deletions
|
@ -473,6 +473,7 @@ enum SensorStateClass {
|
|||
STATE_CLASS_NONE = 0;
|
||||
STATE_CLASS_MEASUREMENT = 1;
|
||||
STATE_CLASS_TOTAL_INCREASING = 2;
|
||||
STATE_CLASS_TOTAL = 3;
|
||||
}
|
||||
|
||||
enum SensorLastResetType {
|
||||
|
|
|
@ -108,6 +108,8 @@ template<> const char *proto_enum_to_string<enums::SensorStateClass>(enums::Sens
|
|||
return "STATE_CLASS_MEASUREMENT";
|
||||
case enums::STATE_CLASS_TOTAL_INCREASING:
|
||||
return "STATE_CLASS_TOTAL_INCREASING";
|
||||
case enums::STATE_CLASS_TOTAL:
|
||||
return "STATE_CLASS_TOTAL";
|
||||
default:
|
||||
return "UNKNOWN";
|
||||
}
|
||||
|
|
|
@ -53,6 +53,7 @@ enum SensorStateClass : uint32_t {
|
|||
STATE_CLASS_NONE = 0,
|
||||
STATE_CLASS_MEASUREMENT = 1,
|
||||
STATE_CLASS_TOTAL_INCREASING = 2,
|
||||
STATE_CLASS_TOTAL = 3,
|
||||
};
|
||||
enum SensorLastResetType : uint32_t {
|
||||
LAST_RESET_NONE = 0,
|
||||
|
|
|
@ -109,6 +109,7 @@ STATE_CLASSES = {
|
|||
"": StateClasses.STATE_CLASS_NONE,
|
||||
"measurement": StateClasses.STATE_CLASS_MEASUREMENT,
|
||||
"total_increasing": StateClasses.STATE_CLASS_TOTAL_INCREASING,
|
||||
"total": StateClasses.STATE_CLASS_TOTAL,
|
||||
}
|
||||
validate_state_class = cv.enum(STATE_CLASSES, lower=True, space="_")
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@ std::string state_class_to_string(StateClass state_class) {
|
|||
return "measurement";
|
||||
case STATE_CLASS_TOTAL_INCREASING:
|
||||
return "total_increasing";
|
||||
case STATE_CLASS_TOTAL:
|
||||
return "total";
|
||||
case STATE_CLASS_NONE:
|
||||
default:
|
||||
return "";
|
||||
|
|
|
@ -36,6 +36,7 @@ enum StateClass : uint8_t {
|
|||
STATE_CLASS_NONE = 0,
|
||||
STATE_CLASS_MEASUREMENT = 1,
|
||||
STATE_CLASS_TOTAL_INCREASING = 2,
|
||||
STATE_CLASS_TOTAL = 3,
|
||||
};
|
||||
|
||||
std::string state_class_to_string(StateClass state_class);
|
||||
|
|
|
@ -956,6 +956,9 @@ STATE_CLASS_MEASUREMENT = "measurement"
|
|||
# The state represents a total that only increases, a decrease is considered a reset.
|
||||
STATE_CLASS_TOTAL_INCREASING = "total_increasing"
|
||||
|
||||
# The state represents a total amount that can both increase and decrease, e.g. a net energy meter.
|
||||
STATE_CLASS_TOTAL = "total"
|
||||
|
||||
KEY_CORE = "core"
|
||||
KEY_TARGET_PLATFORM = "target_platform"
|
||||
KEY_TARGET_FRAMEWORK = "target_framework"
|
||||
|
|
Loading…
Reference in a new issue