From 1adf7f1bcde493ccaacedb0d9778911ad69ff335 Mon Sep 17 00:00:00 2001 From: Javier Date: Thu, 4 Sep 2014 01:55:14 +0200 Subject: Initial import --- src/metawatchbletransport.h | 46 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/metawatchbletransport.h (limited to 'src/metawatchbletransport.h') diff --git a/src/metawatchbletransport.h b/src/metawatchbletransport.h new file mode 100644 index 0000000..973c4a8 --- /dev/null +++ b/src/metawatchbletransport.h @@ -0,0 +1,46 @@ +#ifndef METAWATCHBLETRANSPORT_H +#define METAWATCHBLETRANSPORT_H + +#include + +#include +#include +#include +#include + +#include "metawatchtransport.h" + +class MetaWatchBLETransport : public MetaWatchTransport +{ + Q_OBJECT +public: + explicit MetaWatchBLETransport(GatoPeripheral *peripheral, QObject *parent = 0); + ~MetaWatchBLETransport(); + + static const GatoUUID ServiceUuid; + static const GatoUUID InputCharacteristicUuid; + static const GatoUUID OutputCharacteristicUuid; + + void sendMessage(quint8 type, quint8 options, const QByteArray &payload); + +public slots: + void connectDevice(); + void disconnectDevice(); + +private: + static QByteArray encode(quint8 type, quint8 options, const QByteArray &payload); + static bool decode(const QByteArray &msg, quint8 *type, quint8 *options, QByteArray *payload); + +private slots: + void handleDeviceConnected(); + void handleDeviceDisconnected(); + void handleDeviceServices(); + void handleDeviceCharacteristics(const GatoService &service); + void handleDeviceUpdate(const GatoCharacteristic &characteristic, const QByteArray &value); + +private: + GatoPeripheral *_dev; + GatoCharacteristic _in, _out; +}; + +#endif // METAWATCHBLETRANSPORT_H -- cgit v1.2.3