The OpenVX Specification  a73e458
Basic Features

Detailed Description

The basic parts of OpenVX needed for computation.

Types in OpenVX intended to be derived from the C99 Section 7.18 standard definition of fixed width types.

Modules

 Objects
 Defines the basic objects within OpenVX.
 
 Macros and Constants
 Macros and constants not included in other sections.
 

Data Structures

struct  vx_coordinates2d_t
 The 2D Coordinates structure. More...
 
struct  vx_coordinates3d_t
 The 3D Coordinates structure. More...
 
struct  vx_keypoint_t
 The keypoint data structure. More...
 
struct  vx_rectangle_t
 The rectangle data structure that is shared with the users. The area of the rectangle can be computed as (end_x-start_x)*(end_y-start_y). More...
 

Macros

#define VX_MAX_LOG_MESSAGE_LEN   (1024)
 Defines the length of a message buffer to copy from the log, including the trailing zero [R01653].
 
#define VX_VERSION   VX_VERSION_1_1
 Defines the OpenVX Version Number [R01655].
 
#define VX_VERSION_1_0   (VX_VERSION_MAJOR(1) | VX_VERSION_MINOR(0))
 Defines the predefined version number for 1.0.
 
#define VX_VERSION_1_1   (VX_VERSION_MAJOR(1) | VX_VERSION_MINOR(1))
 Defines the predefined version number for 1.1.
 
#define VX_VERSION_MAJOR(x)   (((x) & 0xFF) << 8)
 Defines the major version number macro.
 
#define VX_VERSION_MINOR(x)   (((x) & 0xFF) << 0)
 Defines the minor version number macro.
 

Typedefs

typedef char vx_char
 An 8 bit ASCII character.
 
typedef uint32_t vx_df_image
 Used to hold a VX_DF_IMAGE code to describe the pixel format and color space.
 
typedef int32_t vx_enum
 Sets the standard enumeration type size to be a fixed quantity. More...
 
typedef float vx_float32
 A 32-bit float value.
 
typedef double vx_float64
 A 64-bit float value (aka double).
 
typedef int16_t vx_int16
 A 16-bit signed value.
 
typedef int32_t vx_int32
 A 32-bit signed value.
 
typedef int64_t vx_int64
 A 64-bit signed value.
 
typedef int8_t vx_int8
 An 8-bit signed value.
 
typedef size_t vx_size
 A wrapper of size_t to keep the naming convention uniform.
 
typedef vx_enum vx_status
 A formal status type with known fixed size. More...
 
typedef uint16_t vx_uint16
 A 16-bit unsigned value.
 
typedef uint32_t vx_uint32
 A 32-bit unsigned value.
 
typedef uint64_t vx_uint64
 A 64-bit unsigned value.
 
typedef uint8_t vx_uint8
 An 8-bit unsigned value.
 

Enumerations

enum  vx_bool {
  vx_false_e = 0,
  vx_true_e
}
 A Boolean value. This allows 0 to be FALSE, as it is in C, and any non-zero to be TRUE. More...
 

Functions

vx_status VX_API_CALL vxGetStatus (vx_reference reference)
 Provides a generic API to return status values from Object constructors if they fail. More...
 

Data Structure Documentation

◆ vx_coordinates2d_t

struct vx_coordinates2d_t

The 2D Coordinates structure.

Definition at line 1685 of file vx_types.h.

Data Fields
vx_uint32 x The X coordinate.
vx_uint32 y The Y coordinate.

◆ vx_coordinates3d_t

struct vx_coordinates3d_t

The 3D Coordinates structure.

Definition at line 1693 of file vx_types.h.

Data Fields
vx_uint32 x The X coordinate.
vx_uint32 y The Y coordinate.
vx_uint32 z The Z coordinate.

◆ vx_keypoint_t

struct vx_keypoint_t

The keypoint data structure.

Definition at line 1662 of file vx_types.h.

Data Fields
vx_int32 x The x coordinate.
vx_int32 y The y coordinate.
vx_float32 strength The strength of the keypoint. Its definition is specific to the corner detector.
vx_float32 scale Initialized to 0 by corner detectors.
vx_float32 orientation Initialized to 0 by corner detectors.
vx_int32 tracking_status A zero indicates a lost point. Initialized to 1 by corner detectors.
vx_float32 error A tracking method specific error. Initialized to 0 by corner detectors.

◆ vx_rectangle_t

struct vx_rectangle_t

The rectangle data structure that is shared with the users. The area of the rectangle can be computed as (end_x-start_x)*(end_y-start_y).

Definition at line 1675 of file vx_types.h.

Data Fields
vx_uint32 start_x The Start X coordinate.
vx_uint32 start_y The Start Y coordinate.
vx_uint32 end_x The End X coordinate.
vx_uint32 end_y The End Y coordinate.

Typedef Documentation

◆ vx_enum

typedef int32_t vx_enum

Sets the standard enumeration type size to be a fixed quantity.

All enumerable fields must use this type as the container to enforce enumeration ranges and sizeof() operations.

Definition at line 160 of file vx_types.h.

◆ vx_status

typedef vx_enum vx_status

A formal status type with known fixed size.

See also
The vx_status Constants

Definition at line 434 of file vx_types.h.

Enumeration Type Documentation

◆ vx_bool

enum vx_bool

A Boolean value. This allows 0 to be FALSE, as it is in C, and any non-zero to be TRUE.

if (ret) printf("true!\n");
ret = vx_false_e;
if (!ret) printf("false!\n");

This would print both strings.

Enumerator
vx_false_e 

The "false" value.

vx_true_e 

The "true" value.

Definition at line 301 of file vx_types.h.

Function Documentation

◆ vxGetStatus()

vx_status VX_API_CALL vxGetStatus ( vx_reference  reference)

Provides a generic API to return status values from Object constructors if they fail.

Note
Users do not need to strictly check every object creator as the errors should properly propagate and be detected during verification time or run-time [R00474].
vx_image img = vxCreateImage(context, 639, 480, VX_DF_IMAGE_UYVY);
// status == VX_ERROR_INVALID_DIMENSIONS
Precondition
Appropriate Object Creator function.
Postcondition
Appropriate Object Release function.
Parameters
[in]referenceThe reference to check for construction errors [R00475].
Returns
A The vx_status Constants value.
Return values
VX_SUCCESSNo errors; any other value indicates failure [R00476].
*Some error occurred, please check enumeration list and constructor.