Gocator API
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-2019 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 
15 /**
16  * @class GoDataMsg
17  * @extends kObject
18  * @ingroup GoSdk-DataChannel
19  * @brief Represents a base message sourced from the data channel.
20  */
21 typedef kObject GoDataMsg;
22 
23 /**
24  * Returns the message type for a data channel message given in a GoDataSet.
25  *
26  * @public @memberof GoDataMsg
27  * @version Introduced in firmware 4.0.10.27
28  * @param message A data channel message.
29  * @return A GoDataMessageType value.
30  */
32 
33 /**
34 * Gets the source of the data stream.
35 *
36 * @public @memberof GoDataMsg
37 * @version Introduced in firmware 5.2
38 * @param message Message object.
39 * @return A GoDataStep value.
40 */
42 
43 /**
44 * Gets the identifier of the data stream from the source.
45 *
46 * @public @memberof GoDataMsg
47 * @version Introduced in firmware 5.2
48 * @param message Message object.
49 * @return Stream step identifier number.
50 */
52 
53 /**
54 * Sets the source of the data stream.
55 *
56 * @public @memberof GoDataMsg
57 * @version Introduced in firmware 5.2
58 * @param message Message object.
59 * @param streamStep streamStep value
60 * @return Result status.
61 */
62 GoFx(kStatus) GoDataMsg_SetStreamStep(GoDataMsg message, GoDataStep streamStep);
63 
64 /**
65 * Sets the identifier of the data stream from the source.
66 *
67 * @public @memberof GoDataMsg
68 * @version Introduced in firmware 5.2
69 * @param message Message object.
70 * @param streamStepId streamStepId value
71 * @return Result status.
72 */
73 GoFx(kStatus) GoDataMsg_SetStreamStepId(GoDataMsg message, k32s streamStepId);
74 
75 
76 /**
77  * @struct GoStamp
78  * @extends kValue
79  * @ingroup GoSdk-DataChannel
80  * @brief Represents an acquisition stamp.
81  */
82 typedef struct GoStamp
83 {
84  k64u frameIndex; ///< Frame index (counts up from zero).
85  k64u timestamp; ///< Timestamp in internal units approximating microseconds where the true time in us = timestamp value / 1.024.
86  k64s encoder; ///< Position (encoder ticks).
87  k64s encoderAtZ; ///< Encoder value latched at z-index mark (encoder ticks).
89  /**<
90  * Bit mask containing frame information:
91  *
92  * - Bit 0: Represents sensor digital input state.
93  * - Bit 4: Represents Master digital input state.
94  * - Bits 8 and 9: Represents inter-frame digital pulse trigger
95  (Master digital input if a Master is connected, otherwise
96  sensor digital input. Value is cleared after each frame
97  and clamped at 3 if more than 3 pulses are received).
98  */
99  k32u id; ///< Source device ID.
100  k32u reserved32u; ///< Reserved.
101  k64u reserved64u; ///< Reserved.
102  k64u ptpTime; ///< PTP time of the stamp. us since the PTP epoch (usually TAI)
103 } GoStamp;
104 
105 /**
106  * @class GoStampMsg
107  * @extends GoDataMsg
108  * @ingroup GoSdk-DataChannel
109  * @brief Represents a message containing a set of acquisition stamps.
110  */
111 typedef GoDataMsg GoStampMsg;
112 
113 /**
114  * Gets the stamp source.
115  *
116  * @public @memberof GoStampMsg
117  * @version Introduced in firmware 4.0.10.27
118  * @param msg Message object.
119  * @return Stamp source.
120  */
122 
123 /**
124  * Returns the number of stamps contained in this message.
125  *
126  * @public @memberof GoStampMsg
127  * @version Introduced in firmware 4.0.10.27
128  * @param msg Message object.
129  * @return Count of stamps.
130  */
132 
133 /**
134  * Gets the stamp at the specified index.
135  *
136  * @public @memberof GoStampMsg
137  * @version Introduced in firmware 4.0.10.27
138  * @param msg Message object.
139  * @param index Stamp index.
140  * @return Stamp pointer.
141  */
142 GoFx(GoStamp*) GoStampMsg_At(GoStampMsg msg, kSize index);
143 
144 /**
145  * @class GoVideoMsg
146  * @extends GoDataMsg
147  * @ingroup GoSdk-DataChannel
148  * @brief Represents a data message containing a video image.
149  */
150 typedef GoDataMsg GoVideoMsg;
151 
152 /**
153  * Gets the video source.
154  *
155  * @public @memberof GoVideoMsg
156  * @version Introduced in firmware 4.0.10.27
157  * @param msg Message object.
158  * @return Video source.
159  */
161 
162 
163 /**
164  * Gets the camera index that the video data originates from.
165  *
166  * @public @memberof GoVideoMsg
167  * @version Introduced in firmware 4.0.10.27
168  * @param msg Message object.
169  * @return Camera index.
170  */
172 
173 
174 /**
175  * Gets the image width, in pixels.
176  *
177  * @public @memberof GoVideoMsg
178  * @version Introduced in firmware 4.0.10.27
179  * @param msg Message object.
180  * @return Image width, in pixels.
181  */
183 
184 /**
185  * Gets the image height, in pixels.
186  *
187  * @public @memberof GoVideoMsg
188  * @version Introduced in firmware 4.0.10.27
189  * @param msg Message object.
190  * @return Image height, in pixels.
191  */
193 
194 /**
195  * Gets the data type used to represent an image pixel.
196  *
197  * @public @memberof GoVideoMsg
198  * @version Introduced in firmware 4.0.10.27
199  * @param msg Message object.
200  * @return Pixel type.
201  */
203 
204 /**
205  * Gets the image pixel size, in bytes.
206  *
207  * @public @memberof GoVideoMsg
208  * @version Introduced in firmware 4.0.10.27
209  * @param msg Message object.
210  * @return Pixel size, in bytes.
211  */
213 
214 /**
215  * Gets the pixel format descriptor.
216  *
217  * @public @memberof GoVideoMsg
218  * @version Introduced in firmware 4.0.10.27
219  * @param msg Message object.
220  * @return Pixel format.
221  */
223 
224 /**
225  * Gets the image color filter array.
226  *
227  * @public @memberof GoVideoMsg
228  * @version Introduced in firmware 4.0.10.27
229  * @param msg Message object.
230  * @return Color filter array.
231  */
232 GoFx(kCfa) GoVideoMsg_Cfa(GoVideoMsg msg);
233 
234 /**
235  * Gets a pointer to a row within the image.
236  *
237  * @public @memberof GoVideoMsg
238  * @version Introduced in firmware 4.0.10.27
239  * @param msg Message object.
240  * @param rowIndex Row index.
241  * @return Row pointer.
242  */
243 GoFx(void*) GoVideoMsg_RowAt(GoVideoMsg msg, kSize rowIndex);
244 
245 /**
246  * Gets the exposure index.
247  *
248  * @public @memberof GoVideoMsg
249  * @version Introduced in firmware 4.0.10.27
250  * @param msg Message object.
251  * @return Exposure index.
252  */
254 
255 /**
256  * Gets the exposure.
257  *
258  * @public @memberof GoVideoMsg
259  * @version Introduced in firmware 4.0.10.27
260  * @param msg Message object.
261  * @return Exposure in uS.
262  */
264 
265 /**
266  * Indicates whether the video message data requires horizontal flipping to match up with profile data.
267  *
268  * @public @memberof GoVideoMsg
269  * @version Introduced in firmware 4.4.4.14
270  * @param msg Message object.
271  * @return kTRUE if rotation is required, kFALSE otherwise.
272  */
274 
275 /**
276  * Indicates whether the video message data requires vertical flipping to match up with profile data.
277  *
278  * @public @memberof GoVideoMsg
279  * @version Introduced in firmware 4.4.4.14
280  * @param msg Message object.
281  * @return kTRUE if rotation is required, kFALSE otherwise.
282  */
284 
285 /**
286  * @class GoRangeMsg
287  * @extends GoDataMsg
288  * @note Supported with G1
289  * @ingroup GoSdk-DataChannel
290  * @brief Represents a data message containing a set of range data.
291  */
292 typedef GoDataMsg GoRangeMsg;
293 
294 /**
295  * Gets the Range source.
296  *
297  * @public @memberof GoRangeMsg
298  * @note Supported with G1
299  * @version Introduced in firmware 4.0.10.27
300  * @param msg Message object.
301  * @return Range source.
302  */
304 
305 /**
306  * Gets the count of Range data in this message.
307  *
308  * @public @memberof GoRangeMsg
309  * @note Supported with G1
310  * @version Introduced in firmware 4.0.10.27
311  * @param msg Message object.
312  * @return Count of Range data.
313  */
315 
316 
317 /**
318  * Gets the Range z-resolution, in nanometers.
319  *
320  * @public @memberof GoRangeMsg
321  * @note Supported with G1
322  * @version Introduced in firmware 4.0.10.27
323  * @param msg Message object.
324  * @return Z resolution (nm).
325  */
327 
328 /**
329  * Gets the Range z-offset, in micrometers.
330  *
331  * @public @memberof GoRangeMsg
332  * @note Supported with G1
333  * @version Introduced in firmware 4.0.10.27
334  * @param msg Message object.
335  * @return Z offset (um).
336  */
338 
339 /**
340  * Gets a pointer to Range data.
341  *
342  * @public @memberof GoRangeMsg
343  * @note Supported with G1
344  * @version Introduced in firmware 4.0.10.27
345  * @param msg Message object.
346  * @param index Range array index.
347  * @return Range pointer.
348  */
349 GoFx(k16s*) GoRangeMsg_At(GoRangeMsg msg, kSize index);
350 
351 /**
352  * Gets the exposure.
353  *
354  * @public @memberof GoRangeMsg
355  * @note Supported with G1
356  * @version Introduced in firmware 4.0.10.27
357  * @param msg Message object.
358  * @return Exposure in uS.
359  */
361 
362 
363 /**
364  * @class GoRangeIntensityMsg
365  * @extends GoDataMsg
366  * @note Supported with G1
367  * @ingroup GoSdk-DataChannel
368  * @brief Represents a data message containing a set of range intensity data.
369  */
371 
372 /**
373  * Gets the range intensity source.
374  *
375  * @public @memberof GoRangeIntensityMsg
376  * @note Supported with G1
377  * @version Introduced in firmware 4.0.10.27
378  * @param msg Message object.
379  * @return Range intensity source.
380  */
382 
383 /**
384  * Gets the count of range intensity data in this message.
385  *
386  * @public @memberof GoRangeIntensityMsg
387  * @note Supported with G1
388  * @version Introduced in firmware 4.0.10.27
389  * @param msg Message object.
390  * @return Count of range intensity data.
391  */
393 
394 /**
395  * Gets a pointer to range intensity data.
396  *
397  * @public @memberof GoRangeIntensityMsg
398  * @note Supported with G1
399  * @version Introduced in firmware 4.0.10.27
400  * @param msg Message object.
401  * @param index Range intensity array index.
402  * @return Range intensity data pointer.
403  */
405 
406 /**
407  * Gets the exposure.
408  *
409  * @public @memberof GoRangeIntensityMsg
410  * @note Supported with G1
411  * @version Introduced in firmware 4.0.10.27
412  * @param msg Message object.
413  * @return Exposure in uS.
414  */
416 
417 /**
418  * @class GoProfilePointCloudMsg
419  * @extends GoDataMsg
420  * @note Supported with G1, G2
421  * @ingroup GoSdk-DataChannel
422  * @brief Represents a data message containing a set of profile arrays.
423  */
425 
426 /**
427  * Gets the profile source.
428  *
429  * @public @memberof GoProfilePointCloudMsg
430  * @note Supported with G1, G2
431  * @version Introduced in firmware 4.8.1.70
432  * @param msg Message object.
433  * @return Profile source.
434  */
436 
437 /**
438  * Gets the count of profile arrays in this message.
439  *
440  * @public @memberof GoProfilePointCloudMsg
441  * @note Supported with G1, G2
442  * @version Introduced in firmware 4.8.1.70
443  * @param msg Message object.
444  * @return Count of profile arrays.
445  */
447 
448 /**
449  * Gets the count of ranges in each profile array.
450  *
451  * @public @memberof GoProfilePointCloudMsg
452  * @note Supported with G1, G2
453  * @version Introduced in firmware 4.8.1.70
454  * @param msg Message object.
455  * @return Range count.
456  */
458 
459 /**
460  * Gets the profile x-resolution, in nanometers.
461  *
462  * @public @memberof GoProfilePointCloudMsg
463  * @note Supported with G1, G2
464  * @version Introduced in firmware 4.8.1.70
465  * @param msg Message object.
466  * @return X resolution (nm).
467  */
469 
470 /**
471  * Gets the profile z-resolution, in nanometers.
472  *
473  * @public @memberof GoProfilePointCloudMsg
474  * @note Supported with G1, G2
475  * @version Introduced in firmware 4.8.1.70
476  * @param msg Message object.
477  * @return Z resolution (nm).
478  */
480 
481 /**
482  * Gets the profile x-offset, in micrometers.
483  *
484  * @public @memberof GoProfilePointCloudMsg
485  * @note Supported with G1, G2
486  * @version Introduced in firmware 4.8.1.70
487  * @param msg Message object.
488  * @return X offset (um).
489  */
491 
492 /**
493  * Gets the profile z-offset, in micrometers.
494  *
495  * @public @memberof GoProfilePointCloudMsg
496  * @note Supported with G1, G2
497  * @version Introduced in firmware 4.8.1.70
498  * @param msg Message object.
499  * @return Z offset (um).
500  */
502 
503 /**
504  * Gets a pointer to a profile array.
505  *
506  * @public @memberof GoProfilePointCloudMsg
507  * @note Supported with G1, G2
508  * @version Introduced in firmware 4.8.1.70
509  * @param msg Message object.
510  * @param index Profile array index.
511  * @return Profile pointer.
512  */
514 
515 /**
516  * Gets the exposure.
517  *
518  * @public @memberof GoProfilePointCloudMsg
519  * @note Supported with G1, G2
520  * @version Introduced in firmware 4.8.1.70
521  * @param msg Message object.
522  * @return Exposure in uS.
523  */
525 
526 
527 /**
528  * Gets the source camera index.
529  *
530  * @public @memberof GoProfilePointCloudMsg
531  * @note Supported with G1, G2
532  * @version Introduced in firmware 4.8.1.70
533  * @param msg Message object.
534  * @return Camera index (0 - Front camera, 1 - Back camera).
535  */
537 
538 
539 /**
540  * @class GoUniformProfileMsg
541  * @extends GoDataMsg
542  * @note Supported with G1, G2
543  * @ingroup GoSdk-DataChannel
544  * @brief Represents a data message containing a set of re-sampled profile arrays.
545  */
547 
548 /**
549  * Gets the profile source.
550  *
551  * @public @memberof GoUniformProfileMsg
552  * @note Supported with G1, G2
553  * @version Introduced in firmware 4.8.1.70
554  * @param msg Message object.
555  * @return Profile source.
556  */
558 
559 /**
560  * Gets the count of re-sampled profile arrays in this message.
561  *
562  * @public @memberof GoUniformProfileMsg
563  * @note Supported with G1, G2
564  * @version Introduced in firmware 4.8.1.70
565  * @param msg Message object.
566  * @return Count of profile arrays.
567  */
569 
570 /**
571  * Gets the count of points in each re-sampled profile array.
572  *
573  * @public @memberof GoUniformProfileMsg
574  * @note Supported with G1, G2
575  * @version Introduced in firmware 4.8.1.70
576  * @param msg Message object.
577  * @return Point count.
578  */
580 
581 /**
582  * Gets the x-resolution, in nanometers.
583  *
584  * @public @memberof GoUniformProfileMsg
585  * @note Supported with G1, G2
586  * @version Introduced in firmware 4.8.1.70
587  * @param msg Message object.
588  * @return X resolution (nm).
589  */
591 
592 /**
593  * Gets the profile z-resolution, in nanometers.
594  *
595  * @public @memberof GoUniformProfileMsg
596  * @note Supported with G1, G2
597  * @version Introduced in firmware 4.8.1.70
598  * @param msg Message object.
599  * @return Z resolution (nm).
600  */
602 
603 /**
604  * Gets the profile x-offset, in micrometers.
605  *
606  * @public @memberof GoUniformProfileMsg
607  * @note Supported with G1, G2
608  * @version Introduced in firmware 4.8.1.70
609  * @param msg Message object.
610  * @return X offset (um).
611  */
613 
614 /**
615  * Gets the profile z-offset, in micrometers.
616  *
617  * @public @memberof GoUniformProfileMsg
618  * @note Supported with G1, G2
619  * @version Introduced in firmware 4.8.1.70
620  * @param msg Message object.
621  * @return Z offset (um).
622  */
624 
625 /**
626  * Gets a pointer to a re-sampled profile array.
627  *
628  * @public @memberof GoUniformProfileMsg
629  * @note Supported with G1, G2
630  * @version Introduced in firmware 4.8.1.70
631  * @param msg Message object.
632  * @param index Profile array index.
633  * @return Data pointer.
634  */
636 
637 /**
638  * Gets the exposure.
639  *
640  * @public @memberof GoUniformProfileMsg
641  * @note Supported with G1, G2
642  * @version Introduced in firmware 4.8.1.70
643  * @param msg Message object.
644  * @return Exposure in uS.
645  */
647 
648 /**
649  * @class GoProfileIntensityMsg
650  * @extends GoDataMsg
651  * @note Supported with G1, G2
652  * @ingroup GoSdk-DataChannel
653  * @brief Represents a data message containing a set of profile intensity arrays.
654  */
656 
657 /**
658  * Gets the profile source.
659  *
660  * @public @memberof GoProfileIntensityMsg
661  * @note Supported with G1, G2
662  * @version Introduced in firmware 4.0.10.27
663  * @param msg Message object.
664  * @return Profile source.
665  */
667 
668 /**
669  * Gets the count of profile intensity arrays in this message.
670  *
671  * @public @memberof GoProfileIntensityMsg
672  * @note Supported with G1, G2
673  * @version Introduced in firmware 4.0.10.27
674  * @param msg Message object.
675  * @return Count of profile arrays.
676  */
678 
679 /**
680  * Gets the count of intensity values in each profile intensity array.
681  *
682  * @public @memberof GoProfileIntensityMsg
683  * @note Supported with G1, G2
684  * @version Introduced in firmware 4.0.10.27
685  * @param msg Message object.
686  * @return Intensity count.
687  */
689 
690 /**
691  * Gets the x-resolution, in nanometers.
692  *
693  * @public @memberof GoProfileIntensityMsg
694  * @note Supported with G1, G2
695  * @version Introduced in firmware 4.0.10.27
696  * @param msg Message object.
697  * @return X resolution (nm).
698  */
700 
701 /**
702  * Gets the profile x-offset, in micrometers.
703  *
704  * @public @memberof GoProfileIntensityMsg
705  * @note Supported with G1, G2
706  * @version Introduced in firmware 4.0.10.27
707  * @param msg Message object.
708  * @return X offset (um).
709  */
711 
712 /**
713  * Gets a pointer to a profile intensity array.
714  *
715  * @public @memberof GoProfileIntensityMsg
716  * @note Supported with G1, G2
717  * @version Introduced in firmware 4.0.10.27
718  * @param msg Message object.
719  * @param index Profile intensity array index.
720  * @return Data pointer.
721  */
723 
724 /**
725  * Gets the exposure.
726  *
727  * @public @memberof GoProfileIntensityMsg
728  * @note Supported with G1, G2
729  * @version Introduced in firmware 4.0.10.27
730  * @param msg Message object.
731  * @return Exposure in uS.
732  */
734 
735 /**
736  * Gets the source camera index.
737  *
738  * @public @memberof GoProfileIntensityMsg
739  * @note Supported with G1, G2
740  * @version Introduced in firmware 4.1.3.106
741  * @param msg Message object.
742  * @return Camera index (0 - Front camera, 1 - Back camera).
743  */
745 
746 /**
747  * @class GoUniformSurfaceMsg
748  * @extends GoDataMsg
749  * @note Supported with G2, G3
750  * @ingroup GoSdk-DataChannel
751  * @brief Represents a data message containing a surface array.
752  */
754 
755 /**
756  * Gets the profile source.
757  *
758  * @public @memberof GoUniformSurfaceMsg
759  * @note Supported with G2, G3
760  * @version Introduced in firmware 4.8.1.70
761  * @param msg Message object.
762  * @return Profile source.
763  */
765 
766 /**
767  * Gets the length of the surface (row count).
768  *
769  * @public @memberof GoUniformSurfaceMsg
770  * @note Supported with G2, G3
771  * @version Introduced in firmware 4.8.1.70
772  * @param msg Message object.
773  * @return Surface length.
774  */
776 
777 /**
778  * Gets the width of the surface (column count).
779  *
780  * @public @memberof GoUniformSurfaceMsg
781  * @note Supported with G2, G3
782  * @version Introduced in firmware 4.8.1.70
783  * @param msg Message object.
784  * @return Surface width;
785  */
787 
788 /**
789  * Gets the surface x-resolution, in nanometers.
790  *
791  * @public @memberof GoUniformSurfaceMsg
792  * @note Supported with G2, G3
793  * @version Introduced in firmware 4.8.1.70
794  * @param msg Message object.
795  * @return X resolution (nm).
796  */
798 
799 /**
800  * Gets the surface y-resolution, in nanometers.
801  *
802  * @public @memberof GoUniformSurfaceMsg
803  * @note Supported with G2, G3
804  * @version Introduced in firmware 4.8.1.70
805  * @param msg Message object.
806  * @return Y resolution (nm).
807  */
809 
810 /**
811  * Gets the surface z-resolution, in nanometers.
812  *
813  * @public @memberof GoUniformSurfaceMsg
814  * @note Supported with G2, G3
815  * @version Introduced in firmware 4.8.1.70
816  * @param msg Message object.
817  * @return Z resolution (nm).
818  */
820 
821 /**
822  * Gets the surface x-offset, in micrometers.
823  *
824  * @public @memberof GoUniformSurfaceMsg
825  * @note Supported with G2, G3
826  * @version Introduced in firmware 4.8.1.70
827  * @param msg Message object.
828  * @return X offset (um).
829  */
831 
832 /**
833  * Gets the surface y-offset, in micrometers.
834  *
835  * @public @memberof GoUniformSurfaceMsg
836  * @note Supported with G2, G3
837  * @version Introduced in firmware 4.8.1.70
838  * @param msg Message object.
839  * @return Y offset (um).
840  */
842 
843 /**
844  * Gets the surface z-offset, in micrometers.
845  *
846  * @public @memberof GoUniformSurfaceMsg
847  * @note Supported with G2, G3
848  * @version Introduced in firmware 4.8.1.70
849  * @param msg Message object.
850  * @return Z offset (um).
851  */
853 
854 /**
855  * Gets a pointer to a surface row.
856  *
857  * @public @memberof GoUniformSurfaceMsg
858  * @note Supported with G2, G3
859  * @version Introduced in firmware 4.8.1.70
860  * @param msg Message object.
861  * @param index Surface row index.
862  * @return Row pointer.
863  */
865 
866 /**
867  * Gets the exposure.
868  *
869  * @public @memberof GoUniformSurfaceMsg
870  * @note Supported with G2, G3
871  * @version Introduced in firmware 4.8.1.70
872  * @param msg Message object.
873  * @return Exposure in uS.
874  */
876 
877 /**
878 * @class GoSurfacePointCloudMsg
879 * @extends GoDataMsg
880 * @note Supported with G3
881 * @ingroup GoSdk-DataChannel
882 * @brief Represents a data message containing a surface array.
883 */
885 
886 /**
887 * Gets the profile source.
888 *
889 * @public @memberof GoSurfacePointCloudMsg
890 * @note Supported with G3
891 * @version Introduced in firmware 4.8.1.66
892 * @param msg Message object.
893 * @return Profile source.
894 */
896 
897 /**
898 * Gets the length of the surface (row count).
899 *
900 * @public @memberof GoSurfacePointCloudMsg
901 * @note Supported with G3
902 * @version Introduced in firmware 4.8.1.66
903 * @param msg Message object.
904 * @return Surface length.
905 */
907 
908 /**
909 * Gets the width of the surface (column count).
910 *
911 * @public @memberof GoSurfacePointCloudMsg
912 * @note Supported with G3
913 * @version Introduced in firmware 4.8.1.66
914 * @param msg Message object.
915 * @return Surface width;
916 */
918 
919 /**
920 * Gets the surface x-resolution, in nanometers.
921 *
922 * @public @memberof GoSurfacePointCloudMsg
923 * @note Supported with G3
924 * @version Introduced in firmware 4.8.1.66
925 * @param msg Message object.
926 * @return X resolution (nm).
927 */
929 
930 /**
931 * Gets the surface y-resolution, in nanometers.
932 *
933 * @public @memberof GoSurfacePointCloudMsg
934 * @note Supported with G3
935 * @version Introduced in firmware 4.8.1.66
936 * @param msg Message object.
937 * @return Y resolution (nm).
938 */
940 
941 /**
942 * Gets the surface z-resolution, in nanometers.
943 *
944 * @public @memberof GoSurfacePointCloudMsg
945 * @note Supported with G3
946 * @version Introduced in firmware 4.8.1.66
947 * @param msg Message object.
948 * @return Z resolution (nm).
949 */
951 
952 /**
953 * Gets the surface x-offset, in micrometers.
954 *
955 * @public @memberof GoSurfacePointCloudMsg
956 * @note Supported with G3
957 * @version Introduced in firmware 4.8.1.66
958 * @param msg Message object.
959 * @return X offset (um).
960 */
962 
963 /**
964 * Gets the surface y-offset, in micrometers.
965 *
966 * @public @memberof GoSurfacePointCloudMsg
967 * @note Supported with G3
968 * @version Introduced in firmware 4.8.1.66
969 * @param msg Message object.
970 * @return Y offset (um).
971 */
973 
974 /**
975 * Gets the surface z-offset, in micrometers.
976 *
977 * @public @memberof GoSurfacePointCloudMsg
978 * @note Supported with G3
979 * @version Introduced in firmware 4.8.1.66
980 * @param msg Message object.
981 * @return Z offset (um).
982 */
984 
985 /**
986 * Gets a pointer to a surface row.
987 *
988 * @public @memberof GoSurfacePointCloudMsg
989 * @note Supported with G3
990 * @version Introduced in firmware 4.8.1.66
991 * @param msg Message object.
992 * @param index Surface row index.
993 * @return Row pointer.
994 */
996 
997 /**
998 * Gets the exposure.
999 *
1000 * @public @memberof GoSurfacePointCloudMsg
1001 * @note Supported with G3
1002 * @version Introduced in firmware 4.8.1.66
1003 * @param msg Message object.
1004 * @return Exposure in uS.
1005 */
1007 
1008 /**
1009 * Is the unresampled surface data adjacent/sorted?
1010 *
1011 * @public @memberof GoSurfacePointCloudMsg
1012 * @note Supported with G3
1013 * @version Introduced in firmware 4.8.0.100
1014 * @param msg Message object.
1015 * @return Is the data adjacent?
1016 */
1018 
1019 /**
1020  * @class GoSurfaceIntensityMsg
1021  * @extends GoDataMsg
1022  * @note Supported with G3
1023  * @ingroup GoSdk-DataChannel
1024  * @brief Represents a data message containing a surface intensity array.
1025  */
1027 
1028 /**
1029  * Gets the profile source.
1030  *
1031  * @public @memberof GoSurfaceIntensityMsg
1032  * @note Supported with G3
1033  * @version Introduced in firmware 4.0.10.27
1034  * @param msg Message object.
1035  * @return Profile source.
1036  */
1038 
1039 /**
1040  * Gets the length of the surface (row count).
1041  *
1042  * @public @memberof GoSurfaceIntensityMsg
1043  * @note Supported with G3
1044  * @version Introduced in firmware 4.0.10.27
1045  * @param msg Message object.
1046  * @return Surface length.
1047  */
1049 
1050 /**
1051  * Gets the width of the surface (column count).
1052  *
1053  * @public @memberof GoSurfaceIntensityMsg
1054  * @note Supported with G3
1055  * @version Introduced in firmware 4.0.10.27
1056  * @param msg Message object.
1057  * @return Surface width;
1058  */
1060 
1061 /**
1062  * Gets the surface x-resolution, in nanometers.
1063  *
1064  * @public @memberof GoSurfaceIntensityMsg
1065  * @note Supported with G3
1066  * @version Introduced in firmware 4.0.10.27
1067  * @param msg Message object.
1068  * @return X resolution (nm).
1069  */
1071 
1072 /**
1073  * Gets the surface y-resolution, in nanometers.
1074  *
1075  * @public @memberof GoSurfaceIntensityMsg
1076  * @note Supported with G3
1077  * @version Introduced in firmware 4.0.10.27
1078  * @param msg Message object.
1079  * @return Y resolution (nm).
1080  */
1082 
1083 /**
1084  * Gets the surface x-offset, in micrometers.
1085  *
1086  * @public @memberof GoSurfaceIntensityMsg
1087  * @note Supported with G3
1088  * @version Introduced in firmware 4.0.10.27
1089  * @param msg Message object.
1090  * @return X offset (um).
1091  */
1093 
1094 /**
1095  * Gets the surface y-offset, in micrometers.
1096  *
1097  * @public @memberof GoSurfaceIntensityMsg
1098  * @note Supported with G3
1099  * @version Introduced in firmware 4.0.10.27
1100  * @param msg Message object.
1101  * @return Y offset (um).
1102  */
1104 
1105 /**
1106  * Gets a pointer to a surface intensity row.
1107  *
1108  * @public @memberof GoSurfaceIntensityMsg
1109  * @note Supported with G3
1110  * @version Introduced in firmware 4.0.10.27
1111  * @param msg Message object.
1112  * @param index Surface intensity row index.
1113  * @return Data pointer.
1114  */
1116 
1117 /**
1118  * Gets the exposure.
1119  *
1120  * @public @memberof GoSurfaceIntensityMsg
1121  * @note Supported with G3
1122  * @version Introduced in firmware 4.0.10.27
1123  * @param msg Message object.
1124  * @return Exposure in uS.
1125  */
1127 
1128 
1129 /**
1130  * @class GoSectionMsg
1131  * @extends GoDataMsg
1132  * @note Supported with G3
1133  * @ingroup GoSdk-DataChannel
1134  * @brief Represents a data message containing a set of section arrays.
1135  */
1136 typedef GoDataMsg GoSectionMsg;
1137 
1138 /**
1139  * Gets the section ID.
1140  *
1141  * @public @memberof GoSectionMsg
1142  * @note Supported with G3
1143  * @version Introduced in firmware 4.4.4.14
1144  * @param msg Message object.
1145  * @return Section ID.
1146  */
1147 GoFx(k32u) GoSectionMsg_Id(GoSectionMsg msg);
1148 
1149 /**
1150  * Gets the section source.
1151  *
1152  * @public @memberof GoSectionMsg
1153  * @note Supported with G3
1154  * @version Introduced in firmware 4.4.4.14
1155  * @param msg Message object.
1156  * @return Section source.
1157  */
1159 
1160 /**
1161  * Gets the count of section arrays in this message.
1162  *
1163  * @public @memberof GoSectionMsg
1164  * @note Supported with G3
1165  * @version Introduced in firmware 4.4.4.14
1166  * @param msg Message object.
1167  * @return Count of section arrays.
1168  */
1170 
1171 /**
1172  * Gets the count of points in each section array.
1173  *
1174  * @public @memberof GoSectionMsg
1175  * @note Supported with G3
1176  * @version Introduced in firmware 4.4.4.14
1177  * @param msg Message object.
1178  * @return Point count.
1179  */
1181 
1182 /**
1183  * Gets the x-resolution, in nanometers.
1184  *
1185  * @public @memberof GoSectionMsg
1186  * @note Supported with G3
1187  * @version Introduced in firmware 4.4.4.14
1188  * @param msg Message object.
1189  * @return X resolution (nm).
1190  */
1192 
1193 /**
1194  * Gets the z-resolution, in nanometers.
1195  *
1196  * @public @memberof GoSectionMsg
1197  * @note Supported with G3
1198  * @version Introduced in firmware 4.4.4.14
1199  * @param msg Message object.
1200  * @return Z resolution (nm).
1201  */
1203 
1204 /**
1205  * Gets the X-Pose, in micrometers.
1206  *
1207  * @public @memberof GoSectionMsg
1208  * @note Supported with G3
1209  * @version Introduced in firmware 4.4.4.14
1210  * @param msg Message object.
1211  * @return X Pose (um).
1212  */
1214 
1215 /**
1216  * Gets the Y-Pose, in micrometers.
1217  *
1218  * @public @memberof GoSectionMsg
1219  * @note Supported with G3
1220  * @version Introduced in firmware 4.4.4.14
1221  * @param msg Message object.
1222  * @return Y Pose (um).
1223  */
1225 
1226 /**
1227  * Gets the Pose Angle, in microdegrees.
1228  *
1229  * @public @memberof GoSectionMsg
1230  * @note Supported with G3
1231  * @version Introduced in firmware 4.4.4.14
1232  * @param msg Message object.
1233  * @return Angle Pose (microdegrees).
1234  */
1236 
1237 /**
1238  * Gets the x-offset, in micrometers.
1239  *
1240  * @public @memberof GoSectionMsg
1241  * @note Supported with G3
1242  * @version Introduced in firmware 4.4.4.14
1243  * @param msg Message object.
1244  * @return X offset (um).
1245  */
1247 
1248 /**
1249  * Gets the z-offset, in micrometers.
1250  *
1251  * @public @memberof GoSectionMsg
1252  * @note Supported with G3
1253  * @version Introduced in firmware 4.4.4.14
1254  * @param msg Message object.
1255  * @return Z offset (um).
1256  */
1258 
1259 /**
1260  * Gets a pointer to a section array.
1261  *
1262  * @public @memberof GoSectionMsg
1263  * @note Supported with G3
1264  * @version Introduced in firmware 4.4.4.14
1265  * @param msg Message object.
1266  * @param index Section array index.
1267  * @return Data pointer.
1268  */
1269 GoFx(k16s*) GoSectionMsg_At(GoSectionMsg msg, kSize index);
1270 
1271 /**
1272  * Gets the exposure.
1273  *
1274  * @public @memberof GoSectionMsg
1275  * @note Supported with G3
1276  * @version Introduced in firmware 4.4.4.14
1277  * @param msg Message object.
1278  * @return Exposure in uS.
1279  */
1281 
1282 
1283 /**
1284  * @class GoSectionIntensityMsg
1285  * @extends GoDataMsg
1286  * @note Supported with G3
1287  * @ingroup GoSdk-DataChannel
1288  * @brief Represents a data message containing a set of profile intensity arrays.
1289  */
1291 
1292 /**
1293  * Gets the section ID.
1294  *
1295  * @public @memberof GoSectionIntensityMsg
1296  * @note Supported with G3
1297  * @version Introduced in firmware 4.4.4.14
1298  * @param msg Message object.
1299  * @return Section ID.
1300  */
1302 
1303 /**
1304  * Gets the section source.
1305  *
1306  * @public @memberof GoSectionIntensityMsg
1307  * @note Supported with G3
1308  * @version Introduced in firmware 4.4.4.14
1309  * @param msg Message object.
1310  * @return Section source.
1311  */
1313 
1314 /**
1315  * Gets the count of section arrays in this message.
1316  *
1317  * @public @memberof GoSectionIntensityMsg
1318  * @note Supported with G3
1319  * @version Introduced in firmware 4.4.4.14
1320  * @param msg Message object.
1321  * @return Count of section arrays.
1322  */
1324 
1325 /**
1326  * Gets the count of points in each section array.
1327  *
1328  * @public @memberof GoSectionIntensityMsg
1329  * @note Supported with G3
1330  * @version Introduced in firmware 4.4.4.14
1331  * @param msg Message object.
1332  * @return Point count.
1333  */
1335 
1336 /**
1337  * Gets the x-resolution, in nanometers.
1338  *
1339  * @public @memberof GoSectionIntensityMsg
1340  * @note Supported with G3
1341  * @version Introduced in firmware 4.4.4.14
1342  * @param msg Message object.
1343  * @return X resolution (nm).
1344  */
1346 
1347 /**
1348  * Gets the X-Pose, in micrometers.
1349  *
1350  * @public @memberof GoSectionIntensityMsg
1351  * @note Supported with G3
1352  * @version Introduced in firmware 4.4.4.14
1353  * @param msg Message object.
1354  * @return X Pose (um).
1355  */
1357 
1358 /**
1359  * Gets the Y-Pose, in micrometers.
1360  *
1361  * @public @memberof GoSectionIntensityMsg
1362  * @note Supported with G3
1363  * @version Introduced in firmware 4.4.4.14
1364  * @param msg Message object.
1365  * @return Y Pose (um).
1366  */
1368 
1369 /**
1370  * Gets the Pose Angle, in microdegrees.
1371  *
1372  * @public @memberof GoSectionIntensityMsg
1373  * @note Supported with G3
1374  * @version Introduced in firmware 4.4.4.14
1375  * @param msg Message object.
1376  * @return Angle Pose (microdegrees).
1377  */
1379 
1380 /**
1381  * Gets the x-offset, in micrometers.
1382  *
1383  * @public @memberof GoSectionIntensityMsg
1384  * @note Supported with G3
1385  * @version Introduced in firmware 4.4.4.14
1386  * @param msg Message object.
1387  * @return X offset (um).
1388  */
1390 
1391 /**
1392  * Gets a pointer to a Section intensity array.
1393  *
1394  * @public @memberof GoSectionIntensityMsg
1395  * @note Supported with G3
1396  * @version Introduced in firmware 4.4.4.14
1397  * @param msg Message object.
1398  * @param index Section intensity array index.
1399  * @return Data pointer.
1400  */
1402 
1403 /**
1404  * Gets the exposure.
1405  *
1406  * @public @memberof GoSectionIntensityMsg
1407  * @note Supported with G3
1408  * @version Introduced in firmware 4.4.4.14
1409  * @param msg Message object.
1410  * @return Exposure in uS.
1411  */
1413 
1414 /**
1415  * @struct GoMeasurementData
1416  * @extends kValue
1417  * @ingroup GoSdk-DataChannel
1418  * @brief Represents a measurement result.
1419  */
1420 typedef struct GoMeasurementData
1421 {
1422  k64f value; ///< Measurement value.
1423  GoDecision decision; ///< Measurement decision value.
1424  GoDecisionCode decisionCode; ///< Measurement decision code - relevant only when the value represents a failure.
1426 
1427 /**
1428  * @class GoMeasurementMsg
1429  * @extends GoDataMsg
1430  * @ingroup GoSdk-DataChannel
1431  * @brief Represents a message containing a set of GoMeasurementData.
1432  */
1433 typedef GoDataMsg GoMeasurementMsg;
1434 
1435 /**
1436  * Gets the measurement identifier.
1437  *
1438  * @public @memberof GoMeasurementMsg
1439  * @version Introduced in firmware 4.0.10.27
1440  * @param msg Message object.
1441  * @return Measurement identifier.
1442  */
1444 
1445 /**
1446  * Count of measurements in this message.
1447  *
1448  * @public @memberof GoMeasurementMsg
1449  * @version Introduced in firmware 4.0.10.27
1450  * @param msg Message object.
1451  * @return Count of measurements.
1452  */
1454 
1455 /**
1456  * Gets the measurement at the specified index.
1457  *
1458  * @public @memberof GoMeasurementMsg
1459  * @version Introduced in firmware 4.0.10.27
1460  * @param msg Message object.
1461  * @param index Measurement index.
1462  * @return Measurement pointer.
1463  */
1465 
1466 
1467 /**
1468  * @class GoAlignMsg
1469  * @extends GoDataMsg
1470  * @ingroup GoSdk-DataChannel
1471  * @brief Represents a message containing an alignment result.
1472  */
1473 typedef GoDataMsg GoAlignMsg;
1474 
1475 /**
1476  * Gets the alignment result.
1477  *
1478  * @public @memberof GoAlignMsg
1479  * @version Introduced in firmware 4.0.10.27
1480  * @param msg Message object.
1481  * @return Alignment result.
1482  */
1484 
1485 /**
1486  * @class GoExposureCalMsg
1487  * @extends GoDataMsg
1488  * @ingroup GoSdk-DataChannel
1489  * @brief Represents a message containing exposure calibration results.
1490  */
1491 typedef GoDataMsg GoExposureCalMsg;
1492 
1493 /**
1494  * Gets the exposure calibration result.
1495  *
1496  * @public @memberof GoExposureCalMsg
1497  * @version Introduced in firmware 4.0.10.27
1498  * @param msg Message object.
1499  * @return Exposure calibration result.
1500  */
1502 
1503 /**
1504  * Gets the calibrated exposure.
1505  *
1506  * @public @memberof GoExposureCalMsg
1507  * @version Introduced in firmware 4.0.10.27
1508  * @param msg Message object.
1509  * @return Calibrated exposure value in uS if the result is kOK.
1510  */
1512 
1513 
1514 /**
1515  * @class GoEdgeMatchMsg
1516  * @extends GoDataMsg
1517  * @ingroup GoSdk-DataChannel
1518  * @brief Represents a message containing edge based part matching results.
1519  */
1520 typedef GoDataMsg GoEdgeMatchMsg;
1521 
1522 /**
1523  * Gets the edge match decision.
1524  *
1525  * @public @memberof GoEdgeMatchMsg
1526  * @version Introduced in firmware 4.2.4.7
1527  * @param msg Message object.
1528  * @return Edge match decision.
1529  */
1531 
1532 /**
1533  * Gets the edge match X offset.
1534  *
1535  * @public @memberof GoEdgeMatchMsg
1536  * @version Introduced in firmware 4.2.4.7
1537  * @param msg Message object.
1538  * @return Edge match X offset.
1539  */
1541 
1542 /**
1543  * Gets the edge match Y offset.
1544  *
1545  * @public @memberof GoEdgeMatchMsg
1546  * @version Introduced in firmware 4.2.4.7
1547  * @param msg Message object.
1548  * @return Edge match Y offset.
1549  */
1551 
1552 /**
1553  * Gets the edge match Z angle.
1554  *
1555  * @public @memberof GoEdgeMatchMsg
1556  * @version Introduced in firmware 4.2.4.7
1557  * @param msg Message object.
1558  * @return Edge match Z angle.
1559  */
1561 
1562 /**
1563  * Gets the edge match quality value.
1564  *
1565  * @public @memberof GoEdgeMatchMsg
1566  * @version Introduced in firmware 4.2.4.7
1567  * @param msg Message object.
1568  * @return Edge match quality value.
1569  */
1571 
1572 /**
1573  * Gets the edge match quality decision.
1574  *
1575  * @public @memberof GoEdgeMatchMsg
1576  * @version Introduced in firmware 4.2.4.7
1577  * @param msg Message object.
1578  * @return Edge match quality decision.
1579  */
1581 
1582 
1583 /**
1584  * @class GoEllipseMatchMsg
1585  * @extends GoDataMsg
1586  * @ingroup GoSdk-DataChannel
1587  * @brief Represents a message containing ellipse based part matching results.
1588  */
1590 
1591 /**
1592  * Gets the ellipse match decision.
1593  *
1594  * @public @memberof GoEllipseMatchMsg
1595  * @version Introduced in firmware 4.2.4.7
1596  * @param msg Message object.
1597  * @return Ellipse match quality decision.
1598  */
1600 
1601 /**
1602  * Gets the ellipse match X offset.
1603  *
1604  * @public @memberof GoEllipseMatchMsg
1605  * @version Introduced in firmware 4.2.4.7
1606  * @param msg Message object.
1607  * @return Ellipse match X offset.
1608  */
1610 
1611 /**
1612  * Gets the ellipse match Y offset.
1613  *
1614  * @public @memberof GoEllipseMatchMsg
1615  * @version Introduced in firmware 4.2.4.7
1616  * @param msg Message object.
1617  * @return Ellipse match Y offset.
1618  */
1620 
1621 /**
1622  * Gets the ellipse match Z angle.
1623  *
1624  * @public @memberof GoEllipseMatchMsg
1625  * @version Introduced in firmware 4.2.4.7
1626  * @param msg Message object.
1627  * @return Ellipse match Z angle.
1628  */
1630 
1631 /**
1632 * Gets the ellipse match minor value.
1633 *
1634  * @public @memberof GoEllipseMatchMsg
1635  * @version Introduced in firmware 4.2.4.7
1636  * @param msg Message object.
1637  * @return Ellipse match minor value.
1638  */
1640 
1641 /**
1642  * Gets the ellipse match minor decision.
1643  *
1644  * @public @memberof GoEllipseMatchMsg
1645  * @version Introduced in firmware 4.2.4.7
1646  * @param msg Message object.
1647  * @return Ellipse match minor decision.
1648  */
1650 
1651 /**
1652  * Gets the ellipse match major value.
1653  *
1654  * @public @memberof GoEllipseMatchMsg
1655  * @version Introduced in firmware 4.2.4.7
1656  * @param msg Message object.
1657  * @return Ellipse match major value.
1658  */
1660 
1661 /**
1662  * Gets the ellipse match major decision.
1663  *
1664  * @public @memberof GoEllipseMatchMsg
1665  * @version Introduced in firmware 4.2.4.7
1666  * @param msg Message object.
1667  * @return Ellipse match major decision.
1668  */
1670 
1671 
1672 /**
1673  * @class GoBoundingBoxMatchMsg
1674  * @extends GoDataMsg
1675  * @ingroup GoSdk-DataChannel
1676  * @brief Represents a message containing bounding box based part matching results.
1677  */
1679 
1680 /**
1681  * Gets the bounding box match major value.
1682  *
1683  * @public @memberof GoBoundingBoxMatchMsg
1684  * @version Introduced in firmware 4.2.4.7
1685  * @param msg Message object.
1686  * @return Bounding box match major value.
1687  */
1689 
1690 /**
1691  * Gets the bounding box match X offset.
1692  *
1693  * @public @memberof GoBoundingBoxMatchMsg
1694  * @version Introduced in firmware 4.2.4.7
1695  * @param msg Message object.
1696  * @return Bounding box match X offset.
1697  */
1699 
1700 /**
1701  * Gets the bounding box match Y offset.
1702  *
1703  * @public @memberof GoBoundingBoxMatchMsg
1704  * @version Introduced in firmware 4.2.4.7
1705  * @param msg Message object.
1706  * @return Bounding box match Y offset.
1707  */
1709 
1710 /**
1711  * Gets the bounding box match Z angle.
1712  *
1713  * @public @memberof GoBoundingBoxMatchMsg
1714  * @version Introduced in firmware 4.2.4.7
1715  * @param msg Message object.
1716  * @return Bounding box match Z angle.
1717  */
1719 
1720 /**
1721  * Gets the bounding box match length value.
1722  *
1723  * @public @memberof GoBoundingBoxMatchMsg
1724  * @version Introduced in firmware 4.2.4.7
1725  * @param msg Message object.
1726  * @return Bounding box match length value.
1727  */
1729 
1730 /**
1731  * Gets the bounding box match length decision.
1732  *
1733  * @public @memberof GoBoundingBoxMatchMsg
1734  * @version Introduced in firmware 4.2.4.7
1735  * @param msg Message object.
1736  * @return Bounding box match length decision.
1737  */
1739 
1740 /**
1741  * Gets the bounding box match width value.
1742  *
1743  * @public @memberof GoBoundingBoxMatchMsg
1744  * @version Introduced in firmware 4.2.4.7
1745  * @param msg Message object.
1746  * @return Bounding box match width value.
1747  */
1749 
1750 /**
1751  * Gets the bounding box match width decision.
1752  *
1753  * @public @memberof GoBoundingBoxMatchMsg
1754  * @version Introduced in firmware 4.2.4.7
1755  * @param msg Message object.
1756  * @return Bounding box match width decision.
1757  */
1759 
1760 
1761 /**
1762  * @class GoEventMsg
1763  * @extends GoDataMsg
1764  * @ingroup GoSdk-DataChannel
1765  * @brief Represents a message containing an event (See GoEventType).
1766  */
1767 typedef GoDataMsg GoEventMsg;
1768 
1769 /**
1770  * Gets the event type.
1771  *
1772  * @public @memberof GoEventMsg
1773  * @version Introduced in firmware 4.5.3.57
1774  * @param msg Message object.
1775  * @return Event type.
1776  */
1778 
1779 
1780 /**
1781  * @class GoTracheidMsg
1782  * @extends GoDataMsg
1783  * @ingroup GoSdk-DataChannel
1784  * @brief Represents a data message containing a set of tracheid data.
1785  */
1786 typedef GoDataMsg GoTracheidMsg;
1787 
1788 /**
1789 * @struct GoTracheidEllipse
1790 * @extends kValue
1791 * @ingroup GoSdk-DataChannel
1792 * @brief Represents a tracheid ellipse.
1793 */
1794 typedef struct GoTracheidEllipse
1795 {
1796  k64f area; ///< Ellipse area
1797  k64f angle; ///< Ellipse angle
1798  k64f scatter; ///< Ellipse scatter
1799  k64f minor; ///< Ellipse minor
1800  k64f major; ///< Ellipse major
1801 
1803 
1804 /**
1805  * Gets the tracheid source.
1806  *
1807  * @public @memberof GoTracheidMsg
1808  * @version Introduced in firmware 4.5.3.57
1809  * @param msg Message object.
1810  * @return Tracheid source.
1811  */
1813 
1814 /**
1815  * Gets the count of tracheid arrays in this message.
1816  *
1817  * @public @memberof GoTracheidMsg
1818  * @version Introduced in firmware 4.6.4.66
1819  * @param msg Message object.
1820  * @return Count of tracheid arrays.
1821  */
1823 
1824 /**
1825 * Gets the count of ellipses in each tracheid array.
1826 *
1827 * @public @memberof GoTracheidMsg
1828  * @version Introduced in firmware 4.6.4.66
1829 * @param msg Message object.
1830 * @return Ellipse count.
1831 */
1833 
1834 /**
1835  * Gets the tracheid camera index.
1836  *
1837  * @public @memberof GoTracheidMsg
1838  * @version Introduced in firmware 4.5.3.57
1839  * @param msg Message object.
1840  * @return Tracheid camera index.
1841  */
1843 
1844 /**
1845  * Gets a pointer to a tracheid ellipse array.
1846  *
1847  * @public @memberof GoTracheidMsg
1848  * @version Introduced in firmware 4.6.4.66
1849  * @param msg Message object.
1850  * @param index Tracheid ellipse array index.
1851  * @return Tracheid ellipse array.
1852  */
1854 
1855 /**
1856 * @class GoPointFeatureMsg
1857 * @extends GoDataMsg
1858 * @ingroup GoSdk-DataChannel
1859 * @brief Represents a message containing Point Feature data.
1860 */
1862 
1863 /**
1864 * Gets the point feature identifier.
1865 *
1866 * @public @memberof GoPointFeatureMsg
1867 * @version Introduced in firmware 4.6.3.43
1868 * @param msg Message object.
1869 * @return Point Feature identifier.
1870 */
1872 
1873 /**
1874 * The point data in this message.
1875 *
1876 * @public @memberof GoPointFeatureMsg
1877 * @version Introduced in firmware 4.6.3.43
1878 * @param msg Message object.
1879 * @return Corrdinates of point feature in nanometers.
1880 */
1882 
1883 /**
1884 * @class GoLineFeatureMsg
1885 * @extends GoDataMsg
1886 * @ingroup GoSdk-DataChannel
1887 * @brief Represents a message containing Linear Feature data.
1888 */
1889 typedef GoDataMsg GoLineFeatureMsg;
1890 
1891 /**
1892 * Gets the linear feature identifier.
1893 *
1894 * @public @memberof GoLineFeatureMsg
1895 * @version Introduced in firmware 4.6.3.43
1896 * @param msg Message object.
1897 * @return Line Feature identifier.
1898 */
1900 
1901 /**
1902 * Gets a point on the linear feature.
1903 *
1904 * @public @memberof GoLineFeatureMsg
1905 * @version Introduced in firmware 4.6.3.43
1906 * @param msg Message object.
1907 * @return Position of the linear feature in nanometers.
1908 */
1910 
1911 /**
1912 * The direction vector of the linear feature.
1913 *
1914 * @public @memberof GoLineFeatureMsg
1915 * @version Introduced in firmware 4.6.3.43
1916 * @param msg Message object.
1917 * @return Direction of the linear feature.
1918 */
1920 
1921 /**
1922 * @class GoPlaneFeatureMsg
1923 * @extends GoDataMsg
1924 * @ingroup GoSdk-DataChannel
1925 * @brief Represents a message containing Planear Feature data.
1926 */
1928 
1929 /**
1930 * Gets the planear feature identifier.
1931 *
1932 * @public @memberof GoPlaneFeatureMsg
1933 * @version Introduced in firmware 4.6.3.43
1934 * @param msg Message object.
1935 * @return Plane Feature identifier.
1936 */
1938 
1939 /**
1940 * Gets the normal vector of the planear feature.
1941 *
1942 * @public @memberof GoPlaneFeatureMsg
1943 * @version Introduced in firmware 4.6.3.43
1944 * @param msg Message object.
1945 * @return The vector normal to the plane.
1946 */
1948 
1949 /**
1950 * Gets shortest distance from the origin to the plane. Is parallel to the normal vector.
1951 *
1952 * @public @memberof GoPlaneFeatureMsg
1953 * @version Introduced in firmware 4.6.3.43
1954 * @param msg Message object.
1955 * @return Shortest distance to the origin in nanometers.
1956 */
1958 
1959 /**
1960 * @class GoCircleFeatureMsg
1961 * @extends GoDataMsg
1962 * @ingroup GoSdk-DataChannel
1963 * @brief Represents a message containing circular feature data.
1964 */
1966 
1967 /**
1968 * Gets the circular feature identifier.
1969 *
1970 * @public @memberof GoCircleFeatureMsg
1971 * @version Introduced in firmware 4.6.3.43
1972 * @param msg Message object.
1973 * @return Circle Feature identifier.
1974 */
1976 
1977 /**
1978 * Gets the position of the center of the circular feature.
1979 *
1980 * @public @memberof GoCircleFeatureMsg
1981 * @version Introduced in firmware 4.6.3.43
1982 * @param msg Message object.
1983 * @return Position of the circular feature in nanometers
1984 */
1986 
1987 /**
1988 * Gets the normal vector of the circular feature.
1989 *
1990 * @public @memberof GoCircleFeatureMsg
1991 * @version Introduced in firmware 4.6.3.43
1992 * @param msg Message object.
1993 * @return The vector normal to the plane.
1994 */
1996 
1997 /**
1998 * Gets the radius of the circular feature.
1999 *
2000 * @public @memberof GoCircleFeatureMsg
2001 * @version Introduced in firmware 4.6.3.43
2002 * @param msg Message object.
2003 * @return Radius of the circle in nanometers.
2004 */
2006 
2007 /**
2008  * @class GoGenericMsg
2009  * @extends GoDataMsg
2010  * @ingroup GoSdk-DataChannel
2011  * @brief Represents a data message containing generic data.
2012  *
2013  * A generic message may contain either a raw byte buffer, or a kObject.
2014  * If the content is a kObject, then the buffer contains the byte stream containing
2015  * the serialized object, using the standard serialization schem (kDat6).
2016  */
2017 typedef GoDataMsg GoGenericMsg;
2018 
2019 /**
2020 * Gets the user defined data type.
2021 *
2022 * @public @memberof GoGenericMsg
2023 * @version Introduced in firmware 5.2.18.3
2024 * @param msg Message object.
2025 * @return Type ID.
2026 */
2028 
2029 /**
2030  * Returns whether or not the content is an kObject. If false,
2031  * the content is a raw byte buffer.
2032  *
2033  * @public @memberof GoGenericMsg
2034  * @version Introduced in firmware 5.2.18.3
2035  * @param msg Message object.
2036  * @return kTRUE if content is kObject. kFALSE if raw buffer.
2037  */
2039 
2040 /**
2041  * Returns the size of the raw buffer.
2042  *
2043  * @public @memberof GoGenericMsg
2044  * @version Introduced in firmware 5.2.18.3
2045  * @param msg Message object.
2046  * @return Size of the buffer in bytes.
2047  */
2049 
2050 /**
2051  * Returns a pointer to the raw buffer.
2052  *
2053  * @public @memberof GoGenericMsg
2054  * @version Introduced in firmware 5.2.18.3
2055  * @param msg Message object.
2056  * @return Address of the raw buffer.
2057  */
2058 GoFx(const void*) GoGenericMsg_BufferData(GoGenericMsg msg);
2059 
2060 /**
2061  * Returns the kObject content, if available.
2062  *
2063  * @public @memberof GoGenericMsg
2064  * @version Introduced in firmware 5.2.18.3
2065  * @param msg Message object.
2066  * @return Content object. kNULL if the content is a raw
2067  * buffer or if the data cannot be deserialized.
2068  */
2070 
2071 /**
2072 * Returns the serializer status after deserializing kObject content.
2073 *
2074 * Note that deserialization does not occur until GoGenericMsg_Object is
2075 * called for the first time.
2076 *
2077 * @public @memberof GoGenericMsg
2078 * @version Introduced in firmware 5.2.18.3
2079 * @param msg Message object.
2080 * @return Serializer status. kOK if not applicable.
2081 */
2083 
2084 #include <GoSdk/Messages/GoDataTypes.x.h>
2085 
2086 #endif
Represents an acquisition stamp.
Definition: GoDataTypes.h:82
k32u GoSurfacePointCloudMsg_ZResolution(GoSurfacePointCloudMsg msg)
Gets the surface z-resolution, in nanometers.
GoDataSource GoUniformProfileMsg_Source(GoUniformProfileMsg msg)
Gets the profile source.
GoStamp * GoStampMsg_At(GoStampMsg msg, kSize index)
Gets the stamp at the specified index.
k8u GoProfilePointCloudMsg_CameraIndex(GoProfilePointCloudMsg msg)
Gets the source camera index.
kSize GoGenericMsg_BufferSize(GoGenericMsg msg)
Returns the size of the raw buffer.
k64f scatter
Ellipse scatter.
Definition: GoDataTypes.h:1798
kSize GoSectionIntensityMsg_Count(GoSectionIntensityMsg msg)
Gets the count of section arrays in this message.
k32u GoSurfaceIntensityMsg_Exposure(GoSurfaceIntensityMsg msg)
Gets the exposure.
k8u GoTracheidMsg_CameraIndex(GoTracheidMsg msg)
Gets the tracheid camera index.
k32s GoSectionMsg_ZOffset(GoSectionMsg msg)
Gets the z-offset, in micrometers.
k32s GoRangeMsg_ZOffset(GoRangeMsg msg)
Gets the Range z-offset, in micrometers.
kSize GoProfileIntensityMsg_Count(GoProfileIntensityMsg msg)
Gets the count of profile intensity arrays in this message.
GoDecision decision
Measurement decision value.
Definition: GoDataTypes.h:1423
Represents a data message containing generic data.
kSize GoVideoMsg_Width(GoVideoMsg msg)
Gets the image width, in pixels.
k32u GoUniformSurfaceMsg_XResolution(GoUniformSurfaceMsg msg)
Gets the surface x-resolution, in nanometers.
kBool GoVideoMsg_IsFlippedX(GoVideoMsg msg)
Indicates whether the video message data requires horizontal flipping to match up with profile data.
kCfa GoVideoMsg_Cfa(GoVideoMsg msg)
Gets the image color filter array.
k64f GoBoundingBoxMatchMsg_YOffset(GoBoundingBoxMatchMsg msg)
Gets the bounding box match Y offset.
kSize GoSurfacePointCloudMsg_Length(GoSurfacePointCloudMsg msg)
Gets the length of the surface (row count).
k8u GoEllipseMatchMsg_MajorDecision(GoEllipseMatchMsg msg)
Gets the ellipse match major decision.
k64f GoBoundingBoxMatchMsg_ZAngle(GoBoundingBoxMatchMsg msg)
Gets the bounding box match Z angle.
k32u GoUniformSurfaceMsg_YResolution(GoUniformSurfaceMsg msg)
Gets the surface y-resolution, in nanometers.
k32s GoProfileIntensityMsg_XOffset(GoProfileIntensityMsg msg)
Gets the profile x-offset, in micrometers.
k8u GoBoundingBoxMatchMsg_WidthDecision(GoBoundingBoxMatchMsg msg)
Gets the bounding box match width decision.
kPoint3d64f GoPlaneFeatureMsg_Normal(GoPlaneFeatureMsg msg)
Gets the normal vector of the planear feature.
kSize GoSectionIntensityMsg_Width(GoSectionIntensityMsg msg)
Gets the count of points in each section array.
kPoint3d64f GoLineFeatureMsg_Direction(GoLineFeatureMsg msg)
The direction vector of the linear feature.
k32s GoSectionIntensityMsg_YPose(GoSectionIntensityMsg msg)
Gets the Y-Pose, in micrometers.
Represents a data message containing a video image.
k64f area
Ellipse area.
Definition: GoDataTypes.h:1796
kSize GoProfilePointCloudMsg_Count(GoProfilePointCloudMsg msg)
Gets the count of profile arrays in this message.
k16u GoCircleFeatureMsg_Id(GoCircleFeatureMsg msg)
Gets the circular feature identifier.
Represents a message containing edge based part matching results.
k32s GoSurfaceIntensityMsg_YOffset(GoSurfaceIntensityMsg msg)
Gets the surface y-offset, in micrometers.
k32u GoSectionMsg_ZResolution(GoSectionMsg msg)
Gets the z-resolution, in nanometers.
Represents a data message containing a set of profile intensity arrays.
kPoint3d64f GoCircleFeatureMsg_Normal(GoCircleFeatureMsg msg)
Gets the normal vector of the circular feature.
GoDataSource GoSurfacePointCloudMsg_Source(GoSurfacePointCloudMsg msg)
Gets the profile source.
Represents the possible measurement decision codes.
k8u GoEllipseMatchMsg_Decision(GoEllipseMatchMsg msg)
Gets the ellipse match decision.
k32u GoProfileIntensityMsg_Exposure(GoProfileIntensityMsg msg)
Gets the exposure.
k32u GoProfilePointCloudMsg_ZResolution(GoProfilePointCloudMsg msg)
Gets the profile z-resolution, in nanometers.
k32s GoSectionMsg_YPose(GoSectionMsg msg)
Gets the Y-Pose, in micrometers.
kSize GoSectionMsg_Count(GoSectionMsg msg)
Gets the count of section arrays in this message.
kPoint3d16s * GoSurfacePointCloudMsg_RowAt(GoSurfacePointCloudMsg msg, kSize index)
Gets a pointer to a surface row.
kSize GoSurfaceIntensityMsg_Width(GoSurfaceIntensityMsg msg)
Gets the width of the surface (column count).
GoEventType GoEventMsg_Type(GoEventMsg msg)
Gets the event type.
kSize GoSurfaceIntensityMsg_Length(GoSurfaceIntensityMsg msg)
Gets the length of the surface (row count).
k8u GoBoundingBoxMatchMsg_Decision(GoBoundingBoxMatchMsg msg)
Gets the bounding box match major value.
k64f minor
Ellipse minor.
Definition: GoDataTypes.h:1799
Represents a data source.
kPoint3d64f GoCircleFeatureMsg_Position(GoCircleFeatureMsg msg)
Gets the position of the center of the circular feature.
k32s GoUniformProfileMsg_ZOffset(GoUniformProfileMsg msg)
Gets the profile z-offset, in micrometers.
kSize GoSectionMsg_Width(GoSectionMsg msg)
Gets the count of points in each section array.
k32u GoProfilePointCloudMsg_Exposure(GoProfilePointCloudMsg msg)
Gets the exposure.
GoDataSource GoVideoMsg_Source(GoVideoMsg msg)
Gets the video source.
k32s GoSectionMsg_XPose(GoSectionMsg msg)
Gets the X-Pose, in micrometers.
Represents the measurement output decision values. Bit 0 represents the decision value,...
Represents a data message containing a set of range data.
k32u GoProfileIntensityMsg_XResolution(GoProfileIntensityMsg msg)
Gets the x-resolution, in nanometers.
k64f GoEllipseMatchMsg_XOffset(GoEllipseMatchMsg msg)
Gets the ellipse match X offset.
Represents a message containing Planear Feature data.
GoTracheidEllipse * GoTracheidMsg_At(GoTracheidMsg msg, kSize index)
Gets a pointer to a tracheid ellipse array.
k8u GoProfileIntensityMsg_CameraIndex(GoProfileIntensityMsg msg)
Gets the source camera index.
kSize GoVideoMsg_CameraIndex(GoVideoMsg msg)
Gets the camera index that the video data originates from.
Represents a data message containing a set of re-sampled profile arrays.
kSize GoRangeMsg_Count(GoRangeMsg msg)
Gets the count of Range data in this message.
GoDataSource GoSectionMsg_Source(GoSectionMsg msg)
Gets the section source.
kSize GoProfilePointCloudMsg_Width(GoProfilePointCloudMsg msg)
Gets the count of ranges in each profile array.
kSize GoRangeIntensityMsg_Count(GoRangeIntensityMsg msg)
Gets the count of range intensity data in this message.
k64f GoExposureCalMsg_Exposure(GoExposureCalMsg msg)
Gets the calibrated exposure.
k64u timestamp
Timestamp in internal units approximating microseconds where the true time in us = timestamp value / ...
Definition: GoDataTypes.h:85
void * GoVideoMsg_RowAt(GoVideoMsg msg, kSize rowIndex)
Gets a pointer to a row within the image.
kSize GoVideoMsg_PixelSize(GoVideoMsg msg)
Gets the image pixel size, in bytes.
k8u GoBoundingBoxMatchMsg_LengthDecision(GoBoundingBoxMatchMsg msg)
Gets the bounding box match length decision.
Represents a message containing a set of acquisition stamps.
k32s GoSectionIntensityMsg_AnglePose(GoSectionIntensityMsg msg)
Gets the Pose Angle, in microdegrees.
Represents a message containing bounding box based part matching results.
kSize GoStampMsg_Count(GoStampMsg msg)
Returns the number of stamps contained in this message.
kPoint16s * GoProfilePointCloudMsg_At(GoProfilePointCloudMsg msg, kSize index)
Gets a pointer to a profile array.
k64f major
Ellipse major.
Definition: GoDataTypes.h:1800
k32u GoVideoMsg_Exposure(GoVideoMsg msg)
Gets the exposure.
kSize GoUniformProfileMsg_Width(GoUniformProfileMsg msg)
Gets the count of points in each re-sampled profile array.
kSize GoVideoMsg_Height(GoVideoMsg msg)
Gets the image height, in pixels.
kPixelFormat GoVideoMsg_PixelFormat(GoVideoMsg msg)
Gets the pixel format descriptor.
k32u GoUniformProfileMsg_ZResolution(GoUniformProfileMsg msg)
Gets the profile z-resolution, in nanometers.
k64f GoEllipseMatchMsg_MajorValue(GoEllipseMatchMsg msg)
Gets the ellipse match major value.
k32u GoSectionIntensityMsg_Id(GoSectionIntensityMsg msg)
Gets the section ID.
k32u GoUniformProfileMsg_Exposure(GoUniformProfileMsg msg)
Gets the exposure.
k64s encoderAtZ
Encoder value latched at z-index mark (encoder ticks).
Definition: GoDataTypes.h:87
kSize GoTracheidMsg_Count(GoTracheidMsg msg)
Gets the count of tracheid arrays in this message.
k64u status
Bit mask containing frame information:
Definition: GoDataTypes.h:88
k16u GoLineFeatureMsg_Id(GoLineFeatureMsg msg)
Gets the linear feature identifier.
k64f GoCircleFeatureMsg_Radius(GoCircleFeatureMsg msg)
Gets the radius of the circular feature.
k32u GoSurfacePointCloudMsg_YResolution(GoSurfacePointCloudMsg msg)
Gets the surface y-resolution, in nanometers.
Essential SDK declarations.
kSize GoProfileIntensityMsg_Width(GoProfileIntensityMsg msg)
Gets the count of intensity values in each profile intensity array.
k32s GoUniformProfileMsg_XOffset(GoUniformProfileMsg msg)
Gets the profile x-offset, in micrometers.
k64f GoPlaneFeatureMsg_DistanceToOrigin(GoPlaneFeatureMsg msg)
Gets shortest distance from the origin to the plane.
k8u * GoSurfaceIntensityMsg_RowAt(GoSurfaceIntensityMsg msg, kSize index)
Gets a pointer to a surface intensity row.
k32u GoUniformSurfaceMsg_ZResolution(GoUniformSurfaceMsg msg)
Gets the surface z-resolution, in nanometers.
k16u GoMeasurementMsg_Id(GoMeasurementMsg msg)
Gets the measurement identifier.
GoDataSource GoProfileIntensityMsg_Source(GoProfileIntensityMsg msg)
Gets the profile source.
GoDataSource GoSectionIntensityMsg_Source(GoSectionIntensityMsg msg)
Gets the section source.
GoDataSource GoStampMsg_Source(GoStampMsg msg)
Gets the stamp source.
Represents a message containing exposure calibration results.
Represents a data message containing a set of section arrays.
k32s GoSurfacePointCloudMsg_YOffset(GoSurfacePointCloudMsg msg)
Gets the surface y-offset, in micrometers.
kBool GoVideoMsg_IsFlippedY(GoVideoMsg msg)
Indicates whether the video message data requires vertical flipping to match up with profile data.
k32u GoSurfacePointCloudMsg_Exposure(GoSurfacePointCloudMsg msg)
Gets the exposure.
Represents a video message pixel type.
k32s GoSurfacePointCloudMsg_ZOffset(GoSurfacePointCloudMsg msg)
Gets the surface z-offset, in micrometers.
k32u GoSectionIntensityMsg_Exposure(GoSectionIntensityMsg msg)
Gets the exposure.
k32u GoUniformProfileMsg_XResolution(GoUniformProfileMsg msg)
Gets the x-resolution, in nanometers.
kPoint3d64f GoPointFeatureMsg_Position(GoPointFeatureMsg msg)
The point data in this message.
k32u GoRangeMsg_Exposure(GoRangeMsg msg)
Gets the exposure.
GoDataSource GoRangeMsg_Source(GoRangeMsg msg)
Gets the Range source.
Represents a data message containing a set of profile intensity arrays.
k32u GoProfilePointCloudMsg_XResolution(GoProfilePointCloudMsg msg)
Gets the profile x-resolution, in nanometers.
Represents a data message containing a set of tracheid data.
k32u GoSurfaceIntensityMsg_YResolution(GoSurfaceIntensityMsg msg)
Gets the surface y-resolution, in nanometers.
k32u id
Source device ID.
Definition: GoDataTypes.h:99
GoDataMessageType GoDataMsg_Type(GoDataMsg message)
Returns the message type for a data channel message given in a GoDataSet.
k64f GoEllipseMatchMsg_ZAngle(GoEllipseMatchMsg msg)
Gets the ellipse match Z angle.
GoMeasurementData * GoMeasurementMsg_At(GoMeasurementMsg msg, kSize index)
Gets the measurement at the specified index.
Represents a data message containing a set of range intensity data.
Represents a data message containing a set of profile arrays.
kSize GoTracheidMsg_Width(GoTracheidMsg msg)
Gets the count of ellipses in each tracheid array.
k8u GoEdgeMatchMsg_QualityDecision(GoEdgeMatchMsg msg)
Gets the edge match quality decision.
Represents a data message containing a surface array.
k64u ptpTime
PTP time of the stamp. us since the PTP epoch (usually TAI)
Definition: GoDataTypes.h:102
Lists all data message types.
kSize GoMeasurementMsg_Count(GoMeasurementMsg msg)
Count of measurements in this message.
k32s GoSectionMsg_AnglePose(GoSectionMsg msg)
Gets the Pose Angle, in microdegrees.
Represents a message containing circular feature data.
k16u GoPlaneFeatureMsg_Id(GoPlaneFeatureMsg msg)
Gets the planear feature identifier.
kSize GoUniformProfileMsg_Count(GoUniformProfileMsg msg)
Gets the count of re-sampled profile arrays in this message.
k32s GoSectionIntensityMsg_XOffset(GoSectionIntensityMsg msg)
Gets the x-offset, in micrometers.
k64f GoBoundingBoxMatchMsg_LengthValue(GoBoundingBoxMatchMsg msg)
Gets the bounding box match length value.
Represents a data message containing a surface array.
kBool GoGenericMsg_IsObject(GoGenericMsg msg)
Returns whether or not the content is an kObject.
k64f angle
Ellipse angle.
Definition: GoDataTypes.h:1797
kStatus GoGenericMsg_SerializerStatus(GoGenericMsg msg)
Returns the serializer status after deserializing kObject content.
k32s GoUniformSurfaceMsg_XOffset(GoUniformSurfaceMsg msg)
Gets the surface x-offset, in micrometers.
kStatus GoDataMsg_SetStreamStepId(GoDataMsg message, k32s streamStepId)
Sets the identifier of the data stream from the source.
GoDataSource GoUniformSurfaceMsg_Source(GoUniformSurfaceMsg msg)
Gets the profile source.
GoDecisionCode decisionCode
Measurement decision code - relevant only when the value represents a failure.
Definition: GoDataTypes.h:1424
k64f GoEllipseMatchMsg_MinorValue(GoEllipseMatchMsg msg)
Gets the ellipse match minor value.
GoDataSource GoRangeIntensityMsg_Source(GoRangeIntensityMsg msg)
Gets the range intensity source.
kBool GoSurfacePointCloudMsg_IsAdjacent(GoSurfacePointCloudMsg msg)
Is the unresampled surface data adjacent/sorted?
Represents a message containing an alignment result.
k64f value
Measurement value.
Definition: GoDataTypes.h:1422
kStatus GoDataMsg_SetStreamStep(GoDataMsg message, GoDataStep streamStep)
Sets the source of the data stream.
k32u reserved32u
Reserved.
Definition: GoDataTypes.h:100
GoDataStep GoDataMsg_StreamStep(GoDataMsg message)
Gets the source of the data stream.
Represents a message containing a set of GoMeasurementData.
k64f GoEdgeMatchMsg_QualityValue(GoEdgeMatchMsg msg)
Gets the edge match quality value.
const void * GoGenericMsg_BufferData(GoGenericMsg msg)
Returns a pointer to the raw buffer.
Represents a base message sourced from the data channel.
kPoint3d64f GoLineFeatureMsg_Position(GoLineFeatureMsg msg)
Gets a point on the linear feature.
Represents a message containing an event (See GoEventType).
k32s GoSectionMsg_XOffset(GoSectionMsg msg)
Gets the x-offset, in micrometers.
Represents a message containing Point Feature data.
kStatus GoAlignMsg_Status(GoAlignMsg msg)
Gets the alignment result.
k8u * GoProfileIntensityMsg_At(GoProfileIntensityMsg msg, kSize index)
Gets a pointer to a profile intensity array.
k32s GoDataMsg_StreamStepId(GoDataMsg message)
Gets the identifier of the data stream from the source.
k32s GoSurfacePointCloudMsg_XOffset(GoSurfacePointCloudMsg msg)
Gets the surface x-offset, in micrometers.
k32s GoProfilePointCloudMsg_XOffset(GoProfilePointCloudMsg msg)
Gets the profile x-offset, in micrometers.
Represents a message containing ellipse based part matching results.
k32u GoSectionMsg_Exposure(GoSectionMsg msg)
Gets the exposure.
k64f GoEdgeMatchMsg_ZAngle(GoEdgeMatchMsg msg)
Gets the edge match Z angle.
k32u GoRangeIntensityMsg_Exposure(GoRangeIntensityMsg msg)
Gets the exposure.
k32u GoUniformSurfaceMsg_Exposure(GoUniformSurfaceMsg msg)
Gets the exposure.
k16s * GoRangeMsg_At(GoRangeMsg msg, kSize index)
Gets a pointer to Range data.
k64f GoBoundingBoxMatchMsg_XOffset(GoBoundingBoxMatchMsg msg)
Gets the bounding box match X offset.
GoPixelType GoVideoMsg_PixelType(GoVideoMsg msg)
Gets the data type used to represent an image pixel.
kSize GoUniformSurfaceMsg_Width(GoUniformSurfaceMsg msg)
Gets the width of the surface (column count).
Represents the event type represented by an event message.
kSize GoSurfacePointCloudMsg_Width(GoSurfacePointCloudMsg msg)
Gets the width of the surface (column count).
k8u * GoSectionIntensityMsg_At(GoSectionIntensityMsg msg, kSize index)
Gets a pointer to a Section intensity array.
GoDataSource GoTracheidMsg_Source(GoTracheidMsg msg)
Gets the tracheid source.
k16s * GoUniformSurfaceMsg_RowAt(GoUniformSurfaceMsg msg, kSize index)
Gets a pointer to a surface row.
k64s encoder
Position (encoder ticks).
Definition: GoDataTypes.h:86
k64f GoEllipseMatchMsg_YOffset(GoEllipseMatchMsg msg)
Gets the ellipse match Y offset.
k32s GoUniformSurfaceMsg_YOffset(GoUniformSurfaceMsg msg)
Gets the surface y-offset, in micrometers.
k64u frameIndex
Frame index (counts up from zero).
Definition: GoDataTypes.h:84
k32u GoSectionMsg_Id(GoSectionMsg msg)
Gets the section ID.
k32u GoRangeMsg_ZResolution(GoRangeMsg msg)
Gets the Range z-resolution, in nanometers.
k32u GoSectionIntensityMsg_XResolution(GoSectionIntensityMsg msg)
Gets the x-resolution, in nanometers.
k64f GoEdgeMatchMsg_YOffset(GoEdgeMatchMsg msg)
Gets the edge match Y offset.
k64f GoEdgeMatchMsg_XOffset(GoEdgeMatchMsg msg)
Gets the edge match X offset.
GoDataSource GoSurfaceIntensityMsg_Source(GoSurfaceIntensityMsg msg)
Gets the profile source.
k32u GoSectionMsg_XResolution(GoSectionMsg msg)
Gets the x-resolution, in nanometers.
k32u GoGenericMsg_UserType(GoGenericMsg msg)
Gets the user defined data type.
kSize GoVideoMsg_ExposureIndex(GoVideoMsg msg)
Gets the exposure index.
k32s GoSectionIntensityMsg_XPose(GoSectionIntensityMsg msg)
Gets the X-Pose, in micrometers.
Represents possible data streams.
k32u GoSurfacePointCloudMsg_XResolution(GoSurfacePointCloudMsg msg)
Gets the surface x-resolution, in nanometers.
Represents a tracheid ellipse.
Definition: GoDataTypes.h:1794
k32u GoSurfaceIntensityMsg_XResolution(GoSurfaceIntensityMsg msg)
Gets the surface x-resolution, in nanometers.
kSize GoUniformSurfaceMsg_Length(GoUniformSurfaceMsg msg)
Gets the length of the surface (row count).
k8u GoEdgeMatchMsg_Decision(GoEdgeMatchMsg msg)
Gets the edge match decision.
k16s * GoUniformProfileMsg_At(GoUniformProfileMsg msg, kSize index)
Gets a pointer to a re-sampled profile array.
k32s GoProfilePointCloudMsg_ZOffset(GoProfilePointCloudMsg msg)
Gets the profile z-offset, in micrometers.
Represents a data message containing a surface intensity array.
k8u GoEllipseMatchMsg_MinorDecision(GoEllipseMatchMsg msg)
Gets the ellipse match minor decision.
Represents a message containing Linear Feature data.
kStatus GoExposureCalMsg_Status(GoExposureCalMsg msg)
Gets the exposure calibration result.
k16u GoPointFeatureMsg_Id(GoPointFeatureMsg msg)
Gets the point feature identifier.
k32s GoSurfaceIntensityMsg_XOffset(GoSurfaceIntensityMsg msg)
Gets the surface x-offset, in micrometers.
k64f GoBoundingBoxMatchMsg_WidthValue(GoBoundingBoxMatchMsg msg)
Gets the bounding box match width value.
k64u reserved64u
Reserved.
Definition: GoDataTypes.h:101
k16s * GoSectionMsg_At(GoSectionMsg msg, kSize index)
Gets a pointer to a section array.
k32s GoUniformSurfaceMsg_ZOffset(GoUniformSurfaceMsg msg)
Gets the surface z-offset, in micrometers.
kObject GoGenericMsg_Object(GoGenericMsg msg)
Returns the kObject content, if available.
Represents a measurement result.
Definition: GoDataTypes.h:1420
GoDataSource GoProfilePointCloudMsg_Source(GoProfilePointCloudMsg msg)
Gets the profile source.
k8u * GoRangeIntensityMsg_At(GoRangeIntensityMsg msg, kSize index)
Gets a pointer to range intensity data.