Gocator API
GoSetup.h
Go to the documentation of this file.
1 /**
2  * @file GoSetup.h
3  * @brief Declares the GoSetup class.
4  *
5  * @internal
6  * Copyright (C) 2016-2023 by LMI Technologies Inc.
7  * Licensed under the MIT License.
8  * Redistributed files must retain the above copyright notice.
9  */
10 #ifndef GO_SDK_SETUP_H
11 #define GO_SDK_SETUP_H
12 
13 #include <GoSdk/GoSdkDef.h>
14 #include <GoSdk/GoLayout.h>
15 #include <GoSdk/GoAdvanced.h>
16 #include <GoSdk/GoMaterial.h>
19 #include <GoSdk/GoPartDetection.h>
20 #include <GoSdk/GoPartMatching.h>
21 #include <GoSdk/GoSections.h>
22 #include <GoSdk/GoTracheid.h>
23 
24 /**
25  * @class GoSetup
26  * @extends kObject
27  * @ingroup GoSdk
28  * @brief Represents a device configuration.
29  */
30 typedef kObject GoSetup;
31 
32 /**
33 * Sets the background suppression enabled value.
34 *
35 * @warning This API is experimental and may result in undefined behaviour if used incorrectly. See "Experimental Features" for more information.
36 *
37 * @public @memberof GoSetup
38 * @version Introduced in firmware 5.2.18.3
39 * @param setup GoSetup object.
40 * @param enabled Background supression enabled.
41 * @return Operation status.
42 */
44 #ifndef EXPERIMENTAL_FEATURES_ENABLED
46 #endif // !EXPERIMENTAL_FEATURES_ENABLED
47 
48 /**
49 * Gets the background suppression enabled value.
50 *
51 * @warning This API is experimental and may result in undefined behaviour if used incorrectly. See "Experimental Features" for more information.
52 *
53 * @public @memberof GoSetup
54 * @version Introduced in firmware 5.2.18.3
55 * @param setup GoSetup object.
56 * @return kTRUE if background supression is enabled, kFALSE otherwise.
57 */
59 #ifndef EXPERIMENTAL_FEATURES_ENABLED
61 #endif
62 
63 /**
64 * Sets the background suppression ratio value.
65 *
66 * @warning This API is experimental and may result in undefined behaviour if used incorrectly. See "Experimental Features" for more information.
67 *
68 * @public @memberof GoSetup
69 * @version Introduced in firmware 5.2.18.3
70 * @param setup GoSetup object.
71 * @param ratio Background supression ratio value.
72 * @return Operation status.
73 */
75 #ifndef EXPERIMENTAL_FEATURES_ENABLED
77 #endif
78 
79 /**
80 * Gets the background suppression ratio value.
81 *
82 * @warning This API is experimental and may result in undefined behaviour if used incorrectly. See "Experimental Features" for more information.
83 *
84 * @public @memberof GoSetup
85 * @version Introduced in firmware 5.2.18.3
86 * @param setup GoSetup object.
87 * @return Background suppression ratio.
88 */
90 #ifndef EXPERIMENTAL_FEATURES_ENABLED
92 #endif
93 
94 /**
95 * Enables the trigger burst.
96 *
97 * @warning This API is experimental and may result in undefined behaviour if used incorrectly. See "Experimental Features" for more information.
98 *
99 * @public @memberof GoSetup
100 * @version Introduced in firmware 4.8.2.76
101 * @param setup GoSetup object.
102 * @param enable enable state.
103 * @return Operation status.
104 */
106 #ifndef EXPERIMENTAL_FEATURES_ENABLED
108 #endif
109 
110 /**
111 * This API is experimental and may change in a future release
112 * Gets the trigger burst enabled state.
113 *
114 * @public @memberof GoSetup
115 * @version Introduced in firmware 4.8.2.76
116 * @param setup GoSetup object.
117 * @return Operation status.
118 */
120 #ifndef EXPERIMENTAL_FEATURES_ENABLED
122 #endif
123 
124 /**
125 * This API is experimental and may change in a future release
126 * Gets the trigger burst enabled state.
127 *
128 * @public @memberof GoSetup
129 * @version Introduced in firmware 4.8.2.76
130 * @param setup GoSetup object.
131 * @return Operation status.
132 */
134 #ifndef EXPERIMENTAL_FEATURES_ENABLED
136 #endif
137 
138 /**
139 * This API is experimental and may change in a future release
140 * Gets the trigger burst count.
141 *
142 * @public @memberof GoSetup
143 * @version Introduced in firmware 4.8.2.76
144 * @param setup GoSetup object.
145 * @return Burst count.
146 */
148 #ifndef EXPERIMENTAL_FEATURES_ENABLED
150 #endif
151 
152 /**
153 * This API is experimental and may change in a future release
154 * Sets the trigger burst count.
155 *
156 * @public @memberof GoSetup
157 * @version Introduced in firmware 4.8.2.76
158 * @param setup GoSetup object.
159 * @param count Burst count.
160 * @return Operation status.
161 */
163 #ifndef EXPERIMENTAL_FEATURES_ENABLED
165 #endif
166 
167 /**
168 * This API is experimental and may change in a future release
169 * Gets the trigger burst used value.
170 *
171 * @public @memberof GoSetup
172 * @version Introduced in firmware 4.8.2.76
173 * @param setup GoSetup object.
174 * @return Operation status.
175 */
177 #ifndef EXPERIMENTAL_FEATURES_ENABLED
179 #endif
180 
181 /**
182 * This API is experimental and may change in a future release
183 * Gets the laser sleep mode used value
184 *
185 * @public @memberof GoSetup
186 * @version Introduced in firmware 4.8.2.76
187 * @param setup GoSetup object.
188 * @return Operation status.
189 */
191 #ifndef EXPERIMENTAL_FEATURES_ENABLED
193 #endif
194 
195 /**
196 * This API is experimental and may change in a future release
197 * Enables laser sleep mode
198 *
199 * @public @memberof GoSetup
200 * @version Introduced in firmware 4.8.2.76
201 * @param setup GoSetup object.
202 * @param enable enable state
203 * @return Operation status.
204 */
206 #ifndef EXPERIMENTAL_FEATURES_ENABLED
208 #endif
209 
210 /**
211 * This API is experimental and may change in a future release
212 * Gets the laser sleep mode enabled state.
213 *
214 * @public @memberof GoSetup
215 * @version Introduced in firmware 4.8.2.76
216 * @param setup GoSetup object.
217 * @return Operation status.
218 */
220 #ifndef EXPERIMENTAL_FEATURES_ENABLED
222 #endif
223 
224 /**
225 * This API is experimental and may change in a future release
226 * Sets the time before the laser deactivates
227 *
228 * @public @memberof GoSetup
229 * @version Introduced in firmware 4.8.2.76
230 * @param setup GoSetup object.
231 * @param time idle time. (microseconds)
232 * @return Operation status.
233 */
234 GoFx(kStatus) GoSetup_SetLaserIdleTime(GoSetup setup, k64u time);
235 #ifndef EXPERIMENTAL_FEATURES_ENABLED
237 #endif
238 
239 /**
240 * This API is experimental and may change in a future release
241 * Gets the idle time before laser deactivation
242 *
243 * @public @memberof GoSetup
244 * @version Introduced in firmware 4.8.2.76
245 * @param setup GoSetup object.
246 * @return Operation status.
247 */
248 GoFx(k64u) GoSetup_LaserIdleTime(GoSetup setup);
249 #ifndef EXPERIMENTAL_FEATURES_ENABLED
251 #endif
252 
253 /**
254 * This API is experimental and may change in a future release
255 * Sets the encoder wakeup travel distance
256 *
257 * @public @memberof GoSetup
258 * @version Introduced in firmware 4.8.2.76
259 * @param setup GoSetup object.
260 * @param distance distance (mm)
261 * @return Operation status.
262 */
264 #ifndef EXPERIMENTAL_FEATURES_ENABLED
266 #endif
267 
268 /**
269 * This API is experimental and may change in a future release
270 * Gets the encoder wakeup travel distance
271 *
272 * @public @memberof GoSetup
273 * @version Introduced in firmware 4.8.2.76
274 * @param setup GoSetup object.
275 * @return Operation status.
276 */
278 #ifndef EXPERIMENTAL_FEATURES_ENABLED
280 #endif
281 
282 /**
283 * This API is experimental and may change in a future release
284 * Returns whether or not auto encoder reversal distance can be enabled.
285 *
286 * @public @memberof GoSetup
287 * @version Introduced in firmware 4.8.2.76
288 * @param setup GoSetup object.
289 * @return Used flag.
290 */
292 #ifndef EXPERIMENTAL_FEATURES_ENABLED
294 #endif
295 
296 /**
297 * This API is experimental and may change in a future release
298 * Returns whether or not auto encoder reversal distance is enabled.
299 *
300 * @public @memberof GoSetup
301 * @version Introduced in firmware 4.8.2.76
302 * @param setup GoSetup object.
303 * @return Enabled status.
304 */
306 #ifndef EXPERIMENTAL_FEATURES_ENABLED
308 #endif
309 
310 /**
311 * This API is experimental and may change in a future release
312 * Enables or disables auto encoder reversal distance.
313 *
314 * @public @memberof GoSetup
315 * @version Introduced in firmware 4.8.2.76
316 * @param setup GoSetup object.
317 * @param enabled Enabled flag.
318 * @return Operation status.
319 */
321 #ifndef EXPERIMENTAL_FEATURES_ENABLED
323 #endif
324 
325 /**
326 * This API is experimental and may change in a future release
327 * Gets the encoder reversal distance threshold used value
328 *
329 * @public @memberof GoSetup
330 * @version Introduced in firmware 4.8.2.76
331 * @param setup GoSetup object.
332 * @return Operation status.
333 */
335 #ifndef EXPERIMENTAL_FEATURES_ENABLED
337 #endif
338 
339 /**
340 * This API is experimental and may change in a future release
341 * Sets the encoder reversal distance threshold
342 *
343 * @public @memberof GoSetup
344 * @version Introduced in firmware 4.8.2.76
345 * @param setup GoSetup object.
346 * @param threshold threshold for encoder reversal distance before switching directions (specified as multiple of the spacing interval)
347 * @return Operation status.
348 */
349 GoFx(kStatus) GoSetup_SetReversalDistance(GoSetup setup, k64f threshold);
350 #ifndef EXPERIMENTAL_FEATURES_ENABLED
352 #endif
353 
354 /**
355 * This API is experimental and may change in a future release
356 * Gets the encoder reversal distance threshold.
357 *
358 * @public @memberof GoSetup
359 * @version Introduced in firmware 4.8.2.76
360 * @param setup GoSetup object.
361 * @return Operation status.
362 */
364 #ifndef EXPERIMENTAL_FEATURES_ENABLED
366 #endif
367 
368 /**
369 * This API is experimental and may change in a future release
370 * Gets the encoder reversal distance threshold system value.
371 *
372 * @public @memberof GoSetup
373 * @version Introduced in firmware 4.8.2.76
374 * @param setup GoSetup object.
375 * @return Operation status.
376 */
378 #ifndef EXPERIMENTAL_FEATURES_ENABLED
380 #endif
381 
382 /**
383 * Enables the temperature saftey of the sensor system.
384 *
385 * @public @memberof GoSetup
386  * @version Introduced in firmware 4.8.2.76
387 * @param setup GoSetup object.
388 * @param enable kBool.
389 * @return Operation status.
390 */
392 
393 /**
394  * Sets the scan mode.
395  *
396  * @public @memberof GoSetup
397  * @version Introduced in firmware 4.8.2.76
398  * @param setup GoSetup object.
399  * @param mode Operation mode.
400  * @return Operation status.
401  */
402 GoFx(kStatus) GoSetup_SetScanMode(GoSetup setup, GoMode mode);
403 
404 /**
405  * Gets the scan mode
406  *
407  * @public @memberof GoSetup
408  * @version Introduced in firmware 4.8.2.76
409  * @param setup GoSetup object.
410  * @return Operation mode.
411  */
412 GoFx(GoMode) GoSetup_ScanMode(GoSetup setup);
413 
414 /**
415  * Gets the scan mode option at the specified index.
416  *
417  * @public @memberof GoSetup
418  * @version Introduced in firmware 4.0.10.27
419  * @param setup GoSetup object.
420  * @param index The index with which to retrieve a mode option.
421  * @return Operation mode.
422  * @see GoSetup_ScanModeOptionCount
423  */
424 GoFx(GoMode) GoSetup_ScanModeOptionAt(GoSetup setup, kSize index);
425 
426 /**
427  * Gets the scan mode option count.
428  *
429  * @public @memberof GoSetup
430  * @version Introduced in firmware 4.0.10.27
431  * @param setup GoSetup object.
432  * @return Scan mode option count.
433  */
435 
436 /**
437  * Gets the user specified Uniform Spacing enabled state.
438  *
439  * @public @memberof GoSetup
440  * @note Supported with G2
441  * @version Introduced in firmware 4.0.10.27
442  * @param setup GoSetup object.
443  * @return kTRUE if enabled and kFALSE otherwise.
444  * @see GoSetup_UniformSpacingAvailable
445  */
447 
448 /**
449  * Sets the user specified Uniform Spacing enabled state.
450  *
451  * @public @memberof GoSetup
452  * @note Supported with G2
453  * @version Introduced in firmware 4.0.10.27
454  * @param setup GoSetup object.
455  * @param enable kTRUE to enable it and kFALSE to disable it.
456  * @return Operation status.
457  * @see GoSetup_UniformSpacingAvailable
458  */
460 
461 /**
462  * Gets a boolean representing whether or not the user specified Uniform Spacing setting is being used at the moment.
463  *
464  * @public @memberof GoSetup
465  * @note Supported with G2
466  * @version Introduced in firmware 4.0.10.27
467  * @param setup GoSetup object.
468  * @return kTRUE if the user specified Uniform Spacing setting is used and kFALSE otherwise.
469  */
471 
472 /**
473  * Gets the Uniform Spacing enabled system value.
474  *
475  * @public @memberof GoSetup
476  * @note Supported with G2
477  * @version Introduced in firmware 4.0.10.27
478  * @param setup GoSetup object.
479  * @return kTRUE if enabled and kFALSE otherwise.
480  * @see GoSetup_UniformSpacingAvailable
481  */
483 
484 /**
485  * Sets the state of the external input triggered encoder Z-pulse feature.
486  *
487  * @public @memberof GoSetup
488  * @version Introduced in firmware 4.1.3.106
489  * @param setup GoSetup object.
490  * @param enable kTRUE to enable it and kFALSE to disable it.
491  * @return Operation status.
492  */
494 
495 /**
496  * Gets the state of the external input triggered encoder Z-pulse feature.
497  *
498  * @public @memberof GoSetup
499  * @version Introduced in firmware 4.1.3.106
500  * @param setup GoSetup object.
501  * @return kTRUE if enabled and kFALSE otherwise.
502  */
504 
505 /**
506  * Sets the external input index for triggering encoder Z-pulse.
507  *
508  * @public @memberof GoSetup
509  * @version Introduced in firmware 5.2.18.3
510  * @param setup GoSetup object.
511  * @param index Index of external input to use.
512  * @return Operation status.
513  */
515 
516 /**
517  * Gets the external input index for triggering encoder Z-pulse.
518  *
519  * @public @memberof GoSetup
520  * @version Introduced in firmware 5.2.18.3
521  * @param setup GoSetup object.
522  * @return Index of external input used.
523  */
525 
526 /**
527  * Reports whether or not the external input index for encoder z-pulse triggering is used.
528  *
529  * @public @memberof GoSetup
530  * @version Introduced in firmware 5.2.18.3
531  * @param setup GoSetup object.
532  * @return Index is used or not.
533  */
535 
536 /**
537  * Sets whether the time and encoder values are preferred to come from the Master rather than from the sensor and its I/O port.
538  *
539  * @public @memberof GoSetup
540  * @version Introduced in firmware 4.8.2.76
541  * @param setup GoSetup object.
542  * @param enable kBool kTrue to enable kFalse to disable.
543  * @return kStatus if enabling has been successful
544  */
546 
547 /**
548  * Gets whether the time and encoder values are preferred to come from the Master rather than from the sensor and its I/O port.
549  *
550  * @public @memberof GoSetup
551  * @version Introduced in firmware 4.8.2.76
552  * @param setup GoSetup object.
553  * @return kTRUE if enabled and kFALSE otherwise.
554  */
556 
557 /**
558  * Gets the occlusion reduction enabled state.
559  *
560  * @public @memberof GoSetup
561  * @version Introduced in firmware 4.0.10.27
562  * @param setup GoSetup object.
563  * @return kTRUE if enabled and kFALSE otherwise.
564  */
566 
567 /**
568  * Sets the occlusion reduction enabled state.
569  *
570  * @public @memberof GoSetup
571  * @version Introduced in firmware 4.0.10.27
572  * @param setup GoSetup object.
573  * @param enable kTRUE to enable it and kFALSE to disable it.
574  * @return Operation status.
575  */
577 
578 /**
579  * Returns a boolean representing whether the user occlusion reduction configuration is used.
580  *
581  * @public @memberof GoSetup
582  * @version Introduced in firmware 4.3.3.124
583  * @param setup GoSetup object.
584  * @return kTRUE if used, or kFALSE if not used.
585  */
587 
588 /**
589  * Gets the occlusion reduction system value.
590  *
591  * @public @memberof GoSetup
592  * @version Introduced in firmware 4.3.3.124
593  * @param setup GoSetup object.
594  * @return kTRUE if enabled, or kFALSE if not.
595  */
597 
598 /**
599  * Gets the occlusion reduction algorithm.
600  *
601  * @public @memberof GoSetup
602  * @version Introduced in firmware 4.5.3.57
603  * @param setup GoSetup object.
604  * @return The occlusion reduction algorithm.
605  */
607 
608 /**
609  * Sets the occlusion reduction algorithm.
610  *
611  * @public @memberof GoSetup
612  * @version Introduced in firmware 4.5.3.57
613  * @param setup GoSetup object.
614  * @param alg The algorithm to use for occlusion reduction.
615  * @return Operation status.
616  */
618 
619 /**
620  * Returns a boolean representing whether the user occlusion reduction algorithm is used.
621  *
622  * @public @memberof GoSetup
623  * @version Introduced in firmware 4.5.3.57
624  * @param setup GoSetup object.
625  * @return kTRUE if used, or kFALSE if not used.
626  */
628 
629 //class - trigger
630 
631 /**
632  * Sets the system trigger units.
633  * Ignored if GoSetup_TriggerSource is time or encoder
634  *
635  * @public @memberof GoSetup
636  * @version Introduced in firmware 4.0.10.27
637  * @param setup GoSetup object.
638  * @param unit The system trigger unit.
639  * @return Operation status.
640  */
642 
643 /**
644  * Gets the system trigger units.
645  * Ignored if GoSetup_TriggerSource is time or encoder
646  *
647  * @public @memberof GoSetup
648  * @version Introduced in firmware 4.0.10.27
649  * @param setup GoSetup object.
650  * @return The system domain.
651  */
653 
654 /**
655  * Sets the trigger source for profile triggering.
656  *
657  * @public @memberof GoSetup
658  * @version Introduced in firmware 4.0.10.27
659  * @param setup GoSetup object.
660  * @param source Profile trigger source.
661  * @return Operation status.
662  */
664 
665 /**
666  * Gets the trigger source for profile triggering.
667  *
668  * @public @memberof GoSetup
669  * @version Introduced in firmware 4.0.10.27
670  * @param setup GoSetup object.
671  * @return Profile trigger source.
672  */
674 
675 /**
676  * Gets the count of available trigger source options.
677  *
678  * @public @memberof GoSetup
679  * @version Introduced in firmware 5.1.3.14
680  * @param setup GoSetup object.
681  * @return Count of trigger source options.
682  */
684 
685 /**
686  * Gets the trigger source option at the given index.
687  *
688  * @public @memberof GoSetup
689  * @version Introduced in firmware 5.1.3.14
690  * @param setup GoSetup object.
691  * @param index The index with which to retrieve the trigger source option.
692  * @return The trigger source option.
693  * @see GoSetup_TriggerSourceOptionCount
694  */
696 
697 /**
698  * Gets the flag indicating whether the external input trigger is being used.
699  *
700  * @public @memberof GoSetup
701  * @version Introduced in firmware 5.1.3.14
702  * @param setup GoSetup object.
703  * @return TRUE if being used, FALSE otherwise.
704  */
706 
707 /**
708  * Sets the external input index to trigger profile/surface capturing.
709  *
710  * @public @memberof GoSetup
711  * @version Introduced in firmware 5.1.3.14
712  * @param setup GoSetup object.
713  * @param index External digital input index.
714  * @return Operation status.
715  */
717 
718 /**
719  * Gets the external input index to trigger profile/surface capturing.
720  *
721  * @public @memberof GoSetup
722  * @version Introduced in firmware 5.1.3.14
723  * @param setup GoSetup object.
724  * @return External input index to trigger capturing.
725  */
727 
728 /**
729  * Gets the count of available external input trigger index options.
730  *
731  * @public @memberof GoSetup
732  * @version Introduced in firmware 5.1.3.14
733  * @param setup GoSetup object.
734  * @return Count of external input index options.
735  */
737 
738 /**
739  * Gets the external input trigger option at the given index.
740  *
741  * @public @memberof GoSetup
742  * @version Introduced in firmware 5.1.3.14
743  * @param setup GoSetup object.
744  * @param index The index with which to retrieve the external input index option.
745  * @return The external input index option.
746  * @see GoSetup_TriggerExternalInputIndexOptionCount
747  */
749 
750 /**
751  * Sets the trigger delay. Depending on GoDomain, units are uS or mm.
752  *
753  * @public @memberof GoSetup
754  * @version Introduced in firmware 4.0.10.27
755  * @param setup GoSetup object.
756  * @param delay Trigger delay (uS or mm).
757  * @return Operation status.
758  */
759 GoFx(kStatus) GoSetup_SetTriggerDelay(GoSetup setup, k64f delay);
760 
761 /**
762  * Gets the trigger delay. Depending on GoDomain, units are uS or mm.
763  *
764  * @public @memberof GoSetup
765  * @version Introduced in firmware 4.0.10.27
766  * @param setup GoSetup object.
767  * @return Trigger delay (uS or mm).
768  */
769 GoFx(k64f) GoSetup_TriggerDelay(GoSetup setup);
770 
771 /**
772  * Reports the minimum trigger delay, based on current settings.
773  * Depending on GoDomain, units are uS or mm.
774  *
775  * @public @memberof GoSetup
776  * @version Introduced in firmware 4.0.10.27
777  * @param setup GoSetup object.
778  * @return Minimum trigger delay (uS or mm).
779  */
781 
782 /**
783  * Reports the maximum trigger delay, based on current settings.
784  * Depending on GoDomain, units are uS or mm.
785  *
786  * @public @memberof GoSetup
787  * @version Introduced in firmware 4.0.10.27
788  * @param setup GoSetup object.
789  * @return Maximum trigger delay (uS or mm).
790  */
792 
793 /**
794  * Sets the trigger gate feature.
795  *
796  * @public @memberof GoSetup
797  * @version Introduced in firmware 4.0.10.27
798  * @param setup GoSetup object.
799  * @param enable Enables trigger gate operation.
800  * @return Operation status.
801  */
802 GoFx(kStatus) GoSetup_EnableTriggerGate(GoSetup setup, kBool enable);
803 
804 /**
805  * Reports whether the trigger gate feature is currently enabled.
806  *
807  * @public @memberof GoSetup
808  * @version Introduced in firmware 4.0.10.27
809  * @param setup GoSetup object.
810  * @return kTRUE if enabled, or kFALSE if disabled.
811  */
813 
814 /**
815  * Gets the system value representing whether or not the user specified trigger gate enabled setting is being used at the moment.
816  *
817  * @public @memberof GoSetup
818  * @version Introduced in firmware 4.0.10.27
819  * @param setup GoSetup object.
820  * @return kTRUE if the user specified setting is used and kFALSE otherwise.
821  */
823 
824 /**
825  * Reports the trigger gate enabled system value.
826  *
827  * @public @memberof GoSetup
828  * @version Introduced in firmware 4.0.10.27
829  * @param setup GoSetup object.
830  * @return kTRUE if enabled, or kFALSE if disabled.
831  */
833 
834 /**
835  * Enables or disables operation at full frame rate (ignoring frame rate setting).
836  *
837  * @public @memberof GoSetup
838  * @version Introduced in firmware 4.0.10.27
839  * @param setup GoSetup object.
840  * @param enable Enables full frame rate operation.
841  * @return Operation status.
842  */
843 GoFx(kStatus) GoSetup_EnableMaxFrameRate(GoSetup setup, kBool enable);
844 
845 /**
846  * Reports whether or not system is configured to operate at full frame rate.
847  *
848  * @public @memberof GoSetup
849  * @version Introduced in firmware 4.0.10.27
850  * @param setup GoSetup object.
851  * @return True if system operates at full frame rate; false otherwise.
852  */
854 
855 /**
856  * Sets the current frame rate for time-based triggering. The maximum frame
857  * rate option must be disabled to use the value set in this function.
858  *
859  * @public @memberof GoSetup
860  * @version Introduced in firmware 4.0.10.27
861  * @param setup GoSetup object.
862  * @param frameRate Frame Rate value (Hz).
863  * @return Operation status.
864  * @see GoSetup_EnableMaxFrameRate, GoSetup_MaxFrameRateEnabled
865  */
866 GoFx(kStatus) GoSetup_SetFrameRate(GoSetup setup, k64f frameRate);
867 
868 /**
869  * Reports the currently configured frame rate.
870  *
871  * @public @memberof GoSetup
872  * @version Introduced in firmware 4.0.10.27
873  * @param setup GoSetup object.
874  * @return Maximum frame rate (Hz).
875  */
876 GoFx(k64f) GoSetup_FrameRate(GoSetup setup);
877 
878 /**
879 * Reports the current frame rate of Tracheid data
880 *
881 * @public @memberof GoSetup
882 * @version Introduced in firmware 4.8.0.35
883 * @param setup GoSetup object.
884 * @return Tracheid frame rate (Hz).
885 */
886 GoFx(k64f) GoSetup_TracheidRate(GoSetup setup);
887 
888 /**
889 * Reports the current frame rate of normal (range, profile, or surface) data
890 *
891 * @public @memberof GoSetup
892 * @version Introduced in firmware 4.8.0.35
893 * @param setup GoSetup object.
894 * @return Frame Data Rate (Hz).
895 */
896 GoFx(k64f) GoSetup_FrameDataRate(GoSetup setup);
897 
898 /**
899  * Constraint for the minimum valid value of the Frame Rate setting.
900  *
901  * @public @memberof GoSetup
902  * @version Introduced in firmware 4.0.10.27
903  * @param setup GoSetup object.
904  * @return Minimum valid Frame Rate setting (Hz).
905  */
907 
908 /**
909  * Constraint for the maximum valid value of the Frame Rate setting.
910  *
911  * @public @memberof GoSetup
912  * @version Introduced in firmware 4.0.10.27
913  * @param setup GoSetup object.
914  * @return Maximum valid Frame Rate setting (Hz).
915  */
917 
918 /**
919  * Sets the encoder trigger mode.
920  *
921  * @public @memberof GoSetup
922  * @version Introduced in firmware 4.0.10.27
923  * @param setup GoSetup object.
924  * @param mode Encoder trigger mode.
925  * @return Operation status.
926  */
928 
929 /**
930  * Gets the encoder trigger mode.
931  *
932  * @public @memberof GoSetup
933  * @version Introduced in firmware 4.0.10.27
934  * @param setup GoSetup object.
935  * @return Encoder trigger mode.
936  */
938 
939 /**
940  * Sets the current encoder period for encoder-based triggering.
941  *
942  * @public @memberof GoSetup
943  * @version Introduced in firmware 4.0.10.27
944  * @param setup GoSetup object.
945  * @param period Encoder period (mm).
946  * @return Operation status.
947  */
948 GoFx(kStatus) GoSetup_SetEncoderSpacing(GoSetup setup, k64f period);
949 
950 /**
951  * Gets the current encoder period for encoder-based triggering.
952  *
953  * @public @memberof GoSetup
954  * @version Introduced in firmware 4.0.10.27
955  * @param setup GoSetup object.
956  * @return Encoder period (mm).
957  */
958 GoFx(k64f) GoSetup_EncoderSpacing(GoSetup setup);
959 
960 /**
961  * Constraint for the minimum valid value of the Encoder Period setting.
962  *
963  * @public @memberof GoSetup
964  * @version Introduced in firmware 4.0.10.27
965  * @param setup GoSetup object.
966  * @return Minimum valid Encoder Period setting (mm).
967  */
969 
970 /**
971  * Constraint for the maximum valid value of the Encoder Period setting.
972  *
973  * @public @memberof GoSetup
974  * @version Introduced in firmware 4.0.10.27
975  * @param setup GoSetup object.
976  * @return Maximum valid Encoder Period setting (mm).
977  */
979 
980 /**
981  * Enables profile intensity collection.
982  *
983  * @public @memberof GoSetup
984  * @version Introduced in firmware 4.0.10.27
985  * @param setup GoSetup object.
986  * @param enable kTRUE to enable, or kFALSE to disable.
987  * @return Operation status.
988  */
989 GoFx(kStatus) GoSetup_EnableIntensity(GoSetup setup, kBool enable);
990 
991 /**
992  * Reports whether the profile intensity collection is enabled.
993  *
994  * @public @memberof GoSetup
995  * @version Introduced in firmware 4.0.10.27
996  * @param setup GoSetup object.
997  * @return kTRUE if enabled, or kFALSE if disabled.
998  */
1000 
1001 /**
1002 * Enables flicker reduction mode.
1003 *
1004 * @public @memberof GoSetup
1005 * @version Introduced in firmware 4.6.2.31
1006 * @param setup GoSetup object.
1007 * @param enable kTRUE to enable, or kFALSE to disable.
1008 * @return Operation status.
1009 */
1010 GoFx(kStatus) GoSetup_EnableFlickerFreeMode(GoSetup setup, kBool enable);
1011 
1012 
1013 /**
1014 * Reports whether flicker free mode is enabled.
1015 *
1016 * @public @memberof GoSetup
1017 * @version Introduced in firmware 4.6.2.31
1018 * @param setup GoSetup object.
1019 * @return kTRUE if enabled, or kFALSE if disabled.
1020 */
1022 
1023 /**
1024 * Reports whether flicker free mode is available for use on this sensor.
1025 *
1026 * @public @memberof GoSetup
1027 * @version Introduced in firmware 4.6.2.31
1028 * @param setup GoSetup object.
1029 * @return kTRUE if available, or kFALSE if not.
1030 */
1032 
1033 //class - alignment
1034 
1035 /**
1036  * Gets the input trigger enabled state.
1037  *
1038  * @public @memberof GoSetup
1039  * @version Introduced in firmware 4.0.10.27
1040  * @param setup GoSetup object.
1041  * @return kTRUE if enabled and kFALSE otherwise.
1042  */
1044 
1045 /**
1046  * Returns a boolean representing whether the user input trigger configuration is used.
1047  *
1048  * @public @memberof GoSetup
1049  * @version Introduced in firmware 4.3.3.124
1050  * @param setup GoSetup object.
1051  * @return kTRUE if used, or kFALSE if not used.
1052  */
1054 
1055 /**
1056  * Gets the input trigger system value.
1057  *
1058  * @public @memberof GoSetup
1059  * @version Introduced in firmware 4.3.3.124
1060  * @param setup GoSetup object.
1061  * @return kTRUE if enabled, or kFALSE if not.
1062  */
1064 
1065 /**
1066  * Sets the input trigger enabled state.
1067  *
1068  * @public @memberof GoSetup
1069  * @version Introduced in firmware 4.0.10.27
1070  * @param setup GoSetup object.
1071  * @param enable kTRUE to enable it and kFALSE to disable it.
1072  */
1073 GoFx(kStatus) GoSetup_EnableInputTrigger(GoSetup setup, kBool enable);
1074 
1075 /**
1076  * Indicates whether alignment can be used.
1077  *
1078  * @public @memberof GoSetup
1079  * @version Introduced in firmware 4.5.3.57
1080  * @param setup GoSetup object.
1081  * @return True if alignment is available for use.
1082  */
1083 GoFx(kBool) GoSetup_AlignmentUsed(GoSetup setup);
1084 
1085 /**
1086  * Sets the type used for alignment.
1087  *
1088  * @public @memberof GoSetup
1089  * @version Introduced in firmware 4.0.10.27
1090  * @param setup GoSetup object.
1091  * @param type Alignment type (stationary or moving).
1092  * @return Operation status.
1093  */
1095 
1096 /**
1097  * Gets the type used for alignment calibration.
1098  *
1099  * @public @memberof GoSetup
1100  * @version Introduced in firmware 4.0.10.27
1101  * @param setup GoSetup object.
1102  * @return Alignment type (stationary or moving).
1103  */
1105 
1106 /**
1107  * Gets the alignment type option at the given index.
1108  *
1109  * @public @memberof GoSetup
1110  * @version Introduced in firmware 4.0.10.27
1111  * @param setup GoSetup object.
1112  * @param index The index with which to retrieve an alignment type option.
1113  * @return Alignment type option.
1114  * @see GoSetup_AlignmentTypeOptionCount
1115  */
1117 
1118 /**
1119  * Gets the alignment type option count.
1120  *
1121  * @public @memberof GoSetup
1122  * @version Introduced in firmware 4.0.10.27
1123  * @param setup GoSetup object.
1124  * @return Alignment type option count.
1125  */
1127 
1128 /**
1129  * Enables encoder calibration after alignment.
1130  *
1131  * @public @memberof GoSetup
1132  * @version Introduced in firmware 4.0.10.27
1133  * @param setup GoSetup object.
1134  * @param enabled kTRUE to enable encoder calibration after alignment, kFALSE to disable it.
1135  * @return Operation status.
1136  */
1138 
1139 /**
1140  * Gets the value of the post alignment encoder calibration setting.
1141  *
1142  * @public @memberof GoSetup
1143  * @version Introduced in firmware 4.0.10.27
1144  * @param setup GoSetup object.
1145  * @return kTRUE if post alignment encoder calibration is enabled. kFALSE otherwise.
1146  */
1148 
1149 /**
1150  * Sets the target type used for stationary alignment calibration.
1151  *
1152  * @public @memberof GoSetup
1153  * @version Introduced in firmware 4.0.10.27
1154  * @param setup GoSetup object.
1155  * @param target Alignment target type.
1156  * @return Operation status.
1157  */
1159 
1160 /**
1161  * Gets the target type used for stationary alignment calibration.
1162  *
1163  * @public @memberof GoSetup
1164  * @version Introduced in firmware 4.0.10.27
1165  * @param setup GoSetup object.
1166  * @return Alignment target type.
1167  */
1169 
1170 /**
1171  * Gets the stationary alignment target option count.
1172  *
1173  * @public @memberof GoSetup
1174  * @version Introduced in firmware 4.0.10.27
1175  * @param setup GoSetup object.
1176  * @return The alignment target count.
1177  */
1179 
1180 /**
1181  * Gets the stationary alignment target option at the given index.
1182  *
1183  * @public @memberof GoSetup
1184  * @version Introduced in firmware 4.0.10.27
1185  * @param setup GoSetup object.
1186  * @param index The index with which to retrieve an alignment target.
1187  * @return The alignment target option.
1188  * @see GoSetup_AlignmentStationaryTargetOptionCount
1189  */
1191 
1192 /**
1193  * Sets the target type used for moving alignment calibration.
1194  *
1195  * @public @memberof GoSetup
1196  * @note Supported with G1, G2
1197  * @version Introduced in firmware 4.0.10.27
1198  * @param setup GoSetup object.
1199  * @param target Alignment target type.
1200  * @return Operation status.
1201  */
1203 
1204 /**
1205  * Gets the target type used for moving alignment calibration.
1206  *
1207  * @public @memberof GoSetup
1208  * @note Supported with G1, G2
1209  * @version Introduced in firmware 4.0.10.27
1210  * @param setup GoSetup object.
1211  * @return Alignment target type.
1212  */
1214 
1215 /**
1216  * Gets the moving alignment target option count.
1217  *
1218  * @public @memberof GoSetup
1219  * @note Supported with G1, G2
1220  * @version Introduced in firmware 4.0.10.27
1221  * @param setup GoSetup object.
1222  * @return The alignment target count.
1223  */
1225 
1226 /**
1227 * Gets the moving alignment target option at the given index.
1228 *
1229 * @public @memberof GoSetup
1230 * @note Supported with G1, G2
1231 * @version Introduced in firmware 4.0.10.27
1232 * @param setup GoSetup object.
1233 * @param index The index with which to retrieve an alignment target.
1234 * @return The alignment target option.
1235 * @see GoSetup_AlignmentMovingTargetOptionCount
1236 */
1238 
1239 /**
1240  * Sets the diameter of the disk used for travel calibration.
1241  *
1242  * @public @memberof GoSetup
1243  * @note Supported with G1, G2
1244  * @version Introduced in firmware 4.0.10.27
1245  * @param setup GoSetup object.
1246  * @param diameter Disk diameter (mm).
1247  * @return Operation status.
1248  */
1249 GoFx(kStatus) GoSetup_SetDiskDiameter(GoSetup setup, k64f diameter);
1250 
1251 /**
1252  * Gets the diameter of the disk used for travel calibration.
1253  *
1254  * @public @memberof GoSetup
1255  * @note Supported with G1, G2
1256  * @version Introduced in firmware 4.0.10.27
1257  * @param setup GoSetup object.
1258  * @return Disk diameter (mm).
1259  */
1260 GoFx(k64f) GoSetup_DiskDiameter(GoSetup setup);
1261 
1262 /**
1263  * Sets the height of the disk used for travel calibration.
1264  *
1265  * @public @memberof GoSetup
1266  * @note Supported with G1, G2
1267  * @version Introduced in firmware 4.0.10.27
1268  * @param setup GoSetup object.
1269  * @param height Disk height (mm).
1270  * @return Operation status.
1271  */
1272 GoFx(kStatus) GoSetup_SetDiskHeight(GoSetup setup, k64f height);
1273 
1274 /**
1275  * Gets the height of the disk used for travel calibration.
1276  *
1277  * @public @memberof GoSetup
1278  * @note Supported with G1, G2
1279  * @version Introduced in firmware 4.0.10.27
1280  * @param setup GoSetup object.
1281  * @return Disk height (mm).
1282  */
1283 GoFx(k64f) GoSetup_DiskHeight(GoSetup setup);
1284 
1285 /**
1286  * Sets the width of the bar used for travel calibration.
1287  *
1288  * @public @memberof GoSetup
1289  * @version Introduced in firmware 4.0.10.27
1290  * @param setup GoSetup object.
1291  * @param width Bar width (mm).
1292  * @return Operation status.
1293  */
1294 GoFx(kStatus) GoSetup_SetBarWidth(GoSetup setup, k64f width);
1295 
1296 /**
1297  * Gets the width of the bar used for travel calibration.
1298  *
1299  * @public @memberof GoSetup
1300  * @version Introduced in firmware 4.0.10.27
1301  * @param setup GoSetup object.
1302  * @return Bar width (mm).
1303  */
1304 GoFx(k64f) GoSetup_BarWidth(GoSetup setup);
1305 
1306 /**
1307  * Sets the height of the bar used for travel calibration.
1308  *
1309  * @public @memberof GoSetup
1310  * @version Introduced in firmware 4.0.10.27
1311  * @param setup GoSetup object.
1312  * @param height Bar height (mm).
1313  * @return Operation status.
1314  */
1315 GoFx(kStatus) GoSetup_SetBarHeight(GoSetup setup, k64f height);
1316 
1317 /**
1318  * Gets the height of the bar used for travel calibration.
1319  *
1320  * @public @memberof GoSetup
1321  * @version Introduced in firmware 4.0.10.27
1322  * @param setup GoSetup object.
1323  * @return Bar height (mm).
1324  */
1325 GoFx(k64f) GoSetup_BarHeight(GoSetup setup);
1326 
1327 /**
1328 * Indicates if the hole count can be modified by the user.
1329 *
1330 * @public @memberof GoSetup
1331 * @version Introduced in firmware 4.6.3.51
1332 * @param setup GoSetup object.
1333 * @return kTRUE if used. kFALSE if not.
1334 */
1336 
1337 /**
1338 * Gets the bar hole count system value.
1339 *
1340 * @public @memberof GoSetup
1341 * @version Introduced in firmware 4.6.3.51
1342 * @param setup GoSetup object.
1343 * @return Number of columns.
1344 */
1346 
1347 /**
1348  * Sets the number of holes that are defined on the calibration bar.
1349  *
1350  * @public @memberof GoSetup
1351  * @version Introduced in firmware 4.0.10.27
1352  * @param setup GoSetup object.
1353  * @param count Hole count.
1354  * @return Operation status.
1355  */
1356 GoFx(kStatus) GoSetup_SetBarHoleCount(GoSetup setup, kSize count);
1357 
1358 /**
1359  * Gets the number of holes that are defined on the calibration bar.
1360  *
1361  * @public @memberof GoSetup
1362  * @version Introduced in firmware 4.0.10.27
1363  * @param setup GoSetup object.
1364  * @return Hole count.
1365  */
1366 GoFx(kSize) GoSetup_BarHoleCount(GoSetup setup);
1367 
1368 /**
1369 * Indicates if the hole distance can be modified by the user.
1370 *
1371 * @public @memberof GoSetup
1372 * @version Introduced in firmware 4.6.3.51
1373 * @param setup GoSetup object.
1374 * @return kTRUE if used. kFALSE if not.
1375 */
1377 
1378 /**
1379  * Sets the distance between holes that are defined on the calibration bar.
1380  *
1381  * @public @memberof GoSetup
1382  * @version Introduced in firmware 4.0.10.27
1383  * @param setup GoSetup object.
1384  * @param distance Hole distance (mm).
1385  * @return Operation status.
1386  */
1387 GoFx(kStatus) GoSetup_SetBarHoleDistance(GoSetup setup, k64f distance);
1388 
1389 /**
1390  * Gets the distance between holes that are defined on the calibration bar.
1391  *
1392  * @public @memberof GoSetup
1393  * @version Introduced in firmware 4.0.10.27
1394  * @param setup GoSetup object.
1395  * @return Hole distance (mm).
1396  */
1397 GoFx(k64f) GoSetup_BarHoleDistance(GoSetup setup);
1398 
1399 /**
1400 * Indicates if the hole diameter can be modified by the user.
1401 *
1402 * @public @memberof GoSetup
1403 * @version Introduced in firmware 4.6.3.55
1404 * @param setup GoSetup object.
1405 * @return kTRUE if used. kFALSE if not.
1406 */
1408 
1409 /**
1410  * Sets the diameter of holes that are defined on the calibration bar.
1411  *
1412  * @public @memberof GoSetup
1413  * @version Introduced in firmware 4.0.10.27
1414  * @param setup GoSetup object.
1415  * @param diameter Hole diameter (mm).
1416  * @return Operation status.
1417  */
1418 GoFx(kStatus) GoSetup_SetBarHoleDiameter(GoSetup setup, k64f diameter);
1419 
1420 /**
1421  * Gets the diameter of holes that are defined on the calibration bar.
1422  *
1423  * @public @memberof GoSetup
1424  * @version Introduced in firmware 4.0.10.27
1425  * @param setup GoSetup object.
1426  * @return Hole diameter (mm).
1427  */
1428 GoFx(k64f) GoSetup_BarHoleDiameter(GoSetup setup);
1429 
1430 /**
1431  * Sets the degrees of freedom used for bar alignment calibration.
1432  *
1433  * @public @memberof GoSetup
1434  * @version Introduced in firmware 4.7.3.70
1435  * @param setup GoSetup object.
1436  * @param dof Alignment degrees of freedom for the bar.
1437  * @return Operation status.
1438  */
1440 
1441 /**
1442  * Gets the degrees of freedom used for bar alignment calibration.
1443  *
1444  * @public @memberof GoSetup
1445  * @version Introduced in firmware 4.7.3.70
1446  * @param setup GoSetup object.
1447  * @return Degrees of freedom setting for the bar alignment.
1448  */
1450 
1451 /**
1452 * Indicates if the degrees of freedom for bar alignment can be modified by the user.
1453 *
1454 * @public @memberof GoSetup
1455 * @version Introduced in firmware 4.7.3.70
1456 * @param setup GoSetup object.
1457 * @return kTRUE if used. kFALSE if not.
1458 */
1460 
1461 /**
1462  * Gets the degrees of freedom bar alignment target option count.
1463  *
1464  * @public @memberof GoSetup
1465  * @version Introduced in firmware 4.7.3.70
1466  * @param setup GoSetup object.
1467  * @return The bar alignment degrees of freedom option count.
1468  */
1470 
1471 /**
1472  * Gets the bar alignment degrees of freedom option at the given index.
1473  *
1474  * @public @memberof GoSetup
1475  * @version Introduced in firmware 4.7.3.70
1476  * @param setup GoSetup object.
1477  * @param index The index with which to retrieve the degree of freedom.
1478  * @return The degrees of freedom option set at the index.
1479  */
1481 
1482 /**
1483  * Sets the height of the plate used for travel calibration.
1484  *
1485  * @public @memberof GoSetup
1486  * @version Introduced in firmware 4.0.10.27
1487  * @param setup GoSetup object.
1488  * @param height Plate height (mm).
1489  * @return Operation status.
1490  */
1491 GoFx(kStatus) GoSetup_SetPlateHeight(GoSetup setup, k64f height);
1492 
1493 /**
1494  * Gets the height of the plate used for travel calibration.
1495  *
1496  * @public @memberof GoSetup
1497  * @version Introduced in firmware 4.0.10.27
1498  * @param setup GoSetup object.
1499  * @return Plate height (mm).
1500  */
1501 GoFx(k64f) GoSetup_PlateHeight(GoSetup setup);
1502 
1503 /**
1504  * Sets the number of holes that are defined on the calibration plate.
1505  *
1506  * @public @memberof GoSetup
1507  * @version Introduced in firmware 4.0.10.27
1508  * @param setup GoSetup object.
1509  * @param count Hole count.
1510  * @return Operation status.
1511  */
1512 GoFx(kStatus) GoSetup_SetPlateHoleCount(GoSetup setup, kSize count);
1513 
1514 /**
1515  * Gets the number of holes that are defined on the calibration plate.
1516  *
1517  * @public @memberof GoSetup
1518  * @version Introduced in firmware 4.0.10.27
1519  * @param setup GoSetup object.
1520  * @return Hole count.
1521  */
1522 GoFx(kSize) GoSetup_PlateHoleCount(GoSetup setup);
1523 
1524 /**
1525  * Sets the diameter of the reference hole defined on the calibration plate.
1526  *
1527  * @public @memberof GoSetup
1528  * @version Introduced in firmware 4.0.10.27
1529  * @param setup GoSetup object.
1530  * @param diameter Hole diameter (mm).
1531  * @return Operation status.
1532  */
1533 GoFx(kStatus) GoSetup_SetPlateRefHoleDiameter(GoSetup setup, k64f diameter);
1534 
1535 /**
1536  * Gets the diameter of the reference hole defined on the calibration plate.
1537  *
1538  * @public @memberof GoSetup
1539  * @version Introduced in firmware 4.0.10.27
1540  * @param setup GoSetup object.
1541  * @return Hole diameter (mm).
1542  */
1544 
1545 /**
1546  * Sets the diameter of the secondary hole defined on the calibration plate.
1547  *
1548  * @public @memberof GoSetup
1549  * @version Introduced in firmware 4.0.10.27
1550  * @param setup GoSetup object.
1551  * @param diameter Hole diameter (mm).
1552  * @return Operation status.
1553  */
1554 GoFx(kStatus) GoSetup_SetPlateSecHoleDiameter(GoSetup setup, k64f diameter);
1555 
1556 /**
1557  * Gets the diameter of the secondary hole defined on the calibration plate.
1558  *
1559  * @public @memberof GoSetup
1560  * @version Introduced in firmware 4.0.10.27
1561  * @param setup GoSetup object.
1562  * @return Hole diameter (mm).
1563  */
1565 
1566 /**
1567  * Adds a corner parameters object to the collection of polygon corners for alignment.
1568  *
1569  * @public @memberof GoSetup
1570  * @version Introduced in firmware 4.8.0.72
1571  * @param setup GoSetup object.
1572  * @param corner Reference to GoPolygonCornerParameters object.
1573  * @return Operation status.
1574  */
1576 
1577 /* Adds corner parameters to the collection of polygon corners for alignment.
1578  *
1579  * @public @memberof GoSetup
1580  * @version Introduced in firmware 4.8.0.86
1581  * @param pointx X coordinate of corner.
1582  * @param pointz Z coordinate of corner.
1583  * @param devices Array list of devices assigned to corner.
1584  * @return Operation status.
1585  */
1586 GoFx(kStatus) GoSetup_AddPolygonCornerParams(GoSetup setup, k64f pointx, k64f pointz, const kChar *devices);
1587 
1588 /**
1589  * Clears all corner parameter objects from the collection of polygon corners for alignment.
1590  *
1591  * @public @memberof GoSetup
1592  * @version Introduced in firmware 4.8.0.72
1593  * @param setup GoSetup object.
1594  * @return Operation status.
1595  */
1597 
1598 /**
1599  * Retrieves the reference to the corner parameters object from the collection of polygon corners.
1600  *
1601  * @public @memberof GoSetup
1602  * @version Introduced in firmware 4.8.0.72
1603  * @param setup GoSetup object.
1604  * @param index Index in the collection of polygon corners.
1605  * @return Reference to corresponding corner parameters.
1606  */
1608 
1609 /**
1610  * Gets the number of corner parameters defined in the collection of polygon corners.
1611  *
1612  * @public @memberof GoSetup
1613  * @version Introduced in firmware 4.8.0.72
1614  * @param setup GoSetup object.
1615  * @return Number of corner parameters in polygon.
1616  */
1618 
1619 
1620 /**
1621  * Indicates whether X smoothing can be used for the current scan mode and device family.
1622  *
1623  * @public @memberof GoSetup
1624  * @note Supported with G1, G2
1625  * @version Introduced in firmware 4.5.3.57
1626  * @param setup GoSetup object.
1627  * @return True if x-smoothing is available for use.
1628  */
1629 GoFx(kBool) GoSetup_XSmoothingUsed(GoSetup setup);
1630 
1631 /**
1632  * Sets the status of x-direction smoothing.
1633  *
1634  * @public @memberof GoSetup
1635  * @note Supported with G1, G2
1636  * @version Introduced in firmware 4.0.10.27
1637  * @param setup GoSetup object.
1638  * @param enabled Enable or disable x-smoothing
1639  * @return Operation status.
1640  */
1641 GoFx(kStatus) GoSetup_EnableXSmoothing(GoSetup setup, kBool enabled);
1642 
1643 /**
1644  * Gets the status of x-direction smoothing.
1645  *
1646  * @public @memberof GoSetup
1647  * @note Supported with G1, G2
1648  * @version Introduced in firmware 4.0.10.27
1649  * @param setup GoSetup object.
1650  * @return True if x-smoothing is enabled.
1651  */
1653 
1654 /**
1655  * Sets the x-direction smoothing window.
1656  *
1657  * @public @memberof GoSetup
1658  * @note Supported with G1, G2
1659  * @version Introduced in firmware 4.0.10.27
1660  * @param setup GoSetup object.
1661  * @param window The x-smoothing window (mm).
1662  * @return Operation status.
1663  */
1664 GoFx(kStatus) GoSetup_SetXSmoothingWindow(GoSetup setup, k64f window);
1665 
1666 /**
1667  * Gets the x-direction smoothing window.
1668  *
1669  * @public @memberof GoSetup
1670  * @note Supported with G1, G2
1671  * @version Introduced in firmware 4.0.10.27
1672  * @param setup GoSetup object.
1673  * @return The x-smoothing window (mm).
1674  */
1676 
1677 /**
1678  * Gets the x-direction smoothing window minimum.
1679  *
1680  * @public @memberof GoSetup
1681  * @note Supported with G1, G2
1682  * @version Introduced in firmware 4.0.10.27
1683  * @param setup GoSetup object.
1684  * @return The x-smoothing window min (mm).
1685  */
1687 
1688 /**
1689  * Gets the x-direction smoothing window maximum.
1690  *
1691  * @public @memberof GoSetup
1692  * @note Supported with G1, G2
1693  * @version Introduced in firmware 4.0.10.27
1694  * @param setup GoSetup object.
1695  * @return The x-smoothing window max (mm).
1696  */
1698 
1699 /**
1700  * Indicates whether X median can be used for the current scan mode and device family.
1701  *
1702  * @public @memberof GoSetup
1703  * @note Supported with G1, G2
1704  * @version Introduced in firmware 4.5.3.57
1705  * @param setup GoSetup object.
1706  * @return True if x-median is available for use.
1707  */
1708 GoFx(kBool) GoSetup_XMedianUsed(GoSetup setup);
1709 
1710 /**
1711  * Sets the status of x-direction median.
1712  *
1713  * @public @memberof GoSetup
1714  * @note Supported with G1, G2
1715  * @version Introduced in firmware 4.1.3.106
1716  * @param setup GoSetup object.
1717  * @param enabled Enable or disable x-median
1718  * @return Operation status.
1719  */
1720 GoFx(kStatus) GoSetup_EnableXMedian(GoSetup setup, kBool enabled);
1721 
1722 /**
1723  * Gets the status of x-direction median.
1724  *
1725  * @public @memberof GoSetup
1726  * @note Supported with G1, G2
1727  * @version Introduced in firmware 4.1.3.106
1728  * @param setup GoSetup object.
1729  * @return True if x-median is enabled.
1730  */
1731 GoFx(kBool) GoSetup_XMedianEnabled(GoSetup setup);
1732 
1733 /**
1734  * Sets the x-direction median window.
1735  *
1736  * @public @memberof GoSetup
1737  * @note Supported with G1, G2
1738  * @version Introduced in firmware 4.1.3.106
1739  * @param setup GoSetup object.
1740  * @param window The x-median window (mm).
1741  * @return Operation status.
1742  */
1743 GoFx(kStatus) GoSetup_SetXMedianWindow(GoSetup setup, k64f window);
1744 
1745 /**
1746  * Gets the x-direction median window.
1747  *
1748  * @public @memberof GoSetup
1749  * @note Supported with G1, G2
1750  * @version Introduced in firmware 4.1.3.106
1751  * @param setup GoSetup object.
1752  * @return The x-median window (mm).
1753  */
1754 GoFx(k64f) GoSetup_XMedianWindow(GoSetup setup);
1755 
1756 /**
1757  * Gets the x-direction median window minimum.
1758  *
1759  * @public @memberof GoSetup
1760  * @note Supported with G1, G2
1761  * @version Introduced in firmware 4.1.3.106
1762  * @param setup GoSetup object.
1763  * @return The x-median window min (mm).
1764  */
1766 
1767 /**
1768  * Gets the x-direction median window maximum.
1769  *
1770  * @public @memberof GoSetup
1771  * @note Supported with G1, G2
1772  * @version Introduced in firmware 4.1.3.106
1773  * @param setup GoSetup object.
1774  * @return The x-median window max (mm).
1775  */
1777 
1778 /**
1779  * Indicates whether X decimation can be used for the current scan mode and device family.
1780  *
1781  * @public @memberof GoSetup
1782  * @note Supported with G1, G2
1783  * @version Introduced in firmware 4.5.3.57
1784  * @param setup GoSetup object.
1785  * @return True if x-decimation is available for use.
1786  */
1788 
1789 /**
1790  * Sets the status of x-direction decimation.
1791  *
1792  * @public @memberof GoSetup
1793  * @note Supported with G1, G2
1794  * @version Introduced in firmware 4.1.3.106
1795  * @param setup GoSetup object.
1796  * @param enabled Enable or disable x-decimation
1797  * @return Operation status.
1798  */
1799 GoFx(kStatus) GoSetup_EnableXDecimation(GoSetup setup, kBool enabled);
1800 
1801 /**
1802  * Gets the status of x-direction decimation.
1803  *
1804  * @public @memberof GoSetup
1805  * @note Supported with G1, G2
1806  * @version Introduced in firmware 4.1.3.106
1807  * @param setup GoSetup object.
1808  * @return True if x-decimation is enabled.
1809  */
1811 
1812 /**
1813  * Sets the x-direction decimation window.
1814  *
1815  * @public @memberof GoSetup
1816  * @note Supported with G1, G2
1817  * @version Introduced in firmware 4.1.3.106
1818  * @param setup GoSetup object.
1819  * @param window The x-decimation window (mm).
1820  * @return Operation status.
1821  */
1822 GoFx(kStatus) GoSetup_SetXDecimationWindow(GoSetup setup, k64f window);
1823 
1824 /**
1825  * Gets the x-direction decimation window.
1826  *
1827  * @public @memberof GoSetup
1828  * @note Supported with G1, G2
1829  * @version Introduced in firmware 4.1.3.106
1830  * @param setup GoSetup object.
1831  * @return The x-decimation window (mm).
1832  */
1834 
1835 /**
1836  * Gets the x-direction decimation window minimum.
1837  *
1838  * @public @memberof GoSetup
1839  * @note Supported with G1, G2
1840  * @version Introduced in firmware 4.1.3.106
1841  * @param setup GoSetup object.
1842  * @return The x-decimation window min (mm).
1843  */
1845 
1846 /**
1847  * Gets the x-direction decimation window maximum.
1848  *
1849  * @public @memberof GoSetup
1850  * @note Supported with G1, G2
1851  * @version Introduced in firmware 4.1.3.106
1852  * @param setup GoSetup object.
1853  * @return The x-decimation window max (mm).
1854  */
1856 
1857 /**
1858  * Indicates whether X gap filling can be used for the current scan mode and device family.
1859  *
1860  * @public @memberof GoSetup
1861  * @note Supported with G1, G2
1862  * @version Introduced in firmware 4.5.3.57
1863  * @param setup GoSetup object.
1864  * @return True if x-gap filling is available for use.
1865  */
1867 
1868 /**
1869  * Sets the status of x-direction gap-filling.
1870  *
1871  * @public @memberof GoSetup
1872  * @note Supported with G1, G2
1873  * @version Introduced in firmware 4.0.10.27
1874  * @param setup GoSetup object.
1875  * @param enable Enable or disable x-gap-filling
1876  * @return Operation status.
1877  */
1878 GoFx(kStatus) GoSetup_EnableXGapFilling(GoSetup setup, kBool enable);
1879 
1880 /**
1881  * Gets the status of x-direction gap-filling.
1882  *
1883  * @public @memberof GoSetup
1884  * @note Supported with G1, G2
1885  * @version Introduced in firmware 4.0.10.27
1886  * @param setup GoSetup object.
1887  * @return True if x-gap-filling is enabled.
1888  */
1890 
1891 /**
1892  * Sets the status of x-direction gap-filling.
1893  *
1894  * @public @memberof GoSetup
1895  * @note Supported with G1, G2
1896  * @version Introduced in firmware 4.0.10.27
1897  * @param setup GoSetup object.
1898  * @param window Enable or disable x-gap-filling
1899  * @return Operation status.
1900  */
1901 GoFx(kStatus) GoSetup_SetXGapFillingWindow(GoSetup setup, k64f window);
1902 
1903 /**
1904  * Gets the x-direction gap-filling window.
1905  *
1906  * @public @memberof GoSetup
1907  * @note Supported with G1, G2
1908  * @version Introduced in firmware 4.0.10.27
1909  * @param setup GoSetup object.
1910  * @return The x-gap-filling window (mm).
1911  */
1913 
1914 /**
1915  * Gets the x-direction gap-filling window minimum.
1916  *
1917  * @public @memberof GoSetup
1918  * @note Supported with G1, G2
1919  * @version Introduced in firmware 4.0.10.27
1920  * @param setup GoSetup object.
1921  * @return The x-gap-filling window min (mm).
1922  */
1924 
1925 /**
1926  * Gets the x-direction gap-filling window maximum.
1927  *
1928  * @public @memberof GoSetup
1929  * @note Supported with G1, G2
1930  * @version Introduced in firmware 4.0.10.27
1931  * @param setup GoSetup object.
1932  * @return The x-gap-filling window max (mm).
1933  */
1935 
1936 /**
1937  * Indicates whether X slope can be used for the current scan mode and device family.
1938  *
1939  * @public @memberof GoSetup
1940  * @note Supported with G1, G2
1941  * @version Introduced in firmware 4.5.3.57
1942  * @param setup GoSetup object.
1943  * @return True if x-slope is available for use.
1944  */
1945 GoFx(kBool) GoSetup_XSlopeUsed(GoSetup setup);
1946 
1947 /**
1948  * Sets the status of x-direction slope.
1949  *
1950  * @public @memberof GoSetup
1951  * @note Supported with G1, G2
1952  * @version Introduced in firmware 4.5.2.0
1953  * @param setup GoSetup object.
1954  * @param enable Enable or disable x-slope
1955  * @return Operation status.
1956  */
1957 GoFx(kStatus) GoSetup_EnableXSlope(GoSetup setup, kBool enable);
1958 
1959 /**
1960  * Gets the status of x-direction slope.
1961  *
1962  * @public @memberof GoSetup
1963  * @note Supported with G1, G2
1964  * @version Introduced in firmware 4.5.2.0
1965  * @param setup GoSetup object.
1966  * @return True if x-slope is enabled.
1967  */
1968 GoFx(kBool) GoSetup_XSlopeEnabled(GoSetup setup);
1969 
1970 /**
1971  * Sets the status of x-direction slope.
1972  *
1973  * @public @memberof GoSetup
1974  * @note Supported with G1, G2
1975  * @version Introduced in firmware 4.5.2.0
1976  * @param setup GoSetup object.
1977  * @param window Enable or disable x-slope
1978  * @return Operation status.
1979  */
1980 GoFx(kStatus) GoSetup_SetXSlopeWindow(GoSetup setup, k64f window);
1981 
1982 /**
1983  * Gets the x-direction slope window.
1984  *
1985  * @public @memberof GoSetup
1986  * @note Supported with G1, G2
1987  * @version Introduced in firmware 4.5.2.0
1988  * @param setup GoSetup object.
1989  * @return The x-slope window (mm).
1990  */
1991 GoFx(k64f) GoSetup_XSlopeWindow(GoSetup setup);
1992 
1993 /**
1994  * Gets the x-direction slope window minimum.
1995  *
1996  * @public @memberof GoSetup
1997  * @note Supported with G1, G2
1998  * @version Introduced in firmware 4.5.2.0
1999  * @param setup GoSetup object.
2000  * @return The x-slope window min (mm).
2001  */
2003 
2004 /**
2005  * Gets the x-direction slope window maximum.
2006  *
2007  * @public @memberof GoSetup
2008  * @note Supported with G1, G2
2009  * @version Introduced in firmware 4.5.2.0
2010  * @param setup GoSetup object.
2011  * @return The x-slope window max (mm).
2012  */
2014 
2015 /**
2016  * Indicates whether Y smoothing can be used for the current scan mode and device family.
2017  *
2018  * @public @memberof GoSetup
2019  * @note Supported with G1, G2
2020  * @version Introduced in firmware 4.5.3.57
2021  * @param setup GoSetup object.
2022  * @return True if y-smoothing is available for use.
2023  */
2024 GoFx(kBool) GoSetup_YSmoothingUsed(GoSetup setup);
2025 
2026 /**
2027  * Sets the status of y-direction smoothing.
2028  *
2029  * @public @memberof GoSetup
2030  * @note Supported with G1, G2
2031  * @version Introduced in firmware 4.0.10.27
2032  * @param setup GoSetup object.
2033  * @param enable Enable or disable y-smoothing
2034  * @return Operation status.
2035  */
2036 GoFx(kStatus) GoSetup_EnableYSmoothing(GoSetup setup, kBool enable);
2037 
2038 /**
2039  * Gets the status of y-direction smoothing.
2040  *
2041  * @public @memberof GoSetup
2042  * @note Supported with G1, G2
2043  * @version Introduced in firmware 4.0.10.27
2044  * @param setup GoSetup object.
2045  * @return True if y-smoothing is enabled.
2046  */
2048 
2049 /**
2050  * Sets the y-direction smoothing window.
2051  *
2052  * @public @memberof GoSetup
2053  * @note Supported with G1, G2
2054  * @version Introduced in firmware 4.0.10.27
2055  * @param setup GoSetup object.
2056  * @param window The y-smoothing window (mm).
2057  * @return Operation status.
2058  */
2059 GoFx(kStatus) GoSetup_SetYSmoothingWindow(GoSetup setup, k64f window);
2060 
2061 /**
2062  * Gets the y-direction smoothing window.
2063  *
2064  * @public @memberof GoSetup
2065  * @note Supported with G1, G2
2066  * @version Introduced in firmware 4.0.10.27
2067  * @param setup GoSetup object.
2068  * @return The y-smoothing window (mm).
2069  */
2071 
2072 /**
2073  * Gets the y-direction smoothing window minimum.
2074  *
2075  * @public @memberof GoSetup
2076  * @note Supported with G1, G2
2077  * @version Introduced in firmware 4.0.10.27
2078  * @param setup GoSetup object.
2079  * @return The y-smoothing window min (mm).
2080  */
2082 
2083 /**
2084  * Gets the y-direction smoothing window maximum.
2085  *
2086  * @public @memberof GoSetup
2087  * @note Supported with G1, G2
2088  * @version Introduced in firmware 4.0.10.27
2089  * @param setup GoSetup object.
2090  * @return The y-smoothing window max (mm).
2091  */
2093 
2094 /**
2095  * Indicates whether Y median can be used for the current scan mode and device family.
2096  *
2097  * @public @memberof GoSetup
2098  * @note Supported with G1, G2
2099  * @version Introduced in firmware 4.5.3.57
2100  * @param setup GoSetup object.
2101  * @return True if y-median is available for use.
2102  */
2103 GoFx(kBool) GoSetup_YMedianUsed(GoSetup setup);
2104 
2105 /**
2106  * Sets the status of y-direction median.
2107  *
2108  * @public @memberof GoSetup
2109  * @note Supported with G1, G2
2110  * @version Introduced in firmware 4.1.3.106
2111  * @param setup GoSetup object.
2112  * @param enable Enable or disable y-median
2113  * @return Operation status.
2114  */
2115 GoFx(kStatus) GoSetup_EnableYMedian(GoSetup setup, kBool enable);
2116 
2117 /**
2118  * Gets the status of y-direction median.
2119  *
2120  * @public @memberof GoSetup
2121  * @note Supported with G1, G2
2122  * @version Introduced in firmware 4.1.3.106
2123  * @param setup GoSetup object.
2124  * @return True if y-median is enabled.
2125  */
2126 GoFx(kBool) GoSetup_YMedianEnabled(GoSetup setup);
2127 
2128 /**
2129  * Sets the y-direction median window.
2130  *
2131  * @public @memberof GoSetup
2132  * @note Supported with G1, G2
2133  * @version Introduced in firmware 4.1.3.106
2134  * @param setup GoSetup object.
2135  * @param window The y-median window (mm).
2136  * @return Operation status.
2137  */
2138 GoFx(kStatus) GoSetup_SetYMedianWindow(GoSetup setup, k64f window);
2139 
2140 /**
2141  * Gets the y-direction median window.
2142  *
2143  * @public @memberof GoSetup
2144  * @note Supported with G1, G2
2145  * @version Introduced in firmware 4.1.3.106
2146  * @param setup GoSetup object.
2147  * @return The y-median window (mm).
2148  */
2149 GoFx(k64f) GoSetup_YMedianWindow(GoSetup setup);
2150 
2151 /**
2152  * Gets the y-direction median window minimum.
2153  *
2154  * @public @memberof GoSetup
2155  * @note Supported with G1, G2
2156  * @version Introduced in firmware 4.1.3.106
2157  * @param setup GoSetup object.
2158  * @return The y-median window min (mm).
2159  */
2161 
2162 /**
2163  * Gets the y-direction median window maximum.
2164  *
2165  * @public @memberof GoSetup
2166  * @note Supported with G1, G2
2167  * @version Introduced in firmware 4.1.3.106
2168  * @param setup GoSetup object.
2169  * @return The y-median window max (mm).
2170  */
2172 
2173 /**
2174  * Indicates whether y decimation can be used for the current scan mode and device family.
2175  *
2176  * @public @memberof GoSetup
2177  * @note Supported with G1, G2
2178  * @version Introduced in firmware 4.5.3.57
2179  * @param setup GoSetup object.
2180  * @return True if y-decimation is available for use.
2181  */
2183 
2184 /**
2185  * Sets the status of y-direction decimation.
2186  *
2187  * @public @memberof GoSetup
2188  * @note Supported with G1, G2
2189  * @version Introduced in firmware 4.1.3.106
2190  * @param setup GoSetup object.
2191  * @param enable Enable or disable y-decimation
2192  * @return Operation status.
2193  */
2194 GoFx(kStatus) GoSetup_EnableYDecimation(GoSetup setup, kBool enable);
2195 
2196 /**
2197  * Gets the status of y-direction decimation.
2198  *
2199  * @public @memberof GoSetup
2200  * @note Supported with G1, G2
2201  * @version Introduced in firmware 4.1.3.106
2202  * @param setup GoSetup object.
2203  * @return True if y-decimation is enabled.
2204  */
2206 
2207 /**
2208  * Sets the y-direction decimation window.
2209  *
2210  * @public @memberof GoSetup
2211  * @note Supported with G1, G2
2212  * @version Introduced in firmware 4.1.3.106
2213  * @param setup GoSetup object.
2214  * @param window The y-decimation window (mm).
2215  * @return Operation status.
2216  */
2217 GoFx(kStatus) GoSetup_SetYDecimationWindow(GoSetup setup, k64f window);
2218 
2219 /**
2220  * Gets the y-direction decimation window.
2221  *
2222  * @public @memberof GoSetup
2223  * @note Supported with G1, G2
2224  * @version Introduced in firmware 4.1.3.106
2225  * @param setup GoSetup object.
2226  * @return The y-decimation window (mm).
2227  */
2229 
2230 /**
2231  * Gets the y-direction decimation window minimum.
2232  *
2233  * @public @memberof GoSetup
2234  * @note Supported with G1, G2
2235  * @version Introduced in firmware 4.1.3.106
2236  * @param setup GoSetup object.
2237  * @return The y-decimation window min (mm).
2238  */
2240 
2241 /**
2242  * Gets the y-direction decimation window maximum.
2243  *
2244  * @public @memberof GoSetup
2245  * @note Supported with G1, G2
2246  * @version Introduced in firmware 4.1.3.106
2247  * @param setup GoSetup object.
2248  * @return The y-decimation window max (mm).
2249  */
2251 
2252 /**
2253  * Indicates whether Y slope can be used for the current scan mode and device family.
2254  *
2255  * @public @memberof GoSetup
2256  * @note Supported with G1, G2
2257  * @version Introduced in firmware 4.5.3.57
2258  * @param setup GoSetup object.
2259  * @return True if y-slope is available for use.
2260  */
2261 GoFx(kBool) GoSetup_YSlopeUsed(GoSetup setup);
2262 
2263 /**
2264  * Sets the status of y-direction slope.
2265  *
2266  * @public @memberof GoSetup
2267  * @note Supported with G1, G2
2268  * @version Introduced in firmware 4.5.2.0
2269  * @param setup GoSetup object.
2270  * @param enable Enable or disable y-slope
2271  * @return Operation status.
2272  */
2273 GoFx(kStatus) GoSetup_EnableYSlope(GoSetup setup, kBool enable);
2274 
2275 /**
2276  * Gets the status of y-direction slope.
2277  *
2278  * @public @memberof GoSetup
2279  * @note Supported with G1, G2
2280  * @version Introduced in firmware 4.5.2.0
2281  * @param setup GoSetup object.
2282  * @return True if y-slope is enabled.
2283  */
2284 GoFx(kBool) GoSetup_YSlopeEnabled(GoSetup setup);
2285 
2286 /**
2287  * Sets the status of y-direction slope.
2288  *
2289  * @public @memberof GoSetup
2290  * @note Supported with G1, G2
2291  * @version Introduced in firmware 4.5.2.0
2292  * @param setup GoSetup object.
2293  * @param window Enable or disable y-slope
2294  * @return Operation status.
2295  */
2296 GoFx(kStatus) GoSetup_SetYSlopeWindow(GoSetup setup, k64f window);
2297 
2298 /**
2299  * Gets the y-direction slope window.
2300  *
2301  * @public @memberof GoSetup
2302  * @note Supported with G1, G2
2303  * @version Introduced in firmware 4.5.2.0
2304  * @param setup GoSetup object.
2305  * @return The y-slope window (mm).
2306  */
2307 GoFx(k64f) GoSetup_YSlopeWindow(GoSetup setup);
2308 
2309 /**
2310  * Gets the y-direction slope window minimum.
2311  *
2312  * @public @memberof GoSetup
2313  * @note Supported with G1, G2
2314  * @version Introduced in firmware 4.5.2.0
2315  * @param setup GoSetup object.
2316  * @return The y-slope window min (mm).
2317  */
2319 
2320 /**
2321  * Gets the y-direction slope window maximum.
2322  *
2323  * @public @memberof GoSetup
2324  * @note Supported with G1, G2
2325  * @version Introduced in firmware 4.5.2.0
2326  * @param setup GoSetup object.
2327  * @return The y-slope window max (mm).
2328  */
2330 
2331 /**
2332  * Indicates whether Y gap filling can be used for the current scan mode and device family.
2333  *
2334  * @public @memberof GoSetup
2335  * @note Supported with G2
2336  * @version Introduced in firmware 4.5.3.57
2337  * @param setup GoSetup object.
2338  * @return True if y-gap filling is available for use.
2339  */
2341 
2342 /**
2343  * Sets the status of y-direction gap-filling.
2344  *
2345  * @public @memberof GoSetup
2346  * @note Supported with G2
2347  * @version Introduced in firmware 4.0.10.27
2348  * @param setup GoSetup object.
2349  * @param enable Enable or disable y-gap-filling
2350  * @return Operation status.
2351  */
2352 GoFx(kStatus) GoSetup_EnableYGapFilling(GoSetup setup, kBool enable);
2353 
2354 /**
2355  * Gets the status of y-direction gap-filling.
2356  *
2357  * @public @memberof GoSetup
2358  * @note Supported with G2
2359  * @version Introduced in firmware 4.0.10.27
2360  * @param setup GoSetup object.
2361  * @return True if y-gap-filling is enabled.
2362  */
2364 
2365 /**
2366  * Sets the y-direction gap-filling window.
2367  *
2368  * @public @memberof GoSetup
2369  * @note Supported with G2
2370  * @version Introduced in firmware 4.0.10.27
2371  * @param setup GoSetup object.
2372  * @param window The y-gap-filling window (mm).
2373  * @return
2374  */
2375 GoFx(kStatus) GoSetup_SetYGapFillingWindow(GoSetup setup, k64f window);
2376 
2377 /**
2378  * Gets the y-direction gap-filling window.
2379  *
2380  * @public @memberof GoSetup
2381  * @note Supported with G2
2382  * @version Introduced in firmware 4.0.10.27
2383  * @param setup GoSetup object.
2384  * @return The y-gap-filling window (mm).
2385  */
2387 
2388 /**
2389  * Gets the y-direction gap-filling window minimum.
2390  *
2391  * @public @memberof GoSetup
2392  * @note Supported with G2
2393  * @version Introduced in firmware 4.0.10.27
2394  * @param setup GoSetup object.
2395  * @return The y-gap-filling window min (mm).
2396  */
2398 
2399 /**
2400  * Gets the y-direction gap-filling window maximum.
2401  *
2402  * @public @memberof GoSetup
2403  * @note Supported with G2
2404  * @version Introduced in firmware 4.0.10.27
2405  * @param setup GoSetup object.
2406  * @return The y-gap-filling window max (mm).
2407  */
2409 
2410 /**
2411  * Gets the maximum valid value for the Exposure setting.
2412  *
2413  * @public @memberof GoSetup
2414  * @version Introduced in firmware 4.0.10.27
2415  * @param setup GoSetup object.
2416  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2417  * @return Maximum valid Exposure value (microseconds).
2418  */
2419 GoFx(k64f) GoSetup_ExposureLimitMax(GoSetup setup, GoRole role);
2420 
2421 /**
2422  * Gets the minimum valid value for the Exposure setting.
2423  *
2424  * @public @memberof GoSetup
2425  * @version Introduced in firmware 4.0.10.27
2426  * @param setup GoSetup object.
2427  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2428  * @return Minimum valid Exposure value (microseconds).
2429  */
2430 GoFx(k64f) GoSetup_ExposureLimitMin(GoSetup setup, GoRole role);
2431 
2432 /**
2433  * Sets the exposure value.
2434  *
2435  * @public @memberof GoSetup
2436  * @version Introduced in firmware 4.0.10.27
2437  * @param setup GoSetup object.
2438  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2439  * @param exposure Intended exposure value.
2440  * @return Operation status.
2441  */
2442 GoFx(kStatus) GoSetup_SetExposure(GoSetup setup, GoRole role, k64f exposure);
2443 
2444 /**
2445  * Gets the exposure value.
2446  *
2447  * @public @memberof GoSetup
2448  * @version Introduced in firmware 4.0.10.27
2449  * @param setup GoSetup object.
2450  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2451  * @return Exposure value (microseconds).
2452  */
2453 GoFx(k64f) GoSetup_Exposure(GoSetup setup, GoRole role);
2454 
2455 /**
2456  * Gets the exposure mode.
2457  *
2458  * @public @memberof GoSetup
2459  * @version Introduced in firmware 4.0.10.27
2460  * @param setup GoSetup object.
2461  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2462  * @return Exposure mode.
2463  */
2465 
2466 /**
2467  * Returns whether enhanced surface flatness filtering is supported on the device specified by the "role" parameter.
2468  * If enhanced surface flatness filtering is not supported on the device, then do not use any of the enhanced surface flatness filter APIs for that device.
2469  *
2470  * This API only needs to be called once because a device's support for enhanced surface flatness filtering does not change.
2471  *
2472  * @public @memberof GoSetup
2473  * @version Introduced in firmware 6.3.1.83
2474  * @param setup GoSetup object.
2475  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2476  * @return kTRUE if enhanced surface flatness filtering is support, otherwise kFALSE is returned.
2477  */
2479 
2480 /**
2481  * Disables use of enhanced surface flatness filtering, if device supports enhanced surface flatness filtering.
2482  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2483  *
2484  * @public @memberof GoSetup
2485  * @version Introduced in firmware 6.3.1.83
2486  * @param setup GoSetup object.
2487  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2488  * @return Operation status.
2489  */
2491 
2492 /**
2493  * Selects one of the builtin enhanced surface flatness filters to use, if device supports enhanced surface flatness filtering.
2494  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2495  *
2496  * Caller specifies which type of enhanced surface flatness filter to use and the length of the enhanced surface flatness filter (number of filter coefficients).
2497  *
2498  * Do not use this API to disable enhanced surface flatness filtering by trying to pass GO_PREFILTER_TYPE_DISABLED as the mode.
2499  * Instead, use GoSetup_DisableEnhancedSurfaceFlatnessFilter() to disable enhanced surface flatness filtering.
2500  *
2501  * Do not use this API to enable custom enhanced surface flatness filtering. Use GoSetup_SelectCustomEnhancedSurfaceFlatnessFilter() instead.
2502  *
2503  * @public @memberof GoSetup
2504  * @version Introduced in firmware 6.3.1.83
2505  * @param setup GoSetup object.
2506  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2507  * @param type Prefilter type other than GO_PREFILTER_TYPE_DISABLED and GO_PREFILTER_TYPE_CUSTOM.
2508  * @param length The number of filter coefficients to use in the specified enhanced surface flatness filter mode.
2509  * @return Operation status.
2510  */
2512 
2513 /**
2514  * Selects using a custom enhanced surface flatness filter, if device supports enhanced surface flatness filtering, where filter coefficients are provided by the user.
2515  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2516  *
2517  * This API sets three things to ensure consistency between all three properties of the custom enhanced surface flatness filter:
2518  * - sets the mode to GO_PREFILTER_TYPE_CUSTOM,
2519  * - sets the length of the enhanced surface flatness filter,
2520  * - and sets the actual coefficients for the enhanced surface flatness filter.
2521  *
2522  * The number of coefficients in the input array "coefficientsArray" MUST be equal to "length" parameter. This is the
2523  * responsibility of the caller. The API cannot know if the input array is too small, resulting in accessing memory outside
2524  * of the actual array, possibly leading to unpredictable behaviour.
2525  *
2526  * Each coefficient value must be with the range of the minimum and maximum allowable values given by
2527  * GoSetup_CoefficientMinValue() and GoSetup_CoefficientMaxValue().
2528  * The sum of all the coefficient values must be equal to GoSetup_CoefficientsExpectedSum().
2529  *
2530  * NOTE: because of the inherent limitations of exactly representing a floating point number, the above comparisons to the limits
2531  * cannot be exact.
2532  *
2533  * @public @memberof GoSetup
2534  * @version Introduced in firmware 6.3.1.83
2535  * @param setup GoSetup object.
2536  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2537  * @param length The number of filter coefficients to use in the custom enhanced surface flatness filter.
2538  * @param coefficientsArray An input array of enhanced surface flatness filter coefficients to use. Number of entries MUST be equal to length.
2539  * @return Operation status.
2540  */
2542 
2543 /**
2544  * Gets the enhanced surface flatness filter type, if device supports enhanced surface flatness filtering.
2545  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2546  *
2547  * @public @memberof GoSetup
2548  * @version Introduced in firmware 6.3.1.83
2549  * @param setup GoSetup object.
2550  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2551  * @return The enhanced surface flatness filter type currently selected.
2552  */
2554 
2555 /**
2556  * Gets the enhanced surface flatness filter length selected, if device supports enhanced surface flatness filtering.
2557  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2558  *
2559  * @public @memberof GoSetup
2560  * @version Introduced in firmware 6.3.1.83
2561  * @param setup GoSetup object.
2562  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2563  * @return Returns the length of the enhanced surface flatness filter that was selected.
2564  */
2566 
2567 /**
2568  * Gets all the enhanced surface flatness filter coefficients currently in use, if device supports enhanced surface flatness filtering.
2569  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2570  *
2571  * The coefficients returned is for the currently selected enhanced surface flatness filter mode. The number of coefficients is
2572  * the value of GoPreFilterLengthOption in the GoSetup_SelectBuiltInEnhancedSurfaceFlatnessFilter() or
2573  * GoSetup_SelectCustomEnhancedSurfaceFlatnessFilter() API calls.
2574  *
2575  * @public @memberof GoSetup
2576  * @version Introduced in firmware 6.3.1.83
2577  * @param setup GoSetup object.
2578  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2579  * @return Output array of coefficients which is filled with the enhanced surface flatness filter coefficients in use.
2580  * The number of entries is the same as the GoPreFilterLengthOption parameter used to configure the enhanced surface flatness filter.
2581  */
2583 
2584 /**
2585  * Gets the smallest allowable enhanced surface flatness filter coefficient. This value is meaningful only if device supports enhanced surface flatness filtering.
2586  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2587  *
2588  * This is the smallest enhanced surface flatness filter coefficient value that can be used for a enhanced surface flatness filter.
2589  *
2590  * @public @memberof GoSetup
2591  * @version Introduced in firmware 6.3.1.83
2592  * @param setup GoSetup object.
2593  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2594  * @return Smallest allowable enhanced surface flatness filter coefficient for use in a enhanced surface flatness filter.
2595  */
2597 
2598 /**
2599  * Gets the largest allowable enhanced surface flatness filter coefficient. This value is meaningful only if device supports enhanced surface flatness filtering.
2600  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2601  *
2602  * This is the largest enhanced surface flatness filter coefficient value that can be used for a enhanced surface flatness filter.
2603  *
2604  * @public @memberof GoSetup
2605  * @version Introduced in firmware 6.3.1.83
2606  * @param setup GoSetup object.
2607  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2608  * @return Largest allowable enhanced surface flatness filter coefficient for use in a enhanced surface flatness filter.
2609  */
2611 
2612 /**
2613  * Gets the expected value of the sum of all the enhanced surface flatness filter coefficients. This value is meaningful only if device supports enhanced surface flatness filtering.
2614  * Check that the device supports it by calling GoSetup_IsEnhancedSurfaceFlatnessFilterSupported().
2615  *
2616  * The sum of all the coefficient values for a enhanced surface flatness filter must equal to this expected sum value.
2617  *
2618  * @public @memberof GoSetup
2619  * @version Introduced in firmware 6.3.1.83
2620  * @param setup GoSetup object.
2621  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2622  * @return The expected sum of all the coefficients used in a enhanced surface flatness filter.
2623  */
2625 
2626 /**
2627  * Sets the exposure mode.
2628  *
2629  * @public @memberof GoSetup
2630  * @version Introduced in firmware 4.0.10.27
2631  * @param setup GoSetup object.
2632  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2633  * @param mode The exposure mode to use.
2634  * @return Operation status.
2635  */
2637 
2638 /**
2639  * Gets the exposure mode option at the given index.
2640  *
2641  * @public @memberof GoSetup
2642  * @version Introduced in firmware 4.0.10.27
2643  * @param setup GoSetup object.
2644  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2645  * @param index The index with which to retrieve an exposure mode option.
2646  * @return Exposure mode option.
2647  * @see GoSetup_ExposureModeOptionCount
2648  */
2650 
2651 /**
2652  * Gets the exposure mode option count.
2653  *
2654  * @public @memberof GoSetup
2655  * @version Introduced in firmware 4.0.10.27
2656  * @param setup GoSetup object.
2657  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2658  * @return Exposure mode option count.
2659  */
2661 
2662 /**
2663  * Adds an exposure step
2664  *
2665  * @public @memberof GoSetup
2666  * @version Introduced in firmware 4.0.10.27
2667  * @param setup GoSetup object.
2668  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2669  * @param exposure Exposure value (microseconds).
2670  * @return Operation status.
2671  */
2672 GoFx(kStatus) GoSetup_AddExposureStep(GoSetup setup, GoRole role, k64f exposure);
2673 
2674 /**
2675  * Removes all exposure steps.
2676  *
2677  * @public @memberof GoSetup
2678  * @version Introduced in firmware 4.0.10.27
2679  * @param setup GoSetup object.
2680  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2681  * @return Operation status.
2682  */
2684 
2685 /**
2686  * Get the exposure step value specified by index
2687  *
2688  * @public @memberof GoSetup
2689  * @version Introduced in firmware 4.0.10.27
2690  * @param setup GoSetup object.
2691  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2692  * @param index The index of the exposure step to get.
2693  * @return The exposure step value (microseconds).
2694  * @see GoSetup_ExposureStepCount
2695  */
2696 GoFx(k64f) GoSetup_ExposureStepAt(GoSetup setup, GoRole role, kSize index);
2697 
2698 /**
2699  * Get the number of exposure steps defined
2700  *
2701  * @public @memberof GoSetup
2702  * @version Introduced in firmware 4.0.10.27
2703  * @param setup GoSetup object.
2704  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2705  * @return The count of exposure steps.
2706  */
2707 GoFx(kSize) GoSetup_ExposureStepCount(GoSetup setup, GoRole role);
2708 
2709 /**
2710  * Gets the maximum value for the Dynamic Exposure setting.
2711  *
2712  * @public @memberof GoSetup
2713  * @version Introduced in firmware 4.0.10.27
2714  * @param setup GoSetup object.
2715  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2716  * @return Maximum Dynamic Exposure value (microseconds).
2717  */
2718 GoFx(k64f) GoSetup_DynamicExposureMax(GoSetup setup, GoRole role);
2719 
2720 /**
2721  * Sets the maximum value for the Dynamic Exposure setting.
2722  *
2723  * @public @memberof GoSetup
2724  * @version Introduced in firmware 4.0.10.27
2725  * @param setup GoSetup object.
2726  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2727  * @param exposure Maximum Dynamic Exposure value (microseconds).
2728  * @return Operation status.
2729  */
2730 GoFx(kStatus) GoSetup_SetDynamicExposureMax(GoSetup setup, GoRole role, k64f exposure);
2731 
2732 /**
2733  * Gets the minimum value for the Dynamic Exposure setting.
2734  *
2735  * @public @memberof GoSetup
2736  * @version Introduced in firmware 4.0.10.27
2737  * @param setup GoSetup object.
2738  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2739  * @return Minimum Dynamic Exposure value (microseconds).
2740  */
2741 GoFx(k64f) GoSetup_DynamicExposureMin(GoSetup setup, GoRole role);
2742 
2743 /**
2744  * Sets the minimum value for the Dynamic Exposure setting.
2745  *
2746  * @public @memberof GoSetup
2747  * @version Introduced in firmware 4.0.10.27
2748  * @param setup GoSetup object.
2749  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2750  * @param exposure Minumum Dynamic Exposure value (microseconds).
2751  * @return Operation status.
2752  */
2753 GoFx(kStatus) GoSetup_SetDynamicExposureMin(GoSetup setup, GoRole role, k64f exposure);
2754 
2755 /**
2756  * Gets the minimum valid value for the ActiveAreaHeight setting.
2757  *
2758  * @public @memberof GoSetup
2759  * @version Introduced in firmware 4.0.10.27
2760  * @param setup GoSetup object.
2761  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2762  * @return Minimum valid ActiveAreaHeight value (mm).
2763  */
2765 
2766 /**
2767  * Gets the maximum valid value for the ActiveAreaHeight setting.
2768  *
2769  * @public @memberof GoSetup
2770  * @version Introduced in firmware 4.0.10.27
2771  * @param setup GoSetup object.
2772  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2773  * @return Maximum valid active area height value (mm).
2774  */
2776 
2777 /**
2778  * Gets the active area height.
2779  *
2780  * @public @memberof GoSetup
2781  * @version Introduced in firmware 4.0.10.27
2782  * @param setup GoSetup object.
2783  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2784  * @return Active area height (mm).
2785  */
2786 GoFx(k64f) GoSetup_ActiveAreaHeight(GoSetup setup, GoRole role);
2787 
2788 /**
2789  * Sets the active area height.
2790  *
2791  * @public @memberof GoSetup
2792  * @version Introduced in firmware 4.0.10.27
2793  * @param setup GoSetup object.
2794  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2795  * @param value Active area height (mm).
2796  * @return Operation status.
2797  */
2798 GoFx(kStatus) GoSetup_SetActiveAreaHeight(GoSetup setup, GoRole role, k64f value);
2799 
2800 /**
2801  * Gets the minimum valid value for the ActiveAreaLength setting.
2802  *
2803  * @public @memberof GoSetup
2804  * @version Introduced in firmware 4.0.10.27
2805  * @param setup GoSetup object.
2806  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2807  * @return Minimum valid ActiveAreaLength value (mm).
2808  */
2810 
2811 /**
2812  * Gets the maximum valid value for the ActiveAreaLength setting.
2813  *
2814  * @public @memberof GoSetup
2815  * @version Introduced in firmware 4.0.10.27
2816  * @param setup GoSetup object.
2817  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2818  * @return Maximum valid ActiveAreaLength value (mm).
2819  */
2821 
2822 /**
2823  * Sets the active area Length.
2824  *
2825  * @public @memberof GoSetup
2826  * @version Introduced in firmware 4.0.10.27
2827  * @param setup GoSetup object.
2828  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2829  * @param value Active area Length (mm).
2830  * @return Operation status.
2831  */
2832 GoFx(kStatus) GoSetup_SetActiveAreaLength(GoSetup setup, GoRole role, k64f value);
2833 
2834 /**
2835  * Gets the active area Length.
2836  *
2837  * @public @memberof GoSetup
2838  * @version Introduced in firmware 4.0.10.27
2839  * @param setup GoSetup object.
2840  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2841  * @return Active area Length (mm).
2842  */
2843 GoFx(k64f) GoSetup_ActiveAreaLength(GoSetup setup, GoRole role);
2844 
2845 
2846 /**
2847  * Gets the minimum valid value for the ActiveAreaWidth setting.
2848  *
2849  * @public @memberof GoSetup
2850  * @version Introduced in firmware 4.0.10.27
2851  * @param setup GoSetup object.
2852  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2853  * @return Minimum valid ActiveAreaWidth value (mm).
2854  */
2856 
2857 /**
2858  * Gets the maximum valid value for the ActiveAreaWidth setting.
2859  *
2860  * @public @memberof GoSetup
2861  * @version Introduced in firmware 4.0.10.27
2862  * @param setup GoSetup object.
2863  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2864  * @return Maximum valid ActiveAreaWidth value (mm).
2865  */
2867 
2868 /**
2869  * Sets the active area width.
2870  *
2871  * @public @memberof GoSetup
2872  * @version Introduced in firmware 4.0.10.27
2873  * @param setup GoSetup object.
2874  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2875  * @param value Active area width (mm).
2876  * @return Operation status.
2877  */
2878 GoFx(kStatus) GoSetup_SetActiveAreaWidth(GoSetup setup, GoRole role, k64f value);
2879 
2880 /**
2881  * Gets the active area width.
2882  *
2883  * @public @memberof GoSetup
2884  * @version Introduced in firmware 4.0.10.27
2885  * @param setup GoSetup object.
2886  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2887  * @return Active area width (mm).
2888  */
2889 GoFx(k64f) GoSetup_ActiveAreaWidth(GoSetup setup, GoRole role);
2890 
2891 /**
2892  * Gets the minimum valid value for the ActiveAreaX setting.
2893  *
2894  * @public @memberof GoSetup
2895  * @version Introduced in firmware 4.0.10.27
2896  * @param setup GoSetup object.
2897  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2898  * @return Minimum valid ActiveAreaX value (mm).
2899  */
2900 GoFx(k64f) GoSetup_ActiveAreaXLimitMin(GoSetup setup, GoRole role);
2901 
2902 /**
2903  * Gets the maximum valid value for the ActiveAreaX setting.
2904  *
2905  * @public @memberof GoSetup
2906  * @version Introduced in firmware 4.0.10.27
2907  * @param setup GoSetup object.
2908  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2909  * @return Maximum valid ActiveAreaX value (mm).
2910  */
2911 GoFx(k64f) GoSetup_ActiveAreaXLimitMax(GoSetup setup, GoRole role);
2912 
2913 /**
2914  * Sets the active area x origin.
2915  *
2916  * @public @memberof GoSetup
2917  * @version Introduced in firmware 4.0.10.27
2918  * @param setup GoSetup object.
2919  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2920  * @param value Active area x origin (mm).
2921  * @return Operation status.
2922  */
2923 GoFx(kStatus) GoSetup_SetActiveAreaX(GoSetup setup, GoRole role, k64f value);
2924 
2925 /**
2926  * Gets the active area x origin.
2927  *
2928  * @public @memberof GoSetup
2929  * @version Introduced in firmware 4.0.10.27
2930  * @param setup GoSetup object.
2931  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2932  * @return Active area x origin (mm).
2933  */
2934 GoFx(k64f) GoSetup_ActiveAreaX(GoSetup setup, GoRole role);
2935 
2936 /**
2937  * Gets the minimum valid value for the ActiveAreaY setting.
2938  *
2939  * @public @memberof GoSetup
2940  * @version Introduced in firmware 4.0.10.27
2941  * @param setup GoSetup object.
2942  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2943  * @return Minimum valid ActiveAreaY value (mm).
2944  */
2945 GoFx(k64f) GoSetup_ActiveAreaYLimitMin(GoSetup setup, GoRole role);
2946 
2947 /**
2948  * Gets the maximum valid value for the ActiveAreaY setting.
2949  *
2950  * @public @memberof GoSetup
2951  * @version Introduced in firmware 4.0.10.27
2952  * @param setup GoSetup object.
2953  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2954  * @return Maximum valid ActiveAreaY value (mm).
2955  */
2956 GoFx(k64f) GoSetup_ActiveAreaYLimitMax(GoSetup setup, GoRole role);
2957 
2958 /**
2959  * Sets the active area Y.
2960  *
2961  * @public @memberof GoSetup
2962  * @version Introduced in firmware 4.0.10.27
2963  * @param setup GoSetup object.
2964  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2965  * @param value Active area y origin (mm).
2966  * @return Operation status.
2967  */
2968 GoFx(kStatus) GoSetup_SetActiveAreaY(GoSetup setup, GoRole role, k64f value);
2969 
2970 /**
2971  * Gets the active area Y.
2972  *
2973  * @public @memberof GoSetup
2974  * @version Introduced in firmware 4.0.10.27
2975  * @param setup GoSetup object.
2976  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2977  * @return Active area y origin (mm).
2978  */
2979 GoFx(k64f) GoSetup_ActiveAreaY(GoSetup setup, GoRole role);
2980 
2981 /**
2982  * Gets the minimum valid value for the ActiveAreaZ setting.
2983  *
2984  * @public @memberof GoSetup
2985  * @version Introduced in firmware 4.0.10.27
2986  * @param setup GoSetup object.
2987  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2988  * @return Minimum valid ActiveAreaZ value (mm).
2989  */
2990 GoFx(k64f) GoSetup_ActiveAreaZLimitMin(GoSetup setup, GoRole role);
2991 
2992 /**
2993  * Gets the maximum valid value for the ActiveAreaZ setting.
2994  *
2995  * @public @memberof GoSetup
2996  * @version Introduced in firmware 4.0.10.27
2997  * @param setup GoSetup object.
2998  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
2999  * @return Maximum valid ActiveAreaZ value (mm).
3000  */
3001 GoFx(k64f) GoSetup_ActiveAreaZLimitMax(GoSetup setup, GoRole role);
3002 
3003 /**
3004  * Sets the active area z origin.
3005  *
3006  * @public @memberof GoSetup
3007  * @version Introduced in firmware 4.0.10.27
3008  * @param setup GoSetup object.
3009  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3010  * @param value Active area z origin (mm).
3011  * @return Operation status.
3012  */
3013 GoFx(kStatus) GoSetup_SetActiveAreaZ(GoSetup setup, GoRole role, k64f value);
3014 
3015 /**
3016  * Gets the active area z origin.
3017  *
3018  * @public @memberof GoSetup
3019  * @version Introduced in firmware 4.0.10.27
3020  * @param setup GoSetup object.
3021  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3022  * @return Active area z origin (mm).
3023  */
3024 GoFx(k64f) GoSetup_ActiveAreaZ(GoSetup setup, GoRole role);
3025 
3026 /**
3027  * Gets the transformed data region X value.
3028  *
3029  * @public @memberof GoSetup
3030  * @version Introduced in firmware 4.0.10.27
3031  * @param setup GoSetup object.
3032  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3033  * @return The transformed data region X value.
3034  */
3036 
3037 /**
3038  * Gets the transformed data region Y value.
3039  *
3040  * @public @memberof GoSetup
3041  * @version Introduced in firmware 4.0.10.27
3042  * @param setup GoSetup object.
3043  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3044  * @return The transformed data region Y value.
3045  */
3047 
3048 /**
3049  * Gets the transformed data region Z value.
3050  *
3051  * @public @memberof GoSetup
3052  * @version Introduced in firmware 4.0.10.27
3053  * @param setup GoSetup object.
3054  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3055  * @return The transformed data region Z value.
3056  */
3058 
3059 /**
3060  * Gets the transformed data region width value.
3061  *
3062  * @public @memberof GoSetup
3063  * @version Introduced in firmware 4.0.10.27
3064  * @param setup GoSetup object.
3065  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3066  * @return The transformed data region width value.
3067  */
3069 
3070 /**
3071  * Gets the transformed data region length value.
3072  *
3073  * @public @memberof GoSetup
3074  * @version Introduced in firmware 4.0.10.27
3075  * @param setup GoSetup object.
3076  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3077  * @return The transformed data region length value.
3078  */
3080 
3081 /**
3082  * Gets the transformed data region height value.
3083  *
3084  * @public @memberof GoSetup
3085  * @version Introduced in firmware 4.0.10.27
3086  * @param setup GoSetup object.
3087  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3088  * @return The transformed data region height value.
3089  */
3091 
3092 /**
3093  * Gets the count of valid x-resolution options.
3094  *
3095  * @public @memberof GoSetup
3096  * @version Introduced in firmware 4.0.10.27
3097  * @param setup GoSetup object.
3098  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3099  * @return Count of x-resolution options.
3100  */
3102 
3103 /**
3104  * Gets the x-resolution option at the specified index.
3105  *
3106  * @public @memberof GoSetup
3107  * @version Introduced in firmware 4.0.10.27
3108  * @param setup GoSetup object.
3109  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3110  * @param index Index of the desired resolution option.
3111  * @return X resolution option.
3112  * @see GoSetup_XSubsamplingOptionCount
3113  */
3114 GoFx(k32u) GoSetup_XSubsamplingOptionAt(GoSetup setup, GoRole role, kSize index);
3115 
3116 /**
3117  * Sets the current x-resolution divider.
3118  *
3119  * @public @memberof GoSetup
3120  * @version Introduced in firmware 4.0.10.27
3121  * @param setup GoSetup object.
3122  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3123  * @param xSubsampling X subsampling divider (e.g. 1 - full res, 2 - half res).
3124  * @return Operation status.
3125  */
3126 GoFx(kStatus) GoSetup_SetXSubsampling(GoSetup setup, GoRole role, k32u xSubsampling);
3127 
3128 /**
3129  * Gets the current x-resolution divider.
3130  *
3131  * @public @memberof GoSetup
3132  * @version Introduced in firmware 4.0.10.27
3133  * @param setup GoSetup object.
3134  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3135  * @return X resolution divider (e.g. 1 - full res, 2 - half res).
3136  */
3137 GoFx(k32u) GoSetup_XSubsampling(GoSetup setup, GoRole role);
3138 
3139 /**
3140  * Returns whether the value used for the x-resolution divider is the one set by the user or the system default value.
3141  *
3142  * @public @memberof GoSetup
3143  * @version Introduced in firmware 6.3.1.83
3144  * @param setup GoSetup object.
3145  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3146  * @return kTRUE if the user value is used and kFALSE if system default is used.
3147  */
3148 GoFx(kBool) GoSetup_XSubsamplingUsed(GoSetup setup, GoRole role);
3149 
3150 /**
3151  * Gets the x-resolution divider system value.
3152  *
3153  * @public @memberof GoSetup
3154  * @version Introduced in firmware 6.3.1.83
3155  * @param setup GoSetup object.
3156  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3157  * @return X resolution divider (e.g. 1 - full res, 2 - half res) system value.
3158  */
3160 
3161 /**
3162  * Returns whether the sensor has a x-resolution divider default value or not.
3163  *
3164  * Note: Not all sensors will support a default x-resolution divider. If available, this
3165  * function indicates whether the current sensor has a default value.
3166  *
3167  *
3168  * @public @memberof GoSetup
3169  * @version Introduced in firmware 6.3.1.83
3170  * @param setup GoSetup object.
3171  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3172  * @return kTRUE if a default divider is available and kFALSE if not available.
3173  */
3175 
3176 /**
3177  * Sets whether to use the sensor's default x-resolution divider or the user-selected divider.
3178  *
3179  * Note: Not all sensors will support a default x-resolution divider. If available as indicated
3180  * by GoSetup_XSubsamplingDefaultEnabledUsed(), this function allows the mode to be switched from
3181  * either Default (true) or a Custom (false) mode.
3182  *
3183  * @public @memberof GoSetup
3184  * @version Introduced in firmware 6.3.1.83
3185  * @param setup GoSetup object.
3186  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3187  * @param useDefault Determines whether to use the Default x-resolution divider (true) or Custom one set by the user (false).
3188  * @return Operation status.
3189  */
3190 GoFx(kStatus) GoSetup_SetXSubsamplingDefaultEnabled(GoSetup setup, GoRole role, kBool useDefault);
3191 
3192 /**
3193  * Returns whether the x-resolution divider default is being used.
3194  *
3195  * Note: Not all sensors will support a default x-resolution divider. If available as indicated
3196  * by GoSetup_XSubsamplingDefaultEnabledUsed(), this function returns the current mode set.
3197  *
3198  * @public @memberof GoSetup
3199  * @version Introduced in firmware 6.3.1.83
3200  * @param setup GoSetup object.
3201  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3202  * @return Indicates whether the default x-resolution divider mode is set to Default (kTRUE) or Custom (kFALSE).
3203  */
3205 
3206 /**
3207  * Gets the count of valid z-resolution options.
3208  *
3209  * @public @memberof GoSetup
3210  * @version Introduced in firmware 4.0.10.27
3211  * @param setup GoSetup object.
3212  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3213  * @return Count of z-resolution options.
3214  */
3216 
3217 /**
3218  * Gets the z-resolution option at the specified index.
3219  *
3220  * @public @memberof GoSetup
3221  * @version Introduced in firmware 4.0.10.27
3222  * @param setup GoSetup object.
3223  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3224  * @param index Index of the desired resolution option.
3225  * @return Z resolution option.
3226  * see GoSetup_ZSubsamplingOptionCount
3227  */
3228 GoFx(k32u) GoSetup_ZSubsamplingOptionAt(GoSetup setup, GoRole role, kSize index);
3229 
3230 /**
3231  * Sets the current z-resolution divider.
3232  *
3233  * @public @memberof GoSetup
3234  * @version Introduced in firmware 4.0.10.27
3235  * @param setup GoSetup object.
3236  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3237  * @param zSubsampling Z subsampling divider (e.g. 1 - full res, 2 - half res).
3238  * @return Operation status.
3239  */
3240 GoFx(kStatus) GoSetup_SetZSubsampling(GoSetup setup, GoRole role, k32u zSubsampling);
3241 
3242 /**
3243  * Gets the current z-resolution divider.
3244  *
3245  * @public @memberof GoSetup
3246  * @version Introduced in firmware 4.0.10.27
3247  * @param setup GoSetup object.
3248  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3249  * @return Z resolution divider (e.g. 1 - full res, 2 - half res).
3250  */
3251 GoFx(k32u) GoSetup_ZSubsampling(GoSetup setup, GoRole role);
3252 
3253 /**
3254  * Returns whether the value used for the z-resolution divider is the one set by the user or the system default value.
3255  *
3256  * @public @memberof GoSetup
3257  * @version Introduced in firmware 6.3.1.83
3258  * @param setup GoSetup object.
3259  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3260  * @return kTRUE if the user value is used and kFALSE if system default is used.
3261  */
3262 GoFx(kBool) GoSetup_ZSubsamplingUsed(GoSetup setup, GoRole role);
3263 
3264 /**
3265  * Gets the z-resolution divider system value.
3266  *
3267  * @public @memberof GoSetup
3268  * @version Introduced in firmware 6.3.1.83
3269  * @param setup GoSetup object.
3270  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3271  * @return Z resolution divider (e.g. 1 - full res, 2 - half res) system value.
3272  */
3274 
3275 /**
3276  * Returns whether the sensor has a z-resolution divider default value or not.
3277  *
3278  * Note: Not all sensors will support a default z-resolution divider. If available, this
3279  * function indicates whether the current sensor has a default value.
3280  *
3281  * @public @memberof GoSetup
3282  * @version Introduced in firmware 6.3.1.83
3283  * @param setup GoSetup object.
3284  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3285  * @return kTRUE if a default divider is available and kFALSE if not available.
3286  */
3288 
3289 /**
3290  * Sets whether to use the sensor's default z-resolution divider or the user-selected divider.
3291  *
3292  * Note: Not all sensors will support a default z-resolution divider. If available as indicated
3293  * by GoSetup_ZSubsamplingDefaultEnabledUsed(), this function allows the mode to be switched from
3294  * either Default (true) or a Custom (false) mode.
3295  *
3296  * @public @memberof GoSetup
3297  * @version Introduced in firmware 6.3.1.83
3298  * @param setup GoSetup object.
3299  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3300  * @param useDefault Determines whether to use the Default z-resolution divider (true) or Custom one set by the user (false).
3301  * @return Operation status.
3302  */
3303 GoFx(kStatus) GoSetup_SetZSubsamplingDefaultEnabled(GoSetup setup, GoRole role, kBool useDefault);
3304 
3305 /**
3306  * Returns whether the z-resolution divider default is being used.
3307  *
3308  * Note: Not all sensors will support a default x-resolution divider. If available as indicated
3309  * by GoSetup_XSubsamplingDefaultEnabledUsed(), this function returns the current mode set.
3310  *
3311  * @public @memberof GoSetup
3312  * @version Introduced in firmware 6.3.1.83
3313  * @param setup GoSetup object.
3314  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3315  * @return Indicates whether the default z-resolution divider mode is set to Default (kTRUE) or Custom (kFALSE).
3316  */
3318 
3319 /**
3320  * Gets the camera region-of-interest x origin.
3321  *
3322  * @public @memberof GoSetup
3323  * @version Introduced in firmware 4.0.10.27
3324  * @param setup GoSetup object.
3325  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3326  * @return Region of interest x origin (pixels).
3327  */
3328 GoFx(k32u) GoSetup_FrontCameraX(GoSetup setup, GoRole role);
3329 
3330 /**
3331  * Gets the camera region-of-interest y origin.
3332  *
3333  * @public @memberof GoSetup
3334  * @version Introduced in firmware 4.0.10.27
3335  * @param setup GoSetup object.
3336  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3337  * @return Region of interest y origin (pixels).
3338  */
3339 GoFx(k32u) GoSetup_FrontCameraY(GoSetup setup, GoRole role);
3340 
3341 /**
3342  * Gets the camera region-of-interest width.
3343  *
3344  * @public @memberof GoSetup
3345  * @version Introduced in firmware 4.0.10.27
3346  * @param setup GoSetup object.
3347  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3348  * @return Region of interest width (pixels).
3349  */
3350 GoFx(k32u) GoSetup_FrontCameraWidth(GoSetup setup, GoRole role);
3351 
3352 /**
3353  * Gets the camera region-of-interest height.
3354  *
3355  * @public @memberof GoSetup
3356  * @version Introduced in firmware 4.0.10.27
3357  * @param setup GoSetup object.
3358  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3359  * @return Region of interest height (pixels).
3360  */
3361 GoFx(k32u) GoSetup_FrontCameraHeight(GoSetup setup, GoRole role);
3362 
3363 /**
3364  * Returns a boolean representing whether the back camera element is used.
3365  *
3366  * @public @memberof GoSetup
3367  * @version Introduced in firmware 4.1.3.106
3368  * @param setup GoSetup object.
3369  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3370  * @return kTRUE if used, or kFALSE if not used.
3371  */
3372 GoFx(k32u) GoSetup_BackCameraUsed(GoSetup setup, GoRole role);
3373 
3374 /**
3375  * Gets the camera region-of-interest x origin.
3376  *
3377  * @public @memberof GoSetup
3378  * @version Introduced in firmware 4.0.10.27
3379  * @param setup GoSetup object.
3380  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3381  * @return Region of interest x origin (pixels).
3382  */
3383 GoFx(k32u) GoSetup_BackCameraX(GoSetup setup, GoRole role);
3384 
3385 /**
3386  * Gets the camera region-of-interest y origin.
3387  *
3388  * @public @memberof GoSetup
3389  * @version Introduced in firmware 4.0.10.27
3390  * @param setup GoSetup object.
3391  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3392  * @return Region of interest y origin (pixels).
3393  */
3394 GoFx(k32u) GoSetup_BackCameraY(GoSetup setup, GoRole role);
3395 
3396 /**
3397  * Gets the camera region-of-interest width.
3398  *
3399  * @public @memberof GoSetup
3400  * @version Introduced in firmware 4.0.10.27
3401  * @param setup GoSetup object.
3402  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3403  * @return Region of interest width (pixels).
3404  */
3405 GoFx(k32u) GoSetup_BackCameraWidth(GoSetup setup, GoRole role);
3406 
3407 /**
3408  * Gets the camera region-of-interest height.
3409  *
3410  * @public @memberof GoSetup
3411  * @version Introduced in firmware 4.0.10.27
3412  * @param setup GoSetup object.
3413  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3414  * @return Region of interest height (pixels).
3415  */
3416 GoFx(k32u) GoSetup_BackCameraHeight(GoSetup setup, GoRole role);
3417 
3418 /**
3419  * Enables tracking.
3420  *
3421  * @public @memberof GoSetup
3422  * @version Introduced in firmware 4.0.10.27
3423  * @param setup GoSetup object.
3424  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3425  * @param enable kTRUE to enable, or kFALSE to disable.
3426  * @return Operation status.
3427  */
3428 GoFx(kStatus) GoSetup_EnableTracking(GoSetup setup, GoRole role, kBool enable);
3429 
3430 /**
3431  * Determines if tracking is enabled.
3432  *
3433  * @public @memberof GoSetup
3434  * @version Introduced in firmware 4.0.10.27
3435  * @param setup GoSetup object.
3436  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3437  * @return kTRUE if enabled, or kFALSE if disabled.
3438  */
3439 GoFx(kBool) GoSetup_TrackingEnabled(GoSetup setup, GoRole role);
3440 
3441 /**
3442  * Returns a boolean value representing whether the Tracking Enabled field is used.
3443  *
3444  * @public @memberof GoSetup
3445  * @version Introduced in firmware 4.1.3.106
3446  * @param setup GoSetup object.
3447  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3448  * @return kTRUE if used, or kFALSE if not used.
3449  */
3450 GoFx(kBool) GoSetup_TrackingUsed(GoSetup setup, GoRole role);
3451 
3452 /**
3453  * Sets the tracking window height.
3454  *
3455  * @public @memberof GoSetup
3456  * @version Introduced in firmware 4.0.10.27
3457  * @param setup GoSetup object.
3458  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3459  * @param height Tracking window height (mm).
3460  * @return Operation status.
3461  */
3462 GoFx(kStatus) GoSetup_SetTrackingAreaHeight(GoSetup setup, GoRole role, k64f height);
3463 
3464 /**
3465  * Gets the tracking window height.
3466  *
3467  * @public @memberof GoSetup
3468  * @version Introduced in firmware 4.0.10.27
3469  * @param setup GoSetup object.
3470  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3471  * @return Tracking window height (mm).
3472  */
3473 GoFx(k64f) GoSetup_TrackingAreaHeight(GoSetup setup, GoRole role);
3474 
3475 /**
3476  * Gets the tracking window height minimum limit.
3477  *
3478  * @public @memberof GoSetup
3479  * @version Introduced in firmware 4.0.10.27
3480  * @param setup GoSetup object.
3481  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3482  * @return Tracking window height min(mm).
3483  */
3485 
3486 /**
3487  * Gets the tracking window height maximum limit.
3488  *
3489  * @public @memberof GoSetup
3490  * @version Introduced in firmware 4.0.10.27
3491  * @param setup GoSetup object.
3492  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3493  * @return Tracking window height max(mm).
3494  */
3496 
3497 /**
3498  * Sets the tracking window search threshold.
3499  *
3500  * @public @memberof GoSetup
3501  * @version Introduced in firmware 4.0.10.27
3502  * @param setup GoSetup object.
3503  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3504  * @param threshold Tracking window search threshold (%)
3505  * @return Operation status.
3506  */
3507 GoFx(kStatus) GoSetup_SetTrackingSearchThreshold(GoSetup setup, GoRole role, k64f threshold);
3508 
3509 /**
3510  * Gets the tracking window search threshold.
3511  *
3512  * @public @memberof GoSetup
3513  * @version Introduced in firmware 4.0.10.27
3514  * @param setup GoSetup object.
3515  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3516  * @return Tracking window search threshold (%).
3517  */
3519 
3520 /**
3521  * Returns the state of whether the user specified spacing interval is used.
3522  *
3523  * @public @memberof GoSetup
3524  * @version Introduced in firmware 4.0.10.27
3525  * @param setup GoSetup object.
3526  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3527  * @return kTRUE if the user value is used and kFALSE otherwise.
3528  */
3529 GoFx(kBool) GoSetup_SpacingIntervalUsed(GoSetup setup, GoRole role);
3530 
3531 /**
3532  * Gets the spacing interval system value.
3533  *
3534  * @public @memberof GoSetup
3535  * @version Introduced in firmware 4.0.10.27
3536  * @param setup GoSetup object.
3537  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3538  * @return Spacing interval.
3539  */
3541 
3542 /**
3543  * Gets the spacing interval.
3544  *
3545  * @public @memberof GoSetup
3546  * @version Introduced in firmware 4.0.10.27
3547  * @param setup GoSetup object.
3548  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3549  * @return Spacing interval.
3550  */
3551 GoFx(k64f) GoSetup_SpacingInterval(GoSetup setup, GoRole role);
3552 
3553 /**
3554  * Sets the spacing interval.
3555  *
3556  * @public @memberof GoSetup
3557  * @note Supported with G3
3558  * @version Introduced in firmware 4.0.10.27
3559  * @param setup GoSetup object.
3560  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3561  * @param value The spacing interval.
3562  * @return Operation status.
3563  */
3564 GoFx(kStatus) GoSetup_SetSpacingInterval(GoSetup setup, GoRole role, k64f value);
3565 
3566 /**
3567  * Gets the spacing interval value limit minimum.
3568  *
3569  * @public @memberof GoSetup
3570  * @version Introduced in firmware 4.0.10.27
3571  * @param setup GoSetup object.
3572  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3573  * @return Spacing interval value limit minimum.
3574  */
3576 
3577 /**
3578  * Gets the spacing interval value limit maximum
3579  *
3580  * @public @memberof GoSetup
3581  * @version Introduced in firmware 4.0.10.27
3582  * @param setup GoSetup object.
3583  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3584  * @return Spacing interval value limit maximum.
3585  */
3587 
3588 /**
3589  * Gets the spacing interval type.
3590  *
3591  * @public @memberof GoSetup
3592  * @version Introduced in firmware 4.0.10.27
3593  * @param setup GoSetup object.
3594  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3595  * @return The spacing interval type.
3596  */
3598 
3599 /**
3600  * Sets the spacing interval type.
3601  *
3602  * @public @memberof GoSetup
3603  * @version Introduced in firmware 4.0.10.27
3604  * @param setup GoSetup object.
3605  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3606  * @param type The spacing interval type.
3607  * @return Operation status.
3608  */
3610 
3611 /**
3612  * Gets the system value representing whether or not the user specified spacing interval type setting is being used at the moment.
3613  *
3614  * @public @memberof GoSetup
3615  * @version Introduced in firmware 4.0.10.27
3616  * @param setup GoSetup object.
3617  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3618  * @return kTRUE if the user specified spacing interval type setting is used and kFALSE otherwise.
3619  */
3621 
3622 /**
3623  * Gets the X spacing count.
3624  * This is the number of resampled profile points in the layout
3625  * for the configured X-axis range and X-axis increment/step within
3626  * the range for the specified sensor.
3627  *
3628  * @public @memberof GoSetup
3629  * @version Introduced in firmware 4.0.10.27
3630  * @param setup GoSetup object.
3631  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3632  * @return X spacing count.
3633  */
3634 GoFx(k32u) GoSetup_XSpacingCount(GoSetup setup, GoRole role);
3635 
3636 /**
3637  * Gets the Y spacing count.
3638  *
3639  * @public @memberof GoSetup
3640  * @version Introduced in firmware 4.0.10.27
3641  * @param setup GoSetup object.
3642  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3643  * @return Y spacing count.
3644  */
3645 GoFx(k32u) GoSetup_YSpacingCount(GoSetup setup, GoRole role);
3646 
3647 /**
3648  * Gets the intensity step index.
3649  *
3650  * @public @memberof GoSetup
3651  * @version Introduced in firmware 4.0.10.27
3652  * @param setup GoSetup object.
3653  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3654  * @return The intensity step index.
3655  */
3656 GoFx(kSize) GoSetup_IntensityStepIndex(GoSetup setup, GoRole role);
3657 
3658 /**
3659  * Sets the intensity step index.
3660  *
3661  * @public @memberof GoSetup
3662  * @version Introduced in firmware 4.0.10.27
3663  * @param setup GoSetup object.
3664  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3665  * @param index The exposure step index to use for intensity acquisition.
3666  * @return Operation status.
3667  * @see GoSetup_SetExposureMode, GoSetup_ExposureStepCount
3668  */
3669 GoFx(kStatus) GoSetup_SetIntensityStepIndex(GoSetup setup, GoRole role, kSize index);
3670 
3671 /**
3672  * Gets the pattern sequence type option count.
3673  *
3674  * @public @memberof GoSetup
3675  * @version Introduced in firmware 4.2.4.7
3676  * @param setup GoSetup object.
3677  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3678  * @return Pattern sequence type option count.
3679  */
3681 
3682 /**
3683  * Gets the pattern sequence type option at the given index.
3684  *
3685  * @public @memberof GoSetup
3686  * @version Introduced in firmware 4.2.4.7
3687  * @param setup GoSetup object.
3688  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3689  * @param index The index with which to retrieve a sequence type option.
3690  * @return A sequence type option value.
3691  * @see GoSetup_PatternSequenceOptionCount
3692  */
3694 
3695 /**
3696  * Gets the pattern sequence type.
3697  *
3698  * @public @memberof GoSetup
3699  * @version Introduced in firmware 4.2.4.7
3700  * @param setup GoSetup object.
3701  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3702  * @return The pattern sequence type.
3703  */
3705 
3706 /**
3707  * Sets the pattern sequence type.
3708  *
3709  * @public @memberof GoSetup
3710  * @version Introduced in firmware 4.2.4.7
3711  * @param setup GoSetup object.
3712  * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3713  * @param type The pattern sequence type to set.
3714  * @return Operation status.
3715  */
3717 
3718 /**
3719  * Returns a boolean value representing whether the pattern sequence type is used.
3720  *
3721  * @public @memberof GoSetup
3722  * @version Introduced in firmware 4.2.4.7
3723  * @param setup GoSetup object.
3724  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3725  * @return kTRUE if used and kFALSE otherwise.
3726  */
3728 
3729 /**
3730  * Gets the current pattern sequence count.
3731  *
3732  * @public @memberof GoSetup
3733  * @version Introduced in firmware 4.2.4.7
3734  * @param setup GoSetup object.
3735  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3736  * @return The current pattern sequence count.
3737  */
3739 
3740 /**
3741  * Gets the current phase pattern index.
3742  *
3743  * @public @memberof GoSetup
3744  * @version Introduced in firmware 5.3.19.50
3745  * @param setup GoSetup object.
3746  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3747  * @return The current phase pattern index.
3748  */
3749 GoFx(k32u) GoSetup_PatternSequenceIndex(GoSetup setup, GoRole role);
3750 
3751 /**
3752  * Sets the current phase pattern index.
3753  *
3754  * @public @memberof GoSetup
3755  * @version Introduced in firmware 5.3.19.50
3756  * @param setup GoSetup object.
3757  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3758  * @param index The index to use
3759  */
3760 GoFx(kStatus) GoSetup_SetPatternSequenceIndex(GoSetup setup, GoRole role, k32u index);
3761 
3762 /**
3763  * Gets the current phase pattern index used flag value.
3764  *
3765  * @public @memberof GoSetup
3766  * @version Introduced in firmware 5.3.19.50
3767  * @param setup GoSetup object.
3768  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3769  * @return The current phase pattern index used flag value.
3770  */
3772 
3773 /**
3774  * Gets the current phase pattern index min value (inclusive).
3775  *
3776  * @public @memberof GoSetup
3777  * @version Introduced in firmware 5.3.19.50
3778  * @param setup GoSetup object.
3779  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3780  * @return The current phase pattern index minimum value (inclusive).
3781  */
3783 
3784 /**
3785  * Gets the current phase pattern index maximum value (inclusive).
3786  *
3787  * @public @memberof GoSetup
3788  * @version Introduced in firmware 5.3.19.50
3789  * @param setup GoSetup object.
3790  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3791  * @return The current phase pattern index maximum value (inclusive).
3792  */
3794 
3795 
3796 /**
3797  * Gets the layout configuration module.
3798  *
3799  * @public @memberof GoSetup
3800  * @version Introduced in firmware 4.0.10.27
3801  * @param setup GoSetup object.
3802  * @return Layout configuration module.
3803  */
3804 GoFx(GoLayout) GoSetup_Layout(GoSetup setup);
3805 
3806 /**
3807  * Gets the profile generation module, used for profile generation configuration.
3808  *
3809  * @public @memberof GoSetup
3810  * @version Introduced in firmware 4.2.4.7
3811  * @param setup GoSetup object.
3812  * @return Profile generation configuration module.
3813  */
3815 
3816 /**
3817  * Gets the surface generation module, used for surface generation configuration.
3818  *
3819  * @public @memberof GoSetup
3820  * @version Introduced in firmware 4.0.10.27
3821  * @param setup GoSetup object.
3822  * @return Surface generation configuration module.
3823  */
3825 
3826 /**
3827  * Gets the part detection module, used for part detection configuration.
3828  *
3829  * @public @memberof GoSetup
3830  * @version Introduced in firmware 4.0.10.27
3831  * @param setup GoSetup object.
3832  * @return Part detection configuration module.
3833  */
3835 
3836 /**
3837  * Gets the part matching module, used for part matching configuration.
3838  *
3839  * @public @memberof GoSetup
3840  * @version Introduced in firmware 4.2.4.7
3841  * @param setup GoSetup object.
3842  * @return Part matching configuration module.
3843  */
3845 
3846 /**
3847 * Gets the advanced acquisition module, used for advanced acquisition configuration.
3848 *
3849 * @public @memberof GoSetup
3850 * @version Introduced in firmware 4.6
3851 * @param setup GoSetup object.
3852 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3853 * @return Advanced acquisition configuration module.
3854 */
3855 GoFx(GoAdvanced) GoSetup_Advanced(GoSetup setup, GoRole role);
3856 
3857 /**
3858  * Gets the Section configuration module, used for surface sections.
3859  *
3860  * @public @memberof GoSetup
3861  * @version Introduced in firmware 4.4.4.14
3862  * @param setup GoSetup object.
3863  * @return Section configuration module.
3864  */
3865 GoFx(GoSections) GoSetup_Sections(GoSetup setup);
3866 
3867 /**
3868  * Gets the tracheid configuration module.
3869  *
3870  * @public @memberof GoSetup
3871  * @version Introduced in firmware 4.5.3.57
3872  * @param setup GoSetup object.
3873  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3874  * @return Tracheid configuration module.
3875  */
3876 GoFx(GoTracheid) GoSetup_Tracheid(GoSetup setup, GoRole role);
3877 
3878 /**
3879 * Returns a boolean value representing the state of the independent exposures used field.
3880 * If this feature is available, it will use the exposure values and limits assigned to
3881 * both the front and back cameras.
3882 *
3883 * @public @memberof GoSetup
3884 * @version Introduced in firmware 4.6.0.140
3885 * @param setup GoSetup object.
3886 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3887 * @return kTRUE if used, or kFALSE if not used.
3888 */
3890 
3891 /**
3892 * Enables independent exposures feature, i.e. separate exposures
3893 * for separate cameras.
3894 *
3895 * @public @memberof GoSetup
3896 * @version Introduced in firmware 4.6.0.140
3897 * @param setup GoSetup object.
3898 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3899 * @param enable kTRUE to enable, or kFALSE to disable.
3900 * @return Operation status.
3901 */
3903 
3904 /**
3905 * Determines if independent exposures feature is enabled.
3906 *
3907 * @public @memberof GoSetup
3908 * @version Introduced in firmware 4.6.0.140
3909 * @param setup GoSetup object.
3910 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3911 * @return kTRUE if enabled, or kFALSE if disabled.
3912 */
3914 
3915 /**
3916 * Gets the maximum valid value for the front camera exposure setting.
3917 *
3918 * @public @memberof GoSetup
3919 * @version Introduced in firmware 4.6.0.140
3920 * @param setup GoSetup object.
3921 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3922 * @return Maximum valid auxiliary exposure value (microseconds).
3923 */
3925 
3926 /**
3927 * Gets the minimum valid value for the front camara exposure setting.
3928 *
3929 * @public @memberof GoSetup
3930 * @version Introduced in firmware 4.6.0.140
3931 * @param setup GoSetup object.
3932 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3933 * @return Minimum valid auxiliary exposure value (microseconds).
3934 */
3936 
3937 /**
3938 * Sets the front camera exposure value.
3939 *
3940 * @public @memberof GoSetup
3941 * @version Introduced in firmware 4.6.0.140
3942 * @param setup GoSetup object.
3943 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3944 * @param exposure Intended auxiliary exposure value.
3945 * @return Operation status.
3946 */
3947 GoFx(kStatus) GoSetup_SetFrontCameraExposure(GoSetup setup, GoRole role, k64f exposure);
3948 
3949 /**
3950 * Gets the front camera exposure value.
3951 *
3952 * @public @memberof GoSetup
3953 * @version Introduced in firmware 4.6.0.140
3954 * @param setup GoSetup object.
3955 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3956 * @return Auxiliary exposure value (microseconds).
3957 */
3958 GoFx(k64f) GoSetup_FrontCameraExposure(GoSetup setup, GoRole role);
3959 
3960 /**
3961 * Gets the maximum valid value for the back camera exposure setting.
3962 *
3963 * @public @memberof GoSetup
3964 * @version Introduced in firmware 4.6.0.140
3965 * @param setup GoSetup object.
3966 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3967 * @return Maximum valid auxiliary exposure value (microseconds).
3968 */
3970 
3971 /**
3972 * Gets the minimum valid value for the back camara exposure setting.
3973 *
3974 * @public @memberof GoSetup
3975 * @version Introduced in firmware 4.6.0.140
3976 * @param setup GoSetup object.
3977 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3978 * @return Minimum valid auxiliary exposure value (microseconds).
3979 */
3981 
3982 /**
3983 * Sets the back camera exposure value.
3984 *
3985 * @public @memberof GoSetup
3986 * @version Introduced in firmware 4.6.0.140
3987 * @param setup GoSetup object.
3988 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
3989 * @param exposure Intended auxiliary exposure value.
3990 * @return Operation status.
3991 */
3992 GoFx(kStatus) GoSetup_SetBackCameraExposure(GoSetup setup, GoRole role, k64f exposure);
3993 
3994 /**
3995 * Gets the back camera exposure value.
3996 *
3997 * @public @memberof GoSetup
3998 * @version Introduced in firmware 4.6.0.140
3999 * @param setup GoSetup object.
4000 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4001 * @return Auxiliary exposure value (microseconds).
4002 */
4003 GoFx(k64f) GoSetup_BackCameraExposure(GoSetup setup, GoRole role);
4004 
4005 /**
4006 * Gets the source used for generating intensity data.
4007 *
4008 * @public @memberof GoSetup
4009 * @version Introduced in firmware 4.6.0.152
4010 * @param setup GoSetup object.
4011 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4012 * @return Source of intensity data.
4013 */
4015 
4016 /**
4017 * Sets the source to be used for generating intensity data.
4018 *
4019 * @public @memberof GoSetup
4020 * @version Introduced in firmware 4.6.0.152
4021 * @param setup GoSetup object.
4022 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4023 * @param source The source to be used.
4024 * @return Operation status.
4025 */
4027 
4028 /**
4029 * Gets the intensity data generation mode.
4030 *
4031 * @public @memberof GoSetup
4032 * @version Introduced in firmware 4.7.10.10
4033 * @param setup GoSetup object.
4034 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4035 * @return Intensity generation mode.
4036 */
4038 
4039 /**
4040 * Sets the intensity data generation mode.
4041 *
4042 * @public @memberof GoSetup
4043 * @version Introduced in firmware 4.7.10.10
4044 * @param setup GoSetup object.
4045 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4046 * @param mode Intensity generation mode.
4047 * @return Operation status.
4048 */
4050 
4051 /**
4052 * Gets the availability of the intensity mode property.
4053 *
4054 * @public @memberof GoSetup
4055 * @version Introduced in firmware 4.7.10.10
4056 * @param setup GoSetup object.
4057 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4058 * @return kTRUE if available and kFALSE otherwise.
4059 */
4060 GoFx(kBool) GoSetup_IntensityModeUsed(GoSetup setup, GoRole role);
4061 
4062 /**
4063 * Gets the intensity source option at the given index.
4064 *
4065 * @public @memberof GoSetup
4066 * @version Introduced in firmware 4.6.0.152
4067 * @param setup GoSetup object.
4068 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4069 * @param index The index with which to retrieve an exposure mode option.
4070 * @return Intensity source set.
4071 * @see GoSetup_IntensitySourceOptionCount
4072 */
4074 
4075 /**
4076 * Gets the intensity source option count.
4077 *
4078 * @public @memberof GoSetup
4079 * @version Introduced in firmware 4.6.0.152
4080 * @param setup GoSetup object.
4081 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4082 * @return Intensity source option count.
4083 */
4085 
4086 /**
4087 * Gets layout grid used state.
4088 *
4089 * @public @memberof GoSetup
4090 * @version Introduced in firmware 4.0.10.27
4091 * @param setup GoSetup object.
4092 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4093 * @return Whether grid is used in n-buddy system.
4094 */
4095 GoFx(kBool) GoSetup_LayoutGridUsed(GoSetup setup, GoRole role);
4096 
4097 /**
4098 * Gets layout grid direction system value being used on device in n-buddy system.
4099 *
4100 * @public @memberof GoSetup
4101 * @version Introduced in firmware 4.0.10.27
4102 * @param setup GoSetup object.
4103 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4104 * @return Whether grid direction is reversed system value.
4105 */
4107 
4108 /**
4109 * Gets layout grid direction being configured (may not be applicable or used) on device in n-buddy system.
4110 *
4111 * @public @memberof GoSetup
4112 * @version Introduced in firmware 6.0.18.7
4113 * @param setup GoSetup object.
4114 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4115 * @return Whether grid direction is reversed.
4116 */
4117 GoFx(kBool) GoSetup_LayoutGridDirection(GoSetup setup, GoRole role);
4118 
4119 /**
4120 * Sets grid direction being configured (may not be applicable or used) on device in n-buddy system.
4121 *
4122 * @public @memberof GoSetup
4123 * @version Introduced in firmware 6.0.18.7
4124 * @param setup GoSetup object.
4125 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4126 * @param value Whether grid direction is reversed.
4127 * @return Operation status.
4128 */
4129 GoFx(kStatus) GoSetup_SetLayoutGridDirection(GoSetup setup, GoRole role, kBool value);
4130 
4131 /**
4132 * Gets column index system value being used on device in n-buddy system.
4133 *
4134 * @public @memberof GoSetup
4135 * @version Introduced in firmware 4.0.10.27
4136 * @param setup GoSetup object.
4137 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4138 * @return Layout grid column system value.
4139 */
4141 
4142 /**
4143 * Gets column index being configured (may not be applicable or used) on device in n-buddy system.
4144 *
4145 * @public @memberof GoSetup
4146 * @version Introduced in firmware 6.0.18.7
4147 * @param setup GoSetup object.
4148 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4149 * @return column index.
4150 */
4151 GoFx(k32s) GoSetup_LayoutGridColumn(GoSetup setup, GoRole role);
4152 
4153 /**
4154 * Sets column index being configured (may not be applicable or used) on device in n-buddy system.
4155 *
4156 * @public @memberof GoSetup
4157 * @version Introduced in firmware 6.0.18.7
4158 * @param setup GoSetup object.
4159 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4160 * @param value Column index.
4161 * @return Operation status.
4162 */
4163 GoFx(kStatus) GoSetup_SetLayoutGridColumn(GoSetup setup, GoRole role, k32s value);
4164 
4165 /**
4166 * Gets row index system value being used on device in n-buddy system.
4167 *
4168 * @public @memberof GoSetup
4169 * @version Introduced in firmware 4.0.10.27
4170 * @param setup GoSetup object.
4171 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4172 * @return Layout grid row system value.
4173 */
4175 
4176 /**
4177 * Gets row index being configured (may not be applicable or used) on device in n-buddy system.
4178 *
4179 * @public @memberof GoSetup
4180 * @version Introduced in firmware 6.0.18.7
4181 * @param setup GoSetup object.
4182 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4183 * @return row index.
4184 */
4185 GoFx(k32s) GoSetup_LayoutGridRow(GoSetup setup, GoRole role);
4186 
4187 /**
4188 * Sets row index being configured (may not be applicable or used) on device in n-buddy system.
4189 *
4190 * @public @memberof GoSetup
4191 * @version Introduced in firmware 6.0.18.7
4192 * @param setup GoSetup object.
4193 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4194 * @param value row index.
4195 * @return Operation status.
4196 */
4197 GoFx(kStatus) GoSetup_SetLayoutGridRow(GoSetup setup, GoRole role, k32s value);
4198 
4199 /**
4200 * Gets Multiplexing bank used state in n-buddy system.
4201 *
4202 * @public @memberof GoSetup
4203 * @version Introduced in firmware 4.0.10.27
4204 * @param setup GoSetup object.
4205 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4206 * @return Whether multiplexing bank is used.
4207 */
4209 
4210 /**
4211 * Gets Multiplex bank system value being used on device in n-buddy system.
4212 *
4213 * @public @memberof GoSetup
4214 * @version Introduced in firmware 4.0.10.27
4215 * @param setup GoSetup object.
4216 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4217 * @return Multiplexing bank value system value.
4218 */
4220 
4221 /**
4222 * Gets Multiplex bank value being configured (may not be applicable or used) on device in n-buddy system.
4223 *
4224 * @public @memberof GoSetup
4225 * @version Introduced in firmware 6.0.18.7
4226 * @param setup GoSetup object.
4227 * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4228 * @return Multiplexing bank value.
4229 */
4231 
4232 /**
4233 * Sets multiplexing bank value being configured (may not be applicable or used) on device in n-buddy system.
4234 *
4235 * @public @memberof GoSetup
4236 * @version Introduced in firmware 6.0.18.7
4237 * @param setup GoSetup object.
4238 * @param role Determines which device to apply changes to. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4239 * @param value Multiplexing bank value.
4240 * @return Operation status.
4241 */
4242 GoFx(kStatus) GoSetup_SetLayoutMultiplexingBank(GoSetup setup, GoRole role, k32u value);
4243 
4244 /**
4245  * [Deprecated] Use GoSetup_Advanced() instead.
4246  *
4247  * Gets the material acquisition module, used for material acquisition configuration.
4248  *
4249  * @deprecated
4250  * @public @memberof GoSetup
4251  * @version Introduced in firmware 4.1.3.106
4252  * @param setup GoSetup object.
4253  * @param role Determines which device to retrieve the value from. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx). See GoRole for more details.
4254  * @return Material acquisition configuration module.
4255  */
4256 GoFx(GoMaterial) GoSetup_Material(GoSetup setup, GoRole role);
4257 
4258 #include <GoSdk/GoSetup.x.h>
4259 
4260 #endif
kBool GoSetup_InputTriggerEnabledSystemValue(GoSetup setup)
Gets the input trigger system value.
kSize GoSetup_BarHoleCountValue(GoSetup setup)
Gets the bar hole count system value.
kStatus GoSetup_EnableAlignmentEncoderCalibrate(GoSetup setup, kBool enabled)
Enables encoder calibration after alignment.
kBool GoSetup_OcclusionReductionEnabledUsed(GoSetup setup)
Returns a boolean representing whether the user occlusion reduction configuration is used...
k64f GoSetup_ActiveAreaHeightLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the ActiveAreaHeight setting.
k32u GoSetup_ExternalInputZPulseIndex(GoSetup setup)
Gets the external input index for triggering encoder Z-pulse.
k64u GoSetup_BackgroundSuppressionRatio(GoSetup setup)
Gets the background suppression ratio value.
kStatus GoSetup_SetXDecimationWindow(GoSetup setup, k64f window)
Sets the x-direction decimation window.
k64f GoSetup_ActiveAreaZLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the ActiveAreaZ setting.
kBool GoSetup_UniformSpacingEnabledSystemValue(GoSetup setup)
Gets the Uniform Spacing enabled system value.
k64f GoSetup_ActiveAreaWidth(GoSetup setup, GoRole role)
Gets the active area width.
kBool GoSetup_XGapFillingUsed(GoSetup setup)
Indicates whether X gap filling can be used for the current scan mode and device family.
kBool GoSetup_ZSubsamplingDefaultEnabled(GoSetup setup, GoRole role)
Returns whether the z-resolution divider default is being used.
kBool GoSetup_TriggerGateEnabled(GoSetup setup)
Reports whether the trigger gate feature is currently enabled.
k64f GoSetup_XGapFillingWindowLimitMax(GoSetup setup)
Gets the x-direction gap-filling window maximum.
GoAlignmentTarget GoSetup_AlignmentMovingTargetOptionAt(GoSetup setup, kSize index)
Gets the moving alignment target option at the given index.
k64f GoSetup_ActiveAreaXLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the ActiveAreaX setting.
k32s GoSetup_LayoutGridColumnSystemValue(GoSetup setup, GoRole role)
Gets column index system value being used on device in n-buddy system.
k64f GoSetup_ActiveAreaHeightLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the ActiveAreaHeight setting.
k64f GoSetup_EnhancedSurfaceFlatnessFilterCoefficientMaxValue(GoSetup setup, GoRole role)
Gets the largest allowable enhanced surface flatness filter coefficient.
kBool GoSetup_ZSubsamplingUsed(GoSetup setup, GoRole role)
Returns whether the value used for the z-resolution divider is the one set by the user or the system ...
kStatus GoSetup_SetActiveAreaLength(GoSetup setup, GoRole role, k64f value)
Sets the active area Length.
GoTriggerUnits GoSetup_TriggerUnit(GoSetup setup)
Gets the system trigger units.
kStatus GoSetup_SetPlateHoleCount(GoSetup setup, kSize count)
Sets the number of holes that are defined on the calibration plate.
kStatus GoSetup_SetAlignmentType(GoSetup setup, GoAlignmentType type)
Sets the type used for alignment.
k64f GoSetup_YMedianWindowLimitMin(GoSetup setup)
Gets the y-direction median window minimum.
k32s GoSetup_LayoutGridRow(GoSetup setup, GoRole role)
Gets row index being configured (may not be applicable or used) on device in n-buddy system...
kBool GoSetup_XSlopeUsed(GoSetup setup)
Indicates whether X slope can be used for the current scan mode and device family.
kStatus GoSetup_SetXSubsamplingDefaultEnabled(GoSetup setup, GoRole role, kBool useDefault)
Sets whether to use the sensor's default x-resolution divider or the user-selected divider...
k64f GoSetup_ActiveAreaWidthLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the ActiveAreaWidth setting.
Represents all possible sources of intensity data.
kBool GoSetup_UniformSpacingAvailable(GoSetup setup)
Gets a boolean representing whether or not the user specified Uniform Spacing setting is being used a...
k32s GoSetup_LayoutGridRowSystemValue(GoSetup setup, GoRole role)
Gets row index system value being used on device in n-buddy system.
k64f GoSetup_Exposure(GoSetup setup, GoRole role)
Gets the exposure value.
k64f GoSetup_XMedianWindow(GoSetup setup)
Gets the x-direction median window.
k64f GoSetup_XGapFillingWindow(GoSetup setup)
Gets the x-direction gap-filling window.
kBool GoSetup_YGapFillingEnabled(GoSetup setup)
Gets the status of y-direction gap-filling.
Represents configurable advanced acquisition settings.
kBool GoSetup_XGapFillingEnabled(GoSetup setup)
Gets the status of x-direction gap-filling.
kStatus GoSetup_EnableYMedian(GoSetup setup, kBool enable)
Sets the status of y-direction median.
k64f GoSetup_ActiveAreaY(GoSetup setup, GoRole role)
Gets the active area Y.
kStatus GoSetup_SetReversalDistanceAutoEnabled(GoSetup setup, kBool enabled)
This API is experimental and may change in a future release Enables or disables auto encoder reversal...
k32u GoSetup_ZSubsamplingOptionAt(GoSetup setup, GoRole role, kSize index)
Gets the z-resolution option at the specified index.
Declares the GoPartDetection class.
kStatus GoSetup_EnableMaxFrameRate(GoSetup setup, kBool enable)
Enables or disables operation at full frame rate (ignoring frame rate setting).
k64f GoSetup_TrackingAreaHeight(GoSetup setup, GoRole role)
Gets the tracking window height.
k64f GoSetup_ActiveAreaYLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the ActiveAreaY setting.
kBool GoSetup_ReversalDistanceAutoEnabled(GoSetup setup)
This API is experimental and may change in a future release Returns whether or not auto encoder rever...
Represents a prefilter type.
kSize GoSetup_PatternSequenceTypeOptionCount(GoSetup setup, GoRole role)
Gets the pattern sequence type option count.
k32u GoSetup_XSubsamplingSystemValue(GoSetup setup, GoRole role)
Gets the x-resolution divider system value.
kStatus GoSetup_AddExposureStep(GoSetup setup, GoRole role, k64f exposure)
Adds an exposure step.
k64f GoSetup_TriggerDelay(GoSetup setup)
Gets the trigger delay.
kStatus GoSetup_EnablePreferMasterTimeEncoderEnabled(GoSetup setup, kBool enable)
Sets whether the time and encoder values are preferred to come from the Master rather than from the s...
kStatus GoSetup_SetActiveAreaWidth(GoSetup setup, GoRole role, k64f value)
Sets the active area width.
kBool GoSetup_TriggerExternalInputIndexUsed(GoSetup setup)
Gets the flag indicating whether the external input trigger is being used.
kBool GoSetup_BarDegreesOfFreedomUsed(GoSetup setup)
Indicates if the degrees of freedom for bar alignment can be modified by the user.
Declares the GoSections class.
k32u GoSetup_BackCameraX(GoSetup setup, GoRole role)
Gets the camera region-of-interest x origin.
kSize GoSetup_XSubsamplingOptionCount(GoSetup setup, GoRole role)
Gets the count of valid x-resolution options.
k64f GoSetup_BackCameraExposure(GoSetup setup, GoRole role)
Gets the back camera exposure value.
k64f GoSetup_TransformedDataRegionX(GoSetup setup, GoRole role)
Gets the transformed data region X value.
Represents tracheid data.
kStatus GoSetup_SetAlignmentMovingTarget(GoSetup setup, GoAlignmentTarget target)
Sets the target type used for moving alignment calibration.
kBool GoSetup_YMedianUsed(GoSetup setup)
Indicates whether Y median can be used for the current scan mode and device family.
kSize GoSetup_TriggerExternalInputIndexOptionCount(GoSetup setup)
Gets the count of available external input trigger index options.
kSize GoSetup_TriggerSourceOptionCount(GoSetup setup)
Gets the count of available trigger source options.
kBool GoSetup_YSmoothingUsed(GoSetup setup)
Indicates whether Y smoothing can be used for the current scan mode and device family.
k64f GoSetup_TransformedDataRegionLength(GoSetup setup, GoRole role)
Gets the transformed data region length value.
kBool GoSetup_UniformSpacingEnabled(GoSetup setup)
Gets the user specified Uniform Spacing enabled state.
kBool GoSetup_IntensityEnabled(GoSetup setup)
Reports whether the profile intensity collection is enabled.
kStatus GoSetup_SetZSubsampling(GoSetup setup, GoRole role, k32u zSubsampling)
Sets the current z-resolution divider.
kBool GoSetup_XDecimationEnabled(GoSetup setup)
Gets the status of x-direction decimation.
kSize GoSetup_AlignmentTypeOptionCount(GoSetup setup)
Gets the alignment type option count.
kStatus GoSetup_EnableTriggerGate(GoSetup setup, kBool enable)
Sets the trigger gate feature.
k64f GoSetup_YSmoothingWindow(GoSetup setup)
Gets the y-direction smoothing window.
kStatus GoSetup_SetBackgroundSuppressionRatio(GoSetup setup, k64u ratio)
Sets the background suppression ratio value.
kSize GoSetup_BarHoleCount(GoSetup setup)
Gets the number of holes that are defined on the calibration bar.
kStatus GoSetup_SetBarHoleDistance(GoSetup setup, k64f distance)
Sets the distance between holes that are defined on the calibration bar.
kStatus GoSetup_SetLayoutGridRow(GoSetup setup, GoRole role, k32s value)
Sets row index being configured (may not be applicable or used) on device in n-buddy system...
kBool GoSetup_TrackingUsed(GoSetup setup, GoRole role)
Returns a boolean value representing whether the Tracking Enabled field is used.
GoEncoderTriggerMode GoSetup_EncoderTriggerMode(GoSetup setup)
Gets the encoder trigger mode.
Represents a profile generation configuration.
kBool GoSetup_TriggerBurstEnabled(GoSetup setup)
This API is experimental and may change in a future release Gets the trigger burst enabled state...
kSize GoSetup_IntensitySourceOptionCount(GoSetup setup, GoRole role)
Gets the intensity source option count.
k64f GoSetup_EncoderSpacingLimitMin(GoSetup setup)
Constraint for the minimum valid value of the Encoder Period setting.
kStatus GoSetup_SetDynamicExposureMax(GoSetup setup, GoRole role, k64f exposure)
Sets the maximum value for the Dynamic Exposure setting.
kBool GoSetup_FlickerFreeModeEnabled(GoSetup setup)
Reports whether flicker free mode is enabled.
kStatus GoSetup_SetExposureMode(GoSetup setup, GoRole role, GoExposureMode mode)
Sets the exposure mode.
k64f GoSetup_XSmoothingWindowLimitMin(GoSetup setup)
Gets the x-direction smoothing window minimum.
k32u GoSetup_PatternSequenceIndexMin(GoSetup setup, GoRole role)
Gets the current phase pattern index min value (inclusive).
kStatus GoSetup_SetFrameRate(GoSetup setup, k64f frameRate)
Sets the current frame rate for time-based triggering.
k64f GoSetup_TrackingSearchThreshold(GoSetup setup, GoRole role)
Gets the tracking window search threshold.
k32u GoSetup_ZSubsampling(GoSetup setup, GoRole role)
Gets the current z-resolution divider.
kStatus GoSetup_SetActiveAreaX(GoSetup setup, GoRole role, k64f value)
Sets the active area x origin.
kBool GoSetup_IndependentExposuresUsed(GoSetup setup, GoRole role)
Returns a boolean value representing the state of the independent exposures used field.
kSize GoSetup_ZSubsamplingOptionCount(GoSetup setup, GoRole role)
Gets the count of valid z-resolution options.
kStatus GoSetup_SelectCustomEnhancedSurfaceFlatnessFilter(GoSetup setup, GoRole role, GoPreFilterLengthOption length, const GoPreFilterCoefficient *coefficientsArray)
Selects using a custom enhanced surface flatness filter, if device supports enhanced surface flatness...
k64f GoSetup_EnhancedSurfaceFlatnessFilterCoefficientsExpectedSum(GoSetup setup, GoRole role)
Gets the expected value of the sum of all the enhanced surface flatness filter coefficients.
Represents a user role. Use GO_ROLE_MAIN or GOROLE_BUDDYIDX(buddyidx)
kBool GoSetup_AlignmentUsed(GoSetup setup)
Indicates whether alignment can be used.
kStatus GoSetup_SetLayoutGridColumn(GoSetup setup, GoRole role, k32s value)
Sets column index being configured (may not be applicable or used) on device in n-buddy system...
kStatus GoSetup_SetSpacingIntervalType(GoSetup setup, GoRole role, GoSpacingIntervalType type)
Sets the spacing interval type.
kBool GoSetup_YSlopeEnabled(GoSetup setup)
Gets the status of y-direction slope.
GoOcclusionReductionAlg GoSetup_OcclusionReductionAlg(GoSetup setup)
Gets the occlusion reduction algorithm.
k64f GoSetup_FrameRateLimitMax(GoSetup setup)
Constraint for the maximum valid value of the Frame Rate setting.
kStatus GoSetup_SetTriggerExternalInputIndex(GoSetup setup, k32s index)
Sets the external input index to trigger profile/surface capturing.
GoMode GoSetup_ScanModeOptionAt(GoSetup setup, kSize index)
Gets the scan mode option at the specified index.
kSize GoSetup_PatternSequenceCount(GoSetup setup, GoRole role)
Gets the current pattern sequence count.
[Deprecated] Use GoAdvanced class instead.
Represents an alignment degree of freedom setting.
kStatus GoSetup_SetYGapFillingWindow(GoSetup setup, k64f window)
Sets the y-direction gap-filling window.
kBool GoSetup_ZSubsamplingDefaultEnabledUsed(GoSetup setup, GoRole role)
Returns whether the sensor has a z-resolution divider default value or not.
kStatus GoSetup_SetPlateRefHoleDiameter(GoSetup setup, k64f diameter)
Sets the diameter of the reference hole defined on the calibration plate.
k32u GoSetup_BackCameraHeight(GoSetup setup, GoRole role)
Gets the camera region-of-interest height.
k64f GoSetup_FrameRate(GoSetup setup)
Reports the currently configured frame rate.
k32u GoSetup_BackCameraUsed(GoSetup setup, GoRole role)
Returns a boolean representing whether the back camera element is used.
k64u GoSetup_LaserIdleTime(GoSetup setup)
This API is experimental and may change in a future release Gets the idle time before laser deactivat...
kBool GoSetup_IsEnhancedSurfaceFlatnessFilterSupported(GoSetup setup, GoRole role)
Returns whether enhanced surface flatness filtering is supported on the device specified by the "role...
kStatus GoSetup_EnableUniformSpacing(GoSetup setup, kBool enable)
Sets the user specified Uniform Spacing enabled state.
kStatus GoSetup_SetLaserWakeupEncoderTravel(GoSetup setup, k64u distance)
This API is experimental and may change in a future release Sets the encoder wakeup travel distance...
GoPreFilterLengthOption GoSetup_EnhancedSurfaceFlatnessFilterLength(GoSetup setup, GoRole role)
Gets the enhanced surface flatness filter length selected, if device supports enhanced surface flatne...
k32u GoSetup_XSpacingCount(GoSetup setup, GoRole role)
Gets the X spacing count.
k64f GoSetup_ActiveAreaZ(GoSetup setup, GoRole role)
Gets the active area z origin.
kBool GoSetup_BackgroundSuppressionEnabled(GoSetup setup)
Gets the background suppression enabled value.
Represents a trigger.
k64f GoSetup_ReversalDistanceSystemValue(GoSetup setup)
This API is experimental and may change in a future release Gets the encoder reversal distance thresh...
GoIntensityMode GoSetup_IntensityMode(GoSetup setup, GoRole role)
Gets the intensity data generation mode.
kStatus GoSetup_EnableBackgroundSuppression(GoSetup setup, kBool enabled)
Sets the background suppression enabled value.
k32u GoSetup_YSpacingCount(GoSetup setup, GoRole role)
Gets the Y spacing count.
k32u GoSetup_FrontCameraWidth(GoSetup setup, GoRole role)
Gets the camera region-of-interest width.
kStatus GoSetup_DisableEnhancedSurfaceFlatnessFilter(GoSetup setup, GoRole role)
Disables use of enhanced surface flatness filtering, if device supports enhanced surface flatness fil...
kBool GoSetup_XSmoothingUsed(GoSetup setup)
Indicates whether X smoothing can be used for the current scan mode and device family.
GoSpacingIntervalType GoSetup_SpacingIntervalType(GoSetup setup, GoRole role)
Gets the spacing interval type.
GoIntensitySource GoSetup_IntensitySourceOptionAt(GoSetup setup, GoRole role, kSize index)
Gets the intensity source option at the given index.
k64f GoSetup_PlateSecHoleDiameter(GoSetup setup)
Gets the diameter of the secondary hole defined on the calibration plate.
k32u GoSetup_FrontCameraX(GoSetup setup, GoRole role)
Gets the camera region-of-interest x origin.
k64f GoSetup_DiskHeight(GoSetup setup)
Gets the height of the disk used for travel calibration.
kBool GoSetup_PatternSequenceIndexUsed(GoSetup setup, GoRole role)
Gets the current phase pattern index used flag value.
kStatus GoSetup_SetTrackingSearchThreshold(GoSetup setup, GoRole role, k64f threshold)
Sets the tracking window search threshold.
k64f GoSetup_FrameDataRate(GoSetup setup)
Reports the current frame rate of normal (range, profile, or surface) data.
kSize GoSetup_PlateHoleCount(GoSetup setup)
Gets the number of holes that are defined on the calibration plate.
GoAlignmentType GoSetup_AlignmentType(GoSetup setup)
Gets the type used for alignment calibration.
k32u GoSetup_LayoutMultiplexingBank(GoSetup setup, GoRole role)
Gets Multiplex bank value being configured (may not be applicable or used) on device in n-buddy syste...
k32u GoSetup_TriggerBurstCount(GoSetup setup)
This API is experimental and may change in a future release Gets the trigger burst count...
GoAlignmentTarget GoSetup_AlignmentStationaryTargetOptionAt(GoSetup setup, kSize index)
Gets the stationary alignment target option at the given index.
kStatus GoSetup_EnableTracking(GoSetup setup, GoRole role, kBool enable)
Enables tracking.
kBool GoSetup_XSlopeEnabled(GoSetup setup)
Gets the status of x-direction slope.
kBool GoSetup_OcclusionReductionAlgUsed(GoSetup setup)
Returns a boolean representing whether the user occlusion reduction algorithm is used.
k64f GoSetup_ActiveAreaLengthLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the ActiveAreaLength setting.
kBool GoSetup_OcclusionReductionEnabled(GoSetup setup)
Gets the occlusion reduction enabled state.
GoSections GoSetup_Sections(GoSetup setup)
Gets the Section configuration module, used for surface sections.
GoMaterial GoSetup_Material(GoSetup setup, GoRole role)
[Deprecated] Use GoSetup_Advanced() instead.
kStatus GoSetup_SetZSubsamplingDefaultEnabled(GoSetup setup, GoRole role, kBool useDefault)
Sets whether to use the sensor's default z-resolution divider or the user-selected divider...
GoIntensitySource GoSetup_IntensitySource(GoSetup setup, GoRole role)
Gets the source used for generating intensity data.
kStatus GoSetup_EnableTemperatureSafety(GoSetup setup, kBool enable)
Enables the temperature saftey of the sensor system.
kStatus GoSetup_SelectBuiltInEnhancedSurfaceFlatnessFilter(GoSetup setup, GoRole role, GoPreFilterType type, GoPreFilterLengthOption length)
Selects one of the builtin enhanced surface flatness filters to use, if device supports enhanced surf...
Represents a layout related sensor configuration.
kStatus GoSetup_EnableXSmoothing(GoSetup setup, kBool enabled)
Sets the status of x-direction smoothing.
Declares the GoTransform class.
GoTracheid GoSetup_Tracheid(GoSetup setup, GoRole role)
Gets the tracheid configuration module.
kStatus GoSetup_SetBarHeight(GoSetup setup, k64f height)
Sets the height of the bar used for travel calibration.
k64f GoSetup_YMedianWindowLimitMax(GoSetup setup)
Gets the y-direction median window maximum.
kStatus GoSetup_SetActiveAreaY(GoSetup setup, GoRole role, k64f value)
Sets the active area Y.
kStatus GoSetup_ClearPolygonCorners(GoSetup setup)
Clears all corner parameter objects from the collection of polygon corners for alignment.
kStatus GoSetup_SetLaserIdleTime(GoSetup setup, k64u time)
This API is experimental and may change in a future release Sets the time before the laser deactivate...
GoAlignmentTarget GoSetup_AlignmentMovingTarget(GoSetup setup)
Gets the target type used for moving alignment calibration.
k64f GoSetup_YGapFillingWindow(GoSetup setup)
Gets the y-direction gap-filling window.
k64f GoSetup_TracheidRate(GoSetup setup)
Reports the current frame rate of Tracheid data.
k64f GoSetup_XSmoothingWindow(GoSetup setup)
Gets the x-direction smoothing window.
kSize GoSetup_PolygonCornerCount(GoSetup setup)
Gets the number of corner parameters defined in the collection of polygon corners.
kStatus GoSetup_SetBackCameraExposure(GoSetup setup, GoRole role, k64f exposure)
Sets the back camera exposure value.
k64f GoSetup_SpacingInterval(GoSetup setup, GoRole role)
Gets the spacing interval.
kBool GoSetup_XSubsamplingUsed(GoSetup setup, GoRole role)
Returns whether the value used for the x-resolution divider is the one set by the user or the system ...
k64f GoSetup_DiskDiameter(GoSetup setup)
Gets the diameter of the disk used for travel calibration.
k64f GoSetup_TransformedDataRegionZ(GoSetup setup, GoRole role)
Gets the transformed data region Z value.
k32s GoSetup_LayoutGridColumn(GoSetup setup, GoRole role)
Gets column index being configured (may not be applicable or used) on device in n-buddy system...
k64f GoSetup_ActiveAreaXLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the ActiveAreaX setting.
kStatus GoSetup_SetTriggerBurstEnabled(GoSetup setup, kBool enable)
Enables the trigger burst.
kSize GoSetup_ScanModeOptionCount(GoSetup setup)
Gets the scan mode option count.
kBool GoSetup_TriggerGateEnabledSystemValue(GoSetup setup)
Reports the trigger gate enabled system value.
Represents a surface generation configuration.
k64f GoSetup_FrontCameraExposureLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the front camera exposure setting.
GoAlignmentTarget GoSetup_TriggerExternalInputIndexOptionAt(GoSetup setup, kSize index)
Gets the external input trigger option at the given index.
kBool GoSetup_YSmoothingEnabled(GoSetup setup)
Gets the status of y-direction smoothing.
kStatus GoSetup_SetBarHoleCount(GoSetup setup, kSize count)
Sets the number of holes that are defined on the calibration bar.
kStatus GoSetup_SetYSlopeWindow(GoSetup setup, k64f window)
Sets the status of y-direction slope.
Essential SDK declarations.
kStatus GoSetup_EnableExternalInputZPulse(GoSetup setup, kBool enable)
Sets the state of the external input triggered encoder Z-pulse feature.
k32u GoSetup_FrontCameraY(GoSetup setup, GoRole role)
Gets the camera region-of-interest y origin.
kStatus GoSetup_SetEncoderSpacing(GoSetup setup, k64f period)
Sets the current encoder period for encoder-based triggering.
kStatus GoSetup_SetBarDegreesOfFreedom(GoSetup setup, GoAlignmentDegreesOfFreedom dof)
Sets the degrees of freedom used for bar alignment calibration.
GoAdvanced GoSetup_Advanced(GoSetup setup, GoRole role)
Gets the advanced acquisition module, used for advanced acquisition configuration.
k64f GoSetup_YMedianWindow(GoSetup setup)
Gets the y-direction median window.
k64f GoSetup_YDecimationWindow(GoSetup setup)
Gets the y-direction decimation window.
k64f GoSetup_BarHoleDistance(GoSetup setup)
Gets the distance between holes that are defined on the calibration bar.
k64f GoSetup_YGapFillingWindowLimitMax(GoSetup setup)
Gets the y-direction gap-filling window maximum.
kBool GoSetup_InputTriggerEnabledUsed(GoSetup setup)
Returns a boolean representing whether the user input trigger configuration is used.
kBool GoSetup_XDecimationUsed(GoSetup setup)
Indicates whether X decimation can be used for the current scan mode and device family.
k64f GoSetup_BarWidth(GoSetup setup)
Gets the width of the bar used for travel calibration.
kBool GoSetup_InputTriggerEnabled(GoSetup setup)
Gets the input trigger enabled state.
kBool GoSetup_IndependentExposuresEnabled(GoSetup setup, GoRole role)
Determines if independent exposures feature is enabled.
k64f GoSetup_ReversalDistance(GoSetup setup)
This API is experimental and may change in a future release Gets the encoder reversal distance thresh...
kBool GoSetup_IntensityModeUsed(GoSetup setup, GoRole role)
Gets the availability of the intensity mode property.
k64f GoSetup_XMedianWindowLimitMax(GoSetup setup)
Gets the x-direction median window maximum.
k64f GoSetup_SpacingIntervalLimitMin(GoSetup setup, GoRole role)
Gets the spacing interval value limit minimum.
kStatus GoSetup_EnableIntensity(GoSetup setup, kBool enable)
Enables profile intensity collection.
Represents the part detection parameters of the surface mode configuration.
kStatus GoSetup_SetTriggerSource(GoSetup setup, GoTrigger source)
Sets the trigger source for profile triggering.
Represents all possible intensity generation modes for multiple exposures.
kSize GoSetup_AlignmentMovingTargetOptionCount(GoSetup setup)
Gets the moving alignment target option count.
kStatus GoSetup_SetScanMode(GoSetup setup, GoMode mode)
Sets the scan mode.
kBool GoSetup_YSlopeUsed(GoSetup setup)
Indicates whether Y slope can be used for the current scan mode and device family.
GoSurfaceGeneration GoSetup_SurfaceGeneration(GoSetup setup)
Gets the surface generation module, used for surface generation configuration.
GoPartMatching GoSetup_PartMatching(GoSetup setup)
Gets the part matching module, used for part matching configuration.
k64f GoSetup_XSmoothingWindowLimitMax(GoSetup setup)
Gets the x-direction smoothing window maximum.
kStatus GoSetup_SetAlignmentStationaryTarget(GoSetup setup, GoAlignmentTarget target)
Sets the target type used for stationary alignment calibration.
kStatus GoSetup_SetTrackingAreaHeight(GoSetup setup, GoRole role, k64f height)
Sets the tracking window height.
kSize GoSetup_AlignmentStationaryTargetOptionCount(GoSetup setup)
Gets the stationary alignment target option count.
kBool GoSetup_YMedianEnabled(GoSetup setup)
Gets the status of y-direction median.
k64f GoSetup_XSlopeWindowLimitMax(GoSetup setup)
Gets the x-direction slope window maximum.
k64f GoSetup_BarHeight(GoSetup setup)
Gets the height of the bar used for travel calibration.
k32u GoSetup_BackCameraY(GoSetup setup, GoRole role)
Gets the camera region-of-interest y origin.
kBool GoSetup_TriggerGateEnabledUsed(GoSetup setup)
Gets the system value representing whether or not the user specified trigger gate enabled setting is ...
kStatus GoSetup_EnableYSmoothing(GoSetup setup, kBool enable)
Sets the status of y-direction smoothing.
k64f GoSetup_ActiveAreaLengthLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the ActiveAreaLength setting.
kBool GoSetup_LaserSleepModeEnabled(GoSetup setup)
This API is experimental and may change in a future release Gets the laser sleep mode enabled state...
k64f GoSetup_SpacingIntervalSystemValue(GoSetup setup, GoRole role)
Gets the spacing interval system value.
kStatus GoSetup_SetPatternSequenceIndex(GoSetup setup, GoRole role, k32u index)
Sets the current phase pattern index.
GoAlignmentTarget GoSetup_AlignmentStationaryTarget(GoSetup setup)
Gets the target type used for stationary alignment calibration.
GoPatternSequenceType GoSetup_PatternSequenceTypeOptionAt(GoSetup setup, GoRole role, kSize index)
Gets the pattern sequence type option at the given index.
k64f GoSetup_FrameRateLimitMin(GoSetup setup)
Constraint for the minimum valid value of the Frame Rate setting.
kStatus GoSetup_EnableXDecimation(GoSetup setup, kBool enabled)
Sets the status of x-direction decimation.
kBool GoSetup_ReversalDistanceAutoEnabledUsed(GoSetup setup)
This API is experimental and may change in a future release Returns whether or not auto encoder rever...
kBool GoSetup_LaserSleepUsed(GoSetup setup)
This API is experimental and may change in a future release Gets the laser sleep mode used value...
k64f GoSetup_TransformedDataRegionWidth(GoSetup setup, GoRole role)
Gets the transformed data region width value.
kStatus GoSetup_SetExposure(GoSetup setup, GoRole role, k64f exposure)
Sets the exposure value.
kBool GoSetup_BarHoleCountUsed(GoSetup setup)
Indicates if the hole count can be modified by the user.
k32s GoSetup_TriggerExternalInputIndex(GoSetup setup)
Gets the external input index to trigger profile/surface capturing.
kBool GoSetup_TriggerBurstCountUsed(GoSetup setup)
This API is experimental and may change in a future release Gets the trigger burst used value...
kBool GoSetup_YDecimationEnabled(GoSetup setup)
Gets the status of y-direction decimation.
kStatus GoSetup_EnableFlickerFreeMode(GoSetup setup, kBool enable)
Enables flicker reduction mode.
k64f GoSetup_YSlopeWindowLimitMin(GoSetup setup)
Gets the y-direction slope window minimum.
k64f GoSetup_TrackingAreaHeightLimitMin(GoSetup setup, GoRole role)
Gets the tracking window height minimum limit.
kBool GoSetup_ExternalInputZPulseEnabled(GoSetup setup)
Gets the state of the external input triggered encoder Z-pulse feature.
kBool GoSetup_BarHoleDiameterUsed(GoSetup setup)
Indicates if the hole diameter can be modified by the user.
GoLayout GoSetup_Layout(GoSetup setup)
Gets the layout configuration module.
kSize GoSetup_IntensityStepIndex(GoSetup setup, GoRole role)
Gets the intensity step index.
k64f GoSetup_YDecimationWindowLimitMax(GoSetup setup)
Gets the y-direction decimation window maximum.
Represents the system's primary synchronization domain.
kBool GoSetup_SpacingIntervalTypeUsed(GoSetup setup, GoRole role)
Gets the system value representing whether or not the user specified spacing interval type setting is...
k64f GoSetup_ExposureStepAt(GoSetup setup, GoRole role, kSize index)
Get the exposure step value specified by index.
Represents an encoder's triggering behavior.
k64f GoSetup_TriggerDelayLimitMin(GoSetup setup)
Reports the minimum trigger delay, based on current settings.
Corner parameters for polygon corner alignment.
Definition: GoSdkDef.h:647
k64f GoSetup_BackCameraExposureLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the back camera exposure setting.
kStatus GoSetup_SetReversalDistance(GoSetup setup, k64f threshold)
This API is experimental and may change in a future release Sets the encoder reversal distance thresh...
kStatus GoSetup_SetActiveAreaZ(GoSetup setup, GoRole role, k64f value)
Sets the active area z origin.
kStatus GoSetup_SetTriggerBurstCount(GoSetup setup, k32u count)
This API is experimental and may change in a future release Sets the trigger burst count...
Represents an alignment target type.
k64f GoSetup_FrontCameraExposure(GoSetup setup, GoRole role)
Gets the front camera exposure value.
GoAlignmentDegreesOfFreedom GoSetup_BarDegreesOfFreedom(GoSetup setup)
Gets the degrees of freedom used for bar alignment calibration.
kBool GoSetup_LayoutMultiplexingBankUsed(GoSetup setup, GoRole role)
Gets Multiplexing bank used state in n-buddy system.
Represents all possible exposure modes.
GoTrigger GoSetup_TriggerSource(GoSetup setup)
Gets the trigger source for profile triggering.
k64f GoSetup_YSmoothingWindowLimitMax(GoSetup setup)
Gets the y-direction smoothing window maximum.
kStatus GoSetup_SetPatternSequenceType(GoSetup setup, GoRole role, GoPatternSequenceType type)
Sets the pattern sequence type.
kStatus GoSetup_ClearExposureSteps(GoSetup setup, GoRole role)
Removes all exposure steps.
kStatus GoSetup_SetTriggerDelay(GoSetup setup, k64f delay)
Sets the trigger delay.
Declares the GoSurfaceGeneration class.
Declares the GoProfileGeneration class.
Represents a pattern sequence type.
k64f GoSetup_XMedianWindowLimitMin(GoSetup setup)
Gets the x-direction median window minimum.
k64f GoSetup_PlateHeight(GoSetup setup)
Gets the height of the plate used for travel calibration.
k64f GoSetup_XGapFillingWindowLimitMin(GoSetup setup)
Gets the x-direction gap-filling window minimum.
k64f GoSetup_ExposureLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the Exposure setting.
GoPreFilterType GoSetup_EnhancedSurfaceFlatnessFilterType(GoSetup setup, GoRole role)
Gets the enhanced surface flatness filter type, if device supports enhanced surface flatness filterin...
kStatus GoSetup_SetLayoutMultiplexingBank(GoSetup setup, GoRole role, k32u value)
Sets multiplexing bank value being configured (may not be applicable or used) on device in n-buddy sy...
kStatus GoSetup_SetSpacingInterval(GoSetup setup, GoRole role, k64f value)
Sets the spacing interval.
kStatus GoSetup_SetXMedianWindow(GoSetup setup, k64f window)
Sets the x-direction median window.
k64f GoSetup_YSlopeWindowLimitMax(GoSetup setup)
Gets the y-direction slope window maximum.
kStatus GoSetup_SetPlateHeight(GoSetup setup, k64f height)
Sets the height of the plate used for travel calibration.
kStatus GoSetup_SetLaserSleepModeEnabled(GoSetup setup, kBool enable)
This API is experimental and may change in a future release Enables laser sleep mode.
k64f GoSetup_TriggerDelayLimitMax(GoSetup setup)
Reports the maximum trigger delay, based on current settings.
kBool GoSetup_XSmoothingEnabled(GoSetup setup)
Gets the status of x-direction smoothing.
kBool GoSetup_PatternSequenceTypeUsed(GoSetup setup, GoRole role)
Returns a boolean value representing whether the pattern sequence type is used.
GoExposureMode GoSetup_ExposureModeOptionAt(GoSetup setup, GoRole role, kSize index)
Gets the exposure mode option at the given index.
kStatus GoSetup_SetBarWidth(GoSetup setup, k64f width)
Sets the width of the bar used for travel calibration.
kStatus GoSetup_SetOcclusionReductionAlg(GoSetup setup, GoOcclusionReductionAlg alg)
Sets the occlusion reduction algorithm.
k32u GoSetup_BackCameraWidth(GoSetup setup, GoRole role)
Gets the camera region-of-interest width.
k64f GoSetup_PlateRefHoleDiameter(GoSetup setup)
Gets the diameter of the reference hole defined on the calibration plate.
k64f GoSetup_DynamicExposureMax(GoSetup setup, GoRole role)
Gets the maximum value for the Dynamic Exposure setting.
Represents spacing interval types.
kSize GoSetup_ExposureStepCount(GoSetup setup, GoRole role)
Get the number of exposure steps defined.
kStatus GoSetup_EnableInputTrigger(GoSetup setup, kBool enable)
Sets the input trigger enabled state.
k32u GoSetup_LayoutMultiplexingBankSystemValue(GoSetup setup, GoRole role)
Gets Multiplex bank system value being used on device in n-buddy system.
kBool GoSetup_ReversalDistanceUsed(GoSetup setup)
This API is experimental and may change in a future release Gets the encoder reversal distance thresh...
k64f GoSetup_DynamicExposureMin(GoSetup setup, GoRole role)
Gets the minimum value for the Dynamic Exposure setting.
Represents an alignment type.
kBool GoSetup_MaxFrameRateEnabled(GoSetup setup)
Reports whether or not system is configured to operate at full frame rate.
GoPatternSequenceType GoSetup_PatternSequenceType(GoSetup setup, GoRole role)
Gets the pattern sequence type.
#define kDeprecate(SYMBOL)
kStatus GoSetup_EnableYGapFilling(GoSetup setup, kBool enable)
Sets the status of y-direction gap-filling.
GoAlignmentDegreesOfFreedom GoSetup_BarDegreesOfFreedomOptionAt(GoSetup setup, kSize index)
Gets the bar alignment degrees of freedom option at the given index.
kBool GoSetup_LayoutGridDirection(GoSetup setup, GoRole role)
Gets layout grid direction being configured (may not be applicable or used) on device in n-buddy syst...
k64f GoSetup_EncoderSpacing(GoSetup setup)
Gets the current encoder period for encoder-based triggering.
kBool GoSetup_YDecimationUsed(GoSetup setup)
Indicates whether y decimation can be used for the current scan mode and device family.
k64f GoSetup_YSlopeWindow(GoSetup setup)
Gets the y-direction slope window.
kStatus GoSetup_SetExternalInputZPulseIndex(GoSetup setup, k32u index)
Sets the external input index for triggering encoder Z-pulse.
kStatus GoSetup_SetIntensitySource(GoSetup setup, GoRole role, GoIntensitySource source)
Sets the source to be used for generating intensity data.
kSize GoSetup_ExposureModeOptionCount(GoSetup setup, GoRole role)
Gets the exposure mode option count.
k64f GoSetup_ActiveAreaHeight(GoSetup setup, GoRole role)
Gets the active area height.
kBool GoSetup_XSubsamplingDefaultEnabled(GoSetup setup, GoRole role)
Returns whether the x-resolution divider default is being used.
kStatus GoSetup_EnableOcclusionReduction(GoSetup setup, kBool enable)
Sets the occlusion reduction enabled state.
k64f GoSetup_TransformedDataRegionY(GoSetup setup, GoRole role)
Gets the transformed data region Y value.
Represents an occlusion reduction algorithm.
GoExposureMode GoSetup_ExposureMode(GoSetup setup, GoRole role)
Gets the exposure mode.
kStatus GoSetup_SetYSmoothingWindow(GoSetup setup, k64f window)
Sets the y-direction smoothing window.
Represents the part matching parameters of the surface mode configuration.
kStatus GoSetup_SetLayoutGridDirection(GoSetup setup, GoRole role, kBool value)
Sets grid direction being configured (may not be applicable or used) on device in n-buddy system...
k64f GoSetup_TransformedDataRegionHeight(GoSetup setup, GoRole role)
Gets the transformed data region height value.
kBool GoSetup_TriggerBurstEnabledUsed(GoSetup setup)
This API is experimental and may change in a future release Gets the trigger burst enabled state...
kBool GoSetup_LayoutGridDirectionSystemValue(GoSetup setup, GoRole role)
Gets layout grid direction system value being used on device in n-buddy system.
Represents a scan mode.
kStatus GoSetup_EnableXMedian(GoSetup setup, kBool enabled)
Sets the status of x-direction median.
k64f GoSetup_XSlopeWindowLimitMin(GoSetup setup)
Gets the x-direction slope window minimum.
k64u GoSetup_LaserWakeupEncoderTravel(GoSetup setup)
This API is experimental and may change in a future release Gets the encoder wakeup travel distance...
k64f GoSetup_FrontCameraExposureLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the front camara exposure setting.
k32u GoSetup_XSubsamplingOptionAt(GoSetup setup, GoRole role, kSize index)
Gets the x-resolution option at the specified index.
kStatus GoSetup_SetIntensityStepIndex(GoSetup setup, GoRole role, kSize index)
Sets the intensity step index.
k64f GoSetup_ActiveAreaZLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the ActiveAreaZ setting.
k64f GoSetup_SpacingIntervalLimitMax(GoSetup setup, GoRole role)
Gets the spacing interval value limit maximum.
k64f GoSetup_ActiveAreaWidthLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the ActiveAreaWidth setting.
kStatus GoSetup_AddPolygonCorner(GoSetup setup, GoPolygonCornerParameters *corner)
Adds a corner parameters object to the collection of polygon corners for alignment.
k64f GoSetup_ActiveAreaYLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the ActiveAreaY setting.
kStatus GoSetup_EnableXGapFilling(GoSetup setup, kBool enable)
Sets the status of x-direction gap-filling.
k64f GoSetup_EnhancedSurfaceFlatnessFilterCoefficientMinValue(GoSetup setup, GoRole role)
Gets the smallest allowable enhanced surface flatness filter coefficient.
kBool GoSetup_YGapFillingUsed(GoSetup setup)
Indicates whether Y gap filling can be used for the current scan mode and device family.
kStatus GoSetup_SetDynamicExposureMin(GoSetup setup, GoRole role, k64f exposure)
Sets the minimum value for the Dynamic Exposure setting.
kStatus GoSetup_SetActiveAreaHeight(GoSetup setup, GoRole role, k64f value)
Sets the active area height.
kStatus GoSetup_EnableYSlope(GoSetup setup, kBool enable)
Sets the status of y-direction slope.
GoProfileGeneration GoSetup_ProfileGeneration(GoSetup setup)
Gets the profile generation module, used for profile generation configuration.
GoAlignmentTarget GoSetup_TriggerSourceOptionAt(GoSetup setup, kSize index)
Gets the trigger source option at the given index.
k64f GoSetup_XSlopeWindow(GoSetup setup)
Gets the x-direction slope window.
kBool GoSetup_XSubsamplingDefaultEnabledUsed(GoSetup setup, GoRole role)
Returns whether the sensor has a x-resolution divider default value or not.
kStatus GoSetup_SetFrontCameraExposure(GoSetup setup, GoRole role, k64f exposure)
Sets the front camera exposure value.
const GoPreFilterCoefficient * GoSetup_EnhancedSurfaceFlatnessFilterCoefficients(GoSetup setup, GoRole role)
Gets all the enhanced surface flatness filter coefficients currently in use, if device supports enhan...
kStatus GoSetup_SetEncoderTriggerMode(GoSetup setup, GoEncoderTriggerMode mode)
Sets the encoder trigger mode.
kBool GoSetup_SpacingIntervalUsed(GoSetup setup, GoRole role)
Returns the state of whether the user specified spacing interval is used.
kBool GoSetup_OcclusionReductionEnabledSystemValue(GoSetup setup)
Gets the occlusion reduction system value.
kStatus GoSetup_EnableXSlope(GoSetup setup, kBool enable)
Sets the status of x-direction slope.
kBool GoSetup_ExternalInputZPulseIndexAvailable(GoSetup setup)
Reports whether or not the external input index for encoder z-pulse triggering is used...
k64f GoSetup_XDecimationWindow(GoSetup setup)
Gets the x-direction decimation window.
k32u GoSetup_PatternSequenceIndexMax(GoSetup setup, GoRole role)
Gets the current phase pattern index maximum value (inclusive).
kStatus GoSetup_SetXGapFillingWindow(GoSetup setup, k64f window)
Sets the status of x-direction gap-filling.
GoMode GoSetup_ScanMode(GoSetup setup)
Gets the scan mode.
kBool GoSetup_LayoutGridUsed(GoSetup setup, GoRole role)
Gets layout grid used state.
k64f GoSetup_XDecimationWindowLimitMax(GoSetup setup)
Gets the x-direction decimation window maximum.
kBool GoSetup_FlickerFreeModeAvailable(GoSetup setup)
Reports whether flicker free mode is available for use on this sensor.
k64f GoSetup_ExposureLimitMax(GoSetup setup, GoRole role)
Gets the maximum valid value for the Exposure setting.
kBool GoSetup_XMedianEnabled(GoSetup setup)
Gets the status of x-direction median.
kStatus GoSetup_SetBarHoleDiameter(GoSetup setup, k64f diameter)
Sets the diameter of holes that are defined on the calibration bar.
k64f GoSetup_TrackingAreaHeightLimitMax(GoSetup setup, GoRole role)
Gets the tracking window height maximum limit.
k32u GoSetup_FrontCameraHeight(GoSetup setup, GoRole role)
Gets the camera region-of-interest height.
kStatus GoSetup_SetDiskHeight(GoSetup setup, k64f height)
Sets the height of the disk used for travel calibration.
kStatus GoSetup_SetXSmoothingWindow(GoSetup setup, k64f window)
Sets the x-direction smoothing window.
k32u GoSetup_XSubsampling(GoSetup setup, GoRole role)
Gets the current x-resolution divider.
kStatus GoSetup_EnableIndependentExposures(GoSetup setup, GoRole role, kBool enable)
Enables independent exposures feature, i.e.
kStatus GoSetup_SetTriggerUnit(GoSetup setup, GoTriggerUnits unit)
Sets the system trigger units.
k64f GoSetup_YGapFillingWindowLimitMin(GoSetup setup)
Gets the y-direction gap-filling window minimum.
kBool GoSetup_PreferMasterTimeEncoderEnabled(GoSetup setup)
Gets whether the time and encoder values are preferred to come from the Master rather than from the s...
k32u GoSetup_ZSubsamplingSystemValue(GoSetup setup, GoRole role)
Gets the z-resolution divider system value.
k64f GoSetup_YDecimationWindowLimitMin(GoSetup setup)
Gets the y-direction decimation window minimum.
k64f GoSetup_BarHoleDiameter(GoSetup setup)
Gets the diameter of holes that are defined on the calibration bar.
Represents a device configuration.
GoPolygonCornerParameters * GoSetup_PolygonCornerAt(GoSetup setup, kSize index)
Retrieves the reference to the corner parameters object from the collection of polygon corners...
Declares the GoPartMatching class.
k64f GoSetup_BackCameraExposureLimitMin(GoSetup setup, GoRole role)
Gets the minimum valid value for the back camara exposure setting.
kStatus GoSetup_SetDiskDiameter(GoSetup setup, k64f diameter)
Sets the diameter of the disk used for travel calibration.
kStatus GoSetup_SetYMedianWindow(GoSetup setup, k64f window)
Sets the y-direction median window.
kBool GoSetup_XMedianUsed(GoSetup setup)
Indicates whether X median can be used for the current scan mode and device family.
kStatus GoSetup_EnableYDecimation(GoSetup setup, kBool enable)
Sets the status of y-direction decimation.
Declares the GoMaterial class.
GoAlignmentType GoSetup_AlignmentTypeOptionAt(GoSetup setup, kSize index)
Gets the alignment type option at the given index.
kStatus GoSetup_SetIntensityMode(GoSetup setup, GoRole role, GoIntensityMode mode)
Sets the intensity data generation mode.
kBool GoSetup_BarHoleDistanceUsed(GoSetup setup)
Indicates if the hole distance can be modified by the user.
kBool GoSetup_TrackingEnabled(GoSetup setup, GoRole role)
Determines if tracking is enabled.
kBool GoSetup_AlignmentEncoderCalibrateEnabled(GoSetup setup)
Gets the value of the post alignment encoder calibration setting.
k64f GoSetup_YSmoothingWindowLimitMin(GoSetup setup)
Gets the y-direction smoothing window minimum.
Represents the collection of sections and limits for defining them.
kStatus GoSetup_SetXSubsampling(GoSetup setup, GoRole role, k32u xSubsampling)
Sets the current x-resolution divider.
Declares the GoLayout class.
kStatus GoSetup_SetYDecimationWindow(GoSetup setup, k64f window)
Sets the y-direction decimation window.
Represents the choices of the filter length (ie. how many prefilter coefficients to use for the prefi...
Declares the GoAdvanced class.
k64f GoSetup_ActiveAreaLength(GoSetup setup, GoRole role)
Gets the active area Length.
k64f GoSetup_XDecimationWindowLimitMin(GoSetup setup)
Gets the x-direction decimation window minimum.
kStatus GoSetup_SetXSlopeWindow(GoSetup setup, k64f window)
Sets the status of x-direction slope.
k32u GoSetup_PatternSequenceIndex(GoSetup setup, GoRole role)
Gets the current phase pattern index.
kStatus GoSetup_SetPlateSecHoleDiameter(GoSetup setup, k64f diameter)
Sets the diameter of the secondary hole defined on the calibration plate.
k64f GoSetup_EncoderSpacingLimitMax(GoSetup setup)
Constraint for the maximum valid value of the Encoder Period setting.
kSize GoSetup_BarDegreesOfFreedomOptionCount(GoSetup setup)
Gets the degrees of freedom bar alignment target option count.
GoPartDetection GoSetup_PartDetection(GoSetup setup)
Gets the part detection module, used for part detection configuration.
k64f GoSetup_ActiveAreaX(GoSetup setup, GoRole role)
Gets the active area x origin.