qt_add_dbus_adaptor
Erzeugt eine Adapterklasse für eine D-Bus-Schnittstelle.
Der Befehl ist in der Komponente „ DBus “ des Pakets „ Qt6 “ definiert. Laden Sie das Paket mit folgendem Befehl:
find_package(Qt6 REQUIRED COMPONENTS DBus)Dieser Befehl wurde in Qt 6.0 eingeführt.
Syntax
qt_add_dbus_adaptor(<VAR> dbus_spec header
[parent_class]
[basename]
[classname]
)Wenn versionslose Befehle deaktiviert sind, verwenden Sie stattdessen „ qt6_add_dbus_adaptor() “. Dieser Befehl unterstützt dieselben Argumente wie der vorliegende Befehl.
Beschreibung
Erzeugt eine C++-Header-Datei, die einen Adapter für eine in „ dbus_spec “ definierte D-Bus-Schnittstellenbeschreibungsdatei implementiert. Der Pfad der erzeugten Datei wird zu „ <VAR> “ hinzugefügt. Die erzeugte Adapterklasse nimmt einen Zeiger auf „ parent_class “ als „ QObject “-Elternelement entgegen. „ parent_class “ sollte in „ header “ deklariert werden, das im erzeugten Code als „ #include "header" “ eingebunden wird.
Die Funktion richtet einen Aufruf des XML-Compilers „Qt D-Bus “ (qdbusxml2cpp) im Adaptermodus ein. Der Standarddatei- und Klassenname werden aus dem letzten Segment des Basisnamens „ dbus_spec “ generiert:
| XML-Datei | Header-Datei | Klassenname |
|---|---|---|
org.example.chat | chatadaptor.h | ChatAdaptor |
Sie können den Namen der zu generierenden Header-Datei ändern, indem Sie „ basename “ als fünftes Argument übergeben. Das Suffix „ .h “ wird immer angehängt.
Sie können den Standardklassennamen ändern, indem Sie „ classname “ als sechstes Argument übergeben.
Beispiele
qt_add_dbus_adaptor(GENERATED_SOURCES org.example.chat.xml chat.h ChatMainWindow)© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.