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 QDBUSVIRTUALOBJECT_H
6#define QDBUSVIRTUALOBJECT_H
7
8#include <QtDBus/qtdbusglobal.h>
9#include <QtCore/qstring.h>
10#include <QtCore/qobject.h>
11
12#ifndef QT_NO_DBUS
13
14QT_BEGIN_NAMESPACE
15
16
17class QDBusMessage;
18class QDBusConnection;
19
20class Q_DBUS_EXPORT QDBusVirtualObject : public QObject
21{
22 Q_OBJECT
23public:
24 explicit QDBusVirtualObject(QObject *parent = nullptr);
25 virtual ~QDBusVirtualObject();
26
27 virtual QString introspect(const QString &path) const = 0;
28 virtual bool handleMessage(const QDBusMessage &message, const QDBusConnection &connection) = 0;
29
30private:
31 Q_DISABLE_COPY(QDBusVirtualObject)
32};
33
34QT_END_NAMESPACE
35
36#endif // QT_NO_DBUS
37#endif
38

source code of qtbase/src/dbus/qdbusvirtualobject.h