NVIDIA DRIVE OS Linux SDK API Reference

6.0.5 Release

Detailed Description

An abstract interface to notify event to event consumer and to register event handler of the event consumer client process.

Definition at line 342 of file nvscievent.h.

Data Fields

NvSciError(* SetHandler )(NvSciEventNotifier *thisEventNotifier, void(*callback)(void *cookie), void *cookie, uint32_t priority)
 Registers or unregisters a handler for a particular event notifier. More...
 
void(* Delete )(NvSciEventNotifier *thisEventNotifier)
 Unregisters any previously-registered event handler and delete this event notifier. More...
 

Field Documentation

◆ Delete

void(* NvSciEventNotifier::Delete) (NvSciEventNotifier *thisEventNotifier)

Unregisters any previously-registered event handler and delete this event notifier.

If the event handler's callback is concurrently executing in another thread, then this function will still return immediately, but the event handler will not be deleted until after the callback returns.

This function releases the NvSciEventNotifier and unregisters the event handler. It should be called when the NvSciEventNotifier is no longer required.

Parameters
[in]thisEventNotifierThe event handler to unregister and delete.
Precondition
NvSciEventLoopServiceCreateSafe() must be called. NvSciIpcGetEventNotifier() must be called.


Usage considerations

  • Allowed context for the API call
    • Interrupt: No
    • Signal handler: No
    • Thread-safe: Yes
    • Async/Sync: Sync
  • Required Privileges(QNX): None
  • API Group
    • Init: No
    • Runtime: No
    • De-Init: Yes

Definition at line 431 of file nvscievent.h.

◆ SetHandler

NvSciError(* NvSciEventNotifier::SetHandler) (NvSciEventNotifier *thisEventNotifier, void(*callback)(void *cookie), void *cookie, uint32_t priority)

Registers or unregisters a handler for a particular event notifier.

In general, handlers for distinct event notifiers may run concurrently with one another. The NvSciEventService promises however that no single event notifier will have its handler invoked concurrently.

Parameters
[in]eventNotifierThe event notifier that reports each event. Must not already be in use by another event loop.
[in]callbackThe function to call to handle the event. If NULL, handler will be unregistered.
[in]cookieThe parameter to pass to the callback.
[in]priorityThe priority of the handler relative to other handlers registered with eventLoop. Must be less than NV_SCI_EVENT_PRIORITIES.
Returns
NvSciError, the completion code of operations:
Precondition
NvSciEventLoopServiceCreateSafe() must be called. NvSciIpcGetEventNotifier() must be called.


Usage considerations

  • Allowed context for the API call
    • Interrupt: Yes
    • Signal handler: Yes
    • Thread-safe: Yes
    • Async/Sync: Sync
  • Required Privileges(QNX): None
  • API Group
    • Init: Yes
    • Runtime: No
    • De-Init: No

Definition at line 391 of file nvscievent.h.


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