Code: Select all
/
using Supla::Sensor::Thermometer;
Supla::Sensor::Thermometer::Thermometer() {
channel.setType(SUPLA_CHANNELTYPE_THERMOMETER);
channel.setDefault(SUPLA_CHANNELFNC_THERMOMETER);
}
Thermometer::Thermometer(ThermometerDriver *driver) : Thermometer() {
this->driver = driver;
}
void Supla::Sensor::Thermometer::onInit() {
if (driver) {
driver->initialize();
}
channel.setNewValue(getValue());
}
double Supla::Sensor::Thermometer::getValue() {
if (driver) {
return driver->getValue();
}
return TEMPERATURE_NOT_AVAILABLE;
}
void Supla::Sensor::Thermometer::iterateAlways() {
if (millis() - lastReadTime > refreshIntervalMs) {
lastReadTime = millis();
channel.setNewValue(getValue());
}
}
void Supla::Sensor::Thermometer::setHumidityCorrection(int32_t correction) {
(void)(correction);
}
double Supla::Sensor::Thermometer::getTemp() {
return getValue();
}