aboutsummaryrefslogtreecommitdiffstats
path: root/configuredivecomputerthreads.h
diff options
context:
space:
mode:
authorGravatar Anton Lundin <glance@acc.umu.se>2015-01-20 22:40:49 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2015-01-21 17:03:14 +1200
commit0787d941a0f58417a2eb1a656e54c19123366c71 (patch)
tree03925fbfbcc388a8c2245e1cb9d656aa0a54d938 /configuredivecomputerthreads.h
parenta700be32076225e68bfaa4b6c418cff015e2ceec (diff)
downloadsubsurface-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>
Diffstat (limited to 'configuredivecomputerthreads.h')
-rw-r--r--configuredivecomputerthreads.h51
1 files changed, 20 insertions, 31 deletions
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