Qt DBus ライブラリを使用して、複数のインターフェイスを実装するオブジェクトを登録するのに苦労しています。
<node>
<interface name="x.I1"> <method name="foo"/> </interface>
<interface name="x.I2"> <method name="bar"/> </interface>
</node>
C++ 多重継承を使用して両方のインターフェイスを実装しています。
class Impl : public x.I1, public x.I2 {
public:
void foo(){}
void bar(){}
};
このqdbusxml2cpp
ツールDBusAdaptor
は各インターフェイスに対して を生成しますがQDBusConnection
、インターフェイスの実装者をそのオブジェクトに追加するメソッドがありません。
そして、このオブジェクトを DBus サービスに公開したいと考えています。
QDBusConnection conn=QDBusConnection::sessionBus();
conn.registerObject("/obj",new DBusAdaptor????(&myObject) );
これを実現するには、独自のアダプターを実装する必要がありますか?