Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoAdvanced.h
1 /// @cond (Gocator_1x00 || Gocator_2x00)
2 
3 /**
4  * @file GoAdvanced.h
5  * @brief Declares the GoAdvanced class.
6  *
7  * @internal
8  * Copyright (C) 2016 by LMI Technologies Inc.
9  * Licensed under the MIT License.
10  * Redistributed files must retain the above copyright notice.
11  */
12 #ifndef GO_ADVANCED_H
13 #define GO_ADVANCED_H
14 
15 #include <GoSdk/GoSdkDef.h>
16 
17 kBeginHeader()
18 
19 /**
20  * @class GoAdvanced
21  * @extends kObject
22  * @ingroup GoSdk
23  * @brief Represents configurable advanced acquisition settings.
24  */
25 typedef kObject GoAdvanced;
26 
27 /**
28  * Sets the advanced acquisition type.
29  *
30  * @public @memberof GoAdvanced
31  * @version Introduced in firmware 4.6.1.140
32  * @param advanced GoAdvanced object.
33  * @param type The advanced type to set.
34  * @return Operation status.
35  */
36 GoFx(kStatus) GoAdvanced_SetType(GoAdvanced advanced, GoAdvancedType type);
37 
38 /**
39  * Returns the user defined advanced acquisition type.
40  *
41  * @public @memberof GoAdvanced
42  * @version Introduced in firmware 4.6.1.140
43  * @param advanced GoAdvanced object.
44  * @return The advanced type.
45  */
46 GoFx(GoAdvancedType) GoAdvanced_Type(GoAdvanced advanced);
47 
48 /**
49  * Returns a boolean relating to whether the user defined advanced acquisition type value will be used by the system.
50  *
51  * @public @memberof GoAdvanced
52  * @version Introduced in firmware 4.6.1.140
53  * @param advanced GoAdvanced object.
54  * @return kTRUE if the user defined advanced type will be used and kFALSE otherwise.
55  */
56 GoFx(kBool) GoAdvanced_IsTypeUsed(GoAdvanced advanced);
57 
58 /**
59  * Returns the advanced acquisition type to be used by the system.
60  *
61  * @public @memberof GoAdvanced
62  * @version Introduced in firmware 4.6.1.140
63  * @param advanced GoAdvanced object.
64  * @return The system value advanced type.
65  */
66 GoFx(GoAdvancedType) GoAdvanced_TypeSystemValue(GoAdvanced advanced);
67 
68 /**
69  * Sets the spot threshold.
70  *
71  * @public @memberof GoAdvanced
72  * @version Introduced in firmware 4.6.1.140
73  * @param advanced GoAdvanced object.
74  * @param value Spot threshold.
75  * @return Operation status.
76  */
77 GoFx(kStatus) GoAdvanced_SetSpotThreshold(GoAdvanced advanced, k32u value);
78 
79 /**
80  * Returns the user defined spot threshold.
81  *
82  * @public @memberof GoAdvanced
83  * @version Introduced in firmware 4.6.1.140
84  * @param advanced GoAdvanced object.
85  * @return The spot threshold.
86  */
87 GoFx(k32u) GoAdvanced_SpotThreshold(GoAdvanced advanced);
88 
89 /**
90  * Returns the minimum spot threshold limit.
91  *
92  * @public @memberof GoAdvanced
93  * @version Introduced in firmware 4.6.1.140
94  * @param advanced GoAdvanced object.
95  * @return The minimum spot threshold.
96  */
97 GoFx(k32u) GoAdvanced_SpotThresholdLimitMin(GoAdvanced advanced);
98 
99 /**
100  * Returns the maximum spot threshold limit.
101  *
102  * @public @memberof GoAdvanced
103  * @version Introduced in firmware 4.6.1.140
104  * @param advanced GoAdvanced object.
105  * @return The maximum spot threshold.
106  */
107 GoFx(k32u) GoAdvanced_SpotThresholdLimitMax(GoAdvanced advanced);
108 
109 /**
110  * Returns a boolean value representing whether the user specified spot threshold value is used.
111  *
112  * @public @memberof GoAdvanced
113  * @version Introduced in firmware 4.6.1.140
114  * @param advanced GoAdvanced object.
115  * @return kTRUE if it is used and kFALSE otherwise.
116  */
117 GoFx(kBool) GoAdvanced_IsSpotThresholdUsed(GoAdvanced advanced);
118 
119 /**
120  * Returns the system spot threshold value.
121  *
122  * @public @memberof GoAdvanced
123  * @version Introduced in firmware 4.6.1.140
124  * @param advanced GoAdvanced object.
125  * @return The system spot threshold.
126  */
127 GoFx(k32u) GoAdvanced_SpotThresholdSystemValue(GoAdvanced advanced);
128 
129 /**
130  * Sets the maximum spot width.
131  *
132  * @public @memberof GoAdvanced
133  * @version Introduced in firmware 4.6.1.140
134  * @param advanced GoAdvanced object.
135  * @param value Maximum spot width.
136  * @return Operation status.
137  */
138 GoFx(kStatus) GoAdvanced_SetSpotWidthMax(GoAdvanced advanced, k32u value);
139 
140 /**
141  * Returns the user defined maximum spot width.
142  *
143  * @public @memberof GoAdvanced
144  * @version Introduced in firmware 4.6.1.140
145  * @param advanced GoAdvanced object.
146  * @return The maximum spot width.
147  */
148 GoFx(k32u) GoAdvanced_SpotWidthMax(GoAdvanced advanced);
149 
150 /**
151  * Returns the maximum spot width minimum limit.
152  *
153  * @public @memberof GoAdvanced
154  * @version Introduced in firmware 4.6.1.140
155  * @param advanced GoAdvanced object.
156  * @return The maximum spot width minimum limit.
157  */
158 GoFx(k32u) GoAdvanced_SpotWidthMaxLimitMin(GoAdvanced advanced);
159 
160 /**
161  * Returns the maximum spot width maximum limit.
162  *
163  * @public @memberof GoAdvanced
164  * @version Introduced in firmware 4.6.1.140
165  * @param advanced GoAdvanced object.
166  * @return The maximum spot width maximum limit.
167  */
168 GoFx(k32u) GoAdvanced_SpotWidthMaxLimitMax(GoAdvanced advanced);
169 
170 /**
171  * Returns a boolean relating to whether the user defined spot width max value will be used by the system.
172  *
173  * @public @memberof GoAdvanced
174  * @version Introduced in firmware 4.6.1.140
175  * @param advanced GoAdvanced object.
176  * @return kTRUE if the user value will be used and kFALSE otherwise.
177  */
178 GoFx(kBool) GoAdvanced_IsSpotWidthMaxUsed(GoAdvanced advanced);
179 
180 /**
181  * Returns the maximum spot width system value.
182  *
183  * @public @memberof GoAdvanced
184  * @version Introduced in firmware 4.6.1.140
185  * @param advanced GoAdvanced object.
186  * @return The maximum spot width system value.
187  */
188 GoFx(k32u) GoAdvanced_SpotWidthMaxSystemValue(GoAdvanced advanced);
189 
190 /**
191  * Returns the number of spot selection type options.
192  *
193  * @public @memberof GoAdvanced
194  * @version Introduced in firmware 4.6.1.140
195  * @param advanced GoAdvanced object.
196  * @return The spot selection type option count.
197  */
198 GoFx(kSize) GoAdvanced_SpotSelectionTypeOptionCount(GoAdvanced advanced);
199 
200 /**
201  * Returns the spot selection type option at the given index.
202  *
203  * @public @memberof GoAdvanced
204  * @version Introduced in firmware 4.6.1.140
205  * @param advanced GoAdvanced object.
206  * @param index The option list index to access.
207  * @return The spot selection type option at the given index.
208  */
209 GoFx(GoSpotSelectionType) GoAdvanced_SpotSelectionTypeOptionAt(GoAdvanced advanced, kSize index);
210 
211 /**
212  * Sets the spot selection type.
213  *
214  * @public @memberof GoAdvanced
215  * @version Introduced in firmware 4.6.1.140
216  * @param advanced GoAdvanced object.
217  * @param type Spot selection type.
218  * @return Operation status.
219  */
220 GoFx(kStatus) GoAdvanced_SetSpotSelectionType(GoAdvanced advanced, GoSpotSelectionType type);
221 
222 /**
223  * Returns the user defined spot selection type.
224  *
225  * @public @memberof GoAdvanced
226  * @version Introduced in firmware 4.6.1.140
227  * @param advanced GoAdvanced object.
228  * @return The maximum spot width.
229  */
230 GoFx(GoSpotSelectionType) GoAdvanced_SpotSelectionType(GoAdvanced advanced);
231 
232 /**
233  * Returns a boolean relating to whether the user defined spot selection type will be used by the system.
234  *
235  * @public @memberof GoAdvanced
236  * @version Introduced in firmware 4.6.1.140
237  * @param advanced GoAdvanced object.
238  * @return kTRUE if the user value will be used and kFALSE otherwise.
239  */
240 GoFx(kBool) GoAdvanced_IsSpotSelectionTypeUsed(GoAdvanced advanced);
241 
242 /**
243  * Returns the system spot selection type.
244  *
245  * @public @memberof GoAdvanced
246  * @version Introduced in firmware 4.6.1.140
247  * @param advanced GoAdvanced object.
248  * @return System spot selection type.
249  */
250 GoFx(GoSpotSelectionType) GoAdvanced_SpotSelectionTypeSystemValue(GoAdvanced advanced);
251 
252 /**
253 * Returns the minimum segment size used in continuity sorting spot detection.
254 *
255 * @public @memberof GoAdvanced
256 * @version Introduced in firmware 4.6.2.79
257 * @param advanced GoAdvanced object.
258 * @return Minimum segment size
259 */
260 GoFx(k32u) GoAdvanced_SpotContinuityMinimumSegmentSize(GoAdvanced advanced);
261 
262 /**
263 * Sets the minimum segment size used in continuity sorting spot detection.
264 *
265 * @public @memberof GoAdvanced
266 * @version Introduced in firmware 4.6.2.79
267 * @param advanced GoAdvanced object.
268 * @param value Minimum Segment Size.
269 * @return Operation status.
270 */
271 GoFx(kStatus) GoAdvanced_SetSpotContinuityMinimumSegmentSize(GoAdvanced advanced, k32u value);
272 
273 /**
274 * Returns the search window size in the X direction used in continuity sorting spot detection.
275 *
276 * @public @memberof GoAdvanced
277 * @version Introduced in firmware 4.6.2.79
278 * @param advanced GoAdvanced object.
279 * @return Search window X dimension
280 */
281 GoFx(k32u) GoAdvanced_SpotContinuitySearchWindowX(GoAdvanced advanced);
282 
283 /**
284 * Sets the search window size in the X direction used in continuity sorting spot detection.
285 *
286 * @public @memberof GoAdvanced
287 * @version Introduced in firmware 4.6.2.79
288 * @param advanced GoAdvanced object.
289 * @param value Search window X dimension.
290 * @return Operation status.
291 */
292 GoFx(kStatus) GoAdvanced_SetSpotContinuitySearchWindowX(GoAdvanced advanced, k32u value);
293 
294 /**
295 * Returns the search window size in the Y direction used in continuity sorting spot detection
296 *
297 * @public @memberof GoAdvanced
298 * @version Introduced in firmware 4.6.2.79
299 * @param advanced GoAdvanced object.
300 * @return Search window Y dimension
301 */
302 GoFx(k32u) GoAdvanced_SpotContinuitySearchWindowY(GoAdvanced advanced);
303 
304 /**
305 * Sets the search window size in the Y direction used in continuity sorting spot detection
306 *
307 * @public @memberof GoAdvanced
308 * @version Introduced in firmware 4.6.2.79
309 * @param advanced GoAdvanced object.
310 * @param value Search window Y dimension.
311 * @return Operation status.
312 */
313 GoFx(kStatus) GoAdvanced_SetSpotContinuitySearchWindowY(GoAdvanced advanced, k32u value);
314 
315 /**
316  * Sets the analog camera gain.
317  *
318  * @public @memberof GoAdvanced
319  * @version Introduced in firmware 4.6.1.140
320  * @param advanced GoAdvanced object.
321  * @param value Analog camera gain.
322  * @return Operation status.
323  */
324 GoFx(kStatus) GoAdvanced_SetCameraGainAnalog(GoAdvanced advanced, k64f value);
325 
326 /**
327  * Returns the user defined analog camera gain value.
328  *
329  * @public @memberof GoAdvanced
330  * @version Introduced in firmware 4.6.1.140
331  * @param advanced GoAdvanced object.
332  * @return Analog camera gain value.
333  */
334 GoFx(k64f) GoAdvanced_CameraGainAnalog(GoAdvanced advanced);
335 
336 /**
337  * Returns the analog camera gain minimum value limit.
338  *
339  * @public @memberof GoAdvanced
340  * @version Introduced in firmware 4.6.1.140
341  * @param advanced GoAdvanced object.
342  * @return Analog camera gain minimum value limit.
343  */
344 GoFx(k64f) GoAdvanced_CameraGainAnalogLimitMin(GoAdvanced advanced);
345 
346 /**
347  * Returns the analog camera gain maximum value limit.
348  *
349  * @public @memberof GoAdvanced
350  * @version Introduced in firmware 4.6.1.140
351  * @param advanced GoAdvanced object.
352  * @return Analog camera gain maximum value limit.
353  */
354 GoFx(k64f) GoAdvanced_CameraGainAnalogLimitMax(GoAdvanced advanced);
355 
356 /**
357  * Returns a boolean value representing whether the user defined analog camera gain is used.
358  *
359  * @public @memberof GoAdvanced
360  * @version Introduced in firmware 4.6.1.140
361  * @param advanced GoAdvanced object.
362  * @return kTRUE if the user defined analog camera gain is used and kFALSE otherwise.
363  */
364 GoFx(kBool) GoAdvanced_IsCameraGainAnalogUsed(GoAdvanced advanced);
365 
366 /**
367  * Returns the analog camera gain system value.
368  *
369  * @public @memberof GoAdvanced
370  * @version Introduced in firmware 4.6.1.140
371  * @param advanced GoAdvanced object.
372  * @return The analog camera gain system value.
373  */
374 GoFx(k64f) GoAdvanced_CameraGainAnalogSystemValue(GoAdvanced advanced);
375 
376 /**
377  * Sets the digital camera gain
378  *
379  * @public @memberof GoAdvanced
380  * @version Introduced in firmware 4.6.1.140
381  * @param advanced GoAdvanced object.
382  * @param value Digital camera gain.
383  * @return Operation status.
384  */
385 GoFx(kStatus) GoAdvanced_SetCameraGainDigital(GoAdvanced advanced, k64f value);
386 
387 /**
388  * Returns the user defined digital camera gain value.
389  *
390  * @public @memberof GoAdvanced
391  * @version Introduced in firmware 4.6.1.140
392  * @param advanced GoAdvanced object.
393  * @return The digital camera gain system value.
394  */
395 GoFx(k64f) GoAdvanced_CameraGainDigital(GoAdvanced advanced);
396 
397 /**
398  * Returns the digital camera gain minimum value limit.
399  *
400  * @public @memberof GoAdvanced
401  * @version Introduced in firmware 4.6.1.140
402  * @param advanced GoAdvanced object.
403  * @return Digital camera gain minimum value limit.
404  */
405 GoFx(k64f) GoAdvanced_CameraGainDigitalLimitMin(GoAdvanced advanced);
406 
407 /**
408  * Returns the digital camera gain maximum value limit.
409  *
410  * @public @memberof GoAdvanced
411  * @version Introduced in firmware 4.6.1.140
412  * @param advanced GoAdvanced object.
413  * @return Digital camera gain maximum value limit.
414  */
415 GoFx(k64f) GoAdvanced_CameraGainDigitalLimitMax(GoAdvanced advanced);
416 
417 /**
418  * Returns a boolean value representing whether the user's digital camera gain value is used by the system.
419  *
420  * @public @memberof GoAdvanced
421  * @version Introduced in firmware 4.6.1.140
422  * @param advanced GoAdvanced object.
423  * @return kTRUE if used and kFALSE otherwise.
424  */
425 GoFx(kBool) GoAdvanced_IsCameraGainDigitalUsed(GoAdvanced advanced);
426 
427 /**
428  * Returns the system's digital camera gain value.
429  *
430  * @public @memberof GoAdvanced
431  * @version Introduced in firmware 4.6.1.140
432  * @param advanced GoAdvanced object.
433  * @return Digital camera gain system value.
434  */
435 GoFx(k64f) GoAdvanced_CameraGainDigitalSystemValue(GoAdvanced advanced);
436 
437 /**
438  * Sets the dynamic sensitivity.
439  *
440  * @public @memberof GoAdvanced
441  * @version Introduced in firmware 4.6.1.140
442  * @param advanced GoAdvanced object.
443  * @param value Dynamic sensitivity.
444  * @return Operation status.
445  */
446 GoFx(kStatus) GoAdvanced_SetDynamicSensitivity(GoAdvanced advanced, k64f value);
447 
448 /**
449  * Returns the user defined dynamic sensitivity value.
450  *
451  * @public @memberof GoAdvanced
452  * @version Introduced in firmware 4.6.1.140
453  * @param advanced GoAdvanced object.
454  * @return User defined dynamic sensitivity value.
455  */
456 GoFx(k64f) GoAdvanced_DynamicSensitivity(GoAdvanced advanced);
457 
458 /**
459  * Returns the dynamic sensitivity minimum value limit.
460  *
461  * @public @memberof GoAdvanced
462  * @version Introduced in firmware 4.6.1.140
463  * @param advanced GoAdvanced object.
464  * @return Dynamic sensitivity minimum value limit.
465  */
466 GoFx(k64f) GoAdvanced_DynamicSensitivityLimitMin(GoAdvanced advanced);
467 
468 /**
469  * Returns the dynamic sensitivity maximum value limit.
470  *
471  * @public @memberof GoAdvanced
472  * @version Introduced in firmware 4.6.1.140
473  * @param advanced GoAdvanced object.
474  * @return Dynamic sensitivity maximum value limit.
475  */
476 GoFx(k64f) GoAdvanced_DynamicSensitivityLimitMax(GoAdvanced advanced);
477 
478 /**
479  * Returns a boolean representing whether the user defined dynamic sensitivity value is used.
480  *
481  * @public @memberof GoAdvanced
482  * @version Introduced in firmware 4.6.1.140
483  * @param advanced GoAdvanced object.
484  * @return kTRUE if used and kFALSE otherwise.
485  */
486 GoFx(kBool) GoAdvanced_IsDynamicSensitivityUsed(GoAdvanced advanced);
487 
488 /**
489  * Returns the dynamic sensitivity system value.
490  *
491  * @public @memberof GoAdvanced
492  * @version Introduced in firmware 4.6.1.140
493  * @param advanced GoAdvanced object.
494  * @return Dynamic sensitivity system value.
495  */
496 GoFx(k64f) GoAdvanced_DynamicSensitivitySystemValue(GoAdvanced advanced);
497 
498 /**
499  * Sets the dynamic threshold.
500  *
501  * @public @memberof GoAdvanced
502  * @version Introduced in firmware 4.6.1.140
503  * @param advanced GoAdvanced object.
504  * @param value Dynamic threshold.
505  * @return Operation status.
506  */
507 GoFx(kStatus) GoAdvanced_SetDynamicThreshold(GoAdvanced advanced, k32u value);
508 
509 /**
510  * Returns the dynamic threshold minimum value limit.
511  *
512  * @public @memberof GoAdvanced
513  * @version Introduced in firmware 4.6.1.140
514  * @param advanced GoAdvanced object.
515  * @return Dynamic threshold minimum value limit.
516  */
517 GoFx(k32u) GoAdvanced_DynamicThresholdLimitMin(GoAdvanced advanced);
518 
519 /**
520  * Returns the dynamic threshold maximum value limit.
521  *
522  * @public @memberof GoAdvanced
523  * @version Introduced in firmware 4.6.1.140
524  * @param advanced GoAdvanced object.
525  * @return Dynamic threshold maximum value limit.
526  */
527 GoFx(k32u) GoAdvanced_DynamicThresholdLimitMax(GoAdvanced advanced);
528 
529 /**
530  * Returns the user defined dynamic threshold value.
531  *
532  * @public @memberof GoAdvanced
533  * @version Introduced in firmware 4.6.1.140
534  * @param advanced GoAdvanced object.
535  * @return The user defined dynamic threshold value.
536  */
537 GoFx(k32u) GoAdvanced_DynamicThreshold(GoAdvanced advanced);
538 
539 /**
540  * Returns a boolean representing whether or not the user defined dynamic threshold is used by the system.
541  *
542  * @public @memberof GoAdvanced
543  * @version Introduced in firmware 4.6.1.140
544  * @param advanced GoAdvanced object.
545  * @return Dynamic threshold minimum value limit.
546  */
547 GoFx(kBool) GoAdvanced_IsDynamicThresholdUsed(GoAdvanced advanced);
548 
549 /**
550  * Returns the dynamic threshold system value.
551  *
552  * @public @memberof GoAdvanced
553  * @version Introduced in firmware 4.6.1.140
554  * @param advanced GoAdvanced object.
555  * @return Dynamic threshold system value.
556  */
557 GoFx(k32u) GoAdvanced_DynamicThresholdSystemValue(GoAdvanced advanced);
558 
559 /**
560  * Sets the gamma type.
561  *
562  * @public @memberof GoAdvanced
563  * @version Introduced in firmware 4.6.1.140
564  * @param advanced GoAdvanced object.
565  * @param value Gamma type.
566  * @return Operation status.
567  */
568 GoFx(kStatus) GoAdvanced_SetGammaType(GoAdvanced advanced, GoGammaType value);
569 
570 /**
571  * Returns the user defined gamma type.
572  *
573  * @public @memberof GoAdvanced
574  * @version Introduced in firmware 4.6.1.140
575  * @param advanced GoAdvanced object.
576  * @return User defined gamma type.
577  */
578 GoFx(GoGammaType) GoAdvanced_GammaType(GoAdvanced advanced);
579 
580 /**
581  * Returns a boolean representing whether the user defined gamma type is used by the system.
582  *
583  * @public @memberof GoAdvanced
584  * @version Introduced in firmware 4.6.1.140
585  * @param advanced GoAdvanced object.
586  * @return kTRUE if used and kFALSE otherwise.
587  */
588 GoFx(kBool) GoAdvanced_IsGammaTypeUsed(GoAdvanced advanced);
589 
590 /**
591  * Returns the system's gamma type value.
592  *
593  * @public @memberof GoAdvanced
594  * @version Introduced in firmware 4.6.1.140
595  * @param advanced GoAdvanced object.
596  * @return The system gamma type value.
597  */
598 GoFx(GoGammaType) GoAdvanced_GammaTypeSystemValue(GoAdvanced advanced);
599 
600 /**
601  * Enables or disables senstivity compensation. NOTE: This is only applicable to
602  * 2300 B series sensors.
603  *
604  * @public @memberof GoAdvanced
605  * @version Introduced in firmware 4.6.1.140
606  * @param advanced GoAdvanced object.
607  * @param value kTRUE to enable and kFALSE to disable.
608  * @return Operation status.
609  */
610 GoFx(kStatus) GoAdvanced_EnableSensitivityCompensation(GoAdvanced advanced, kBool value);
611 
612 /**
613  * Returns the user defined sensitivity compensation value.
614  *
615  * @public @memberof GoAdvanced
616  * @version Introduced in firmware 4.6.1.140
617  * @param advanced GoAdvanced object.
618  * @return User defined sensitivity compensation.
619  */
620 GoFx(kBool) GoAdvanced_SensitivityCompensationEnabled(GoAdvanced advanced);
621 
622 /**
623  * Returns a boolean representing whether the user defined sensitivity compensation is used by the system.
624  *
625  * @public @memberof GoAdvanced
626  * @version Introduced in firmware 4.6.1.140
627  * @param advanced GoAdvanced object.
628  * @return kTRUE if used and kFALSE otherwise.
629  */
630 GoFx(kBool) GoAdvanced_IsSensitivityCompensationEnabledUsed(GoAdvanced advanced);
631 
632 /**
633  * Returns the system's sensitivity compensation value.
634  *
635  * @public @memberof GoAdvanced
636  * @version Introduced in firmware 4.6.1.140
637  * @param advanced GoAdvanced object.
638  * @return kTRUE if enabled and kFALSE otherwise.
639  */
640 GoFx(kBool) GoAdvanced_SensitivityCompensationEnabledSystemValue(GoAdvanced advanced);
641 
642 
643 kEndHeader()
644 #include <GoSdk/GoAdvanced.x.h>
645 
646 #endif
647 
648 /// @endcond
Essential SDK declarations.
Represents an advanced gamma type.