mirror of
https://git.proxmox.com/git/systemd
synced 2025-06-01 00:18:11 +00:00
570 lines
29 KiB
HTML
570 lines
29 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||
<html>
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||
<title>GUdev Reference Manual: GUdevClient</title>
|
||
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
|
||
<link rel="home" href="index.html" title="GUdev Reference Manual">
|
||
<link rel="up" href="ref-API.html" title="API Reference">
|
||
<link rel="prev" href="ref-API.html" title="API Reference">
|
||
<link rel="next" href="GUdevDevice.html" title="GUdevDevice">
|
||
<meta name="generator" content="GTK-Doc V1.21 (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="#GUdevClient.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
|
||
<a href="#GUdevClient.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span>
|
||
<a href="#GUdevClient.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span>
|
||
<a href="#GUdevClient.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="ref-API.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
|
||
<td><a accesskey="p" href="ref-API.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
|
||
<td><a accesskey="n" href="GUdevDevice.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
|
||
</tr></table>
|
||
<div class="refentry">
|
||
<a name="GUdevClient"></a><div class="titlepage"></div>
|
||
<div class="refnamediv"><table width="100%"><tr>
|
||
<td valign="top">
|
||
<h2><span class="refentrytitle"><a name="GUdevClient.top_of_page"></a>GUdevClient</span></h2>
|
||
<p>GUdevClient — Query devices and listen to uevents</p>
|
||
</td>
|
||
<td class="gallery_image" valign="top" align="right"></td>
|
||
</tr></table></div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.functions"></a><h2>Functions</h2>
|
||
<div class="informaltable"><table width="100%" border="0">
|
||
<colgroup>
|
||
<col width="150px" class="functions_return">
|
||
<col class="functions_name">
|
||
</colgroup>
|
||
<tbody>
|
||
<tr>
|
||
<td class="function_type">
|
||
<a class="link" href="GUdevClient.html" title="GUdevClient"><span class="returnvalue">GUdevClient</span></a> *
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GUdevClient.html#g-udev-client-new" title="g_udev_client_new ()">g_udev_client_new</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="function_type">
|
||
<span class="returnvalue">GList</span> *
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-subsystem" title="g_udev_client_query_by_subsystem ()">g_udev_client_query_by_subsystem</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="function_type">
|
||
<a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-device-number" title="g_udev_client_query_by_device_number ()">g_udev_client_query_by_device_number</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="function_type">
|
||
<a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-device-file" title="g_udev_client_query_by_device_file ()">g_udev_client_query_by_device_file</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="function_type">
|
||
<a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-sysfs-path" title="g_udev_client_query_by_sysfs_path ()">g_udev_client_query_by_sysfs_path</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="function_type">
|
||
<a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-subsystem-and-name" title="g_udev_client_query_by_subsystem_and_name ()">g_udev_client_query_by_subsystem_and_name</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.properties"></a><h2>Properties</h2>
|
||
<div class="informaltable"><table 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"><span class="type">GStrv</span></td>
|
||
<td class="property_name"><a class="link" href="GUdevClient.html#GUdevClient--subsystems" title="The “subsystems” property">subsystems</a></td>
|
||
<td class="property_flags">Read / Write / Construct Only</td>
|
||
</tr></tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.signals"></a><h2>Signals</h2>
|
||
<div class="informaltable"><table 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="GUdevClient.html#GUdevClient-uevent" title="The “uevent” signal">uevent</a></td>
|
||
<td class="signal_flags">Run Last</td>
|
||
</tr></tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.other"></a><h2>Types and Values</h2>
|
||
<div class="informaltable"><table 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="GUdevClient.html#GUdevClient-struct" title="GUdevClient">GUdevClient</a></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="datatype_keyword">struct</td>
|
||
<td class="function_name"><a class="link" href="GUdevClient.html#GUdevClientClass" title="struct GUdevClientClass">GUdevClientClass</a></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="datatype_keyword">enum</td>
|
||
<td class="function_name"><a class="link" href="GUdevClient.html#GUdevDeviceType" title="enum GUdevDeviceType">GUdevDeviceType</a></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="typedef_keyword">typedef</td>
|
||
<td class="function_name"><a class="link" href="GUdevClient.html#GUdevDeviceNumber" title="GUdevDeviceNumber">GUdevDeviceNumber</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.object-hierarchy"></a><h2>Object Hierarchy</h2>
|
||
<pre class="screen"> GEnum
|
||
<span class="lineart">╰──</span> GUdevDeviceType
|
||
GObject
|
||
<span class="lineart">╰──</span> GUdevClient
|
||
</pre>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.description"></a><h2>Description</h2>
|
||
<p><a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> is used to query information about devices on a Linux
|
||
system from the Linux kernel and the udev device
|
||
manager.</p>
|
||
<p>Device information is retrieved from the kernel (through the
|
||
<code class="literal">sysfs</code> filesystem) and the udev daemon (through a
|
||
<code class="literal">tmpfs</code> filesystem) and presented through
|
||
<a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> objects. This means that no blocking IO ever happens
|
||
(in both cases, we are essentially just reading data from kernel
|
||
memory) and as such there are no asynchronous versions of the
|
||
provided methods.</p>
|
||
<p>To get <a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> objects, use
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-subsystem" title="g_udev_client_query_by_subsystem ()"><code class="function">g_udev_client_query_by_subsystem()</code></a>,
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-device-number" title="g_udev_client_query_by_device_number ()"><code class="function">g_udev_client_query_by_device_number()</code></a>,
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-device-file" title="g_udev_client_query_by_device_file ()"><code class="function">g_udev_client_query_by_device_file()</code></a>,
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-sysfs-path" title="g_udev_client_query_by_sysfs_path ()"><code class="function">g_udev_client_query_by_sysfs_path()</code></a>,
|
||
<a class="link" href="GUdevClient.html#g-udev-client-query-by-subsystem-and-name" title="g_udev_client_query_by_subsystem_and_name ()"><code class="function">g_udev_client_query_by_subsystem_and_name()</code></a>
|
||
or the <a class="link" href="GUdevEnumerator.html" title="GUdevEnumerator"><span class="type">GUdevEnumerator</span></a> type.</p>
|
||
<p>To listen to uevents, connect to the <a class="link" href="GUdevClient.html#GUdevClient-uevent" title="The “uevent” signal"><span class="type">“uevent”</span></a> signal.</p>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.functions_details"></a><h2>Functions</h2>
|
||
<div class="refsect2">
|
||
<a name="g-udev-client-new"></a><h3>g_udev_client_new ()</h3>
|
||
<pre class="programlisting"><a class="link" href="GUdevClient.html" title="GUdevClient"><span class="returnvalue">GUdevClient</span></a> *
|
||
g_udev_client_new (<em class="parameter"><code>const <span class="type">gchar</span> * const *subsystems</code></em>);</pre>
|
||
<p>Constructs a <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> object that can be used to query
|
||
information about devices. Connect to the <a class="link" href="GUdevClient.html#GUdevClient-uevent" title="The “uevent” signal"><span class="type">“uevent”</span></a>
|
||
signal to listen for uevents. Note that signals are emitted in the</p>
|
||
thread-default main loop<p>of the thread that you call this constructor from.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.2.7"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table 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>subsystems</p></td>
|
||
<td class="parameter_description"><p> A <code class="literal">NULL</code> terminated string array of subsystems to listen for uevents on, <code class="literal">NULL</code> to not listen on uevents at all, or an empty array to listen to uevents on all subsystems. See the documentation for the <a class="link" href="GUdevClient.html#GUdevClient--subsystems" title="The “subsystems” property"><span class="type">“subsystems”</span></a> property for details on this parameter. </p></td>
|
||
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
|
||
</tr></tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.2.8"></a><h4>Returns</h4>
|
||
<p> A new <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> object. Free with <code class="function">g_object_unref()</code>.</p>
|
||
<p></p>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="g-udev-client-query-by-subsystem"></a><h3>g_udev_client_query_by_subsystem ()</h3>
|
||
<pre class="programlisting"><span class="returnvalue">GList</span> *
|
||
g_udev_client_query_by_subsystem (<em class="parameter"><code><a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> *client</code></em>,
|
||
<em class="parameter"><code>const <span class="type">gchar</span> *subsystem</code></em>);</pre>
|
||
<p>Gets all devices belonging to <em class="parameter"><code>subsystem</code></em>
|
||
.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.3.5"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table 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>client</p></td>
|
||
<td class="parameter_description"><p>A <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a>.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>subsystem</p></td>
|
||
<td class="parameter_description"><p> The subsystem to get devices for or <code class="literal">NULL</code> to get all devices. </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>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.3.6"></a><h4>Returns</h4>
|
||
<p> A
|
||
list of <a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> objects. The caller should free the result by
|
||
using <code class="function">g_object_unref()</code> on each element in the list and then
|
||
<code class="function">g_list_free()</code> on the list. </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>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GUdevDevice][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="g-udev-client-query-by-device-number"></a><h3>g_udev_client_query_by_device_number ()</h3>
|
||
<pre class="programlisting"><a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
g_udev_client_query_by_device_number (<em class="parameter"><code><a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> *client</code></em>,
|
||
<em class="parameter"><code><a class="link" href="GUdevClient.html#GUdevDeviceType" title="enum GUdevDeviceType"><span class="type">GUdevDeviceType</span></a> type</code></em>,
|
||
<em class="parameter"><code><a class="link" href="GUdevClient.html#GUdevDeviceNumber" title="GUdevDeviceNumber"><span class="type">GUdevDeviceNumber</span></a> number</code></em>);</pre>
|
||
<p>Looks up a device for a type and device number.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.4.5"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table 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>client</p></td>
|
||
<td class="parameter_description"><p>A <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a>.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>type</p></td>
|
||
<td class="parameter_description"><p>A value from the <a class="link" href="GUdevClient.html#GUdevDeviceType" title="enum GUdevDeviceType"><span class="type">GUdevDeviceType</span></a> enumeration.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>number</p></td>
|
||
<td class="parameter_description"><p>A device number.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.4.6"></a><h4>Returns</h4>
|
||
<p> A <a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> object or <code class="literal">NULL</code>
|
||
if the device was not found. Free with <code class="function">g_object_unref()</code>. </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>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="g-udev-client-query-by-device-file"></a><h3>g_udev_client_query_by_device_file ()</h3>
|
||
<pre class="programlisting"><a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
g_udev_client_query_by_device_file (<em class="parameter"><code><a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> *client</code></em>,
|
||
<em class="parameter"><code>const <span class="type">gchar</span> *device_file</code></em>);</pre>
|
||
<p>Looks up a device for a device file.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.5.5"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table 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>client</p></td>
|
||
<td class="parameter_description"><p>A <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a>.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>device_file</p></td>
|
||
<td class="parameter_description"><p>A device file.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.5.6"></a><h4>Returns</h4>
|
||
<p> A <a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> object or <code class="literal">NULL</code>
|
||
if the device was not found. Free with <code class="function">g_object_unref()</code>. </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>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="g-udev-client-query-by-sysfs-path"></a><h3>g_udev_client_query_by_sysfs_path ()</h3>
|
||
<pre class="programlisting"><a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
g_udev_client_query_by_sysfs_path (<em class="parameter"><code><a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> *client</code></em>,
|
||
<em class="parameter"><code>const <span class="type">gchar</span> *sysfs_path</code></em>);</pre>
|
||
<p>Looks up a device for a sysfs path.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.6.5"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table 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>client</p></td>
|
||
<td class="parameter_description"><p>A <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a>.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>sysfs_path</p></td>
|
||
<td class="parameter_description"><p>A sysfs path.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.6.6"></a><h4>Returns</h4>
|
||
<p> A <a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> object or <code class="literal">NULL</code>
|
||
if the device was not found. Free with <code class="function">g_object_unref()</code>. </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>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="g-udev-client-query-by-subsystem-and-name"></a><h3>g_udev_client_query_by_subsystem_and_name ()</h3>
|
||
<pre class="programlisting"><a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="returnvalue">GUdevDevice</span></a> *
|
||
g_udev_client_query_by_subsystem_and_name
|
||
(<em class="parameter"><code><a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> *client</code></em>,
|
||
<em class="parameter"><code>const <span class="type">gchar</span> *subsystem</code></em>,
|
||
<em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
|
||
<p>Looks up a device for a subsystem and name.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.7.5"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table 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>client</p></td>
|
||
<td class="parameter_description"><p>A <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a>.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>subsystem</p></td>
|
||
<td class="parameter_description"><p>A subsystem name.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>name</p></td>
|
||
<td class="parameter_description"><p>The name of the device.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.9.7.6"></a><h4>Returns</h4>
|
||
<p> A <a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> object or <code class="literal">NULL</code>
|
||
if the device was not found. Free with <code class="function">g_object_unref()</code>. </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>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.other_details"></a><h2>Types and Values</h2>
|
||
<div class="refsect2">
|
||
<a name="GUdevClient-struct"></a><h3>GUdevClient</h3>
|
||
<pre class="programlisting">typedef struct _GUdevClient GUdevClient;</pre>
|
||
<p>The <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> struct is opaque and should not be accessed directly.</p>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="GUdevClientClass"></a><h3>struct GUdevClientClass</h3>
|
||
<pre class="programlisting">struct GUdevClientClass {
|
||
GObjectClass parent_class;
|
||
|
||
/* signals */
|
||
void (*uevent) (GUdevClient *client,
|
||
const gchar *action,
|
||
GUdevDevice *device);
|
||
};
|
||
</pre>
|
||
<p>Class structure for <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a>.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.10.3.5"></a><h4>Members</h4>
|
||
<div class="informaltable"><table 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><span class="type">GObjectClass</span> <em class="structfield"><code><a name="GUdevClientClass.parent-class"></a>parent_class</code></em>;</p></td>
|
||
<td class="struct_member_description"><p>Parent class.</p></td>
|
||
<td class="struct_member_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="struct_member_name"><p><em class="structfield"><code><a name="GUdevClientClass.uevent"></a>uevent</code></em> ()</p></td>
|
||
<td class="struct_member_description"><p>Signal class handler for the <a class="link" href="GUdevClient.html#GUdevClient-uevent" title="The “uevent” signal"><span class="type">“uevent”</span></a> signal.</p></td>
|
||
<td class="struct_member_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="GUdevDeviceType"></a><h3>enum GUdevDeviceType</h3>
|
||
<p>Enumeration used to specify a the type of a device.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.10.4.4"></a><h4>Members</h4>
|
||
<div class="informaltable"><table 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-UDEV-DEVICE-TYPE-NONE:CAPS"></a>G_UDEV_DEVICE_TYPE_NONE</p></td>
|
||
<td class="enum_member_description">
|
||
<p>Device does not have a device file.</p>
|
||
</td>
|
||
<td class="enum_member_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="enum_member_name"><p><a name="G-UDEV-DEVICE-TYPE-BLOCK:CAPS"></a>G_UDEV_DEVICE_TYPE_BLOCK</p></td>
|
||
<td class="enum_member_description">
|
||
<p>Device is a block device.</p>
|
||
</td>
|
||
<td class="enum_member_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="enum_member_name"><p><a name="G-UDEV-DEVICE-TYPE-CHAR:CAPS"></a>G_UDEV_DEVICE_TYPE_CHAR</p></td>
|
||
<td class="enum_member_description">
|
||
<p>Device is a character device.</p>
|
||
</td>
|
||
<td class="enum_member_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="GUdevDeviceNumber"></a><h3>GUdevDeviceNumber</h3>
|
||
<pre class="programlisting">typedef guint64 GUdevDeviceNumber; /* __UQUAD_TYPE */
|
||
</pre>
|
||
<p>Corresponds to the standard <span class="type">dev_t</span> type as defined by POSIX (Until
|
||
bug 584517 is resolved this work-around is needed).</p>
|
||
</div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.property-details"></a><h2>Property Details</h2>
|
||
<div class="refsect2">
|
||
<a name="GUdevClient--subsystems"></a><h3>The <code class="literal">“subsystems”</code> property</h3>
|
||
<pre class="programlisting"> “subsystems” <span class="type">GStrv</span></pre>
|
||
<p>The subsystems to listen for uevents on.</p>
|
||
<p>To listen for only a specific DEVTYPE for a given SUBSYSTEM, use
|
||
"subsystem/devtype". For example, to only listen for uevents
|
||
where SUBSYSTEM is usb and DEVTYPE is usb_interface, use
|
||
"usb/usb_interface".</p>
|
||
<p>If this property is <code class="literal">NULL</code>, then no events will be reported. If
|
||
it's the empty array, events from all subsystems will be
|
||
reported.</p>
|
||
<p>Flags: Read / Write / Construct Only</p>
|
||
</div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GUdevClient.signal-details"></a><h2>Signal Details</h2>
|
||
<div class="refsect2">
|
||
<a name="GUdevClient-uevent"></a><h3>The <code class="literal">“uevent”</code> signal</h3>
|
||
<pre class="programlisting"><span class="returnvalue">void</span>
|
||
user_function (<a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> *client,
|
||
<span class="type">gchar</span> *action,
|
||
<a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> *device,
|
||
<span class="type">gpointer</span> user_data)</pre>
|
||
<p>Emitted when <em class="parameter"><code>client</code></em>
|
||
receives an uevent.</p>
|
||
<p>This signal is emitted in the</p>
|
||
thread-default main loop<p>of the thread that <em class="parameter"><code>client</code></em>
|
||
was created in.</p>
|
||
<div class="refsect3">
|
||
<a name="id-1.2.2.12.2.8"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table 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>client</p></td>
|
||
<td class="parameter_description"><p>The <a class="link" href="GUdevClient.html" title="GUdevClient"><span class="type">GUdevClient</span></a> receiving the event.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>action</p></td>
|
||
<td class="parameter_description"><p>The action for the uevent e.g. "add", "remove", "change", "move", etc.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>device</p></td>
|
||
<td class="parameter_description"><p>Details about the <a class="link" href="GUdevDevice.html" title="GUdevDevice"><span class="type">GUdevDevice</span></a> the event is for.</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: Run Last</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="footer">
|
||
<hr>
|
||
Generated by GTK-Doc V1.21</div>
|
||
</body>
|
||
</html> |