qt_add_dbus_adaptor#

Generates an adaptor class for a D-Bus interface.

Generates an adaptor class for a D-Bus interface.

The command is defined in the DBus component of the Qt6 package. Load the package with:

find_package(Qt6 REQUIRED COMPONENTS DBus)

This command was introduced in Qt 6.0.

Synopsis#

qt_add_dbus_adaptor(<VAR> dbus_spec header
    [parent_class]
    [basename]
    [classname]
)

If versionless commands are disabled, use qt6_add_dbus_adaptor() instead. It supports the same set of arguments as this command.

Description#

Generates a C++ header file implementing an adaptor for a D-Bus interface description file defined in dbus_spec. The path of the generated file is added to <VAR>. The generated adaptor class takes a pointer to parent_class as QObject parent. parent_class should be declared in header, which is included in the generated code as #include "header".

The function sets up a call to the Qt D-Bus XML compiler (qdbusxml2cpp) in adaptor mode. The default file and class name are generated from the last segment in the dbus_spec base name:

XML file

Header file

Class name

org.example.chat

chatadaptor.h

ChatAdaptor

You can change the name of the header file to be generated by passing basename as the fifth argument. The .h suffix is always added.

You can change the default class name by passing classname as the sixth argument.

Examples#

qt_add_dbus_adaptor(GENERATED_SOURCES org.example.chat.xml chat.h ChatMainWindow)