服务器和客户端中的不同Dbus绑定

时间:2013-03-08 08:25:26

标签: dbus qdbus

我正在尝试实现Dbus客户端。 Dbus服务器实际上是由第三方实现的,我不知道它使用了什么绑定(但我猜gdbus)。现在我可以在客户端应用程序中使用QDbus绑定,而不管Dbus服务器中使用的绑定是什么? 如果是这样,在服务器(例如glib类型)和客户端(例如qt类型)之间如何管理数据类型(w.r.t.复杂数据类型/用户定义结构)?非常感谢对这一概念的解释。

1 个答案:

答案 0 :(得分:1)

DBus上的所有类型都有DBus类型,绑定只是将它们转换为自己的格式。例如,uint32类型是C / C ++中的unsigned int,而在Java绑定中,它是UInt32

基本上,所有实现都需要知道消息的有线格式。只要他们理解了这种格式,那么转换为更高级别的数据类型并不重要。我不会把它们称为复杂的数据类型,因为你只能通过总线发送基本数据类型。