glib signal marshaller

g4-lisz at tonarchiv.ch g4-lisz at tonarchiv.ch
Thu Jan 29 07:33:55 PST 2009


What about dbus-binding-tool - maybe it produces something convenient?

Regards
T

Roy Marples wrote:
> Hi List
>
> I've been pretty new to working with dbus and glib, but have written a dbus 
> server using C which works well, but am having issues with the dbus/glib 
> client for handling signals.
>
> The signature of the signal is this
>         <signal name="ScanResults">
>               <arg name="interface" direction="out" type="s"/>
>               <arg name="results" direction="out" type="a(suuss)"/>
>             </signal>
>
> The best I have for glib-genmarshal is
> VOID:STRING,BOXED
> which I'm pretty sure is wrong.
>
> The glib code trying to register is like this
>
>         otype = dbus_g_type_get_struct("GValueArray",
>                                        G_TYPE_STRING,
>                                        G_TYPE_UINT,
>                                        G_TYPE_UINT,
>                                        G_TYPE_STRING,
>                                        G_TYPE_STRING,
>                                        G_TYPE_INVALID);
>         otype = dbus_g_type_get_collection("GPtrArray", otype);
>         dbus_g_object_register_marshaller(_dhcpcd_marshal_VOID__STRING_BOXED, 
> G_TYPE_NONE,
>                                           otype, G_TYPE_INVALID);
>         dbus_g_proxy_add_signal(dbus, "ScanResults",
>                                 G_TYPE_STRING, otype, G_TYPE_INVALID);
>         dbus_g_proxy_connect_signal(dbus, "ScanResults",
>                                     G_CALLBACK(dhcpcd_scan_results),
>                                     bus, NULL);
>
> Can anyone help me, or point me to someone/list who can?
>
> Thanks
>
> Roy
> _______________________________________________
> dbus mailing list
> dbus at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dbus
>   



More information about the dbus mailing list