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

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