1/*
2 * BluezQt - Asynchronous Bluez wrapper library
3 *
4 * SPDX-FileCopyrightText: 2021 Ivan Podkurkov <podkiva2@gmail.com>
5 *
6 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
7 */
8
9#ifndef BLUEZQT_GATTDESCRIPTORREMOTE_P_H
10#define BLUEZQT_GATTDESCRIPTORREMOTE_P_H
11
12#include <QObject>
13#include <QMap>
14
15#include "types.h"
16#include "bluezgattdescriptor1.h"
17#include "dbusproperties.h"
18#include "bluezqt_dbustypes.h"
19
20namespace BluezQt
21{
22
23typedef org::bluez::GattDescriptor1 BluezGattDescriptor;
24typedef org::freedesktop::DBus::Properties DBusProperties;
25
26
27class GattDescriptorRemotePrivate : public QObject
28{
29 Q_OBJECT
30
31public:
32 explicit GattDescriptorRemotePrivate(const QString &path, const QVariantMap &properties, const GattCharacteristicRemotePtr &characteristic);
33
34 void init(const QVariantMap &properties);
35
36 QDBusPendingReply<> setDBusProperty(const QString &name, const QVariant &value);
37 void propertiesChanged(const QString &path, const QString &interface, const QVariantMap &changed, const QStringList &invalidated);
38
39 QWeakPointer<GattDescriptorRemote> q;
40 BluezGattDescriptor *m_bluezGattDescriptor;
41 DBusProperties *m_dbusProperties;
42
43 QString m_uuid;
44 QByteArray m_value;
45 QStringList m_flags;
46 quint16 m_handle;
47 const GattCharacteristicRemotePtr m_characteristic;
48};
49
50} // namespace BluezQt
51
52#endif // BLUEZQT_GATTDESCRIPTORREMOTE_P_H
53

source code of bluez-qt/src/gattdescriptorremote_p.h