Gocator Development Kit
 All Classes Files Functions Variables Typedefs Friends Modules Pages
GdkDef.h
Go to the documentation of this file.
1 /**
2  * @file GdkDef.h
3  * @brief Essential Gdk declarations.
4  *
5  * @internal
6  * Copyright (C) 2013 by LMI Technologies Inc. All rights reserved.
7  */
8 #ifndef GDK_DEF_H
9 #define GDK_DEF_H
10 
11 #include <kApi/kApiDef.h>
12 
13 kBeginHeader()
14 
15 #if defined(GDK_EMIT)
16 # define GdkFx(TYPE) kExportFx(TYPE)
17 # define GdkDx(TYPE) kExportDx(TYPE)
18 #else
19 # define GdkFx(TYPE) kImportFx(TYPE)
20 # define GdkDx(TYPE) kImportDx(TYPE)
21 #endif
22 
23 typedef struct GdkRegion2d64f
24 {
25  k64f x;
26  k64f y;
27  k64f width;
28  k64f length;
29 } GdkRegion2d64f;
30 
31 typedef struct GdkRegion3d64f
32 {
33  k64f x;
34  k64f y;
35  k64f z;
36  k64f width;
37  k64f length;
38  k64f height;
39 } GdkRegion3d64f;
40 
41 typedef struct GdkRegionXZ64f
42 {
43  k64f x;
44  k64f z;
45  k64f width;
46  k64f height;
47 } GdkRegionXZ64f;
48 
49 typedef struct GdkPointXZ16s
50 {
51  k16s x;
52  k16s z;
53 } GdkPointXZ16s;
54 
55 GdkFx(kStatus) GdkRegion3d64f_FromRect(GdkRegion3d64f* region, const kRect3d64f* rect);
56 GdkFx(kStatus) GdkRegion3d64f_ToRect(const GdkRegion3d64f* region, kRect3d64f* rect);
57 
58 /**
59 * @struct GdkOrientation
60 * @extends kValue
61 * @ingroup Gdk
62 * @brief Represents the sensor system orientation.
63 */
64 typedef k32s GdkOrientation;
65 
66 /** @relates GdkOrientation @{ */
67 #define GDK_ORIENTATION_WIDE (0) ///< Wide layout.
68 #define GDK_ORIENTATION_OPPOSITE (1) ///< Opposite layout.
69 #define GDK_ORIENTATION_REVERSE (2) ///< Reverse layout.
70 /** @} */
71 
72 /**
73 * @struct GdkDataSource
74 * @extends kValue
75 * @ingroup Gdk
76 * @brief Represents a data source selections.
77 */
78 typedef k32s GdkDataSource;
79 
80 /** @relates GdkDataSource @{ */
81 #define GDK_DATA_SOURCE_NONE (-1) ///< None or invalid.
82 #define GDK_DATA_SOURCE_TOP (0) ///< Top.
83 #define GDK_DATA_SOURCE_BOTTOM (1) ///< Bottom.
84 #define GDK_DATA_SOURCE_TOP_LEFT (2) ///< Top left.
85 #define GDK_DATA_SOURCE_TOP_RIGHT (3) ///< Top right.
86 #define GDK_DATA_SOURCE_TOP_BOTTOM (4) ///< Top and bottom (separate data streams).
87 #define GDK_DATA_SOURCE_LEFT_RIGHT (5) ///< Left and right (separate data streams).
88 #define GDK_DATA_SOURCE_COUNT (6) ///< Reserved for internal use.
89 /** @} */
90 
91 /**
92 * @struct GdkDataType
93 * @extends kValue
94 * @ingroup Gdk
95 * @brief Represents data source selections. Used as a bitmask.
96 */
97 typedef k32s GdkDataType;
98 
99 /** @relates GdkDataType @{ */
100 #define GDK_DATA_TYPE_NONE (0x1) ///< None.
101 #define GDK_DATA_TYPE_RANGE (0x2) ///< Range data.
102 #define GDK_DATA_TYPE_UNIFORM_PROFILE (0x4) ///< Uniformly-spaced (resampled) profile data.
103 #define GDK_DATA_TYPE_RAW_PROFILE (0x8) ///< Unresampled profile data.
104 #define GDK_DATA_TYPE_UNIFORM_SURFACE (0x10) ///< Uniformly-spaced height map.
105 #define GDK_DATA_TYPE_RAW_SURFACE (0x20) ///< Unresampled point cloud.
106 #define GDK_DATA_TYPE_UNMERGED_RAW_PROFILE (0x40) ///< Unmerged raw profile data. Reserved for future use.
107 /** @} */
108 
109 /**
110 * @struct GdkAxis
111 * @extends kValue
112 * @ingroup Gdk
113 * @brief Represents data source selections.
114 */
115 typedef k32s GdkAxis;
116 
117 /** @relates GdkAxis @{ */
118 #define GDK_AXIS_X (0) ///< X Axis.
119 #define GDK_AXIS_Y (1) ///< Y Axis.
120 #define GDK_AXIS_Z (2) ///< Z Axis.
121 #define GDK_AXIS_COUNT (3) ///< Reserved for internal use.
122 #define GDK_AXIS_NONE (3) ///< Reserved for internal use.
123 /** @} */
124 
125 GdkFx(const kChar*) GdkAxis_Format(GdkAxis axis);
126 GdkFx(GdkAxis) GdkAxis_Parse(const kChar* name);
127 
128 /**
129 * @struct GdkRefFrame
130 * @extends kValue
131 * @ingroup Gdk
132 * @brief Represents data source selections.
133 */
134 typedef k32s GdkRefFrame;
135 
136 /** @relates GdkRefFrame @{ */
137 #define GDK_REF_FRAME_SENSOR (0) ///< Sensor frame of reference.
138 #define GDK_REF_FRAME_SCAN (1) ///< Scan frame of reference (X in sensor frame, Y in part frame).
139 #define GDK_REF_FRAME_PART (2) ///< Part frame of reference.
140 /** @} */
141 
142 /**
143 * @struct GdkMeasurementValueType
144 * @extends kValue
145 * @ingroup Gdk
146 * @brief Represents data source selections.
147 */
149 
150 /** @relates GdkMeasurementValueType @{ */
151 #define GDK_MEASUREMENT_VALUE_TYPE_VALUE (0) ///< Generic value.
152 #define GDK_MEASUREMENT_VALUE_TYPE_X (1) ///< X value (mm).
153 #define GDK_MEASUREMENT_VALUE_TYPE_Y (2) ///< Y value (mm).
154 #define GDK_MEASUREMENT_VALUE_TYPE_Z (3) ///< Z value (mm).
155 #define GDK_MEASUREMENT_VALUE_TYPE_X_ANGLE (4) ///< X angle (degrees).
156 #define GDK_MEASUREMENT_VALUE_TYPE_Y_ANGLE (5) ///< Y angle (degrees).
157 #define GDK_MEASUREMENT_VALUE_TYPE_Z_ANGLE (6) ///< Z angle (degrees).
158 /** @} */
159 
160 /**
161 * @struct GdkMeasurementDecision
162 * @extends kValue
163 * @ingroup Gdk
164 * @brief Represents a measurement result decision.
165 */
167 
168 /** @relates GdkMeasurementDecision @{ */
169 #define GDK_MEASUREMENT_OK (0) ///< No error.
170 #define GDK_MEASUREMENT_ERROR_VALUE (0x2) ///< Invalid measurement value.
171 #define GDK_MEASUREMENT_ERROR_ANCHOR (0x4) ///< Invalid anchor input.
172 #define GDK_MEASUREMENT_ERROR_PART_MATCH (0x8) ///< Part matching failure.
173 /** @} */
174 
175 GdkFx(kStatus) GdkLogf(const kChar* message, ...);
176 
177 kEndHeader()
178 
179 #endif
Represents data source selections.
Represents a data source selections.
Represents data source selections.
Represents data source selections.
Represents data source selections. Used as a bitmask.
Represents a measurement result decision.
Represents the sensor system orientation.