DriveWorks SDK Reference
5.14.77 Release
For Test and Development only

MatrixTypes.h
Go to the documentation of this file.
1
2// 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"
7// NVIDIA MAKES NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY,
8// OR OTHERWISE WITH RESPECT TO THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY
9// IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A
10// PARTICULAR PURPOSE.
11//
12// NVIDIA Corporation assumes no responsibility for the consequences of use of
13// such information or for any infringement of patents or other rights of third
14// parties that may result from its use. No license is granted by implication or
15// otherwise under any patent or patent rights of NVIDIA Corporation. No third
16// party distribution is allowed unless expressly authorized by NVIDIA. Details
17// are subject to change without notice. This code supersedes and replaces all
18// information previously supplied. NVIDIA Corporation products are not
19// authorized for use as critical components in life support devices or systems
20// without express written approval of NVIDIA Corporation.
21//
22// Copyright (c) 2022-2023 NVIDIA Corporation. All rights reserved.
23//
24// NVIDIA Corporation and its licensors retain all intellectual property and
25// proprietary rights in and to this software and related documentation and any
26// modifications thereto. Any use, reproduction, disclosure or distribution of
27// this software and related documentation without an express license agreement
28// from NVIDIA Corporation is strictly prohibited.
29//
31#ifndef DW_CORE_BASE_MATRIXTYPES_H_
32#define DW_CORE_BASE_MATRIXTYPES_H_
33// Generated by dwProto from matrix_types.proto DO NOT EDIT BY HAND!
34// See //3rdparty/shared/dwproto/README.md for more information
35
36// RFD - MISRAC 2012 Rule 1.4: Using emergent head file (stdalign.h)
37// coverity[misra_c_2012_rule_1_4_violation]
38#include <stdalign.h>
39
41
42#ifdef __cplusplus
43extern "C" {
44#endif
45
47//# sergen(generate)
48typedef struct dwVector2f
49{
50 float32_t x __attribute__((aligned(8)));
53
55//# sergen(generate)
56typedef struct dwVector2d
57{
58 float64_t x __attribute__((aligned(16)));
61
63typedef struct dwVector2i
64{
65 int32_t x __attribute__((aligned(8)));
66 int32_t y;
68
70typedef struct dwVector2ui
71{
72 uint32_t x __attribute__((aligned(8)));
73 uint32_t y;
75
77//# sergen(generate)
78typedef struct dwVector3f
79{
84
86//# sergen(generate)
87typedef struct dwVector3d
88{
93
95typedef struct dwVector4f
96{
97 float32_t x __attribute__((aligned(16)));
101} dwVector4f;
102
104typedef struct dwVector4d
105{
106 float64_t x __attribute__((aligned(16)));
110} dwVector4d;
111
113typedef struct dwVector3ui
114{
115 uint32_t x;
116 uint32_t y;
117 uint32_t z;
119
121typedef struct dwVector4ui
122{
123 uint32_t x __attribute__((aligned(16)));
124 uint32_t y;
125 uint32_t z;
126 uint32_t w;
128
131typedef struct dwMatrix2f
132{
133 float32_t array[4] __attribute__((aligned(16)));
134} dwMatrix2f;
135
138typedef struct dwMatrix3f
139{
141} dwMatrix3f;
142
145typedef struct dwMatrix3d
146{
148} dwMatrix3d;
149
152typedef struct dwMatrix4f
153{
154 float32_t array[16] __attribute__((aligned(16)));
155} dwMatrix4f;
156
159typedef struct dwMatrix34f
160{
161 float32_t array[12] __attribute__((aligned(16)));
163
166typedef struct dwMatrix6f
167{
168 float32_t array[36] __attribute__((aligned(16)));
169} dwMatrix6f;
170
175typedef struct dwTransformation2f
176{
179
185typedef struct dwTransformation3f
186{
187 float32_t array[16] __attribute__((aligned(16)));
189
204typedef struct dwConfidence1f
205{
210
213typedef struct dwConfidence2f
214{
219
222typedef struct dwConfidence3f
223{
228
229#ifdef __cplusplus
230}
231#endif
232
233#endif // DW_CORE_BASE_MATRIXTYPES_H_
NVIDIA DriveWorks API: Core BasicTypes
float32_t threshold
Definition: MatrixTypes.h:225
float64_t y
Definition: MatrixTypes.h:90
float32_t variance
Variance of inliers.
Definition: MatrixTypes.h:208
uint32_t y
Definition: MatrixTypes.h:116
float32_t z
Definition: MatrixTypes.h:82
float32_t threshold
Definition: MatrixTypes.h:216
uint32_t x
Definition: MatrixTypes.h:115
float64_t z
Definition: MatrixTypes.h:91
float32_t y
Definition: MatrixTypes.h:81
float32_t confidence
Definition: MatrixTypes.h:215
float64_t array[9]
Definition: MatrixTypes.h:147
float32_t x
Definition: MatrixTypes.h:80
dwMatrix2f covariance
Definition: MatrixTypes.h:217
float64_t x
Definition: MatrixTypes.h:89
float32_t threshold
Inlier threshold.
Definition: MatrixTypes.h:207
dwMatrix3f covariance
Definition: MatrixTypes.h:226
float32_t confidence
Definition: MatrixTypes.h:224
float32_t array[9]
Definition: MatrixTypes.h:140
float32_t array[9]
Definition: MatrixTypes.h:177
uint32_t z
Definition: MatrixTypes.h:117
float32_t confidence
Inlier ratio [0,1].
Definition: MatrixTypes.h:206
Confidence structure with variance of inliers.
Definition: MatrixTypes.h:205
Confidence structure with 2x2 covariance matrix.
Definition: MatrixTypes.h:214
Confidence structure with 3x3 covariance matrix.
Definition: MatrixTypes.h:223
Defines a 3x3 matrix of double floating point numbers by using only one array.
Definition: MatrixTypes.h:146
Defines a 3x3 matrix of floating point numbers by using only one array.
Definition: MatrixTypes.h:139
Specifies a 2D transformation as a 3 x 3 matrix in column-major order.
Definition: MatrixTypes.h:176
Defines a three-element double-precision floating point vector.
Definition: MatrixTypes.h:88
Defines a three-element floating-point vector.
Definition: MatrixTypes.h:79
Defines a three-element unsigned-integer vector.
Definition: MatrixTypes.h:114
float float32_t
Specifies POD types.
Definition: BasicTypes.h:59
double float64_t
Definition: BasicTypes.h:60
Defines a 2x2 matrix of floating point numbers by using only one array.
Definition: MatrixTypes.h:132
float32_t array[4] __attribute__((aligned(16)))
Defines a 3x4 matrix of floating point numbers (column major) by using only one array.
Definition: MatrixTypes.h:160
float32_t array[12] __attribute__((aligned(16)))
Defines a 4x4 matrix of floating point numbers (column major) by using only one array.
Definition: MatrixTypes.h:153
float32_t array[16] __attribute__((aligned(16)))
Defines a 6x6 matrix of floating point numbers (column major) by using only one array.
Definition: MatrixTypes.h:167
float32_t array[36] __attribute__((aligned(16)))
Specifies a 3D rigid transformation.
Definition: MatrixTypes.h:186
float32_t array[16] __attribute__((aligned(16)))
3D rigid transformation array
Defines a two-element double-precision floating-point vector.
Definition: MatrixTypes.h:57
float64_t y
Definition: MatrixTypes.h:59
float64_t x __attribute__((aligned(16)))
Defines a two-element single-precision floating-point vector.
Definition: MatrixTypes.h:49
float32_t y
Definition: MatrixTypes.h:51
float32_t x __attribute__((aligned(8)))
Defines a two-element integer vector.
Definition: MatrixTypes.h:64
int32_t x __attribute__((aligned(8)))
int32_t y
Definition: MatrixTypes.h:66
Defines a two-element unsigned-integer vector.
Definition: MatrixTypes.h:71
uint32_t x __attribute__((aligned(8)))
uint32_t y
Definition: MatrixTypes.h:73
Defines a four-element double-precision floating point vector.
Definition: MatrixTypes.h:105
float64_t w
Definition: MatrixTypes.h:109
float64_t y
Definition: MatrixTypes.h:107
float64_t x __attribute__((aligned(16)))
float64_t z
Definition: MatrixTypes.h:108
Defines a four-element single-precision floating point vector.
Definition: MatrixTypes.h:96
float32_t w
Definition: MatrixTypes.h:100
float32_t y
Definition: MatrixTypes.h:98
float32_t z
Definition: MatrixTypes.h:99
float32_t x __attribute__((aligned(16)))
Defines a four-element unsigned-integer vector.
Definition: MatrixTypes.h:122
uint32_t y
Definition: MatrixTypes.h:124
uint32_t x __attribute__((aligned(16)))
uint32_t w
Definition: MatrixTypes.h:126
uint32_t z
Definition: MatrixTypes.h:125