Gocator API

- Home
- Types
- Files

All Classes Files Functions Variables Typedefs Macros Modules Pages
GoSdkDef.h
Go to the documentation of this file.
1 /**
2 * @file GoSdkDef.h
3 * @brief Essential SDK declarations.
4 *
5 * @internal
6 * Copyright (C) 2015 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 #ifndef GO_SDK_DEF_H
11 #define GO_SDK_DEF_H
12
13 #include <kApi/kApiDef.h>
14 #include <kApi/Io/kNetwork.h>
15
16 kBeginHeader()
17
18 #if defined (GO_EMIT)
19 # define GoFx(TYPE) kExportFx(TYPE) ///< GoSdk function declaration helper.
20 # define GoDx(TYPE) kExportDx(TYPE) ///< GoSdk data declaration helper.
21 #elif defined (GO_STATIC)
22 # define GoFx(TYPE) kInFx(TYPE)
23 # define GoDx(TYPE) kInDx(TYPE)
24 #else
25 # define GoFx(TYPE) kImportFx(TYPE)
26 # define GoDx(TYPE) kImportDx(TYPE)
27 #endif
28
29 /**
30 * Returns the SDK version.
31 *
32 * @public @memberof GoSdk
33 * @version Introduced in firmware 4.0.10.27
34 * @return Protocol version.
35 */
36 GoFx(kVersion) GoSdk_Version();
37
38 /**
39 * Returns the protocol version associated with the SDK.
40 *
41 * @public @memberof GoSdk
42 * @version Introduced in firmware 4.0.10.27
43 * @return Protocol version.
44 */
45 GoFx(kVersion) GoSdk_ProtocolVersion();
46
47 /**
48 * Frees the memory associated with a given kObject sourced class handle.
49 *
50 * @public @memberof GoSdk
51 * @version Introduced in firmware 4.0.10.27
52 * @param object A kObject.
53 * @return Operation status.
54 */
55 GoFx(kStatus) GoDestroy(kObject object);
56
57 /**
58 * @struct GoUpgradeFxArgs
59 * @extends kValue
60 * @ingroup GoSdk
61 * @brief Represents arguments provided to an upgrade callback function.
62 */
63 typedef struct GoUpgradeFxArgs
64 {
65 k64f progress; ///< Upgrade progress (percentage).
66 } GoUpgradeFxArgs;
67
68 typedef kStatus (kCall* GoUpgradeFx) (kPointer receiver, kObject sender, GoUpgradeFxArgs* args);
69
70
71 /**
72 * @struct GoUser
73 * @extends kValue
74 * @ingroup GoSdk
75 * @brief Represents a user id.
76 *
77 * The following enumerators are defined:
78 * - #GO_USER_NONE
79 * - #GO_USER_ADMIN
80 * - #GO_USER_TECH
81 */
82 typedef k32s GoUser;
83 /** @name GoUser
84 *@{*/
85 #define GO_USER_NONE (0) ///< No user.
86 #define GO_USER_ADMIN (1) ///< Administrator user.
87 #define GO_USER_TECH (2) ///< Technician user.
88 /**@}*/
89
90 /**
91 * @struct GoState
92 * @extends kValue
93 * @ingroup GoSdk
94 * @brief Represents the current state of a sensor object.
95 *
96 * The following enumerators are defined:
97 * - #GO_STATE_ONLINE
98 * - #GO_STATE_OFFLINE
99 * - #GO_STATE_RESETTING
100 * - #GO_STATE_INCOMPATIBLE
101 * - #GO_STATE_INCONSISTENT
102 * - #GO_STATE_UNRESPONSIVE
103 * - #GO_STATE_CANCELLED
104 * - #GO_STATE_INCOMPLETE
105 * - #GO_STATE_BUSY
106 * - #GO_STATE_READY
107 * - #GO_STATE_RUNNING
108 */
109 typedef k32s GoState;
110 /** @name GoState
111 *@{*/
112 #define GO_STATE_ONLINE (0) ///< Sensor disconnected, but detected via discovery.
113 #define GO_STATE_OFFLINE (1) ///< Sensor disconnected and no longer detected via discovery (refresh system to eliminate sensor).
114 #define GO_STATE_RESETTING (2) ///< Sensor disconnected and currently resetting (wait for completion).
115 #define GO_STATE_INCOMPATIBLE (4) ///< Sensor connected, but protocol incompatible with client (upgrade required).
116 #define GO_STATE_INCONSISTENT (5) ///< Sensor connected, but remote state was changed (refresh sensor).
117 #define GO_STATE_UNRESPONSIVE (6) ///< Sensor connected, but no longer detected via health or discovery (disconnect).
118 #define GO_STATE_CANCELLED (7) ///< Sensor connected, but communication aborted via GoSensor_Cancel function (disconnect or refresh sensor).
119 #define GO_STATE_INCOMPLETE (8) ///< Sensor connected, but a required buddy sensor is not present (wait or remove buddy association).
120 #define GO_STATE_BUSY (9) ///< Sensor connected, but currently controlled by another sensor (cannot be configured directly).
121 #define GO_STATE_READY (10) ///< Sensor connected and ready to accept configuration commands.
122 #define GO_STATE_RUNNING (11) ///< Sensor connected and currently running.
123 #define GO_STATE_UPGRADING (12) ///< Sensor is currently being upgraded.
124 /**@}*/
125
126 /**
127 * @struct GoRole
128 * @extends kValue
129 * @ingroup GoSdk
130 * @brief Represents a user role.
131 *
132 * The following enumerators are defined:
133 * - #GO_ROLE_MAIN
134 * - #GO_ROLE_BUDDY
135 */
136 typedef k32s GoRole;
137 /** @name GoRole
138 *@{*/
139 #define GO_ROLE_MAIN (0) ///< Sensor is operating as a main sensor.
140 #define GO_ROLE_BUDDY (1) ///< Sensor is operating as a buddy sensor.
141 /**@}*/
142
143 /**
144 * @struct GoAlignmentState
145 * @extends kValue
146 * @ingroup GoSdk
147 * @brief Represents an alignment state.
148 *
149 * The following enumerators are defined:
150 * - #GO_ALIGNMENT_STATE_NOT_ALIGNED
151 * - #GO_ALIGNMENT_STATE_ALIGNED
152 */
153 typedef k32s GoAlignmentState;
154 /** @name GoAlignmentState
155 *@{*/
156 #define GO_ALIGNMENT_STATE_NOT_ALIGNED (0) ///< Sensor is not aligned.
157 #define GO_ALIGNMENT_STATE_ALIGNED (1) ///< Sensor is aligned.
158 /**@}*/
159
160 /**
161 * @struct GoAlignmentRef
162 * @extends kValue
163 * @ingroup GoSdk
164 * @brief Represents an alignment reference.
165 *
166 * The following enumerators are defined:
167 * - #GO_ALIGNMENT_REF_FIXED
168 * - #GO_ALIGNMENT_REF_DYNAMIC
169 */
170 typedef k32s GoAlignmentRef;
171 /** @name GoAlignmentRef
172 *@{*/
173 #define GO_ALIGNMENT_REF_FIXED (0) ///< The alignment used will be specific to the sensor.
174 #define GO_ALIGNMENT_REF_DYNAMIC (1) ///< The alignment used will be specific to the current job if saved.
175 /**@}*/
176
177 /**
178 * @struct GoMode
179 * @extends kValue
180 * @ingroup GoSdk
181 * @brief Represents a scan mode.
182 *
183 * The following enumerators are defined:
184 * - #GO_MODE_UNKNOWN
185 * - #GO_MODE_VIDEO
186 * - #GO_MODE_RANGE
187 * - #GO_MODE_PROFILE
188 * - #GO_MODE_SURFACE
189 */
190 typedef k32s GoMode;
191 /** @name GoMode
192 *@{*/
193 #define GO_MODE_UNKNOWN (-1) ///< Unknown scan mode.
194 #define GO_MODE_VIDEO (0) ///< Video scan mode.
195 #define GO_MODE_RANGE (1) ///< Range scan mode.
196 #define GO_MODE_PROFILE (2) ///< Profile scan mode.
197 #define GO_MODE_SURFACE (3) ///< Surface scan mode.
198 /**@}*/
199
200
201 /**
202 * @struct GoTrigger
203 * @extends kValue
204 * @ingroup GoSdk
205 * @brief Represents a trigger.
206 *
207 * The following enumerators are defined:
208 * - #GO_TRIGGER_TIME
209 * - #GO_TRIGGER_ENCODER
210 * - #GO_TRIGGER_INPUT
211 * - #GO_TRIGGER_SOFTWARE
212 */
213 typedef k32s GoTrigger;
214 /** @name GoTrigger
215 *@{*/
216 #define GO_TRIGGER_TIME (0) ///< The sensor will be time triggered.
217 #define GO_TRIGGER_ENCODER (1) ///< The sensor will be encoder triggered.
218 #define GO_TRIGGER_INPUT (2) ///< The sensor will be digital input triggered.
219 #define GO_TRIGGER_SOFTWARE (3) ///< The sensor will be software triggered.
220 /** @} */
221
222 /**
223 * @struct GoEncoderTriggerMode
224 * @extends kValue
225 * @ingroup GoSdk
226 * @brief Represents an encoder's triggering behavior.
227 *
228 * The following enumerators are defined:
229 * - #GO_ENCODER_TRIGGER_MODE_TRACK_REVERSE
230 * - #GO_ENCODER_TRIGGER_MODE_IGNORE_REVERSE
231 * - #GO_ENCODER_TRIGGER_MODE_BIDIRECTIONAL
232 */
233 typedef k32s GoEncoderTriggerMode;
234 /** @name GoEncoderTriggerMode
235 *@{*/
236 #define GO_ENCODER_TRIGGER_MODE_TRACK_REVERSE (0) ///< Do not reverse trigger. Track reverse motion to prevent repeat forward triggers.
237 #define GO_ENCODER_TRIGGER_MODE_IGNORE_REVERSE (1) ///< Do not reverse trigger. Forward trigger unconditionally.
238 #define GO_ENCODER_TRIGGER_MODE_BIDIRECTIONAL (2) ///< Forward and reverse trigger.
239 /** @} */
240
241 /**
242 * @struct GoFrameRateMaxSource
243 * @extends kValue
244 * @ingroup GoSdk
245 * @brief Represents the current maximum frame rate limiting source.
246 *
247 * The following enumerators are defined:
248 * - #GO_FRAME_RATE_MAX_SOURCE_CAMERA
249 * - #GO_FRAME_RATE_MAX_SOURCE_PART_DETECTION
250 */
251 typedef k32s GoFrameRateMaxSource;
252 /** @name GoFrameRateMaxSource
253 *@{*/
254 #define GO_FRAME_RATE_MAX_SOURCE_CAMERA (0) ///< Limited by the sensor's camera configuration.
255 #define GO_FRAME_RATE_MAX_SOURCE_PART_DETECTION (1) ///< Limited by part detection logic.
256 /** @} */
257
258 /**
259 * @struct GoEncoderSpacingMinSource
260 * @extends kValue
261 * @ingroup GoSdk
262 * @brief Represents the current encoder period limiting source.
263 *
264 * The following enumerators are defined:
265 * - #GO_ENCODER_PERIOD_MAX_SOURCE_RESOLUTION
266 * - #GO_ENCODER_PERIOD_MAX_SOURCE_PART_DETECTION
267 */
268 typedef k32s GoEncoderSpacingMinSource;
269 /** @name GoEncoderSpacingMinSource
270 *@{*/
271 #define GO_ENCODER_PERIOD_MAX_SOURCE_RESOLUTION (0) ///< Limited by encoder resolution.
272 #define GO_ENCODER_PERIOD_MAX_SOURCE_PART_DETECTION (1) ///< Limited by part detection logic.
273 /**@}*/
274
275 /**
276 * @struct GoTriggerUnits
277 * @extends kValue
278 * @ingroup GoSdk
279 * @brief Represents the system's primary synchronization domain
280 *
281 * The following enumerators are defined:
282 * - #GO_TRIGGER_UNIT_TIME
283 * - #GO_TRIGGER_UNIT_ENCODER
284 */
285 typedef k32s GoTriggerUnits;
286 /** @name GoTriggerUnits
287 *@{*/
288 #define GO_TRIGGER_UNIT_TIME (0) ///< Base the system on the internal clock.
289 #define GO_TRIGGER_UNIT_ENCODER (1) ///< Base the system on the encoder.
290 /**@}*/
291
292 /**
293 * @struct GoExposureMode
294 * @extends kValue
295 * @ingroup GoSdk
296 * @brief Represents all possible exposure modes.
297 *
298 * The following enumerators are defined:
299 * - #GO_EXPOSURE_MODE_SINGLE
300 * - #GO_EXPOSURE_MODE_MULTIPLE
301 * - #GO_EXPOSURE_MODE_DYNAMIC
302 */
303 typedef k32s GoExposureMode;
304 /** @name GoExposureMode
305 *@{*/
306 #define GO_EXPOSURE_MODE_SINGLE (0) ///< Single exposure mode.
307 #define GO_EXPOSURE_MODE_MULTIPLE (1) ///< Multiple exposure mode.
308 #define GO_EXPOSURE_MODE_DYNAMIC (2) ///< Dynamic exposure mode.
309 /**@}*/
310
311 /**
312 * @struct GoOrientation
313 * @extends kValue
314 * @ingroup GoSdk
315 * @brief Represents a sensor orientation type.
316 *
317 * The following enumerators are defined:
318 * - #GO_ORIENTATION_WIDE
319 * - #GO_ORIENTATION_OPPOSITE
320 * - #GO_ORIENTATION_REVERSE
321 */
322 typedef k32s GoOrientation;
323 /** @name GoOrientation
324 *@{*/
325 #define GO_ORIENTATION_WIDE (0) ///< Wide sensor orientation.
326 #define GO_ORIENTATION_OPPOSITE (1) ///< Opposite sensor orientation.
327 #define GO_ORIENTATION_REVERSE (2) ///< Reverse sensor orientation.
328 /**@}*/
329
330 /**
331 * @struct GoInputSource
332 * @extends kValue
333 * @ingroup GoSdk
334 * @brief Represents a data input source.
335 *
336 * The following enumerators are defined:
337 * - #GO_INPUT_SOURCE_LIVE
338 * - #GO_INPUT_SOURCE_RECORDING
339 */
340 typedef k32s GoInputSource;
341 /** @name GoInputSource
342 *@{*/
343 #define GO_INPUT_SOURCE_LIVE (0) ///< The current data input source is from live sensor data.
344 #define GO_INPUT_SOURCE_RECORDING (1) ///< The current data source is from a replay.
345 /**@}*/
346
347 /**
348 * @struct GoSeekDirection
349 * @extends kValue
350 * @ingroup GoSdk
351 * @brief Represents a playback seek direction.
352 *
353 * The following enumerators are defined:
354 * - #GO_SEEK_DIRECTION_FORWARD
355 * - #GO_SEEK_DIRECTION_BACKWARD
356 */
357 typedef k32s GoSeekDirection;
358 /** @name GoSeekDirection
359 *@{*/
360 #define GO_SEEK_DIRECTION_FORWARD (0) ///< Seek forward in the current replay.
361 #define GO_SEEK_DIRECTION_BACKWARD (1) ///< Seek backward in the current replay.
362 /**@}*/
363
364 /**
365 * @struct GoDataSource
366 * @extends kValue
367 * @ingroup GoSdk
368 * @brief Represents a data source.
369 *
370 * The following enumerators are defined:
371 * #GO_DATA_SOURCE_NONE
372 * #GO_DATA_SOURCE_TOP
373 * #GO_DATA_SOURCE_BOTTOM
374 * #GO_DATA_SOURCE_TOP_LEFT
375 * #GO_DATA_SOURCE_TOP_RIGHT
376 * #GO_DATA_SOURCE_TOP_BOTTOM
377 * #GO_DATA_SOURCE_LEFT_RIGHT
378 */
379 typedef k32s GoDataSource;
380 /** @name GoDataSource
381 *@{*/
382 #define GO_DATA_SOURCE_NONE (-1) ///< Used to represent a buddy device when the buddy is not connected
383 #define GO_DATA_SOURCE_TOP (0) ///< Represents main device when in a single sensor or opposite orientation buddy setup. Also represents the combined main and buddy in a wide or reverse orientation
384 #define GO_DATA_SOURCE_BOTTOM (1) ///< Represents the buddy device in an opposite orientation buddy configuration
385 #define GO_DATA_SOURCE_TOP_LEFT (2) ///< Represents the main device in a wide or reverse orientation buddy configuration
386 #define GO_DATA_SOURCE_TOP_RIGHT (3) ///< Represents the buddy device in a wide or reverse orientation buddy configuration
387 #define GO_DATA_SOURCE_TOP_BOTTOM (4) ///< Represents both the main and buddy devices in a opposite orientation
388 #define GO_DATA_SOURCE_LEFT_RIGHT (5) ///< Represents a buddy configuration where data from the two devices are not merged (e.g. buddied 1000 series sensors in a wide layout)
389 /**@}*/
390
391 /**
392 * @struct GoSpacingIntervalType
393 * @extends kValue
394 * @ingroup GoSdk
395 * @brief Represents spacing interval types.
396 *
397 * The following enumerators are defined:
398 * - #GO_SPACING_INTERVAL_TYPE_MAX_RES
399 * - #GO_SPACING_INTERVAL_TYPE_BALANCED
400 * - #GO_SPACING_INTERVAL_TYPE_MAX_SPEED
401 */
402 typedef k32s GoSpacingIntervalType;
403 /** @name GoSpacingIntervalType
404 *@{*/
405 #define GO_SPACING_INTERVAL_TYPE_MAX_RES (0) ///< Maximum resolution spacing interval type.
406 #define GO_SPACING_INTERVAL_TYPE_BALANCED (1) ///< Balanced spacing interval type.
407 #define GO_SPACING_INTERVAL_TYPE_MAX_SPEED (2) ///< Maximum speed spacing interval type.
408 #define GO_SPACING_INTERVAL_TYPE_CUSTOM (3) ///< The user specified custom interval.
409 /**@}*/
410
411 /**
412 * @struct GoTriggerSource
413 * @extends kValue
414 * @ingroup GoSdk
415 * @brief Represents a trigger source type.
416 *
417 * The following enumerators are defined:
418 * - #GO_TRIGGER_SOURCE_TIME
419 * - #GO_TRIGGER_SOURCE_ENCODER
420 * - #GO_TRIGGER_SOURCE_INPUT
421 * - #GO_TRIGGER_SOURCE_SOFTWARE
422 */
423 typedef k32s GoTriggerSource;
424 /** @name GoTriggerSource
425 *@{*/
426 #define GO_TRIGGER_SOURCE_TIME (0) ///< Trigger on internal clock.
427 #define GO_TRIGGER_SOURCE_ENCODER (1) ///< Trigger on encoder.
428 #define GO_TRIGGER_SOURCE_INPUT (2) ///< Trigger on digital input.
429 #define GO_TRIGGER_SOURCE_SOFTWARE (3) ///< Trigger on software messages.
430 /**@}*/
431
432 /**
433 * @struct GoAlignmentType
434 * @extends kValue
435 * @ingroup GoSdk
436 * @brief Represents an alignment type.
437 *
438 * The following enumerators are defined:
439 * - #GO_ALIGNMENT_TYPE_STATIONARY
440 * - #GO_ALIGNMENT_TYPE_MOVING
441 */
442 typedef k32s GoAlignmentType;
443 /** @name GoAlignmentType
444 *@{*/
445 #define GO_ALIGNMENT_TYPE_STATIONARY (0) ///< Stationary target alignment type.
446 #define GO_ALIGNMENT_TYPE_MOVING (1) ///< Moving target alignment type.
447 /**@}*/
448
449 /**
450 * @struct GoAlignmentTarget
451 * @extends kValue
452 * @ingroup GoSdk
453 * @brief Represents a alignment target type.
454 *
455 * The following enumerators are defined:
456 * - #GO_ALIGNMENT_TARGET_NONE
457 * - #GO_ALIGNMENT_TARGET_DISK
458 * - #GO_ALIGNMENT_TARGET_BAR
459 * - #GO_ALIGNMENT_TARGET_PLATE
460 */
461 typedef k32s GoAlignmentTarget;
462 /** @name GoAlignmentTarget
463 *@{*/
464 #define GO_ALIGNMENT_TARGET_NONE (0) ///< No calibration target.
465 #define GO_ALIGNMENT_TARGET_DISK (1) ///< Calibration disk.
466 #define GO_ALIGNMENT_TARGET_BAR (2) ///< Calibration bar.
467 #define GO_ALIGNMENT_TARGET_PLATE (3) ///< Calibration plate.
468 /**@}*/
469
470
471 /**
472 * @struct GoReplayExportSourceType
473 * @extends kValue
474 * @ingroup GoSdk
475 * @brief Represents the replay export source type.
476 *
477 * The following enumerators are defined:
478 * - #GO_REPLAY_EXPORT_SOURCE_PRIMARY
479 * - #GO_REPLAY_EXPORT_SOURCE_INTENSITY
480 */
481 typedef k32s GoReplayExportSourceType;
482 /** @name GoReplayExportSourceType
483 *@{*/
484 #define GO_REPLAY_EXPORT_SOURCE_PRIMARY (0) ///< Primary data(relevant to the current scan mode) replay export.
485 #define GO_REPLAY_EXPORT_SOURCE_INTENSITY (1) ///< Intensity data replay export.
486 /**@}*/
487
488 /**
489 * @struct GoFamily
490 * @extends kValue
491 * @ingroup GoSdk
492 * @brief Represents the supported Gocator hardware families.
493 *
494 * The following enumerators are defined:
495 * - #GO_FAMILY_1000
496 * - #GO_FAMILY_2000
497 * - #GO_FAMILY_3000
498 */
499 typedef k32s GoFamily;
500 /** @name GoFamily
501 *@{*/
502 #define GO_FAMILY_UNKNOWN (-1) ///< Unidentified sensor family.
503 #define GO_FAMILY_1000 (0) ///< 1x00 series sensors.
504 #define GO_FAMILY_2000 (1) ///< 2x00 series sensors.
505 #define GO_FAMILY_3000 (2) ///< 3x00 series sensors.
506 /**@}*/
507
508 /**
509 * @struct GoDecision
510 * @extends kValue
511 * @ingroup GoSdk
512 * @brief Represents the measurement output decision values. Bit 0 represents the decision value, while bits 1 through 7 represent the decision code, outlined by GoDecisionCode.
513 * @see GoDecisionCode
514 *
515 * The following enumerators are defined:
516 * - #GO_DECISION_FAIL
517 * - #GO_DECISION_PASS
518 */
519 typedef k8u GoDecision;
520 /** @name GoDecision
521 *@{*/
522 #define GO_DECISION_FAIL (0) ///< The measurement value is either valid and falls outside the defined passing decision range or is invalid. The failure error code can be used to determine whether the value was valid.
523 #define GO_DECISION_PASS (1) ///< The measurement value is valid and it falls within the defined passing decision range.
524 /**@}*/
525
526
527 /**
528 * @struct GoDecisionCode
529 * @extends kValue
530 * @ingroup GoSdk
531 * @brief Represents the possible measurement decision codes.
532 *
533 * The following enumerators are defined:
534 * - #GO_DECISION_CODE_OK
535 * - #GO_DECISION_CODE_INVALID_ANCHOR
536 * - #GO_DECISION_CODE_INVALID_VALUE
537 */
538 typedef k8u GoDecisionCode;
539 /** @name GoDecisionCode
540 *@{*/
541 #define GO_DECISION_CODE_OK (0) ///< The measurement value is valid and it falls outside the defined passing decision range.
542 #define GO_DECISION_CODE_INVALID_VALUE (1) ///< The measurement value is invalid.
543 #define GO_DECISION_CODE_INVALID_ANCHOR (2) ///< The tool associated with the measurement is anchored is has received invalid measurement data from its anchoring source(s).
544 /**@}*/
545
546 /**
547 * @struct GoStates
548 * @extends kValue
549 * @ingroup GoSdk
550 * @brief Sensor state, login, alignment information, recording state, playback source, uptime, playback information, and auto-start setting state.
551 */
552 typedef struct GoStates
553 {
554 GoState sensorState; ///< The state of the sensor.
555 GoUser loginType; ///< The logged in user.
556 GoAlignmentRef alignmentReference; ///< The alignment reference of the sensor.
557 GoAlignmentState alignmentState; ///< The alignment state of the sensor.
558 kBool recordingEnabled; ///< The current state of recording on the sensor.
559 k32s playbackSource; ///< The current playback source of the sensor.
560 k32u uptimeSec; ///< Sensor uptime in seconds.
561 k32u uptimeMicrosec; ///< Sensor uptime in microseconds.
562 k32u playbackPos; ///< The playback position index.
563 k32u playbackCount; ///< The playback count.
564 kBool autoStartEnabled; ///< The auto-start enabled state.
565 } GoStates;
566
567 /**
568 * @struct GoAddressInfo
569 * @extends kValue
570 * @ingroup GoSdk
571 * @brief Sensor network address settings.
572 */
573 typedef struct GoAddressInfo
574 {
575 kBool useDhcp; ///< Sensor uses DHCP?
576 kIpAddress address; ///< Sensor IP address.
577 kIpAddress mask; ///< Sensor subnet bit-mask.
578 kIpAddress gateway; ///< Sensor gateway address.
579 } GoAddressInfo;
580
581 /**
582 * @struct GoAddressInfo
583 * @extends kValue
584 * @ingroup GoSdk
585 * @brief Ports used from a source device.
586 */
587 typedef struct GoPortInfo
588 {
589 k16u controlPort; ///< Control channel port.
590 k16u upgradePort; ///< Upgrade channel port.
591 k16u webPort; ///< Web channel port.
592 k16u dataPort; ///< Data channel port.
593 k16u healthPort; ///< Health channel port.
594 } GoPortInfo;
595
596 /**
597 * @struct GoElement64f
598 * @extends kValue
599 * @ingroup GoSdk
600 * @brief Represents a 64-bit floating point configuration element with a range and enabled state.
601 */
602 typedef struct GoElement64f
603 {
604 kBool enabled; ///< Represents whether the element value is currently used. (not always applicable)
605 k64f systemValue; ///< The system value. (not always applicable)
606 k64f value; ///< The element's double field value.
607 k64f max; ///< The maximum allowable value that can be set for this element.
608 k64f min; ///< The minimum allowable value that can be set for this element.
609 } GoElement64f;
610
611 /**
612 * @struct GoElement32u
613 * @extends kValue
614 * @ingroup GoSdk
615 * @brief Represents a 32-bit unsigned integer configuration element with a range and enabled state.
616 */
617 typedef struct GoElement32u
618 {
619 kBool enabled; ///< Represents whether the element value is currently used.
620 k32u systemValue; ///< The system value. (not always applicable)
621 k32u value; ///< The element's 32-bit unsigned field value.
622 k32u max; ///< The maximum allowable value that can be set for this element.
623 k32u min; ///< The minimum allowable value that can be set for this element.
624 } GoElement32u;
625
626 /**
627 * @struct GoElementBool
628 * @extends kValue
629 * @ingroup GoSdk
630 * @brief Represents a boolean configuration element with an enabled state.
631 */
632 typedef struct GoElementBool
633 {
634 kBool enabled; ///< Represents whether the element value is currently used.
635 kBool systemValue; ///< The system value. (not always applicable)
636 kBool value; ///< The element's boolean field value.
637 } GoElementBool;
638
639 /**
640 * @struct GoActiveAreaConfig
641 * @extends kValue
642 * @ingroup GoSdk
643 * @brief Represents an active area configuration element.
644 */
645 typedef struct GoActiveAreaConfig
646 {
647 GoElement64f x; ///< The X offset of the active area.
648 GoElement64f y; ///< The Y offset of the active area.
649 GoElement64f z; ///< The Z offset of the active area.
650 GoElement64f height; ///< The height of the active area.
651 GoElement64f length; ///< The length of the active area.
652 GoElement64f width; ///< The width of the active area.
653 } GoActiveAreaConfig;
654
655 /**
656 * @struct GoTransformation
657 * @extends kValue
658 * @ingroup GoSdk
659 * @brief Represents an alignment element.
660 */
661 typedef struct GoTransformation
662 {
663 k64f x; ///< The X offset of the transformation.
664 k64f y; ///< The Y offset of the transformation.
665 k64f z; ///< The Z offset of the transformation.
666 k64f xAngle; ///< The X angle of the transformation.
667 k64f yAngle; ///< The Y angle of the transformation.
668 k64f zAngle; ///< The Z angle of the transformation.
669 } GoTransformation;
670
671 /**
672 * @struct GoTransformedDataRegion
673 * @extends kValue
674 * @ingroup GoSdk
675 * @brief Represents a transformed data region.
676 */
677 typedef struct GoTransformedDataRegion
678 {
679 k64f x; ///< The X offset of the transformed data region.
680 k64f y; ///< The Y offset of the transformed data region.
681 k64f z; ///< The Z offset of the transformed data region.
682 k64f width; ///< The width of the transformed data region.
683 k64f length; ///< The length of the transformed data region.
684 k64f height; ///< The height of the transformed data region.
685 } GoTransformedDataRegion;
686
687
688 /**
689 * @struct GoAsciiOperation
690 * @extends kValue
691 * @ingroup GoSdk-Output
692 * @brief Represents an ASCII protocol operational type.
693 *
694 * The following enumerators are defined:
695 * - #GO_ASCII_OPERATION_ASYNCHRONOUS
696 * - #GO_ASCII_OPERATION_POLLING
697 */
698 typedef k32s GoAsciiOperation;
699 /** @name GoAsciiOperation
700 *@{*/
701 #define GO_ASCII_OPERATION_ASYNCHRONOUS (0) ///< Selected measurement output will be sent upon sensor start.
702 #define GO_ASCII_OPERATION_POLLING (1) ///< Measurement output will only be sent as requested.
703 /**@}*/
704
705 /**
706 * @struct GoSelcomFormat
707 * @extends kValue
708 * @ingroup GoSdk-Serial
709 * @brief Represents the selcom format followed on the serial output.
710 *
711 * The following enumerators are defined:
712 * - #GO_SELCOM_FORMAT_SLS
713 * - #GO_SELCOM_FORMAT_12BIT_ST
714 * - #GO_SELCOM_FORMAT_14BIT
715 * - #GO_SELCOM_FORMAT_14BIT_ST
716 */
717 typedef k32s GoSelcomFormat;
718 /** @name GoSelcomFormat
719 *@{*/
720 #define GO_SELCOM_FORMAT_SLS (0) ///< Selcom uses the SLS format
721 #define GO_SELCOM_FORMAT_12BIT_ST (1) ///< Selcom uses the 12-Bit Search/Track format
722 #define GO_SELCOM_FORMAT_14BIT (2) ///< Selcom uses the 14-Bit format
723 #define GO_SELCOM_FORMAT_14BIT_ST (3) ///< Selcom uses the 14-Bit Search/Track format
724 /**@}*/
725
726 /**
727 * @struct GoSerialProtocol
728 * @extends kValue
729 * @ingroup GoSdk-Serial
730 * @brief Represents all serial output protocols.
731 *
732 * The following enumerators are defined:
733 * - #GO_SERIAL_PROTOCOL_GOCATOR
734 * - #GO_SERIAL_PROTOCOL_SELCOM
735 */
736 typedef k32s GoSerialProtocol;
737 /** @name GoSerialProtocol
738 *@{*/
739 #define GO_SERIAL_PROTOCOL_GOCATOR (0) ///< Gocator serial protocol.
740 #define GO_SERIAL_PROTOCOL_SELCOM (1) ///< Selcom serial protocol.
741 /**@}*/
742
743
744 /**
745 * @struct GoAnalogTrigger
746 * @extends kValue
747 * @ingroup GoSdk-Analog
748 * @brief Represents an analog output trigger.
749 *
750 * The following enumerators are defined:
751 * - #GO_ANALOG_TRIGGER_MEASUREMENT
752 * - #GO_ANALOG_TRIGGER_SOFTWARE
753 */
754 typedef k32s GoAnalogTrigger;
755 /** @name GoAnalogTrigger
756 *@{*/
757 #define GO_ANALOG_TRIGGER_MEASUREMENT (0) ///< Analog output triggered by measurement data.
758 #define GO_ANALOG_TRIGGER_SOFTWARE (1) ///< Analog output triggered by software.
759 /**@}*/
760
761 /**
762 * @struct GoDigitalPass
763 * @extends kValue
764 * @ingroup GoSdk-Digital
765 * @brief Represents a digital output condition.
766 *
767 * The following enumerators are defined:
768 * - #GO_DIGITAL_PASS_TRUE
769 * - #GO_DIGITAL_PASS_FALSE
770 * - #GO_DIGITAL_PASS_ALWAYS
771 */
772 typedef k32s GoDigitalPass;
773 /** @name GoDigitalPass
774 *@{*/
775 #define GO_DIGITAL_PASS_TRUE (0) ///< Digital output triggers when all selected measurements pass.
776 #define GO_DIGITAL_PASS_FALSE (1) ///< Digital output triggers when all selected measurements fail.
777 #define GO_DIGITAL_PASS_ALWAYS (2) ///< Digital output triggers on every scan.
778 /**@}*/
779
780 /**
781 * @struct GoDigitalSignal
782 * @extends kValue
783 * @ingroup GoSdk-Digital
784 * @brief Represents a digital output signal type.
785 *
786 * The following enumerators are defined:
787 * - #GO_DIGITAL_SIGNAL_PULSED
788 * - #GO_DIGITAL_SIGNAL_CONTINUOUS
789 */
790 typedef k32s GoDigitalSignal;
791 /** @name GoDigitalSignal
792 *@{*/
793 #define GO_DIGITAL_SIGNAL_PULSED (0) ///< Digital output is pulsed when triggered.
794 #define GO_DIGITAL_SIGNAL_CONTINUOUS (1) ///< Digital output is continuous when triggered.
795 /**@}*/
796
797 /**
798 * @struct GoDigitalEvent
799 * @extends kValue
800 * @ingroup GoSdk-Digital
801 * @brief Represents a digital output event.
802 *
803 * The following enumerators are defined:
804 * - #GO_DIGITAL_EVENT_MEASUREMENT
805 * - #GO_DIGITAL_EVENT_SOFTWARE
806 * - #GO_DIGITAL_EVENT_ALIGNMENT
807 * - #GO_DIGITAL_EVENT_EXPOSURE_BEGIN
808 * - #GO_DIGITAL_EVENT_EXPOSURE_END
809 */
810 typedef k32s GoDigitalEvent;
811 /** @name GoDigitalEvent
812 *@{*/
813 #define GO_DIGITAL_EVENT_MEASUREMENT (1) ///< Digital output is triggered by measurement data.
814 #define GO_DIGITAL_EVENT_SOFTWARE (2) ///< Digital output is triggered by software.
815 #define GO_DIGITAL_EVENT_ALIGNMENT (3) ///< Digital output represents the alignment status.
816 #define GO_DIGITAL_EVENT_EXPOSURE_BEGIN (4) ///< Digital output is triggered at the start of exposure.
817 #define GO_DIGITAL_EVENT_EXPOSURE_END (5) ///< Digital output is triggered at the end of exposure, prior to processing.
818 /**@}*/
819
820 /**
821 * @struct GoAnalogEvent
822 * @extends kValue
823 * @ingroup GoSdk-Analog
824 * @brief Represents a analog output event.
825 *
826 * The following enumerators are defined:
827 * - #GO_ANALOG_EVENT_MEASURMENT
828 * - #GO_ANALOG_EVENT_SOFTWARE
829 */
830 typedef k32s GoAnalogEvent;
831 /** @name GoAnalogEvent
832 *@{*/
833 #define GO_ANALOG_EVENT_MEASURMENT (1) ///< Analog output is triggered by measurement data.
834 #define GO_ANALOG_EVENT_SOFTWARE (2) ///< Analog output is triggered by software.
835 /**@}*/
836
837 /**
838 * @struct GoEthernetProtocol
839 * @extends kValue
840 * @ingroup GoSdk-Ethernet
841 * @brief Represents a ethernet output protocol.
842 *
843 * The following enumerators are defined:
844 * - #GO_ETHERNET_PROTOCOL_GOCATOR
845 * - #GO_ETHERNET_PROTOCOL_MODBUS
846 * - #GO_ETHERNET_PROTOCOL_ETHERNET_IP
847 * - #GO_ETHERNET_PROTOCOL_ASCII
848 */
849 typedef k32s GoEthernetProtocol;
850 /** @name GoEthernetProtocol
851 *@{*/
852 #define GO_ETHERNET_PROTOCOL_GOCATOR (0) ///< Gocator ethernet protocol.
853 #define GO_ETHERNET_PROTOCOL_MODBUS (1) ///< Modbus ethernet protocol.
854 #define GO_ETHERNET_PROTOCOL_ETHERNET_IP (2) ///< EthernetIP ethernet protocol.
855 #define GO_ETHERNET_PROTOCOL_ASCII (3) ///< ASCII ethernet protocol.
856 /**@}*/
857
858
859 /**
860 * @struct GoEndianType
861 * @extends kValue
862 * @ingroup GoSdk-Ethernet
863 * @brief Represents an endian output type.
864 *
865 * The following enumerators are defined:
866 * - #GO_ENDIAN_TYPE_BIG
867 * - #GO_ENDIAN_TYPE_LITTLE
868 */
869 typedef k32s GoEndianType;
870 /** @name GoEndianType
871 *@{*/
872 #define GO_ENDIAN_TYPE_BIG (0) ///< Big Endian output.
873 #define GO_ENDIAN_TYPE_LITTLE (1) ///< Little Endian output.
874 /**@}*/
875
876
877 /**
878 * @struct GoOutputSource
879 * @extends kValue
880 * @ingroup GoSdk-Output
881 * @brief Represents output sources.
882 *
883 * The following enumerators are defined:
884 * - #GO_OUTPUT_SOURCE_NONE
885 * - #GO_OUTPUT_SOURCE_VIDEO
886 * - #GO_OUTPUT_SOURCE_RANGE
887 * - #GO_OUTPUT_SOURCE_PROFILE
888 * - #GO_OUTPUT_SOURCE_SURFACE
889 * - #GO_OUTPUT_SOURCE_RANGE_INTENSITY
890 * - #GO_OUTPUT_SOURCE_PROFILE_INTENSITY
891 * - #GO_OUTPUT_SOURCE_SURFACE_INTENSITY
892 * - #GO_OUTPUT_SOURCE_MEASUREMENT
893 */
894 typedef k32s GoOutputSource;
895 /** @name GoOutputSource
896 *@{*/
897 #define GO_OUTPUT_SOURCE_NONE (0) ///< Unknown output source.
898 #define GO_OUTPUT_SOURCE_VIDEO (1) ///< Output video data.
899 #define GO_OUTPUT_SOURCE_RANGE (2) ///< Output range data.
900 #define GO_OUTPUT_SOURCE_PROFILE (3) ///< Output profile data.
901 #define GO_OUTPUT_SOURCE_SURFACE (4) ///< Output surface data.
902 #define GO_OUTPUT_SOURCE_RANGE_INTENSITY (5) ///< Output range intensity data.
903 #define GO_OUTPUT_SOURCE_PROFILE_INTENSITY (6) ///< Output profile intensity data.
904 #define GO_OUTPUT_SOURCE_SURFACE_INTENSITY (7) ///< Output surface intensity data.
905 #define GO_OUTPUT_SOURCE_MEASUREMENT (8) ///< Output measurement data.
906 /**@}*/
907
908 /**
909 * @struct GoOutputDelayDomain
910 * @extends kValue
911 * @ingroup GoSdk-Output
912 * @brief Represents an output delay domain.
913 *
914 * The following enumerators are defined:
915 * - #GO_OUTPUT_DELAY_DOMAIN_TIME
916 * - #GO_OUTPUT_DELAY_DOMAIN_ENCODER
917 */
918 typedef k32s GoOutputDelayDomain;
919 /** @name GoOutputDelayDomain
920 *@{*/
921 #define GO_OUTPUT_DELAY_DOMAIN_TIME (0) ///< Time(uS) based delay domain.
922 #define GO_OUTPUT_DELAY_DOMAIN_ENCODER (1) ///< Encoder tick delay domain.
923 /**@}*/
924
925 /**
926 * @struct GoPixelType
927 * @ingroup GoSdk
928 * @brief Represents a video message pixel type.
929 *
930 * The following enumerators are defined:
931 * - #GO_PIXEL_TYPE_8U
932 * - #GO_PIXEL_TYPE_RGB
933 */
934 typedef k32s GoPixelType;
935 /** @name GoPixelType
936 *@{*/
937 #define GO_PIXEL_TYPE_UNKNOWN (-1)
938 #define GO_PIXEL_TYPE_8U (0) ///< Each pixel is represented as unsigned 8-bit values.
939 #define GO_PIXEL_TYPE_RGB (1) ///< Each pixel is represented as three unsigned 8-bit values.
940 /**@}*/
941
942 /**
943 * @struct GoToolType
944 * @extends kValue
945 * @ingroup GoSdk-Tools
946 * @brief Lists all tool types.
947 *
948 * The following enumerators are defined:
949 * - #GO_TOOL_UNKNOWN
950 * - #GO_TOOL_RANGE_POSITION
951 * - #GO_TOOL_RANGE_THICKNESS
952 * - #GO_TOOL_PROFILE_AREA
953 * - #GO_TOOL_PROFILE_BOUNDING_BOX
954 * - #GO_TOOL_PROFILE_BRIDGE_VALUE
955 * - #GO_TOOL_PROFILE_CIRCLE
956 * - #GO_TOOL_PROFILE_DIMENSION
957 * - #GO_TOOL_PROFILE_GROOVE
958 * - #GO_TOOL_PROFILE_INTERSECT
959 * - #GO_TOOL_PROFILE_LINE
960 * - #GO_TOOL_PROFILE_PANEL
961 * - #GO_TOOL_PROFILE_POSITION
962 * - #GO_TOOL_PROFILE_STRIP
963 * - #GO_TOOL_PROFILE_X_LINE
964 * - #GO_TOOL_SURFACE_BOUNDING_BOX
965 * - #GO_TOOL_SURFACE_COUNTERSUNK_HOLE
966 * - #GO_TOOL_SURFACE_ELLIPSE
967 * - #GO_TOOL_SURFACE_HOLE
968 * - #GO_TOOL_SURFACE_OPENING
969 * - #GO_TOOL_SURFACE_PLANE
970 * - #GO_TOOL_SURFACE_POSITION
971 * - #GO_TOOL_SURFACE_RIVET
972 * - #GO_TOOL_SURFACE_STUD
973 * - #GO_TOOL_SURFACE_VOLUME
974 * - #GO_TOOL_SCRIPT
975 */
976 typedef k32s GoToolType;
977 /** @name GoToolType
978 *@{*/
979 #define GO_TOOL_UNKNOWN (-1) ///< Unknown tool.
980 #define GO_TOOL_RANGE_POSITION (0) ///< Range Position tool.
981 #define GO_TOOL_RANGE_THICKNESS (1) ///< Range Thickness tool.
982 #define GO_TOOL_PROFILE_AREA (2) ///< Profile Area tool.
983 #define GO_TOOL_PROFILE_BOUNDING_BOX (21) ///< Profile Bounding Box tool.
984 #define GO_TOOL_PROFILE_BRIDGE_VALUE (24) ///< Profile Bridge Value tool.
985 #define GO_TOOL_PROFILE_CIRCLE (3) ///< Profile Circle tool.
986 #define GO_TOOL_PROFILE_DIMENSION (4) ///< Profile Dimension tool.
987 #define GO_TOOL_PROFILE_GROOVE (5) ///< Profile Groove tool.
988 #define GO_TOOL_PROFILE_INTERSECT (6) ///< Profile Intersect tool.
989 #define GO_TOOL_PROFILE_LINE (7) ///< Profile Line tool.
990 #define GO_TOOL_PROFILE_PANEL (8) ///< Profile Panel tool.
991 #define GO_TOOL_PROFILE_POSITION (9) ///< Profile Position tool.
992 #define GO_TOOL_PROFILE_STRIP (10) ///< Profile Strip tool.
993 #define GO_TOOL_PROFILE_X_LINE (23) ///< Profile X-Line tool.
994 #define GO_TOOL_SURFACE_BOUNDING_BOX (11) ///< Surface Bounding Box tool.
995 #define GO_TOOL_SURFACE_COUNTERSUNK_HOLE (20) ///< Surface Countersunk Hole tool.
996 #define GO_TOOL_SURFACE_ELLIPSE (12) ///< Surface Ellipse tool.
997 #define GO_TOOL_SURFACE_HOLE (13) ///< Surface Hole tool.
998 #define GO_TOOL_SURFACE_OPENING (14) ///< Surface Opening tool.
999 #define GO_TOOL_SURFACE_PLANE (15) ///< Surface Plane tool.
1000 #define GO_TOOL_SURFACE_POSITION (16) ///< Surface Position tool.
1001 #define GO_TOOL_SURFACE_RIVET (22) ///< Surface Rivet tool.
1002 #define GO_TOOL_SURFACE_STUD (17) ///< Surface Stud tool.
1003 #define GO_TOOL_SURFACE_VOLUME (18) ///< Surface Volume tool.
1004 #define GO_TOOL_SCRIPT (19) ///< Script tool.
1005 #define GO_TOOL_EXTENSIBLE (1000)
1006 /**@}*/
1007
1008
1009 /**
1010 * @struct GoMeasurementType
1011 * @extends kValue
1012 * @ingroup GoSdk-Tools
1013 * @brief Lists all measurement types.
1014 *
1015 * The following enumerators are defined:
1016 * - #GO_MEASUREMENT_UNKNOWN
1017 * - #GO_MEASUREMENT_RANGE_POSITION_Z
1018 * - #GO_MEASUREMENT_RANGE_THICKNESS_THICKNESS
1019 * - #GO_MEASUREMENT_PROFILE_AREA_AREA
1020 * - #GO_MEASUREMENT_PROFILE_AREA_CENTROID_X
1021 * - #GO_MEASUREMENT_PROFILE_AREA_CENTROID_Z
1022 * - #GO_MEASUREMENT_PROFILE_BOUNDING_BOX_X
1023 * - #GO_MEASUREMENT_PROFILE_BOUNDING_BOX_Z
1024 * - #GO_MEASUREMENT_PROFILE_BOUNDING_BOX_HEIGHT
1025 * - #GO_MEASUREMENT_PROFILE_BOUNDING_BOX_WIDTH
1026 * - #GO_MEASUREMENT_PROFILE_BOUNDING_BOX_GLOBAL_X
1027 * - #GO_MEASUREMENT_PROFILE_BRIDGE_VALUE_ANGLE
1028 * - #GO_MEASUREMENT_PROFILE_BRIDGE_VALUE_BRIDGE_VALUE
1029 * - #GO_MEASUREMENT_PROFILE_CIRCLE_X
1030 * - #GO_MEASUREMENT_PROFILE_CIRCLE_Z
1031 * - #GO_MEASUREMENT_PROFILE_CIRCLE_RADIUS
1032 * - #GO_MEASUREMENT_PROFILE_DIMENSION_WIDTH
1033 * - #GO_MEASUREMENT_PROFILE_DIMENSION_HEIGHT
1034 * - #GO_MEASUREMENT_PROFILE_DIMENSION_DISTANCE
1035 * - #GO_MEASUREMENT_PROFILE_DIMENSION_CENTER_X
1036 * - #GO_MEASUREMENT_PROFILE_DIMENSION_CENTER_Z
1037 * - #GO_MEASUREMENT_PROFILE_GROOVE_X
1038 * - #GO_MEASUREMENT_PROFILE_GROOVE_Z
1039 * - #GO_MEASUREMENT_PROFILE_GROOVE_WIDTH
1040 * - #GO_MEASUREMENT_PROFILE_GROOVE_DEPTH
1041 * - #GO_MEASUREMENT_PROFILE_INTERSECT_X
1042 * - #GO_MEASUREMENT_PROFILE_INTERSECT_Z
1043 * - #GO_MEASUREMENT_PROFILE_INTERSECT_ANGLE
1044 * - #GO_MEASUREMENT_PROFILE_LINE_STDDEV
1045 * - #GO_MEASUREMENT_PROFILE_LINE_ERROR_MIN
1046 * - #GO_MEASUREMENT_PROFILE_LINE_ERROR_MAX
1047 * - #GO_MEASUREMENT_PROFILE_LINE_PERCENTILE
1048 * - #GO_MEASUREMENT_PROFILE_PANEL_GAP
1049 * - #GO_MEASUREMENT_PROFILE_PANEL_FLUSH
1050 * - #GO_MEASUREMENT_PROFILE_POSITION_X
1051 * - #GO_MEASUREMENT_PROFILE_POSITION_Z
1052 * - #GO_MEASUREMENT_PROFILE_STRIP_POSITION_X
1053 * - #GO_MEASUREMENT_PROFILE_STRIP_POSITION_Z
1054 * - #GO_MEASUREMENT_PROFILE_STRIP_WIDTH
1055 * - #GO_MEASUREMENT_PROFILE_STRIP_HEIGHT
1056 * - #GO_MEASUREMENT_PROFILE_X_LINE_Z
1057 * - #GO_MEASUREMENT_PROFILE_X_LINE_VALIDITY
1058 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_X
1059 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_Y
1060 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_Z
1061 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_ZANGLE
1062 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_HEIGHT
1063 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_WIDTH
1064 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_LENGTH
1065 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_GLOBAL_X
1066 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_GLOBAL_Y
1067 * - #GO_MEASUREMENT_SURFACE_BOUNDING_BOX_GLOBAL_Z_ANGLE
1068 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_X
1069 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_Y
1070 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_Z
1071 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_OUTER_RADIUS
1072 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_DEPTH
1073 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_BEVEL_RADIUS
1074 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_BEVEL_ANGLE
1075 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_X_ANGLE
1076 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_Y_ANGLE
1077 * - #GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_COUNTERBORE_DEPTH
1078 * - #GO_MEASUREMENT_SURFACE_ELLIPSE_MAJOR
1079 * - #GO_MEASUREMENT_SURFACE_ELLIPSE_MINOR
1080 * - #GO_MEASUREMENT_SURFACE_ELLIPSE_RATIO
1081 * - #GO_MEASUREMENT_SURFACE_ELLIPSE_ZANGLE
1082 * - #GO_MEASUREMENT_SURFACE_HOLE_X
1083 * - #GO_MEASUREMENT_SURFACE_HOLE_Y
1084 * - #GO_MEASUREMENT_SURFACE_HOLE_Z
1085 * - #GO_MEASUREMENT_SURFACE_HOLE_RADIUS
1086 * - #GO_MEASUREMENT_SURFACE_OPENING_X
1087 * - #GO_MEASUREMENT_SURFACE_OPENING_Y
1088 * - #GO_MEASUREMENT_SURFACE_OPENING_Z
1089 * - #GO_MEASUREMENT_SURFACE_OPENING_WIDTH
1090 * - #GO_MEASUREMENT_SURFACE_OPENING_LENGTH
1091 * - #GO_MEASUREMENT_SURFACE_OPENING_ANGLE
1092 * - #GO_MEASUREMENT_SURFACE_PLANE_X_ANGLE
1093 * - #GO_MEASUREMENT_SURFACE_PLANE_Y_ANGLE
1094 * - #GO_MEASUREMENT_SURFACE_PLANE_Z_OFFSET
1095 * - #GO_MEASUREMENT_SURFACE_POSITION_X
1096 * - #GO_MEASUREMENT_SURFACE_POSITION_Y
1097 * - #GO_MEASUREMENT_SURFACE_POSITION_Z
1098 * - #GO_MEASUREMENT_SURFACE_RIVET_X
1099 * - #GO_MEASUREMENT_SURFACE_RIVET_Y
1100 * - #GO_MEASUREMENT_SURFACE_RIVET_Z
1101 * - #GO_MEASUREMENT_SURFACE_RIVET_TILT_ANGLE
1102 * - #GO_MEASUREMENT_SURFACE_RIVET_TILT_DIRECTION
1103 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIUS
1104 * - #GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_MIN
1105 * - #GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_MAX
1106 * - #GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_MEAN
1107 * - #GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_STD_DEV
1108 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_MIN
1109 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_MAX
1110 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_MEAN
1111 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_STD_DEV
1112 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_MIN
1113 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_MAX
1114 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_MEAN
1115 * - #GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_STD_DEV
1116 * - #GO_MEASUREMENT_SURFACE_STUD_BASE_X
1117 * - #GO_MEASUREMENT_SURFACE_STUD_BASE_Y
1118 * - #GO_MEASUREMENT_SURFACE_STUD_BASE_Z
1119 * - #GO_MEASUREMENT_SURFACE_STUD_TIP_X
1120 * - #GO_MEASUREMENT_SURFACE_STUD_TIP_Y
1121 * - #GO_MEASUREMENT_SURFACE_STUD_TIP_Z
1122 * - #GO_MEASUREMENT_SURFACE_STUD_RADIUS
1123 * - #GO_MEASUREMENT_SURFACE_VOLUME_AREA
1124 * - #GO_MEASUREMENT_SURFACE_VOLUME_VOLUME
1125 * - #GO_MEASUREMENT_SURFACE_VOLUME_THICKNESS
1126 * - #GO_MEASUREMENT_SCRIPT_OUTPUT
1127 */
1128 typedef k32s GoMeasurementType;
1129 /** @name GoMeasurementType
1130 *@{*/
1131 #define GO_MEASUREMENT_UNKNOWN (-1) ///< Unknown measurement.
1132 #define GO_MEASUREMENT_RANGE_POSITION_Z (0) ///< Range Position tool Z measurement.
1133 #define GO_MEASUREMENT_RANGE_THICKNESS_THICKNESS (1) ///< Range Thickness tool Thickness measurement.
1134 #define GO_MEASUREMENT_PROFILE_AREA_AREA (2) ///< Profile Area tool Area measurement.
1135 #define GO_MEASUREMENT_PROFILE_AREA_CENTROID_X (3) ///< Profile Area tool Centroid X measurement.
1136 #define GO_MEASUREMENT_PROFILE_AREA_CENTROID_Z (4) ///< Profile Area tool Centroid Z measurement.
1137 #define GO_MEASUREMENT_PROFILE_BOUNDING_BOX_X (82) ///< Profile Bounding Box X measurement.
1138 #define GO_MEASUREMENT_PROFILE_BOUNDING_BOX_Z (83) ///< Profile Bounding Box Z measurement.
1139 #define GO_MEASUREMENT_PROFILE_BOUNDING_BOX_HEIGHT (84) ///< Profile Bounding Box Height measurement.
1140 #define GO_MEASUREMENT_PROFILE_BOUNDING_BOX_WIDTH (85) ///< Profile Bounding Box Width measurement.
1141 #define GO_MEASUREMENT_PROFILE_BOUNDING_BOX_GLOBAL_X (86) ///< Profile Bounding Box Global X measurement.
1142 #define GO_MEASUREMENT_PROFILE_BRIDGE_VALUE_BRIDGE_VALUE (106) ///< Profile Bridge Value measurement.
1143 #define GO_MEASUREMENT_PROFILE_BRIDGE_VALUE_ANGLE (107) ///< Profile Bridge Value measurement.
1144 #define GO_MEASUREMENT_PROFILE_CIRCLE_X (5) ///< Profile Circle tool X measurement.
1145 #define GO_MEASUREMENT_PROFILE_CIRCLE_Z (6) ///< Profile Circle tool Z measurement.
1146 #define GO_MEASUREMENT_PROFILE_CIRCLE_RADIUS (7) ///< Profile Circle tool Radius measurement.
1147 #define GO_MEASUREMENT_PROFILE_DIMENSION_WIDTH (8) ///< Profile Dimension tool Width measurement.
1148 #define GO_MEASUREMENT_PROFILE_DIMENSION_HEIGHT (9) ///< Profile Dimension tool Height measurement.
1149 #define GO_MEASUREMENT_PROFILE_DIMENSION_DISTANCE (10) ///< Profile Dimension tool Distance measurement.
1150 #define GO_MEASUREMENT_PROFILE_DIMENSION_CENTER_X (11) ///< Profile Dimension tool Center X measurement.
1151 #define GO_MEASUREMENT_PROFILE_DIMENSION_CENTER_Z (12) ///< Profile Dimension tool Center Z measurement.
1152 #define GO_MEASUREMENT_PROFILE_GROOVE_X (13) ///< Profile Groove tool X measurement.
1153 #define GO_MEASUREMENT_PROFILE_GROOVE_Z (14) ///< Profile Groove tool Z measurement.
1154 #define GO_MEASUREMENT_PROFILE_GROOVE_WIDTH (15) ///< Profile Groove tool Width measurement.
1155 #define GO_MEASUREMENT_PROFILE_GROOVE_DEPTH (16) ///< Profile Groove tool Depth measurement.
1156 #define GO_MEASUREMENT_PROFILE_INTERSECT_X (17) ///< Profile Intersect tool X measurement.
1157 #define GO_MEASUREMENT_PROFILE_INTERSECT_Z (18) ///< Profile Intersect tool Z measurement.
1158 #define GO_MEASUREMENT_PROFILE_INTERSECT_ANGLE (19) ///< Profile Intersect tool Angle measurement.
1159 #define GO_MEASUREMENT_PROFILE_LINE_STDDEV (20) ///< Profile Line tool Standard Deviation measurement.
1160 #define GO_MEASUREMENT_PROFILE_LINE_ERROR_MIN (21) ///< Profile Line tool Minimum Error measurement.
1161 #define GO_MEASUREMENT_PROFILE_LINE_ERROR_MAX (22) ///< Profile Line tool Maximum Error measurement.
1162 #define GO_MEASUREMENT_PROFILE_LINE_PERCENTILE (23) ///< Profile Line tool Percentile measurement.
1163 #define GO_MEASUREMENT_PROFILE_PANEL_GAP (24) ///< Profile Panel tool Gap measurement.
1164 #define GO_MEASUREMENT_PROFILE_PANEL_FLUSH (25) ///< Profile Panel tool Flush measurement.
1165 #define GO_MEASUREMENT_PROFILE_POSITION_X (26) ///< Profile Position tool X measurement.
1166 #define GO_MEASUREMENT_PROFILE_POSITION_Z (27) ///< Profile Position tool Z measurement.
1167 #define GO_MEASUREMENT_PROFILE_STRIP_POSITION_X (28) ///< Profile Strip tool X Position measurement.
1168 #define GO_MEASUREMENT_PROFILE_STRIP_POSITION_Z (29) ///< Profile Strip tool Z Position measurement.
1169 #define GO_MEASUREMENT_PROFILE_STRIP_WIDTH (30) ///< Profile Strip tool Width measurement.
1170 #define GO_MEASUREMENT_PROFILE_STRIP_HEIGHT (31) ///< Profile Strip tool Height measurement.
1171 #define GO_MEASUREMENT_PROFILE_X_LINE_Z (87) ///< Profile X-Line tool Z measurement.
1172 #define GO_MEASUREMENT_PROFILE_X_LINE_VALIDITY (88) ///< Profile X-Line tool Validity measurement.
1173 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_X (32) ///< Surface Bounding Box X measurement.
1174 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_Y (33) ///< Surface Bounding Box Y measurement.
1175 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_Z (34) ///< Surface Bounding Box Z measurement.
1176 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_ZANGLE (35) ///< Surface Bounding Box Z Angle measurement.
1177 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_HEIGHT (36) ///< Surface Bounding Box Height measurement.
1178 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_WIDTH (37) ///< Surface Bounding Box Width measurement.
1179 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_LENGTH (38) ///< Surface Bounding Box Length measurement.
1180 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_GLOBAL_X (39) ///< Surface Bounding Box Global X measurement.
1181 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_GLOBAL_Y (40) ///< Surface Bounding Box Global Y measurement.
1182 #define GO_MEASUREMENT_SURFACE_BOUNDING_BOX_GLOBAL_Z_ANGLE (41) ///< Surface Bounding Box Global Z Angle measurement.
1183 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_X (42) ///< Surface Countersunk Hole tool X position measurement.
1184 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_Y (43) ///< Surface Countersunk Hole tool Y position measurement.
1185 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_Z (44) ///< Surface Countersunk Hole tool Z position measurement.
1186 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_OUTER_RADIUS (45) ///< Surface Countersunk Hole tool Outer Radius measurement.
1187 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_DEPTH (46) ///< Surface Countersunk Hole tool Depth measurement.
1188 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_COUNTERBORE_DEPTH (108) ///< Surface Countersunk Hole tool Counterbore Depth measurement.
1189 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_BEVEL_RADIUS (47) ///< Surface Countersunk Hole tool Bevel Radius measurement.
1190 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_BEVEL_ANGLE (48) ///< Surface Countersunk Hole tool Bevel Angle measurement.
1191 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_X_ANGLE (49) ///< Surface Countersunk Hole tool X Angle measurement.
1192 #define GO_MEASUREMENT_SURFACE_COUNTERSUNK_HOLE_Y_ANGLE (50) ///< Surface Countersunk Hole tool Y Angle measurement.
1193 #define GO_MEASUREMENT_SURFACE_ELLIPSE_MAJOR (51) ///< Surface Ellipse tool Major measurement.
1194 #define GO_MEASUREMENT_SURFACE_ELLIPSE_MINOR (52) ///< Surface Ellipse tool Minor measurement.
1195 #define GO_MEASUREMENT_SURFACE_ELLIPSE_RATIO (53) ///< Surface Ellipse tool Ratio measurement.
1196 #define GO_MEASUREMENT_SURFACE_ELLIPSE_ZANGLE (54) ///< Surface Ellipse tool Z Angle measurement.
1197 #define GO_MEASUREMENT_SURFACE_HOLE_X (55) ///< Surface Hole tool X measurement.
1198 #define GO_MEASUREMENT_SURFACE_HOLE_Y (56) ///< Surface Hole tool Y measurement.
1199 #define GO_MEASUREMENT_SURFACE_HOLE_Z (57) ///< Surface Hole tool Z measurement.
1200 #define GO_MEASUREMENT_SURFACE_HOLE_RADIUS (58) ///< Surface Hole tool Radius measurement.
1201 #define GO_MEASUREMENT_SURFACE_OPENING_X (59) ///< Surface Opening tool X measurement.
1202 #define GO_MEASUREMENT_SURFACE_OPENING_Y (60) ///< Surface Opening tool Y measurement.
1203 #define GO_MEASUREMENT_SURFACE_OPENING_Z (61) ///< Surface Opening tool Z measurement.
1204 #define GO_MEASUREMENT_SURFACE_OPENING_WIDTH (62) ///< Surface Opening tool Width measurement.
1205 #define GO_MEASUREMENT_SURFACE_OPENING_LENGTH (63) ///< Surface Opening tool Length measurement.
1206 #define GO_MEASUREMENT_SURFACE_OPENING_ANGLE (64) ///< Surface Opening tool Angle measurement.
1207 #define GO_MEASUREMENT_SURFACE_PLANE_X_ANGLE (65) ///< Surface Plane tool X Angle measurement.
1208 #define GO_MEASUREMENT_SURFACE_PLANE_Y_ANGLE (66) ///< Surface Plane tool Y Angle measurement.
1209 #define GO_MEASUREMENT_SURFACE_PLANE_Z_OFFSET (67) ///< Surface Plane tool Z Offset measurement.
1210 #define GO_MEASUREMENT_SURFACE_POSITION_X (68) ///< Surface Position tool X measurement.
1211 #define GO_MEASUREMENT_SURFACE_POSITION_Y (69) ///< Surface Position tool Y measurement.
1212 #define GO_MEASUREMENT_SURFACE_POSITION_Z (70) ///< Surface Position tool Z measurement.
1213 #define GO_MEASUREMENT_SURFACE_RIVET_X (88) ///< Surface Rivet tool X measurement.
1214 #define GO_MEASUREMENT_SURFACE_RIVET_Y (89) ///< Surface Rivet tool Y measurement.
1215 #define GO_MEASUREMENT_SURFACE_RIVET_Z (90) ///< Surface Rivet tool Z measurement.
1216 #define GO_MEASUREMENT_SURFACE_RIVET_TILT_ANGLE (91) ///< Surface Rivet tool X Angle measurement.
1217 #define GO_MEASUREMENT_SURFACE_RIVET_TILT_DIRECTION (92) ///< Surface Rivet tool Y Angle measurement.
1218 #define GO_MEASUREMENT_SURFACE_RIVET_RADIUS (93) ///< Surface Rivet tool Radius measurement.
1219 #define GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_MIN (94) ///< Surface Rivet tool Top Offset Minimum measurement.
1220 #define GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_MAX (95) ///< Surface Rivet tool Top Offset Maximum measurement.
1221 #define GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_MEAN (96) ///< Surface Rivet tool Top Offset Mean measurement.
1222 #define GO_MEASUREMENT_SURFACE_RIVET_TOP_OFFSET_STD_DEV (97) ///< Surface Rivet tool Top Offset Standard Deviation measurement.
1223 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_MIN (98) ///< Surface Rivet tool Radial Height Minimum measurement.
1224 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_MAX (99) ///< Surface Rivet tool Radial Height Maximum measurement.
1225 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_MEAN (100) ///< Surface Rivet tool Radial Height Mean measurement.
1226 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_HEIGHT_STD_DEV (101) ///< Surface Rivet tool Radial Height Standard Deviation measurement.
1227 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_MIN (102) ///< Surface Rivet tool Radial Slope Minimum measurement.
1228 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_MAX (103) ///< Surface Rivet tool Radial Slope Maximum measurement.
1229 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_MEAN (104) ///< Surface Rivet tool Radial Slope Mean measurement.
1230 #define GO_MEASUREMENT_SURFACE_RIVET_RADIAL_SLOPE_STD_DEV (105) ///< Surface Rivet tool Radial Slope Standard Deviation measurement.
1231 #define GO_MEASUREMENT_SURFACE_STUD_BASE_X (71) ///< Surface Stud tool Base X measurement.
1232 #define GO_MEASUREMENT_SURFACE_STUD_BASE_Y (72) ///< Surface Stud tool Base Y measurement.
1233 #define GO_MEASUREMENT_SURFACE_STUD_BASE_Z (73) ///< Surface Stud tool Base Z measurement.
1234 #define GO_MEASUREMENT_SURFACE_STUD_TIP_X (74) ///< Surface Stud tool Tip X measurement.
1235 #define GO_MEASUREMENT_SURFACE_STUD_TIP_Y (75) ///< Surface Stud tool Tip Y measurement.
1236 #define GO_MEASUREMENT_SURFACE_STUD_TIP_Z (76) ///< Surface Stud tool Tip Z measurement.
1237 #define GO_MEASUREMENT_SURFACE_STUD_RADIUS (77) ///< Surface Stud tool Radius measurement.
1238 #define GO_MEASUREMENT_SURFACE_VOLUME_AREA (78) ///< Surface Volume tool Area measurement.
1239 #define GO_MEASUREMENT_SURFACE_VOLUME_VOLUME (79) ///< Surface Volume tool Volume measurement.
1240 #define GO_MEASUREMENT_SURFACE_VOLUME_THICKNESS (80) ///< Surface Volume tool Thickness measurement.
1241 #define GO_MEASUREMENT_SCRIPT_OUTPUT (81) ///< Script tool Output.
1242 #define GO_MEASUREMENT_EXTENSIBLE (87) ///< Extensible tool measurement.
1243
1244 /**@}*/
1245
1246
1247 /**
1248 * @struct GoDataMessageType
1249 * @extends kValue
1250 * @ingroup GoSdk-DataChannel
1251 * @brief Lists all data message types.
1252 *
1253 * The following enumerators are defined:
1254 * - #GO_DATA_MESSAGE_TYPE_UNKNOWN
1255 * - #GO_DATA_MESSAGE_TYPE_STAMP
1256 * - #GO_DATA_MESSAGE_TYPE_HEALTH
1257 * - #GO_DATA_MESSAGE_TYPE_VIDEO
1258 * - #GO_DATA_MESSAGE_TYPE_RANGE
1259 * - #GO_DATA_MESSAGE_TYPE_RANGE_INTENSITY
1260 * - #GO_DATA_MESSAGE_TYPE_PROFILE
1261 * - #GO_DATA_MESSAGE_TYPE_PROFILE_INTENSITY
1262 * - #GO_DATA_MESSAGE_TYPE_RESAMPLED_PROFILE
1263 * - #GO_DATA_MESSAGE_TYPE_SURFACE
1264 * - #GO_DATA_MESSAGE_TYPE_SURFACE_INTENSITY
1265 * - #GO_DATA_MESSAGE_TYPE_MEASUREMENT
1266 * - #GO_DATA_MESSAGE_TYPE_ALIGNMENT
1267 * - #GO_DATA_MESSAGE_TYPE_EXPOSURE_CAL
1268 */
1269 typedef k32s GoDataMessageType;
1270 /** @name GoDataMessageType
1271 *@{*/
1272 #define GO_DATA_MESSAGE_TYPE_UNKNOWN (-1) ///< Unknown message type.
1273 #define GO_DATA_MESSAGE_TYPE_STAMP (0) ///< Stamp message type.
1274 #define GO_DATA_MESSAGE_TYPE_HEALTH (1) ///< Health message type.
1275 #define GO_DATA_MESSAGE_TYPE_VIDEO (2) ///< Video message type.
1276 #define GO_DATA_MESSAGE_TYPE_RANGE (3) ///< Range message type.
1277 #define GO_DATA_MESSAGE_TYPE_RANGE_INTENSITY (4) ///< Range Intensity message type.
1278 #define GO_DATA_MESSAGE_TYPE_PROFILE (5) ///< Profile message type.
1279 #define GO_DATA_MESSAGE_TYPE_PROFILE_INTENSITY (6) ///< Profile(or Resampled if uniform spacing is enabled) Intensity message type.
1280 #define GO_DATA_MESSAGE_TYPE_RESAMPLED_PROFILE (7) ///< Resampled Profile message type.
1281 #define GO_DATA_MESSAGE_TYPE_SURFACE (8) ///< Surface message type.
1282 #define GO_DATA_MESSAGE_TYPE_SURFACE_INTENSITY (9) ///< Surface Intensity message type.
1283 #define GO_DATA_MESSAGE_TYPE_MEASUREMENT (10) ///< Measurement message type.
1284 #define GO_DATA_MESSAGE_TYPE_ALIGNMENT (11) ///< Alignment result message type.
1285 #define GO_DATA_MESSAGE_TYPE_EXPOSURE_CAL (12) ///< Exposure AutoSet/Calibration result message type.
1286 #define GO_DATA_MESSAGE_TYPE_EDGE_MATCH (16) ///< Part matching edge algorithm message type.
1287 #define GO_DATA_MESSAGE_TYPE_BOUNDING_BOX_MATCH (17) ///< Part matching bounding box algorithm message type.
1288 #define GO_DATA_MESSAGE_TYPE_ELLIPSE_MATCH (18) ///< Part matching ellipse algorithm message type.
1289 /**@}*/
1290
1291 /**@}*/
1292
1293 /// @cond (Gocator_1x00 || Gocator_2x00)
1294
1295 /**
1296 * @struct GoMaterialType
1297 * @extends kValue
1298 * @ingroup GoSdk
1299 * @brief Represents a material acquisition type.
1300 *
1301 * The following enumerators are defined:
1302 * - #GO_MATERIAL_TYPE_CUSTOM
1303 * - #GO_MATERIAL_TYPE_DIFFUSE
1304 */
1305 typedef k32s GoMaterialType;
1306 /** @name GoMaterialType
1307 *@{*/
1308 #define GO_MATERIAL_TYPE_CUSTOM (0) ///< Custom material acquisition type.
1309 #define GO_MATERIAL_TYPE_DIFFUSE (1) ///< Diffuse material acquisition type.
1310 /**@}*/
1311
1312 /**
1313 * @struct GoSpotSelectionType
1314 * @extends kValue
1315 * @ingroup GoSdk
1316 * @brief Represents a spot selection type.
1317 *
1318 * The following enumerators are defined:
1319 * - #GO_SPOT_SELECTION_TYPE_BEST
1320 * - #GO_SPOT_SELECTION_TYPE_TOP
1321 * - #GO_SPOT_SELECTION_TYPE_BOTTOM
1322 * - #GO_SPOT_SELECTION_TYPE_NONE
1323 */
1324 typedef k32s GoSpotSelectionType;
1325 /** @name GoSpotSelectionType
1326 *@{*/
1327 #define GO_SPOT_SELECTION_TYPE_BEST (0) ///< Select the spot with the best value.
1328 #define GO_SPOT_SELECTION_TYPE_TOP (1) ///< Select the top-most spot.
1329 #define GO_SPOT_SELECTION_TYPE_BOTTOM (2) ///< Select the bottom-most spot.
1330 #define GO_SPOT_SELECTION_TYPE_NONE (3) ///< Disable spot selection.
1331 /**@}*/
1332
1333 /// @endcond
1334
1335 /// @cond (Gocator_1x00 || Gocator_2x00)
1336 /**
1337 * @struct GoProfileStripBaseType
1338 * @extends kValue
1339 * @ingroup GoSdk-ProfileTools
1340 * @brief Represents a profile strip tool base type.
1341 *
1342 * The following enumerators are defined:
1343 * - #GO_PROFILE_STRIP_BASE_TYPE_NONE
1344 * - #GO_PROFILE_STRIP_BASE_TYPE_FLAT
1345 */
1346 typedef k32s GoProfileStripBaseType;
1347 /** @name GoProfileStripBaseType
1348 *@{*/
1349 #define GO_PROFILE_STRIP_BASE_TYPE_NONE (0) ///< No strip base type.
1350 #define GO_PROFILE_STRIP_BASE_TYPE_FLAT (1) ///< Flat strip base type.
1351 /**@}*/
1352
1353 /**
1354 * @struct GoProfileStripEdgeType
1355 * @extends kValue
1356 * @ingroup GoSdk-ProfileTools
1357 * @brief Represents a profile strip tool edge type.
1358 *
1359 * The following enumerators are defined:
1360 * - #GO_PROFILE_STRIP_EDGE_TYPE_RISING
1361 * - #GO_PROFILE_STRIP_EDGE_TYPE_FALLING
1362 * - #GO_PROFILE_STRIP_EDGE_TYPE_DATA_END
1363 * - #GO_PROFILE_STRIP_EDGE_TYPE_VOID
1364 */
1365 typedef k32s GoProfileStripEdgeType;
1366 /** @name GoProfileStripEdgeType
1367 *@{*/
1368 #define GO_PROFILE_STRIP_EDGE_TYPE_RISING (1) ///< Rising strip edge type.
1369 #define GO_PROFILE_STRIP_EDGE_TYPE_FALLING (2) ///< Falling strip edge type.
1370 #define GO_PROFILE_STRIP_EDGE_TYPE_DATA_END (4) ///< Data end strip edge type.
1371 #define GO_PROFILE_STRIP_EDGE_TYPE_VOID (8) ///< Void strip edge type.
1372 /**@}*/
1373
1374
1375 /**
1376 * @struct GoProfileFeatureType
1377 * @ingroup GoSdk-ProfileTools
1378 * @brief Represents a profile feature point type.
1379 *
1380 * The following enumerators are defined:
1381 * - #GO_PROFILE_FEATURE_TYPE_MAX_Z
1382 * - #GO_PROFILE_FEATURE_TYPE_MIN_Z
1383 * - #GO_PROFILE_FEATURE_TYPE_MAX_X
1384 * - #GO_PROFILE_FEATURE_TYPE_MIN_X
1385 * - #GO_PROFILE_FEATURE_TYPE_CORNER
1386 * - #GO_PROFILE_FEATURE_TYPE_AVERAGE
1387 * - #GO_PROFILE_FEATURE_TYPE_RISING_EDGE
1388 * - #GO_PROFILE_FEATURE_TYPE_FALLING_EDGE
1389 * - #GO_PROFILE_FEATURE_TYPE_ANY_EDGE
1390 * - #GO_PROFILE_FEATURE_TYPE_TOP_CORNER
1391 * - #GO_PROFILE_FEATURE_TYPE_BOTTOM_CORNER
1392 * - #GO_PROFILE_FEATURE_TYPE_LEFT_CORNER
1393 * - #GO_PROFILE_FEATURE_TYPE_RIGHT_CORNER
1394 * - #GO_PROFILE_FEATURE_TYPE_MEDIAN
1395 */
1396 typedef k32s GoProfileFeatureType;
1397 /** @name GoProfileFeatureType
1398 *@{*/
1399 #define GO_PROFILE_FEATURE_TYPE_MAX_Z (0) ///< Point with the maximum Z value.
1400 #define GO_PROFILE_FEATURE_TYPE_MIN_Z (1) ///< Point with the minimum Z value.
1401 #define GO_PROFILE_FEATURE_TYPE_MAX_X (2) ///< Point with the maximum X value.
1402 #define GO_PROFILE_FEATURE_TYPE_MIN_X (3) ///< Point with the minimum X value.
1403 #define GO_PROFILE_FEATURE_TYPE_CORNER (4) ///< Dominant corner.
1404 #define GO_PROFILE_FEATURE_TYPE_AVERAGE (5) ///< Average of points.
1405 #define GO_PROFILE_FEATURE_TYPE_RISING_EDGE (6) ///< Rising edge.
1406 #define GO_PROFILE_FEATURE_TYPE_FALLING_EDGE (7) ///< Falling edge.
1407 #define GO_PROFILE_FEATURE_TYPE_ANY_EDGE (8) ///< Rising or falling edge.
1408 #define GO_PROFILE_FEATURE_TYPE_TOP_CORNER (9) ///< Top-most corner.
1409 #define GO_PROFILE_FEATURE_TYPE_BOTTOM_CORNER (10) ///< Bottom-most corner.
1410 #define GO_PROFILE_FEATURE_TYPE_LEFT_CORNER (11) ///< Left-most corner.
1411 #define GO_PROFILE_FEATURE_TYPE_RIGHT_CORNER (12) ///< Right-most corner.
1412 #define GO_PROFILE_FEATURE_TYPE_MEDIAN (13) ///< Median of points.
1413 /**@}*/
1414
1415 /**
1416 * @struct GoProfileGapAxis
1417 * @ingroup GoSdk-ProfileTools
1418 * @brief Represents a profile gap measurement axis.
1419 *
1420 * The following enumerators are defined:
1421 * - #GO_PROFILE_GAP_AXIS_EDGE
1422 * - #GO_PROFILE_GAP_AXIS_SURFACE
1423 * - #GO_PROFILE_GAP_AXIS_DISTANCE
1424 */
1425 typedef k32s GoProfileGapAxis;
1426 /** @name GoProfileGapAxis
1427 *@{*/
1428 #define GO_PROFILE_GAP_AXIS_EDGE (0) ///< Measure the gap along the edge normal.
1429 #define GO_PROFILE_GAP_AXIS_SURFACE (1) ///< Measure the gap along the surface line.
1430 #define GO_PROFILE_GAP_AXIS_DISTANCE (2) ///< Measure the shortest distance between the two edges.
1431 /**@}*/
1432
1433 /**
1434 * @struct GoProfileEdgeType
1435 * @ingroup GoSdk-ProfileTools
1436 * @brief Represents a profile edge type.
1437 *
1438 * The following enumerators are defined:
1439 * - #GO_PROFILE_EDGE_TYPE_TANGENT
1440 * - #GO_PROFILE_EDGE_TYPE_CORNER
1441 */
1442 typedef k32s GoProfileEdgeType;
1443 /** @name GoProfileEdgeType
1444 *@{*/
1445 #define GO_PROFILE_EDGE_TYPE_TANGENT (0) ///< Detect the edge by looking for the tangent.
1446 #define GO_PROFILE_EDGE_TYPE_CORNER (1) ///< Detect the edge by looking for the corner.
1447 /**@}*/
1448
1449 /**
1450 * @struct GoProfileLineType
1451 * @ingroup GoSdk-ProfileTools
1452 * @brief Determines whether to use a line based on a Profile Line fit, or based on the x-axis.
1453 *
1454 * The following enumerators are defined:
1455 * - #GO_PROFILE_BASELINE_TYPE_X_AXIS
1456 * - #GO_PROFILE_BASELINE_TYPE_Z_AXIS
1457 * - #GO_PROFILE_BASELINE_TYPE_LINE
1458 */
1459 typedef k32s GoProfileBaseline;
1460 /** @name GoProfileBaseline
1461 *@{*/
1462 #define GO_PROFILE_BASELINE_TYPE_X_AXIS (0) ///< Use the X-Axis.
1463 #define GO_PROFILE_BASELINE_TYPE_Z_AXIS (1) ///< Use the Z-Axis.
1464 #define GO_PROFILE_BASELINE_TYPE_LINE (2) ///< Use the line fit.
1465 /**@}*/
1466
1467 /**
1468 * @struct GoProfileAreaType
1469 * @ingroup GoSdk-ProfileTools
1470 * @brief Determines how to calculate profile area
1471 *
1472 * The following enumerators are defined:
1473 * - #GO_PROFILE_AREA_TYPE_OBJECT
1474 * - #GO_PROFILE_AREA_TYPE_CLEARANCE
1475 */
1476 typedef k32s GoProfileAreaType;
1477 /** @name GoProfileAreaType
1478 *@{*/
1479 #define GO_PROFILE_AREA_TYPE_OBJECT (0) ///< Sum the profile area that is above the line.
1480 #define GO_PROFILE_AREA_TYPE_CLEARANCE (1) ///< Sum the profile area that is below the line.
1481 /**@}*/
1482
1483 /**
1484 * @struct GoProfileGapSide
1485 * @ingroup GoSdk-ProfileTools
1486 * @brief Selects which edge to use as the reference in a panel tool.
1487 *
1488 * The following enumerators are defined:
1489 * - #GO_PROFILE_PANEL_SIDE_LEFT
1490 * - #GO_PROFILE_PANEL_SIDE_RIGHT
1491 */
1492 typedef k32s GoProfilePanelSide;
1493 /** @name GoProfilePanelSide
1494 *@{*/
1495 #define GO_PROFILE_PANEL_SIDE_LEFT (0) ///< Use the left edge.
1496 #define GO_PROFILE_PANEL_SIDE_RIGHT (1) ///< Use the right edge.
1497 /**@}*/
1498
1499 /**
1500 * @struct GoProfileGrooveShape
1501 * @ingroup GoSdk-ProfileTools
1502 * @brief Represents a profile edge type.
1503 *
1504 * The following enumerators are defined:
1505 * - #GO_PROFILE_GROOVE_SHAPE_U
1506 * - #GO_PROFILE_GROOVE_SHAPE_V
1507 * - #GO_PROFILE_GROOVE_SHAPE_OPEN
1508 */
1509 typedef k32s GoProfileGrooveShape;
1510 /** @name GoProfileGrooveShape
1511 *@{*/
1512 #define GO_PROFILE_GROOVE_SHAPE_U (0) ///< Detect grooves that are U shaped.
1513 #define GO_PROFILE_GROOVE_SHAPE_V (1) ///< Detect grooves that are V shaped.
1514 #define GO_PROFILE_GROOVE_SHAPE_OPEN (2) ///< Detect grooves that are open.
1515 /**@}*/
1516
1517 /**
1518 * @struct GoProfileGrooveSelectType
1519 * @ingroup GoSdk-ProfileTools
1520 * @brief Determines which groove to select when multiple are present.
1521 *
1522 * The following enumerators are defined:
1523 * - #GO_PROFILE_GROOVE_SELECT_TYPE_MAX_DEPTH
1524 * - #GO_PROFILE_GROOVE_SELECT_TYPE_LEFT_INDEX
1525 * - #GO_PROFILE_GROOVE_SELECT_TYPE_RIGHT_INDEX
1526 */
1527 typedef k32s GoProfileGrooveSelectType;
1528 /** @name GoProfileGrooveSelectType
1529 *@{*/
1530 #define GO_PROFILE_GROOVE_SELECT_TYPE_MAX_DEPTH (0) ///< Select the groove with the maximum depth.
1531 #define GO_PROFILE_GROOVE_SELECT_TYPE_LEFT_INDEX (1) ///< Select the groove with the currently selected index starting from the left side.
1532 #define GO_PROFILE_GROOVE_SELECT_TYPE_RIGHT_INDEX (2) ///< Select the groove with the currently selected index starting from the right side.
1533 /**@}*/
1534
1535 /**
1536 * @struct GoProfileGrooveLocation
1537 * @ingroup GoSdk-ProfileTools
1538 * @brief Determines which groove position to return.
1539 *
1540 * The following enumerators are defined:
1541 * - #GO_PROFILE_GROOVE_LOCATION_BOTTOM
1542 * - #GO_PROFILE_GROOVE_LOCATION_LEFT
1543 * - #GO_PROFILE_GROOVE_LOCATION_RIGHT
1544 */
1545 typedef k32s GoProfileGrooveLocation;
1546 /** @name GoProfileGrooveLocation
1547 *@{*/
1548 #define GO_PROFILE_GROOVE_LOCATION_BOTTOM (0) ///< Return the position of the bottom of the groove.
1549 #define GO_PROFILE_GROOVE_LOCATION_LEFT (1) ///< Return the position of the left corner of the groove.
1550 #define GO_PROFILE_GROOVE_LOCATION_RIGHT (2) ///< Return the position of the right corner of the groove.
1551 /**@}*/
1552
1553 /**
1554 * @struct GoProfileStripSelectType
1555 * @ingroup GoSdk-ProfileTools
1556 * @brief Determines which Strip to select when multiple are present.
1557 *
1558 * The following enumerators are defined:
1559 * - #GO_PROFILE_STRIP_SELECT_TYPE_BEST
1560 * - #GO_PROFILE_STRIP_SELECT_TYPE_LEFT_INDEX
1561 * - #GO_PROFILE_STRIP_SELECT_TYPE_RIGHT_INDEX
1562 */
1563 typedef k32s GoProfileStripSelectType;
1564 /** @name GoProfileStripSelectType
1565 *@{*/
1566 #define GO_PROFILE_STRIP_SELECT_TYPE_BEST (0) ///< Select the best strip.
1567 #define GO_PROFILE_STRIP_SELECT_TYPE_LEFT_INDEX (1) ///< Select the strip with the currently selected index starting from the left side.
1568 #define GO_PROFILE_STRIP_SELECT_TYPE_RIGHT_INDEX (2) ///< Select the strip with the currently selected index starting from the right side.
1569 /**@}*/
1570
1571 /**
1572 * @struct GoProfileStripLocation
1573 * @ingroup GoSdk-ProfileTools
1574 * @brief Determines which Strip position to return.
1575 *
1576 * The following enumerators are defined:
1577 * - #GO_PROFILE_STRIP_LOCATION_LEFT
1578 * - #GO_PROFILE_STRIP_LOCATION_RIGHT
1579 * - #GO_PROFILE_STRIP_LOCATION_BOTTOM
1580 */
1581 typedef k32s GoProfileStripLocation;
1582 /** @name GoProfileStripLocation
1583 *@{*/
1584 #define GO_PROFILE_STRIP_LOCATION_LEFT (0) ///< Return the position of the left corner of the Strip.
1585 #define GO_PROFILE_STRIP_LOCATION_RIGHT (1) ///< Return the position of the right corner of the Strip.
1586 #define GO_PROFILE_STRIP_LOCATION_BOTTOM (2) ///< Return the position of the center of the Strip.
1587 /**@}*/
1588
1589 /**
1590 * @struct GoProfileGenerationType
1591 * @extends kValue
1592 * @ingroup GoSdk-Profile
1593 * @brief Represents a profile generation type.
1594 *
1595 * The following enumerators are defined:
1596 * - #GO_PROFILE_GENERATION_TYPE_CONTINUOUS
1597 * - #GO_PROFILE_GENERATION_TYPE_FIXED_LENGTH
1598 * - #GO_PROFILE_GENERATION_TYPE_VARIABLE_LENGTH
1599 * - #GO_PROFILE_GENERATION_TYPE_ROTATIONAL
1600 */
1601 typedef k32s GoProfileGenerationType;
1602 /** @name GoProfileGenerationType
1603 *@{*/
1604 #define GO_PROFILE_GENERATION_TYPE_CONTINUOUS (0) ///< Continuous Profile generation.
1605 #define GO_PROFILE_GENERATION_TYPE_FIXED_LENGTH (1) ///< Fixed length Profile generation.
1606 #define GO_PROFILE_GENERATION_TYPE_VARIABLE_LENGTH (2) ///< Variable length Profile generation.
1607 #define GO_PROFILE_GENERATION_TYPE_ROTATIONAL (3) ///< Rotational Profile generation.
1608 /**@}*/
1609
1610 /**
1611 * @struct GoProfileGenerationStartTrigger
1612 * @extends kValue
1613 * @ingroup GoSdk-Profile
1614 * @brief Represents a profile generation start trigger.
1615 *
1616 * The following enumerators are defined:
1617 * - #GO_PROFILE_GENERATION_START_TRIGGER_SEQUENTIAL
1618 * - #GO_PROFILE_GENERATION_START_TRIGGER_DIGITAL
1619 */
1620 typedef k32s GoProfileGenerationStartTrigger;
1621 /** @name GoProfileGenerationStartTrigger
1622 *@{*/
1623 #define GO_PROFILE_GENERATION_START_TRIGGER_SEQUENTIAL (0) ///< Sequential start trigger.
1624 #define GO_PROFILE_GENERATION_START_TRIGGER_DIGITAL (1) ///< Digital input start trigger.
1625 /**@}*/
1626
1627 /// @endcond
1628
1629 /// @cond (Gocator_2x00 || Gocator_3x00)
1630
1631 /**
1632 * @struct GoPartFrameOfReference
1633 * @extends kValue
1634 * @ingroup GoSdk
1635 * @brief Represents a part detection frame of reference.
1636 *
1637 * The following enumerators are defined:
1638 * - #GO_PART_FRAME_OF_REFERENCE_TYPE_SENSOR
1639 * - #GO_PART_FRAME_OF_REFERENCE_TYPE_SCAN
1640 * - #GO_PART_FRAME_OF_REFERENCE_TYPE_PART
1641 */
1642 typedef k32s GoPartFrameOfReference;
1643 /** @name GoPartFrameOfReference
1644 *@{*/
1645 #define GO_PART_FRAME_OF_REFERENCE_TYPE_SENSOR (0) ///< Sensor frame of reference. 2x00 only.
1646 #define GO_PART_FRAME_OF_REFERENCE_TYPE_SCAN (0) ///< Scan frame of reference. 3x00 only. Value duplication is intentional.
1647 #define GO_PART_FRAME_OF_REFERENCE_TYPE_PART (1) ///< Part frame of reference.
1648 /**@}*/
1649
1650 /**
1651 * @struct GoPartHeightThresholdDirection
1652 * @extends kValue
1653 * @ingroup GoSdk-Surface
1654 * @brief Represents a part detection height threshold direction.
1655 *
1656 * The following enumerators are defined:
1657 * - #GO_PART_HEIGHT_THRESHOLD_DIRECTION_ABOVE
1658 * - #GO_PART_HEIGHT_THRESHOLD_DIRECTION_BELOW
1659 */
1660 typedef k32s GoPartHeightThresholdDirection;
1661 /** @name GoPartHeightThresholdDirection
1662 *@{*/
1663 #define GO_PART_HEIGHT_THRESHOLD_DIRECTION_ABOVE (0) ///< Height threshold direction is above the Z-axis.
1664 #define GO_PART_HEIGHT_THRESHOLD_DIRECTION_BELOW (1) ///< Height threshold direction is below the Z-axis.
1665 /**@}*/
1666
1667 /**
1668 * @struct GoSurfaceGenerationType
1669 * @extends kValue
1670 * @ingroup GoSdk-Surface
1671 * @brief Represents a surface generation type.
1672 *
1673 * The following enumerators are defined:
1674 * - #GO_SURFACE_GENERATION_TYPE_CONTINUOUS
1675 * - #GO_SURFACE_GENERATION_TYPE_FIXED_LENGTH
1676 * - #GO_SURFACE_GENERATION_TYPE_VARIABLE_LENGTH
1677 * - #GO_SURFACE_GENERATION_TYPE_ROTATIONAL
1678 */
1679 typedef k32s GoSurfaceGenerationType;
1680 /** @name GoSurfaceGenerationType
1681 *@{*/
1682 #define GO_SURFACE_GENERATION_TYPE_CONTINUOUS (0) ///< Continuous surface generation.
1683 #define GO_SURFACE_GENERATION_TYPE_FIXED_LENGTH (1) ///< Fixed length surface generation.
1684 #define GO_SURFACE_GENERATION_TYPE_VARIABLE_LENGTH (2) ///< Variable length surface generation.
1685 #define GO_SURFACE_GENERATION_TYPE_ROTATIONAL (3) ///< Rotational surface generation.
1686 /**@}*/
1687
1688 /**
1689 * @struct GoSurfaceGenerationStartTrigger
1690 * @extends kValue
1691 * @ingroup GoSdk-Surface
1692 * @brief Represents a surface generation start trigger.
1693 *
1694 * The following enumerators are defined:
1695 * - #GO_SURFACE_GENERATION_START_TRIGGER_SEQUENTIAL
1696 * - #GO_SURFACE_GENERATION_START_TRIGGER_DIGITAL
1697 */
1698 typedef k32s GoSurfaceGenerationStartTrigger;
1699 /** @name GoSurfaceGenerationStartTrigger
1700 *@{*/
1701 #define GO_SURFACE_GENERATION_START_TRIGGER_SEQUENTIAL (0) ///< Sequential start trigger.
1702 #define GO_SURFACE_GENERATION_START_TRIGGER_DIGITAL (1) ///< Digital input start trigger.
1703 /**@}*/
1704
1705 /**
1706 * @struct GoSurfaceLocation
1707 * @ingroup GoSdk-SurfaceTools
1708 * @brief Represents a surface location.
1709 *
1710 * The following enumerators are defined:
1711 * - #GO_SURFACE_LOCATION_TYPE_MAX
1712 * - #GO_SURFACE_LOCATION_TYPE_MIN
1713 * - #GO_SURFACE_LOCATION_TYPE_2D_CENTROID
1714 * - #GO_SURFACE_LOCATION_TYPE_3D_CENTROID
1715 * - #GO_SURFACE_LOCATION_TYPE_AVG
1716 * - #GO_SURFACE_LOCATION_TYPE_MEDIAN
1717 */
1718 typedef k32s GoSurfaceLocation;
1719 /** @name GoSurfaceLocation
1720 *@{*/
1721 #define GO_SURFACE_LOCATION_TYPE_MAX (0) ///< Location based on the maximum point.
1722 #define GO_SURFACE_LOCATION_TYPE_MIN (1) ///< Location based on the minimum point.
1723 #define GO_SURFACE_LOCATION_TYPE_2D_CENTROID (2) ///< Location based on a 2d centroid.
1724 #define GO_SURFACE_LOCATION_TYPE_3D_CENTROID (3) ///< Location based on a 3d centroid.
1725 #define GO_SURFACE_LOCATION_TYPE_AVG (4) ///< Location based on the average point.
1726 #define GO_SURFACE_LOCATION_TYPE_MEDIAN (5) ///< Location based on the median point.
1727 /**@}*/
1728
1729 /**
1730 * @struct GoSurfaceFeatureType
1731 * @ingroup GoSdk-SurfaceTools
1732 * @brief Represents a surface feature type.
1733 *
1734 * The following enumerators are defined:
1735 * - #GO_SURFACE_FEATURE_TYPE_AVERAGE
1736 * - #GO_SURFACE_FEATURE_TYPE_CENTROID
1737 * - #GO_SURFACE_FEATURE_TYPE_X_MAX
1738 * - #GO_SURFACE_FEATURE_TYPE_X_MIN
1739 * - #GO_SURFACE_FEATURE_TYPE_Y_MAX
1740 * - #GO_SURFACE_FEATURE_TYPE_Y_MIN
1741 * - #GO_SURFACE_FEATURE_TYPE_Z_MAX
1742 * - #GO_SURFACE_FEATURE_TYPE_Z_MIN
1743 * - #GO_SURFACE_FEATURE_TYPE_MEDIAN
1744 */
1745 typedef k32s GoSurfaceFeatureType;
1746 /** @name GoSurfaceFeatureType
1747 *@{*/
1748 #define GO_SURFACE_FEATURE_TYPE_AVERAGE (0) ///< Feature based on the average.
1749 #define GO_SURFACE_FEATURE_TYPE_CENTROID (1) ///< Feature based on the centroid.
1750 #define GO_SURFACE_FEATURE_TYPE_X_MAX (2) ///< Feature based on the X maximum point.
1751 #define GO_SURFACE_FEATURE_TYPE_X_MIN (3) ///< Feature based on the X minimum point.
1752 #define GO_SURFACE_FEATURE_TYPE_Y_MAX (4) ///< Feature based on the Y maximum point.
1753 #define GO_SURFACE_FEATURE_TYPE_Y_MIN (5) ///< Feature based on the Y minimum point.
1754 #define GO_SURFACE_FEATURE_TYPE_Z_MAX (6) ///< Feature based on the Z maximum point.
1755 #define GO_SURFACE_FEATURE_TYPE_Z_MIN (7) ///< Feature based on the Z minimum point.
1756 #define GO_SURFACE_FEATURE_TYPE_MEDIAN (8) ///< Feature based on the median.
1757 /**@}*/
1758
1759 /**
1760 * @struct GoSurfaceCountersunkHoleShape
1761 * @extends kValue
1762 * @ingroup GoSdk-SurfaceTools
1763 * @brief Represents a surface countersunk hole tool shape.
1764 *
1765 * The following enumerators are defined:
1766 * - #GO_SURFACE_COUNTERSUNK_HOLE_SHAPE_CONE
1767 * - #GO_SURFACE_COUNTERSUNK_HOLE_SHAPE_COUNTERBORE
1768 */
1769 typedef k32s GoSurfaceCountersunkHoleShape;
1770 /** @name GoSurfaceCountersunkHoleShape
1771 *@{*/
1772 #define GO_SURFACE_COUNTERSUNK_HOLE_SHAPE_CONE (0) ///< Cone shape.
1773 #define GO_SURFACE_COUNTERSUNK_HOLE_SHAPE_COUNTERBORE (1) ///< Counterbore shape.
1774 /**@}*/
1775
1776
1777 /**
1778 * @struct GoSurfaceOpeningType
1779 * @extends kValue
1780 * @ingroup GoSdk-SurfaceTools
1781 * @brief Represents a surface opening tool type.
1782 *
1783 * The following enumerators are defined:
1784 * - #GO_SURFACE_OPENING_TYPE_ROUNDED_SLOT
1785 * - #GO_SURFACE_OPENING_TYPE_ROUNDED_RECTANGLE
1786 */
1787 typedef k32s GoSurfaceOpeningType;
1788 /** @name GoSurfaceOpeningType
1789 *@{*/
1790 #define GO_SURFACE_OPENING_TYPE_ROUNDED_SLOT (0) ///< Rounded slot opening type.
1791 #define GO_SURFACE_OPENING_TYPE_ROUNDED_RECTANGLE (1) ///< Rectangular opening type.
1792 /**@}*/
1793
1794 /**
1795 * @struct GoSurfaceRivetType
1796 * @extends kValue
1797 * @ingroup GoSdk-SurfaceTools
1798 * @brief Represents a surface rivet tool type.
1799 *
1800 * The following enumerators are defined:
1801 * - #GO_SURFACE_RIVET_TYPE_FLUSH
1802 * - #GO_SURFACE_RIVET_TYPE_RAISED
1803 */
1804 typedef k32s GoSurfaceRivetType;
1805 /** @name GoSurfaceRivetType
1806 *@{*/
1807 #define GO_SURFACE_RIVET_TYPE_FLUSH (0) ///< Flush rivet type.
1808 #define GO_SURFACE_RIVET_TYPE_RAISED (1) ///< Raised rivet type.
1809 /**@}*/
1810
1811 /**
1812 * @struct GoPartMatchAlgorithm
1813 * @extends kValue
1814 * @ingroup GoSdk-Surface
1815 * @brief Represents a part matching algorithm.
1816 *
1817 * The following enumerators are defined:
1818 * - #GO_PART_MATCH_ALGORITHM_EDGE
1819 * - #GO_PART_MATCH_ALGORITHM_BOUNDING_BOX
1820 * - #GO_PART_MATCH_ALGORITHM_ELLIPSE
1821 */
1822 typedef k32s GoPartMatchAlgorithm;
1823 /** @name GoPartMatchAlgorithm
1824 *@{*/
1825 #define GO_PART_MATCH_ALGORITHM_EDGE (0) ///< Edge based part match algorithm.
1826 #define GO_PART_MATCH_ALGORITHM_BOUNDING_BOX (1) ///< Bounding box based part match algorithm.
1827 #define GO_PART_MATCH_ALGORITHM_ELLIPSE (2) ///< Ellipse based part match algorithm.
1828 /**@}*/
1829
1830 #define GO_SURFACE_COUNTERSUNK_HOLE_MAX_REF_REGIONS (2) ///< The maximum number of reference regions permitted for the Surface Counter Sunk Hole Tool.
1831 #define GO_SURFACE_HOLE_MAX_REF_REGIONS (2) ///< The maximum number of reference regions permitted for the Surface Hole Tool.
1832 #define GO_SURFACE_OPENING_MAX_REF_REGIONS (2) ///< The maximum number of reference regions permitted for the Surface Opening Tool.
1833 #define GO_SURFACE_PLANE_MAX_REGIONS (2) ///< The maximum number of reference regions permitted for the Surface Plane Tool.
1834 #define GO_SURFACE_RIVET_MAX_REF_REGIONS (2) ///< The maximum number of reference regions permitted for the Surface Rivet Tool.
1835 #define GO_SURFACE_STUD_MAX_REF_REGIONS (2) ///< The maximum number of reference regions permitted for the Surface Stud Tool.
1836
1837 /**
1838 * @struct GoImageType
1839 * @extends kValue
1840 * @ingroup GoSdk
1841 * @brief Represents an image type.
1842 *
1843 * The following enumerators are defined:
1844 * - #GO_IMAGE_TYPE_HEIGHTMAP
1845 * - #GO_IMAGE_TYPE_INTENSITY
1846 */
1847 typedef k32s GoImageType;
1848 /** @name GoImageType
1849 *@{*/
1850 #define GO_IMAGE_TYPE_HEIGHTMAP (0) ///< Heightmap image type.
1851 #define GO_IMAGE_TYPE_INTENSITY (1) ///< Intensity image type.
1852 /**@}*/
1853
1854 /// @endcond
1855
1856
1857 /**
1858 * @struct GoGammaType
1859 * @extends kValue
1860 * @ingroup GoSdk
1861 * @brief Represents a material gamma type.
1862 *
1863 * The following enumerators are defined:
1864 * - #GO_GAMMA_TYPE_NONE
1865 * - #GO_GAMMA_TYPE_LOW
1866 * - #GO_GAMMA_TYPE_MEDIUM
1867 * - #GO_GAMMA_TYPE_HIGH
1868 */
1869 typedef k32s GoGammaType;
1870 /** @name GoGammaType
1871 *@{*/
1872 #define GO_GAMMA_TYPE_NONE (0) ///< None. No imager gamma / multi-slope configuration will occur.
1873 #define GO_GAMMA_TYPE_LOW (1) ///< Low.
1874 #define GO_GAMMA_TYPE_MEDIUM (2) ///< Medium.
1875 #define GO_GAMMA_TYPE_HIGH (3) ///< High.
1876 /**@}*/
1877
1878 /**
1879 * @struct GoPatternSequenceType
1880 * @extends kValue
1881 * @ingroup GoSdk
1882 * @brief Represents a pattern sequence type.
1883 *
1884 * The following enumerators are defined:
1885 * - #GO_PATTERN_SEQUENCE_TYPE_DEFAULT
1886 * - #GO_PATTERN_SEQUENCE_TYPE_CUSTOM
1887 *
1888 */
1889 typedef k32s GoPatternSequenceType;
1890 /** @name GoPatternSequenceType
1891 *@{*/
1892
1893 #define GO_PATTERN_SEQUENCE_TYPE_DEFAULT (0) ///< Default sequence pattern.
1894 #define GO_PATTERN_SEQUENCE_TYPE_CUSTOM (100) ///< Custom sequence pattern.
1895 /**@}*/
1896
1897
1898 /**
1899 * @struct GoImplicitTriggerOverride
1900 * @extends kValue
1901 * @ingroup GoSdk
1902 * @brief Represents an EthernetIP implicit messaging trigger override.
1903 *
1904 * The following enumerators are defined:
1905 * - #GO_IMPLICIT_TRIGGER_OVERRIDE_OFF
1906 * - #GO_IMPLICIT_TRIGGER_OVERRIDE_CYCLIC
1907 * - #GO_IMPLICIT_TRIGGER_OVERRIDE_CHANGE_OF_STATE
1908 *
1909 */
1910 typedef k32s GoImplicitTriggerOverride;
1911 /** @name GoImplicitTriggerOverride
1912 *@{*/
1913
1914 #define GO_IMPLICIT_TRIGGER_OVERRIDE_OFF (0) ///< Use the implicit output trigger specified in the connection header.
1915 #define GO_IMPLICIT_TRIGGER_OVERRIDE_CYCLIC (1) ///< Utilize cyclic implicit messaging trigger behavior regardless of what is specified in the connection header.
1916 #define GO_IMPLICIT_TRIGGER_OVERRIDE_CHANGE_OF_STATE (2) ///< Utilize change of state implicit messaging trigger behavior regardless of what is specified in the connection header.
1917 /**@}*/
1918
1919 /**
1920 * @struct GoAlignmentStatus
1921 * @extends kValue
1922 * @ingroup GoSdk
1923 * @brief Represents the operation status of an alignment.
1924 *
1925 * The following enumerators are defined:
1926 * - #GO_ALIGNMENT_STATUS_OK
1927 * - #GO_ALIGNMENT_STATUS_GENERAL_FAILURE
1928 * - #GO_ALIGNMENT_STATUS_STATIONARY_NO_DATA
1929 * - #GO_ALIGNMENT_STATUS_MOVING_INSUFFICIENT_DATA
1930 * - #GO_ALIGNMENT_STATUS_INVALID_TARGET
1931 * - #GO_ALIGNMENT_STATUS_UNEXPECTED_TARGET_POSITION
1932 * - #GO_ALIGNMENT_STATUS_BAR_HOLE_NOT_FOUND
1933 * - #GO_ALIGNMENT_STATUS_MOVING_NO_ENCODER_CHANGE
1934 * - #GO_ALIGNMENT_STATUS_ABORT
1935 * - #GO_ALIGNMENT_STATUS_TIMEOUT
1936 * - #GO_ALIGNMENT_STATUS_INVALID_PARAMETER
1937 *
1938 */
1939 typedef k32s GoAlignmentStatus;
1940 /** @name GoAlignmentStatus
1941 *@{*/
1942
1943 #define GO_ALIGNMENT_STATUS_OK (1) ///< Alignment operation succeeded.
1944 #define GO_ALIGNMENT_STATUS_GENERAL_FAILURE (0) ///< Alignment operation failed.
1945 #define GO_ALIGNMENT_STATUS_STATIONARY_NO_DATA (-1) ///< Stationary alignment failed due to no data being received. Please ensure the target is in range.
1946 #define GO_ALIGNMENT_STATUS_MOVING_INSUFFICIENT_DATA (-2) ///< Moving alignment failed due to insufficient data.
1947 #define GO_ALIGNMENT_STATUS_INVALID_TARGET (-3) ///< Invalid target detected. Examples include the target dimensions being too small, the target touches both sides of the field of view, or there is insufficient data after some internal filtering.
1948 #define GO_ALIGNMENT_STATUS_UNEXPECTED_TARGET_POSITION (-4) ///< Target detected in an unexpected position. Please ensure the target is stable and there are no obstructions.
1949 #define GO_ALIGNMENT_STATUS_BAR_HOLE_NOT_FOUND (-5) ///< No reference hole was found during bar alignment. Please ensure the holes can be seen and that the target parameters match their physical dimensions.
1950 #define GO_ALIGNMENT_STATUS_MOVING_NO_ENCODER_CHANGE (-6) ///< No change in encoder value occurred during moving alignment. Please ensure the encoder is connected and the target is moving.
1951 #define GO_ALIGNMENT_STATUS_ABORT (kERROR_ABORT) ///< The alignment was aborted by the user.
1952 #define GO_ALIGNMENT_STATUS_TIMEOUT (kERROR_TIMEOUT) ///< The alignment timed out.
1953 #define GO_ALIGNMENT_STATUS_INVALID_PARAMETER (kERROR_PARAMETER) ///< The alignment failed due to incorrected parameters.
1954 /**@}*/
1955
1956 typedef struct GoMeasurementOption
1957 {
1958 kText64 name;
1959 kSize minCount;
1960 kSize maxCount;
1961 } GoMeasurementOption;
1962
1963
1964 kEndHeader()
1965 #include <GoSdk/GoSdkDef.x.h>
1966
1967 #endif
GoSurfaceCountersunkHoleShape
Represents a surface countersunk hole tool shape.
GoActiveAreaConfig
Represents an active area configuration element.
Definition: GoSdkDef.h:645
kText64
GoTransformation::yAngle
k64f yAngle
The Y angle of the transformation.
Definition: GoSdkDef.h:667
GoToolType
Lists all tool types.
GoTransformedDataRegion::y
k64f y
The Y offset of the transformed data region.
Definition: GoSdkDef.h:680
GoStates
Sensor state, login, alignment information, recording state, playback source, uptime, playback information, and auto-start setting state.
Definition: GoSdkDef.h:552
k32u
GoInputSource
Represents a data input source.
GoOutputDelayDomain
Represents an output delay domain.
GoElement32u
Represents a 32-bit unsigned integer configuration element with a range and enabled state...
Definition: GoSdkDef.h:617
GoStates::playbackSource
k32s playbackSource
The current playback source of the sensor.
Definition: GoSdkDef.h:559
GoSurfaceFeatureType
Represents a surface feature type.
GoSeekDirection
Represents a playback seek direction.
GoElementBool::enabled
kBool enabled
Represents whether the element value is currently used.
Definition: GoSdkDef.h:634
GoElement64f::max
k64f max
The maximum allowable value that can be set for this element.
Definition: GoSdkDef.h:607
GoStates::loginType
GoUser loginType
The logged in user.
Definition: GoSdkDef.h:555
GoReplayExportSourceType
Represents the replay export source type.
kPointer
GoStates::alignmentReference
GoAlignmentRef alignmentReference
The alignment reference of the sensor.
Definition: GoSdkDef.h:556
GoMeasurementType
Lists all measurement types.
GoDecisionCode
Represents the possible measurement decision codes.
GoSurfaceGenerationStartTrigger
Represents a surface generation start trigger.
GoFamily
Represents the supported Gocator hardware families.
k16u
GoRole
Represents a user role.
GoElement32u::enabled
kBool enabled
Represents whether the element value is currently used.
Definition: GoSdkDef.h:619
kSize
GoAddressInfo::useDhcp
kBool useDhcp
Sensor uses DHCP?
Definition: GoSdkDef.h:575
GoEthernetProtocol
Represents a ethernet output protocol.
GoSurfaceOpeningType
Represents a surface opening tool type.
GoDataSource
Represents a data source.
k8u
GoStates::playbackCount
k32u playbackCount
The playback count.
Definition: GoSdkDef.h:563
GoTransformedDataRegion
Represents a transformed data region.
Definition: GoSdkDef.h:677
GoActiveAreaConfig::length
GoElement64f length
The length of the active area.
Definition: GoSdkDef.h:651
GoTransformedDataRegion::x
k64f x
The X offset of the transformed data region.
Definition: GoSdkDef.h:679
GoStates::uptimeSec
k32u uptimeSec
Sensor uptime in seconds.
Definition: GoSdkDef.h:560
GoDecision
Represents the measurement output decision values. Bit 0 represents the decision value, while bits 1 through 7 represent the decision code, outlined by GoDecisionCode.
GoStates::alignmentState
GoAlignmentState alignmentState
The alignment state of the sensor.
Definition: GoSdkDef.h:557
GoTrigger
Represents a trigger.
GoTransformation::y
k64f y
The Y offset of the transformation.
Definition: GoSdkDef.h:664
kIpAddress
GoEndianType
Represents an endian output type.
GoTransformation
Represents an alignment element.
Definition: GoSdkDef.h:661
GoMaterialType
Represents a material acquisition type.
GoElement64f::value
k64f value
The element's double field value.
Definition: GoSdkDef.h:606
GoPartFrameOfReference
Represents a part detection frame of reference.
GoProfileGenerationStartTrigger
Represents a profile generation start trigger.
GoActiveAreaConfig::width
GoElement64f width
The width of the active area.
Definition: GoSdkDef.h:652
GoActiveAreaConfig::z
GoElement64f z
The Z offset of the active area.
Definition: GoSdkDef.h:649
GoAlignmentState
Represents an alignment state.
GoStates::recordingEnabled
kBool recordingEnabled
The current state of recording on the sensor.
Definition: GoSdkDef.h:558
GoAddressInfo::gateway
kIpAddress gateway
Sensor gateway address.
Definition: GoSdkDef.h:578
GoStates::autoStartEnabled
kBool autoStartEnabled
The auto-start enabled state.
Definition: GoSdkDef.h:564
GoSurfaceGenerationType
Represents a surface generation type.
GoProfileGrooveShape
Represents a profile edge type.
GoActiveAreaConfig::y
GoElement64f y
The Y offset of the active area.
Definition: GoSdkDef.h:648
GoProfileGrooveSelectType
Determines which groove to select when multiple are present.
GoElement64f::min
k64f min
The minimum allowable value that can be set for this element.
Definition: GoSdkDef.h:608
GoGammaType
Represents a material gamma type.
GoSurfaceLocation
Represents a surface location.
GoAnalogTrigger
Represents an analog output trigger.
GoImageType
Represents an image type.
GoPixelType
Represents a video message pixel type.
GoImplicitTriggerOverride
Represents an EthernetIP implicit messaging trigger override.
GoStates::sensorState
GoState sensorState
The state of the sensor.
Definition: GoSdkDef.h:554
GoAddressInfo::address
kIpAddress address
Sensor IP address.
Definition: GoSdkDef.h:576
GoProfileStripBaseType
Represents a profile strip tool base type.
GoElement64f::enabled
kBool enabled
Represents whether the element value is currently used. (not always applicable)
Definition: GoSdkDef.h:604
kApiDef.h
GoAlignmentStatus
Represents the operation status of an alignment.
k32s
GoTransformedDataRegion::width
k64f width
The width of the transformed data region.
Definition: GoSdkDef.h:682
GoProfileStripEdgeType
Represents a profile strip tool edge type.
GoTriggerUnits
Represents the system's primary synchronization domain.
GoEncoderTriggerMode
Represents an encoder's triggering behavior.
GoElementBool::systemValue
kBool systemValue
The system value. (not always applicable)
Definition: GoSdkDef.h:635
GoDataMessageType
Lists all data message types.
GoSurfaceRivetType
Represents a surface rivet tool type.
GoUpgradeFxArgs::progress
k64f progress
Upgrade progress (percentage).
Definition: GoSdkDef.h:65
GoOrientation
Represents a sensor orientation type.
GoUser
Represents a user id.
GoProfileGrooveLocation
Determines which groove position to return.
GoElement32u::min
k32u min
The minimum allowable value that can be set for this element.
Definition: GoSdkDef.h:623
GoAlignmentTarget
Represents a alignment target type.
GoExposureMode
Represents all possible exposure modes.
GoAlignmentRef
Represents an alignment reference.
GoOutputSource
Represents output sources.
GoTransformation::zAngle
k64f zAngle
The Z angle of the transformation.
Definition: GoSdkDef.h:668
GoElement32u::value
k32u value
The element's 32-bit unsigned field value.
Definition: GoSdkDef.h:621
GoPatternSequenceType
Represents a pattern sequence type.
GoAsciiOperation
Represents an ASCII protocol operational type.
GoAnalogEvent
Represents a analog output event.
GoAddressInfo::mask
kIpAddress mask
Sensor subnet bit-mask.
Definition: GoSdkDef.h:577
GoUpgradeFxArgs
Represents arguments provided to an upgrade callback function.
Definition: GoSdkDef.h:63
GoElement64f
Represents a 64-bit floating point configuration element with a range and enabled state...
Definition: GoSdkDef.h:602
GoDigitalSignal
Represents a digital output signal type.
GoTriggerSource
Represents a trigger source type.
GoSpacingIntervalType
Represents spacing interval types.
GoProfileGapAxis
Represents a profile gap measurement axis.
GoActiveAreaConfig::height
GoElement64f height
The height of the active area.
Definition: GoSdkDef.h:650
GoElement32u::max
k32u max
The maximum allowable value that can be set for this element.
Definition: GoSdkDef.h:622
GoAlignmentType
Represents an alignment type.
GoProfileGenerationType
Represents a profile generation type.
GoElementBool
Represents a boolean configuration element with an enabled state.
Definition: GoSdkDef.h:632
kNetwork.h
GoFrameRateMaxSource
Represents the current maximum frame rate limiting source.
GoProfileStripSelectType
Determines which Strip to select when multiple are present.
kObject
GoMode
Represents a scan mode.
kVersion
kStatus
GoDigitalEvent
Represents a digital output event.
GoElement64f::systemValue
k64f systemValue
The system value. (not always applicable)
Definition: GoSdkDef.h:605
GoTransformation::x
k64f x
The X offset of the transformation.
Definition: GoSdkDef.h:663
GoProfileStripLocation
Determines which Strip position to return.
GoElement32u::systemValue
k32u systemValue
The system value. (not always applicable)
Definition: GoSdkDef.h:620
GoSpotSelectionType
Represents a spot selection type.
GoStates::uptimeMicrosec
k32u uptimeMicrosec
Sensor uptime in microseconds.
Definition: GoSdkDef.h:561
k64f
GoPartHeightThresholdDirection
Represents a part detection height threshold direction.
GoStates::playbackPos
k32u playbackPos
The playback position index.
Definition: GoSdkDef.h:562
GoProfileAreaType
Determines how to calculate profile area.
GoSelcomFormat
Represents the selcom format followed on the serial output.
kBool
GoElementBool::value
kBool value
The element's boolean field value.
Definition: GoSdkDef.h:636
GoTransformedDataRegion::length
k64f length
The length of the transformed data region.
Definition: GoSdkDef.h:683
GoActiveAreaConfig::x
GoElement64f x
The X offset of the active area.
Definition: GoSdkDef.h:647
GoTransformation::z
k64f z
The Z offset of the transformation.
Definition: GoSdkDef.h:665
GoTransformedDataRegion::height
k64f height
The height of the transformed data region.
Definition: GoSdkDef.h:684
GoProfileEdgeType
Represents a profile edge type.
GoProfileFeatureType
Represents a profile feature point type.
GoTransformedDataRegion::z
k64f z
The Z offset of the transformed data region.
Definition: GoSdkDef.h:681
GoTransformation::xAngle
k64f xAngle
The X angle of the transformation.
Definition: GoSdkDef.h:666
GoDigitalPass
Represents a digital output condition.
GoAddressInfo
Sensor network address settings.
Definition: GoSdkDef.h:573
GoSerialProtocol
Represents all serial output protocols.
GoPartMatchAlgorithm
Represents a part matching algorithm.
GoState
Represents the current state of a sensor object.
GoEncoderSpacingMinSource
Represents the current encoder period limiting source.