IC4_QUEUESINK_CONFIG Struct Reference
Configures the behavior of a queue sink. More...
Data Fields
struct IC4_QUEUESINK_CALLBACKS | callbacks A structure containing function pointers to customize the sink's behavior. |
void * | callback_context A user-defined value that is passed to the callbacks. |
enum IC4_PIXEL_FORMAT * | pixel_formats An array of possible pixel formats that the sink can receive. |
size_t | num_pixel_formats Length of the pixel_formats array. |
struct IC4_ALLOCATOR_CALLBACKS | allocator A structure containing function pointers to customize the sink's allocator. |
void * | allocator_context A user-defined value that is passed to the allocator callbacks. |
size_t | max_output_buffers Defines the maximum number of buffers that are stored in the sink's output queue. |
Detailed Description
Configures the behavior of a queue sink.
A pointer to a IC4_QUEUESINK_CONFIG
is passed to ic4_queuesink_create().
Field Documentation
◆ allocator
struct IC4_ALLOCATOR_CALLBACKS allocator |
A structure containing function pointers to customize the sink's allocator.
This parameter is optional, set all callback functions to NULL
to use the default allocator.
If IC4_ALLOCATOR_CALLBACKS::allocate_buffer is set, IC4_ALLOCATOR_CALLBACKS::free_buffer must be set as well.
◆ allocator_context
void* allocator_context |
A user-defined value that is passed to the allocator callbacks.
If callback_context
points to a memory location, and callback functions access that memory, the program has to make sure that the memory is valid until the IC4_ALLOCATOR_CALLBACKS::release callback is executed.
◆ callback_context
void* callback_context |
A user-defined value that is passed to the callbacks.
If callback_context
points to a memory location, and callback functions access that memory, the program has to make sure that the memory is valid until the IC4_QUEUESINK_CALLBACKS::release callback is executed.
◆ callbacks
struct IC4_QUEUESINK_CALLBACKS callbacks |
A structure containing function pointers to customize the sink's behavior.
Programs usually at least register a callback for IC4_QUEUESINK_CALLBACKS::frames_queued to be able to process new images immediately.
◆ max_output_buffers
size_t max_output_buffers |
Defines the maximum number of buffers that are stored in the sink's output queue.
If set to 0
, the number of buffers is unlimited. If a new frame arrives at the sink, and the output queue size would exceed max_output_buffers, the oldest image is discarded and its buffer is added to the free queue.
◆ num_pixel_formats
size_t num_pixel_formats |
Length of the pixel_formats array.
If this value is 0
, the sink will accept any pixel format.