DriveWorks SDK Reference
5.20.37 Release
For Test and Development only

SensorCommonPlugin.h File Reference

Detailed Description

NVIDIA DriveWorks: Common Sensor Plugin Interface

Description: This file defines the interfaces to be implemented for all sensor plugins.

Definition in file SensorCommonPlugin.h.

Go to the source code of this file.

Data Structures

struct  dwSensorCommonPluginFunctions
 Function Table exposing common plugin functions. More...
 
struct  dwSensorPlugin_firmwareVersion
 
struct  dwSensorPlugin_information
 
struct  dwSensorPluginProperties
 Structure for generic constants returned by the plugin. More...
 

Typedefs

typedef dwStatus(* dwSensorPlugin_createHandle) (dwSensorPluginSensorHandle_t *handle, dwSensorPluginProperties *properties, char const *params, dwContextHandle_t ctx)
 Creates a new handle to the sensor managed by the plugin module. More...
 
typedef dwStatus(* dwSensorPlugin_createSensor) (char const *params, dwSALHandle_t sal, dwSensorPluginSensorHandle_t handle)
 Creates and initializes a new sensor managed by the plugin. More...
 
typedef dwStatus(* dwSensorPlugin_getRawPackets) (uint8_t const *const rawData, size_t *const size, dwSensorPlugin_rawDataLevel level, int32_t groupNum, uint8_t const **const data, dwSensorPluginSensorHandle_t handle)
 Reads RAW data from different level. More...
 
typedef dwStatus(* dwSensorPlugin_getRawPacketsNew) (uint8_t const *const rawData, size_t *const size, dwSensorPlugin_rawDataLevel level, int32_t groupNum, uint8_t const **const data, int32_t *extra1, int32_t *extra2, dwSensorPluginSensorHandle_t handle)
 Reads RAW data from different level. More...
 
typedef dwStatus(* dwSensorPlugin_getSensorInformation) (dwSensorPlugin_information *information, dwSensorPluginSensorHandle_t sensor)
 Gets information of this sensor. More...
 
typedef dwStatus(* dwSensorPlugin_pushData) (size_t *lenPushed, uint8_t const *data, size_t const size, dwSensorPluginSensorHandle_t handle)
 Pushes raw data obtained from a previous 'dwSensorPlugin_readRawData' call for decoding. More...
 
typedef dwStatus(* dwSensorPlugin_rawDataReadyForDecode) (size_t *offset, size_t *size, uint8_t const *const data, dwSensorPluginSensorHandle_t ctx)
 API for sensor that raw data and decoded packet are many to one relationship. More...
 
typedef dwStatus(* dwSensorPlugin_readRawData) (uint8_t const **data, size_t *size, dwTime_t *timestamp, dwTime_t timeout_us, dwSensorPluginSensorHandle_t handle)
 Reads RAW data for one single message from the sensor as byte array. More...
 
typedef dwStatus(* dwSensorPlugin_release) (dwSensorPluginSensorHandle_t handle)
 Releases a sensor managed by the plugin module. More...
 
typedef dwStatus(* dwSensorPlugin_reset) (dwSensorPluginSensorHandle_t handle)
 Resets the sensor. More...
 
typedef dwStatus(* dwSensorPlugin_returnRawData) (uint8_t const *data, dwSensorPluginSensorHandle_t handle)
 Returns RAW data to sensor as a byte array. More...
 
typedef dwStatus(* dwSensorPlugin_start) (dwSensorPluginSensorHandle_t handle)
 Starts the sensor previously successfully created with 'dwSensorPlugin_createSensor' interface. More...
 
typedef dwStatus(* dwSensorPlugin_stop) (dwSensorPluginSensorHandle_t handle)
 Stops the sensor. More...
 
typedef void * dwSensorPluginSensorHandle_t
 Plugin handle. Used in plugin public interfaces. More...
 

Enumerations

enum  dwSensorPlugin_rawDataLevel {
  DW_SENSORS_RAW_DATA_LEVEL_ZERO = 0 ,
  DW_SENSORS_RAW_DATA_LEVEL_ONE = 1 ,
  DW_SENSORS_RAW_DATA_LEVEL_TWO = 2 ,
  DW_SENSORS_RAW_DATA_LEVEL_COUNT = 3
}
 
enum  dwSensorPlugin_rawToDecMap {
  DW_SENSORS_RAW_DEC_ONE_TO_ONE = 0 ,
  DW_SENSORS_RAW_DEC_MANY_TO_ONE = 1 ,
  DW_SENSORS_RAW_DEC_NOT_SUPPORTED = 2
}
 
enum  dwSensorPlugin_timeDomain {
  DW_SENSORS_PLUGIN_TIME_DOMAIN_HOST = 0 ,
  DW_SENSORS_PLUGIN_TIME_DOMAIN_TSC = 1 ,
  DW_SENSORS_PLUGIN_TIME_DOMAIN_PTP = 2 ,
  DW_SENSORS_PLUGIN_TIME_DOMAIN_UTC = 3 ,
  DW_SENSORS_PLUGIN_TIME_DOMAIN_UTCTOH = 4 ,
  DW_SENSORS_PLUGIN_TIME_DOMAIN_MISC = 5 ,
  DW_SENSORS_PLUGIN_TIME_DOMAIN_COUNT = 6
}