SolidModules
bluez-bluetoothremotedevice.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef BLUEZ_BLUETOOTHREMOTEDEVICE_H
00024 #define BLUEZ_BLUETOOTHREMOTEDEVICE_H
00025
00026 #include <kdemacros.h>
00027
00028 #include <solid/control/ifaces/bluetoothremotedevice.h>
00029 #include <QtDBus>
00030
00031
00032 class KDE_EXPORT BluezBluetoothRemoteDevice : public Solid::Control::Ifaces::BluetoothRemoteDevice
00033 {
00034 Q_OBJECT
00035 Q_INTERFACES(Solid::Control::Ifaces::BluetoothRemoteDevice)
00036 public:
00037 BluezBluetoothRemoteDevice(const QString &objectPath);
00038 virtual ~BluezBluetoothRemoteDevice();
00039
00040 QString ubi() const;
00041 QMap<QString,QVariant> getProperties() const;
00042 void discoverServices(const QString &pattern) const;
00043 QStringList listNodes() const;
00044
00045 private Q_SLOTS:
00046
00047 void slotPropertyChanged(const QString &, const QDBusVariant &);
00048 void slotDisconnectRequested();
00049 void slotNodeCreated(const QDBusObjectPath &);
00050 void slotNodeRemoved(const QDBusObjectPath &);
00051
00052 void slotServiceDiscover(const QMap<uint,QString> &handles);
00053 void dbusErrorServiceDiscover(const QDBusError &error);
00054
00055 public Q_SLOTS:
00056
00057 void setProperty(const QString &, const QVariant &);
00058 void cancelDiscovery();
00059 void disconnect();
00060
00061 Q_SIGNALS:
00062
00063 void serviceDiscoverAvailable(const QString &state, const QMap<uint,QString> &handles);
00064 void propertyChanged(const QString &, const QVariant &);
00065 void disconnectRequested();
00066 void nodeCreated(const QString &);
00067 void nodeRemoved(const QString &);
00068
00069 private:
00070 QString m_objectPath;
00071 QDBusInterface *device;
00072 QString m_address;
00073 QString m_adapter;
00074
00075 QStringList listReply(const QString &method) const;
00076 QString stringReply(const QString &method) const;
00077 bool boolReply(const QString &method) const;
00078 };
00079
00080 #endif