tizqueue¶
-
group
tizqueue
Thread-safe FIFO queue.
Typedefs
-
typedef struct tiz_queue
tiz_queue_t
¶ Queue opaque structure.
Functions
-
OMX_ERRORTYPE
tiz_queue_init
(tiz_queue_ptr_t *app_q, OMX_S32 a_capacity)¶ Initialize a new empty queue.
- Return
OMX_ErrorNone if success, OMX_ErrorInsufficientResources otherwise.
- Parameters
a_capacity
: Maximum number of items that can be send into the queue.
-
void
tiz_queue_destroy
(tiz_queue_t *ap_q)¶ Destroy a queue. If ap_q is NULL, or the queue has already been detroyed before, no operation is performed.
-
OMX_ERRORTYPE
tiz_queue_send
(tiz_queue_t *ap_q, OMX_PTR ap_data)¶ Add an item onto the end of the queue. If the queue is full, it blocks until a space becomes available.
-
OMX_ERRORTYPE
tiz_queue_receive
(tiz_queue_t *ap_q, OMX_PTR *app_data)¶ Retrieve an item from the head of the queue. If the queue is empty, it blocks until an item becomes available.
-
OMX_ERRORTYPE
tiz_queue_timed_receive
(tiz_queue_t *ap_q, OMX_PTR *app_data, OMX_U32 a_millis)¶ Retrieve an item from the head of the queue. If the queue is empty, it waits for up to a_millis milliseconds or until an item becomes available.
-
OMX_S32
tiz_queue_capacity
(tiz_queue_t *ap_q)¶ Retrieve the maximum number of items that can be stored in the queue.
-
OMX_S32
tiz_queue_length
(tiz_queue_t *ap_q)¶ Retrieve the number of items currently stored in the queue.
-
typedef struct tiz_queue