title: DBus Glib, send a signal with a struct nested
body: <p>I'm developing an application on c++ language on linux. I want to send a signal as this:</p>
  
  <pre><code>&lt;signal name="EmitSignal"&gt;
      &lt;arg type="(u(i)uussssu)" name="t_struct_of_signal" direction="out" /&gt;
  &lt;/signal&gt;
  </code></pre>
  
  <p>The second parameter in <code>type="(u(i)uussssu)"</code> is an enum type. </p>
  
  <p>I'm trying to register a struct </p>
  
  <pre><code>#define STRUCT_OF_SIGNAL (dbus_g_type_get_struct ("GValueArray", \
                           G_TYPE_UINT, \
                           G_TYPE_POINTER, \ 
                           G_TYPE_UINT, \
                           G_TYPE_UINT, \
                           G_TYPE_STRING, \
                           G_TYPE_STRING, \
                           G_TYPE_STRING, \
                           G_TYPE_STRING, \
                           G_TYPE_UINT, \
                           G_TYPE_INVALID))
  </code></pre>
  
  <p>but I've some errors :</p>
  
  <pre><code>** (process:21792): WARNING **: No marshaller registered for type "gpointer"
  ** (process:21792): WARNING **: failed to marshal parameter 1 for signal EmitSignal
  </code></pre>
  
  <p>Can someone help me?</p>
  
  <p>Thanks so much</p>