DriveWorks SDK Reference
3.5.78 Release
For Test and Development only

ObjectHistoryArray.h
Go to the documentation of this file.
1 #include <dw/core/Status.h>
3 // This code contains NVIDIA Confidential Information and is disclosed
4 // under the Mutual Non-Disclosure Agreement.
5 //
6 // Notice
7 // ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
8 // NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
9 // THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
10 // MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
11 //
12 // NVIDIA Corporation assumes no responsibility for the consequences of use of such
13 // information or for any infringement of patents or other rights of third parties that may
14 // result from its use. No license is granted by implication or otherwise under any patent
15 // or patent rights of NVIDIA Corporation. No third party distribution is allowed unless
16 // expressly authorized by NVIDIA. Details are subject to change without notice.
17 // This code supersedes and replaces all information previously supplied.
18 // NVIDIA Corporation products are not authorized for use as critical
19 // components in life support devices or systems without express written approval of
20 // NVIDIA Corporation.
21 //
22 // Copyright (c) 2017-2019 NVIDIA Corporation. All rights reserved.
23 //
24 // NVIDIA Corporation and its licensors retain all intellectual property and proprietary
25 // rights in and to this software and related documentation and any modifications thereto.
26 // Any use, reproduction, disclosure or distribution of this software and related
27 // documentation without an express license agreement from NVIDIA Corporation is
28 // strictly prohibited.
29 //
31 #ifndef DW_WORLD_OBJECT_HISTORY_ARRAY_H_
32 #define DW_WORLD_OBJECT_HISTORY_ARRAY_H_
33 
34 #include <dw/core/Status.h>
35 #include <dw/world/Object.h>
36 #include <dw/world/ObjectArray.h>
37 
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
51 
55 typedef struct dwObjectHistoryArray
56 {
57  void* objects;
58 
59  uint32_t maxObjectCount;
60  uint32_t maxHistoryCount;
61 
62  uint32_t objectCount;
63  uint32_t* historySpan;
65  uint32_t currentTimeIdx;
66 
68 
70 
73  uint32_t maxObjectCount,
74  uint32_t maxHistoryCount,
76 
79 
89  const dwObjectHistoryArray* in);
90 
100 
101 #ifdef __cplusplus
102 }
103 #endif
104 #endif // DW_WORLD_OBJECT_HISTORY_ARRAY_H_
NVIDIA DriveWorks API: World Module
DW_API_PUBLIC dwStatus dwObjectHistoryArray_create(dwObjectHistoryArray *array, uint32_t maxObjectCount, uint32_t maxHistoryCount, dwObjectType objectType)
DW_API_PUBLIC dwStatus dwObjectHistoryArray_copy(dwObjectHistoryArray *dst, const dwObjectHistoryArray *src)
copy a history array to another history array.
Defines a homogeneous array of objects and their history.
dwStatus
Status definition.
Definition: Status.h:178
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
Definition: Types.h:82
DW_API_PUBLIC dwStatus dwObjectHistoryArray_getObjectArray(dwObjectArray *out, const dwObjectHistoryArray *in)
get the object array from object history array using current timestamp
Homogeneous array of structs.
Definition: ObjectArray.h:68
NVIDIA DriveWorks API: World Module
dwObjectType
List of object types known to dwObjectArray.
Definition: ObjectArray.h:55
DW_API_PUBLIC dwStatus dwObjectHistoryArray_destroy(dwObjectHistoryArray *array)
#define DW_API_PUBLIC
Definition: Exports.h:56
NVIDIA DriveWorks API: Core Status Methods