Keep Unit of Measurement in Flash. (#4719)

Co-authored-by: Your Name <you@example.com>
This commit is contained in:
Fabian
2023-05-10 01:42:55 +02:00
committed by GitHub
parent 3c05ae4e1a
commit 535003014b
6 changed files with 22 additions and 33 deletions
+9
View File
@@ -84,4 +84,13 @@ std::string EntityBase_DeviceClass::get_device_class() {
void EntityBase_DeviceClass::set_device_class(const char *device_class) { this->device_class_ = device_class; }
std::string EntityBase_UnitOfMeasurement::get_unit_of_measurement() {
if (this->unit_of_measurement_ == nullptr)
return "";
return this->unit_of_measurement_;
}
void EntityBase_UnitOfMeasurement::set_unit_of_measurement(const char *unit_of_measurement) {
this->unit_of_measurement_ = unit_of_measurement;
}
} // namespace esphome
+11
View File
@@ -74,4 +74,15 @@ class EntityBase_DeviceClass {
const char *device_class_{nullptr}; ///< Device class override
};
class EntityBase_UnitOfMeasurement {
public:
/// Get the unit of measurement, using the manual override if set.
std::string get_unit_of_measurement();
/// Manually set the unit of measurement.
void set_unit_of_measurement(const char *unit_of_measurement);
protected:
const char *unit_of_measurement_{nullptr}; ///< Unit of measurement override
};
} // namespace esphome