31 lines
640 B
C++
31 lines
640 B
C++
#pragma once
|
|
|
|
class EnumClass {
|
|
const char* value = nullptr;
|
|
public:
|
|
EnumClass() {}
|
|
|
|
EnumClass(const char* v) {
|
|
value = v;
|
|
}
|
|
|
|
void operator=(const char* v) {
|
|
value = v;
|
|
}
|
|
|
|
operator const char*() {
|
|
return value;
|
|
}
|
|
|
|
operator bool() {
|
|
return value != nullptr;
|
|
}
|
|
};
|
|
|
|
namespace Ha {
|
|
struct SensorStateClass : EnumClass {
|
|
SensorStateClass() : EnumClass() {}
|
|
SensorStateClass(const char* value) : EnumClass(value) {}
|
|
} MEASUREMENT{ "measurement" }, MEASUREMENT_ANGLE{ "measurement_angle" }, TOTAL{ "total" }, TOTAL_INCREASING{ "total_increasing" };
|
|
}
|