DriveWorks SDK Reference
5.14.77 Release
For Test and Development only

VehicleIO Driver Interface

Detailed Description

Defines the VehicleIO Driver module for accessing a custom VehicleIO backend.

Functions

dwStatus _dwVehicleIODriver_clearFaults (dwSensorHandle_t sensor, const dwVehicleIOState *state)
 Clear faults in current vehicle state. More...
 
dwStatus _dwVehicleIODriver_clearFaults_new (dwSensorHandle_t const sensorHandle, dwVehicleIOSafetyState const *vioSafetyState, dwVehicleIONonSafetyState const *vioNonSafetyState, dwVehicleIOActuationFeedback const *vioActuationFeedback)
 Clear any outstanding faults based on incoming VIO state structures. More...
 
dwStatus _dwVehicleIODriver_consume (const dwCANMessage *msg, dwVehicleIOState *state)
 Consume a received CAN message and update the vehicle state. More...
 
dwStatus _dwVehicleIODriver_consumeDataForActuationFeedback (dwDataPacket const *dataPacket, dwVehicleIOActuationFeedback *actuationFeedback)
 Extract dwVehicleIOActuationFeedback from incoming data packet. More...
 
dwStatus _dwVehicleIODriver_consumeDataForNonSafeState (dwDataPacket const *dataPacket, dwVehicleIONonSafetyState *nonSafetyState)
 Extract dwVehicleIONonSafetyState from incoming data packet. More...
 
dwStatus _dwVehicleIODriver_consumeDataForSafeState (dwDataPacket const *dataPacket, dwVehicleIOSafetyState *safetyState)
 Extract dwVehicleIOSafetyState from incoming data packet. More...
 
dwStatus _dwVehicleIODriver_consumeForActuationFeedback (dwCANMessage const *canMessage, dwVehicleIOActuationFeedback *actuationFeedback)
 Extract dwVehicleIOActuationFeedback from incoming CAN message. More...
 
dwStatus _dwVehicleIODriver_consumeForNonSafeState (dwCANMessage const *canMessage, dwVehicleIONonSafetyState *nonSafetyState)
 Extract dwVehicleIONonSafetyState from incoming CAN message. More...
 
dwStatus _dwVehicleIODriver_consumeForSafeState (dwCANMessage const *canMessage, dwVehicleIOSafetyState *safetyState)
 Extract dwVehicleIOSafetyState from incoming CAN message. More...
 
dwStatus _dwVehicleIODriver_initialize ()
 Initializes the VehicleIO Driver. More...
 
dwStatus _dwVehicleIODriver_initialize_V2 (dwContextHandle_t context, char8_t const *vehicleTypeString, dwVehicle const *vehicleProperties, dwVehicleIOCapabilities *vehicleIOCapabilities, char8_t const *dbcFilepath, dwVehicleIOState *vioState, dwVehicleIOSafetyState *vioSafetyState, dwVehicleIONonSafetyState *vioNonSafetyState, dwVehicleIOActuationFeedback *vioActuationFeedback)
 Initialize Plugin VIO Driver. More...
 
dwStatus _dwVehicleIODriver_release ()
 Releases the VehicleIO Driver. More...
 
dwStatus _dwVehicleIODriver_reset ()
 Reset driver to default state. More...
 
dwStatus _dwVehicleIODriver_sendCommand (const dwVehicleIOCommand *cmd, dwSensorHandle_t sensor)
 Send a vehicle command to the given CAN sensor. More...
 
dwStatus _dwVehicleIODriver_sendMiscCommand (const dwVehicleIOMiscCommand *cmd, dwSensorHandle_t sensor)
 Send misc vehicle command to the given CAN sensor. More...
 
dwStatus _dwVehicleIODriver_sendNonSafetyCommand (dwVehicleIONonSafetyCommand const *nonSafetyCommand, dwSensorHandle_t sensorHandle)
 Send dwVehicleIONonSafetyCommand over specified sensor. More...
 
dwStatus _dwVehicleIODriver_sendSafetyCommand (dwVehicleIOSafetyCommand const *safetyCommand, dwSensorHandle_t sensorHandle)
 Send dwVehicleIOSafetyCommand over specified sensor. More...
 
dwStatus _dwVehicleIODriver_setDrivingMode (const dwVehicleIODrivingMode mode)
 Set driving mode. More...
 

Function Documentation

◆ _dwVehicleIODriver_clearFaults()

dwStatus _dwVehicleIODriver_clearFaults ( dwSensorHandle_t  sensor,
const dwVehicleIOState state 
)

Clear faults in current vehicle state.

Parameters
[in]sensorCAN sensor to send CAN messages.
[in]stateStructure specifying overrides or faults.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_clearFaults_new()

dwStatus _dwVehicleIODriver_clearFaults_new ( dwSensorHandle_t const  sensorHandle,
dwVehicleIOSafetyState const *  vioSafetyState,
dwVehicleIONonSafetyState const *  vioNonSafetyState,
dwVehicleIOActuationFeedback const *  vioActuationFeedback 
)

Clear any outstanding faults based on incoming VIO state structures.

Parameters
[in]sensorHandleSensor handle
[in]vioSafetyStatedwVehicleIOSafetyState
[in]vioNonSafetyStatedwVehicleIONonSafetyState
[in]vioActuationFeedbackdwVehicleIOActuationFeedback
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_consume()

dwStatus _dwVehicleIODriver_consume ( const dwCANMessage msg,
dwVehicleIOState state 
)

Consume a received CAN message and update the vehicle state.

Parameters
[in]msgCAN message to be consumed.
[in]stateStructure updated with data from CAN message.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_consumeDataForActuationFeedback()

dwStatus _dwVehicleIODriver_consumeDataForActuationFeedback ( dwDataPacket const *  dataPacket,
dwVehicleIOActuationFeedback actuationFeedback 
)

Extract dwVehicleIOActuationFeedback from incoming data packet.

Parameters
[in]dataPacketIncoming data-packet.
[out]actuationFeedbackExtracted dwVehicleIOActuationFeedback.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_consumeDataForNonSafeState()

dwStatus _dwVehicleIODriver_consumeDataForNonSafeState ( dwDataPacket const *  dataPacket,
dwVehicleIONonSafetyState nonSafetyState 
)

Extract dwVehicleIONonSafetyState from incoming data packet.

Parameters
[in]dataPacketIncoming data-packet.
[out]nonSafetyStateExtracted dwVehicleIONonSafetyState.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_consumeDataForSafeState()

dwStatus _dwVehicleIODriver_consumeDataForSafeState ( dwDataPacket const *  dataPacket,
dwVehicleIOSafetyState safetyState 
)

Extract dwVehicleIOSafetyState from incoming data packet.

Parameters
[in]dataPacketIncoming data-packet.
[out]safetyStateExtracted dwVehicleIOSafetyState.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_consumeForActuationFeedback()

dwStatus _dwVehicleIODriver_consumeForActuationFeedback ( dwCANMessage const *  canMessage,
dwVehicleIOActuationFeedback actuationFeedback 
)

Extract dwVehicleIOActuationFeedback from incoming CAN message.

Parameters
[in]canMessageCAN message
[out]actuationFeedbackExtracted dwVehicleIOActuationFeedback
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_consumeForNonSafeState()

dwStatus _dwVehicleIODriver_consumeForNonSafeState ( dwCANMessage const *  canMessage,
dwVehicleIONonSafetyState nonSafetyState 
)

Extract dwVehicleIONonSafetyState from incoming CAN message.

Parameters
[in]canMessageCAN message
[out]nonSafetyStateExtracted dwVehicleIONonSafetyState
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_consumeForSafeState()

dwStatus _dwVehicleIODriver_consumeForSafeState ( dwCANMessage const *  canMessage,
dwVehicleIOSafetyState safetyState 
)

Extract dwVehicleIOSafetyState from incoming CAN message.

Parameters
[in]canMessageCAN message
[out]safetyStateExtracted dwVehicleIOSafetyState
Returns
dwStatus DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_initialize()

dwStatus _dwVehicleIODriver_initialize ( )

Initializes the VehicleIO Driver.

Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_initialize_V2()

dwStatus _dwVehicleIODriver_initialize_V2 ( dwContextHandle_t  context,
char8_t const *  vehicleTypeString,
dwVehicle const *  vehicleProperties,
dwVehicleIOCapabilities vehicleIOCapabilities,
char8_t const *  dbcFilepath,
dwVehicleIOState vioState,
dwVehicleIOSafetyState vioSafetyState,
dwVehicleIONonSafetyState vioNonSafetyState,
dwVehicleIOActuationFeedback vioActuationFeedback 
)

Initialize Plugin VIO Driver.

Parameters
[in]contextDriveworks context
[in]vehicleTypeStringThe string to specify the type of partner VehicleIO driver to create
[in]vehiclePropertiesSpecified Vehicle properties (from rig.json).
[in]vehicleIOCapabilitiesSpecifies VehicleIO capabilities.
[in]dbcFilepathSpeficifes path to the dbc file for initializing a DBC-based canbus interpreter
[in]vioStateVehicle IO State.
[in]vioSafetyStateVehicle IO Safety State.
[in]vioNonSafetyStateVehicle IO Non-Safety State.
[in]vioActuationFeedbackVehicle IO Actuation Feedback State.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_release()

dwStatus _dwVehicleIODriver_release ( )

Releases the VehicleIO Driver.

Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_reset()

dwStatus _dwVehicleIODriver_reset ( )

Reset driver to default state.

Returns
DW_FAILURE, DW_SUCCESS
Note
This would not perform any changes regarding current vehicle state.

◆ _dwVehicleIODriver_sendCommand()

dwStatus _dwVehicleIODriver_sendCommand ( const dwVehicleIOCommand cmd,
dwSensorHandle_t  sensor 
)

Send a vehicle command to the given CAN sensor.

Parameters
[in]cmdCommand with parameters to be sent.
[in]sensorCAN sensor to send CAN messages.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_sendMiscCommand()

dwStatus _dwVehicleIODriver_sendMiscCommand ( const dwVehicleIOMiscCommand cmd,
dwSensorHandle_t  sensor 
)

Send misc vehicle command to the given CAN sensor.

Parameters
[in]cmdCommand with parameters to be sent.
[in]sensorCAN sensor to send CAN messages.
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_sendNonSafetyCommand()

dwStatus _dwVehicleIODriver_sendNonSafetyCommand ( dwVehicleIONonSafetyCommand const *  nonSafetyCommand,
dwSensorHandle_t  sensorHandle 
)

Send dwVehicleIONonSafetyCommand over specified sensor.

Parameters
[in]nonSafetyCommanddwVehicleIONonSafetyCommand to send
[in]sensorHandleSensor handle
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_sendSafetyCommand()

dwStatus _dwVehicleIODriver_sendSafetyCommand ( dwVehicleIOSafetyCommand const *  safetyCommand,
dwSensorHandle_t  sensorHandle 
)

Send dwVehicleIOSafetyCommand over specified sensor.

Parameters
[in]safetyCommanddwVehicleIOSafetyCommand to send
[in]sensorHandleSensor handle
Returns
DW_FAILURE, DW_SUCCESS

◆ _dwVehicleIODriver_setDrivingMode()

dwStatus _dwVehicleIODriver_setDrivingMode ( const dwVehicleIODrivingMode  mode)

Set driving mode.

Parameters
[in]modespecifies the mode of driving.
Returns
DW_NOT_SUPPORTED - if the mode is not supported. DW_SUCCESS - if the new mode has been accepted.