3 * Copyright (C) 2006 Thiago José Macieira <thiago@kde.org>
4 * Copyright (C) 2006 Trolltech AS. All rights reserved.
5 * Author: Thiago Macieira <thiago.macieira@trolltech.com>
7 * Licensed under the Academic Free License version 2.1
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software Foundation
21 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
29 // This file is not part of the public API. This header file may
30 // change from version to version without notice, or even be
37 #ifndef QDBUSABSTRACTINTERFACEPRIVATE_H
38 #define QDBUSABSTRACTINTERFACEPRIVATE_H
40 #include "qdbusabstractinterface.h"
41 #include "qdbusconnection.h"
42 #include "qdbuserror.h"
44 #define ANNOTATION_NO_WAIT "org.freedesktop.DBus.Method.NoReply"
46 class QDBusAbstractInterfacePrivate//: public QObjectPrivate
49 Q_DECLARE_PUBLIC(QDBusAbstractInterface)
51 QDBusAbstractInterface *q_ptr; // remove in Qt 4.2
53 QDBusConnectionPrivate *connp;
57 mutable QDBusError lastError;
60 inline QDBusAbstractInterfacePrivate(const QDBusConnection& con, QDBusConnectionPrivate *conp,
61 const QString &serv, const QString &p, const QString &iface)
62 : conn(con), connp(conp), service(serv), path(p), interface(iface), isValid(true)
64 virtual ~QDBusAbstractInterfacePrivate() { }
66 // these functions do not check if the property is valid
67 QVariant property(const QMetaProperty &mp) const;
68 void setProperty(const QMetaProperty &mp, const QVariant &value);