1 | /* |
2 | * BluezQt - Asynchronous Bluez wrapper library |
3 | * |
4 | * SPDX-FileCopyrightText: 2014 David Rosca <nowrep@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_AGENTADAPTOR_H |
10 | #define BLUEZQT_AGENTADAPTOR_H |
11 | |
12 | #include <QDBusAbstractAdaptor> |
13 | |
14 | class QDBusMessage; |
15 | class QDBusObjectPath; |
16 | |
17 | namespace BluezQt |
18 | { |
19 | class Manager; |
20 | class Agent; |
21 | |
22 | class AgentAdaptor : public QDBusAbstractAdaptor |
23 | { |
24 | Q_OBJECT |
25 | Q_CLASSINFO("D-Bus Interface" , "org.bluez.Agent1" ) |
26 | |
27 | public: |
28 | explicit AgentAdaptor(Agent *parent, Manager *manager); |
29 | |
30 | public Q_SLOTS: |
31 | QString RequestPinCode(const QDBusObjectPath &device, const QDBusMessage &msg); |
32 | Q_NOREPLY void DisplayPinCode(const QDBusObjectPath &device, const QString &pincode); |
33 | quint32 RequestPasskey(const QDBusObjectPath &device, const QDBusMessage &msg); |
34 | Q_NOREPLY void DisplayPasskey(const QDBusObjectPath &device, quint32 passkey, quint16 entered); |
35 | void RequestConfirmation(const QDBusObjectPath &device, quint32 passkey, const QDBusMessage &msg); |
36 | void RequestAuthorization(const QDBusObjectPath &device, const QDBusMessage &msg); |
37 | void AuthorizeService(const QDBusObjectPath &device, const QString &uuid, const QDBusMessage &msg); |
38 | |
39 | Q_NOREPLY void Cancel(); |
40 | Q_NOREPLY void Release(); |
41 | |
42 | private: |
43 | QString passkeyToString(quint32 passkey) const; |
44 | |
45 | Agent *m_agent; |
46 | Manager *m_manager; |
47 | }; |
48 | |
49 | } // namespace BluezQt |
50 | |
51 | #endif // BLUEZQT_AGENTADAPTOR_H |
52 | |