<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GDBusObject: GIO Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GIO Reference Manual">
<link rel="up" href="gdbus-convenience.html" title="High-level D-Bus Support">
<link rel="prev" href="GDBusProxy.html" title="GDBusProxy">
<link rel="next" href="GDBusObjectSkeleton.html" title="GDBusObjectSkeleton">
<meta name="generator" content="GTK-Doc V1.25.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#GDBusObject.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#GDBusObject.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_prerequisites">  <span class="dim">|</span> 
                  <a href="#GDBusObject.prerequisites" class="shortcut">Prerequisites</a></span><span id="nav_implementations">  <span class="dim">|</span> 
                  <a href="#GDBusObject.implementations" class="shortcut">Known Implementations</a></span><span id="nav_signals">  <span class="dim">|</span> 
                  <a href="#GDBusObject.signals" class="shortcut">Signals</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="gdbus-convenience.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="GDBusProxy.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="GDBusObjectSkeleton.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="GDBusObject"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GDBusObject.top_of_page"></a>GDBusObject</span></h2>
<p>GDBusObject — Base type for D-Bus objects</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="GDBusObject.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">const <a href="../glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObject.html#g-dbus-object-get-object-path" title="g_dbus_object_get_object_path ()">g_dbus_object_get_object_path</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObject.html#g-dbus-object-get-interfaces" title="g_dbus_object_get_interfaces ()">g_dbus_object_get_interfaces</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="returnvalue">GDBusInterface</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObject.html#g-dbus-object-get-interface" title="g_dbus_object_get_interface ()">g_dbus_object_get_interface</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GDBusObject.signals"></a><h2>Signals</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="signals_return">
<col width="300px" class="signals_name">
<col width="200px" class="signals_flags">
</colgroup>
<tbody>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="GDBusObject.html#GDBusObject-interface-added" title="The “interface-added” signal">interface-added</a></td>
<td class="signal_flags"><a href="../gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="GDBusObject.html#GDBusObject-interface-removed" title="The “interface-removed” signal">interface-removed</a></td>
<td class="signal_flags"><a href="../gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GDBusObject.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="GDBusObject.html#GDBusObject-struct" title="GDBusObject">GDBusObject</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="GDBusObject.html#GDBusObjectIface" title="struct GDBusObjectIface">GDBusObjectIface</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GDBusObject.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    <a href="https://developer.gnome.org/gobject/unstable/GTypeModule.html">GInterface</a>
    <span class="lineart">╰──</span> GDBusObject
</pre>
</div>
<div class="refsect1">
<a name="GDBusObject.prerequisites"></a><h2>Prerequisites</h2>
<p>
GDBusObject requires
 <a href="../gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>.</p>
</div>
<div class="refsect1">
<a name="GDBusObject.implementations"></a><h2>Known Implementations</h2>
<p>
GDBusObject is implemented by
 <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy">GDBusObjectProxy</a> and  <a class="link" href="GDBusObjectSkeleton.html" title="GDBusObjectSkeleton">GDBusObjectSkeleton</a>.</p>
</div>
<div class="refsect1">
<a name="GDBusObject.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;gio/gio.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="GDBusObject.description"></a><h2>Description</h2>
<p>The <a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a> type is the base type for D-Bus objects on both
the service side (see <a class="link" href="GDBusObjectSkeleton.html" title="GDBusObjectSkeleton"><span class="type">GDBusObjectSkeleton</span></a>) and the client side
(see <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a>). It is essentially just a container of
interfaces.</p>
</div>
<div class="refsect1">
<a name="GDBusObject.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="g-dbus-object-get-object-path"></a><h3>g_dbus_object_get_object_path ()</h3>
<pre class="programlisting">const <a href="../glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
g_dbus_object_get_object_path (<em class="parameter"><code><a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a> *object</code></em>);</pre>
<p>Gets the object path for <em class="parameter"><code>object</code></em>
.</p>
<div class="refsect3">
<a name="g-dbus-object-get-object-path.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-get-object-path.returns"></a><h4>Returns</h4>
<p> A string owned by <em class="parameter"><code>object</code></em>
. Do not free.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-30.html#api-index-2.30">2.30</a></p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-get-interfaces"></a><h3>g_dbus_object_get_interfaces ()</h3>
<pre class="programlisting"><a href="../glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *
g_dbus_object_get_interfaces (<em class="parameter"><code><a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a> *object</code></em>);</pre>
<p>Gets the D-Bus interfaces associated with <em class="parameter"><code>object</code></em>
.</p>
<div class="refsect3">
<a name="g-dbus-object-get-interfaces.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-get-interfaces.returns"></a><h4>Returns</h4>
<p> (element-type GDBusInterface) (transfer full) : A list of <a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="type">GDBusInterface</span></a> instances.
The returned list must be freed by <a href="../glib-Doubly-Linked-Lists.html#g-list-free"><code class="function">g_list_free()</code></a> after each element has been freed
with <a href="../gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-30.html#api-index-2.30">2.30</a></p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-get-interface"></a><h3>g_dbus_object_get_interface ()</h3>
<pre class="programlisting"><a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="returnvalue">GDBusInterface</span></a> *
g_dbus_object_get_interface (<em class="parameter"><code><a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a> *object</code></em>,
                             <em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *interface_name</code></em>);</pre>
<p>Gets the D-Bus interface with name <em class="parameter"><code>interface_name</code></em>
 associated with
<em class="parameter"><code>object</code></em>
, if any.</p>
<div class="refsect3">
<a name="g-dbus-object-get-interface.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interface_name</p></td>
<td class="parameter_description"><p>A D-Bus interface name.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-get-interface.returns"></a><h4>Returns</h4>
<p> <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found, otherwise a
<a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="type">GDBusInterface</span></a> that must be freed with <a href="../gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-30.html#api-index-2.30">2.30</a></p>
</div>
</div>
<div class="refsect1">
<a name="GDBusObject.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GDBusObject-struct"></a><h3>GDBusObject</h3>
<pre class="programlisting">typedef struct _GDBusObject GDBusObject;</pre>
<p><a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a> is an opaque data structure and can only be accessed
using the following functions.</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectIface"></a><h3>struct GDBusObjectIface</h3>
<pre class="programlisting">struct GDBusObjectIface {
  GTypeInterface parent_iface;

  /* Virtual Functions */
  const gchar     *(*get_object_path) (GDBusObject  *object);
  GList           *(*get_interfaces)  (GDBusObject  *object);
  GDBusInterface  *(*get_interface)   (GDBusObject  *object,
                                       const gchar  *interface_name);

  /* Signals */
  void (*interface_added)   (GDBusObject     *object,
                             GDBusInterface  *interface_);
  void (*interface_removed) (GDBusObject     *object,
                             GDBusInterface  *interface_);
};
</pre>
<p>Base object type for D-Bus objects.</p>
<div class="refsect3">
<a name="GDBusObjectIface.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a href="../gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GDBusObjectIface.parent-iface"></a>parent_iface</code></em>;</p></td>
<td class="struct_member_description"><p>The parent interface.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="GDBusObjectIface.get-object-path"></a>get_object_path</code></em> ()</p></td>
<td class="struct_member_description"><p>Returns the object path. See <a class="link" href="GDBusObject.html#g-dbus-object-get-object-path" title="g_dbus_object_get_object_path ()"><code class="function">g_dbus_object_get_object_path()</code></a>.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="GDBusObjectIface.get-interfaces"></a>get_interfaces</code></em> ()</p></td>
<td class="struct_member_description"><p>Returns all interfaces. See <a class="link" href="GDBusObject.html#g-dbus-object-get-interfaces" title="g_dbus_object_get_interfaces ()"><code class="function">g_dbus_object_get_interfaces()</code></a>.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="GDBusObjectIface.get-interface"></a>get_interface</code></em> ()</p></td>
<td class="struct_member_description"><p>Returns an interface by name. See <a class="link" href="GDBusObject.html#g-dbus-object-get-interface" title="g_dbus_object_get_interface ()"><code class="function">g_dbus_object_get_interface()</code></a>.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="GDBusObjectIface.interface-added"></a>interface_added</code></em> ()</p></td>
<td class="struct_member_description"><p>Signal handler for the <a class="link" href="GDBusObject.html#GDBusObject-interface-added" title="The “interface-added” signal"><span class="type">“interface-added”</span></a> signal.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="GDBusObjectIface.interface-removed"></a>interface_removed</code></em> ()</p></td>
<td class="struct_member_description"><p>Signal handler for the <a class="link" href="GDBusObject.html#GDBusObject-interface-removed" title="The “interface-removed” signal"><span class="type">“interface-removed”</span></a> signal.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-30.html#api-index-2.30">2.30</a></p>
</div>
</div>
<div class="refsect1">
<a name="GDBusObject.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GDBusObject-interface-added"></a><h3>The <code class="literal">“interface-added”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a>    *object,
               <a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="type">GDBusInterface</span></a> *interface,
               <a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)</pre>
<p>Emitted when <em class="parameter"><code>interface</code></em>
 is added to <em class="parameter"><code>object</code></em>
.</p>
<div class="refsect3">
<a name="GDBusObject-interface-added.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a> emitting the signal.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interface</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="type">GDBusInterface</span></a> that was added.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="../gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
<p class="since">Since: <a class="link" href="api-index-2-30.html#api-index-2.30">2.30</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObject-interface-removed"></a><h3>The <code class="literal">“interface-removed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a>    *object,
               <a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="type">GDBusInterface</span></a> *interface,
               <a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)</pre>
<p>Emitted when <em class="parameter"><code>interface</code></em>
 is removed from <em class="parameter"><code>object</code></em>
.</p>
<div class="refsect3">
<a name="GDBusObject-interface-removed.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusObject.html" title="GDBusObject"><span class="type">GDBusObject</span></a> emitting the signal.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interface</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusInterface.html" title="GDBusInterface"><span class="type">GDBusInterface</span></a> that was removed.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="../gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
<p class="since">Since: <a class="link" href="api-index-2-30.html#api-index-2.30">2.30</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.25.1</div>
</body>
</html>