Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qdbusservicewatcher.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QDBUSSERVICEWATCHER_H
6#define QDBUSSERVICEWATCHER_H
7
8#include <QtCore/QObject>
9#include <QtCore/qcontainerfwd.h> // Q(String)List
10#include <QtDBus/qtdbusglobal.h>
11
12#if !defined(QT_NO_DBUS) && !defined(QT_NO_QOBJECT)
13
14QT_BEGIN_NAMESPACE
15
16class QString;
17template<typename T>
18class QBindable;
19
20class QDBusConnection;
21
23class Q_DBUS_EXPORT QDBusServiceWatcher: public QObject
24{
25 Q_OBJECT
26 Q_PROPERTY(QStringList watchedServices READ watchedServices WRITE setWatchedServices
27 BINDABLE bindableWatchedServices)
28 Q_PROPERTY(WatchMode watchMode READ watchMode WRITE setWatchMode BINDABLE bindableWatchMode)
29public:
30 enum WatchModeFlag {
31 WatchForRegistration = 0x01,
32 WatchForUnregistration = 0x02,
33 WatchForOwnerChange = 0x03
34 };
35 Q_DECLARE_FLAGS(WatchMode, WatchModeFlag)
36 Q_FLAG(WatchMode)
37
38 explicit QDBusServiceWatcher(QObject *parent = nullptr);
39 QDBusServiceWatcher(const QString &service, const QDBusConnection &connection,
40 WatchMode watchMode = WatchForOwnerChange, QObject *parent = nullptr);
41 ~QDBusServiceWatcher();
42
43 QStringList watchedServices() const;
44 void setWatchedServices(const QStringList &services);
45 void addWatchedService(const QString &newService);
46 bool removeWatchedService(const QString &service);
47 QBindable<QStringList> bindableWatchedServices();
48
49 WatchMode watchMode() const;
50 void setWatchMode(WatchMode mode);
51 QBindable<WatchMode> bindableWatchMode();
52
53 QDBusConnection connection() const;
54 void setConnection(const QDBusConnection &connection);
55
56Q_SIGNALS:
57 void serviceRegistered(const QString &service);
58 void serviceUnregistered(const QString &service);
59 void serviceOwnerChanged(const QString &service, const QString &oldOwner, const QString &newOwner);
60
61private:
62 Q_PRIVATE_SLOT(d_func(), void _q_serviceOwnerChanged(QString,QString,QString))
63 Q_DISABLE_COPY(QDBusServiceWatcher)
64 Q_DECLARE_PRIVATE(QDBusServiceWatcher)
65};
66
67Q_DECLARE_OPERATORS_FOR_FLAGS(QDBusServiceWatcher::WatchMode)
68
69QT_END_NAMESPACE
70
71#endif // QT_NO_DBUS || QT_NO_QOBJECT
72#endif // QDBUSSERVICEWATCHER_H
static void saveIntrospectionXml(QDBusAbstractAdaptor *adaptor, const QString &xml)
static QString retrieveIntrospectionXml(QDBusAbstractAdaptor *adaptor)
void relay(QObject *sender, int id, void **)
void addAdaptor(QDBusAbstractAdaptor *adaptor)
void disconnectAllSignals(QObject *object)
QList< AdaptorData > AdaptorMap
QDBusAdaptorConnector(QObject *parent)
void connectAllSignals(QObject *object)
\inmodule QtDBus
\inmodule QtDBus
Definition qdbuserror.h:22
\inmodule QtDBus
The QDBusServiceWatcher class allows the user to watch for a bus service change.
CallMode
This enum describes the various ways of placing a function call.
QDBusAdaptorConnector * qDBusFindAdaptorConnector(QDBusAbstractAdaptor *adaptor)
QDBusAdaptorConnector * qDBusCreateAdaptorConnector(QObject *obj)
QDBusAdaptorConnector * qDBusFindAdaptorConnector(QObject *obj)
QDBusAdaptorConnector * qDBusCreateAdaptorConnector(QObject *object)
#define QCLASSINFO_DBUS_INTERFACE
QDBusAdaptorConnector * qDBusFindAdaptorConnector(QObject *object)
bool qDBusInterfaceInObject(QObject *obj, const QString &interface_name)
Q_DBUS_EXPORT int qDBusParametersForMethod(const QList< QByteArray > &parameters, QList< QMetaType > &metaTypes, QString &errorMsg)
QString qDBusIntrospectObject(const QDBusConnectionPrivate::ObjectTreeNode &node, const QString &path)
QString qDBusInterfaceFromMetaObject(const QMetaObject *mo)
Definition qdbusmisc.cpp:43
Q_DBUS_EXPORT bool qDBusCheckAsyncTag(const char *tag)
Definition qdbusmisc.cpp:26
QDBusMessage qDBusPropertyGetAll(const QDBusConnectionPrivate::ObjectTreeNode &node, const QDBusMessage &msg)
QDBusMessage qDBusPropertyGet(const QDBusConnectionPrivate::ObjectTreeNode &node, const QDBusMessage &msg)
int qDBusParametersForMethod(const QMetaMethod &mm, QList< QMetaType > &metaTypes, QString &errorMsg)
QDBusMessage qDBusPropertySet(const QDBusConnectionPrivate::ObjectTreeNode &node, const QDBusMessage &msg)
Q_CORE_EXPORT QDebug operator<<(QDebug debug, QDir::Filters filters)
Definition qdir.cpp:2568
Q_DECLARE_TYPEINFO(QObjectPrivate::ConnectionList, Q_RELOCATABLE_TYPE)