NVIDIA DriveOS Linux NSR SDK API Reference

7.0.3.0 Release
Signal Status

Detailed Description

Defines of signal status types, and encoder/decorder functions.

Typedefs

typedef uint8_t dwSignalValidity
 Signal validity status. More...
 

Enumerations

enum  dwSignalStatus {
  DW_SIGNAL_STATUS_INIT = 0,
  DW_SIGNAL_STATUS_LAST_VALID = 1,
  DW_SIGNAL_STATUS_ERROR = 2,
  DW_SIGNAL_STATUS_OUT_OF_BOUNDS_ERROR = 3,
  DW_SIGNAL_STATUS_MAX_ENUM_VALUE = 3
}
 Overall status of the signal. More...
 
enum  dwSignalTimeoutStatus {
  DW_SIGNAL_TIMEOUT_NEVER_RECEIVED = 0,
  DW_SIGNAL_TIMEOUT_NONE = 1,
  DW_SIGNAL_TIMEOUT_OVERDUE = 2,
  DW_DEPRECATED_ENUM =("REL_23_09") = 3,
  DW_SIGNAL_TIMEOUT_DELAYED = 4,
  DW_SIGNAL_TIMEOUT_MAX_ENUM_VALUE = 4
}
 Timeout related status of the signal. More...
 
enum  dwSignalE2EStatus {
  DW_SIGNAL_E2E_NO_ERROR = 0,
  DW_SIGNAL_E2E_SEQ_ERROR = 1,
  DW_SIGNAL_E2E_HASH_ERROR = 2,
  DW_DEPRECATED_ENUM =("REL_23_09") = 3,
  DW_SIGNAL_E2E_MAX_ENUM_VALUE = 3
}
 End-2-End related status of the signal. More...
 

Functions

DW_API_PUBLIC dwStatus dwSignal_encodeSignalValidity (dwSignalValidity *validity, dwSignalStatus const status, dwSignalTimeoutStatus const timeoutStatus, dwSignalE2EStatus const e2eStatus)
 Encode dwSignal*Status values into a dwSignalValidity value. More...
 
DW_API_PUBLIC dwStatus dwSignal_decodeSignalValidity (dwSignalStatus *status, dwSignalTimeoutStatus *timeoutStatus, dwSignalE2EStatus *e2eStatus, dwSignalValidity const validity)
 Decode dwSignal*Status values from a dwSignalValidity value. More...
 
DW_API_PUBLIC dwStatus dwSignal_checkSignalValidity (dwSignalValidity const validity)
 Checks whether dwSignal*Status values contains a valid signal. More...
 

Typedef Documentation

◆ dwSignalValidity

typedef uint8_t dwSignalValidity

Signal validity status.

This is an encoded 8-bit value containing below information:

  1. Signal value validity status. Definition and meaning see dwSignalStatus
  2. Signal timeout status. Definition and meaning see dwSignalTimeoutStatus
  3. Signal end to end transportation status. Definition and meaning see dwSignalE2EStatus API function dwSignal_encodeSignalValidity returns such an encoded dwSignalValidity value from its signal value validity status, signal timeout status and its end to end status
    API function dwSignal_decodeSignalValidity accepts an encoded signal validity status value and outputs its signal value validity status, signal timeout status and its end to end status
    The final value is a bitwise concatenation of individual enums.
    The following notation of (a,b,c) defines an error as (a) | (b << 2) | (c << 5)
    Valid ranges for component a, b and c for above notations are:

Definition at line 52 of file SignalStatus.h.

Enumeration Type Documentation

◆ dwSignalE2EStatus

End-2-End related status of the signal.

Note
FUTURE_DEPRECATED_24_06 - dwSignalE2EStatus may be deprecated in a future release. dwSignalE2EStatus is no longer used except by egomotion. Signal level E2E information is not required by NDAS.
Enumerator
DW_SIGNAL_E2E_NO_ERROR 

No E2E error.

Either no E2E error or E2E protection is disabled. Valid

DW_SIGNAL_E2E_SEQ_ERROR 

E2E Sequence error.

Signal arrived out of sequence or having skipped values. Not Valid

DW_SIGNAL_E2E_HASH_ERROR 

Hash error.

Signal did not verify against hash properly. Not Valid

DW_DEPRECATED_ENUM 

No timeout information.

No E2E information.

Valid

DW_SIGNAL_E2E_MAX_ENUM_VALUE 

Signal enum max value.

Definition at line 103 of file SignalStatus.h.

◆ dwSignalStatus

Overall status of the signal.

Enumerator
DW_SIGNAL_STATUS_INIT 

Initial value.

Means that the signal has never had an assigned value. Not Valid

DW_SIGNAL_STATUS_LAST_VALID 

Signal contains the last valid value that was set.

Valid

DW_SIGNAL_STATUS_ERROR 

Signal value is in error.

Not Valid

DW_SIGNAL_STATUS_OUT_OF_BOUNDS_ERROR 

Signal value is outside acceptable bounds.

Not Valid

DW_SIGNAL_STATUS_MAX_ENUM_VALUE 

Signal enum max value.

Definition at line 57 of file SignalStatus.h.

◆ dwSignalTimeoutStatus

Timeout related status of the signal.

Enumerator
DW_SIGNAL_TIMEOUT_NEVER_RECEIVED 

This signal has never been received.

Not Valid

DW_SIGNAL_TIMEOUT_NONE 

No timeout error.

Valid

DW_SIGNAL_TIMEOUT_OVERDUE 

Signal is overdue.

This means that the signal is late outside of an acceptable time window. The acceptable time window is twice the specified signal time, within this window, the signal is DW_SIGNAL_TIMEOUT_DELAYED Not Valid

DW_DEPRECATED_ENUM 

No timeout information.

No E2E information.

Valid

DW_SIGNAL_TIMEOUT_DELAYED 

Signal was received before, but is not received for more than twice the specified cycle time.

Valid(checkSignalValidity), Invalid(checkSignalValidityStricter)

DW_SIGNAL_TIMEOUT_MAX_ENUM_VALUE 

Signal enum max value.

Definition at line 77 of file SignalStatus.h.

Function Documentation

◆ dwSignal_checkSignalValidity()

DW_API_PUBLIC dwStatus dwSignal_checkSignalValidity ( dwSignalValidity const  validity)

Checks whether dwSignal*Status values contains a valid signal.

Parameters
[in]validityEncoded signal validity data to check
Returns
DW_SUCCESS - If input signal is a valid signal
DW_NOT_AVAILABLE - If input signal is an invalid signal
DW_INVALID_ARGUMENT - If parameter validity contains invalid values
API Group
  • Init: Yes
  • Runtime: Yes
  • De-Init: Yes

◆ dwSignal_decodeSignalValidity()

DW_API_PUBLIC dwStatus dwSignal_decodeSignalValidity ( dwSignalStatus status,
dwSignalTimeoutStatus timeoutStatus,
dwSignalE2EStatus e2eStatus,
dwSignalValidity const  validity 
)

Decode dwSignal*Status values from a dwSignalValidity value.

Parameters
[out]statusSignal status after decoding
[out]timeoutStatusSignal timeout status after decoding
[out]e2eStatusSignal E2E status after decoding
[in]validityEncoded signal validity data to decode
Returns
DW_SUCCESS All three output statuses have been decoded from validity successfully.
DW_INVALID_ARGUMENT - If validity contains invalid data or if one of the statuses is null
API Group
  • Init: Yes
  • Runtime: Yes
  • De-Init: Yes

◆ dwSignal_encodeSignalValidity()

DW_API_PUBLIC dwStatus dwSignal_encodeSignalValidity ( dwSignalValidity validity,
dwSignalStatus const  status,
dwSignalTimeoutStatus const  timeoutStatus,
dwSignalE2EStatus const  e2eStatus 
)

Encode dwSignal*Status values into a dwSignalValidity value.

Parameters
[out]validityEncoded signal validity data
[in]statusSignal status to encode
[in]timeoutStatusSignal timeout status to encode
[in]e2eStatusSignal E2E status to encode
Returns
DW_SUCCESS All three input statuses have been encoded into validity successfully.
DW_INVALID_ARGUMENT - If one of the arguments has an invalid value or if validity is null
API Group
  • Init: Yes
  • Runtime: Yes
  • De-Init: Yes