【问题标题】:qdbus multiple interfaces in the same object pathqdbus 多个接口在同一个对象路径中
【发布时间】:2013-07-01 09:41:49
【问题描述】:

我需要知道如何使用 dbus 服务器中的 QDbus 绑定在服务下的同一对象路径中公开多个接口。我使用 qdbusxml2cpp 来生成适配器类。 下面的结构可以清楚地说明问题。

MyService (Service Name)
/org/demo (Object path)
org.demo.interface1 (Adaptor classA)
methodA
signalA
org.demo.interface2 (Adaptor classB)
methodB
signalB

如果可能,请提供示例代码帮助我。

【问题讨论】:

标签: dbus qdbus


【解决方案1】:

我自己花了最后几个小时来解决这个问题。这是如何做到的:

  1. class MyService : public QObject, public QDBusContext 有私有成员 `m_interface1' 和 'm_interface2'
  2. interface1interface2派生QDBusAbstractAdaptor(派生)类
  3. 在实例化interface1interface2 时,将MyService 用作它们的父级指针
  4. 使用QDBusConnection::registerObject("/", myService)注册MyService指向D-Bus的指针

【讨论】:

    猜你喜欢
    • 2014-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-20
    • 2016-08-21
    • 1970-01-01
    相关资源
    最近更新 更多