DriveWorks SDK Reference
3.0.4260 Release
For Test and Development only

ObjectArray.h
Go to the documentation of this file.
1 // This code contains NVIDIA Confidential Information and is disclosed
3 // under the Mutual Non-Disclosure Agreement.
4 //
5 // Notice
6 // ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
7 // NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
8 // THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
9 // MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
10 //
11 // NVIDIA Corporation assumes no responsibility for the consequences of use of such
12 // information or for any infringement of patents or other rights of third parties that may
13 // result from its use. No license is granted by implication or otherwise under any patent
14 // or patent rights of NVIDIA Corporation. No third party distribution is allowed unless
15 // expressly authorized by NVIDIA. Details are subject to change without notice.
16 // This code supersedes and replaces all information previously supplied.
17 // NVIDIA Corporation products are not authorized for use as critical
18 // components in life support devices or systems without express written approval of
19 // NVIDIA Corporation.
20 //
21 // Copyright (c) 2017-2019 NVIDIA Corporation. All rights reserved.
22 //
23 // NVIDIA Corporation and its licensors retain all intellectual property and proprietary
24 // rights in and to this software and related documentation and any modifications thereto.
25 // Any use, reproduction, disclosure or distribution of this software and related
26 // documentation without an express license agreement from NVIDIA Corporation is
27 // strictly prohibited.
28 //
30 #ifndef DW_WORLD_OBJECT_ARRAY_H_
31 #define DW_WORLD_OBJECT_ARRAY_H_
32 
33 #include <dw/world/Object.h>
34 #include <dw/worldmodel/Obstacle.h>
35 #include <dw/worldmodel/Lane.h>
37 
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
51 
55 typedef enum dwObjectType {
63 } dwObjectType;
64 
68 typedef struct dwObjectArray
69 {
70  uint32_t maxCount;
71  uint32_t count;
73 
74  void* objects;
76 
87  uint32_t maxObjectCount,
89 
98 
108 
119  dwLaneAssignmentArray* outAssignments,
120  const dwObjectArray* in);
121 
132  const dwObstacleArray* obstacles,
133  const dwLaneAssignmentArray* assignments);
134 
144  const dwLaneAssignmentArray* assignments);
145 
146 #ifdef __cplusplus
147 }
148 #endif
149 
151 #endif // DW_WORLD_OBJECT_ARRAY_H_
NVIDIA DriveWorks API: World Model Lane Assignment
Lidar object.
Definition: ObjectArray.h:57
Max number of object types.
Definition: ObjectArray.h:62
NVIDIA DriveWorks API: World Model Lanes
Radar object.
Definition: ObjectArray.h:58
Fused object.
Definition: ObjectArray.h:59
uint32_t count
Definition: ObjectArray.h:71
uint32_t maxCount
Definition: ObjectArray.h:70
dwStatus
Status definition.
Definition: Status.h:166
DW_API_PUBLIC dwStatus dwObjectArray_fromObstacleArray(dwObjectArray *out, const dwObstacleArray *obstacles, const dwLaneAssignmentArray *assignments)
Copy obstacle array and lane assignment array into object array.
DW_API_PUBLIC dwStatus dwObjectArray_toObstacleArray(dwObstacleArray *outObstacles, dwLaneAssignmentArray *outAssignments, const dwObjectArray *in)
Copy object array to obstacle array and lane assignment array.
Freespace object.
Definition: ObjectArray.h:60
DW_API_PUBLIC dwStatus dwObjectArray_create(dwObjectArray *array, uint32_t maxObjectCount, dwObjectType objectType)
Populate a dwObjectArray struct.
Homogeneous array of structs.
Definition: ObjectArray.h:68
dwObjectType objectType
Definition: ObjectArray.h:72
void * objects
Definition: ObjectArray.h:74
NVIDIA DriveWorks API: World Module
DW_API_PUBLIC dwStatus dwObjectArray_copyDetailsToObstacle(dwObjectArray *inout)
Copy object details field to obstacle field in each of the elements of the array. ...
dwObjectType
List of object types known to dwObjectArray.
Definition: ObjectArray.h:55
DW_API_PUBLIC dwStatus dwObjectArray_destroy(dwObjectArray *array)
Destroy memory in a dwObjectArray struct.
Camera object.
Definition: ObjectArray.h:56
NVIDIA DriveWorks API: World Module
DW_API_PUBLIC dwStatus dwObjectArray_fromLaneAssignmentArray(dwObjectArray *out, const dwLaneAssignmentArray *assignments)
Copy lane assignment array into object array.
Traffic signal object.
Definition: ObjectArray.h:61
#define DW_API_PUBLIC
Definition: Exports.h:56