DriveWorks SDK Reference
5.18.10 Release
For Test and Development only

Radar.h
Go to the documentation of this file.
1
2//
3// Notice
4// ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
5// NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
6// THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
7// MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
8//
9// NVIDIA CORPORATION & AFFILIATES assumes no responsibility for the consequences of use of such
10// information or for any infringement of patents or other rights of third parties that may
11// result from its use. No license is granted by implication or otherwise under any patent
12// or patent rights of NVIDIA CORPORATION & AFFILIATES. No third party distribution is allowed unless
13// expressly authorized by NVIDIA. Details are subject to change without notice.
14// This code supersedes and replaces all information previously supplied.
15// NVIDIA CORPORATION & AFFILIATES products are not authorized for use as critical
16// components in life support devices or systems without express written approval of
17// NVIDIA CORPORATION & AFFILIATES.
18//
19// SPDX-FileCopyrightText: Copyright (c) 2017-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
20// SPDX-License-Identifier: LicenseRef-NvidiaProprietary
21//
22// NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
23// property and proprietary rights in and to this material, related
24// documentation and any modifications thereto. Any use, reproduction,
25// disclosure or distribution of this material and related documentation
26// without an express license agreement from NVIDIA CORPORATION or
27// its affiliates is strictly prohibited.
28//
30
47#ifndef DW_SENSORS_RADAR_RADAR_H_
48#define DW_SENSORS_RADAR_RADAR_H_
49
50#include <dw/core/base/Config.h>
51#include <dw/sensors/Sensors.h>
54
55// The structs below are serialized in binary and the layout is assummed to be packed
56#pragma pack(push, 1)
57
59typedef struct _dwRadarScanSSI dwRadarScanSSI;
60
62typedef struct dwRadarScan
63{
65 uint32_t scanIndex;
66
69
72
75
77 uint32_t numReturns;
78
81
85
88
91
94 void* data;
95
98
101
104
107
110
114
115#pragma pack(pop)
116
117#ifdef __cplusplus
118extern "C" {
119#endif
120
136dwStatus dwSensorRadar_toggleScanType(bool const enable, dwRadarScanType const scanType, dwSensorHandle_t const sensor);
137
152
175 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
192
215 const dwTime_t timeoutUs, dwSensorHandle_t const sensor);
216
233
253 const uint8_t* const rawData, size_t const size, dwSensorHandle_t const sensor);
254
268
282
296
316
328
329#ifdef __cplusplus
330}
331#endif
332
334#endif // DW_SENSORS_RADAR_RADAR_H_
dwStatus
Status definition.
Definition: ErrorDefs.h:44
NVIDIA DriveWorks API: RadarScan
Defines FFT patch value of the detection.
Definition: RadarScan.h:286
Defines the detection misc.
Definition: RadarScan.h:108
Defines the probability of some items recevied in a detection.
Definition: RadarScan.h:238
Defines the quality of the detection.
Definition: RadarScan.h:194
Defines standard deviation of the detection.
Definition: RadarScan.h:162
Defines the ambiguity of a radar scan.
Definition: RadarScan.h:429
Defines the radar scan misc.
Definition: RadarScan.h:372
Defines the validity of features in a radar scan. Include the validity structure in this page.
Definition: RadarScan.h:479
Defines the structure for reporting sensor mount position.
Definition: RadarTypes.h:294
Defines the properties of the radar.
Definition: RadarTypes.h:313
Defines the type of scan (combination of return type & range)
Definition: RadarTypes.h:100
Defines the structure for reporting current vehicle dynamics state.
Definition: RadarTypes.h:278
NVIDIA DriveWorks API: Sensors
float float32_t
Specifies POD types.
Definition: BasicTypes.h:59
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
Definition: BasicTypes.h:65
#define DW_API_PUBLIC
Definition: Exports.h:56
dwRadarDetectionStdDev const * detectionStdDev
Pointer to the array of dwRadarDetectionStdDev, size of this array is numReturns.
Definition: Radar.h:100
dwRadarScanType scanType
Type of scan.
Definition: Radar.h:74
dwRadarDetectionMisc const * detectionMisc
Pointer to the array of dwRadarDetectionMisc, size of this array is numReturns.
Definition: Radar.h:97
dwTime_t sensorTimestamp
Sensor timestamp at which the current measurement scan was started (us). Same time domain as hostTime...
Definition: Radar.h:68
dwTime_t hostTimestamp
Host timestamp at reception of first packet belonging to this scan (us)
Definition: Radar.h:71
dwRadarScanValidity scanValidity
Radar Scan validity If the signal is unavailable or invalid, the value of the signal will be the maxi...
Definition: Radar.h:84
dwRadarScanSSI const * radarSSI
radar supplement status info such as calibration info, health signal, performance
Definition: Radar.h:112
dwRadarDetectionFFTPatch const * detectionFFTPatch
Pointer to the array of dwRadarDetectionFFTPatch, size of this array is numReturns.
Definition: Radar.h:109
dwRadarDetectionProbability const * detectionProbability
Pointer to the array of dwRadarDetectionProbability, size of this array is numReturns.
Definition: Radar.h:106
uint32_t scanIndex
Sensor-provided scan index.
Definition: Radar.h:65
dwRadarScanAmbiguity radarScanAmbiguity
Radar Scan ambiguity.
Definition: Radar.h:90
dwRadarDetectionQuality const * detectionQuality
Pointer to the array of dwRadarDetectionQuality, size of this array is numReturns.
Definition: Radar.h:103
void * data
Pointer to the array of returns (to be casted based on return type) Size of this array is numReturns.
Definition: Radar.h:94
uint32_t numReturns
Number of radar returns in this scan.
Definition: Radar.h:77
float32_t dopplerAmbiguity
Doppler ambiguity free range.
Definition: Radar.h:80
dwRadarScanMisc radarScanMisc
Radar Scan miscellaneous fields.
Definition: Radar.h:87
DW_API_PUBLIC dwStatus dwSensorRadar_readScan(const dwRadarScan **const data, const dwTime_t timeoutUs, dwSensorHandle_t const sensor)
Reads one scan chunk.
DW_API_PUBLIC dwStatus dwSensorRadar_toggleScanType(bool const enable, dwRadarScanType const scanType, dwSensorHandle_t const sensor)
Enables/Disables a scan type for the radar sensor.
DW_API_PUBLIC dwStatus dwSensorRadar_readData(const dwRadarScan **const data, const dwRadarScanType type, const dwTime_t timeoutUs, dwSensorHandle_t const sensor)
Reads a single packet, which might be an entire scan or a fraction of a scan, which is sensor depende...
DW_API_PUBLIC dwStatus dwSensorRadar_processRawData(const dwRadarScan **const data, const uint8_t *const rawData, size_t const size, dwSensorHandle_t const sensor)
Decodes raw data previously read onto the application side structure.
DW_API_PUBLIC dwStatus dwSensorRadar_setMountPosition(dwRadarMountPosition *const data, dwSensorHandle_t const sensor)
Sends the radar mount position information to the radar.
DW_API_PUBLIC dwStatus dwSensorRadar_returnData(const dwRadarScan *const scan, dwSensorHandle_t const sensor)
Returns the data read to the internal pool.
DW_API_PUBLIC dwStatus dwSensorRadar_setDataDecoding(bool const enable, dwSensorHandle_t const sensor)
Enables/disables the decoding of the Radar packets, which incurs in additional CPU load.
DW_API_PUBLIC dwStatus dwSensorRadar_setVehicleState(dwRadarVehicleState *const data, dwSensorHandle_t const sensor)
Sends vehicle dynamics information to the radar.
struct _dwRadarScanSSI dwRadarScanSSI
Not available as of current release. Will be added in future release.
Definition: Radar.h:59
DW_API_PUBLIC dwStatus dwSensorRadar_getProperties(dwRadarProperties *const radarProperties, dwSensorHandle_t const sensor)
Gets information about the radar sensor.
DW_API_PUBLIC dwStatus dwSensorRadar_returnScan(const dwRadarScan *const scan, dwSensorHandle_t const sensor)
Returns the data covering an entire scan read to the internal pool.
DW_API_PUBLIC dwStatus dwSensorRadar_getScanDataSize(size_t *size, dwRadarScan const *scan)
Get size of the data buffer of a radar scan.
DW_API_PUBLIC dwStatus dwSensorRadar_copyScan(dwRadarScan *dst, dwRadarScan const *src)
Deep-copy a radar scan.
Defines the structure for a complete radar scan.
Definition: Radar.h:63
struct dwSensorObject * dwSensorHandle_t
Handle representing a sensor.
Definition: Sensors.h:88