DriveWorks SDK Reference
5.16.65 Release
For Test and Development only

Rig.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) 2015-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
46#ifndef DW_RIG_RIG_H_
47#define DW_RIG_RIG_H_
48
49#include "RigTypes.h"
50
51#include <dw/core/base/Config.h>
54#include <dw/core/base/Types.h>
55#include <dw/sensors/Sensors.h>
56#include <dw/rig/Vehicle.h>
57#include <stdint.h>
58
59#ifdef __cplusplus
60extern "C" {
61#endif
62
72typedef struct dwRigObject* dwRigHandle_t;
74typedef struct dwRigObject const* dwConstRigHandle_t;
75
97 dwContextHandle_t const ctx,
98 char8_t const* const configurationFile);
99
119 dwContextHandle_t const ctx,
120 char8_t const* const configurationString,
121 char8_t const* const relativeBasePath);
122
134
146
162dwStatus dwRig_getVehicle(dwVehicle const** const vehicle, dwConstRigHandle_t const obj);
163
178
193dwStatus dwRig_setVehicle(dwVehicle const* const vehicle, dwRigHandle_t const obj);
194
209
222dwStatus dwRig_getVehicleIOConfigCount(uint32_t* const vioConfigCount,
223 dwConstRigHandle_t const obj);
224
236dwStatus dwRig_getSensorCount(uint32_t* const sensorCount,
237 dwConstRigHandle_t const obj);
238
251dwStatus dwRig_getSensorCountOfType(uint32_t* const sensorCount,
252 dwSensorType const sensorType,
253 dwConstRigHandle_t const obj);
254
270dwStatus dwRig_getSensorProtocol(char8_t const** const sensorProtocol,
271 uint32_t const sensorId,
272 dwConstRigHandle_t const obj);
273
287DW_API_PUBLIC dwStatus dwRig_getSensorParameter(char8_t const** const sensorParameter,
288 uint32_t const sensorId,
289 dwConstRigHandle_t const obj);
290
304DW_API_PUBLIC dwStatus dwRig_setSensorParameter(char8_t const* const sensorParameter,
305 uint32_t const sensorId,
306 dwRigHandle_t const obj);
307
325DW_API_PUBLIC dwStatus dwRig_getSensorParameterUpdatedPath(char8_t const** const sensorParameter,
326 uint32_t const sensorId,
327 dwConstRigHandle_t const obj);
328
346 uint32_t const sensorId,
347 dwConstRigHandle_t const obj);
348
365 uint32_t const sensorId,
366 dwConstRigHandle_t const obj);
367
385 uint32_t const sensorId,
386 dwConstRigHandle_t const obj);
387
405 uint32_t const sensorIdFrom,
406 uint32_t const sensorIdTo,
407 dwConstRigHandle_t const obj);
408
427 uint32_t const sensorIdFrom,
428 uint32_t const sensorIdTo,
429 dwConstRigHandle_t const obj);
430
447 uint32_t const sensorId,
448 dwRigHandle_t const obj);
449
464dwStatus dwRig_getSensorName(char8_t const** const sensorName,
465 uint32_t const sensorId,
466 dwConstRigHandle_t const obj);
467
483dwStatus dwRig_getSensorDataPath(char8_t const** const dataPath,
484 uint32_t const sensorId,
485 dwConstRigHandle_t const obj);
486
501dwStatus dwRig_getCameraTimestampPath(char8_t const** const timestampPath,
502 uint32_t const sensorId,
503 dwConstRigHandle_t const obj);
504
522dwStatus dwRig_getSensorPropertyByName(char8_t const** const propertyValue,
523 char8_t const* const propertyName,
524 uint32_t const sensorId,
525 dwConstRigHandle_t const obj);
526
542dwStatus dwRig_addOrSetSensorPropertyByName(char8_t const* const propertyValue,
543 char8_t const* const propertyName,
544 uint32_t const sensorId,
545 dwRigHandle_t const obj);
562dwStatus dwRig_getPropertyByName(char8_t const** const propertyValue,
563 char8_t const* const propertyName,
564 dwConstRigHandle_t const obj);
565
580dwStatus dwRig_addOrSetPropertyByName(char8_t const* const propertyValue,
581 char8_t const* const propertyName,
582 dwRigHandle_t const obj);
583
598dwStatus dwRig_findSensorByName(uint32_t* const sensorId,
599 char8_t const* const sensorName,
600 dwConstRigHandle_t const obj);
616 uint32_t const vehicleIOId,
617 dwConstRigHandle_t const obj);
618
634dwStatus dwRig_findSensorByTypeIndex(uint32_t* const sensorId,
635 dwSensorType const sensorType,
636 uint32_t const sensorTypeIndex,
637 dwConstRigHandle_t const obj);
638
653 uint32_t const sensorId,
654 dwConstRigHandle_t const obj);
655
672 uint32_t const sensorId,
673 dwConstRigHandle_t const obj);
674
690 uint32_t const sensorId,
691 dwConstRigHandle_t const obj);
692
711 uint32_t const sensorId,
712 dwConstRigHandle_t const obj);
713
731DW_DEPRECATED("dwRig_getFThetaCameraConfigNew is replaced by dwRig_getFThetaCameraConfig.")
733 uint32_t const sensorId,
734 dwConstRigHandle_t const obj);
735
751 uint32_t const sensorId,
752 dwRigHandle_t const obj);
753
769 uint32_t const sensorId,
770 dwRigHandle_t const obj);
771
791dwStatus dwRig_serializeToFile(char8_t const* const configurationFile,
792 dwConstRigHandle_t const obj);
793
794#ifdef __cplusplus
795}
796#endif
797
799#endif // DW_RIG_RIG_H_
NVIDIA DriveWorks API: Core Methods
dwStatus
Status definition.
Definition: ErrorDefs.h:44
NVIDIA DriveWorks API: Rig Configuration types for public
dwCameraModel
Specifies the supported optical camera models.
Definition: RigTypes.h:72
Configuration parameters for a calibrated FTheta camera.
Definition: RigTypes.h:282
NVIDIA DriveWorks API: Sensors
NVIDIA DriveWorks API: Core Types
NVIDIA DriveWorks API: Vehicle Parameters
NVIDIA DriveWorks API: Core Exports
struct dwContextObject * dwContextHandle_t
Context handle.
Definition: Context.h:86
#define DW_DEPRECATED(msg)
Definition: Exports.h:68
#define DW_API_PUBLIC
Definition: Exports.h:56
DW_API_PUBLIC dwStatus dwRig_getSensorName(char8_t const **const sensorName, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the name of a sensor as given in the configuration.
DW_API_PUBLIC dwStatus dwRig_getSensorDataPath(char8_t const **const dataPath, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets path to sensor recording.
DW_API_PUBLIC dwStatus dwRig_setVehicle(dwVehicle const *const vehicle, dwRigHandle_t const obj)
DEPRECATED: Sets the properties of a passenger car vehicle.
DW_API_PUBLIC dwStatus dwRig_getFThetaCameraConfigNew(dwFThetaCameraConfig *const config, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the parameters of the FTheta camera model.
DW_API_PUBLIC dwStatus dwRig_setFThetaCameraConfig(dwFThetaCameraConfig const *const config, uint32_t const sensorId, dwRigHandle_t const obj)
Sets the parameters of the FTheta camera model.
DW_API_PUBLIC dwStatus dwRig_getSensorProtocol(char8_t const **const sensorProtocol, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the protocol string of a sensor.
DW_API_PUBLIC dwStatus dwRig_getSensorType(dwSensorType *const sensorType, uint32_t const sensorId, dwConstRigHandle_t const obj)
Returns the type of sensor based upon the sensorID sent into the method.
DW_API_PUBLIC dwStatus dwRig_getNominalSensorToSensorTransformation(dwTransformation3f *const transformation, uint32_t const sensorIdFrom, uint32_t const sensorIdTo, dwConstRigHandle_t const obj)
Gets the nominal sensor to sensor transformation for a pair of sensors.
DW_API_PUBLIC dwStatus dwRig_setPinholeCameraConfig(dwPinholeCameraConfig const *const config, uint32_t const sensorId, dwRigHandle_t const obj)
Sets the parameters of the pinhole camera model.
DW_API_PUBLIC dwStatus dwRig_release(dwRigHandle_t const obj)
Releases the Rig Configuration module.
DW_API_PUBLIC dwStatus dwRig_getPinholeCameraConfig(dwPinholeCameraConfig *const config, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the parameters of the Pinhole camera model.
DW_API_PUBLIC dwStatus dwRig_initializeFromString(dwRigHandle_t *const obj, dwContextHandle_t const ctx, char8_t const *const configurationString, char8_t const *const relativeBasePath)
Initializes the Rig Configuration module from a string.
DW_API_PUBLIC dwStatus dwRig_getSensorPropertyByName(char8_t const **const propertyValue, char8_t const *const propertyName, uint32_t const sensorId, dwConstRigHandle_t const obj)
Returns property stored inside of a sensor.
DW_API_PUBLIC dwStatus dwRig_getPropertyByName(char8_t const **const propertyValue, char8_t const *const propertyName, dwConstRigHandle_t const obj)
Returns property stored inside of rig.
DW_API_PUBLIC dwStatus dwRig_getSensorToSensorTransformation(dwTransformation3f *const transformation, uint32_t const sensorIdFrom, uint32_t const sensorIdTo, dwConstRigHandle_t const obj)
Gets the sensor to sensor transformation for a pair of sensors.
DW_API_PUBLIC dwStatus dwRig_findSensorIdFromVehicleIOId(uint32_t *const sensorId, uint32_t const vehicleIOId, dwConstRigHandle_t const obj)
Finds a sensor with the given vehicleIO ID and returns the index.
DW_API_PUBLIC dwStatus dwRig_reset(dwRigHandle_t const obj)
Resets the Rig Configuration module.
DW_API_PUBLIC dwStatus dwRig_findSensorByTypeIndex(uint32_t *const sensorId, dwSensorType const sensorType, uint32_t const sensorTypeIndex, dwConstRigHandle_t const obj)
Finds the absolute sensor index of the Nth sensor of a given type.
DW_API_PUBLIC dwStatus dwRig_getGenericVehicle(dwGenericVehicle *const vehicle, dwConstRigHandle_t const obj)
Gets the properties of a generic vehicle (car or truck).
struct dwRigObject * dwRigHandle_t
Handle representing the Rig interface.
Definition: Rig.h:72
DW_API_PUBLIC dwStatus dwRig_getNominalSensorToRigTransformation(dwTransformation3f *const transformation, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the nominal sensor to rig transformation for a sensor.
DW_API_PUBLIC dwStatus dwRig_serializeToFile(char8_t const *const configurationFile, dwConstRigHandle_t const obj)
This method serializes the rig-configuration object to a human-readable rig-configuration file.
DW_API_PUBLIC dwStatus dwRig_getSensorToRigTransformation(dwTransformation3f *const transformation, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the sensor to rig transformation for a sensor.
DW_API_PUBLIC dwStatus dwRig_findSensorByName(uint32_t *const sensorId, char8_t const *const sensorName, dwConstRigHandle_t const obj)
Finds the sensor with the given name and returns its index.
DW_API_PUBLIC dwStatus dwRig_getSensorCountOfType(uint32_t *const sensorCount, dwSensorType const sensorType, dwConstRigHandle_t const obj)
Find number of sensors of a given type.
DW_API_PUBLIC dwStatus dwRig_setSensorParameter(char8_t const *const sensorParameter, uint32_t const sensorId, dwRigHandle_t const obj)
Sets the parameter string for a sensor.
DW_API_PUBLIC dwStatus dwRig_getVehicle(dwVehicle const **const vehicle, dwConstRigHandle_t const obj)
DEPRECATED: Gets the properties of a passenger car vehicle.
DW_API_PUBLIC dwStatus dwRig_getSensorFLUToRigTransformation(dwTransformation3f *const transformation, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the sensor FLU to rig transformation for a sensor.
DW_API_PUBLIC dwStatus dwRig_addOrSetPropertyByName(char8_t const *const propertyValue, char8_t const *const propertyName, dwRigHandle_t const obj)
Overwrite content of an existing rig property.
DW_API_PUBLIC dwStatus dwRig_getSensorCount(uint32_t *const sensorCount, dwConstRigHandle_t const obj)
Gets the number of all available sensors.
DW_API_PUBLIC dwStatus dwRig_initializeFromFile(dwRigHandle_t *const obj, dwContextHandle_t const ctx, char8_t const *const configurationFile)
Initializes the Rig Configuration module from a file.
DW_API_PUBLIC dwStatus dwRig_getSensorParameterUpdatedPath(char8_t const **const sensorParameter, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the parameter string for a sensor with any path described by file=,video=,timestamp= property mo...
struct dwRigObject const * dwConstRigHandle_t
Handle representing the const Rig interface.
Definition: Rig.h:74
DW_API_PUBLIC dwStatus dwRig_getCameraTimestampPath(char8_t const **const timestampPath, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets path to camera timestamp file.
DW_API_PUBLIC dwStatus dwRig_setSensorToRigTransformation(dwTransformation3f const *const transformation, uint32_t const sensorId, dwRigHandle_t const obj)
Sets the sensor to rig transformation for a sensor.
DW_API_PUBLIC dwStatus dwRig_getFThetaCameraConfig(dwFThetaCameraConfig *const config, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the parameters of the FTheta camera model.
DW_API_PUBLIC dwStatus dwRig_addOrSetSensorPropertyByName(char8_t const *const propertyValue, char8_t const *const propertyName, uint32_t const sensorId, dwRigHandle_t const obj)
Overwrite content of an existing sensor property.
DW_API_PUBLIC dwStatus dwRig_getCameraModel(dwCameraModel *const cameraModel, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the model type of the camera intrinsics.
DW_API_PUBLIC dwStatus dwRig_getSensorParameter(char8_t const **const sensorParameter, uint32_t const sensorId, dwConstRigHandle_t const obj)
Gets the parameter string for a sensor.
DW_API_PUBLIC dwStatus dwRig_getVehicleIOConfigCount(uint32_t *const vioConfigCount, dwConstRigHandle_t const obj)
Gets the number of vehicle IO sensors.
DW_API_PUBLIC dwStatus dwRig_setGenericVehicle(dwGenericVehicle const *const vehicle, dwRigHandle_t const obj)
Sets the properties of a generic vehicle (car or truck).
Vehicle description.
Definition: Vehicle.h:313
DEPRECATED: Properties of a passenger car vehicle.
Definition: Vehicle.h:354
dwSensorType
Defines the type of sensors that are available in DriveWorks.
Definition: Sensors.h:120
Specifies a 3D rigid transformation.
Definition: MatrixTypes.h:182