| <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> |
| <row> |
| <entry></entry> |
| <entry>&v4l2-event-vsync;</entry> |
| <entry><structfield>vsync</structfield></entry> |
| <entry>Event data for event V4L2_EVENT_VSYNC. |
| </entry> |
| </row> |
| <row> |
| <entry></entry> |
| <entry>&v4l2-event-ctrl;</entry> |
| <entry><structfield>ctrl</structfield></entry> |
| <entry>Event data for event V4L2_EVENT_CTRL. |
| </entry> |
| </row> |
| <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> |
| <entry>struct timespec</entry> |
| <entry><structfield>timestamp</structfield></entry> |
| <entry></entry> |
| <entry>Event timestamp.</entry> |
| </row> |
| <row> |
| <entry>u32</entry> |
| <entry><structfield>id</structfield></entry> |
| <entry></entry> |
| <entry>The ID associated with the event source. If the event does not |
| have an associated ID (this depends on the event type), then this |
| is 0.</entry> |
| </row> |
| <row> |
| <entry>__u32</entry> |
| <entry><structfield>reserved</structfield>[8]</entry> |
| <entry></entry> |
| <entry>Reserved for future extensions. Drivers must set |
| the array to zero.</entry> |
| </row> |
| </tbody> |
| </tgroup> |
| </table> |
| |
| </refsect1> |
| <refsect1> |
| &return-value; |
| </refsect1> |
| </refentry> |