summaryrefslogtreecommitdiffstats
path: root/src/bluetooth/gatoattclient.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/bluetooth/gatoattclient.h')
-rw-r--r--src/bluetooth/gatoattclient.h143
1 files changed, 0 insertions, 143 deletions
diff --git a/src/bluetooth/gatoattclient.h b/src/bluetooth/gatoattclient.h
deleted file mode 100644
index 6222f863..00000000
--- a/src/bluetooth/gatoattclient.h
+++ /dev/null
@@ -1,143 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Javier de San Pedro <dev.git@javispedro.com>
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the QtBluetooth module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU General Public License version 3.0 requirements will be
-** met: http://www.gnu.org/copyleft/gpl.html.
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef GATOATTCLIENT_H
-#define GATOATTCLIENT_H
-
-#include <QtCore/QObject>
-#include <QtCore/QQueue>
-#include "gatosocket.h"
-#include "gatouuid.h"
-
-QT_BEGIN_NAMESPACE
-
-class GatoAttClient : public QObject
-{
- Q_OBJECT
-
-public:
- explicit GatoAttClient(QObject *parent = 0);
- ~GatoAttClient();
-
- GatoSocket::State state() const;
-
- bool connectTo(const GatoAddress& addr);
- void close();
-
- struct InformationData
- {
- GatoHandle handle;
- GatoUUID uuid;
- };
- struct HandleInformation
- {
- GatoHandle start;
- GatoHandle end;
- };
- struct AttributeData
- {
- GatoHandle handle;
- QByteArray value;
- };
- struct AttributeGroupData
- {
- GatoHandle start;
- GatoHandle end;
- QByteArray value;
- };
-
- int mtu() const;
-
- uint request(int opcode, const QByteArray &data, QObject *receiver, const char *member);
- uint requestExchangeMTU(quint16 client_mtu, QObject *receiver, const char *member);
- uint requestFindInformation(GatoHandle start, GatoHandle end, QObject *receiver, const char *member);
- uint requestFindByTypeValue(GatoHandle start, GatoHandle end, const GatoUUID &uuid, const QByteArray& value, QObject *receiver, const char *member);
- uint requestReadByType(GatoHandle start, GatoHandle end, const GatoUUID &uuid, QObject *receiver, const char *member);
- uint requestRead(GatoHandle handle, QObject *receiver, const char *member);
- uint requestReadByGroupType(GatoHandle start, GatoHandle end, const GatoUUID &uuid, QObject *receiver, const char *member);
- uint requestWrite(GatoHandle handle, const QByteArray &value, QObject *receiver, const char *member);
- void cancelRequest(uint id);
-
- void command(int opcode, const QByteArray &data);
- void commandWrite(GatoHandle handle, const QByteArray &value);
-
-Q_SIGNALS:
- void connected();
- void disconnected();
-
- void attributeUpdated(GatoHandle handle, const QByteArray &value, bool confirmed);
-
-private:
- struct Request
- {
- uint id;
- quint8 opcode;
- QByteArray pkt;
- QObject *receiver;
- QByteArray member;
- };
-
- void sendARequest();
- bool handleEvent(const QByteArray &event);
- bool handleResponse(const Request& req, const QByteArray &response);
-
- QList<InformationData> parseInformationData(const QByteArray &data);
- QList<HandleInformation> parseHandleInformation(const QByteArray &data);
- QList<AttributeData> parseAttributeData(const QByteArray &data);
- QList<AttributeGroupData> parseAttributeGroupData(const QByteArray &data);
-
-private Q_SLOTS:
- void handleSocketConnected();
- void handleSocketDisconnected();
- void handleSocketReadyRead();
-
- void handleServerMTU(uint req, quint16 server_mtu);
-
-private:
- GatoSocket *socket;
- quint16 cur_mtu;
- uint next_id;
- QQueue<Request> pending_requests;
-};
-
-QT_END_NAMESPACE
-
-#endif // GATOATTCLIENT_H