|
CoreFlow 1.0.0
A modern orchestration and execution runtime
|
The Internal Target API. More...
Namespaces | |
| namespace | coreflow |
| The internal representation of a vx_array. | |
Classes | |
| struct | vx_target_funcs_t |
| The structure which holds all the target interface function pointers. More... | |
Macros | |
| #define | VX_INT_MAX_NUM_TARGETS (VX_TARGET_PRIORITY_MAX) |
| Defines the number of targets in the sample implementation. | |
Typedefs | |
| typedef vx_status(* | vx_target_init_f) (vx_target target) |
| The function which initializes the target. | |
| typedef vx_status(* | vx_target_deinit_f) (vx_target target) |
| The function which deinitializes the target. | |
| typedef vx_status(* | vx_target_supports_f) (vx_target target, vx_char targetName[VX_MAX_TARGET_NAME], vx_char kernelName[VX_MAX_TARGET_NAME], vx_uint32 *pIndex) |
| Allows OpenVX to query a target to see if it supports an additional abstract target type like "khronos.automatic" or "khronos.low_power" on a specific kernel. | |
| typedef vx_action(* | vx_target_process_f) (vx_target target, vx_node nodes[], vx_size startIndex, vx_size numNodes) |
| Processes the array of nodes supplied. | |
| typedef vx_status(* | vx_target_verify_f) (vx_target target, vx_node node) |
| Verifies the array of nodes supplied for target specific information. | |
| typedef vx_kernel(* | vx_target_addkernel_f) (vx_target target, const vx_char name[VX_MAX_KERNEL_NAME], vx_enum enumeration, vx_kernel_f func_ptr, vx_uint32 num_parameters, vx_kernel_validate_f validate, vx_kernel_input_validate_f input, vx_kernel_output_validate_f output, vx_kernel_initialize_f initialize, vx_kernel_deinitialize_f deinitialize) |
| Adds a kernel to a target. | |
Enumerations | |
| enum | vx_target_priority_e { VX_TARGET_PRIORITY_C_MODEL , VX_TARGET_PRIORITY_ORT , VX_TARGET_PRIORITY_MAX = 10 } |
| The priority list of targets. More... | |
Functions | |
| vx_status | coreflow::Context::loadTarget (const vx_char *targetName) |
| This allows the implementation to load a target interface into OpenVX. | |
| vx_status | coreflow::Context::unloadTarget (const vx_char *targetName) |
| This unloads a specific target in the targets list. | |
| vx_status | coreflow::Context::unloadTarget (vx_uint32 index, vx_bool unload_module) |
| This unloads a specific target in the targets list. | |
| coreflow::Target::Target (vx_context context, vx_reference scope) | |
| Construct a new Target object. | |
| coreflow::Target::~Target ()=default | |
| Destroy the Target object. | |
| static void | coreflow::Target::printTarget (vx_target target, vx_uint32 index) |
| Prints Target Information for Debugging. | |
| static vx_bool | coreflow::Target::matchTargetNameWithString (const vx_char *target_name, const vx_char *target_string) |
| Match target name with specified target string. | |
| static const vx_char * | coreflow::Target::reverse_strstr (const vx_char *string, const vx_char *substr) |
| Find the last occurrence of a substring in a string. | |
| vx_status | coreflow::Target::initializeTarget (vx_kernel_description_t *kernels[], vx_uint32 numkernels) |
| Initializes a target's kernels list. | |
| vx_status | coreflow::Target::deinitializeTarget () |
| Deinitializes a target's kernels list. | |
| vx_uint32 | coreflow::Target::findTargetIndex () |
| Find target's index within context. | |
| vx_kernel | coreflow::Target::findKernelByEnum (vx_enum enumeration) |
| Find kernel belonging to this target module by enum. | |
The Internal Target API.
| #define VX_INT_MAX_NUM_TARGETS (VX_TARGET_PRIORITY_MAX) |
#include <vx_internal.h>
Defines the number of targets in the sample implementation.
| typedef vx_kernel(* vx_target_addkernel_f) (vx_target target, const vx_char name[VX_MAX_KERNEL_NAME], vx_enum enumeration, vx_kernel_f func_ptr, vx_uint32 num_parameters, vx_kernel_validate_f validate, vx_kernel_input_validate_f input, vx_kernel_output_validate_f output, vx_kernel_initialize_f initialize, vx_kernel_deinitialize_f deinitialize) |
#include <vx_internal.h>
Adds a kernel to a target.
| [in] | target | The target object. |
| [in] | name | |
| [in] | enumeration | |
| [in] | func_ptr | |
| [in] | num_parameters | |
| [in] | validate | |
| [in] | input | |
| [in] | output | |
| [in] | initialize | |
| [in] | deinitialize |
#include <vx_internal.h>
The function which deinitializes the target.
| [in] | target | The pointer to the target context. |
#include <vx_internal.h>
The function which initializes the target.
| [in] | target | The pointer to the target context. |
| typedef vx_action(* vx_target_process_f) (vx_target target, vx_node nodes[], vx_size startIndex, vx_size numNodes) |
#include <vx_internal.h>
Processes the array of nodes supplied.
| [in] | target | The pointer to the target context. |
| [in] | nodes | The array of nodes pointers. |
| [in] | startIndex | The beginning index to process |
| [in] | numNodes | The number of nodes to process from startIndex. |
| typedef vx_status(* vx_target_supports_f) (vx_target target, vx_char targetName[VX_MAX_TARGET_NAME], vx_char kernelName[VX_MAX_TARGET_NAME], vx_uint32 *pIndex) |
#include <vx_internal.h>
Allows OpenVX to query a target to see if it supports an additional abstract target type like "khronos.automatic" or "khronos.low_power" on a specific kernel.
| [in] | target | The pointer to the target context. |
| [in] | targetName | The name of the abstract target. |
| [in] | kernelName | The name of the kernel. |
| [out] | pIndex | The pointer to the index of the kernel in the target's list if the kernel is supported (the function will return VX_SUCCESS). |
vx_status_e enumeration | VX_SUCCESS | The kernel is supported and the pIndex has been set. |
| VX_ERROR_NOT_SUPPORTED | the kernel is not supported as stated. |
#include <vx_internal.h>
Verifies the array of nodes supplied for target specific information.
| [in] | target | The pointer to the target context. |
| [in] | node | The node to verify. |
| enum vx_target_priority_e |
#include <vx_internal.h>
The priority list of targets.
| vx_status coreflow::Target::deinitializeTarget | ( | ) |
#include <vx_target.h>
Deinitializes a target's kernels list.
#include <vx_target.h>
Find kernel belonging to this target module by enum.
| enumeration | enum of kernel to search for |
| vx_uint32 coreflow::Target::findTargetIndex | ( | ) |
| vx_status coreflow::Target::initializeTarget | ( | vx_kernel_description_t * | kernels[], |
| vx_uint32 | numkernels ) |
#include <vx_target.h>
Initializes a target's kernels list.
| [in] | kernels | The array of kernels that the target supports. |
| [in] | numkernels | The length of the kernels list. |
#include <vx_context.h>
This allows the implementation to load a target interface into OpenVX.
| [in] | targetName | The shortened name of the target module. |
|
static |
#include <vx_target.h>
Match target name with specified target string.
| [in] | target_name | The target name string. |
| [in] | target_string | The target string. |
| vx_true_e | If string matches, vx_false_e if not. |
#include <vx_target.h>
Prints Target Information for Debugging.
|
static |
#include <vx_target.h>
Find the last occurrence of a substring in a string.
| string | The string to search in. |
| substr | The substring to search for. |
| coreflow::Target::Target | ( | vx_context | context, |
| vx_reference | scope ) |
#include <vx_target.h>
Construct a new Target object.
| context | The context associated with this obj |
| scope | The parent ref of this obj |
#include <vx_context.h>
This unloads a specific target in the targets list.
| [in] | targetName | The string name of the target module. |
#include <vx_context.h>
This unloads a specific target in the targets list.
| [in] | index | The index into the context's target array. |
| [in] | unload_module | If true, the module will be unloaded. |
|
default |
#include <vx_target.h>
Destroy the Target object.