2010-03-27 10:58:24 -03:00
<refentry id= "vidioc-dqevent" >
<refmeta >
<refentrytitle > ioctl VIDIOC_DQEVENT</refentrytitle>
&manvol;
</refmeta>
<refnamediv >
<refname > VIDIOC_DQEVENT</refname>
<refpurpose > Dequeue event</refpurpose>
</refnamediv>
<refsynopsisdiv >
<funcsynopsis >
<funcprototype >
<funcdef > int <function > ioctl</function> </funcdef>
<paramdef > int <parameter > fd</parameter> </paramdef>
<paramdef > int <parameter > request</parameter> </paramdef>
<paramdef > struct v4l2_event
*<parameter > argp</parameter> </paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsect1 >
<title > Arguments</title>
<variablelist >
<varlistentry >
<term > <parameter > fd</parameter> </term>
<listitem >
<para > &fd; </para>
</listitem>
</varlistentry>
<varlistentry >
<term > <parameter > request</parameter> </term>
<listitem >
<para > VIDIOC_DQEVENT</para>
</listitem>
</varlistentry>
<varlistentry >
<term > <parameter > argp</parameter> </term>
<listitem >
<para > </para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 >
<title > Description</title>
<para > Dequeue an event from a video device. No input is required
for this ioctl. All the fields of the &v4l2-event; structure are
filled by the driver. The file handle will also receive exceptions
which the application may get by e.g. using the select system
call.</para>
<table frame= "none" pgwide= "1" id= "v4l2-event" >
<title > struct <structname > v4l2_event</structname> </title>
<tgroup cols= "4" >
&cs-str;
<tbody valign= "top" >
<row >
<entry > __u32</entry>
<entry > <structfield > type</structfield> </entry>
<entry > </entry>
<entry > Type of the event.</entry>
</row>
<row >
<entry > union</entry>
<entry > <structfield > u</structfield> </entry>
<entry > </entry>
<entry > </entry>
</row>
2010-03-27 14:10:57 -03:00
<row >
<entry > </entry>
<entry > &v4l2-event-vsync; </entry>
<entry > <structfield > vsync</structfield> </entry>
<entry > Event data for event V4L2_EVENT_VSYNC.
</entry>
</row>
2010-03-27 10:58:24 -03:00
<row >
<entry > </entry>
<entry > __u8</entry>
<entry > <structfield > data</structfield> [64]</entry>
<entry > Event data. Defined by the event type. The union
should be used to define easily accessible type for
events.</entry>
</row>
<row >
<entry > __u32</entry>
<entry > <structfield > pending</structfield> </entry>
<entry > </entry>
<entry > Number of pending events excluding this one.</entry>
</row>
<row >
<entry > __u32</entry>
<entry > <structfield > sequence</structfield> </entry>
<entry > </entry>
<entry > Event sequence number. The sequence number is
incremented for every subscribed event that takes place.
If sequence numbers are not contiguous it means that
events have been lost.
</entry>
</row>
<row >
2010-03-27 14:10:57 -03:00
<entry > struct timespec</entry>
2010-03-27 10:58:24 -03:00
<entry > <structfield > timestamp</structfield> </entry>
<entry > </entry>
<entry > Event timestamp.</entry>
</row>
<row >
<entry > __u32</entry>
<entry > <structfield > reserved</structfield> [9]</entry>
<entry > </entry>
<entry > Reserved for future extensions. Drivers must set
the array to zero.</entry>
</row>
</tbody>
</tgroup>
</table>
</refsect1>
</refentry>
<!--
Local Variables:
mode: sgml
sgml-parent-document: "v4l2.sgml"
indent-tabs-mode: nil
End:
-->