diff options
Diffstat (limited to 'Documentation/media/uapi/v4l/vidioc-subscribe-event.rst')
-rw-r--r-- | Documentation/media/uapi/v4l/vidioc-subscribe-event.rst | 120 |
1 files changed, 45 insertions, 75 deletions
diff --git a/Documentation/media/uapi/v4l/vidioc-subscribe-event.rst b/Documentation/media/uapi/v4l/vidioc-subscribe-event.rst index 0202a78cbeb0..e4a51431032c 100644 --- a/Documentation/media/uapi/v4l/vidioc-subscribe-event.rst +++ b/Documentation/media/uapi/v4l/vidioc-subscribe-event.rst @@ -48,47 +48,27 @@ using the :ref:`VIDIOC_DQEVENT` ioctl. :stub-columns: 0 :widths: 1 1 2 - - - .. row 1 - - - __u32 - - - ``type`` - - - Type of the event, see :ref:`event-type`. - - .. note:: - - ``V4L2_EVENT_ALL`` can be used with - :ref:`VIDIOC_UNSUBSCRIBE_EVENT <VIDIOC_SUBSCRIBE_EVENT>` for - unsubscribing all events at once. - - - .. row 2 - - - __u32 - - - ``id`` - - - ID of the event source. If there is no ID associated with the - event source, then set this to 0. Whether or not an event needs an - ID depends on the event type. - - - .. row 3 - - - __u32 - - - ``flags`` - - - Event flags, see :ref:`event-flags`. - - - .. row 4 - - - __u32 - - - ``reserved``\ [5] - - - Reserved for future extensions. Drivers and applications must set - the array to zero. + * - __u32 + - ``type`` + - Type of the event, see :ref:`event-type`. + + .. note:: + + ``V4L2_EVENT_ALL`` can be used with + :ref:`VIDIOC_UNSUBSCRIBE_EVENT <VIDIOC_SUBSCRIBE_EVENT>` for + unsubscribing all events at once. + * - __u32 + - ``id`` + - ID of the event source. If there is no ID associated with the + event source, then set this to 0. Whether or not an event needs an + ID depends on the event type. + * - __u32 + - ``flags`` + - Event flags, see :ref:`event-flags`. + * - __u32 + - ``reserved``\ [5] + - Reserved for future extensions. Drivers and applications must set + the array to zero. @@ -101,40 +81,30 @@ using the :ref:`VIDIOC_DQEVENT` ioctl. :stub-columns: 0 :widths: 3 1 4 - - - .. row 1 - - - ``V4L2_EVENT_SUB_FL_SEND_INITIAL`` - - - 0x0001 - - - When this event is subscribed an initial event will be sent - containing the current status. This only makes sense for events - that are triggered by a status change such as ``V4L2_EVENT_CTRL``. - Other events will ignore this flag. - - - .. row 2 - - - ``V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK`` - - - 0x0002 - - - If set, then events directly caused by an ioctl will also be sent - to the filehandle that called that ioctl. For example, changing a - control using :ref:`VIDIOC_S_CTRL <VIDIOC_G_CTRL>` will cause - a V4L2_EVENT_CTRL to be sent back to that same filehandle. - Normally such events are suppressed to prevent feedback loops - where an application changes a control to a one value and then - another, and then receives an event telling it that that control - has changed to the first value. - - Since it can't tell whether that event was caused by another - application or by the :ref:`VIDIOC_S_CTRL <VIDIOC_G_CTRL>` - call it is hard to decide whether to set the control to the value - in the event, or ignore it. - - Think carefully when you set this flag so you won't get into - situations like that. + * - ``V4L2_EVENT_SUB_FL_SEND_INITIAL`` + - 0x0001 + - When this event is subscribed an initial event will be sent + containing the current status. This only makes sense for events + that are triggered by a status change such as ``V4L2_EVENT_CTRL``. + Other events will ignore this flag. + * - ``V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK`` + - 0x0002 + - If set, then events directly caused by an ioctl will also be sent + to the filehandle that called that ioctl. For example, changing a + control using :ref:`VIDIOC_S_CTRL <VIDIOC_G_CTRL>` will cause + a V4L2_EVENT_CTRL to be sent back to that same filehandle. + Normally such events are suppressed to prevent feedback loops + where an application changes a control to a one value and then + another, and then receives an event telling it that that control + has changed to the first value. + + Since it can't tell whether that event was caused by another + application or by the :ref:`VIDIOC_S_CTRL <VIDIOC_G_CTRL>` + call it is hard to decide whether to set the control to the value + in the event, or ignore it. + + Think carefully when you set this flag so you won't get into + situations like that. Return Value |