Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoMaterial.h
1 /// @cond (Gocator_1x00 || Gocator_2x00)
2 
3 /**
4  * @file GoMaterial.h
5  * @brief Declares the GoMaterial 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_MATERIAL_H
13 #define GO_MATERIAL_H
14 
15 #include <GoSdk/GoSdkDef.h>
16 
17 kBeginHeader()
18 
19 /**
20  * @class GoMaterial
21  * @extends kObject
22  * @ingroup GoSdk
23  * @brief Represents configurable material acquisition settings.
24  */
25 typedef kObject GoMaterial;
26 
27 /**
28  * Sets the material acquisition type.
29  *
30  * @public @memberof GoMaterial
31  * @version Introduced in firmware 4.1.3.106
32  * @param material GoMaterial object.
33  * @param type The material type to set.
34  * @return Operation status.
35  */
36 GoFx(kStatus) GoMaterial_SetType(GoMaterial material, GoMaterialType type);
37 
38 /**
39  * Returns the user defined material acquisition type.
40  *
41  * @public @memberof GoMaterial
42  * @version Introduced in firmware 4.1.3.106
43  * @param material GoMaterial object.
44  * @return The material type.
45  */
46 GoFx(GoMaterialType) GoMaterial_Type(GoMaterial material);
47 
48 /**
49  * Returns a boolean relating to whether the user defined material acquisition type value will be used by the system.
50  *
51  * @public @memberof GoMaterial
52  * @version Introduced in firmware 4.1.3.106
53  * @param material GoMaterial object.
54  * @return kTRUE if the user defined material type will be used and kFALSE otherwise.
55  */
56 GoFx(kBool) GoMaterial_IsTypeUsed(GoMaterial material);
57 
58 /**
59  * Returns the material acquisition type to be used by the system.
60  *
61  * @public @memberof GoMaterial
62  * @version Introduced in firmware 4.1.3.106
63  * @param material GoMaterial object.
64  * @return The system value material type.
65  */
66 GoFx(GoMaterialType) GoMaterial_TypeSystemValue(GoMaterial material);
67 
68 /**
69  * Sets the spot threshold.
70  *
71  * @public @memberof GoMaterial
72  * @version Introduced in firmware 4.1.3.106
73  * @param material GoMaterial object.
74  * @param value Spot threshold.
75  * @return Operation status.
76  */
77 GoFx(kStatus) GoMaterial_SetSpotThreshold(GoMaterial material, k32u value);
78 
79 /**
80  * Returns the user defined spot threshold.
81  *
82  * @public @memberof GoMaterial
83  * @version Introduced in firmware 4.1.3.106
84  * @param material GoMaterial object.
85  * @return The spot threshold.
86  */
87 GoFx(k32u) GoMaterial_SpotThreshold(GoMaterial material);
88 
89 /**
90  * Returns the minimum spot threshold limit.
91  *
92  * @public @memberof GoMaterial
93  * @version Introduced in firmware 4.1.3.106
94  * @param material GoMaterial object.
95  * @return The minimum spot threshold.
96  */
97 GoFx(k32u) GoMaterial_SpotThresholdLimitMin(GoMaterial material);
98 
99 /**
100  * Returns the maximum spot threshold limit.
101  *
102  * @public @memberof GoMaterial
103  * @version Introduced in firmware 4.1.3.106
104  * @param material GoMaterial object.
105  * @return The maximum spot threshold.
106  */
107 GoFx(k32u) GoMaterial_SpotThresholdLimitMax(GoMaterial material);
108 
109 /**
110  * Returns a boolean value representing whether the user specified spot threshold value is used.
111  *
112  * @public @memberof GoMaterial
113  * @version Introduced in firmware 4.1.3.106
114  * @param material GoMaterial object.
115  * @return kTRUE if it is used and kFALSE otherwise.
116  */
117 GoFx(kBool) GoMaterial_IsSpotThresholdUsed(GoMaterial material);
118 
119 /**
120  * Returns the system spot threshold value.
121  *
122  * @public @memberof GoMaterial
123  * @version Introduced in firmware 4.1.3.106
124  * @param material GoMaterial object.
125  * @return The system spot threshold.
126  */
127 GoFx(k32u) GoMaterial_SpotThresholdSystemValue(GoMaterial material);
128 
129 /**
130  * Sets the maximum spot width.
131  *
132  * @public @memberof GoMaterial
133  * @version Introduced in firmware 4.1.3.106
134  * @param material GoMaterial object.
135  * @param value Maximum spot width.
136  * @return Operation status.
137  */
138 GoFx(kStatus) GoMaterial_SetSpotWidthMax(GoMaterial material, k32u value);
139 
140 /**
141  * Returns the user defined maximum spot width.
142  *
143  * @public @memberof GoMaterial
144  * @version Introduced in firmware 4.1.3.106
145  * @param material GoMaterial object.
146  * @return The maximum spot width.
147  */
148 GoFx(k32u) GoMaterial_SpotWidthMax(GoMaterial material);
149 
150 /**
151  * Returns the maximum spot width minimum limit.
152  *
153  * @public @memberof GoMaterial
154  * @version Introduced in firmware 4.1.3.106
155  * @param material GoMaterial object.
156  * @return The maximum spot width minimum limit.
157  */
158 GoFx(k32u) GoMaterial_SpotWidthMaxLimitMin(GoMaterial material);
159 
160 /**
161  * Returns the maximum spot width maximum limit.
162  *
163  * @public @memberof GoMaterial
164  * @version Introduced in firmware 4.1.3.106
165  * @param material GoMaterial object.
166  * @return The maximum spot width maximum limit.
167  */
168 GoFx(k32u) GoMaterial_SpotWidthMaxLimitMax(GoMaterial material);
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 GoMaterial
174  * @version Introduced in firmware 4.1.3.106
175  * @param material GoMaterial object.
176  * @return kTRUE if the user value will be used and kFALSE otherwise.
177  */
178 GoFx(kBool) GoMaterial_IsSpotWidthMaxUsed(GoMaterial material);
179 
180 /**
181  * Returns the maximum spot width system value.
182  *
183  * @public @memberof GoMaterial
184  * @version Introduced in firmware 4.1.3.106
185  * @param material GoMaterial object.
186  * @return The maximum spot width system value.
187  */
188 GoFx(k32u) GoMaterial_SpotWidthMaxSystemValue(GoMaterial material);
189 
190 /**
191  * Returns the number of spot selection type options.
192  *
193  * @public @memberof GoMaterial
194  * @version Introduced in firmware 4.3.3.124
195  * @param material GoMaterial object.
196  * @return The spot selection type option count.
197  */
198 GoFx(kSize) GoMaterial_SpotSelectionTypeOptionCount(GoMaterial material);
199 
200 /**
201  * Returns the spot selection type option at the given index.
202  *
203  * @public @memberof GoMaterial
204  * @version Introduced in firmware 4.3.3.124
205  * @param material GoMaterial 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) GoMaterial_SpotSelectionTypeOptionAt(GoMaterial material, kSize index);
210 
211 /**
212  * Sets the spot selection type.
213  *
214  * @public @memberof GoMaterial
215  * @version Introduced in firmware 4.1.3.106
216  * @param material GoMaterial object.
217  * @param type Spot selection type.
218  * @return Operation status.
219  */
220 GoFx(kStatus) GoMaterial_SetSpotSelectionType(GoMaterial material, GoSpotSelectionType type);
221 
222 /**
223  * Returns the user defined spot selection type.
224  *
225  * @public @memberof GoMaterial
226  * @version Introduced in firmware 4.1.3.106
227  * @param material GoMaterial object.
228  * @return The maximum spot width.
229  */
230 GoFx(GoSpotSelectionType) GoMaterial_SpotSelectionType(GoMaterial material);
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 GoMaterial
236  * @version Introduced in firmware 4.1.3.106
237  * @param material GoMaterial object.
238  * @return kTRUE if the user value will be used and kFALSE otherwise.
239  */
240 GoFx(kBool) GoMaterial_IsSpotSelectionTypeUsed(GoMaterial material);
241 
242 /**
243  * Returns the system spot selection type.
244  *
245  * @public @memberof GoMaterial
246  * @version Introduced in firmware 4.1.3.106
247  * @param material GoMaterial object.
248  * @return System spot selection type.
249  */
250 GoFx(GoSpotSelectionType) GoMaterial_SpotSelectionTypeSystemValue(GoMaterial material);
251 
252 /**
253  * Sets the analog camera gain.
254  *
255  * @public @memberof GoMaterial
256  * @version Introduced in firmware 4.1.3.106
257  * @param material GoMaterial object.
258  * @param value Analog camera gain.
259  * @return Operation status.
260  */
261 GoFx(kStatus) GoMaterial_SetCameraGainAnalog(GoMaterial material, k64f value);
262 
263 /**
264  * Returns the user defined analog camera gain value.
265  *
266  * @public @memberof GoMaterial
267  * @version Introduced in firmware 4.1.3.106
268  * @param material GoMaterial object.
269  * @return Analog camera gain value.
270  */
271 GoFx(k64f) GoMaterial_CameraGainAnalog(GoMaterial material);
272 
273 /**
274  * Returns the analog camera gain minimum value limit.
275  *
276  * @public @memberof GoMaterial
277  * @version Introduced in firmware 4.1.3.106
278  * @param material GoMaterial object.
279  * @return Analog camera gain minimum value limit.
280  */
281 GoFx(k64f) GoMaterial_CameraGainAnalogLimitMin(GoMaterial material);
282 
283 /**
284  * Returns the analog camera gain maximum value limit.
285  *
286  * @public @memberof GoMaterial
287  * @version Introduced in firmware 4.1.3.106
288  * @param material GoMaterial object.
289  * @return Analog camera gain maximum value limit.
290  */
291 GoFx(k64f) GoMaterial_CameraGainAnalogLimitMax(GoMaterial material);
292 
293 /**
294  * Returns a boolean value representing whether the user defined analog camera gain is used.
295  *
296  * @public @memberof GoMaterial
297  * @version Introduced in firmware 4.1.3.106
298  * @param material GoMaterial object.
299  * @return kTRUE if the user defined analog camera gain is used and kFALSE otherwise.
300  */
301 GoFx(kBool) GoMaterial_IsCameraGainAnalogUsed(GoMaterial material);
302 
303 /**
304  * Returns the analog camera gain system value.
305  *
306  * @public @memberof GoMaterial
307  * @version Introduced in firmware 4.1.3.106
308  * @param material GoMaterial object.
309  * @return The analog camera gain system value.
310  */
311 GoFx(k64f) GoMaterial_CameraGainAnalogSystemValue(GoMaterial material);
312 
313 /**
314  * Sets the digital camera gain
315  *
316  * @public @memberof GoMaterial
317  * @version Introduced in firmware 4.1.3.106
318  * @param material GoMaterial object.
319  * @param value Digital camera gain.
320  * @return Operation status.
321  */
322 GoFx(kStatus) GoMaterial_SetCameraGainDigital(GoMaterial material, k64f value);
323 
324 /**
325  * Returns the user defined digital camera gain value.
326  *
327  * @public @memberof GoMaterial
328  * @version Introduced in firmware 4.1.3.106
329  * @param material GoMaterial object.
330  * @return The digital camera gain system value.
331  */
332 GoFx(k64f) GoMaterial_CameraGainDigital(GoMaterial material);
333 
334 /**
335  * Returns the digital camera gain minimum value limit.
336  *
337  * @public @memberof GoMaterial
338  * @version Introduced in firmware 4.1.3.106
339  * @param material GoMaterial object.
340  * @return Digital camera gain minimum value limit.
341  */
342 GoFx(k64f) GoMaterial_CameraGainDigitalLimitMin(GoMaterial material);
343 
344 /**
345  * Returns the digital camera gain maximum value limit.
346  *
347  * @public @memberof GoMaterial
348  * @version Introduced in firmware 4.1.3.106
349  * @param material GoMaterial object.
350  * @return Digital camera gain maximum value limit.
351  */
352 GoFx(k64f) GoMaterial_CameraGainDigitalLimitMax(GoMaterial material);
353 
354 /**
355  * Returns a boolean value representing whether the user's digital camera gain value is used by the system.
356  *
357  * @public @memberof GoMaterial
358  * @version Introduced in firmware 4.1.3.106
359  * @param material GoMaterial object.
360  * @return kTRUE if used and kFALSE otherwise.
361  */
362 GoFx(kBool) GoMaterial_IsCameraGainDigitalUsed(GoMaterial material);
363 
364 /**
365  * Returns the system's digital camera gain value.
366  *
367  * @public @memberof GoMaterial
368  * @version Introduced in firmware 4.1.3.106
369  * @param material GoMaterial object.
370  * @return Digital camera gain system value.
371  */
372 GoFx(k64f) GoMaterial_CameraGainDigitalSystemValue(GoMaterial material);
373 
374 /**
375  * Sets the dynamic sensitivity.
376  *
377  * @public @memberof GoMaterial
378  * @version Introduced in firmware 4.1.3.106
379  * @param material GoMaterial object.
380  * @param value Dynamic sensitivity.
381  * @return Operation status.
382  */
383 GoFx(kStatus) GoMaterial_SetDynamicSensitivity(GoMaterial material, k64f value);
384 
385 /**
386  * Returns the user defined dynamic sensitivity value.
387  *
388  * @public @memberof GoMaterial
389  * @version Introduced in firmware 4.1.3.106
390  * @param material GoMaterial object.
391  * @return User defined dynamic sensitivity value.
392  */
393 GoFx(k64f) GoMaterial_DynamicSensitivity(GoMaterial material);
394 
395 /**
396  * Returns the dynamic sensitivity minimum value limit.
397  *
398  * @public @memberof GoMaterial
399  * @version Introduced in firmware 4.1.3.106
400  * @param material GoMaterial object.
401  * @return Dynamic sensitivity minimum value limit.
402  */
403 GoFx(k64f) GoMaterial_DynamicSensitivityLimitMin(GoMaterial material);
404 
405 /**
406  * Returns the dynamic sensitivity maximum value limit.
407  *
408  * @public @memberof GoMaterial
409  * @version Introduced in firmware 4.1.3.106
410  * @param material GoMaterial object.
411  * @return Dynamic sensitivity maximum value limit.
412  */
413 GoFx(k64f) GoMaterial_DynamicSensitivityLimitMax(GoMaterial material);
414 
415 /**
416  * Returns a boolean representing whether the user defined dynamic sensitivity value is used.
417  *
418  * @public @memberof GoMaterial
419  * @version Introduced in firmware 4.1.3.106
420  * @param material GoMaterial object.
421  * @return kTRUE if used and kFALSE otherwise.
422  */
423 GoFx(kBool) GoMaterial_IsDynamicSensitivityUsed(GoMaterial material);
424 
425 /**
426  * Returns the dynamic sensitivity system value.
427  *
428  * @public @memberof GoMaterial
429  * @version Introduced in firmware 4.1.3.106
430  * @param material GoMaterial object.
431  * @return Dynamic sensitivity system value.
432  */
433 GoFx(k64f) GoMaterial_DynamicSensitivitySystemValue(GoMaterial material);
434 
435 /**
436  * Sets the dynamic threshold.
437  *
438  * @public @memberof GoMaterial
439  * @version Introduced in firmware 4.1.3.106
440  * @param material GoMaterial object.
441  * @param value Dynamic threshold.
442  * @return Operation status.
443  */
444 GoFx(kStatus) GoMaterial_SetDynamicThreshold(GoMaterial material, k32u value);
445 
446 /**
447  * Returns the dynamic threshold minimum value limit.
448  *
449  * @public @memberof GoMaterial
450  * @version Introduced in firmware 4.1.3.106
451  * @param material GoMaterial object.
452  * @return Dynamic threshold minimum value limit.
453  */
454 GoFx(k32u) GoMaterial_DynamicThresholdLimitMin(GoMaterial material);
455 
456 /**
457  * Returns the dynamic threshold maximum value limit.
458  *
459  * @public @memberof GoMaterial
460  * @version Introduced in firmware 4.1.3.106
461  * @param material GoMaterial object.
462  * @return Dynamic threshold maximum value limit.
463  */
464 GoFx(k32u) GoMaterial_DynamicThresholdLimitMax(GoMaterial material);
465 
466 /**
467  * Returns the user defined dynamic threshold value.
468  *
469  * @public @memberof GoMaterial
470  * @version Introduced in firmware 4.1.3.106
471  * @param material GoMaterial object.
472  * @return The user defined dynamic threshold value.
473  */
474 GoFx(k32u) GoMaterial_DynamicThreshold(GoMaterial material);
475 
476 /**
477  * Returns a boolean representing whether or not the user defined dynamic threshold is used by the system.
478  *
479  * @public @memberof GoMaterial
480  * @version Introduced in firmware 4.1.3.106
481  * @param material GoMaterial object.
482  * @return Dynamic threshold minimum value limit.
483  */
484 GoFx(kBool) GoMaterial_IsDynamicThresholdUsed(GoMaterial material);
485 
486 /**
487  * Returns the dynamic threshold system value.
488  *
489  * @public @memberof GoMaterial
490  * @version Introduced in firmware 4.1.3.106
491  * @param material GoMaterial object.
492  * @return Dynamic threshold system value.
493  */
494 GoFx(k32u) GoMaterial_DynamicThresholdSystemValue(GoMaterial material);
495 
496 /**
497  * Sets the gamma type.
498  *
499  * @public @memberof GoMaterial
500  * @version Introduced in firmware 4.1.3.106
501  * @param material GoMaterial object.
502  * @param value Gamma type.
503  * @return Operation status.
504  */
505 GoFx(kStatus) GoMaterial_SetGammaType(GoMaterial material, GoGammaType value);
506 
507 /**
508  * Returns the user defined gamma type.
509  *
510  * @public @memberof GoMaterial
511  * @version Introduced in firmware 4.1.3.106
512  * @param material GoMaterial object.
513  * @return User defined gamma type.
514  */
515 GoFx(GoGammaType) GoMaterial_GammaType(GoMaterial material);
516 
517 /**
518  * Returns a boolean representing whether the user defined gamma type is used by the system.
519  *
520  * @public @memberof GoMaterial
521  * @version Introduced in firmware 4.1.3.106
522  * @param material GoMaterial object.
523  * @return kTRUE if used and kFALSE otherwise.
524  */
525 GoFx(kBool) GoMaterial_IsGammaTypeUsed(GoMaterial material);
526 
527 /**
528  * Returns the system's gamma type value.
529  *
530  * @public @memberof GoMaterial
531  * @version Introduced in firmware 4.1.3.106
532  * @param material GoMaterial object.
533  * @return The system gamma type value.
534  */
535 GoFx(GoGammaType) GoMaterial_GammaTypeSystemValue(GoMaterial material);
536 
537 /**
538  * Enables or disables senstivity compensation. NOTE: This is only applicable to
539  * 2300 B series sensors.
540  *
541  * @public @memberof GoMaterial
542  * @version Introduced in firmware 4.3.3.124
543  * @param material GoMaterial object.
544  * @param value kTRUE to enable and kFALSE to disable.
545  * @return Operation status.
546  */
547 GoFx(kStatus) GoMaterial_EnableSensitivityCompensation(GoMaterial material, kBool value);
548 
549 /**
550  * Returns the user defined sensitivity compensation value.
551  *
552  * @public @memberof GoMaterial
553  * @version Introduced in firmware 4.3.3.124
554  * @param material GoMaterial object.
555  * @return User defined sensitivity compensation.
556  */
557 GoFx(kBool) GoMaterial_SensitivityCompensationEnabled(GoMaterial material);
558 
559 /**
560  * Returns a boolean representing whether the user defined sensitivity compensation is used by the system.
561  *
562  * @public @memberof GoMaterial
563  * @version Introduced in firmware 4.3.3.124
564  * @param material GoMaterial object.
565  * @return kTRUE if used and kFALSE otherwise.
566  */
567 GoFx(kBool) GoMaterial_IsSensitivityCompensationEnabledUsed(GoMaterial material);
568 
569 /**
570  * Returns the system's sensitivity compensation value.
571  *
572  * @public @memberof GoMaterial
573  * @version Introduced in firmware 4.3.3.124
574  * @param material GoMaterial object.
575  * @return kTRUE if enabled and kFALSE otherwise.
576  */
577 GoFx(kBool) GoMaterial_SensitivityCompensationEnabledSystemValue(GoMaterial material);
578 
579 
580 kEndHeader()
581 #include <GoSdk/GoMaterial.x.h>
582 
583 #endif
584 
585 /// @endcond
Essential SDK declarations.
Represents a material gamma type.