TIOVX User Guide
tivx_obj_desc_queue.h File Reference

Implementation of Object descriptor Queue Object APIs. More...

Go to the source code of this file.

Functions

vx_status ownObjDescQueueCreate (uint16_t *obj_desc_id)
 Create a object descriptor queue and return its obj_desc_id.
 
vx_status ownObjDescQueueRelease (uint16_t *obj_desc_id)
 Release a object descriptor queue.
 
vx_status ownObjDescQueueEnqueue (uint16_t obj_desc_q_id, uint16_t obj_desc_id)
 Enqueue a obj_desc_id into a object descriptor queue.
 
vx_status ownObjDescQueueGetCount (uint16_t obj_desc_q_id, uint32_t *count)
 Get number of elements in a object descriptor queue.
 
vx_status ownObjDescQueueDequeue (uint16_t obj_desc_q_id, uint16_t *obj_desc_id)
 Dequeue a obj_desc_id from a object descriptor queue.
 
vx_status ownObjDescQueueAddBlockedNode (uint16_t obj_desc_q_id, uint16_t node_id)
 Add 'node_id' to a list of blocked nodes associated with this object descriptor ID.
 
vx_status ownObjDescQueueExtractBlockedNodes (uint16_t obj_desc_q_id, tivx_obj_desc_queue_blocked_nodes_t *out_blocked_nodes)
 Extract nodes blocked on this object descriptor queue ID. More...
 

Detailed Description

Implementation of Object descriptor Queue Object APIs.

NOTE: The APIs in this module dont do any locking for Q/DQ and other operations. User of this API should take local CPU and/or multi-CPU locks

Definition in file tivx_obj_desc_queue.h.

Function Documentation

◆ ownObjDescQueueExtractBlockedNodes()

vx_status ownObjDescQueueExtractBlockedNodes ( uint16_t  obj_desc_q_id,
tivx_obj_desc_queue_blocked_nodes_t out_blocked_nodes 
)

Extract nodes blocked on this object descriptor queue ID.

Adds to out_blocked_nodes, make sure out_blocked_nodes->num_nodes is set to 0 before calling this API