1<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>struct v4l2_ctrl_config</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux Device Drivers"><link rel="up" href="mediadev.html#id-1.8.2" title="Video2Linux devices"><link rel="prev" href="API-struct-v4l2-ctrl-handler.html" title="struct v4l2_ctrl_handler"><link rel="next" href="API-v4l2-ctrl-handler-init-class.html" title="v4l2_ctrl_handler_init_class"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">struct v4l2_ctrl_config</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-struct-v4l2-ctrl-handler.html">Prev</a> </td><th width="60%" align="center">Video2Linux devices</th><td width="20%" align="right"> <a accesskey="n" href="API-v4l2-ctrl-handler-init-class.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-struct-v4l2-ctrl-config"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>struct v4l2_ctrl_config — 
2     Control configuration structure.
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="programlisting">
4struct v4l2_ctrl_config {
5  const struct v4l2_ctrl_ops * ops;
6  const struct v4l2_ctrl_type_ops * type_ops;
7  u32 id;
8  const char * name;
9  enum v4l2_ctrl_type type;
10  s64 min;
11  s64 max;
12  u64 step;
13  s64 def;
14  u32 dims[V4L2_CTRL_MAX_DIMS];
15  u32 elem_size;
16  u32 flags;
17  u64 menu_skip_mask;
18  const char *const * qmenu;
19  const s64 * qmenu_int;
20  unsigned int is_private:1;
21};  </pre></div><div class="refsect1"><a name="id-1.8.2.19.5"></a><h2>Members</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term">ops</span></dt><dd><p>
22   The control ops.
23      </p></dd><dt><span class="term">type_ops</span></dt><dd><p>
24   The control type ops. Only needed for compound controls.
25      </p></dd><dt><span class="term">id</span></dt><dd><p>
26   The control ID.
27      </p></dd><dt><span class="term">name</span></dt><dd><p>
28   The control name.
29      </p></dd><dt><span class="term">type</span></dt><dd><p>
30   The control type.
31      </p></dd><dt><span class="term">min</span></dt><dd><p>
32   The control's minimum value.
33      </p></dd><dt><span class="term">max</span></dt><dd><p>
34   The control's maximum value.
35      </p></dd><dt><span class="term">step</span></dt><dd><p>
36   The control's step value for non-menu controls.
37      </p></dd><dt><span class="term">def</span></dt><dd><p>
38   The control's default value.
39      </p></dd><dt><span class="term">dims[V4L2_CTRL_MAX_DIMS]</span></dt><dd><p>
40   The size of each dimension.
41      </p></dd><dt><span class="term">elem_size</span></dt><dd><p>
42   The size in bytes of the control.
43      </p></dd><dt><span class="term">flags</span></dt><dd><p>
44   The control's flags.
45      </p></dd><dt><span class="term">menu_skip_mask</span></dt><dd><p>
46   The control's skip mask for menu controls. This makes it
47   easy to skip menu items that are not valid. If bit X is set,
48   then menu item X is skipped. Of course, this only works for
49   menus with &lt;= 64 menu items. There are no menus that come
50   close to that number, so this is OK. Should we ever need more,
51   then this will have to be extended to a bit array.
52      </p></dd><dt><span class="term">qmenu</span></dt><dd><p>
53   A const char * array for all menu items. Array entries that are
54   empty strings ("") correspond to non-existing menu items (this
55   is in addition to the menu_skip_mask above). The last entry
56   must be NULL.
57      </p></dd><dt><span class="term">qmenu_int</span></dt><dd><p>
58   A const s64 integer array for all menu items of the type
59   V4L2_CTRL_TYPE_INTEGER_MENU.
60      </p></dd><dt><span class="term">is_private</span></dt><dd><p>
61   If set, then this control is private to its handler and it
62   will not be added to any other handlers.
63      </p></dd></dl></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-struct-v4l2-ctrl-handler.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="mediadev.html#id-1.8.2">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="API-v4l2-ctrl-handler-init-class.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">struct v4l2_ctrl_handler</span> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">v4l2_ctrl_handler_init_class</span></td></tr></table></div></body></html>
64