84 void autoLocationUpdate(
double latitude,
double longitude);
107 bool isInhibited()
const;
125 bool isEnabled()
const;
130 bool isRunning()
const;
135 int currentTemperature()
const;
140 int targetTemperature()
const;
150 bool daylight()
const;
157 QDateTime previousTransitionDateTime()
const;
162 qint64 previousTransitionDuration()
const;
169 QDateTime scheduledTransitionDateTime()
const;
174 qint64 scheduledTransitionDuration()
const;
183 void preview(uint previewTemp);
192 void resetSlowUpdateStartTimer();
193 void quickAdjust(
int targetTemp);
244 void slowUpdate(
int targetTemp);
245 void resetAllTimers();
246 int currentTargetTemp()
const;
247 void cancelAllTimers();
251 void resetQuickAdjustTimer(
int targetTemp);
255 void resetSlowUpdateTimer();
257 void updateTargetTemperature();
258 void updateTransitionTimings(
bool force);
259 DateTimes getSunTimings(
const QDateTime &dateTime,
double latitude,
double longitude,
bool morning)
const;
260 bool checkAutomaticSunTimings()
const;
262 void commitGammaRamps(
int temperature);
264 void setEnabled(
bool enabled);
265 void setRunning(
bool running);
266 void setCurrentTemperature(
int temperature);
268 void setDaylight(
bool daylight);
274 bool m_active =
false;
277 bool m_running =
false;
280 bool m_isGloballyInhibited =
false;
289 bool m_daylight =
true;
292 QTime m_morning = QTime(6, 0);
293 QTime m_evening = QTime(18, 0);
303 std::unique_ptr<QTimer> m_slowUpdateStartTimer;
304 std::unique_ptr<QTimer> m_slowUpdateTimer;
305 std::unique_ptr<QTimer> m_quickAdjustTimer;
306 std::unique_ptr<QTimer> m_previewTimer;
308 int m_currentTemp = DEFAULT_DAY_TEMPERATURE;
309 int m_targetTemperature = DEFAULT_DAY_TEMPERATURE;
310 int m_dayTargetTemp = DEFAULT_DAY_TEMPERATURE;
311 int m_nightTargetTemp = DEFAULT_NIGHT_TEMPERATURE;
313 int m_inhibitReferenceCount = 0;
314 KConfigWatcher::Ptr m_configWatcher;