diff options
author | Anton Lundin <glance@acc.umu.se> | 2015-01-20 22:40:49 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-01-21 17:03:14 +1200 |
commit | 0787d941a0f58417a2eb1a656e54c19123366c71 (patch) | |
tree | 03925fbfbcc388a8c2245e1cb9d656aa0a54d938 | |
parent | a700be32076225e68bfaa4b6c418cff015e2ceec (diff) | |
download | subsurface-0787d941a0f58417a2eb1a656e54c19123366c71.tar.gz |
Refactor device handling threads
This refactors the device handling threads into having one common
ancestor class.
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | configuredivecomputerthreads.cpp | 12 | ||||
-rw-r--r-- | configuredivecomputerthreads.h | 51 |
2 files changed, 28 insertions, 35 deletions
diff --git a/configuredivecomputerthreads.cpp b/configuredivecomputerthreads.cpp index af8995085..b2dc8c87c 100644 --- a/configuredivecomputerthreads.cpp +++ b/configuredivecomputerthreads.cpp @@ -1389,7 +1389,11 @@ static dc_status_t write_ostc_settings(dc_device_t *device, DeviceDetails *m_dev return rc; } -ReadSettingsThread::ReadSettingsThread(QObject *parent, device_data_t *data) : QThread(parent), m_data(data) +DeviceThread::DeviceThread(QObject *parent, device_data_t *data) : QThread(parent), m_data(data) +{ +} + +ReadSettingsThread::ReadSettingsThread(QObject *parent, device_data_t *data) : DeviceThread(parent, data) { } @@ -1452,7 +1456,7 @@ void ReadSettingsThread::run() } } -WriteSettingsThread::WriteSettingsThread(QObject *parent, device_data_t *data) : QThread(parent), m_data(data) +WriteSettingsThread::WriteSettingsThread(QObject *parent, device_data_t *data) : DeviceThread(parent, data) { } @@ -1513,7 +1517,7 @@ void WriteSettingsThread::run() } -FirmwareUpdateThread::FirmwareUpdateThread(QObject *parent, device_data_t *data, QString fileName) : QThread(parent), m_data(data), m_fileName(fileName) +FirmwareUpdateThread::FirmwareUpdateThread(QObject *parent, device_data_t *data, QString fileName) : DeviceThread(parent, data), m_fileName(fileName) { } @@ -1553,7 +1557,7 @@ void FirmwareUpdateThread::run() } -ResetSettingsThread::ResetSettingsThread(QObject *parent, device_data_t *data) : QThread(parent), m_data(data) +ResetSettingsThread::ResetSettingsThread(QObject *parent, device_data_t *data) : DeviceThread(parent, data) { } diff --git a/configuredivecomputerthreads.h b/configuredivecomputerthreads.h index 5c33c9de2..bc35caf5a 100644 --- a/configuredivecomputerthreads.h +++ b/configuredivecomputerthreads.h @@ -8,66 +8,55 @@ #include <QDateTime> #include "devicedetails.h" -class ReadSettingsThread : public QThread { +class DeviceThread : public QThread { Q_OBJECT public: - ReadSettingsThread(QObject *parent, device_data_t *data); - virtual void run(); + DeviceThread(QObject *parent, device_data_t *data); + virtual void run() = 0; QString result; QString lastError; signals: void error(QString err); - void devicedetails(DeviceDetails *newDeviceDetails); - -private: + void message(QString msg); +protected: device_data_t *m_data; }; -class WriteSettingsThread : public QThread { +class ReadSettingsThread : public DeviceThread { + Q_OBJECT +public: + ReadSettingsThread(QObject *parent, device_data_t *data); + void run(); +signals: + void devicedetails(DeviceDetails *newDeviceDetails); +}; + +class WriteSettingsThread : public DeviceThread { Q_OBJECT public: WriteSettingsThread(QObject *parent, device_data_t *data); void setDeviceDetails(DeviceDetails *details); - virtual void run(); - QString result; - QString lastError; -signals: - void error(QString err); + void run(); private: - device_data_t *m_data; DeviceDetails *m_deviceDetails; }; -class FirmwareUpdateThread : public QThread { +class FirmwareUpdateThread : public DeviceThread { Q_OBJECT public: FirmwareUpdateThread(QObject *parent, device_data_t *data, QString fileName); - virtual void run(); - QString lastError; -signals: - void progress(int percent); - void message(QString msg); - void error(QString err); + void run(); private: - device_data_t *m_data; QString m_fileName; }; -class ResetSettingsThread : public QThread { +class ResetSettingsThread : public DeviceThread { Q_OBJECT public: ResetSettingsThread(QObject *parent, device_data_t *data); - virtual void run(); - QString lastError; -signals: - void progress(int percent); - void message(QString msg); - void error(QString err); - -private: - device_data_t *m_data; + void run(); }; #endif // CONFIGUREDIVECOMPUTERTHREADS_H |