Submits a user-defined function to be executed on the stream. More...
Typedefs | |
typedef void(* | VPIHostFunction) (void *hostData) |
Pointer to a host function. More... | |
typedef VPIStatus(* | VPIHostFunctionEx) (VPIStream stream, VPIStatus status, void *hostData) |
Pointer to a host function that handles stream status. More... | |
Functions | |
VPIStatus | vpiSubmitHostFunction (VPIStream stream, VPIHostFunction hostFunc, void *hostData) |
Pushes a command that will invoke a custom host-side function after all prior commands have been processed. More... | |
VPIStatus | vpiSubmitHostFunctionEx (VPIStream stream, VPIHostFunctionEx hostFunc, void *hostData) |
Pushes a command that will invoke a custom host-side function after all prior commands have been processed. More... | |
Submits a user-defined function to be executed on the stream.
typedef void(* VPIHostFunction) (void *hostData) |
#include </opt/nvidia/vpi2/include/vpi/HostFunction.h>
Pointer to a host function.
[in] | hostData | Callback data passed to submission function. |
Definition at line 81 of file HostFunction.h.
#include </opt/nvidia/vpi2/include/vpi/HostFunction.h>
Pointer to a host function that handles stream status.
Most often the function will return the same status
passed. In some scenarios some other status values can be returned. Specifically, if status
is VPI_SUCCESS and an error status is returned, the stream will be set to error state. Conversely, if status
is not VPI_SUCCESS and VPI_SUCCESS is returned, the stream's error state will be reset. Further tasks in it will be executed.
[in] | stream | Stream that is executing the host function. |
[in] | status | Status of the last operation executed by the stream. |
[in] | hostData | Callback data passed to submission function. |
status
is returned. Definition at line 126 of file HostFunction.h.
VPIStatus vpiSubmitHostFunction | ( | VPIStream | stream, |
VPIHostFunction | hostFunc, | ||
void * | hostData | ||
) |
#include </opt/nvidia/vpi2/include/vpi/HostFunction.h>
Pushes a command that will invoke a custom host-side function after all prior commands have been processed.
The execution of commands submitted after this call is suspended until the callback is finished. The function will be executed at most once. It won't be executed if a previous stream task failed.
This operation will implicitly flush the stream.
[in] | stream | Stream that will execute the host function call.
|
[in] | hostFunc | Host function to be executed.
|
[in] | hostData | Pointer that will be passed unchanged to the user function when it's called. |
VPI_ERROR_INVALID_ARGUMENT | hostFunc is NULL. |
VPI_ERROR_INVALID_ARGUMENT | hostData is NULL. |
VPI_SUCCESS | Operation executed successfully. |
VPIStatus vpiSubmitHostFunctionEx | ( | VPIStream | stream, |
VPIHostFunctionEx | hostFunc, | ||
void * | hostData | ||
) |
#include </opt/nvidia/vpi2/include/vpi/HostFunction.h>
Pushes a command that will invoke a custom host-side function after all prior commands have been processed.
The execution of commands submitted after this call is suspended until the callback is finished. The function is guaranteed to be executed exactly once. In case the stream is in error state, the corresponding error status will be passed to hostFunc.
This operation will implicitly flush the stream.
[in] | stream | Stream that will execute the host function call.
|
[in] | hostFunc | Host function to be executed.
|
[in] | hostData | Pointer that will be passed unchanged to the user function. |
VPI_ERROR_INVALID_ARGUMENT | stream is NULL or doesn't correspond to a VPIStream instance. |
VPI_ERROR_INVALID_ARGUMENT | hostFunc is NULL. |
VPI_SUCCESS | Operation executed successfully. |