18#define QTIP_CPP_SUPPORT_START extern "C" {
19#define QTIP_CPP_SUPPORT_END }
20#define QTIP_IS_CPP (1U)
22#define QTIP_CPP_SUPPORT_START
23#define QTIP_CPP_SUPPORT_END
24#define QTIP_IS_CPP (0U)
37#define SIZE_TYPE size_t
82#ifndef DISABLE_TELEMETRY
404#ifndef DISABLE_TELEMETRY
qtipSize_t rear
Absolute index of the rear of the queue.
qtipSize_t maxItems
Number of items allowed in the queue.
size_t total
Number of items introduced to the queue.
qtipSize_t qty
Current number of items in the queue.
void * start
Pointer to the start of the queue.
size_t itemSize
Size of each item in the queue.
size_t processed
Number of items removed from the queue.
qtipSize_t front
Absolute index of the front of the queue.
qtipStatus_t qtip_put(qtipContext_t *pContext, void *pItem)
Put an item in a queue.
qtipStatus_t qtip_count_items(qtipContext_t *pContext, qtipSize_t *pResult)
Gets the number of items in the queue.
qtipStatus_t qtip_is_full(qtipContext_t *pContext)
Checks whether the queue is full.
size_t qtipSize_t
Number of items in queue.
qtipStatus_t qtip_get_front(qtipContext_t *pContext, void *pItem)
Gets the item at the front of the queue.
qtipStatus_t
Queue operation status.
qtipStatus_t qtip_unlock(qtipContext_t *pContext)
Unlocks the queue.
qtipStatus_t qtip_total_processed_items(qtipContext_t *pContext, size_t *pResult)
Get number of processed items in the queue.
qtipStatus_t qtip_get_rear(qtipContext_t *pContext, void *pItem)
Gets the item at the rear of the queue.
qtipStatus_t qtip_pop(qtipContext_t *pContext, void *pItem)
Extract the next item from the queue.
qtipStatus_t qtip_peek(qtipContext_t *pContext, void *pBuffer, qtipSize_t *pSize)
Copies every element of the queue into a buffer.
qtipStatus_t qtip_is_empty(qtipContext_t *pContext)
Checks whether the queue is empty.
#define SIZE_TYPE
Type for holding the number of items in queue.
qtipStatus_t qtip_is_locked(qtipContext_t *pContext)
Checks whether the queue is locked.
qtipStatus_t qtip_remove_item_index(qtipContext_t *pContext, qtipSize_t index)
Removes the item from an intex in the queue.
qtipStatus_t qtip_purge(qtipContext_t *pContext)
Removes all the items from the queue.
qtipStatus_t qtip_total_enqueued_items(qtipContext_t *pContext, size_t *pResult)
Get number of items inserted in the queue.
qtipStatus_t qtip_init(qtipContext_t *pContext, void *pQueue, qtipSize_t maxItems, size_t itemSize)
Initialize queue context.
qtipStatus_t qtip_get_item_index(qtipContext_t *pContext, qtipSize_t index, void *pItem)
Gets the item from an intex in the queue.
qtipStatus_t qtip_get_pop_index(qtipContext_t *pContext, qtipSize_t index, void *pItem)
Pops the item from an intex in the queue.
qtipStatus_t qtip_lock(qtipContext_t *pContext)
Locks the queue.
@ QTIP_STATUS_EMPTY
Queue is empty.
@ QTIP_STATUS_LOCKED
Queue is locked.
@ QTIP_STATUS_INVALID_SIZE
Invalid queue size.
@ QTIP_STATUS_NULL_PTR
Null pointer encountered.
@ QTIP_STATUS_OK
Operation succeded.
@ QTIP_STATUS_FULL
Queue is full.