GoWebScan API
GoWebScanConfigSensor.h
Go to the documentation of this file.
1 /**
2 * @file GoWebScanConfigSensor.h
3 * @brief Declares a GoWebScanConfigSensor object.
4 *
5 * @internal
6 * Copyright (C) 2017-2026 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 
11 #ifndef GO_WEB_SCAN_CONFIG_SENSOR_H
12 #define GO_WEB_SCAN_CONFIG_SENSOR_H
13 
19 #include <GoSdk/GoSdk.h>
20 
21 /**
22 * @class GoWebScanConfigSensor
23 * @extends kObject
24 * @ingroup GoWebScanSdk-Config
25 * @brief Represents a container for sensor-level parameters which are translated from user
26 * parameters set in GoWebScanSettings. This class contains properties describing
27 * the sensor orientation and contains a list of node configuration objects. In
28 * systems with vision sensors, this class represents a profile-vision sensor pair
29 * (sensors mounted together). This class is intended to be constructed from
30 * within a GoWebScanConfig object.
31 *
32 * GoWebScanConfig organizes the configuration at the system, group, sensor, and node
33 * levels. Configuration of the groups within the system are represented by the
34 * GoWebScanConfigGroup class, sensors by the GoWebScanConfigSensor class, and nodes
35 * by the GoWebScanConfigNode class. GoWebScanConfig will construct and own these
36 * classes.
37 */
39 
40 // Forward declarations
41 typedef kObject GoWebScanConfig;
44 
45 /**
46  * Constructs a GoWebScanConfigSensor object.
47  *
48  * @public @memberof GoWebScanConfigSensor
49  * @param sensor Receives the constructed GoWebScanConfigSensor object.
50  * @param group Parent group configuration.
51  * @param settingsSensor User settings for the sensor.
52  * @param index Index of sensor in group.
53  * @param calibration System calibration. Set to kNULL if running system uncalibrated or if
54  * running system calibration.
55  * @param sensorInfo List of GoWebScanConfigSensorInfo structs representing information
56  * from each sensor in the system.
57  * @param allocator Memory allocator (or kNULL for default).
58  * @return Operation status.
59  */
61  kSize index, GoWebScanCal calibration, const GoWebScanConfigSensorInfo* sensorInfo, kAlloc allocator);
62 
63 /**
64 * Gets the configuration of the group that the sensor is part of.
65 *
66 * @public @memberof GoWebScanConfigSensor
67 * @param sensor GoWebScanConfigSensor object.
68 * @return GoWebScanConfigGroup object representing group configuration.
69 */
71 
72 /**
73  * Gets the serial number of the sensor. In systems with vision sensors, this is the profile
74  * sensor's ID.
75  *
76  * @public @memberof GoWebScanConfigSensor
77  * @param sensor GoWebScanConfigSensor object.
78  * @return Profile sensor ID.
79  */
81 
82 /**
83  * Gets the serial number of the vision sensor in a profile-vision sensor pair (for systems with
84  * vision). For systems without vision, this will return GO_WEB_SCAN_UNASSIGNED_SERIAL_NUMBER.
85  *
86  * @public @memberof GoWebScanConfigSensor
87  * @param sensor GoWebScanConfigSensor object.
88  * @return Vision sensor ID.
89  */
91 
92 /**
93 * Gets the plane of the group the sensor is part of.
94 *
95 * @public @memberof GoWebScanConfigSensor
96 * @param sensor GoWebScanConfigSensor object.
97 * @return Plane of group sensor is located in.
98 */
100 
101 /**
102  * Gets the sensor column within group. Each sensor resides in a particular sensor column
103  * within the group. The columns increase left-to-right or right-to-left based on the X
104  * orientation. The column includes disabled/missing devices.
105  *
106  * @public @memberof GoWebScanConfigSensor
107  * @param sensor GoWebScanConfigSensor object.
108  * @return Sensor column.
109  */
111 
112 /**
113  * Gets the sensor index within group (excludes disabled/missing devices).
114  *
115  * @public @memberof GoWebScanConfigSensor
116  * @param sensor GoWebScanConfigSensor object.
117  * @return Sensor index.
118  */
120 
121 /**
122  * Gets the X-orientation of the sensor. Normal (1) or opposite (0). Normal is defined as sensor
123  * X-axis aligned to the system X-axis in standard orientation (Refer to GoWebScanConfig for
124 * a description of standard orientation).
125  *
126  * @public @memberof GoWebScanConfigSensor
127  * @param sensor GoWebScanConfigSensor object.
128  * @return Sensor X-orientation.
129  * @see GoWebScanConfig
130  */
132 
133 /**
134  * Gets the Y-orientation of the sensor. Normal (1) or opposite (0). Normal is defined as sensor
135  * Y-axis opposite to the system Y-axis in standard orientation (Refer to GoWebScanConfig for
136 * a description of standard orientation).
137  *
138  * @public @memberof GoWebScanConfigSensor
139  * @param sensor GoWebScanConfigSensor object.
140  * @return Sensor Y-orientation.
141  * @see GoWebScanConfig
142  */
144 
145 /**
146  * Gets the Z-orientation of the sensor. Normal (1) or opposite (0). Normal is defined as sensor
147  * Z-axis opposite to the system Z-axis in standard orientation (Refer to GoWebScanConfig for
148 * a description of standard orientation).
149  *
150  * @public @memberof GoWebScanConfigSensor
151  * @param sensor GoWebScanConfigSensor object.
152  * @return Sensor Z-orientation.
153  * @see GoWebScanConfig
154  */
156 
157 /**
158 * Gets the sensor calibration-edge-orientation: Normal (1) or opposite (0).
159 *
160 * @public @memberof GoWebScanConfigSensor
161 * @param sensor GoWebScanConfigSensor object.
162 * @return Sensor calibration edge orientation.
163 */
165 
166 /**
167 * Gets the count of nodes in the sensor.
168 *
169 * @public @memberof GoWebScanConfigSensor
170 * @param sensor GoWebScanConfigSensor object.
171 * @return Sensor's node count.
172 */
174 
175 /**
176 * Gets the configuration of a node at a specified index in the sensor.
177 *
178 * @public @memberof GoWebScanConfigSensor
179 * @param sensor GoWebScanConfigSensor object.
180 * @param index Node index.
181 * @return Node configuration.
182 */
184 
185 /**
186 * Gets the list of obstructions defined for the sensor.
187 *
188 * @public @memberof GoWebScanConfigSensor
189 * @param sensor GoWebScanConfigSensor object.
190 * @return List of obstructions. Type GoWebScanObstruction.
191 */
193 
194 /**
195 * Gets the sensor x-rotation-orientation.
196 *
197 * @public @memberof GoWebScanConfigSensor
198 * @param sensor GoWebScanConfigSensor object.
199 * @return Sensor x-rotation-orientation: normal (1) or opposite (0).
200 */
202 
203 /**
204 * Update the calibration.
205 *
206 * @public @memberof GoWebScanConfigSensor
207 * @param sensor GoWebScanConfigSensor object.
208 * @param calibration System calibration. Set to kNULL if running system uncalibrated or if running system calibration.
209 * @return Operation status.
210 */
212 
213 #include <GoWebScanSdk/GoWebScanConfigSensor.x.h>
214 
215 #endif
Represents a container for node-level parameters which are translated from user parameters set in GoW...
GoWebScanConfigNode GoWebScanConfigSensor_NodeAt(GoWebScanConfigSensor sensor, kSSize index)
Gets the configuration of a node at a specified index in the sensor.
GoWebScanConfigGroup GoWebScanConfigSensor_Parent(GoWebScanConfigSensor sensor)
Gets the configuration of the group that the sensor is part of.
kStatus GoWebScanConfigSensor_Construct(GoWebScanConfigSensor *sensor, GoWebScanConfigGroup group, GoWebScanSettingsSensor settingsSensor, kSize index, GoWebScanCal calibration, const GoWebScanConfigSensorInfo *sensorInfo, kAlloc allocator)
Constructs a GoWebScanConfigSensor object.
Essential GoWebScan declarations.
Represents information from each sensor in the system, collected and provided by the user application...
Definition: GoWebScanConfig.h:75
k32s GoWebScanConfigSensor_YOrientation(GoWebScanConfigSensor sensor)
Gets the Y-orientation of the sensor.
Represents a container for sensor-level parameters which are translated from user parameters set in G...
Represents a container for group-level parameters which are translated from user parameters set in Go...
Declares a GoWebScanCal object.
kSSize GoWebScanConfigSensor_Index(GoWebScanConfigSensor sensor)
Gets the sensor index within group (excludes disabled/missing devices).
k32s GoWebScanConfigSensor_XOrientation(GoWebScanConfigSensor sensor)
Gets the X-orientation of the sensor.
kSSize GoWebScanConfigSensor_Column(GoWebScanConfigSensor sensor)
Gets the sensor column within group.
kSSize GoWebScanConfigSensor_NodeCount(GoWebScanConfigSensor sensor)
Gets the count of nodes in the sensor.
kArrayList GoWebScanConfigSensor_Obstructions(GoWebScanConfigSensor sensor)
Gets the list of obstructions defined for the sensor.
k32s GoWebScanConfigSensor_EOrientation(GoWebScanConfigSensor sensor)
Gets the sensor calibration-edge-orientation: Normal (1) or opposite (0).
k32s GoWebScanConfigSensor_ProfileId(GoWebScanConfigSensor sensor)
Gets the serial number of the sensor.
k32s GoWebScanConfigSensor_ZOrientation(GoWebScanConfigSensor sensor)
Gets the Z-orientation of the sensor.
Declares a GoWebScanProcess object.
Represents a container for the system calibration. The system calibration corrects for mounting diffe...
k32s GoWebScanConfigSensor_Plane(GoWebScanConfigSensor sensor)
Gets the plane of the group the sensor is part of.
Represents a container for user-configurable settings of a sensor within the system. For systems with vision, a GoWebScanSettingsSensor object represents a pair of vision and profile sensors (sensor mounted together).
k32s GoWebScanConfigSensor_VisionId(GoWebScanConfigSensor sensor)
Gets the serial number of the vision sensor in a profile-vision sensor pair (for systems with vision)...
k32s GoWebScanConfigSensor_TOrientation(GoWebScanConfigSensor sensor)
Gets the sensor x-rotation-orientation.
kStatus GoWebScanConfigSensor_UpdateCalibration(GoWebScanConfigSensor sensor, GoWebScanCal calibration)
Update the calibration.
Declares a GoWebScanConfigGroup object.
Represents a container for system-level parameters which are translated from user parameters set in G...
Declares a GoWebScanConfig object.