blob: c793dbda8b9219fc45a7be2aefef2f07ab525be0 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GDBusObjectManagerClient: 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="GDBusObjectManagerServer.html" title="GDBusObjectManagerServer">
<link rel="next" href="settings.html" title="Settings">
<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="#GDBusObjectManagerClient.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
<a href="#GDBusObjectManagerClient.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
<a href="#GDBusObjectManagerClient.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
<a href="#GDBusObjectManagerClient.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
<a href="#GDBusObjectManagerClient.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="GDBusObjectManagerServer.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="settings.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="GDBusObjectManagerClient"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GDBusObjectManagerClient.top_of_page"></a>GDBusObjectManagerClient</span></h2>
<p>GDBusObjectManagerClient — Client-side object manager</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.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">
<a href="../gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()">*GDBusProxyTypeFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()">g_dbus_object_manager_client_new</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-finish" title="g_dbus_object_manager_client_new_finish ()">g_dbus_object_manager_client_new_finish</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-sync" title="g_dbus_object_manager_client_new_sync ()">g_dbus_object_manager_client_new_sync</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()">g_dbus_object_manager_client_new_for_bus</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-finish" title="g_dbus_object_manager_client_new_for_bus_finish ()">g_dbus_object_manager_client_new_for_bus_finish</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-sync" title="g_dbus_object_manager_client_new_for_bus_sync ()">g_dbus_object_manager_client_new_for_bus_sync</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="returnvalue">GDBusConnection</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-connection" title="g_dbus_object_manager_client_get_connection ()">g_dbus_object_manager_client_get_connection</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="returnvalue">GDBusObjectManagerClientFlags</span></a>
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-flags" title="g_dbus_object_manager_client_get_flags ()">g_dbus_object_manager_client_get_flags</a> <span class="c_punctuation">()</span>
</td>
</tr>
<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="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-name" title="g_dbus_object_manager_client_get_name ()">g_dbus_object_manager_client_get_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-name-owner" title="g_dbus_object_manager_client_get_name_owner ()">g_dbus_object_manager_client_get_name_owner</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type"><a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a></td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--bus-type" title="The “bus-type” property">bus-type</a></td>
<td class="property_flags">Write / Construct Only</td>
</tr>
<tr>
<td class="property_type">
<a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *</td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--connection" title="The “connection” property">connection</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a></td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--flags" title="The “flags” property">flags</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type"><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a></td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-destroy-notify" title="The “get-proxy-type-destroy-notify” property">get-proxy-type-destroy-notify</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type"><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a></td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-func" title="The “get-proxy-type-func” property">get-proxy-type-func</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type"><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a></td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-user-data" title="The “get-proxy-type-user-data” property">get-proxy-type-user-data</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type">
<a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name" title="The “name” property">name</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type">
<a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property">name-owner</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type">
<a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--object-path" title="The “object-path” property">object-path</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.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="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-properties-changed" title="The “interface-proxy-properties-changed” signal">interface-proxy-properties-changed</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="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-signal" title="The “interface-proxy-signal” signal">interface-proxy-signal</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="GDBusObjectManagerClient.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="GDBusObjectManagerClient.html#GDBusObjectManagerClient-struct" title="GDBusObjectManagerClient">GDBusObjectManagerClient</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientClass" title="struct GDBusObjectManagerClientClass">GDBusObjectManagerClientClass</a></td>
</tr>
<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags">GDBusObjectManagerClientFlags</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen"> <a href="../gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
<span class="lineart">╰──</span> GDBusObjectManagerClient
</pre>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GDBusObjectManagerClient implements
<a class="link" href="GInitable.html" title="GInitable">GInitable</a>, <a class="link" href="GAsyncInitable.html" title="GAsyncInitable">GAsyncInitable</a> and <a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager">GDBusObjectManager</a>.</p>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;gio/gio.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.description"></a><h2>Description</h2>
<p><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> is used to create, monitor and delete object
proxies for remote objects exported by a <a class="link" href="GDBusObjectManagerServer.html" title="GDBusObjectManagerServer"><span class="type">GDBusObjectManagerServer</span></a> (or any
code implementing the
<a class="ulink" href="http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager" target="_top">org.freedesktop.DBus.ObjectManager</a>
interface).</p>
<p>Once an instance of this type has been created, you can connect to
the <a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-added" title="The “object-added” signal"><span class="type">“object-added”</span></a> and
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-removed" title="The “object-removed” signal"><span class="type">“object-removed”</span></a> signals and inspect the
<a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> objects returned by
<a class="link" href="GDBusObjectManager.html#g-dbus-object-manager-get-objects" title="g_dbus_object_manager_get_objects ()"><code class="function">g_dbus_object_manager_get_objects()</code></a>.</p>
<p>If the name for a <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> is not owned by anyone at
object construction time, the default behavior is to request the
message bus to launch an owner for the name. This behavior can be
disabled using the <a class="link" href="GDBusObjectManagerClient.html#G-DBUS-OBJECT-MANAGER-CLIENT-FLAGS-DO-NOT-AUTO-START:CAPS"><code class="literal">G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START</code></a>
flag. It's also worth noting that this only works if the name of
interest is activatable in the first place. E.g. in some cases it
is not possible to launch an owner for the requested name. In this
case, <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object construction still succeeds but
there will be no object proxies
(e.g. <a class="link" href="GDBusObjectManager.html#g-dbus-object-manager-get-objects" title="g_dbus_object_manager_get_objects ()"><code class="function">g_dbus_object_manager_get_objects()</code></a> returns the empty list) and
the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a> property is <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
<p>The owner of the requested name can come and go (for example
consider a system service being restarted) – <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>
handles this case too; simply connect to the <a href="../gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">“notify”</span></a>
signal to watch for changes on the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a>
property. When the name owner vanishes, the behavior is that
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a> is set to <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (this includes
emission of the <a href="../gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">“notify”</span></a> signal) and then
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-removed" title="The “object-removed” signal"><span class="type">“object-removed”</span></a> signals are synthesized
for all currently existing object proxies. Since
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a> is <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when this happens, you can
use this information to disambiguate a synthesized signal from a
genuine signal caused by object removal on the remote
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="type">GDBusObjectManager</span></a>. Similarly, when a new name owner appears,
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-added" title="The “object-added” signal"><span class="type">“object-added”</span></a> signals are synthesized
while <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a> is still <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Only when all
object proxies have been added, the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a>
is set to the new name owner (this includes emission of the
<a href="../gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">“notify”</span></a> signal). Furthermore, you are guaranteed that
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a> will alternate between a name owner
(e.g. <code class="literal">:1.42</code>) and <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> even in the case where
the name of interest is atomically replaced</p>
<p>Ultimately, <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> is used to obtain <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a>
instances. All signals (including the
org.freedesktop.DBus.Properties::PropertiesChanged signal)
delivered to <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> instances are guaranteed to originate
from the name owner. This guarantee along with the behavior
described above, means that certain race conditions including the
"half the proxy is from the old owner and the other half is from
the new owner" problem cannot happen.</p>
<p>To avoid having the application connect to signals on the returned
<a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> and <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> objects, the
<a class="link" href="GDBusObject.html#GDBusObject-interface-added" title="The “interface-added” signal"><span class="type">“interface-added”</span></a>,
<a class="link" href="GDBusObject.html#GDBusObject-interface-removed" title="The “interface-removed” signal"><span class="type">“interface-removed”</span></a>,
<a class="link" href="GDBusProxy.html#GDBusProxy-g-properties-changed" title="The “g-properties-changed” signal"><span class="type">“g-properties-changed”</span></a> and
<a class="link" href="GDBusProxy.html#GDBusProxy-g-signal" title="The “g-signal” signal"><span class="type">“g-signal”</span></a> signals
are also emitted on the <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> instance managing these
objects. The signals emitted are
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-interface-added" title="The “interface-added” signal"><span class="type">“interface-added”</span></a>,
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-interface-removed" title="The “interface-removed” signal"><span class="type">“interface-removed”</span></a>,
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-properties-changed" title="The “interface-proxy-properties-changed” signal"><span class="type">“interface-proxy-properties-changed”</span></a> and
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-signal" title="The “interface-proxy-signal” signal"><span class="type">“interface-proxy-signal”</span></a>.</p>
<p>Note that all callbacks and signals are emitted in the
<a href="../glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main context</a>
that the <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object was constructed
in. Additionally, the <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> and <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> objects
originating from the <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object will be created in
the same context and, consequently, will deliver signals in the
same main loop.</p>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="GDBusProxyTypeFunc"></a><h3>GDBusProxyTypeFunc ()</h3>
<pre class="programlisting"><a href="../gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>
<span class="c_punctuation">(</span>*GDBusProxyTypeFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *interface_name</code></em>,
<em class="parameter"><code><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>Function signature for a function used to determine the <a href="../gobject-Type-Information.html#GType"><span class="type">GType</span></a> to
use for an interface proxy (if <em class="parameter"><code>interface_name</code></em>
is not <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>) or
object proxy (if <em class="parameter"><code>interface_name</code></em>
is <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>).</p>
<p>This function is called in the
<a href="../glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
that <em class="parameter"><code>manager</code></em>
was constructed in.</p>
<div class="refsect3">
<a name="GDBusProxyTypeFunc.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>manager</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>object_path</p></td>
<td class="parameter_description"><p>The object path of the remote object.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interface_name</p></td>
<td class="parameter_description"><p> The interface name of the remote object or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if a <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> <a href="../gobject-Type-Information.html#GType"><span class="type">GType</span></a> is requested. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>User data.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="GDBusProxyTypeFunc.returns"></a><h4>Returns</h4>
<p> A <a href="../gobject-Type-Information.html#GType"><span class="type">GType</span></a> to use for the remote object. The returned type
must be a <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> or <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> -derived
type.</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-manager-client-new"></a><h3>g_dbus_object_manager_client_new ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
g_dbus_object_manager_client_new (<em class="parameter"><code><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *connection</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
<em class="parameter"><code><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
<em class="parameter"><code><a href="../glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
<em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
<em class="parameter"><code><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>Asynchronously creates a new <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object.</p>
<p>This is an asynchronous failable constructor. When the result is
ready, <em class="parameter"><code>callback</code></em>
will be invoked in the
<a href="../glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main context</a>
of the thread you are calling this method from. You can
then call <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-finish" title="g_dbus_object_manager_client_new_finish ()"><code class="function">g_dbus_object_manager_client_new_finish()</code></a> to get the result. See
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-sync" title="g_dbus_object_manager_client_new_sync ()"><code class="function">g_dbus_object_manager_client_new_sync()</code></a> for the synchronous version.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new.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>connection</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>The owner of the control object (unique or well-known name).</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>object_path</p></td>
<td class="parameter_description"><p>The object path of the control object.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_func</p></td>
<td class="parameter_description"><p> A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_user_data</p></td>
<td class="parameter_description"><p>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_destroy_notify</p></td>
<td class="parameter_description"><p> Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em>
or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p> A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>callback</p></td>
<td class="parameter_description"><p>A <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>The data to pass to <em class="parameter"><code>callback</code></em>
.</p></td>
<td class="parameter_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>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-finish"></a><h3>g_dbus_object_manager_client_new_finish ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
g_dbus_object_manager_client_new_finish
(<em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
<em class="parameter"><code><a href="../glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Finishes an operation started with <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a>.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-finish.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>res</p></td>
<td class="parameter_description"><p>A <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> obtained from the <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> passed to <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>Return location for error or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-finish.returns"></a><h4>Returns</h4>
<p> A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em>
is set. Free
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>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</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>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-sync"></a><h3>g_dbus_object_manager_client_new_sync ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
g_dbus_object_manager_client_new_sync (<em class="parameter"><code><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *connection</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
<em class="parameter"><code><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
<em class="parameter"><code><a href="../glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
<em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="../glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Creates a new <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object.</p>
<p>This is a synchronous failable constructor - the calling thread is
blocked until a reply is received. See <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a>
for the asynchronous version.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-sync.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>connection</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p> The owner of the control object (unique or well-known name), or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when not using a message bus connection. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>object_path</p></td>
<td class="parameter_description"><p>The object path of the control object.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_func</p></td>
<td class="parameter_description"><p> A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_user_data</p></td>
<td class="parameter_description"><p>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_destroy_notify</p></td>
<td class="parameter_description"><p> Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em>
or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p> A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>Return location for error or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-sync.returns"></a><h4>Returns</h4>
<p> A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em>
is set. Free
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>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</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>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-for-bus"></a><h3>g_dbus_object_manager_client_new_for_bus ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
g_dbus_object_manager_client_new_for_bus
(<em class="parameter"><code><a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> bus_type</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
<em class="parameter"><code><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
<em class="parameter"><code><a href="../glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
<em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
<em class="parameter"><code><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>Like <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a> but takes a <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> instead of a
<a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.</p>
<p>This is an asynchronous failable constructor. When the result is
ready, <em class="parameter"><code>callback</code></em>
will be invoked in the
<a href="../glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
of the thread you are calling this method from. You can
then call <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-finish" title="g_dbus_object_manager_client_new_for_bus_finish ()"><code class="function">g_dbus_object_manager_client_new_for_bus_finish()</code></a> to get the result. See
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-sync" title="g_dbus_object_manager_client_new_for_bus_sync ()"><code class="function">g_dbus_object_manager_client_new_for_bus_sync()</code></a> for the synchronous version.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-for-bus.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>bus_type</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>The owner of the control object (unique or well-known name).</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>object_path</p></td>
<td class="parameter_description"><p>The object path of the control object.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_func</p></td>
<td class="parameter_description"><p> A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_user_data</p></td>
<td class="parameter_description"><p>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_destroy_notify</p></td>
<td class="parameter_description"><p> Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em>
or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p> A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>callback</p></td>
<td class="parameter_description"><p>A <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>The data to pass to <em class="parameter"><code>callback</code></em>
.</p></td>
<td class="parameter_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>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-for-bus-finish"></a><h3>g_dbus_object_manager_client_new_for_bus_finish ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
g_dbus_object_manager_client_new_for_bus_finish
(<em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
<em class="parameter"><code><a href="../glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Finishes an operation started with <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()"><code class="function">g_dbus_object_manager_client_new_for_bus()</code></a>.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-for-bus-finish.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>res</p></td>
<td class="parameter_description"><p>A <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> obtained from the <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> passed to <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()"><code class="function">g_dbus_object_manager_client_new_for_bus()</code></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>Return location for error or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-for-bus-finish.returns"></a><h4>Returns</h4>
<p> A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em>
is set. Free
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>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</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>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-for-bus-sync"></a><h3>g_dbus_object_manager_client_new_for_bus_sync ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> *
g_dbus_object_manager_client_new_for_bus_sync
(<em class="parameter"><code><a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> bus_type</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
<em class="parameter"><code>const <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
<em class="parameter"><code><a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
<em class="parameter"><code><a href="../glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
<em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="../glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Like <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-sync" title="g_dbus_object_manager_client_new_sync ()"><code class="function">g_dbus_object_manager_client_new_sync()</code></a> but takes a <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> instead
of a <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.</p>
<p>This is a synchronous failable constructor - the calling thread is
blocked until a reply is received. See <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()"><code class="function">g_dbus_object_manager_client_new_for_bus()</code></a>
for the asynchronous version.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-for-bus-sync.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>bus_type</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>The owner of the control object (unique or well-known name).</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>object_path</p></td>
<td class="parameter_description"><p>The object path of the control object.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_func</p></td>
<td class="parameter_description"><p> A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_user_data</p></td>
<td class="parameter_description"><p>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>get_proxy_type_destroy_notify</p></td>
<td class="parameter_description"><p> Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em>
or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p> A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>Return location for error or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-new-for-bus-sync.returns"></a><h4>Returns</h4>
<p> A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em>
is set. Free
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>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</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>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-get-connection"></a><h3>g_dbus_object_manager_client_get_connection ()</h3>
<pre class="programlisting"><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="returnvalue">GDBusConnection</span></a> *
g_dbus_object_manager_client_get_connection
(<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>Gets the <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> used by <em class="parameter"><code>manager</code></em>
.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-connection.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>manager</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-connection.returns"></a><h4>Returns</h4>
<p> A <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> object. Do not free,
the object belongs to <em class="parameter"><code>manager</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</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>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-get-flags"></a><h3>g_dbus_object_manager_client_get_flags ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="returnvalue">GDBusObjectManagerClientFlags</span></a>
g_dbus_object_manager_client_get_flags
(<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>Gets the flags that <em class="parameter"><code>manager</code></em>
was constructed with.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-flags.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>manager</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-flags.returns"></a><h4>Returns</h4>
<p> Zero of more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a>
enumeration.</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-manager-client-get-name"></a><h3>g_dbus_object_manager_client_get_name ()</h3>
<pre class="programlisting">const <a href="../glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
g_dbus_object_manager_client_get_name (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>Gets the name that <em class="parameter"><code>manager</code></em>
is for, or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not a message bus
connection.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-name.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>manager</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-name.returns"></a><h4>Returns</h4>
<p> A unique or well-known name. Do not free, the string
belongs to <em class="parameter"><code>manager</code></em>
.</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-manager-client-get-name-owner"></a><h3>g_dbus_object_manager_client_get_name_owner ()</h3>
<pre class="programlisting"><a href="../glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
g_dbus_object_manager_client_get_name_owner
(<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>The unique name that owns the name that <em class="parameter"><code>manager</code></em>
is for or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
no-one currently owns that name. You can connect to the
<a href="../gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">“notify”</span></a> signal to track changes to the
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title="The “name-owner” property"><span class="type">“name-owner”</span></a> property.</p>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-name-owner.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>manager</p></td>
<td class="parameter_description"><p>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="g-dbus-object-manager-client-get-name-owner.returns"></a><h4>Returns</h4>
<p> The name owner or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no name owner
exists. Free with <a href="../glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>. </p>
<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</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="GDBusObjectManagerClient.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GDBusObjectManagerClient-struct"></a><h3>GDBusObjectManagerClient</h3>
<pre class="programlisting">typedef struct _GDBusObjectManagerClient GDBusObjectManagerClient;</pre>
<p>The <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> structure contains private data and should
only be accessed using the provided API.</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="GDBusObjectManagerClientClass"></a><h3>struct GDBusObjectManagerClientClass</h3>
<pre class="programlisting">struct GDBusObjectManagerClientClass {
GObjectClass parent_class;
/* signals */
void (*interface_proxy_signal) (GDBusObjectManagerClient *manager,
GDBusObjectProxy *object_proxy,
GDBusProxy *interface_proxy,
const gchar *sender_name,
const gchar *signal_name,
GVariant *parameters);
void (*interface_proxy_properties_changed) (GDBusObjectManagerClient *manager,
GDBusObjectProxy *object_proxy,
GDBusProxy *interface_proxy,
GVariant *changed_properties,
const gchar* const *invalidated_properties);
};
</pre>
<p>Class structure for <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.</p>
<div class="refsect3">
<a name="GDBusObjectManagerClientClass.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><em class="structfield"><code><a name="GDBusObjectManagerClientClass.interface-proxy-signal"></a>interface_proxy_signal</code></em> ()</p></td>
<td class="struct_member_description"><p>Signal class handler for the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-signal" title="The “interface-proxy-signal” signal"><span class="type">“interface-proxy-signal”</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="GDBusObjectManagerClientClass.interface-proxy-properties-changed"></a>interface_proxy_properties_changed</code></em> ()</p></td>
<td class="struct_member_description"><p>Signal class handler for the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-properties-changed" title="The “interface-proxy-properties-changed” signal"><span class="type">“interface-proxy-properties-changed”</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>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClientFlags"></a><h3>enum GDBusObjectManagerClientFlags</h3>
<p>Flags used when constructing a <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.</p>
<div class="refsect3">
<a name="GDBusObjectManagerClientFlags.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
<col class="enum_members_description">
<col width="200px" class="enum_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="G-DBUS-OBJECT-MANAGER-CLIENT-FLAGS-NONE:CAPS"></a>G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE</p></td>
<td class="enum_member_description">
<p>No flags set.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="G-DBUS-OBJECT-MANAGER-CLIENT-FLAGS-DO-NOT-AUTO-START:CAPS"></a>G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START</p></td>
<td class="enum_member_description">
<p>If not set and the
manager is for a well-known name, then request the bus to launch
an owner for the name if no-one owns the name. This flag can only
be used in managers for well-known names.</p>
</td>
<td class="enum_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="GDBusObjectManagerClient.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GDBusObjectManagerClient--bus-type"></a><h3>The <code class="literal">“bus-type”</code> property</h3>
<pre class="programlisting"> “bus-type” <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a></pre>
<p>If this property is not <a class="link" href="GDBusConnection.html#G-BUS-TYPE-NONE:CAPS"><code class="literal">G_BUS_TYPE_NONE</code></a>, then
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--connection" title="The “connection” property"><span class="type">“connection”</span></a> must be <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and will be set to the
<a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> obtained by calling <a class="link" href="GDBusConnection.html#g-bus-get" title="g_bus_get ()"><code class="function">g_bus_get()</code></a> with the value
of this property.</p>
<p>Flags: Write / Construct Only</p>
<p>Default value: G_BUS_TYPE_NONE</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="GDBusObjectManagerClient--connection"></a><h3>The <code class="literal">“connection”</code> property</h3>
<pre class="programlisting"> “connection” <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *</pre>
<p>The <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> to use.</p>
<p>Flags: Read / Write / Construct Only</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="GDBusObjectManagerClient--flags"></a><h3>The <code class="literal">“flags”</code> property</h3>
<pre class="programlisting"> “flags” <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a></pre>
<p>Flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</p>
<p>Flags: Read / Write / Construct Only</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="GDBusObjectManagerClient--get-proxy-type-destroy-notify"></a><h3>The <code class="literal">“get-proxy-type-destroy-notify”</code> property</h3>
<pre class="programlisting"> “get-proxy-type-destroy-notify” <a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a></pre>
<p>A <a href="../glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> for the <a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data in <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-user-data" title="The “get-proxy-type-user-data” property"><span class="type">“get-proxy-type-user-data”</span></a>.</p>
<p>Flags: Read / Write / Construct Only</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="GDBusObjectManagerClient--get-proxy-type-func"></a><h3>The <code class="literal">“get-proxy-type-func”</code> property</h3>
<pre class="programlisting"> “get-proxy-type-func” <a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a></pre>
<p>The <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> to use when determining what <a href="../gobject-Type-Information.html#GType"><span class="type">GType</span></a> to
use for interface proxies or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
<p>Flags: Read / Write / Construct Only</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="GDBusObjectManagerClient--get-proxy-type-user-data"></a><h3>The <code class="literal">“get-proxy-type-user-data”</code> property</h3>
<pre class="programlisting"> “get-proxy-type-user-data” <a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a></pre>
<p>The <a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data to pass to <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-func" title="The “get-proxy-type-func” property"><span class="type">“get-proxy-type-func”</span></a>.</p>
<p>Flags: Read / Write / Construct Only</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="GDBusObjectManagerClient--name"></a><h3>The <code class="literal">“name”</code> property</h3>
<pre class="programlisting"> “name” <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>The well-known name or unique name that the manager is for.</p>
<p>Flags: Read / Write / Construct Only</p>
<p>Default value: NULL</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="GDBusObjectManagerClient--name-owner"></a><h3>The <code class="literal">“name-owner”</code> property</h3>
<pre class="programlisting"> “name-owner” <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>The unique name that owns <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name" title="The “name” property"><span class="type">“name”</span></a> or <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
no-one is currently owning the name. Connect to the
<a href="../gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">“notify”</span></a> signal to track changes to this property.</p>
<p>Flags: Read</p>
<p>Default value: NULL</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="GDBusObjectManagerClient--object-path"></a><h3>The <code class="literal">“object-path”</code> property</h3>
<pre class="programlisting"> “object-path” <a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>The object path the manager is for.</p>
<p>Flags: Read / Write / Construct Only</p>
<p>Default value: NULL</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 class="refsect1">
<a name="GDBusObjectManagerClient.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GDBusObjectManagerClient-interface-proxy-properties-changed"></a><h3>The <code class="literal">“interface-proxy-properties-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager,
<a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> *object_proxy,
<a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> *interface_proxy,
<a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *changed_properties,
<a href="../glib-String-Utility-Functions.html#GStrv"><span class="type">GStrv</span></a> invalidated_properties,
<a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
<p>Emitted when one or more D-Bus properties on proxy changes. The
local cache has already been updated when this signal fires. Note
that both <em class="parameter"><code>changed_properties</code></em>
and <em class="parameter"><code>invalidated_properties</code></em>
are
guaranteed to never be <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (either may be empty though).</p>
<p>This signal exists purely as a convenience to avoid having to
connect signals to all interface proxies managed by <em class="parameter"><code>manager</code></em>
.</p>
<p>This signal is emitted in the
<a href="../glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main context</a>
that <em class="parameter"><code>manager</code></em>
was constructed in.</p>
<div class="refsect3">
<a name="GDBusObjectManagerClient-interface-proxy-properties-changed.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>manager</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> emitting the signal.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>object_proxy</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> on which an interface has properties that are changing.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interface_proxy</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> that has properties that are changing.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>changed_properties</p></td>
<td class="parameter_description"><p>A <a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> containing the properties that changed.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>invalidated_properties</p></td>
<td class="parameter_description"><p>A <a href="../glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of properties that was invalidated.</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="GDBusObjectManagerClient-interface-proxy-signal"></a><h3>The <code class="literal">“interface-proxy-signal”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager,
<a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> *object_proxy,
<a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> *interface_proxy,
<a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *sender_name,
<a href="../glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *signal_name,
<a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *parameters,
<a href="../glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
<p>Emitted when a D-Bus signal is received on <em class="parameter"><code>interface_proxy</code></em>
.</p>
<p>This signal exists purely as a convenience to avoid having to
connect signals to all interface proxies managed by <em class="parameter"><code>manager</code></em>
.</p>
<p>This signal is emitted in the
<a href="../glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main context</a>
that <em class="parameter"><code>manager</code></em>
was constructed in.</p>
<div class="refsect3">
<a name="GDBusObjectManagerClient-interface-proxy-signal.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>manager</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> emitting the signal.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>object_proxy</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> on which an interface is emitting a D-Bus signal.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interface_proxy</p></td>
<td class="parameter_description"><p>The <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> that is emitting a D-Bus signal.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>sender_name</p></td>
<td class="parameter_description"><p>The sender of the signal or NULL if the connection is not a bus connection.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>signal_name</p></td>
<td class="parameter_description"><p>The signal name.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>parameters</p></td>
<td class="parameter_description"><p>A <a href="../glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple with parameters for the signal.</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>