EdgeAI TIOVX Apps Guide
tiovx_modules.c File Reference
Include dependency graph for tiovx_modules.c:

Macros

#define LOCK(a)   pthread_mutex_lock(&a->lock)
 
#define UNLOCK(a)   pthread_mutex_unlock(&a->lock)
 

Functions

vx_status tiovx_modules_initialize_graph (GraphObj *graph)
 Function to initialize a graph object. More...
 
NodeObj * tiovx_modules_add_node (GraphObj *graph, NODE_TYPES node_type, void *cfg)
 Function to add a new node to graph. More...
 
Buf * tiovx_modules_acquire_buf (BufPool *buf_pool)
 Acquire a free buffer from a buffer pool. More...
 
vx_status tiovx_modules_release_buf (Buf *buf)
 Release a previously acquired buffer back to its pool. More...
 
vx_status tiovx_modules_reference_alloc_mem (vx_reference ref)
 
BufPool * tiovx_modules_allocate_bufpool (Pad *pad)
 
void tiovx_modules_free_bufpool (BufPool *buf_pool)
 
vx_bool tiovx_modules_compare_images (vx_image image1, vx_image image2)
 
vx_bool tiovx_modules_compare_tensors (vx_tensor tensor1, vx_tensor tensor2)
 
vx_bool tiovx_modules_compare_raw_images (tivx_raw_image image1, tivx_raw_image image2)
 
vx_bool tiovx_modules_compare_exemplars (vx_reference exemplar1, vx_reference exemplar2)
 
vx_status tiovx_modules_link_pads (Pad *src_pad, Pad *sink_pad)
 Function to link two pads. More...
 
vx_status tiovx_modules_add_graph_parameter_by_node_index (vx_graph graph, vx_node node, vx_uint32 node_parameter_index)
 
vx_status tiovx_modules_add_to_graph_params (Pad *pad)
 
void tiovx_modules_modify_node_names (GraphObj *graph)
 
vx_status tiovx_modules_verify_graph (GraphObj *graph)
 Function to be called after adding and connecting all the nodes. This function will created actual OpenVX Nodes, creates graph parameters for floating pads and created buffer pools for all graph params. More...
 
vx_status tiovx_modules_export_graph (GraphObj *graph, char *path, char *prefix)
 Function to export graph as a dot file. More...
 
NodeObj * tiovx_modules_get_node_by_name (GraphObj *graph, char *name)
 Function to get access to node object by name. More...
 
void tiovx_modules_print_performance (GraphObj *graph)
 Function to print performance of each node in graph. More...
 
vx_status tiovx_modules_enqueue_buf (Buf *buf)
 Function to enqueue a buffer to OpenVX graph. More...
 
Buf * tiovx_modules_dequeue_buf (BufPool *buf_pool)
 dequeue a buffer from OpenVX graph. More...
 
vx_status tiovx_modules_schedule_graph (GraphObj *graph)
 Function to schedule graph, if mode set to manual. More...
 
vx_status tiovx_modules_wait_graph (GraphObj *graph)
 Function to wait for graph exec, if mode set to manual. More...
 
vx_status tiovx_modules_delete_node (NodeObj *node)
 
vx_status tiovx_modules_release_node (NodeObj *node)
 Function to release a node, to be used only in modules. More...
 
vx_status tiovx_module_create_pad_exemplar (Pad *pad, vx_reference exemplar)
 
vx_status tiovx_modules_clean_graph (GraphObj *graph)
 Function to clean the graph at the end of the application. More...
 

Variables

NodeCbs gNodeCbs [TIOVX_MODULES_NUM_MODULES]
 

Macro Definition Documentation

◆ LOCK

#define LOCK (   a)    pthread_mutex_lock(&a->lock)

◆ UNLOCK

#define UNLOCK (   a)    pthread_mutex_unlock(&a->lock)

Function Documentation

◆ tiovx_modules_reference_alloc_mem()

vx_status tiovx_modules_reference_alloc_mem ( vx_reference  ref)

◆ tiovx_modules_allocate_bufpool()

BufPool* tiovx_modules_allocate_bufpool ( Pad *  pad)

◆ tiovx_modules_free_bufpool()

void tiovx_modules_free_bufpool ( BufPool *  buf_pool)

◆ tiovx_modules_compare_images()

vx_bool tiovx_modules_compare_images ( vx_image  image1,
vx_image  image2 
)

◆ tiovx_modules_compare_tensors()

vx_bool tiovx_modules_compare_tensors ( vx_tensor  tensor1,
vx_tensor  tensor2 
)

◆ tiovx_modules_compare_raw_images()

vx_bool tiovx_modules_compare_raw_images ( tivx_raw_image  image1,
tivx_raw_image  image2 
)

◆ tiovx_modules_compare_exemplars()

vx_bool tiovx_modules_compare_exemplars ( vx_reference  exemplar1,
vx_reference  exemplar2 
)

◆ tiovx_modules_add_graph_parameter_by_node_index()

vx_status tiovx_modules_add_graph_parameter_by_node_index ( vx_graph  graph,
vx_node  node,
vx_uint32  node_parameter_index 
)

◆ tiovx_modules_add_to_graph_params()

vx_status tiovx_modules_add_to_graph_params ( Pad *  pad)

◆ tiovx_modules_modify_node_names()

void tiovx_modules_modify_node_names ( GraphObj *  graph)

◆ tiovx_modules_delete_node()

vx_status tiovx_modules_delete_node ( NodeObj *  node)

◆ tiovx_module_create_pad_exemplar()

vx_status tiovx_module_create_pad_exemplar ( Pad *  pad,
vx_reference  exemplar 
)

Variable Documentation

◆ gNodeCbs