56 #ifndef NV_VPI_ARRAY_H
57 #define NV_VPI_ARRAY_H
118 typedef struct VPIArrayDataRec
120 #if NV_VPI_VERSION_API_AT_MOST(1, 1)
171 #if NV_VPI_VERSION_API_IS(1, 0)
172 __asm__(
".symver vpiArrayCreateHostMemWrapper,vpiArrayCreateHostMemWrapper@VPI_1.0");
271 #if NV_VPI_VERSION_API_IS(1, 0)
272 __asm__(
".symver vpiArrayGetFlags,vpiArrayGetFlags@VPI_1.0");
284 #if NV_VPI_VERSION_API_AT_MOST(1, 1)
Declaration of VPI status codes handling functions.
Defines all types needed for programming with VPI.
int32_t * sizePointer
Points to the number of elements in the array.
int32_t capacity
Maximum number of elements that the array can hold.
int32_t strideBytes
Size in bytes of each array element.
VPIArrayType type
Type of each array element.
void * data
Points to the first element of the array.
VPIStatus vpiArraySetSize(VPIArray array, int32_t size)
Set the array size in elements.
VPIStatus vpiArrayUnlock(VPIArray array)
Releases the lock on array object.
VPIStatus vpiArrayLock(VPIArray array, VPILockMode mode, VPIArrayData *arrayData)
Acquires the lock on array object and returns a pointer to array data.
void vpiArrayDestroy(VPIArray array)
Destroy an array instance.
VPIStatus vpiArrayGetStrideBytes(VPIArray array, int32_t *strideBytes)
Returns the array stride (distance between two consecutive elements) in bytes.
VPIArrayType
Array element formats.
VPIStatus vpiArrayGetFlags(VPIArray array, uint32_t *flags)
Returns the array flags.
VPIStatus vpiArrayGetType(VPIArray array, VPIArrayType *type)
Returns the array type.
VPIStatus vpiArrayCreate(int32_t capacity, VPIArrayType type, uint32_t flags, VPIArray *array)
Create an empty array instance.
VPIStatus vpiArrayGetSize(VPIArray array, int32_t *size)
Returns the array size in elements.
struct VPIArrayImpl * VPIArray
A handle to an array.
VPIStatus vpiArrayGetCapacity(VPIArray array, int32_t *capacity)
Returns the array capacity in elements.
VPIStatus vpiArrayInvalidate(VPIArray array)
Informs that the array's wrapped memory was updated outside VPI.
Stores information about array characteristics and content.
VPIStatus vpiArraySetWrappedHostMem(VPIArray array, const VPIArrayData *arrayData)
Redefines the wrapped host memory in an existing VPIArray wrapper.
VPIStatus vpiArrayCreateHostMemWrapper(const VPIArrayData *arrayData, uint32_t flags, VPIArray *array)
Create an array object by wrapping an existing host memory block.
VPILockMode
Defines the lock modes used by memory lock functions.