TIOVX User Guide
|
Interface to TI extension APIs. More...
#include <VX/vx.h>
#include <VX/vx_khr_pipelining.h>
#include <VX/vx_khr_user_data_object.h>
#include <TI/tivx_debug.h>
#include <TI/tivx_log_rt.h>
#include <TI/tivx_kernels.h>
#include <TI/tivx_nodes.h>
#include <TI/tivx_mem.h>
#include <TI/tivx_tensor.h>
#include <TI/tivx_ext_raw_image.h>
#include <TI/tivx_ext_super_node.h>
#include <TI/tivx_soc.h>
Go to the source code of this file.
Data Structures | |
struct | tivx_resource_stats_t |
Struct containing config parameters of given static resource. Allows for a log to be kept of the resources used throughout runtime. More... | |
Macros | |
#define | TIVX_TARGET_MAX_NAME (64u) |
Max possible name of a target. | |
#define | TIVX_TARGET_HOST "HOST" |
String to name a OpenVX Host. More... | |
#define | TIVX_RESOURCE_NAME_MAX (39u) |
Max size of macro. | |
#define | TIVX_CONFIG_PATH_LENGTH (512u) |
Max size of config file path. | |
#define | TIVX_GRAPH_PARAMETER_ENQUEUE_FLAG_PIPEUP (0x00000001u) |
Flag used with tivxGraphParameterEnqueueReadyRef to indicate that this enqueue call if for pipeup phase. More... | |
#define | TIVX_CONTROL_CMD_SEND_TO_ALL_REPLICATED_NODES ((uint32_t)-1) |
When sending a control command to a replicated node, this can be used to send control command to all replicated node. More... | |
#define | TIVX_GRAPH_MAX_SUPER_NODES (8u) |
Max possible super nodes in graph. | |
#define | TIVX_MAX_DSP_BAM_USER_PLUGINS (8u) |
Max number of BAM user plugins on DSP (in addition to builtin vxlib plugins) | |
#define | TIVX_SUPER_NODE_MAX_NODES (16u) |
Max number of nodes per super node. | |
#define | TIVX_SUPER_NODE_MAX_EDGES (16u) |
Max number of edges per super node. | |
#define | TIVX_SUPER_NODE_MAX_OBJECTS (16u) |
Max number super node objects supported. | |
#define | TIVX_PYRAMID_MAX_LEVELS_ORB (17u) |
Max levels supported for the pyramid. More... | |
#define | TIVX_MAX_KERNEL_ID (VX_KERNEL_MASK) |
Max number of kernel ID's. | |
#define | TIVX_MAX_LIBRARY_ID (VX_LIBRARY(VX_LIBRARY_MASK)) |
Max number of kernel library ID's. | |
#define | dimof(x) (sizeof(x)/sizeof(x[0])) |
Macro to find size of array. | |
Enumerations | |
enum | tivx_attribute_extensions_e { TIVX_NODE_TARGET_STRING = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x0, TIVX_USER_DATA_OBJECT_VALID_SIZE = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x1, TIVX_REFERENCE_TIMESTAMP = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x2, TIVX_REFERENCE_INVALID = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x3, TIVX_GRAPH_STREAM_EXECUTIONS = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x4, TIVX_KERNEL_TIMEOUT = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x5, TIVX_NODE_TIMEOUT = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x6, TIVX_GRAPH_TIMEOUT = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x7, TIVX_GRAPH_PIPELINE_DEPTH = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x8, TIVX_CONTEXT_NUM_USER_KERNEL_ID = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0x9, TIVX_IMAGE_IMAGEPATCH_ADDRESSING = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0xa, TIVX_TENSOR_STRIDES = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0xb, TIVX_CONTEXT_NUM_USER_LIBRARY_ID = VX_ATTRIBUTE_BASE(VX_ID_TI, (vx_enum)0) + 0xc } |
TI attribute extensions. More... | |
enum | tivx_df_image_e { TIVX_DF_IMAGE_P12 = VX_DF_IMAGE('P','0','1','2'), TIVX_DF_IMAGE_NV12_P12 = VX_DF_IMAGE('N','1','2','P'), TIVX_DF_IMAGE_RGB565 = VX_DF_IMAGE('R','5','6','5'), TIVX_DF_IMAGE_BGRX = VX_DF_IMAGE('B','G','R','A') } |
Based on the VX_DF_IMAGE definition. More... | |
enum | tivx_status_e { TIVX_STATUS_BASE = -(vx_int32)100, TIVX_ERROR_EVENT_TIMEOUT = (vx_int32)(TIVX_STATUS_BASE + 1) } |
The enumeration of all TIVX operational error codes. More... | |
Functions | |
void | tivxInit (void) |
Function to initialize OpenVX framework. More... | |
void | tivxDeInit (void) |
Function to de-initialize OpenVX framework. More... | |
void | tivxHostInit (void) |
Function to initialize OpenVX HOST side functionality. More... | |
void | tivxHostDeInit (void) |
Function to de-initialize OpenVX HOST side functionality. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxAddKernelTarget (vx_kernel kernel, const char *target_name) |
Associate a target with a kernel. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxSetKernelSinkDepth (vx_kernel kernel, uint32_t num_sink_bufs) |
Set the number of sink buffers. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxRegisterModule (const char *name, vx_publish_kernels_f publish, vx_unpublish_kernels_f unpublish) |
Register publish and unpublish functions against a module name. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxUnRegisterModule (const char *name) |
UnRegister publish and unpublish functions if previously registered. More... | |
vx_enum | tivxGetSelfCpuId (void) |
Return CPU ID of the CPU on which this API is called. More... | |
vx_status | tivxQueryResourceStats (const char *resource_name, tivx_resource_stats_t *stat) |
Query resource for resource stats. More... | |
void | tivxPrintAllResourceStats (void) |
Prints out resource stats. | |
vx_status | tivxExportAllResourceMaxUsedValueToFile (void) |
Exports the max used values to a file. More... | |
vx_node | tivxCreateNodeByKernelEnum (vx_graph graph, vx_enum kernelenum, vx_reference params[], vx_uint32 num) |
Utility function to create a node given parameter references and kernel enum. More... | |
vx_node | tivxCreateNodeByKernelRef (vx_graph graph, vx_kernel kernel, vx_reference params[], vx_uint32 num) |
Utility function to create a node given parameter references and kernel reference. More... | |
vx_node | tivxCreateNodeByKernelName (vx_graph graph, const char *kernel_name, vx_reference params[], vx_uint32 num) |
Utility function to create a node given parameter references and kernel name. More... | |
vx_bool | tivxIsReferenceVirtual (vx_reference ref) |
Utility function to check if the given reference is virtual or not. More... | |
vx_reference | tivxGetReferenceParent (vx_reference child_ref) |
Utility function to extract the parent reference from an element. More... | |
vx_bool | tivxIsTargetEnabled (const char target_name[]) |
Utility function to know if target is enabled or not. More... | |
uint64_t | tivxPlatformGetTimeInUsecs (void) |
Get the time in micro seconds. More... | |
vx_status VX_API_CALL | tivxExportGraphToDot (vx_graph graph, const char *output_file_path, const char *output_file_prefix) |
Export graph representation as DOT graph file. More... | |
vx_status VX_API_CALL | tivxSetNodeParameterNumBufByIndex (vx_node node, vx_uint32 index, vx_uint32 num_buf) |
Set number of buffers to allocate at output of a node parameter. More... | |
vx_status VX_API_CALL | tivxGetNodeParameterNumBufByIndex (vx_node node, vx_uint32 index, vx_uint32 *num_buf) |
Get number of buffers to allocate at output of a node parameter. More... | |
vx_status VX_API_CALL | tivxSetGraphPipelineDepth (vx_graph graph, vx_uint32 pipeline_depth) |
Indicates to the implementation the depth of the graph pipeline. More... | |
vx_status VX_API_CALL | tivxGraphParameterEnqueueReadyRef (vx_graph graph, vx_uint32 graph_parameter_index, vx_reference *refs, vx_uint32 num_refs, vx_uint32 flags) |
Same as vxGraphParameterEnqueueReadyRef except that it take an additional TIOVX specific flag parameter. More... | |
vx_status VX_API_CALL | tivxNodeSendCommand (vx_node node, uint32_t replicate_nodex_idx, uint32_t node_cmd_id, vx_reference ref[], uint32_t num_refs) |
Send node specific Control command. More... | |
vx_status VX_API_CALL | tivxNodeSendCommandTimed (vx_node node, uint32_t replicate_nodex_idx, uint32_t node_cmd_id, vx_reference ref[], uint32_t num_refs, uint32_t timeout) |
Send node specific Control command. More... | |
vx_node | tivxGraphGetNode (vx_graph graph, uint32_t index) |
This API is used to get a reference to a node within a graph at a given index within the graph. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxSetUserDataObjectAttribute (vx_user_data_object user_data_object, vx_enum attribute, const void *ptr, vx_size size) |
Sets attributes on the user data object. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxSetNodeTileSize (vx_node node, vx_uint32 block_width, vx_uint32 block_height) |
Sets the tile size for a given node in a graph. This is only valid for BAM-enabled kernels on C66 DSP. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxSetReferenceAttribute (vx_reference ref, vx_enum attribute, const void *ptr, vx_size size) |
Sets reference attributes for the below enums: TIVX_REFERENCE_TIMESTAMP. More... | |
VX_API_ENTRY vx_bool VX_API_CALL | tivxIsReferenceMetaFormatEqual (vx_reference ref1, vx_reference ref2) |
Check for equivalence between the meta formats of two reference objects. More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxReferenceImportHandle (vx_reference ref, const void *addr[], const uint32_t size[], uint32_t num_entries) |
Updates a reference object with the supplied handles (pointers to memory). More... | |
VX_API_ENTRY vx_status VX_API_CALL | tivxReferenceExportHandle (const vx_reference ref, void *addr[], uint32_t size[], uint32_t max_entries, uint32_t *num_entries) |
Exports the handles from a reference object. More... | |
VX_API_ENTRY vx_reference VX_API_CALL | tivxCreateReferenceFromExemplar (vx_context context, vx_reference exemplar) |
Create reference from a exemplar object. More... | |
Interface to TI extension APIs.
Definition in file tivx.h.