Qt dbus属性返回一个列表

时间:2017-06-14 20:20:07

标签: c++ qt dbus

我正在试图找出如何处理dbus列表unsigned short的{​​{1}}属性。我是dbusQt的新手,示例根本不包含列表。

XML源代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<node>
  <interface name='com.Controller'>
    <property name="ModeCycle" type="aq" access="readwrite">
      <annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal"
          value="true"/>
      <annotation name="org.qtproject.QtDBus.QtTypeName"
          value="ModeCycleList"/>
    </property>
  </interface>
</node>

我最初尝试传递Qlist<unsigned short的值,但qdbusxml2cpp无法处理那里的尖括号(并默默地删除条目)。所以,我创建了bits.h:

#include <QtCore/QList>
typedef QList<unsigned short> ModeCycleList;

我补充说:

QT += dbus 
QDBUSXML2CPP_INTERFACE_HEADER_FLAGS = -i bits.h

到.pro文件中以包含typedef并获取要链接的内容。

我实际上无法运行代码(缺少dbus连接的另一面),但至少它编译和链接。

有没有人有dbus列表属性的示例或知道我应该如何在此处指定列表?

0 个答案:

没有答案