首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从glib-dbus迁移到gdbus

从glib-dbus迁移到gdbus
EN

Stack Overflow用户
提问于 2013-06-08 10:06:34
回答 1查看 1.3K关注 0票数 2

我正在尝试将我的代码从glib-dbus迁移到gdbus。在早期的实现中,类结构和实例结构都可以由我来定义,指针被允许作为属性。

代码语言:javascript
复制
struct test {
  GObject parent;
  some_structure *pointer;
};

我的实例结构有指针,我可以轻松地管理这些指针。

但是在gdbus中,代码是使用gdbus-codegen生成的--所有的类和实例结构都是根据内省XML文件自动生成的。

所以我有两个问题

  1. gdbus使用uses,这清楚地提到它不支持指针。有什么解决办法吗?
  2. 我可以将内部成员添加到gdbus-codegen创建的实例结构中吗?

我试着用谷歌搜索这些东西,但由于我刚开始使用谷歌和gdbus的东西,所以我不太确定。

EN

回答 1

Stack Overflow用户

发布于 2014-01-01 17:08:48

1) GVariant用于方法参数,而不是例如/app-数据指针(这是您问我是否正确理解的)。

2)对于基于gdbus的服务器实现,通常使用信号处理程序(如https://developer.gnome.org/gio/2.36/gdbus-codegen.html中所述)。

然后,为了提供应用程序数据,您可以简单地通过g_signal_connect用户数据指针传递.

作为另一种选择,可以使用g_object_set_data将应用程序数据指针附加到实例,然后可以使用g_object_get_data检索该实例。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16998377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档