是否可以使用dbusxx-xml2cpp生成非阻塞调用? 我想用C++来生成C++标题,其中一些方法是非阻塞的,例如使用调用KooKyMytho.NoeLeope而不是这可能吗

是否可以使用dbusxx-xml2cpp生成非阻塞调用? 我想用C++来生成C++标题,其中一些方法是非阻塞的,例如使用调用KooKyMytho.NoeLeope而不是这可能吗,c++,code-generation,dbus,C++,Code Generation,Dbus,例如,以下XML: <?xml version="1.0" encoding="UTF-8" ?> <node name="/me/MyService"> <interface name="me.MyService"> <method name="MyMethod"> <arg direction="in" type="s" name="argument"/>

例如,以下XML:

<?xml version="1.0" encoding="UTF-8" ?>
<node name="/me/MyService">
    <interface name="me.MyService">
            <method name="MyMethod">
                    <arg direction="in" type="s" name="argument"/>
            </method>
    </interface>
</node>

将产生(部分):

void MyMethod(常量std::字符串和参数)
{
::DBus::CallMessage调用;
::DBus::MessageIter wi=call.writer();

wi使用注释org.freedesktop.DBus.Method.NoReply“

XML示例:

<node>
  <interface name="org.test.example">
    <method name="NoReplyMethod">
      <arg name="data" direction="in" type="i"/>
      <annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
    </method>
  </interface>
</node>

生成的代码:

void NoReplyMethod(const int32_t& data)
{
    ::DBus::CallMessage call;
    ::DBus::MessageIter wi = call.writer();

    wi << data;
    call.member("NoReplyMethod");
    assert (invoke_method_noreply (call));
}
void NoReplyMethod(const int32\u t&data)
{
::DBus::CallMessage调用;
::DBus::MessageIter wi=call.writer();

谢谢!你知道这方面的文档吗?这个链接有一些信息
<node>
  <interface name="org.test.example">
    <method name="NoReplyMethod">
      <arg name="data" direction="in" type="i"/>
      <annotation name="org.freedesktop.DBus.Method.NoReply" value="true"/>
    </method>
  </interface>
</node>
void NoReplyMethod(const int32_t& data)
{
    ::DBus::CallMessage call;
    ::DBus::MessageIter wi = call.writer();

    wi << data;
    call.member("NoReplyMethod");
    assert (invoke_method_noreply (call));
}