66 #ifndef TIVX_DATA_REF_Q_H_ 67 #define TIVX_DATA_REF_Q_H_ 100 typedef struct _tivx_data_ref_queue {
136 typedef struct _tivx_data_ref_queue_create_params {
238 uint32_t delay_slots);
vx_bool is_enable_send_ref_consumed_event
send event to user when data ref is consumed
uint32_t num_in_nodes
number of nodes that use this data reference as input
uint16_t acquire_q_obj_desc_id
acquire queue ID
uint32_t pipeline_depth
graph pipeline depth
The most basic type in the OpenVX system. Any type that inherits from tivx_reference_t must have a vx...
uint16_t release_q_obj_desc_id
release queue ID
vx_graph graph
graph associated with this data reference
uint16_t done_q_obj_desc_id
object descriptor used for 'DONE' queue
vx_bool enable_user_queueing
will user do enqueing/dequeueing or will graph rotate buffers internally
uint32_t graph_parameter_index
graph parameter index which is associated with this data ref
vx_status ownDataRefQueueWaitDoneRef(tivx_data_ref_queue data_ref_q, vx_uint32 timeout)
Wait for 'DONE' queue to be non-empty.
uint32_t pipeline_depth
pipeline depth
struct _vx_reference * vx_reference
vx_status ownDataRefQueueGetDoneQueueCount(tivx_data_ref_queue data_ref_q, vx_uint32 *count)
Return number of elements in 'DONE' queue.
vx_status ownDataRefQueueDequeueDoneRef(tivx_data_ref_queue data_ref_q, vx_reference *ref)
Dequeue 'ref' from 'DONE' queue.
vx_status ownDataRefQueueSendRefConsumedEvent(tivx_data_ref_queue ref, uint64_t timestamp)
Send 'ref consumed event' if event send is enabled.
uint32_t graph_parameter_index
graph parameter index which is associated with this data ref
tivx_reference_t base
The base reference object.
vx_bool enable_user_queueing
will user do enqueing/dequeueing or will graph rotate buffers internally
Command object descriptor.
uint16_t ownDataRefQueueGetObjDescId(tivx_data_ref_queue ref, uint32_t pipeline_id)
return object descriptor ID of specific pipeline ID
vx_status ownDataRefQueueLinkDelayDataRefQueues(tivx_data_ref_queue delay_data_ref_q_list[], vx_bool auto_age_delay_slot[], uint32_t delay_slots)
Link data ref queues that participate in a delay in a circular manner.
vx_status ownDataRefQueueEnqueueReadyRef(tivx_data_ref_queue data_ref_q, vx_reference ref)
Enqueue 'ref' into 'READY' queue.
struct _tivx_data_ref_queue * tivx_data_ref_queue
Data Ref Queue Object.
Data Ref Queue internal state.
vx_bool is_enable_send_ref_consumed_event
send event to user when data ref is consumed
vx_status ownDataRefQueueRelease(tivx_data_ref_queue *ref)
Release data reference queue.
tivx_data_ref_queue tivxDataRefQueueCreate(vx_graph graph, const tivx_data_ref_queue_create_params_t *prms)
Create data reference queue.
uint16_t ready_q_obj_desc_id
object descriptor used for 'READY' queue
vx_status ownDataRefQueueGetReadyQueueCount(tivx_data_ref_queue data_ref_q, vx_uint32 *count)
Return number of elements in 'READY' queue.
#define TIVX_GRAPH_MAX_PIPELINE_DEPTH
Max possible pipeline depth of a graph.
struct _vx_graph * vx_graph
tivx_event wait_done_ref_available_event
event triggered when a data ref is inserted into 'DONE' queue
struct _tivx_event_t * tivx_event
Typedef for a event.
Parameters used to create a data ref queue.