Abstract interface for SIPL buffers.
Definition at line 131 of file NvSIPLClient.hpp.
Public Member Functions | |
virtual void | AddRef ()=0 |
Adds a reference. More... | |
virtual SIPLStatus | Release ()=0 |
Release a reference. More... | |
virtual SIPLStatus | AddNvSciSyncPrefence (const NvSciSyncFence &prefence)=0 |
Add an NvSciSync prefence. More... | |
virtual SIPLStatus | GetEOFNvSciSyncFence (NvSciSyncFence *postfence)=0 |
Retrieve the latest NvSciSync EOF fence. More... | |
|
pure virtual |
Add an NvSciSync prefence.
Add an NvSciSync prefence to be used with the next ISP or ICP operation. This function creates its own duplicate of the fence, so the caller must clear their copy of the fence by calling NvSciSyncFenceClear().
[in] | prefence | Prefence to be added. |
AddNvSciSyncPrefence() originates the following SIPLStatus return values:
NVSIPL_STATUS_OK | The function succeeds. |
NVSIPL_STATUS_ERROR | If internal NvSci fence operations fail. |
SIPLStatus | Other values of SIPLStatus are propagated. |
Usage considerations
|
pure virtual |
Adds a reference.
Adding a reference to the buffer ensures that this buffer is not re-used by the producer of the buffer.
Usage considerations
|
pure virtual |
Retrieve the latest NvSciSync EOF fence.
Retrieve the buffer's latest NvSciSync EOF fence associated with the engine's set NvSciSync EOF object. The caller must clear the returned fence by calling NvSciSyncFenceClear().
[out] | postfence | EOF fence being returned. |
GetEOFNvSciSyncFence() originates the following SIPLStatus return values:
NVSIPL_STATUS_OK | The function succeeds. |
NVSIPL_STATUS_ERROR | If internal NvSci fence operations fail. |
SIPLStatus | Other values of SIPLStatus are propagated. |
Usage considerations
|
pure virtual |
Release a reference.
Once the reference has been released as many times as the reference was added, it implies that the user has finished working with the buffer and the buffer is available for re-use by SIPL.
Release() originates the following SIPLStatus return values:
NVSIPL_STATUS_OK | The releasing operation succeeds. |
NVSIPL_STATUS_BAD_ARGUMENT | If the buffer is already released. |
SIPLStatus | Other values of SIPLStatus are propagated. |
Usage considerations