#ifndef SCSTWMONITORBACKEND_H #define SCSTWMONITORBACKEND_H #include #include #include class ScStwMonitorBackend : public QObject { Q_OBJECT Q_PROPERTY(ScStwRace* race READ getRace NOTIFY raceChanged) Q_PROPERTY(ScStwClient *scStwClient READ getScStwClient NOTIFY scStwClientChanged) public: explicit ScStwMonitorBackend(QObject *parent = nullptr); private: ScStwClient * scStwClient; QTimer *autoConnectRetryTimer; // timer to frequently trigger a connection attempt to the base station QTimer * timerTextRefreshTimer; ScStwRemoteMonitorRace * remoteRace; public slots: // functions for qml Q_INVOKABLE ScStwRace *getRace(); Q_INVOKABLE ScStwClient *getScStwClient(); private slots: void refreshTimerText(); void doConnectionAttempt(); signals: void raceChanged(); void scStwClientChanged(); }; #endif // SCSTWMONITORBACKEND_H