3.2.17. ioctl DMX_QUERYBUF

3.2.17.1. 名称

DMX_QUERYBUF - 查询缓冲区状态

警告

此API仍处于实验阶段

3.2.17.2. 概要

DMX_QUERYBUF

int ioctl(int fd, DMX_QUERYBUF, struct dvb_buffer *argp)

3.2.17.3. 参数

fd

open()返回的文件描述符。

argp

指向结构体dvb_buffer的指针。

3.2.17.4. 描述

此ioctl是mmap流式I/O方法的一部分。 它可用于在通过ioctl DMX_REQBUFS ioctl分配缓冲区后随时查询缓冲区的状态。

应用程序设置index字段。有效的索引号范围从零到使用ioctl DMX_REQBUFS(结构体dvb_requestbuffers count)分配的缓冲区数减一。

在使用指向此结构的指针调用ioctl DMX_QUERYBUF之后,驱动程序将返回错误代码或填充结构的其余部分。

成功后,offset将包含缓冲区从设备内存开始处的偏移量,length字段将包含其大小,bytesused将包含缓冲区中数据(有效载荷)占用的字节数。

3.2.17.5. 返回值

成功时返回0,offset将包含缓冲区从设备内存开始处的偏移量,length字段将包含其大小,bytesused将包含缓冲区中数据(有效载荷)占用的字节数。

如果出错,则返回-1,并适当设置errno变量。 通用错误代码在通用错误代码章节中描述。

EINVAL

index超出范围。