Linux Kernel
3.7.1
|
#include <videobuf2-core.h>
Data Fields | |
enum v4l2_buf_type | type |
unsigned int | io_modes |
unsigned int | io_flags |
struct mutex * | lock |
struct v4l2_fh * | owner |
struct vb2_ops * | ops |
struct vb2_mem_ops * | mem_ops |
void * | drv_priv |
unsigned int | buf_struct_size |
enum v4l2_memory | memory |
struct vb2_buffer * | bufs [VIDEO_MAX_FRAME] |
unsigned int | num_buffers |
struct list_head | queued_list |
atomic_t | queued_count |
struct list_head | done_list |
spinlock_t | done_lock |
wait_queue_head_t | done_wq |
void * | alloc_ctx [VIDEO_MAX_PLANES] |
unsigned int | plane_sizes [VIDEO_MAX_PLANES] |
unsigned int | streaming:1 |
struct vb2_fileio_data * | fileio |
struct vb2_queue - a videobuf queue
: queue type (see V4L2_BUF_TYPE_* in linux/videodev2.h : supported io methods (see vb2_io_modes enum) : additional io flags (see vb2_fileio_flags enum) : pointer to a mutex that protects the vb2_queue struct. The driver can set this to a mutex to let the v4l2 core serialize the queuing ioctls. If the driver wants to handle locking itself, then this should be set to NULL. This lock is not used by the videobuf2 core API. : The filehandle that 'owns' the buffers, i.e. the filehandle that called reqbufs, create_buffers or started fileio. This field is not used by the videobuf2 core API, but it allows drivers to easily associate an owner filehandle with the queue. : driver-specific callbacks : memory allocator specific callbacks : driver private data : size of the driver-specific buffer structure; "0" indicates the driver doesn't want to use a custom buffer structure type, so sizeof(struct vb2_buffer) will is used
: current memory type used : videobuf buffer structures : number of allocated/used buffers : list of buffers currently queued from userspace : number of buffers owned by the driver : list of buffers ready to be dequeued to userspace : lock to protect done_list list : waitqueue for processes waiting for buffers ready to be dequeued : memory type/allocator-specific contexts for each plane : current streaming state : file io emulator internal data, used only if emulator is active
Definition at line 283 of file videobuf2-core.h.
void* alloc_ctx[VIDEO_MAX_PLANES] |
Definition at line 307 of file videobuf2-core.h.
unsigned int buf_struct_size |
Definition at line 293 of file videobuf2-core.h.
struct vb2_buffer* bufs[VIDEO_MAX_FRAME] |
Definition at line 297 of file videobuf2-core.h.
Definition at line 303 of file videobuf2-core.h.
spinlock_t done_lock |
Definition at line 304 of file videobuf2-core.h.
wait_queue_head_t done_wq |
Definition at line 305 of file videobuf2-core.h.
Definition at line 292 of file videobuf2-core.h.
struct vb2_fileio_data* fileio |
Definition at line 312 of file videobuf2-core.h.
unsigned int io_flags |
Definition at line 286 of file videobuf2-core.h.
unsigned int io_modes |
Definition at line 285 of file videobuf2-core.h.
Definition at line 287 of file videobuf2-core.h.
struct vb2_mem_ops* mem_ops |
Definition at line 291 of file videobuf2-core.h.
enum v4l2_memory memory |
Definition at line 296 of file videobuf2-core.h.
unsigned int num_buffers |
Definition at line 298 of file videobuf2-core.h.
Definition at line 290 of file videobuf2-core.h.
Definition at line 288 of file videobuf2-core.h.
unsigned int plane_sizes[VIDEO_MAX_PLANES] |
Definition at line 308 of file videobuf2-core.h.
atomic_t queued_count |
Definition at line 302 of file videobuf2-core.h.
Definition at line 300 of file videobuf2-core.h.
unsigned int streaming |
Definition at line 310 of file videobuf2-core.h.
enum v4l2_buf_type type |
Definition at line 284 of file videobuf2-core.h.