NVIDIA DRIVE OS Linux SDK API Reference

6.0.9 Release
nvsipl::INvSIPLFrameCompletionQueue Class Referenceabstract

Detailed Description

The interface to the frame completion queue.

Definition at line 336 of file NvSIPLPipelineMgr.hpp.

Public Member Functions

virtual SIPLStatus Get (INvSIPLClient::INvSIPLBuffer *&item, size_t const timeoutUsec)=0
 Retrieve the next item from the queue. More...
 
virtual size_t GetCount () const =0
 Return the current queue length. More...
 

Protected Member Functions

 INvSIPLFrameCompletionQueue ()=default
 
virtual ~INvSIPLFrameCompletionQueue ()=default
 

Constructor & Destructor Documentation

◆ INvSIPLFrameCompletionQueue()

nvsipl::INvSIPLFrameCompletionQueue::INvSIPLFrameCompletionQueue ( )
protecteddefault

◆ ~INvSIPLFrameCompletionQueue()

virtual nvsipl::INvSIPLFrameCompletionQueue::~INvSIPLFrameCompletionQueue ( )
protectedvirtualdefault

Member Function Documentation

◆ Get()

virtual SIPLStatus nvsipl::INvSIPLFrameCompletionQueue::Get ( INvSIPLClient::INvSIPLBuffer *&  item,
size_t const  timeoutUsec 
)
pure virtual

Retrieve the next item from the queue.

The buffer returned will have a single reference that must be released by the client when it has finished with the buffer. This is done by calling item->Release().

Precondition
This function must be called after INvSIPLCamera::Init() and before INvSIPLCamera::Deinit().
Parameters
[out]itemThe item retrieved from the queue.
[in]timeoutUsecThe timeout of the request, in microseconds. If the queue is empty at the time of the call, this method will wait up to timeoutUsec microseconds for a new item to arrive in the queue and be returned.
Return values
NVSIPL_STATUS_OKif item has been successfully retrieved from the queue.
NVSIPL_STATUS_TIMED_OUTif an item was not available within the timeout interval.
NVSIPL_STATUS_EOFif the queue has been shut down. In this case, no further calls can be made on the queue object.
NVSIPL_STATUS_ERRORif a system error occurred.


Usage considerations

  • Allowed context for the API call
    • Interrupt handler: No
    • Signal handler: No
    • Thread-safe: Yes
    • Re-entrant: No
    • Async/Sync: Sync
  • Required privileges: Yes, with the following conditions:
    • Grants: nonroot, allow
    • Abilities: public_channel
    • Application needs to have access to the SGIDs that SIPL depends on as mentioned in the NVIDIA DRIVE OS Safety Developer Guide
  • API group
    • Init: No
    • Runtime: Yes
    • De-Init: No

◆ GetCount()

virtual size_t nvsipl::INvSIPLFrameCompletionQueue::GetCount ( ) const
pure virtual

Return the current queue length.

Returns
the number of elements currently in the queue.
Precondition
This function must be called after INvSIPLCamera::Init() and before INvSIPLCamera::Deinit().


Usage considerations

  • Allowed context for the API call
    • Interrupt handler: No
    • Signal handler: No
    • Thread-safe: Yes
    • Re-entrant: Yes
    • Async/Sync: Sync
  • Required privileges: Yes, with the following conditions:
    • Grants: nonroot, allow
    • Abilities: public_channel
    • Application needs to have access to the SGIDs that SIPL depends on as mentioned in the NVIDIA DRIVE OS Safety Developer Guide
  • API group
    • Init: No
    • Runtime: Yes
    • De-Init: No

The documentation for this class was generated from the following file: