Простые типы данных по dbus передаются спокойно. Если передавать свои типы данных, то нужно использовать маршализацию. И вот вопрос, как ее использовать, если передавать сообщения еденичные типа
| Код | QDBusMessage msg = QDBusMessage::createSignal(dbus::servicePath(), dbus::serviceName(), "someSignal"); msg << signalArgument; QDBusConnection::sessionBus().send(msg);
|
Понятно, что маршализация происходит через перегрузку оператора<<
| Код | friend QDBusArgument& operator <<(QDBusArgument& argument, const Money& arg) { argument.beginStructure(); argument << arg.summ; argument << arg.type; argument.endStructure();
return argument; }
|
Как связать перегрузку аргумента с сообщением? |