File indexing completed on 2024-04-28 15:17:56

0001 /*
0002  * BluezQt - Asynchronous Bluez wrapper library
0003  *
0004  * SPDX-FileCopyrightText: 2014 David Rosca <nowrep@gmail.com>
0005  *
0006  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0007  */
0008 
0009 #ifndef BLUEZQT_PROFILEADAPTOR_H
0010 #define BLUEZQT_PROFILEADAPTOR_H
0011 
0012 #include <QDBusAbstractAdaptor>
0013 
0014 class QDBusMessage;
0015 class QDBusObjectPath;
0016 class QDBusUnixFileDescriptor;
0017 
0018 namespace BluezQt
0019 {
0020 class Manager;
0021 class Profile;
0022 
0023 class ProfileAdaptor : public QDBusAbstractAdaptor
0024 {
0025     Q_OBJECT
0026     Q_CLASSINFO("D-Bus Interface", "org.bluez.Profile1")
0027 
0028 public:
0029     explicit ProfileAdaptor(Profile *parent, Manager *manager);
0030 
0031 public Q_SLOTS:
0032     void NewConnection(const QDBusObjectPath &device, const QDBusUnixFileDescriptor &fd, const QVariantMap &properties, const QDBusMessage &msg);
0033     void RequestDisconnection(const QDBusObjectPath &device, const QDBusMessage &msg);
0034     Q_NOREPLY void Release();
0035 
0036 private:
0037     Profile *m_profile;
0038     Manager *m_manager;
0039 };
0040 
0041 } // namespace BluezQt
0042 
0043 #endif // BLUEZQT_PROFILEADAPTOR_H