QDBusVariant Class
The QDBusVariant class enables the programmer to identify the variant type provided by the D-Bus typesystem. More...
Header: | #include <QDBusVariant> |
qmake: | QT += dbus |
Since: | Qt 4.2 |
Public Functions
QDBusVariant() | |
QDBusVariant(QVariant &&v) | |
QVariant | variant() const |
Detailed Description
The QDBusVariant class enables the programmer to identify the variant type provided by the D-Bus typesystem.
A D-Bus function that takes an integer, a D-Bus variant and a string as parameters can be called with the following argument list (see QDBusMessage::setArguments()):
QList<QVariant> arguments; arguments << QVariant(42) << QVariant::fromValue(QDBusVariant(43)) << QVariant("hello"); myDBusMessage.setArguments(arguments);
When a D-Bus function returns a D-Bus variant, it can be retrieved as follows:
// call a D-Bus function that returns a D-Bus variant QVariant v = callMyDBusFunction(); // retrieve the D-Bus variant QDBusVariant dbusVariant = qvariant_cast<QDBusVariant>(v); // retrieve the actual value stored in the D-Bus variant QVariant result = dbusVariant.variant();
The QVariant within a QDBusVariant is required to distinguish between a normal D-Bus value and a value within a D-Bus variant.
See also The Qt D-Bus Type System.