Gocator API

- Home
- Types
- Files

All Classes Files Functions Variables Typedefs Macros Modules Pages
GoDataTypes.h
Go to the documentation of this file.
1 /**
2 * @file GoDataTypes.h
3 * @brief Declares Gocator data message classes and related types.
4 *
5 * @internal
6 * Copyright (C) 2016 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 #ifndef GO_SDK_DATA_TYPES_H
11 #define GO_SDK_DATA_TYPES_H
12
13 #include <GoSdk/GoSdkDef.h>
14 kBeginHeader()
15
16 /**
17 * @class GoDataMsg
18 * @extends kObject
19 * @ingroup GoSdk-DataChannel
20 * @brief Represents a base message sourced from the data channel.
21 */
22 typedef kObject GoDataMsg;
23
24 /**
25 * Returns the message type for a data channel message given in a GoDataSet.
26 *
27 * @public @memberof GoDataMsg
28 * @version Introduced in firmware 4.0.10.27
29 * @param message A data channel message.
30 * @return A GoDataMessageType value.
31 */
32 GoFx(GoDataMessageType) GoDataMsg_Type(GoDataMsg message);
33
34 /**
35 * @struct GoStamp
36 * @extends kValue
37 * @ingroup GoSdk-DataChannel
38 * @brief Represents an acquisition stamp.
39 */
40 typedef struct GoStamp
41 {
42 k64u frameIndex; ///< Frame index (counts up from zero).
43 k64u timestamp; ///< Timestamp in internal units approximating microseconds where the true time in us = timestamp value / 1.024.
44 k64s encoder; ///< Position (encoder ticks).
45 k64s encoderAtZ; ///< Encoder value latched at z-index mark (encoder ticks).
46 k64u status;
47 /**<
48 * Bit mask containing frame information:
49 *
50 * - Bit 0: Represents sensor digital input state.
51 * - Bit 4: Represents Master digital input state.
52 * - Bits 8 and 9: Represents inter-frame digital pulse trigger
53 (Master digital input if a Master is connected, otherwise
54 sensor digital input. Value is cleared after each frame
55 and clamped at 3 if more than 3 pulses are received).
56 */
57 k32u id; ///< Source device ID.
58 k32u reserved32u; ///< Reserved.
59 k64u reserved64u; ///< Reserved.
60 } GoStamp;
61
62 /**
63 * @class GoStampMsg
64 * @extends GoDataMsg
65 * @ingroup GoSdk-DataChannel
66 * @brief Represents a message containing a set of acquisition stamps.
67 */
68 typedef GoDataMsg GoStampMsg;
69
70 /**
71 * Gets the stamp source.
72 *
73 * @public @memberof GoStampMsg
74 * @version Introduced in firmware 4.0.10.27
75 * @param msg Message object.
76 * @return Stamp source.
77 */
78 GoFx(GoDataSource) GoStampMsg_Source(GoStampMsg msg);
79
80 /**
81 * Returns the number of stamps contained in this message.
82 *
83 * @public @memberof GoStampMsg
84 * @version Introduced in firmware 4.0.10.27
85 * @param msg Message object.
86 * @return Count of stamps.
87 */
88 GoFx(kSize) GoStampMsg_Count(GoStampMsg msg);
89
90 /**
91 * Gets the stamp at the specified index.
92 *
93 * @public @memberof GoStampMsg
94 * @version Introduced in firmware 4.0.10.27
95 * @param msg Message object.
96 * @param index Stamp index.
97 * @return Stamp pointer.
98 */
99 GoFx(GoStamp*) GoStampMsg_At(GoStampMsg msg, kSize index);
100
101 /**
102 * @class GoVideoMsg
103 * @extends GoDataMsg
104 * @ingroup GoSdk-DataChannel
105 * @brief Represents a data message containing a video image.
106 */
107 typedef GoDataMsg GoVideoMsg;
108
109 /**
110 * Gets the video source.
111 *
112 * @public @memberof GoVideoMsg
113 * @version Introduced in firmware 4.0.10.27
114 * @param msg Message object.
115 * @return Video source.
116 */
117 GoFx(GoDataSource) GoVideoMsg_Source(GoVideoMsg msg);
118
119
120 /**
121 * Gets the camera index that the video data originates from.
122 *
123 * @public @memberof GoVideoMsg
124 * @version Introduced in firmware 4.0.10.27
125 * @param msg Message object.
126 * @return Camera index.
127 */
128 GoFx(kSize) GoVideoMsg_CameraIndex(GoVideoMsg msg);
129
130
131 /**
132 * Gets the image width, in pixels.
133 *
134 * @public @memberof GoVideoMsg
135 * @version Introduced in firmware 4.0.10.27
136 * @param msg Message object.
137 * @return Image width, in pixels.
138 */
139 GoFx(kSize) GoVideoMsg_Width(GoVideoMsg msg);
140
141 /**
142 * Gets the image height, in pixels.
143 *
144 * @public @memberof GoVideoMsg
145 * @version Introduced in firmware 4.0.10.27
146 * @param msg Message object.
147 * @return Image height, in pixels.
148 */
149 GoFx(kSize) GoVideoMsg_Height(GoVideoMsg msg);
150
151 /**
152 * Gets the data type used to represent an image pixel.
153 *
154 * @public @memberof GoVideoMsg
155 * @version Introduced in firmware 4.0.10.27
156 * @param msg Message object.
157 * @return Pixel type.
158 */
159 GoFx(GoPixelType) GoVideoMsg_PixelType(GoVideoMsg msg);
160
161 /**
162 * Gets the image pixel size, in bytes.
163 *
164 * @public @memberof GoVideoMsg
165 * @version Introduced in firmware 4.0.10.27
166 * @param msg Message object.
167 * @return Pixel size, in bytes.
168 */
169 GoFx(kSize) GoVideoMsg_PixelSize(GoVideoMsg msg);
170
171 /**
172 * Gets the pixel format descriptor.
173 *
174 * @public @memberof GoVideoMsg
175 * @version Introduced in firmware 4.0.10.27
176 * @param msg Message object.
177 * @return Pixel format.
178 */
179 GoFx(kPixelFormat) GoVideoMsg_PixelFormat(GoVideoMsg msg);
180
181 /**
182 * Gets the image color filter array.
183 *
184 * @public @memberof GoVideoMsg
185 * @version Introduced in firmware 4.0.10.27
186 * @param msg Message object.
187 * @return Color filter array.
188 */
189 GoFx(kCfa) GoVideoMsg_Cfa(GoVideoMsg msg);
190
191 /**
192 * Gets a pointer to a row within the image.
193 *
194 * @public @memberof GoVideoMsg
195 * @version Introduced in firmware 4.0.10.27
196 * @param msg Message object.
197 * @param rowIndex Row index.
198 * @return Row pointer.
199 */
200 GoFx(void*) GoVideoMsg_RowAt(GoVideoMsg msg, kSize rowIndex);
201
202 /**
203 * Gets the exposure index.
204 *
205 * @public @memberof GoVideoMsg
206 * @version Introduced in firmware 4.0.10.27
207 * @param msg Message object.
208 * @return Exposure index.
209 */
210 GoFx(kSize) GoVideoMsg_ExposureIndex(GoVideoMsg msg);
211
212 /**
213 * Gets the exposure.
214 *
215 * @public @memberof GoVideoMsg
216 * @version Introduced in firmware 4.0.10.27
217 * @param msg Message object.
218 * @return Exposure in uS.
219 */
220 GoFx(k32u) GoVideoMsg_Exposure(GoVideoMsg msg);
221
222 /**
223 * Indicates whether the video message data requires horizontal flipping to match up with profile data.
224 *
225 * @public @memberof GoVideoMsg
226 * @version Introduced in firmware 4.4.4.14
227 * @param msg Message object.
228 * @return kTRUE if rotation is required, kFALSE otherwise.
229 */
230 GoFx(kBool) GoVideoMsg_IsFlippedX(GoVideoMsg msg);
231
232 /**
233 * Indicates whether the video message data requires vertical flipping to match up with profile data.
234 *
235 * @public @memberof GoVideoMsg
236 * @version Introduced in firmware 4.4.4.14
237 * @param msg Message object.
238 * @return kTRUE if rotation is required, kFALSE otherwise.
239 */
240 GoFx(kBool) GoVideoMsg_IsFlippedY(GoVideoMsg msg);
241
242 /// @cond (Gocator_1x00)
243 /**
244 * @class GoRangeMsg
245 * @extends GoDataMsg
246 * @ingroup GoSdk-DataChannel
247 * @brief Represents a data message containing a set of range data.
248 */
249 typedef GoDataMsg GoRangeMsg;
250
251 /**
252 * Gets the Range source.
253 *
254 * @public @memberof GoRangeMsg
255 * @version Introduced in firmware 4.0.10.27
256 * @param msg Message object.
257 * @return Range source.
258 */
259 GoFx(GoDataSource) GoRangeMsg_Source(GoRangeMsg msg);
260
261 /**
262 * Gets the count of Range data in this message.
263 *
264 * @public @memberof GoRangeMsg
265 * @version Introduced in firmware 4.0.10.27
266 * @param msg Message object.
267 * @return Count of Range data.
268 */
269 GoFx(kSize) GoRangeMsg_Count(GoRangeMsg msg);
270
271
272 /**
273 * Gets the Range z-resolution, in nanometers.
274 *
275 * @public @memberof GoRangeMsg
276 * @version Introduced in firmware 4.0.10.27
277 * @param msg Message object.
278 * @return Z resolution (nm).
279 */
280 GoFx(k32u) GoRangeMsg_ZResolution(GoRangeMsg msg);
281
282 /**
283 * Gets the Range z-offset, in micrometers.
284 *
285 * @public @memberof GoRangeMsg
286 * @version Introduced in firmware 4.0.10.27
287 * @param msg Message object.
288 * @return Z offset (um).
289 */
290 GoFx(k32s) GoRangeMsg_ZOffset(GoRangeMsg msg);
291
292 /**
293 * Gets a pointer to Range data.
294 *
295 * @public @memberof GoRangeMsg
296 * @version Introduced in firmware 4.0.10.27
297 * @param msg Message object.
298 * @param index Range array index.
299 * @return Range pointer.
300 */
301 GoFx(k16s*) GoRangeMsg_At(GoRangeMsg msg, kSize index);
302
303 /**
304 * Gets the exposure.
305 *
306 * @public @memberof GoRangeMsg
307 * @version Introduced in firmware 4.0.10.27
308 * @param msg Message object.
309 * @return Exposure in uS.
310 */
311 GoFx(k32u) GoRangeMsg_Exposure(GoRangeMsg msg);
312
313
314 /**
315 * @class GoRangeIntensityMsg
316 * @extends GoDataMsg
317 * @ingroup GoSdk-DataChannel
318 * @brief Represents a data message containing a set of range intensity data.
319 */
320 typedef GoDataMsg GoRangeIntensityMsg;
321
322 /**
323 * Gets the range intensity source.
324 *
325 * @public @memberof GoRangeIntensityMsg
326 * @version Introduced in firmware 4.0.10.27
327 * @param msg Message object.
328 * @return Range intensity source.
329 */
330 GoFx(GoDataSource) GoRangeIntensityMsg_Source(GoRangeIntensityMsg msg);
331
332 /**
333 * Gets the count of range intensity data in this message.
334 *
335 * @public @memberof GoRangeIntensityMsg
336 * @version Introduced in firmware 4.0.10.27
337 * @param msg Message object.
338 * @return Count of range intensity data.
339 */
340 GoFx(kSize) GoRangeIntensityMsg_Count(GoRangeIntensityMsg msg);
341
342 /**
343 * Gets a pointer to range intensity data.
344 *
345 * @public @memberof GoRangeIntensityMsg
346 * @version Introduced in firmware 4.0.10.27
347 * @param msg Message object.
348 * @param index Range intensity array index.
349 * @return Range intensity data pointer.
350 */
351 GoFx(k8u*) GoRangeIntensityMsg_At(GoRangeIntensityMsg msg, kSize index);
352
353 /**
354 * Gets the exposure.
355 *
356 * @public @memberof GoRangeIntensityMsg
357 * @version Introduced in firmware 4.0.10.27
358 * @param msg Message object.
359 * @return Exposure in uS.
360 */
361 GoFx(k32u) GoRangeIntensityMsg_Exposure(GoRangeIntensityMsg msg);
362
363 /// @endcond
364
365 /// @cond (Gocator_1x00 || Gocator_2x00)
366 /**
367 * @class GoProfileMsg
368 * @extends GoDataMsg
369 * @ingroup GoSdk-DataChannel
370 * @brief Represents a data message containing a set of profile arrays.
371 */
372 typedef GoDataMsg GoProfileMsg;
373
374 /**
375 * Gets the profile source.
376 *
377 * @public @memberof GoProfileMsg
378 * @version Introduced in firmware 4.0.10.27
379 * @param msg Message object.
380 * @return Profile source.
381 */
382 GoFx(GoDataSource) GoProfileMsg_Source(GoProfileMsg msg);
383
384 /**
385 * Gets the count of profile arrays in this message.
386 *
387 * @public @memberof GoProfileMsg
388 * @version Introduced in firmware 4.0.10.27
389 * @param msg Message object.
390 * @return Count of profile arrays.
391 */
392 GoFx(kSize) GoProfileMsg_Count(GoProfileMsg msg);
393
394 /**
395 * Gets the count of ranges in each profile array.
396 *
397 * @public @memberof GoProfileMsg
398 * @version Introduced in firmware 4.0.10.27
399 * @param msg Message object.
400 * @return Range count.
401 */
402 GoFx(kSize) GoProfileMsg_Width(GoProfileMsg msg);
403
404 /**
405 * Gets the profile x-resolution, in nanometers.
406 *
407 * @public @memberof GoProfileMsg
408 * @version Introduced in firmware 4.0.10.27
409 * @param msg Message object.
410 * @return X resolution (nm).
411 */
412 GoFx(k32u) GoProfileMsg_XResolution(GoProfileMsg msg);
413
414 /**
415 * Gets the profile z-resolution, in nanometers.
416 *
417 * @public @memberof GoProfileMsg
418 * @version Introduced in firmware 4.0.10.27
419 * @param msg Message object.
420 * @return Z resolution (nm).
421 */
422 GoFx(k32u) GoProfileMsg_ZResolution(GoProfileMsg msg);
423
424 /**
425 * Gets the profile x-offset, in micrometers.
426 *
427 * @public @memberof GoProfileMsg
428 * @version Introduced in firmware 4.0.10.27
429 * @param msg Message object.
430 * @return X offset (um).
431 */
432 GoFx(k32s) GoProfileMsg_XOffset(GoProfileMsg msg);
433
434 /**
435 * Gets the profile z-offset, in micrometers.
436 *
437 * @public @memberof GoProfileMsg
438 * @version Introduced in firmware 4.0.10.27
439 * @param msg Message object.
440 * @return Z offset (um).
441 */
442 GoFx(k32s) GoProfileMsg_ZOffset(GoProfileMsg msg);
443
444 /**
445 * Gets a pointer to a profile array.
446 *
447 * @public @memberof GoProfileMsg
448 * @version Introduced in firmware 4.0.10.27
449 * @param msg Message object.
450 * @param index Profile array index.
451 * @return Profile pointer.
452 */
453 GoFx(kPoint16s*) GoProfileMsg_At(GoProfileMsg msg, kSize index);
454
455 /**
456 * Gets the exposure.
457 *
458 * @public @memberof GoProfileMsg
459 * @version Introduced in firmware 4.0.10.27
460 * @param msg Message object.
461 * @return Exposure in uS.
462 */
463 GoFx(k32u) GoProfileMsg_Exposure(GoProfileMsg msg);
464
465
466 /**
467 * Gets the source camera index.
468 *
469 * @public @memberof GoProfileMsg
470 * @version Introduced in firmware 4.1.3.106
471 * @param msg Message object.
472 * @return Camera index (0 - Front camera, 1 - Back camera).
473 */
474 GoFx(k8u) GoProfileMsg_CameraIndex(GoProfileMsg msg);
475
476
477 /**
478 * @class GoResampledProfileMsg
479 * @extends GoDataMsg
480 * @ingroup GoSdk-DataChannel
481 * @brief Represents a data message containing a set of re-sampled profile arrays.
482 */
483 typedef GoDataMsg GoResampledProfileMsg;
484
485 /**
486 * Gets the profile source.
487 *
488 * @public @memberof GoResampledProfileMsg
489 * @version Introduced in firmware 4.0.10.27
490 * @param msg Message object.
491 * @return Profile source.
492 */
493 GoFx(GoDataSource) GoResampledProfileMsg_Source(GoResampledProfileMsg msg);
494
495 /**
496 * Gets the count of re-sampled profile arrays in this message.
497 *
498 * @public @memberof GoResampledProfileMsg
499 * @version Introduced in firmware 4.0.10.27
500 * @param msg Message object.
501 * @return Count of profile arrays.
502 */
503 GoFx(kSize) GoResampledProfileMsg_Count(GoResampledProfileMsg msg);
504
505 /**
506 * Gets the count of points in each re-sampled profile array.
507 *
508 * @public @memberof GoResampledProfileMsg
509 * @version Introduced in firmware 4.0.10.27
510 * @param msg Message object.
511 * @return Point count.
512 */
513 GoFx(kSize) GoResampledProfileMsg_Width(GoResampledProfileMsg msg);
514
515 /**
516 * Gets the x-resolution, in nanometers.
517 *
518 * @public @memberof GoResampledProfileMsg
519 * @version Introduced in firmware 4.0.10.27
520 * @param msg Message object.
521 * @return X resolution (nm).
522 */
523 GoFx(k32u) GoResampledProfileMsg_XResolution(GoResampledProfileMsg msg);
524
525 /**
526 * Gets the profile z-resolution, in nanometers.
527 *
528 * @public @memberof GoResampledProfileMsg
529 * @version Introduced in firmware 4.0.10.27
530 * @param msg Message object.
531 * @return Z resolution (nm).
532 */
533 GoFx(k32u) GoResampledProfileMsg_ZResolution(GoResampledProfileMsg msg);
534
535 /**
536 * Gets the profile x-offset, in micrometers.
537 *
538 * @public @memberof GoResampledProfileMsg
539 * @version Introduced in firmware 4.0.10.27
540 * @param msg Message object.
541 * @return X offset (um).
542 */
543 GoFx(k32s) GoResampledProfileMsg_XOffset(GoResampledProfileMsg msg);
544
545 /**
546 * Gets the profile z-offset, in micrometers.
547 *
548 * @public @memberof GoResampledProfileMsg
549 * @version Introduced in firmware 4.0.10.27
550 * @param msg Message object.
551 * @return Z offset (um).
552 */
553 GoFx(k32s) GoResampledProfileMsg_ZOffset(GoResampledProfileMsg msg);
554
555 /**
556 * Gets a pointer to a re-sampled profile array.
557 *
558 * @public @memberof GoResampledProfileMsg
559 * @version Introduced in firmware 4.0.10.27
560 * @param msg Message object.
561 * @param index Profile array index.
562 * @return Data pointer.
563 */
564 GoFx(k16s*) GoResampledProfileMsg_At(GoResampledProfileMsg msg, kSize index);
565
566 /**
567 * Gets the exposure.
568 *
569 * @public @memberof GoResampledProfileMsg
570 * @version Introduced in firmware 4.0.10.27
571 * @param msg Message object.
572 * @return Exposure in uS.
573 */
574 GoFx(k32u) GoResampledProfileMsg_Exposure(GoResampledProfileMsg msg);
575
576
577 /**
578 * @class GoProfileIntensityMsg
579 * @extends GoDataMsg
580 * @ingroup GoSdk-DataChannel
581 * @brief Represents a data message containing a set of profile intensity arrays.
582 */
583 typedef GoDataMsg GoProfileIntensityMsg;
584
585 /**
586 * Gets the profile source.
587 *
588 * @public @memberof GoProfileIntensityMsg
589 * @version Introduced in firmware 4.0.10.27
590 * @param msg Message object.
591 * @return Profile source.
592 */
593 GoFx(GoDataSource) GoProfileIntensityMsg_Source(GoProfileIntensityMsg msg);
594
595 /**
596 * Gets the count of profile intensity arrays in this message.
597 *
598 * @public @memberof GoProfileIntensityMsg
599 * @version Introduced in firmware 4.0.10.27
600 * @param msg Message object.
601 * @return Count of profile arrays.
602 */
603 GoFx(kSize) GoProfileIntensityMsg_Count(GoProfileIntensityMsg msg);
604
605 /**
606 * Gets the count of intensity values in each profile intensity array.
607 *
608 * @public @memberof GoProfileIntensityMsg
609 * @version Introduced in firmware 4.0.10.27
610 * @param msg Message object.
611 * @return Intensity count.
612 */
613 GoFx(kSize) GoProfileIntensityMsg_Width(GoProfileIntensityMsg msg);
614
615 /**
616 * Gets the x-resolution, in nanometers.
617 *
618 * @public @memberof GoProfileIntensityMsg
619 * @version Introduced in firmware 4.0.10.27
620 * @param msg Message object.
621 * @return X resolution (nm).
622 */
623 GoFx(k32u) GoProfileIntensityMsg_XResolution(GoProfileIntensityMsg msg);
624
625 /**
626 * Gets the profile x-offset, in micrometers.
627 *
628 * @public @memberof GoProfileIntensityMsg
629 * @version Introduced in firmware 4.0.10.27
630 * @param msg Message object.
631 * @return X offset (um).
632 */
633 GoFx(k32s) GoProfileIntensityMsg_XOffset(GoProfileIntensityMsg msg);
634
635 /**
636 * Gets a pointer to a profile intensity array.
637 *
638 * @public @memberof GoProfileIntensityMsg
639 * @version Introduced in firmware 4.0.10.27
640 * @param msg Message object.
641 * @param index Profile intensity array index.
642 * @return Data pointer.
643 */
644 GoFx(k8u*) GoProfileIntensityMsg_At(GoProfileIntensityMsg msg, kSize index);
645
646 /**
647 * Gets the exposure.
648 *
649 * @public @memberof GoProfileIntensityMsg
650 * @version Introduced in firmware 4.0.10.27
651 * @param msg Message object.
652 * @return Exposure in uS.
653 */
654 GoFx(k32u) GoProfileIntensityMsg_Exposure(GoProfileIntensityMsg msg);
655
656 /**
657 * Gets the source camera index.
658 *
659 * @public @memberof GoProfileMsg
660 * @version Introduced in firmware 4.1.3.106
661 * @param msg Message object.
662 * @return Camera index (0 - Front camera, 1 - Back camera).
663 */
664 GoFx(k8u) GoProfileIntensityMsg_CameraIndex(GoProfileMsg msg);
665
666 /// @endcond
667
668 /// @cond (Gocator_2x00 || Gocator_3x00)
669 /**
670 * @class GoSurfaceMsg
671 * @extends GoDataMsg
672 * @ingroup GoSdk-DataChannel
673 * @brief Represents a data message containing a surface array.
674 */
675 typedef GoDataMsg GoSurfaceMsg;
676
677 /**
678 * Gets the profile source.
679 *
680 * @public @memberof GoSurfaceMsg
681 * @version Introduced in firmware 4.0.10.27
682 * @param msg Message object.
683 * @return Profile source.
684 */
685 GoFx(GoDataSource) GoSurfaceMsg_Source(GoSurfaceMsg msg);
686
687 /**
688 * Gets the length of the surface (row count).
689 *
690 * @public @memberof GoSurfaceMsg
691 * @version Introduced in firmware 4.0.10.27
692 * @param msg Message object.
693 * @return Surface length.
694 */
695 GoFx(kSize) GoSurfaceMsg_Length(GoSurfaceMsg msg);
696
697 /**
698 * Gets the width of the surface (column count).
699 *
700 * @public @memberof GoSurfaceMsg
701 * @version Introduced in firmware 4.0.10.27
702 * @param msg Message object.
703 * @return Surface width;
704 */
705 GoFx(kSize) GoSurfaceMsg_Width(GoSurfaceMsg msg);
706
707 /**
708 * Gets the surface x-resolution, in nanometers.
709 *
710 * @public @memberof GoSurfaceMsg
711 * @version Introduced in firmware 4.0.10.27
712 * @param msg Message object.
713 * @return X resolution (nm).
714 */
715 GoFx(k32u) GoSurfaceMsg_XResolution(GoSurfaceMsg msg);
716
717 /**
718 * Gets the surface y-resolution, in nanometers.
719 *
720 * @public @memberof GoSurfaceMsg
721 * @version Introduced in firmware 4.0.10.27
722 * @param msg Message object.
723 * @return Y resolution (nm).
724 */
725 GoFx(k32u) GoSurfaceMsg_YResolution(GoSurfaceMsg msg);
726
727 /**
728 * Gets the surface z-resolution, in nanometers.
729 *
730 * @public @memberof GoSurfaceMsg
731 * @version Introduced in firmware 4.0.10.27
732 * @param msg Message object.
733 * @return Z resolution (nm).
734 */
735 GoFx(k32u) GoSurfaceMsg_ZResolution(GoSurfaceMsg msg);
736
737 /**
738 * Gets the surface x-offset, in micrometers.
739 *
740 * @public @memberof GoSurfaceMsg
741 * @version Introduced in firmware 4.0.10.27
742 * @param msg Message object.
743 * @return X offset (um).
744 */
745 GoFx(k32s) GoSurfaceMsg_XOffset(GoSurfaceMsg msg);
746
747 /**
748 * Gets the surface y-offset, in micrometers.
749 *
750 * @public @memberof GoSurfaceMsg
751 * @version Introduced in firmware 4.0.10.27
752 * @param msg Message object.
753 * @return Y offset (um).
754 */
755 GoFx(k32s) GoSurfaceMsg_YOffset(GoSurfaceMsg msg);
756
757 /**
758 * Gets the surface z-offset, in micrometers.
759 *
760 * @public @memberof GoSurfaceMsg
761 * @version Introduced in firmware 4.0.10.27
762 * @param msg Message object.
763 * @return Z offset (um).
764 */
765 GoFx(k32s) GoSurfaceMsg_ZOffset(GoSurfaceMsg msg);
766
767 /**
768 * Gets the surface z-angle, in microdegrees.
769 *
770 * @public @memberof GoSurfaceMsg
771 * @version Introduced in firmware 4.1.3.106
772 * @param msg Message object.
773 * @return Z angle (microdegrees).
774 */
775 GoFx(k32s) GoSurfaceMsg_ZAngle(GoSurfaceMsg msg);
776
777 /**
778 * Gets a pointer to a surface row.
779 *
780 * @public @memberof GoSurfaceMsg
781 * @version Introduced in firmware 4.0.10.27
782 * @param msg Message object.
783 * @param index Surface row index.
784 * @return Row pointer.
785 */
786 GoFx(k16s*) GoSurfaceMsg_RowAt(GoSurfaceMsg msg, kSize index);
787
788 /**
789 * Gets the exposure.
790 *
791 * @public @memberof GoSurfaceMsg
792 * @version Introduced in firmware 4.0.10.27
793 * @param msg Message object.
794 * @return Exposure in uS.
795 */
796 GoFx(k32u) GoSurfaceMsg_Exposure(GoSurfaceMsg msg);
797
798 /**
799 * @class GoSurfaceIntensityMsg
800 * @extends GoDataMsg
801 * @ingroup GoSdk-DataChannel
802 * @brief Represents a data message containing a surface intensity array.
803 */
804 typedef GoDataMsg GoSurfaceIntensityMsg;
805
806 /**
807 * Gets the profile source.
808 *
809 * @public @memberof GoSurfaceIntensityMsg
810 * @version Introduced in firmware 4.0.10.27
811 * @param msg Message object.
812 * @return Profile source.
813 */
814 GoFx(GoDataSource) GoSurfaceIntensityMsg_Source(GoSurfaceIntensityMsg msg);
815
816 /**
817 * Gets the length of the surface (row count).
818 *
819 * @public @memberof GoSurfaceIntensityMsg
820 * @version Introduced in firmware 4.0.10.27
821 * @param msg Message object.
822 * @return Surface length.
823 */
824 GoFx(kSize) GoSurfaceIntensityMsg_Length(GoSurfaceIntensityMsg msg);
825
826 /**
827 * Gets the width of the surface (column count).
828 *
829 * @public @memberof GoSurfaceIntensityMsg
830 * @version Introduced in firmware 4.0.10.27
831 * @param msg Message object.
832 * @return Surface width;
833 */
834 GoFx(kSize) GoSurfaceIntensityMsg_Width(GoSurfaceIntensityMsg msg);
835
836 /**
837 * Gets the surface x-resolution, in nanometers.
838 *
839 * @public @memberof GoSurfaceIntensityMsg
840 * @version Introduced in firmware 4.0.10.27
841 * @param msg Message object.
842 * @return X resolution (nm).
843 */
844 GoFx(k32u) GoSurfaceIntensityMsg_XResolution(GoSurfaceIntensityMsg msg);
845
846 /**
847 * Gets the surface y-resolution, in nanometers.
848 *
849 * @public @memberof GoSurfaceIntensityMsg
850 * @version Introduced in firmware 4.0.10.27
851 * @param msg Message object.
852 * @return Y resolution (nm).
853 */
854 GoFx(k32u) GoSurfaceIntensityMsg_YResolution(GoSurfaceIntensityMsg msg);
855
856 /**
857 * Gets the surface x-offset, in micrometers.
858 *
859 * @public @memberof GoSurfaceIntensityMsg
860 * @version Introduced in firmware 4.0.10.27
861 * @param msg Message object.
862 * @return X offset (um).
863 */
864 GoFx(k32s) GoSurfaceIntensityMsg_XOffset(GoSurfaceIntensityMsg msg);
865
866 /**
867 * Gets the surface y-offset, in micrometers.
868 *
869 * @public @memberof GoSurfaceIntensityMsg
870 * @version Introduced in firmware 4.0.10.27
871 * @param msg Message object.
872 * @return Y offset (um).
873 */
874 GoFx(k32s) GoSurfaceIntensityMsg_YOffset(GoSurfaceIntensityMsg msg);
875
876 /**
877 * Gets a pointer to a surface intensity row.
878 *
879 * @public @memberof GoSurfaceIntensityMsg
880 * @version Introduced in firmware 4.0.10.27
881 * @param msg Message object.
882 * @param index Surface intensity row index.
883 * @return Data pointer.
884 */
885 GoFx(k8u*) GoSurfaceIntensityMsg_RowAt(GoSurfaceIntensityMsg msg, kSize index);
886
887 /**
888 * Gets the exposure.
889 *
890 * @public @memberof GoSurfaceIntensityMsg
891 * @version Introduced in firmware 4.0.10.27
892 * @param msg Message object.
893 * @return Exposure in uS.
894 */
895 GoFx(k32u) GoSurfaceIntensityMsg_Exposure(GoSurfaceIntensityMsg msg);
896
897
898 /**
899 * @class GoSectionMsg
900 * @extends GoDataMsg
901 * @ingroup GoSdk-DataChannel
902 * @brief Represents a data message containing a set of section arrays.
903 */
904 typedef GoDataMsg GoSectionMsg;
905
906 /**
907 * Gets the section ID.
908 *
909 * @public @memberof GoSectionMsg
910 * @version Introduced in firmware 4.4.4.14
911 * @param msg Message object.
912 * @return Section ID.
913 */
914 GoFx(k32u) GoSectionMsg_Id(GoSectionMsg msg);
915
916 /**
917 * Gets the section source.
918 *
919 * @public @memberof GoSectionMsg
920 * @version Introduced in firmware 4.4.4.14
921 * @param msg Message object.
922 * @return Section source.
923 */
924 GoFx(GoDataSource) GoSectionMsg_Source(GoSectionMsg msg);
925
926 /**
927 * Gets the count of section arrays in this message.
928 *
929 * @public @memberof GoSectionMsg
930 * @version Introduced in firmware 4.4.4.14
931 * @param msg Message object.
932 * @return Count of section arrays.
933 */
934 GoFx(kSize) GoSectionMsg_Count(GoSectionMsg msg);
935
936 /**
937 * Gets the count of points in each section array.
938 *
939 * @public @memberof GoSectionMsg
940 * @version Introduced in firmware 4.4.4.14
941 * @param msg Message object.
942 * @return Point count.
943 */
944 GoFx(kSize) GoSectionMsg_Width(GoSectionMsg msg);
945
946 /**
947 * Gets the x-resolution, in nanometers.
948 *
949 * @public @memberof GoSectionMsg
950 * @version Introduced in firmware 4.4.4.14
951 * @param msg Message object.
952 * @return X resolution (nm).
953 */
954 GoFx(k32u) GoSectionMsg_XResolution(GoSectionMsg msg);
955
956 /**
957 * Gets the z-resolution, in nanometers.
958 *
959 * @public @memberof GoSectionMsg
960 * @version Introduced in firmware 4.4.4.14
961 * @param msg Message object.
962 * @return Z resolution (nm).
963 */
964 GoFx(k32u) GoSectionMsg_ZResolution(GoSectionMsg msg);
965
966 /**
967 * Gets the X-Pose, in micrometers.
968 *
969 * @public @memberof GoSectionMsg
970 * @version Introduced in firmware 4.4.4.14
971 * @param msg Message object.
972 * @return X Pose (um).
973 */
974 GoFx(k32s) GoSectionMsg_XPose(GoSectionMsg msg);
975
976 /**
977 * Gets the Y-Pose, in micrometers.
978 *
979 * @public @memberof GoSectionMsg
980 * @version Introduced in firmware 4.4.4.14
981 * @param msg Message object.
982 * @return Y Pose (um).
983 */
984 GoFx(k32s) GoSectionMsg_YPose(GoSectionMsg msg);
985
986 /**
987 * Gets the Pose Angle, in microdegrees.
988 *
989 * @public @memberof GoSectionMsg
990 * @version Introduced in firmware 4.4.4.14
991 * @param msg Message object.
992 * @return Angle Pose (microdegrees).
993 */
994 GoFx(k32s) GoSectionMsg_AnglePose(GoSectionMsg msg);
995
996 /**
997 * Gets the x-offset, in micrometers.
998 *
999 * @public @memberof GoSectionMsg
1000 * @version Introduced in firmware 4.4.4.14
1001 * @param msg Message object.
1002 * @return X offset (um).
1003 */
1004 GoFx(k32s) GoSectionMsg_XOffset(GoSectionMsg msg);
1005
1006 /**
1007 * Gets the z-offset, in micrometers.
1008 *
1009 * @public @memberof GoSectionMsg
1010 * @version Introduced in firmware 4.4.4.14
1011 * @param msg Message object.
1012 * @return Z offset (um).
1013 */
1014 GoFx(k32s) GoSectionMsg_ZOffset(GoSectionMsg msg);
1015
1016 /**
1017 * Gets a pointer to a section array.
1018 *
1019 * @public @memberof GoSectionMsg
1020 * @version Introduced in firmware 4.4.4.14
1021 * @param msg Message object.
1022 * @param index Section array index.
1023 * @return Data pointer.
1024 */
1025 GoFx(k16s*) GoSectionMsg_At(GoSectionMsg msg, kSize index);
1026
1027 /**
1028 * Gets the exposure.
1029 *
1030 * @public @memberof GoSectionMsg
1031 * @version Introduced in firmware 4.4.4.14
1032 * @param msg Message object.
1033 * @return Exposure in uS.
1034 */
1035 GoFx(k32u) GoSectionMsg_Exposure(GoSectionMsg msg);
1036
1037
1038 /**
1039 * @class GoSectionIntensityMsg
1040 * @extends GoDataMsg
1041 * @ingroup GoSdk-DataChannel
1042 * @brief Represents a data message containing a set of profile intensity arrays.
1043 */
1044 typedef GoDataMsg GoSectionIntensityMsg;
1045
1046 /**
1047 * Gets the section ID.
1048 *
1049 * @public @memberof GoSectionIntensityMsg
1050 * @version Introduced in firmware 4.4.4.14
1051 * @param msg Message object.
1052 * @return Section ID.
1053 */
1054 GoFx(k32u) GoSectionIntensityMsg_Id(GoSectionIntensityMsg msg);
1055
1056 /**
1057 * Gets the section source.
1058 *
1059 * @public @memberof GoSectionIntensityMsg
1060 * @version Introduced in firmware 4.4.4.14
1061 * @param msg Message object.
1062 * @return Section source.
1063 */
1064 GoFx(GoDataSource) GoSectionIntensityMsg_Source(GoSectionIntensityMsg msg);
1065
1066 /**
1067 * Gets the count of section arrays in this message.
1068 *
1069 * @public @memberof GoSectionIntensityMsg
1070 * @version Introduced in firmware 4.4.4.14
1071 * @param msg Message object.
1072 * @return Count of section arrays.
1073 */
1074 GoFx(kSize) GoSectionIntensityMsg_Count(GoSectionIntensityMsg msg);
1075
1076 /**
1077 * Gets the count of points in each section array.
1078 *
1079 * @public @memberof GoSectionIntensityMsg
1080 * @version Introduced in firmware 4.4.4.14
1081 * @param msg Message object.
1082 * @return Point count.
1083 */
1084 GoFx(kSize) GoSectionIntensityMsg_Width(GoSectionIntensityMsg msg);
1085
1086 /**
1087 * Gets the x-resolution, in nanometers.
1088 *
1089 * @public @memberof GoSectionIntensityMsg
1090 * @version Introduced in firmware 4.4.4.14
1091 * @param msg Message object.
1092 * @return X resolution (nm).
1093 */
1094 GoFx(k32u) GoSectionIntensityMsg_XResolution(GoSectionIntensityMsg msg);
1095
1096 /**
1097 * Gets the X-Pose, in micrometers.
1098 *
1099 * @public @memberof GoSectionIntensityMsg
1100 * @version Introduced in firmware 4.4.4.14
1101 * @param msg Message object.
1102 * @return X Pose (um).
1103 */
1104 GoFx(k32s) GoSectionIntensityMsg_XPose(GoSectionIntensityMsg msg);
1105
1106 /**
1107 * Gets the Y-Pose, in micrometers.
1108 *
1109 * @public @memberof GoSectionIntensityMsg
1110 * @version Introduced in firmware 4.4.4.14
1111 * @param msg Message object.
1112 * @return Y Pose (um).
1113 */
1114 GoFx(k32s) GoSectionIntensityMsg_YPose(GoSectionIntensityMsg msg);
1115
1116 /**
1117 * Gets the Pose Angle, in microdegrees.
1118 *
1119 * @public @memberof GoSectionIntensityMsg
1120 * @version Introduced in firmware 4.4.4.14
1121 * @param msg Message object.
1122 * @return Angle Pose (microdegrees).
1123 */
1124 GoFx(k32s) GoSectionIntensityMsg_AnglePose(GoSectionIntensityMsg msg);
1125
1126 /**
1127 * Gets the x-offset, in micrometers.
1128 *
1129 * @public @memberof GoSectionIntensityMsg
1130 * @version Introduced in firmware 4.4.4.14
1131 * @param msg Message object.
1132 * @return X offset (um).
1133 */
1134 GoFx(k32s) GoSectionIntensityMsg_XOffset(GoSectionIntensityMsg msg);
1135
1136 /**
1137 * Gets a pointer to a Section intensity array.
1138 *
1139 * @public @memberof GoSectionIntensityMsg
1140 * @version Introduced in firmware 4.4.4.14
1141 * @param msg Message object.
1142 * @param index Section intensity array index.
1143 * @return Data pointer.
1144 */
1145 GoFx(k8u*) GoSectionIntensityMsg_At(GoSectionIntensityMsg msg, kSize index);
1146
1147 /**
1148 * Gets the exposure.
1149 *
1150 * @public @memberof GoSectionIntensityMsg
1151 * @version Introduced in firmware 4.4.4.14
1152 * @param msg Message object.
1153 * @return Exposure in uS.
1154 */
1155 GoFx(k32u) GoSectionIntensityMsg_Exposure(GoSectionIntensityMsg msg);
1156
1157 /// @endcond
1158
1159
1160 /**
1161 * @struct GoMeasurementData
1162 * @extends kValue
1163 * @ingroup GoSdk-DataChannel
1164 * @brief Represents a measurement result.
1165 */
1166 typedef struct GoMeasurementData
1167 {
1168 k64f value; ///< Measurement value.
1169 GoDecision decision; ///< Measurement decision value.
1170 GoDecisionCode decisionCode; ///< Measurement decision code - relevant only when the value represents a failure.
1171 } GoMeasurementData;
1172
1173 /**
1174 * Gets the measurement data value.
1175 *
1176 * @public @memberof GoMeasurementData
1177 * @version Introduced in firmware 4.2.4.7
1178 * @param data Data object.
1179 * @return Measurement value.
1180 */
1181 GoFx(k64f) GoMeasurementData_Value(GoMeasurementData data);
1182
1183 /**
1184 * Gets the measurement data decision.
1185 *
1186 * @public @memberof GoMeasurementData
1187 * @version Introduced in firmware 4.2.4.7
1188 * @param data Data object.
1189 * @return Measurement decision.
1190 */
1191 GoFx(GoDecision) GoMeasurementData_Decision(GoMeasurementData data);
1192
1193 /**
1194 * Gets the measurement decision code.
1195 *
1196 * @public @memberof GoMeasurementData
1197 * @version Introduced in firmware 4.2.4.7
1198 * @param data Data object.
1199 * @return Measurement decision code.
1200 */
1201 GoFx(GoDecisionCode) GoMeasurementData_DecisionCode(GoMeasurementData data);
1202
1203
1204 /**
1205 * @class GoMeasurementMsg
1206 * @extends GoDataMsg
1207 * @ingroup GoSdk-DataChannel
1208 * @brief Represents a message containing a set of GoMeasurementData.
1209 */
1210 typedef GoDataMsg GoMeasurementMsg;
1211
1212 /**
1213 * Gets the measurement identifier.
1214 *
1215 * @public @memberof GoMeasurementMsg
1216 * @version Introduced in firmware 4.0.10.27
1217 * @param msg Message object.
1218 * @return Measurement identifier.
1219 */
1220 GoFx(k16u) GoMeasurementMsg_Id(GoMeasurementMsg msg);
1221
1222 /**
1223 * Count of measurements in this message.
1224 *
1225 * @public @memberof GoMeasurementMsg
1226 * @version Introduced in firmware 4.0.10.27
1227 * @param msg Message object.
1228 * @return Count of measurements.
1229 */
1230 GoFx(kSize) GoMeasurementMsg_Count(GoMeasurementMsg msg);
1231
1232 /**
1233 * Gets the measurement at the specified index.
1234 *
1235 * @public @memberof GoMeasurementMsg
1236 * @version Introduced in firmware 4.0.10.27
1237 * @param msg Message object.
1238 * @param index Measurement index.
1239 * @return Measurement pointer.
1240 */
1241 GoFx(GoMeasurementData*) GoMeasurementMsg_At(GoMeasurementMsg msg, kSize index);
1242
1243
1244 /**
1245 * @class GoAlignMsg
1246 * @extends GoDataMsg
1247 * @ingroup GoSdk-DataChannel
1248 * @brief Represents a message containing an alignment result.
1249 */
1250 typedef GoDataMsg GoAlignMsg;
1251
1252 /**
1253 * Gets the alignment result.
1254 *
1255 * @public @memberof GoAlignMsg
1256 * @version Introduced in firmware 4.0.10.27
1257 * @param msg Message object.
1258 * @return Alignment result.
1259 */
1260 GoFx(kStatus) GoAlignMsg_Status(GoAlignMsg msg);
1261
1262 /**
1263 * @class GoExposureCalMsg
1264 * @extends GoDataMsg
1265 * @ingroup GoSdk-DataChannel
1266 * @brief Represents a message containing exposure calibration results.
1267 */
1268 typedef GoDataMsg GoExposureCalMsg;
1269
1270 /**
1271 * Gets the exposure calibration result.
1272 *
1273 * @public @memberof GoExposureCalMsg
1274 * @version Introduced in firmware 4.0.10.27
1275 * @param msg Message object.
1276 * @return Exposure calibration result.
1277 */
1278 GoFx(kStatus) GoExposureCalMsg_Status(GoExposureCalMsg msg);
1279
1280 /**
1281 * Gets the calibrated exposure.
1282 *
1283 * @public @memberof GoExposureCalMsg
1284 * @version Introduced in firmware 4.0.10.27
1285 * @param msg Message object.
1286 * @return Calibrated exposure value in uS if the result is kOK.
1287 */
1288 GoFx(k64f) GoExposureCalMsg_Exposure(GoExposureCalMsg msg);
1289
1290
1291 /**
1292 * @class GoEdgeMatchMsg
1293 * @extends GoDataMsg
1294 * @ingroup GoSdk-DataChannel
1295 * @brief Represents a message containing edge based part matching results.
1296 */
1297 typedef GoDataMsg GoEdgeMatchMsg;
1298
1299 /**
1300 * Gets the edge match decision.
1301 *
1302 * @public @memberof GoEdgeMatchMsg
1303 * @version Introduced in firmware 4.2.4.7
1304 * @param msg Message object.
1305 * @return Edge match decision.
1306 */
1307 GoFx(k8u) GoEdgeMatchMsg_Decision(GoEdgeMatchMsg msg);
1308
1309 /**
1310 * Gets the edge match X offset.
1311 *
1312 * @public @memberof GoEdgeMatchMsg
1313 * @version Introduced in firmware 4.2.4.7
1314 * @param msg Message object.
1315 * @return Edge match X offset.
1316 */
1317 GoFx(k64f) GoEdgeMatchMsg_XOffset(GoEdgeMatchMsg msg);
1318
1319 /**
1320 * Gets the edge match Y offset.
1321 *
1322 * @public @memberof GoEdgeMatchMsg
1323 * @version Introduced in firmware 4.2.4.7
1324 * @param msg Message object.
1325 * @return Edge match Y offset.
1326 */
1327 GoFx(k64f) GoEdgeMatchMsg_YOffset(GoEdgeMatchMsg msg);
1328
1329 /**
1330 * Gets the edge match Z angle.
1331 *
1332 * @public @memberof GoEdgeMatchMsg
1333 * @version Introduced in firmware 4.2.4.7
1334 * @param msg Message object.
1335 * @return Edge match Z angle.
1336 */
1337 GoFx(k64f) GoEdgeMatchMsg_ZAngle(GoEdgeMatchMsg msg);
1338
1339 /**
1340 * Gets the edge match quality value.
1341 *
1342 * @public @memberof GoEdgeMatchMsg
1343 * @version Introduced in firmware 4.2.4.7
1344 * @param msg Message object.
1345 * @return Edge match quality value.
1346 */
1347 GoFx(k64f) GoEdgeMatchMsg_QualityValue(GoEdgeMatchMsg msg);
1348
1349 /**
1350 * Gets the edge match quality decision.
1351 *
1352 * @public @memberof GoEdgeMatchMsg
1353 * @version Introduced in firmware 4.2.4.7
1354 * @param msg Message object.
1355 * @return Edge match quality decision.
1356 */
1357 GoFx(k8u) GoEdgeMatchMsg_QualityDecision(GoEdgeMatchMsg msg);
1358
1359
1360 /**
1361 * @class GoEllipseMatchMsg
1362 * @extends GoDataMsg
1363 * @ingroup GoSdk-DataChannel
1364 * @brief Represents a message containing ellipse based part matching results.
1365 */
1366 typedef GoDataMsg GoEllipseMatchMsg;
1367
1368 /**
1369 * Gets the ellipse match decision.
1370 *
1371 * @public @memberof GoEllipseMatchMsg
1372 * @version Introduced in firmware 4.2.4.7
1373 * @param msg Message object.
1374 * @return Ellipse match quality decision.
1375 */
1376 GoFx(k8u) GoEllipseMatchMsg_Decision(GoEllipseMatchMsg msg);
1377
1378 /**
1379 * Gets the ellipse match X offset.
1380 *
1381 * @public @memberof GoEllipseMatchMsg
1382 * @version Introduced in firmware 4.2.4.7
1383 * @param msg Message object.
1384 * @return Ellipse match X offset.
1385 */
1386 GoFx(k64f) GoEllipseMatchMsg_XOffset(GoEllipseMatchMsg msg);
1387
1388 /**
1389 * Gets the ellipse match Y offset.
1390 *
1391 * @public @memberof GoEllipseMatchMsg
1392 * @version Introduced in firmware 4.2.4.7
1393 * @param msg Message object.
1394 * @return Ellipse match Y offset.
1395 */
1396 GoFx(k64f) GoEllipseMatchMsg_YOffset(GoEllipseMatchMsg msg);
1397
1398 /**
1399 * Gets the ellipse match Z angle.
1400 *
1401 * @public @memberof GoEllipseMatchMsg
1402 * @version Introduced in firmware 4.2.4.7
1403 * @param msg Message object.
1404 * @return Ellipse match Z angle.
1405 */
1406 GoFx(k64f) GoEllipseMatchMsg_ZAngle(GoEllipseMatchMsg msg);
1407
1408 /**
1409 * Gets the ellipse match minor value.
1410 *
1411 * @public @memberof GoEllipseMatchMsg
1412 * @version Introduced in firmware 4.2.4.7
1413 * @param msg Message object.
1414 * @return Ellipse match minor value.
1415 */
1416 GoFx(k64f) GoEllipseMatchMsg_MinorValue(GoEllipseMatchMsg msg);
1417
1418 /**
1419 * Gets the ellipse match minor decision.
1420 *
1421 * @public @memberof GoEllipseMatchMsg
1422 * @version Introduced in firmware 4.2.4.7
1423 * @param msg Message object.
1424 * @return Ellipse match minor decision.
1425 */
1426 GoFx(k8u) GoEllipseMatchMsg_MinorDecision(GoEllipseMatchMsg msg);
1427
1428 /**
1429 * Gets the ellipse match major value.
1430 *
1431 * @public @memberof GoEllipseMatchMsg
1432 * @version Introduced in firmware 4.2.4.7
1433 * @param msg Message object.
1434 * @return Ellipse match major value.
1435 */
1436 GoFx(k64f) GoEllipseMatchMsg_MajorValue(GoEllipseMatchMsg msg);
1437
1438 /**
1439 * Gets the ellipse match major decision.
1440 *
1441 * @public @memberof GoEllipseMatchMsg
1442 * @version Introduced in firmware 4.2.4.7
1443 * @param msg Message object.
1444 * @return Ellipse match major decision.
1445 */
1446 GoFx(k8u) GoEllipseMatchMsg_MajorDecision(GoEllipseMatchMsg msg);
1447
1448
1449 /**
1450 * @class GoBoundingBoxMatchMsg
1451 * @extends GoDataMsg
1452 * @ingroup GoSdk-DataChannel
1453 * @brief Represents a message containing bounding box based part matching results.
1454 */
1455 typedef GoDataMsg GoBoundingBoxMatchMsg;
1456
1457 /**
1458 * Gets the bounding box match major value.
1459 *
1460 * @public @memberof GoBoundingBoxMatchMsg
1461 * @version Introduced in firmware 4.2.4.7
1462 * @param msg Message object.
1463 * @return Bounding box match major value.
1464 */
1465 GoFx(k8u) GoBoundingBoxMatchMsg_Decision(GoBoundingBoxMatchMsg msg);
1466
1467 /**
1468 * Gets the bounding box match X offset.
1469 *
1470 * @public @memberof GoBoundingBoxMatchMsg
1471 * @version Introduced in firmware 4.2.4.7
1472 * @param msg Message object.
1473 * @return Bounding box match X offset.
1474 */
1475 GoFx(k64f) GoBoundingBoxMatchMsg_XOffset(GoBoundingBoxMatchMsg msg);
1476
1477 /**
1478 * Gets the bounding box match Y offset.
1479 *
1480 * @public @memberof GoBoundingBoxMatchMsg
1481 * @version Introduced in firmware 4.2.4.7
1482 * @param msg Message object.
1483 * @return Bounding box match Y offset.
1484 */
1485 GoFx(k64f) GoBoundingBoxMatchMsg_YOffset(GoBoundingBoxMatchMsg msg);
1486
1487 /**
1488 * Gets the bounding box match Z angle.
1489 *
1490 * @public @memberof GoBoundingBoxMatchMsg
1491 * @version Introduced in firmware 4.2.4.7
1492 * @param msg Message object.
1493 * @return Bounding box match Z angle.
1494 */
1495 GoFx(k64f) GoBoundingBoxMatchMsg_ZAngle(GoBoundingBoxMatchMsg msg);
1496
1497 /**
1498 * Gets the bounding box match length value.
1499 *
1500 * @public @memberof GoBoundingBoxMatchMsg
1501 * @version Introduced in firmware 4.2.4.7
1502 * @param msg Message object.
1503 * @return Bounding box match length value.
1504 */
1505 GoFx(k64f) GoBoundingBoxMatchMsg_LengthValue(GoBoundingBoxMatchMsg msg);
1506
1507 /**
1508 * Gets the bounding box match length decision.
1509 *
1510 * @public @memberof GoBoundingBoxMatchMsg
1511 * @version Introduced in firmware 4.2.4.7
1512 * @param msg Message object.
1513 * @return Bounding box match length decision.
1514 */
1515 GoFx(k8u) GoBoundingBoxMatchMsg_LengthDecision(GoBoundingBoxMatchMsg msg);
1516
1517 /**
1518 * Gets the bounding box match width value.
1519 *
1520 * @public @memberof GoBoundingBoxMatchMsg
1521 * @version Introduced in firmware 4.2.4.7
1522 * @param msg Message object.
1523 * @return Bounding box match width value.
1524 */
1525 GoFx(k64f) GoBoundingBoxMatchMsg_WidthValue(GoBoundingBoxMatchMsg msg);
1526
1527 /**
1528 * Gets the bounding box match width decision.
1529 *
1530 * @public @memberof GoBoundingBoxMatchMsg
1531 * @version Introduced in firmware 4.2.4.7
1532 * @param msg Message object.
1533 * @return Bounding box match width decision.
1534 */
1535 GoFx(k8u) GoBoundingBoxMatchMsg_WidthDecision(GoBoundingBoxMatchMsg msg);
1536
1537
1538 /**
1539 * @class GoEventMsg
1540 * @extends GoDataMsg
1541 * @ingroup GoSdk-DataChannel
1542 * @brief Represents a message containing bounding box based part matching results.
1543 */
1544 typedef GoDataMsg GoEventMsg;
1545
1546 /**
1547 * Gets the event type.
1548 *
1549 * @public @memberof GoEventMsg
1550 * @version Introduced in firmware 4.5.3.57
1551 * @param msg Message object.
1552 * @return Event type.
1553 */
1554 GoFx(GoEventType) GoEventMsg_Type(GoEventMsg msg);
1555
1556
1557 /**
1558 * @class GoTracheidMsg
1559 * @extends GoDataMsg
1560 * @ingroup GoSdk-DataChannel
1561 * @brief Represents a data message containing a set of tracheid data.
1562 */
1563 typedef GoDataMsg GoTracheidMsg;
1564
1565 /**
1566 * @struct GoTracheidEllipse
1567 * @extends kValue
1568 * @ingroup GoSdk-DataChannel
1569 * @brief Represents a tracheid ellipse.
1570 */
1571 typedef struct GoTracheidEllipse
1572 {
1573 k64f area; ///< Ellipse area
1574 k64f angle; ///< Ellipse angle
1575 k64f scatter; ///< Ellipse scatter
1576 k64f minor; ///< Ellipse minor
1577 k64f major; ///< Ellipse major
1578
1579 } GoTracheidEllipse;
1580
1581 /**
1582 * Gets the tracheid source.
1583 *
1584 * @public @memberof GoTracheidMsg
1585 * @version Introduced in firmware 4.5.3.57
1586 * @param msg Message object.
1587 * @return Tracheid source.
1588 */
1589 GoFx(GoDataSource) GoTracheidMsg_Source(GoTracheidMsg msg);
1590
1591 /**
1592 * Gets the count of tracheid arrays in this message.
1593 *
1594 * @public @memberof GoTracheidMsg
1595 * @version Introduced in firmware 4.6.4.66
1596 * @param msg Message object.
1597 * @return Count of tracheid arrays.
1598 */
1599 GoFx(kSize) GoTracheidMsg_Count(GoTracheidMsg msg);
1600
1601 /**
1602 * Gets the count of ellipses in each tracheid array.
1603 *
1604 * @public @memberof GoTracheidMsg
1605 * @version Introduced in firmware 4.6.4.66
1606 * @param msg Message object.
1607 * @return Ellipse count.
1608 */
1609 GoFx(kSize) GoTracheidMsg_Width(GoTracheidMsg msg);
1610
1611 /**
1612 * Gets the tracheid camera index.
1613 *
1614 * @public @memberof GoTracheidMsg
1615 * @version Introduced in firmware 4.5.3.57
1616 * @param msg Message object.
1617 * @return Tracheid camera index.
1618 */
1619 GoFx(k8u) GoTracheidMsg_CameraIndex(GoTracheidMsg msg);
1620
1621 /**
1622 * Gets a pointer to a tracheid ellipse array.
1623 *
1624 * @public @memberof GoTracheidMsg
1625 * @version Introduced in firmware 4.6.4.66
1626 * @param msg Message object.
1627 * @param index Tracheid ellipse array index.
1628 * @return Tracheid ellipse array.
1629 */
1630 GoFx(GoTracheidEllipse*) GoTracheidMsg_At(GoTracheidMsg msg, kSize index);
1631
1632 /**
1633 * @class GoPointFeatureMsg
1634 * @extends GoDataMsg
1635 * @ingroup GoSdk-DataChannel
1636 * @brief Represents a message containing Point Feature data.
1637 */
1638 typedef GoDataMsg GoPointFeatureMsg;
1639
1640 /**
1641 * Gets the point feature identifier.
1642 *
1643 * @public @memberof GoPointFeatureMsg
1644 * @version Introduced in firmware 4.6.3.43
1645 * @param msg Message object.
1646 * @return Point Feature identifier.
1647 */
1648 GoFx(k16u) GoPointFeatureMsg_Id(GoPointFeatureMsg msg);
1649
1650 /**
1651 * The point data in this message.
1652 *
1653 * @public @memberof GoPointFeatureMsg
1654 * @version Introduced in firmware 4.6.3.43
1655 * @param msg Message object.
1656 * @return Corrdinates of point feature in nanometers.
1657 */
1658 GoFx(kPoint3d64f) GoPointFeatureMsg_Position(GoPointFeatureMsg msg);
1659
1660 /**
1661 * @class GoLineFeatureMsg
1662 * @extends GoDataMsg
1663 * @ingroup GoSdk-DataChannel
1664 * @brief Represents a message containing Linear Feature data.
1665 */
1666 typedef GoDataMsg GoLineFeatureMsg;
1667
1668 /**
1669 * Gets the linear feature identifier.
1670 *
1671 * @public @memberof GoLineFeatureMsg
1672 * @version Introduced in firmware 4.6.3.43
1673 * @param msg Message object.
1674 * @return Line Feature identifier.
1675 */
1676 GoFx(k16u) GoLineFeatureMsg_Id(GoLineFeatureMsg msg);
1677
1678 /**
1679 * Gets a point on the linear feature.
1680 *
1681 * @public @memberof GoLineFeatureMsg
1682 * @version Introduced in firmware 4.6.3.43
1683 * @param msg Message object.
1684 * @return Position of the linear feature in nanometers.
1685 */
1686 GoFx(kPoint3d64f) GoLineFeatureMsg_Position(GoLineFeatureMsg msg);
1687
1688 /**
1689 * The direction vector of the linear feature.
1690 *
1691 * @public @memberof GoLineFeatureMsg
1692 * @version Introduced in firmware 4.6.3.43
1693 * @param msg Message object.
1694 * @return Direction of the linear feature.
1695 */
1696 GoFx(kPoint3d64f) GoLineFeatureMsg_Direction(GoLineFeatureMsg msg);
1697
1698 /**
1699 * @class GoPlaneFeatureMsg
1700 * @extends GoDataMsg
1701 * @ingroup GoSdk-DataChannel
1702 * @brief Represents a message containing Planear Feature data.
1703 */
1704 typedef GoDataMsg GoPlaneFeatureMsg;
1705
1706 /**
1707 * Gets the planear feature identifier.
1708 *
1709 * @public @memberof GoPlaneFeatureMsg
1710 * @version Introduced in firmware 4.6.3.43
1711 * @param msg Message object.
1712 * @return Plane Feature identifier.
1713 */
1714 GoFx(k16u) GoPlaneFeatureMsg_Id(GoPlaneFeatureMsg msg);
1715
1716 /**
1717 * Gets the normal vector of the planear feature.
1718 *
1719 * @public @memberof GoPlaneFeatureMsg
1720 * @version Introduced in firmware 4.6.3.43
1721 * @param msg Message object.
1722 * @return The vector normal to the plane.
1723 */
1724 GoFx(kPoint3d64f) GoPlaneFeatureMsg_Normal(GoPlaneFeatureMsg msg);
1725
1726 /**
1727 * Gets shortest distance from the origin to the plane. Is parallel to the normal vector.
1728 *
1729 * @public @memberof GoPlaneFeatureMsg
1730 * @version Introduced in firmware 4.6.3.43
1731 * @param msg Message object.
1732 * @return Shortest distance to the origin in nanometers.
1733 */
1734 GoFx(k64f) GoPlaneFeatureMsg_DistanceToOrigin(GoPlaneFeatureMsg msg);
1735
1736 /**
1737 * @class GoCircleFeatureMsg
1738 * @extends GoDataMsg
1739 * @ingroup GoSdk-DataChannel
1740 * @brief Represents a message containing circular feature data.
1741 */
1742 typedef GoDataMsg GoCircleFeatureMsg;
1743
1744 /**
1745 * Gets the circular feature identifier.
1746 *
1747 * @public @memberof GoCircleFeatureMsg
1748 * @version Introduced in firmware 4.6.3.43
1749 * @param msg Message object.
1750 * @return Circle Feature identifier.
1751 */
1752 GoFx(k16u) GoCircleFeatureMsg_Id(GoCircleFeatureMsg msg);
1753
1754 /**
1755 * Gets the position of the center of the circular feature.
1756 *
1757 * @public @memberof GoCircleFeatureMsg
1758 * @version Introduced in firmware 4.6.3.43
1759 * @param msg Message object.
1760 * @return Position of the circular feature in nanometers
1761 */
1762 GoFx(kPoint3d64f) GoCircleFeatureMsg_Position(GoCircleFeatureMsg msg);
1763
1764 /**
1765 * Gets the normal vector of the circular feature.
1766 *
1767 * @public @memberof GoCircleFeatureMsg
1768 * @version Introduced in firmware 4.6.3.43
1769 * @param msg Message object.
1770 * @return The vector normal to the plane.
1771 */
1772 GoFx(kPoint3d64f) GoCircleFeatureMsg_Normal(GoCircleFeatureMsg msg);
1773
1774 /**
1775 * Gets the radius of the circular feature.
1776 *
1777 * @public @memberof GoCircleFeatureMsg
1778 * @version Introduced in firmware 4.6.3.43
1779 * @param msg Message object.
1780 * @return Radius of the circle in nanometers.
1781 */
1782 GoFx(k64f) GoCircleFeatureMsg_Radius(GoCircleFeatureMsg msg);
1783
1784 kEndHeader()
1785 #include <GoSdk/Messages/GoDataTypes.x.h>
1786
1787 #endif
GoStamp
Represents an acquisition stamp.
Definition: GoDataTypes.h:40
k32u
GoStampMsg::GoStampMsg_At
GoStamp * GoStampMsg_At(GoStampMsg msg, kSize index)
Gets the stamp at the specified index.
GoTracheidEllipse::scatter
k64f scatter
Ellipse scatter.
Definition: GoDataTypes.h:1575
GoSectionIntensityMsg::GoSectionIntensityMsg_Count
kSize GoSectionIntensityMsg_Count(GoSectionIntensityMsg msg)
Gets the count of section arrays in this message.
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_Exposure
k32u GoSurfaceIntensityMsg_Exposure(GoSurfaceIntensityMsg msg)
Gets the exposure.
GoTracheidMsg::GoTracheidMsg_CameraIndex
k8u GoTracheidMsg_CameraIndex(GoTracheidMsg msg)
Gets the tracheid camera index.
GoSectionMsg::GoSectionMsg_ZOffset
k32s GoSectionMsg_ZOffset(GoSectionMsg msg)
Gets the z-offset, in micrometers.
GoProfileIntensityMsg::GoProfileIntensityMsg_Count
kSize GoProfileIntensityMsg_Count(GoProfileIntensityMsg msg)
Gets the count of profile intensity arrays in this message.
GoSurfaceMsg::GoSurfaceMsg_ZOffset
k32s GoSurfaceMsg_ZOffset(GoSurfaceMsg msg)
Gets the surface z-offset, in micrometers.
GoMeasurementData::decision
GoDecision decision
Measurement decision value.
Definition: GoDataTypes.h:1169
GoVideoMsg::GoVideoMsg_Width
kSize GoVideoMsg_Width(GoVideoMsg msg)
Gets the image width, in pixels.
GoVideoMsg::GoVideoMsg_IsFlippedX
kBool GoVideoMsg_IsFlippedX(GoVideoMsg msg)
Indicates whether the video message data requires horizontal flipping to match up with profile data...
GoSurfaceMsg::GoSurfaceMsg_Length
kSize GoSurfaceMsg_Length(GoSurfaceMsg msg)
Gets the length of the surface (row count).
GoVideoMsg::GoVideoMsg_Cfa
kCfa GoVideoMsg_Cfa(GoVideoMsg msg)
Gets the image color filter array.
GoResampledProfileMsg::GoResampledProfileMsg_ZOffset
k32s GoResampledProfileMsg_ZOffset(GoResampledProfileMsg msg)
Gets the profile z-offset, in micrometers.
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_YOffset
k64f GoBoundingBoxMatchMsg_YOffset(GoBoundingBoxMatchMsg msg)
Gets the bounding box match Y offset.
GoResampledProfileMsg::GoResampledProfileMsg_XResolution
k32u GoResampledProfileMsg_XResolution(GoResampledProfileMsg msg)
Gets the x-resolution, in nanometers.
kPoint16s
GoProfileMsg::GoProfileMsg_CameraIndex
k8u GoProfileMsg_CameraIndex(GoProfileMsg msg)
Gets the source camera index.
GoEllipseMatchMsg::GoEllipseMatchMsg_MajorDecision
k8u GoEllipseMatchMsg_MajorDecision(GoEllipseMatchMsg msg)
Gets the ellipse match major decision.
k64u
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_ZAngle
k64f GoBoundingBoxMatchMsg_ZAngle(GoBoundingBoxMatchMsg msg)
Gets the bounding box match Z angle.
GoProfileMsg::GoProfileIntensityMsg_CameraIndex
k8u GoProfileIntensityMsg_CameraIndex(GoProfileMsg msg)
Gets the source camera index.
GoProfileIntensityMsg::GoProfileIntensityMsg_XOffset
k32s GoProfileIntensityMsg_XOffset(GoProfileIntensityMsg msg)
Gets the profile x-offset, in micrometers.
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_WidthDecision
k8u GoBoundingBoxMatchMsg_WidthDecision(GoBoundingBoxMatchMsg msg)
Gets the bounding box match width decision.
GoProfileMsg::GoProfileMsg_ZOffset
k32s GoProfileMsg_ZOffset(GoProfileMsg msg)
Gets the profile z-offset, in micrometers.
GoPlaneFeatureMsg::GoPlaneFeatureMsg_Normal
kPoint3d64f GoPlaneFeatureMsg_Normal(GoPlaneFeatureMsg msg)
Gets the normal vector of the planear feature.
GoSectionIntensityMsg::GoSectionIntensityMsg_Width
kSize GoSectionIntensityMsg_Width(GoSectionIntensityMsg msg)
Gets the count of points in each section array.
GoLineFeatureMsg::GoLineFeatureMsg_Direction
kPoint3d64f GoLineFeatureMsg_Direction(GoLineFeatureMsg msg)
The direction vector of the linear feature.
GoSectionIntensityMsg::GoSectionIntensityMsg_YPose
k32s GoSectionIntensityMsg_YPose(GoSectionIntensityMsg msg)
Gets the Y-Pose, in micrometers.
GoProfileMsg::GoProfileMsg_Exposure
k32u GoProfileMsg_Exposure(GoProfileMsg msg)
Gets the exposure.
GoVideoMsg
Represents a data message containing a video image.
GoTracheidEllipse::area
k64f area
Ellipse area.
Definition: GoDataTypes.h:1573
GoResampledProfileMsg::GoResampledProfileMsg_Exposure
k32u GoResampledProfileMsg_Exposure(GoResampledProfileMsg msg)
Gets the exposure.
GoProfileMsg::GoProfileMsg_At
kPoint16s * GoProfileMsg_At(GoProfileMsg msg, kSize index)
Gets a pointer to a profile array.
GoCircleFeatureMsg::GoCircleFeatureMsg_Id
k16u GoCircleFeatureMsg_Id(GoCircleFeatureMsg msg)
Gets the circular feature identifier.
GoEdgeMatchMsg
Represents a message containing edge based part matching results.
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_YOffset
k32s GoSurfaceIntensityMsg_YOffset(GoSurfaceIntensityMsg msg)
Gets the surface y-offset, in micrometers.
GoSectionMsg::GoSectionMsg_ZResolution
k32u GoSectionMsg_ZResolution(GoSectionMsg msg)
Gets the z-resolution, in nanometers.
GoSectionIntensityMsg
Represents a data message containing a set of profile intensity arrays.
GoCircleFeatureMsg::GoCircleFeatureMsg_Normal
kPoint3d64f GoCircleFeatureMsg_Normal(GoCircleFeatureMsg msg)
Gets the normal vector of the circular feature.
GoDecisionCode
Represents the possible measurement decision codes.
GoEllipseMatchMsg::GoEllipseMatchMsg_Decision
k8u GoEllipseMatchMsg_Decision(GoEllipseMatchMsg msg)
Gets the ellipse match decision.
GoProfileIntensityMsg::GoProfileIntensityMsg_Exposure
k32u GoProfileIntensityMsg_Exposure(GoProfileIntensityMsg msg)
Gets the exposure.
GoSectionMsg::GoSectionMsg_YPose
k32s GoSectionMsg_YPose(GoSectionMsg msg)
Gets the Y-Pose, in micrometers.
k16u
GoSectionMsg::GoSectionMsg_Count
kSize GoSectionMsg_Count(GoSectionMsg msg)
Gets the count of section arrays in this message.
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_Width
kSize GoSurfaceIntensityMsg_Width(GoSurfaceIntensityMsg msg)
Gets the width of the surface (column count).
GoResampledProfileMsg
Represents a data message containing a set of re-sampled profile arrays.
kSize
GoEventMsg::GoEventMsg_Type
GoEventType GoEventMsg_Type(GoEventMsg msg)
Gets the event type.
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_Length
kSize GoSurfaceIntensityMsg_Length(GoSurfaceIntensityMsg msg)
Gets the length of the surface (row count).
GoSurfaceMsg::GoSurfaceMsg_ZResolution
k32u GoSurfaceMsg_ZResolution(GoSurfaceMsg msg)
Gets the surface z-resolution, in nanometers.
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_Decision
k8u GoBoundingBoxMatchMsg_Decision(GoBoundingBoxMatchMsg msg)
Gets the bounding box match major value.
GoTracheidEllipse::minor
k64f minor
Ellipse minor.
Definition: GoDataTypes.h:1576
GoProfileMsg::GoProfileMsg_Width
kSize GoProfileMsg_Width(GoProfileMsg msg)
Gets the count of ranges in each profile array.
GoDataSource
Represents a data source.
k8u
GoCircleFeatureMsg::GoCircleFeatureMsg_Position
kPoint3d64f GoCircleFeatureMsg_Position(GoCircleFeatureMsg msg)
Gets the position of the center of the circular feature.
GoSectionMsg::GoSectionMsg_Width
kSize GoSectionMsg_Width(GoSectionMsg msg)
Gets the count of points in each section array.
GoVideoMsg::GoVideoMsg_Source
GoDataSource GoVideoMsg_Source(GoVideoMsg msg)
Gets the video source.
GoSectionMsg::GoSectionMsg_XPose
k32s GoSectionMsg_XPose(GoSectionMsg msg)
Gets the X-Pose, in micrometers.
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.
GoProfileIntensityMsg::GoProfileIntensityMsg_XResolution
k32u GoProfileIntensityMsg_XResolution(GoProfileIntensityMsg msg)
Gets the x-resolution, in nanometers.
GoResampledProfileMsg::GoResampledProfileMsg_Count
kSize GoResampledProfileMsg_Count(GoResampledProfileMsg msg)
Gets the count of re-sampled profile arrays in this message.
GoEllipseMatchMsg::GoEllipseMatchMsg_XOffset
k64f GoEllipseMatchMsg_XOffset(GoEllipseMatchMsg msg)
Gets the ellipse match X offset.
GoPlaneFeatureMsg
Represents a message containing Planear Feature data.
GoTracheidMsg::GoTracheidMsg_At
GoTracheidEllipse * GoTracheidMsg_At(GoTracheidMsg msg, kSize index)
Gets a pointer to a tracheid ellipse array.
GoVideoMsg::GoVideoMsg_CameraIndex
kSize GoVideoMsg_CameraIndex(GoVideoMsg msg)
Gets the camera index that the video data originates from.
GoMeasurementData::GoMeasurementData_Decision
GoDecision GoMeasurementData_Decision(GoMeasurementData data)
Gets the measurement data decision.
GoSectionMsg::GoSectionMsg_Source
GoDataSource GoSectionMsg_Source(GoSectionMsg msg)
Gets the section source.
GoProfileMsg::GoProfileMsg_ZResolution
k32u GoProfileMsg_ZResolution(GoProfileMsg msg)
Gets the profile z-resolution, in nanometers.
GoExposureCalMsg::GoExposureCalMsg_Exposure
k64f GoExposureCalMsg_Exposure(GoExposureCalMsg msg)
Gets the calibrated exposure.
GoStamp::timestamp
k64u timestamp
Timestamp in internal units approximating microseconds where the true time in us = timestamp value / ...
Definition: GoDataTypes.h:43
GoVideoMsg::GoVideoMsg_RowAt
void * GoVideoMsg_RowAt(GoVideoMsg msg, kSize rowIndex)
Gets a pointer to a row within the image.
GoVideoMsg::GoVideoMsg_PixelSize
kSize GoVideoMsg_PixelSize(GoVideoMsg msg)
Gets the image pixel size, in bytes.
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_LengthDecision
k8u GoBoundingBoxMatchMsg_LengthDecision(GoBoundingBoxMatchMsg msg)
Gets the bounding box match length decision.
GoStampMsg
Represents a message containing a set of acquisition stamps.
GoSectionIntensityMsg::GoSectionIntensityMsg_AnglePose
k32s GoSectionIntensityMsg_AnglePose(GoSectionIntensityMsg msg)
Gets the Pose Angle, in microdegrees.
GoBoundingBoxMatchMsg
Represents a message containing bounding box based part matching results.
GoStampMsg::GoStampMsg_Count
kSize GoStampMsg_Count(GoStampMsg msg)
Returns the number of stamps contained in this message.
GoSurfaceMsg
Represents a data message containing a surface array.
GoSurfaceMsg::GoSurfaceMsg_XResolution
k32u GoSurfaceMsg_XResolution(GoSurfaceMsg msg)
Gets the surface x-resolution, in nanometers.
GoTracheidEllipse::major
k64f major
Ellipse major.
Definition: GoDataTypes.h:1577
GoVideoMsg::GoVideoMsg_Exposure
k32u GoVideoMsg_Exposure(GoVideoMsg msg)
Gets the exposure.
GoVideoMsg::GoVideoMsg_Height
kSize GoVideoMsg_Height(GoVideoMsg msg)
Gets the image height, in pixels.
GoVideoMsg::GoVideoMsg_PixelFormat
kPixelFormat GoVideoMsg_PixelFormat(GoVideoMsg msg)
Gets the pixel format descriptor.
GoProfileMsg::GoProfileMsg_XResolution
k32u GoProfileMsg_XResolution(GoProfileMsg msg)
Gets the profile x-resolution, in nanometers.
kPixelFormat
GoEllipseMatchMsg::GoEllipseMatchMsg_MajorValue
k64f GoEllipseMatchMsg_MajorValue(GoEllipseMatchMsg msg)
Gets the ellipse match major value.
GoSectionIntensityMsg::GoSectionIntensityMsg_Id
k32u GoSectionIntensityMsg_Id(GoSectionIntensityMsg msg)
Gets the section ID.
GoStamp::encoderAtZ
k64s encoderAtZ
Encoder value latched at z-index mark (encoder ticks).
Definition: GoDataTypes.h:45
GoSurfaceMsg::GoSurfaceMsg_Exposure
k32u GoSurfaceMsg_Exposure(GoSurfaceMsg msg)
Gets the exposure.
GoTracheidMsg::GoTracheidMsg_Count
kSize GoTracheidMsg_Count(GoTracheidMsg msg)
Gets the count of tracheid arrays in this message.
GoStamp::status
k64u status
Bit mask containing frame information:
Definition: GoDataTypes.h:46
GoLineFeatureMsg::GoLineFeatureMsg_Id
k16u GoLineFeatureMsg_Id(GoLineFeatureMsg msg)
Gets the linear feature identifier.
GoCircleFeatureMsg::GoCircleFeatureMsg_Radius
k64f GoCircleFeatureMsg_Radius(GoCircleFeatureMsg msg)
Gets the radius of the circular feature.
GoSdkDef.h
Essential SDK declarations.
GoProfileIntensityMsg::GoProfileIntensityMsg_Width
kSize GoProfileIntensityMsg_Width(GoProfileIntensityMsg msg)
Gets the count of intensity values in each profile intensity array.
GoPlaneFeatureMsg::GoPlaneFeatureMsg_DistanceToOrigin
k64f GoPlaneFeatureMsg_DistanceToOrigin(GoPlaneFeatureMsg msg)
Gets shortest distance from the origin to the plane.
GoSurfaceMsg::GoSurfaceMsg_Width
kSize GoSurfaceMsg_Width(GoSurfaceMsg msg)
Gets the width of the surface (column count).
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_RowAt
k8u * GoSurfaceIntensityMsg_RowAt(GoSurfaceIntensityMsg msg, kSize index)
Gets a pointer to a surface intensity row.
GoProfileMsg::GoProfileMsg_Count
kSize GoProfileMsg_Count(GoProfileMsg msg)
Gets the count of profile arrays in this message.
GoMeasurementMsg::GoMeasurementMsg_Id
k16u GoMeasurementMsg_Id(GoMeasurementMsg msg)
Gets the measurement identifier.
GoProfileIntensityMsg::GoProfileIntensityMsg_Source
GoDataSource GoProfileIntensityMsg_Source(GoProfileIntensityMsg msg)
Gets the profile source.
GoSectionIntensityMsg::GoSectionIntensityMsg_Source
GoDataSource GoSectionIntensityMsg_Source(GoSectionIntensityMsg msg)
Gets the section source.
GoStampMsg::GoStampMsg_Source
GoDataSource GoStampMsg_Source(GoStampMsg msg)
Gets the stamp source.
GoSurfaceMsg::GoSurfaceMsg_YOffset
k32s GoSurfaceMsg_YOffset(GoSurfaceMsg msg)
Gets the surface y-offset, in micrometers.
GoExposureCalMsg
Represents a message containing exposure calibration results.
GoSectionMsg
Represents a data message containing a set of section arrays.
GoVideoMsg::GoVideoMsg_IsFlippedY
kBool GoVideoMsg_IsFlippedY(GoVideoMsg msg)
Indicates whether the video message data requires vertical flipping to match up with profile data...
GoPixelType
Represents a video message pixel type.
GoSectionIntensityMsg::GoSectionIntensityMsg_Exposure
k32u GoSectionIntensityMsg_Exposure(GoSectionIntensityMsg msg)
Gets the exposure.
GoPointFeatureMsg::GoPointFeatureMsg_Position
kPoint3d64f GoPointFeatureMsg_Position(GoPointFeatureMsg msg)
The point data in this message.
GoProfileIntensityMsg
Represents a data message containing a set of profile intensity arrays.
GoTracheidMsg
Represents a data message containing a set of tracheid data.
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_YResolution
k32u GoSurfaceIntensityMsg_YResolution(GoSurfaceIntensityMsg msg)
Gets the surface y-resolution, in nanometers.
GoStamp::id
k32u id
Source device ID.
Definition: GoDataTypes.h:57
GoDataMsg::GoDataMsg_Type
GoDataMessageType GoDataMsg_Type(GoDataMsg message)
Returns the message type for a data channel message given in a GoDataSet.
GoMeasurementData::GoMeasurementData_Value
k64f GoMeasurementData_Value(GoMeasurementData data)
Gets the measurement data value.
k32s
GoEllipseMatchMsg::GoEllipseMatchMsg_ZAngle
k64f GoEllipseMatchMsg_ZAngle(GoEllipseMatchMsg msg)
Gets the ellipse match Z angle.
GoMeasurementMsg::GoMeasurementMsg_At
GoMeasurementData * GoMeasurementMsg_At(GoMeasurementMsg msg, kSize index)
Gets the measurement at the specified index.
GoTracheidMsg::GoTracheidMsg_Width
kSize GoTracheidMsg_Width(GoTracheidMsg msg)
Gets the count of ellipses in each tracheid array.
GoEdgeMatchMsg::GoEdgeMatchMsg_QualityDecision
k8u GoEdgeMatchMsg_QualityDecision(GoEdgeMatchMsg msg)
Gets the edge match quality decision.
GoDataMessageType
Lists all data message types.
GoMeasurementMsg::GoMeasurementMsg_Count
kSize GoMeasurementMsg_Count(GoMeasurementMsg msg)
Count of measurements in this message.
GoSectionMsg::GoSectionMsg_AnglePose
k32s GoSectionMsg_AnglePose(GoSectionMsg msg)
Gets the Pose Angle, in microdegrees.
GoCircleFeatureMsg
Represents a message containing circular feature data.
GoResampledProfileMsg::GoResampledProfileMsg_ZResolution
k32u GoResampledProfileMsg_ZResolution(GoResampledProfileMsg msg)
Gets the profile z-resolution, in nanometers.
GoPlaneFeatureMsg::GoPlaneFeatureMsg_Id
k16u GoPlaneFeatureMsg_Id(GoPlaneFeatureMsg msg)
Gets the planear feature identifier.
GoSectionIntensityMsg::GoSectionIntensityMsg_XOffset
k32s GoSectionIntensityMsg_XOffset(GoSectionIntensityMsg msg)
Gets the x-offset, in micrometers.
GoSurfaceMsg::GoSurfaceMsg_Source
GoDataSource GoSurfaceMsg_Source(GoSurfaceMsg msg)
Gets the profile source.
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_LengthValue
k64f GoBoundingBoxMatchMsg_LengthValue(GoBoundingBoxMatchMsg msg)
Gets the bounding box match length value.
GoTracheidEllipse::angle
k64f angle
Ellipse angle.
Definition: GoDataTypes.h:1574
k64s
GoProfileMsg::GoProfileMsg_XOffset
k32s GoProfileMsg_XOffset(GoProfileMsg msg)
Gets the profile x-offset, in micrometers.
GoMeasurementData::GoMeasurementData_DecisionCode
GoDecisionCode GoMeasurementData_DecisionCode(GoMeasurementData data)
Gets the measurement decision code.
GoSurfaceMsg::GoSurfaceMsg_XOffset
k32s GoSurfaceMsg_XOffset(GoSurfaceMsg msg)
Gets the surface x-offset, in micrometers.
GoSurfaceMsg::GoSurfaceMsg_RowAt
k16s * GoSurfaceMsg_RowAt(GoSurfaceMsg msg, kSize index)
Gets a pointer to a surface row.
GoMeasurementData::decisionCode
GoDecisionCode decisionCode
Measurement decision code - relevant only when the value represents a failure.
Definition: GoDataTypes.h:1170
GoEllipseMatchMsg::GoEllipseMatchMsg_MinorValue
k64f GoEllipseMatchMsg_MinorValue(GoEllipseMatchMsg msg)
Gets the ellipse match minor value.
GoProfileMsg
Represents a data message containing a set of profile arrays.
GoAlignMsg
Represents a message containing an alignment result.
GoMeasurementData::value
k64f value
Measurement value.
Definition: GoDataTypes.h:1168
GoStamp::reserved32u
k32u reserved32u
Reserved.
Definition: GoDataTypes.h:58
GoMeasurementMsg
Represents a message containing a set of GoMeasurementData.
GoEdgeMatchMsg::GoEdgeMatchMsg_QualityValue
k64f GoEdgeMatchMsg_QualityValue(GoEdgeMatchMsg msg)
Gets the edge match quality value.
GoDataMsg
Represents a base message sourced from the data channel.
GoLineFeatureMsg::GoLineFeatureMsg_Position
kPoint3d64f GoLineFeatureMsg_Position(GoLineFeatureMsg msg)
Gets a point on the linear feature.
GoEventMsg
Represents a message containing bounding box based part matching results.
GoSectionMsg::GoSectionMsg_XOffset
k32s GoSectionMsg_XOffset(GoSectionMsg msg)
Gets the x-offset, in micrometers.
GoPointFeatureMsg
Represents a message containing Point Feature data.
GoAlignMsg::GoAlignMsg_Status
kStatus GoAlignMsg_Status(GoAlignMsg msg)
Gets the alignment result.
GoProfileIntensityMsg::GoProfileIntensityMsg_At
k8u * GoProfileIntensityMsg_At(GoProfileIntensityMsg msg, kSize index)
Gets a pointer to a profile intensity array.
k16s
GoEllipseMatchMsg
Represents a message containing ellipse based part matching results.
GoSectionMsg::GoSectionMsg_Exposure
k32u GoSectionMsg_Exposure(GoSectionMsg msg)
Gets the exposure.
GoEdgeMatchMsg::GoEdgeMatchMsg_ZAngle
k64f GoEdgeMatchMsg_ZAngle(GoEdgeMatchMsg msg)
Gets the edge match Z angle.
GoSurfaceMsg::GoSurfaceMsg_YResolution
k32u GoSurfaceMsg_YResolution(GoSurfaceMsg msg)
Gets the surface y-resolution, in nanometers.
kObject
kStatus
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_XOffset
k64f GoBoundingBoxMatchMsg_XOffset(GoBoundingBoxMatchMsg msg)
Gets the bounding box match X offset.
GoVideoMsg::GoVideoMsg_PixelType
GoPixelType GoVideoMsg_PixelType(GoVideoMsg msg)
Gets the data type used to represent an image pixel.
GoEventType
Represents the event type represented by an event message.
GoResampledProfileMsg::GoResampledProfileMsg_At
k16s * GoResampledProfileMsg_At(GoResampledProfileMsg msg, kSize index)
Gets a pointer to a re-sampled profile array.
kCfa
GoSectionIntensityMsg::GoSectionIntensityMsg_At
k8u * GoSectionIntensityMsg_At(GoSectionIntensityMsg msg, kSize index)
Gets a pointer to a Section intensity array.
GoTracheidMsg::GoTracheidMsg_Source
GoDataSource GoTracheidMsg_Source(GoTracheidMsg msg)
Gets the tracheid source.
k64f
GoResampledProfileMsg::GoResampledProfileMsg_Source
GoDataSource GoResampledProfileMsg_Source(GoResampledProfileMsg msg)
Gets the profile source.
GoStamp::encoder
k64s encoder
Position (encoder ticks).
Definition: GoDataTypes.h:44
GoEllipseMatchMsg::GoEllipseMatchMsg_YOffset
k64f GoEllipseMatchMsg_YOffset(GoEllipseMatchMsg msg)
Gets the ellipse match Y offset.
GoStamp::frameIndex
k64u frameIndex
Frame index (counts up from zero).
Definition: GoDataTypes.h:42
GoSectionMsg::GoSectionMsg_Id
k32u GoSectionMsg_Id(GoSectionMsg msg)
Gets the section ID.
GoSectionIntensityMsg::GoSectionIntensityMsg_XResolution
k32u GoSectionIntensityMsg_XResolution(GoSectionIntensityMsg msg)
Gets the x-resolution, in nanometers.
GoEdgeMatchMsg::GoEdgeMatchMsg_YOffset
k64f GoEdgeMatchMsg_YOffset(GoEdgeMatchMsg msg)
Gets the edge match Y offset.
kBool
GoEdgeMatchMsg::GoEdgeMatchMsg_XOffset
k64f GoEdgeMatchMsg_XOffset(GoEdgeMatchMsg msg)
Gets the edge match X offset.
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_Source
GoDataSource GoSurfaceIntensityMsg_Source(GoSurfaceIntensityMsg msg)
Gets the profile source.
GoSectionMsg::GoSectionMsg_XResolution
k32u GoSectionMsg_XResolution(GoSectionMsg msg)
Gets the x-resolution, in nanometers.
GoResampledProfileMsg::GoResampledProfileMsg_Width
kSize GoResampledProfileMsg_Width(GoResampledProfileMsg msg)
Gets the count of points in each re-sampled profile array.
GoVideoMsg::GoVideoMsg_ExposureIndex
kSize GoVideoMsg_ExposureIndex(GoVideoMsg msg)
Gets the exposure index.
GoSectionIntensityMsg::GoSectionIntensityMsg_XPose
k32s GoSectionIntensityMsg_XPose(GoSectionIntensityMsg msg)
Gets the X-Pose, in micrometers.
GoTracheidEllipse
Represents a tracheid ellipse.
Definition: GoDataTypes.h:1571
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_XResolution
k32u GoSurfaceIntensityMsg_XResolution(GoSurfaceIntensityMsg msg)
Gets the surface x-resolution, in nanometers.
GoEdgeMatchMsg::GoEdgeMatchMsg_Decision
k8u GoEdgeMatchMsg_Decision(GoEdgeMatchMsg msg)
Gets the edge match decision.
GoSurfaceIntensityMsg
Represents a data message containing a surface intensity array.
GoEllipseMatchMsg::GoEllipseMatchMsg_MinorDecision
k8u GoEllipseMatchMsg_MinorDecision(GoEllipseMatchMsg msg)
Gets the ellipse match minor decision.
GoLineFeatureMsg
Represents a message containing Linear Feature data.
kPoint3d64f
GoExposureCalMsg::GoExposureCalMsg_Status
kStatus GoExposureCalMsg_Status(GoExposureCalMsg msg)
Gets the exposure calibration result.
GoPointFeatureMsg::GoPointFeatureMsg_Id
k16u GoPointFeatureMsg_Id(GoPointFeatureMsg msg)
Gets the point feature identifier.
GoSurfaceIntensityMsg::GoSurfaceIntensityMsg_XOffset
k32s GoSurfaceIntensityMsg_XOffset(GoSurfaceIntensityMsg msg)
Gets the surface x-offset, in micrometers.
GoBoundingBoxMatchMsg::GoBoundingBoxMatchMsg_WidthValue
k64f GoBoundingBoxMatchMsg_WidthValue(GoBoundingBoxMatchMsg msg)
Gets the bounding box match width value.
GoResampledProfileMsg::GoResampledProfileMsg_XOffset
k32s GoResampledProfileMsg_XOffset(GoResampledProfileMsg msg)
Gets the profile x-offset, in micrometers.
GoStamp::reserved64u
k64u reserved64u
Reserved.
Definition: GoDataTypes.h:59
GoSectionMsg::GoSectionMsg_At
k16s * GoSectionMsg_At(GoSectionMsg msg, kSize index)
Gets a pointer to a section array.
GoMeasurementData
Represents a measurement result.
Definition: GoDataTypes.h:1166
GoProfileMsg::GoProfileMsg_Source
GoDataSource GoProfileMsg_Source(GoProfileMsg msg)
Gets the profile source.
GoSurfaceMsg::GoSurfaceMsg_ZAngle
k32s GoSurfaceMsg_ZAngle(GoSurfaceMsg msg)
Gets the surface z-angle, in microdegrees.