VPI - Vision Programming Interface

0.3.7 Release

Types.h File Reference
#include <stdint.h>
+ Include dependency graph for Types.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  VPIParallelForConfig
 Stores the ParallelFor configuration. More...
 
struct  VPIKeypoint
 Stores a keypoint coordinate. More...
 
struct  VPIHomographyTransform2D
 Stores a generic 2D homography transform. More...
 
struct  VPIBoundingBox
 Stores a generic 2D bounding box. More...
 
struct  VPIKLTTrackedBoundingBox
 Stores a bounding box that is being tracked by KLT Tracker. More...
 

Macros

Memory creation flags.

These flags can be used when creating images, pyramids or arrays.

#define VPI_BACKEND_DISABLE_PVA   (0x01)
 Memory won't be used in a PVA stream.
 
#define VPI_BACKEND_DISABLE_CPU   (0x02)
 Memory won't be used in a CPU stream.
 
#define VPI_BACKEND_DISABLE_CUDA   (0x04)
 Memory won't be used in a CUDA stream.
 
#define VPI_BACKEND_ONLY_PVA   (VPI_BACKEND_DISABLE_CUDA | VPI_BACKEND_DISABLE_CPU)
 Memory will only be used in a PVA stream.
 
#define VPI_BACKEND_ONLY_CPU   (VPI_BACKEND_DISABLE_PVA | VPI_BACKEND_DISABLE_CUDA)
 Memory will only be used in a CPU stream.
 
#define VPI_BACKEND_ONLY_CUDA   (VPI_BACKEND_DISABLE_PVA | VPI_BACKEND_DISABLE_CPU)
 Memory will only be used in a CUDA stream.
 

Typedefs

typedef void(* VPIParallelTask) (int taskId, int threadId, void *vpiData)
 Parallel task function pointer type.
 
typedef void(* VPIParallelForCallback) (VPIParallelTask task, int taskCount, void *vpiData, void *userData)
 Parallel for callback function pointer type. More...
 
typedef void * VPINativeThreadHandle
 A handle to OS-specific thread handle.
 
typedef struct VPIArrayImpl * VPIArray
 A handle to an array.
 
typedef struct VPIContextImpl * VPIContext
 A handle to a context.
 
typedef struct VPIEventImpl * VPIEvent
 A handle to an event.
 
typedef struct VPIStreamImpl * VPIStream
 A handle to a stream.
 
typedef struct VPIImageImpl * VPIImage
 A handle to an image.
 
typedef struct VPIPyramidImpl * VPIPyramid
 A handle to an image pyramid.
 
typedef struct VPIPayloadImpl * VPIPayload
 A handle to an algorithm payload.
 
typedef VPIStatus(* VPIUserFunction) (void *)
 Pointer to user function. More...
 
typedef float VPICameraIntrinsic[2][3]
 Camera intrinsic matrix. More...
 
typedef float VPICameraExtrinsic[3][4]
 Camera extrinsic matrix. More...
 
typedef float VPIPerspectiveTransform[3][3]
 Represents a 2D perspective transform. More...
 

Enumerations

enum  VPIImageType {
  VPI_IMAGE_TYPE_INVALID = 0,
  VPI_IMAGE_TYPE_U8,
  VPI_IMAGE_TYPE_S8,
  VPI_IMAGE_TYPE_U16,
  VPI_IMAGE_TYPE_S16,
  VPI_IMAGE_TYPE_NV12,
  VPI_IMAGE_TYPE_RGB8,
  VPI_IMAGE_TYPE_RGBA8,
  VPI_IMAGE_TYPE_F32,
  VPI_IMAGE_TYPE_2F32,
  VPI_IMAGE_TYPE_BGR8,
  VPI_IMAGE_TYPE_BGRA8,
  VPI_IMAGE_TYPE_Y8 = VPI_IMAGE_TYPE_U8,
  VPI_IMAGE_TYPE_Y8I = VPI_IMAGE_TYPE_S8,
  VPI_IMAGE_TYPE_Y16 = VPI_IMAGE_TYPE_U16,
  VPI_IMAGE_TYPE_Y16I = VPI_IMAGE_TYPE_S16,
  VPI_IMAGE_TYPE_1C_F32 = VPI_IMAGE_TYPE_F32,
  VPI_IMAGE_TYPE_2C_F32 = VPI_IMAGE_TYPE_2F32
}
 Image formats. More...
 
enum  VPIPixelType {
  VPI_PIXEL_TYPE_DEFAULT = 0,
  VPI_PIXEL_TYPE_INVALID,
  VPI_PIXEL_TYPE_U8,
  VPI_PIXEL_TYPE_S8,
  VPI_PIXEL_TYPE_U16,
  VPI_PIXEL_TYPE_S16,
  VPI_PIXEL_TYPE_2U8,
  VPI_PIXEL_TYPE_3U8,
  VPI_PIXEL_TYPE_4U8,
  VPI_PIXEL_TYPE_F32,
  VPI_PIXEL_TYPE_2F32,
  VPI_PIXEL_TYPE_1C_U8 = VPI_PIXEL_TYPE_U8,
  VPI_PIXEL_TYPE_1C_S8 = VPI_PIXEL_TYPE_S8,
  VPI_PIXEL_TYPE_1C_U16 = VPI_PIXEL_TYPE_U16,
  VPI_PIXEL_TYPE_1C_S16 = VPI_PIXEL_TYPE_S16,
  VPI_PIXEL_TYPE_2C_U8 = VPI_PIXEL_TYPE_2U8,
  VPI_PIXEL_TYPE_3C_U8 = VPI_PIXEL_TYPE_3U8,
  VPI_PIXEL_TYPE_4C_U8 = VPI_PIXEL_TYPE_4U8,
  VPI_PIXEL_TYPE_1C_F32 = VPI_PIXEL_TYPE_F32,
  VPI_PIXEL_TYPE_2C_F32 = VPI_PIXEL_TYPE_2F32
}
 Pixel formats. More...
 
enum  VPIBoundaryCond {
  VPI_BOUNDARY_COND_ZERO,
  VPI_BOUNDARY_COND_CLAMP
}
 Image boundary condition specify how pixel values outside of the image domain should be constructed. More...
 
enum  VPIArrayType {
  VPI_ARRAY_TYPE_INVALID = 0,
  VPI_ARRAY_TYPE_S8,
  VPI_ARRAY_TYPE_U8,
  VPI_ARRAY_TYPE_S16,
  VPI_ARRAY_TYPE_U16,
  VPI_ARRAY_TYPE_U32,
  VPI_ARRAY_TYPE_KEYPOINT,
  VPI_ARRAY_TYPE_HOMOGRAPHY_TRANSFORM_2D,
  VPI_ARRAY_TYPE_KLT_TRACKED_BOUNDING_BOX
}
 Array element formats. More...
 
enum  VPIInterpolationType {
  VPI_INTERP_NEAREST,
  VPI_INTERP_LINEAR_PRECISE,
  VPI_INTERP_LINEAR_FAST,
  VPI_INTERP_LINEAR = VPI_INTERP_LINEAR_FAST,
  VPI_INTERP_CATMULL_ROM_PRECISE,
  VPI_INTERP_CATMULL_ROM_FAST,
  VPI_INTERP_CATMULL_ROM = VPI_INTERP_CATMULL_ROM_FAST
}
 Interpolation types supported by several algorithms. More...
 
enum  VPIConversionPolicy {
  VPI_CONVERSION_INVALID = 0,
  VPI_CONVERSION_CAST,
  VPI_CONVERSION_CLAMP
}
 Policy used when converting between image types. More...
 
enum  VPILockMode {
  VPI_LOCK_READ = 1,
  VPI_LOCK_WRITE = 2,
  VPI_LOCK_READ_WRITE = 3
}
 Defines the lock modes used by memory lock functions. More...
 
enum  VPIStatus {
  VPI_SUCCESS = 0,
  VPI_ERROR_NOT_IMPLEMENTED,
  VPI_ERROR_INVALID_ARGUMENT,
  VPI_ERROR_INVALID_IMAGE_TYPE,
  VPI_ERROR_INVALID_ARRAY_TYPE,
  VPI_ERROR_INVALID_PYRAMID_TYPE,
  VPI_ERROR_INVALID_PAYLOAD_TYPE,
  VPI_ERROR_INVALID_OPERATION,
  VPI_ERROR_INVALID_CONTEXT,
  VPI_ERROR_DEVICE,
  VPI_ERROR_NOT_READY,
  VPI_ERROR_BUFFER_LOCKED,
  VPI_ERROR_OUT_OF_MEMORY,
  VPI_ERROR_INTERNAL
}
 Status codes. More...
 
enum  VPIDeviceType {
  VPI_DEVICE_TYPE_INVALID,
  VPI_DEVICE_TYPE_CPU,
  VPI_DEVICE_TYPE_CUDA,
  VPI_DEVICE_TYPE_PVA
}
 Device types. More...
 

Detailed Description

Defines all types needed for programming with VPI.

Definition in file Types.h.

Enumeration Type Documentation

◆ VPIArrayType

Array element formats.

Enumerator
VPI_ARRAY_TYPE_INVALID 

Signal type conversion errors.

VPI_ARRAY_TYPE_S8 

signed 8-bit.

VPI_ARRAY_TYPE_U8 

unsigned 8-bit.

VPI_ARRAY_TYPE_S16 

signed 16-bit.

VPI_ARRAY_TYPE_U16 

unsigned 16-bit.

VPI_ARRAY_TYPE_U32 

unsigned 32-bit.

VPI_ARRAY_TYPE_KEYPOINT 

VPIKeypoint element.

VPI_ARRAY_TYPE_HOMOGRAPHY_TRANSFORM_2D 

VPIHomographyTransform2D element.

VPI_ARRAY_TYPE_KLT_TRACKED_BOUNDING_BOX 

VPIKLTTrackedBoundingBox element.

Definition at line 277 of file Types.h.