1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
<title>udev_queue</title>
6
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
<link rel="home" href="index.html" title="libudev Reference Manual">
8
<link rel="up" href="ch01.html" title="libudev">
9
<link rel="prev" href="libudev-udev-enumerate.html" title="udev_enumerate">
10
<link rel="next" href="api-index-full.html" title="API Index">
11
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
12
<link rel="stylesheet" href="style.css" type="text/css">
13
<link rel="chapter" href="ch01.html" title="libudev">
14
<link rel="index" href="api-index-full.html" title="API Index">
16
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
17
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
19
<td><a accesskey="p" href="libudev-udev-enumerate.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
20
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
21
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
22
<th width="100%" align="center">libudev Reference Manual</th>
23
<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
25
<tr><td colspan="5" class="shortcuts">
26
<a href="#libudev-udev-queue.synopsis" class="shortcut">Top</a>
28
<a href="#libudev-udev-queue.description" class="shortcut">Description</a>
31
<div class="refentry" title="udev_queue">
32
<a name="libudev-udev-queue"></a><div class="titlepage"></div>
33
<div class="refnamediv"><table width="100%"><tr>
35
<h2><span class="refentrytitle"><a name="libudev-udev-queue.top_of_page"></a>udev_queue</span></h2>
36
<p>udev_queue — access to currently active events</p>
38
<td valign="top" align="right"></td>
40
<div class="refsynopsisdiv" title="Synopsis">
41
<a name="libudev-udev-queue.synopsis"></a><h2>Synopsis</h2>
42
<pre class="synopsis">
43
struct <a class="link" href="libudev-udev-queue.html#udev-queue" title="struct udev_queue">udev_queue</a>;
44
struct <a class="link" href="libudev-udev-queue.html#udev-queue" title="struct udev_queue">udev_queue</a> * <a class="link" href="libudev-udev-queue.html#udev-queue-ref" title="udev_queue_ref ()">udev_queue_ref</a> (struct udev_queue *udev_queue);
45
void <a class="link" href="libudev-udev-queue.html#udev-queue-unref" title="udev_queue_unref ()">udev_queue_unref</a> (struct udev_queue *udev_queue);
46
struct <a class="link" href="libudev-udev.html#udev" title="struct udev">udev</a> * <a class="link" href="libudev-udev-queue.html#udev-queue-get-udev" title="udev_queue_get_udev ()">udev_queue_get_udev</a> (struct udev_queue *udev_queue);
47
struct <a class="link" href="libudev-udev-queue.html#udev-queue" title="struct udev_queue">udev_queue</a> * <a class="link" href="libudev-udev-queue.html#udev-queue-new" title="udev_queue_new ()">udev_queue_new</a> (struct udev *udev);
48
int <a class="link" href="libudev-udev-queue.html#udev-queue-get-udev-is-active" title="udev_queue_get_udev_is_active ()">udev_queue_get_udev_is_active</a> (struct udev_queue *udev_queue);
49
int <a class="link" href="libudev-udev-queue.html#udev-queue-get-queue-is-empty" title="udev_queue_get_queue_is_empty ()">udev_queue_get_queue_is_empty</a> (struct udev_queue *udev_queue);
50
int <a class="link" href="libudev-udev-queue.html#udev-queue-get-seqnum-is-finished" title="udev_queue_get_seqnum_is_finished ()">udev_queue_get_seqnum_is_finished</a> (struct udev_queue *udev_queue,
52
int <a class="link" href="libudev-udev-queue.html#udev-queue-get-seqnum-sequence-is-finished" title="udev_queue_get_seqnum_sequence_is_finished ()">udev_queue_get_seqnum_sequence_is_finished</a>
53
(struct udev_queue *udev_queue,
56
struct <a class="link" href="libudev-udev-list.html#udev-list-entry" title="struct udev_list_entry">udev_list_entry</a> * <a class="link" href="libudev-udev-queue.html#udev-queue-get-queued-list-entry" title="udev_queue_get_queued_list_entry ()">udev_queue_get_queued_list_entry</a>
57
(struct udev_queue *udev_queue);
58
struct <a class="link" href="libudev-udev-list.html#udev-list-entry" title="struct udev_list_entry">udev_list_entry</a> * <a class="link" href="libudev-udev-queue.html#udev-queue-get-failed-list-entry" title="udev_queue_get_failed_list_entry ()">udev_queue_get_failed_list_entry</a>
59
(struct udev_queue *udev_queue);
62
<div class="refsect1" title="Description">
63
<a name="libudev-udev-queue.description"></a><h2>Description</h2>
65
The udev daemon processes event asynchronously. All events which do not have
66
interdependencies are run in parallel. This exports the current state of the
67
event processing queue, and the currently event sequence numbers from the kernel
68
and the udev daemon.</p>
72
<div class="refsect1" title="Details">
73
<a name="libudev-udev-queue.details"></a><h2>Details</h2>
74
<div class="refsect2" title="struct udev_queue">
75
<a name="udev-queue"></a><h3>struct udev_queue</h3>
76
<pre class="programlisting">struct udev_queue;</pre>
78
Opaque object representing the current event queue in the udev daemon.</p>
83
<div class="refsect2" title="udev_queue_ref ()">
84
<a name="udev-queue-ref"></a><h3>udev_queue_ref ()</h3>
85
<pre class="programlisting">struct <a class="link" href="libudev-udev-queue.html#udev-queue" title="struct udev_queue">udev_queue</a> * udev_queue_ref (struct udev_queue *udev_queue);</pre>
87
Take a reference of a udev queue context.</p>
90
<div class="variablelist"><table border="0">
91
<col align="left" valign="top">
94
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
95
<td> udev queue context
99
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
100
<td> the same udev queue context.
107
<div class="refsect2" title="udev_queue_unref ()">
108
<a name="udev-queue-unref"></a><h3>udev_queue_unref ()</h3>
109
<pre class="programlisting">void udev_queue_unref (struct udev_queue *udev_queue);</pre>
111
Drop a reference of a udev queue context. If the refcount reaches zero,
112
the resources of the queue context will be released.</p>
115
<div class="variablelist"><table border="0">
116
<col align="left" valign="top">
118
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
119
<td> udev queue context
125
<div class="refsect2" title="udev_queue_get_udev ()">
126
<a name="udev-queue-get-udev"></a><h3>udev_queue_get_udev ()</h3>
127
<pre class="programlisting">struct <a class="link" href="libudev-udev.html#udev" title="struct udev">udev</a> * udev_queue_get_udev (struct udev_queue *udev_queue);</pre>
129
Retrieve the udev library context the queue context was created with.</p>
132
<div class="variablelist"><table border="0">
133
<col align="left" valign="top">
136
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
137
<td> udev queue context
141
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
142
<td> the udev library context.
149
<div class="refsect2" title="udev_queue_new ()">
150
<a name="udev-queue-new"></a><h3>udev_queue_new ()</h3>
151
<pre class="programlisting">struct <a class="link" href="libudev-udev-queue.html#udev-queue" title="struct udev_queue">udev_queue</a> * udev_queue_new (struct udev *udev);</pre>
153
The initial refcount is 1, and needs to be decremented to
154
release the resources of the udev queue context.</p>
157
<div class="variablelist"><table border="0">
158
<col align="left" valign="top">
161
<td><p><span class="term"><em class="parameter"><code>udev</code></em> :</span></p></td>
162
<td> udev library context
166
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
167
<td> the udev queue context, or <a
168
href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL--CAPS"
169
><span class="type">NULL</span></a> on error.
176
<div class="refsect2" title="udev_queue_get_udev_is_active ()">
177
<a name="udev-queue-get-udev-is-active"></a><h3>udev_queue_get_udev_is_active ()</h3>
178
<pre class="programlisting">int udev_queue_get_udev_is_active (struct udev_queue *udev_queue);</pre>
183
<div class="variablelist"><table border="0">
184
<col align="left" valign="top">
187
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
188
<td> udev queue context
192
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
193
<td> a flag indicating if udev is active.
200
<div class="refsect2" title="udev_queue_get_queue_is_empty ()">
201
<a name="udev-queue-get-queue-is-empty"></a><h3>udev_queue_get_queue_is_empty ()</h3>
202
<pre class="programlisting">int udev_queue_get_queue_is_empty (struct udev_queue *udev_queue);</pre>
207
<div class="variablelist"><table border="0">
208
<col align="left" valign="top">
211
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
212
<td> udev queue context
216
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
217
<td> a flag indicating if udev is currently handling events.
224
<div class="refsect2" title="udev_queue_get_seqnum_is_finished ()">
225
<a name="udev-queue-get-seqnum-is-finished"></a><h3>udev_queue_get_seqnum_is_finished ()</h3>
226
<pre class="programlisting">int udev_queue_get_seqnum_is_finished (struct udev_queue *udev_queue,
227
long int seqnum);</pre>
232
<div class="variablelist"><table border="0">
233
<col align="left" valign="top">
236
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
237
<td> udev queue context
241
<td><p><span class="term"><em class="parameter"><code>seqnum</code></em> :</span></p></td>
246
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
247
<td> a flag indicating if the given sequence number is handled.
254
<div class="refsect2" title="udev_queue_get_seqnum_sequence_is_finished ()">
255
<a name="udev-queue-get-seqnum-sequence-is-finished"></a><h3>udev_queue_get_seqnum_sequence_is_finished ()</h3>
256
<pre class="programlisting">int udev_queue_get_seqnum_sequence_is_finished
257
(struct udev_queue *udev_queue,
264
<div class="variablelist"><table border="0">
265
<col align="left" valign="top">
268
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
269
<td> udev queue context
273
<td><p><span class="term"><em class="parameter"><code>start</code></em> :</span></p></td>
274
<td> first event sequence number
278
<td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
279
<td> last event sequence number
283
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
284
<td> if any of the sequence numbers in the given range is currently active.
291
<div class="refsect2" title="udev_queue_get_queued_list_entry ()">
292
<a name="udev-queue-get-queued-list-entry"></a><h3>udev_queue_get_queued_list_entry ()</h3>
293
<pre class="programlisting">struct <a class="link" href="libudev-udev-list.html#udev-list-entry" title="struct udev_list_entry">udev_list_entry</a> * udev_queue_get_queued_list_entry
294
(struct udev_queue *udev_queue);</pre>
299
<div class="variablelist"><table border="0">
300
<col align="left" valign="top">
303
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
304
<td> udev queue context
308
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
309
<td> the first entry of the list of queued events.
316
<div class="refsect2" title="udev_queue_get_failed_list_entry ()">
317
<a name="udev-queue-get-failed-list-entry"></a><h3>udev_queue_get_failed_list_entry ()</h3>
318
<pre class="programlisting">struct <a class="link" href="libudev-udev-list.html#udev-list-entry" title="struct udev_list_entry">udev_list_entry</a> * udev_queue_get_failed_list_entry
319
(struct udev_queue *udev_queue);</pre>
324
<div class="variablelist"><table border="0">
325
<col align="left" valign="top">
328
<td><p><span class="term"><em class="parameter"><code>udev_queue</code></em> :</span></p></td>
329
<td> udev queue context
333
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
334
<td> the first entry of the list of recorded failed events.
344
Generated by GTK-Doc V1.11</div>