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 QDBUSMETAOBJECT_P_H
6#define QDBUSMETAOBJECT_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the public API. This header file may
13// change from version to version without notice, or even be
14// removed.
15//
16// We mean it.
17//
18//
19
20#include <QtDBus/private/qtdbusglobal_p.h>
21#include <QtCore/qmetaobject.h>
22
23#ifndef QT_NO_DBUS
24
25#ifdef interface
26# undef interface
27#endif
28
29QT_BEGIN_NAMESPACE
30
31class QDBusError;
32
33struct QDBusMetaObjectPrivate;
34struct Q_DBUS_EXPORT QDBusMetaObject: public QMetaObject
35{
36 bool cached;
37
38 static QDBusMetaObject *createMetaObject(const QString &interface, const QString &xml,
39 QHash<QString, QDBusMetaObject *> &map,
40 QDBusError &error);
41 ~QDBusMetaObject()
42 {
43 delete [] reinterpret_cast<const char *>(d.stringdata);
44 delete [] d.data;
45 delete [] reinterpret_cast<const QMetaType *>(d.metaTypes);
46 }
47
48 // methods (slots & signals):
49 const int *inputTypesForMethod(int id) const;
50 const int *outputTypesForMethod(int id) const;
51
52 // properties:
53 int propertyMetaType(int id) const;
54
55private:
56 QDBusMetaObject();
57};
58
59QT_END_NAMESPACE
60
61#endif // QT_NO_DBUS
62#endif
63

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