struct_v4l2_ctrl_handler(9) The control handler keeps track of all the

SYNOPSIS


struct v4l2_ctrl_handler {
struct mutex _lock;
struct mutex * lock;
struct list_head ctrls;
struct list_head ctrl_refs;
struct v4l2_ctrl_ref * cached;
struct v4l2_ctrl_ref ** buckets;
v4l2_ctrl_notify_fnc notify;
void * notify_priv;
u16 nr_of_buckets;
int error;
};

MEMBERS

_lock

Default for "lock".

lock

Lock to control access to this handler and its controls. May be replaced by the user right after init.

ctrls

The list of controls owned by this handler.

ctrl_refs

The list of control references.

cached

The last found control reference. It is common that the same control is needed multiple times, so this is a simple optimization.

buckets

Buckets for the hashing. Allows for quick control lookup.

notify

A notify callback that is called whenever the control changes value. Note that the handler's lock is held when the notify function is called!

notify_priv

Passed as argument to the v4l2_ctrl notify callback.

nr_of_buckets

Total number of buckets in the array.

error

The error code of the first failed control addition.

CONTROLS

both the controls owned by the handler and those inherited from other handlers.

COPYRIGHT