Imaging Control 4 C Library  1.2.0
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. More...
 
void * callback_context
 A user-defined value that is passed to the callbacks. More...
 
enum IC4_PIXEL_FORMATpixel_formats
 An array of possible pixel formats that the sink can receive.
 
size_t num_pixel_formats
 Length of the pixel_formats array. More...
 
struct IC4_ALLOCATOR_CALLBACKS allocator
 A structure containing function pointers to customize the sink's allocator. More...
 
void * allocator_context
 A user-defined value that is passed to the allocator callbacks. More...
 
size_t max_output_buffers
 Defines the maximum number of buffers that are stored in the sink's output queue. More...
 

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.