marchalling struct on window.

Thiago Macieira thiago at
Mon Mar 15 09:51:27 PDT 2010

Em Segunda-feira 15 Março 2010, às 13:55:16, Mansour Al Akeel escreveu:
> I need to read data from hardware dvices, and send it through the bus to
> component(s) interested in these data. I understand signals are the way to
> go, but I want to put these data in struc and validate it before sending
> it. Thus, I have to marchall the structs, and unmarchall it again.
> Processes that are going to recieve the event, are going to be in
> different languages (C#, python, java). So I have to unmarchall it for
> these languages.


PS: "marshall"

> In other words I want something similar to publish/subsribe pattern for
> IPC. Performance is a concern to me, as this should be deployed on low
> resource hardware. The daemon should be always running, and the services
> producing events is always running.
> My questions,
> 1- Is dbus right for this ?

It's not wrong, though there may be faster alternatives.

The advantage of D-Bus is the availability of bindings to many languages.

> 2- If yes, where can I find basic example about marchalling c struct's
>     and unmarchalling them to C# ?

I'll leave this to the people who have done work in C#.

> 3- What to use for this type of communication , methods calls or
>     signals ?  My understanding is, signal are good for broad cast, but
>     we can send only array of strings, while method calls are good for
>     passing complex argument, but I have to wait for it to return, which
>     is not the case. I am looking for fire-and-forget !

You understand signals wrong. It can contain any information that a method can 
contain, including complex argument types.

> 4- I am working on windows XP with dbus, did anyone experience
>     problems with this ?

I thought you said you were on low-resource hardware and that performance was 
a concern. So why are you using Windows XP and and old version of D-Bus?

Thiago Macieira - thiago (AT) - thiago (AT)
  Senior Product Manager - Nokia, Qt Development Frameworks
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <>

More information about the dbus mailing list