Jetson Linux API 参考文档

32.7.4 版本
NvV4l2Element.h
前往此文件的文档。
1 /*
2  * 版权所有 (c) 2016,NVIDIA CORPORATION。保留所有权利。
3  *
4  * 允许以源代码和二进制形式重新分发和使用,无论是否修改,前提是满足以下条件
5  * 修改,前提是满足以下条件:
6  * 是满足以下条件:
7  * * 源代码的重新分发必须保留上述版权声明
8  * 声明、此条件列表以及以下免责声明。
9  * * 二进制形式的重新分发必须在上述版权声明中复制
10  * 声明、此条件列表以及以下免责声明,在
11  * 文档和/或随发行版提供的其他材料中。
12  * * 未经 NVIDIA CORPORATION 及其名称,不得使用 NVIDIA CORPORATION 的名称或其名称
13  * 贡献者的姓名不得用于认可或推广产品衍生产品
14  * 未经 NVIDIA 事先书面许可,不得使用本软件。
15  *
16  * 本软件由版权所有者“按原样”提供,并且任何明示或暗示的
17  * 明确或暗示的保证,包括但不限于
18  * 对适销性和针对特定用途适用性的默示保证
19  * 目的不作任何担保。在任何情况下,版权所有者或
20  * 贡献者均不对任何直接、间接、附带、特殊、
21  * 惩戒性或后果性损害(包括但不限于
22  * 替代商品或服务的采购;使用、数据或
23  * 利润损失;或业务中断)承担任何责任,无论原因和任何理论
24  * 的责任,无论是合同、严格责任还是侵权行为
25  * (包括疏忽或其他)以任何方式因使用本软件而引起
26  * 本软件的使用而引起,即使已被告知可能发生此类损害。
27  */
28 
46 #ifndef __NV_V4L2_ELEMENT_H__
47 #define __NV_V4L2_ELEMENT_H__
48 
49 #include "NvElement.h"
50 #include "NvV4l2ElementPlane.h"
51 
52 #include "v4l2_nv_extensions.h"
53 
66 {
67 public
68  virtual ~NvV4l2Element();
69 
80  int subscribeEvent(uint32_t type, uint32_t id, uint32_t flags);
93  int dqEvent(struct v4l2_event &event, uint32_t max_wait_ms);
94 
104  int setControl(uint32_t id, int32_t value);
115  int getControl(uint32_t id, int32_t &value);
116 
125  int setExtControls(struct v4l2_ext_controls &ctl);
134  int getExtControls(struct v4l2_ext_controls &ctl);
135 
136  virtual int isInError();
137 
156  int abort();
157 
167  virtual int waitForIdle(uint32_t max_wait_ms);
168 
169  void *app_data;
176  void enableProfiling();
177 
178 protected
179  int fd;
198  NvV4l2Element(const char *comp_name, const char *dev_node, int flags, NvElementProfiler::ProfilerField fields);
199 };
201 #endif
NvV4l2Element
定义了基于 V4L2 组件的辅助类。
定义: NvV4l2Element.h:65
NvV4l2Element::abort
int abort()
立即终止排队缓冲区的处理。
NvV4l2Element::capture_plane_pixfmt
uint32_t capture_plane_pixfmt
捕获平面缓冲区的像素格式。
定义: NvV4l2Element.h:182
NvV4l2Element::setExtControls
int setExtControls(struct v4l2_ext_controls &ctl)
设置多个控件的值。
NvElement::comp_name
const char * comp_name
指定组件的名称,用于调试。
定义: NvElement.h:122
NvElementProfiler::ProfilerField
int ProfilerField
定义: NvElementProfiler.h:79
NvV4l2Element::waitForIdle
virtual int waitForIdle(uint32_t max_wait_ms)
等待元素处理完所有输出平面缓冲区。
NvV4l2Element::enableProfiling
void enableProfiling()
为 V4l2Element 启用性能分析。
NvV4l2Element::getControl
int getControl(uint32_t id, int32_t &value)
获取控件的值。
NvV4l2Element::NvV4l2Element
NvV4l2Element(const char *comp_name, const char *dev_node, int flags, NvElementProfiler::ProfilerField fields)
创建一个名为 name 的新 V4l2Element。
NvV4l2Element::isInError
virtual int isInError()
NvV4l2ElementPlane.h
NvV4l2Element::fd
int fd
指定使用 v4l2_open 打开的设备的 FD。
定义: NvV4l2Element.h:179
NvV4l2Element::~NvV4l2Element
virtual ~NvV4l2Element()
NvV4l2Element::subscribeEvent
int subscribeEvent(uint32_t type, uint32_t id, uint32_t flags)
订阅 V4L2 事件。
NvV4l2ElementPlane
定义用于在 V4L2 Element 平面上执行操作的辅助类。
定义: NvV4l2ElementPlane.h:104
NvV4l2Element::getExtControls
int getExtControls(struct v4l2_ext_controls &ctl)
获取多个控件的值。
NvV4l2Element::dqEvent
int dqEvent(struct v4l2_event &event, uint32_t max_wait_ms)
从元素中出队一个事件。
NvElement
每个元素都有一个唯一的名称,可用于在调试日志中识别元素。
定义: NvElement.h:63
v4l2_nv_extensions.h
NvV4l2Element::output_plane_pixfmt
uint32_t output_plane_pixfmt
输出平面缓冲区的像素格式。
定义: NvV4l2Element.h:181
NvV4l2Element::capture_plane
NvV4l2ElementPlane capture_plane
设置捕获平面。
定义: NvV4l2Element.h:145
NvElement.h
NvV4l2Element::setControl
int setControl(uint32_t id, int32_t value)
设置控件的值。
NvV4l2Element::output_plane
NvV4l2ElementPlane output_plane
设置输出平面。
定义: NvV4l2Element.h:141
NvV4l2Element::app_data
void * app_data
指向应用程序特定数据的指针。
定义: NvV4l2Element.h:169
. All rights reserved.