hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
.. c:namespace:: DTV.dmx
 
.. _DMX_QUERYBUF:
 
******************
ioctl DMX_QUERYBUF
******************
 
Name
====
 
DMX_QUERYBUF - Query the status of a buffer
 
.. warning:: this API is still experimental
 
Synopsis
========
 
.. c:macro:: DMX_QUERYBUF
 
``int ioctl(int fd, DMX_QUERYBUF, struct dvb_buffer *argp)``
 
Arguments
=========
 
``fd``
    File descriptor returned by :c:func:`open()`.
 
``argp``
    Pointer to struct :c:type:`dvb_buffer`.
 
Description
===========
 
This ioctl is part of the mmap streaming I/O method. It can
be used to query the status of a buffer at any time after buffers have
been allocated with the :ref:`DMX_REQBUFS` ioctl.
 
Applications set the ``index`` field. Valid index numbers range from zero
to the number of buffers allocated with :ref:`DMX_REQBUFS`
(struct :c:type:`dvb_requestbuffers` ``count``) minus one.
 
After calling :ref:`DMX_QUERYBUF` with a pointer to this structure,
drivers return an error code or fill the rest of the structure.
 
On success, the ``offset`` will contain the offset of the buffer from the
start of the device memory, the ``length`` field its size, and the
``bytesused`` the number of bytes occupied by data in the buffer (payload).
 
Return Value
============
 
On success 0 is returned, the ``offset`` will contain the offset of the
buffer from the start of the device memory, the ``length`` field its size,
and the ``bytesused`` the number of bytes occupied by data in the buffer
(payload).
 
On error it returns -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
 
EINVAL
    The ``index`` is out of bounds.