DriveWorks SDK Reference
3.5.78 Release
For Test and Development only

Interpreter.h File Reference

Detailed Description

NVIDIA DriveWorks API: Interpreter

Description: This file defines CAN message interpreter methods.

Definition in file Interpreter.h.

Go to the source code of this file.

Data Structures

struct  dwCANInterpreterInterface
 Interface for callback based CAN data interpreter. More...
 

Macros

#define DW_SENSORS_CAN_INTERPRETER_MAX_MESSAGE_NAME_LEN   32
 Maximal length of a message name [characters]. More...
 
#define DW_SENSORS_CAN_INTERPRETER_MAX_SIGNAL_NAME_LEN   32
 Maximal length of a signal name [characters]. More...
 
#define DW_SENSORS_CAN_INTERPRETER_MESSAGE_MAX_SIGNALS   128
 Maximal number of signals in a DBC message. More...
 

Typedefs

typedef void(* dwCANInterpreterAddMessageFunc_t) (const dwCANMessage *msg, void *userData)
 Pushes new messages to the interpreter. More...
 
typedef bool(* dwCANInterpreterGetDataf32Func_t) (float32_t *value, dwTime_t *timestamp_us, uint32_t idx, void *userData)
 Returns false if no float32 data is available. More...
 
typedef bool(* dwCANInterpreterGetDataf64Func_t) (float64_t *value, dwTime_t *timestamp_us, uint32_t idx, void *userData)
 Returns false if no float64 data is available. More...
 
typedef bool(* dwCANInterpreterGetDatai32Func_t) (int32_t *value, dwTime_t *timestamp_us, uint32_t idx, void *userData)
 Returns false if no int32 data is available. More...
 
typedef uint32_t(* dwCANInterpreterGetNumAvailableFunc_t) (void *userData)
 Gets the number of signals available to be retrieved. The same signal may be available multiple times. More...
 
typedef bool(* dwCANInterpreterGetSignalInfoFunc_t) (const char8_t **name, dwTrivialDataType *type, dwCANVehicleData *data, uint32_t idx, void *userData)
 Gets the name and type of a signal; the callback must return false if the query fails. More...
 
typedef struct dwCANInterpreterObject * dwCANInterpreterHandle_t
 CAN message interpreter handle. More...
 

Functions

DW_API_PUBLIC dwStatus dwCANInterpreter_buildFromCallbacks (dwCANInterpreterHandle_t *interpreter, dwCANInterpreterInterface callbacks, void *userData, dwContextHandle_t context)
 Creates a CAN data interpreter based on user provided callbacks. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_buildFromDBC (dwCANInterpreterHandle_t *interpreter, const char8_t *inputDBC, dwContextHandle_t ctx)
 Creates a CAN data interpreter based on DBC file format. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_consume (const dwCANMessage *msg, dwCANInterpreterHandle_t interpreter)
 Pushes a new message to the interpreter. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_createMessage (dwCANMessage *msg, uint32_t id, dwCANInterpreterHandle_t interpreter)
 Initializes an empty can message an interpreter can encoded signals into. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_createMessageFromName (dwCANMessage *msg, const char8_t *msgName, dwCANInterpreterHandle_t interpreter)
 Initializes an empty can message an interpreter can encoded signals into. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_encodef32 (float32_t value, const char8_t *signal, dwCANMessage *msg, dwCANInterpreterHandle_t interpreter)
 Encodes a value for a signal into a given message. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_encodef64 (float64_t value, const char8_t *signal, dwCANMessage *msg, dwCANInterpreterHandle_t interpreter)
 Same as dwCANInterpreter_encodef32, but for float64 types. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_encodei32 (int32_t value, const char8_t *signal, dwCANMessage *msg, dwCANInterpreterHandle_t interpreter)
 Same as dwCANInterpreter_encodef32, but for int32 types. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getDataSignalIndex (uint32_t *idx, dwCANVehicleData data, dwCANInterpreterHandle_t interpreter)
 Gets the index of a signal of the last consumed message that corresponds to a certain predefined data type. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getf32 (float32_t *value, dwTime_t *timestamp_us, uint32_t idx, dwCANInterpreterHandle_t interpreter)
 Gets a 'float32_t' value from the available values. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getf64 (float64_t *value, dwTime_t *timestamp_us, uint32_t idx, dwCANInterpreterHandle_t interpreter)
 Same as dwCANInterpreter_getf32, but for float64 types. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_geti32 (int32_t *value, dwTime_t *timestamp_us, uint32_t idx, dwCANInterpreterHandle_t interpreter)
 Same as dwCANInterpreter_getf32, but for int32 types. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getNumberSignals (uint32_t *num, dwCANInterpreterHandle_t interpreter)
 Gets the number of signals decoded and available for consumption by the application side. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getNumberSignalsInMessage (uint32_t *num, const dwCANMessage *msg, dwCANInterpreterHandle_t interpreter)
 Gets the number of signals a CAN interpreter can encode into the provided message. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getSignalName (const char8_t **name, uint32_t idx, dwCANInterpreterHandle_t interpreter)
 Gets the name of a signal available for consumption by the application as a string. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getSignalNameInMessage (const char8_t **name, uint32_t idx, const dwCANMessage *msg, dwCANInterpreterHandle_t interpreter)
 Gets the name of a signal that the CAN interpreter can encode in the currently active encoded message. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getSignalRange (float64_t *minimum, float64_t *maximum, uint32_t idx, dwCANInterpreterHandle_t interpreter)
 Returns the range of validity of data for a signal available for consumption by the application. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_getSignalType (dwTrivialDataType *type, uint32_t idx, dwCANInterpreterHandle_t interpreter)
 Returns the type of the value of a signal available for consumption by the application. More...
 
DW_API_PUBLIC dwStatus dwCANInterpreter_release (dwCANInterpreterHandle_t interpreter)
 Closes previously opened interpreter. More...