mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Read basic details from dive computer
Added classes for reading data from dive computer. This is at the basic level and I will expand it as I go along. Signed-off-by: Joseph W. Joshua <joejoshw@gmail.com> Signed-off-by: Thiago Macieira <thiago@macieira.org>
This commit is contained in:
parent
791fbee260
commit
a7c9b25b05
6 changed files with 212 additions and 2 deletions
58
qt-ui/configuredivecomputer.h
Normal file
58
qt-ui/configuredivecomputer.h
Normal file
|
@ -0,0 +1,58 @@
|
|||
#ifndef CONFIGUREDIVECOMPUTER_H
|
||||
#define CONFIGUREDIVECOMPUTER_H
|
||||
|
||||
#include <QObject>
|
||||
#include <QThread>
|
||||
#include "libdivecomputer.h"
|
||||
|
||||
class ReadSettingsThread : public QThread {
|
||||
Q_OBJECT
|
||||
public:
|
||||
ReadSettingsThread(QObject *parent, device_data_t *data);
|
||||
virtual void run();
|
||||
QString result;
|
||||
QString lastError;
|
||||
signals:
|
||||
void error(QString err);
|
||||
private:
|
||||
device_data_t *data;
|
||||
};
|
||||
|
||||
class ConfigureDiveComputer : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ConfigureDiveComputer(QObject *parent = 0);
|
||||
void readSettings(device_data_t *data);
|
||||
|
||||
enum states {
|
||||
INITIAL,
|
||||
READING,
|
||||
WRITING,
|
||||
CANCELLING,
|
||||
CANCELLED,
|
||||
ERROR,
|
||||
DONE,
|
||||
};
|
||||
|
||||
QString lastError;
|
||||
states currentState;
|
||||
signals:
|
||||
void deviceSettings(QString settings);
|
||||
void message(QString msg);
|
||||
void error(QString err);
|
||||
void readFinished();
|
||||
void writeFinished();
|
||||
void stateChanged(states newState);
|
||||
private:
|
||||
ReadSettingsThread *readThread;
|
||||
void setState(states newState);
|
||||
|
||||
|
||||
void readHWSettings(device_data_t *data);
|
||||
private slots:
|
||||
void readThreadFinished();
|
||||
void setError(QString err);
|
||||
};
|
||||
|
||||
#endif // CONFIGUREDIVECOMPUTER_H
|
Loading…
Add table
Add a link
Reference in a new issue