9#include "ekos/auxiliary/weather.h"
18 bool parkDome, closeShutter, stopScheduler;
22class ObservatoryWeatherModel :
public QObject
28 ObservatoryWeatherModel() =
default;
30 void initModel(Weather *weather);
36 ISD::Weather::Status status();
43 WeatherActions getWarningActions()
45 return warningActions;
47 QString getWarningActionsStatus();
48 void setWarningActions(WeatherActions actions);
49 bool getWarningActionsActive()
51 return warningActionsActive;
57 WeatherActions getAlertActions()
61 QString getAlertActionsStatus();
62 void setAlertActions(WeatherActions actions);
63 bool getAlertActionsActive()
65 return alertActionsActive;
71 const std::vector<ISD::Weather::WeatherData> &getWeatherData()
const
79 bool autoScaleValues()
81 return m_autoScaleValues;
83 void setAutoScaleValues(
bool show);
89 void setWarningActionsActive(
bool active);
93 void setAlertActionsActive(
bool active);
96 bool initialized =
false;
97 Weather *weatherInterface;
98 QTimer warningTimer, alertTimer;
99 struct WeatherActions warningActions, alertActions;
100 bool warningActionsActive, alertActionsActive, m_autoScaleValues;
102 void startAlertTimer();
103 void startWarningTimer();
106 std::vector<ISD::Weather::WeatherData> m_WeatherData;
108 void updateWeatherData(
const std::vector<ISD::Weather::WeatherData> &data);
109 unsigned long findWeatherData(
QString name);
112 void weatherChanged(ISD::Weather::Status status);
113 void updateWeatherStatus();
116 void newStatus(ISD::Weather::Status status);
117 void newWeatherData(
const std::vector<ISD::Weather::WeatherData> &data);
123 void execute(WeatherActions actions);
Ekos is an advanced Astrophotography tool for Linux.