NVIDIA DRIVE OS Linux SDK API Reference

5.2.6 Release
For Test and Development only

Detailed Description

An abstract interface that event consumer can wait for events using event notifier in event loop.

Definition at line 412 of file nvscievent.h.

Collaboration diagram for NvSciEventLoopService:

Data Fields

NvSciEventService EventService
 
NvSciError(* WaitForEvent )(NvSciEventNotifier *eventNotifier, int64_t microseconds)
 Waits up to a configurable timeout for a particular event notification, servicing events with configured callbacks in the interim. More...
 
NvSciError(* WaitForMultipleEvents )(NvSciEventNotifier *const *eventNotifierArray, size_t eventNotifierCount, int64_t microseconds, bool *newEventArray)
 Waits up to a configurable timeout for any of a set of particular event notifications, servicing events with configured callbacks in the interim. More...
 

Field Documentation

◆ EventService

NvSciEventService NvSciEventLoopService::EventService

Definition at line 413 of file nvscievent.h.

◆ WaitForEvent

NvSciError(* NvSciEventLoopService::WaitForEvent) (NvSciEventNotifier *eventNotifier, int64_t microseconds)

Waits up to a configurable timeout for a particular event notification, servicing events with configured callbacks in the interim.

Any asynchronous event notifiers that are pending before calling this function will be claimed by some thread for handling before this function returns.

eventNotifier must have been created through EventService.

Note
This function must not be called from an event notifier callback.

This function waits up to a configurable timeout to receive a pulse event which is configured on NvSciQnxEventService_CreateNativeEventNotifier(). eventNotifier must have been created through EventService before calling.

Parameters
[in]eventNotifierNvSciEventNotifier object pointer.
[in]microsecondsA 64-bit integer timeout in microsecond. Set to -1 for an infinite timeout, for example, the value NV_SCI_EVENT_INFINITE_WAIT.
Returns
NvSciError, the completion code of operations:


Usage considerations

  • Allowed context for the API call
    • Interrupt: No
    • Signal handler(QNX): No
    • Thread: Yes
  • Is thread safe: Yes
  • Required Privileges(QNX): None
  • API Group
    • Initialization: No
    • Runtime: Yes
    • De-initialization: No

Definition at line 473 of file nvscievent.h.

◆ WaitForMultipleEvents

NvSciError(* NvSciEventLoopService::WaitForMultipleEvents) (NvSciEventNotifier *const *eventNotifierArray, size_t eventNotifierCount, int64_t microseconds, bool *newEventArray)

Waits up to a configurable timeout for any of a set of particular event notifications, servicing events with configured callbacks in the interim.

Any asynchronous event notifiers that are pending before calling this function will be claimed by some thread for handling before this function returns.

Each event notifier in eventNotifierArray must have been created through EventService.

On a successful return, for each integer i in the range [0, eventNotifierCount], newEventArray[i] will be true only if eventNotifierArray[i] had a new event.

Note
This function must not be called from an event notifier callback.
Parameters
[in]eventNotifierArrayArray of NvSciEventNotifier object pointers.
[in]eventNotifierCountEvent notifier count in eventNotifierArray.
[in]microsecondsA 64-bit integer timeout in microsecond. Set to -1 for infinite timeout, for example, the value NV_SCI_EVENT_INFINITE_WAIT.
[out]newEventArrayArray of event occurrence.
Returns
NvSciError, the completion code of operations:


Usage considerations

  • Allowed context for the API call
    • Interrupt: No
    • Signal handler(QNX): No
    • Thread: Yes
  • Is thread safe: Yes
  • Required Privileges(QNX): None
  • API Group
    • Initialization: No
    • Runtime: Yes
    • De-initialization: No

Definition at line 525 of file nvscievent.h.


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