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) 2015 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  * Sets the spot selection type.
192  *
193  * @public @memberof GoMaterial
194  * @version Introduced in firmware 4.1.3.106
195  * @param material GoMaterial object.
196  * @param type Spot selection type.
197  * @return Operation status.
198  */
199 GoFx(kStatus) GoMaterial_SetSpotSelectionType(GoMaterial material, GoSpotSelectionType type);
200 
201 /**
202  * Returns the user defined spot selection type.
203  *
204  * @public @memberof GoMaterial
205  * @version Introduced in firmware 4.1.3.106
206  * @param material GoMaterial object.
207  * @return The maximum spot width.
208  */
209 GoFx(GoSpotSelectionType) GoMaterial_SpotSelectionType(GoMaterial material);
210 
211 /**
212  * Returns a boolean relating to whether the user defined spot selection type will be used by the system.
213  *
214  * @public @memberof GoMaterial
215  * @version Introduced in firmware 4.1.3.106
216  * @param material GoMaterial object.
217  * @return kTRUE if the user value will be used and kFALSE otherwise.
218  */
219 GoFx(kBool) GoMaterial_IsSpotSelectionTypeUsed(GoMaterial material);
220 
221 /**
222  * Returns the system spot selection type.
223  *
224  * @public @memberof GoMaterial
225  * @version Introduced in firmware 4.1.3.106
226  * @param material GoMaterial object.
227  * @return System spot selection type.
228  */
229 GoFx(GoSpotSelectionType) GoMaterial_SpotSelectionTypeSystemValue(GoMaterial material);
230 
231 /**
232  * Sets the analog camera gain.
233  *
234  * @public @memberof GoMaterial
235  * @version Introduced in firmware 4.1.3.106
236  * @param material GoMaterial object.
237  * @param value Analog camera gain.
238  * @return Operation status.
239  */
240 GoFx(kStatus) GoMaterial_SetCameraGainAnalog(GoMaterial material, k64f value);
241 
242 /**
243  * Returns the user defined analog camera gain value.
244  *
245  * @public @memberof GoMaterial
246  * @version Introduced in firmware 4.1.3.106
247  * @param material GoMaterial object.
248  * @return Analog camera gain value.
249  */
250 GoFx(k64f) GoMaterial_CameraGainAnalog(GoMaterial material);
251 
252 /**
253  * Returns the analog camera gain minimum value limit.
254  *
255  * @public @memberof GoMaterial
256  * @version Introduced in firmware 4.1.3.106
257  * @param material GoMaterial object.
258  * @return Analog camera gain minimum value limit.
259  */
260 GoFx(k64f) GoMaterial_CameraGainAnalogLimitMin(GoMaterial material);
261 
262 /**
263  * Returns the analog camera gain maximum value limit.
264  *
265  * @public @memberof GoMaterial
266  * @version Introduced in firmware 4.1.3.106
267  * @param material GoMaterial object.
268  * @return Analog camera gain maximum value limit.
269  */
270 GoFx(k64f) GoMaterial_CameraGainAnalogLimitMax(GoMaterial material);
271 
272 /**
273  * Returns a boolean value representing whether the user defined analog camera gain is used.
274  *
275  * @public @memberof GoMaterial
276  * @version Introduced in firmware 4.1.3.106
277  * @param material GoMaterial object.
278  * @return kTRUE if the user defined analog camera gain is used and kFALSE otherwise.
279  */
280 GoFx(kBool) GoMaterial_IsCameraGainAnalogUsed(GoMaterial material);
281 
282 /**
283  * Returns the analog camera gain system value.
284  *
285  * @public @memberof GoMaterial
286  * @version Introduced in firmware 4.1.3.106
287  * @param material GoMaterial object.
288  * @return The analog camera gain system value.
289  */
290 GoFx(k64f) GoMaterial_CameraGainAnalogSystemValue(GoMaterial material);
291 
292 /**
293  * Sets the digital camera gain
294  *
295  * @public @memberof GoMaterial
296  * @version Introduced in firmware 4.1.3.106
297  * @param material GoMaterial object.
298  * @param value Digital camera gain.
299  * @return Operation status.
300  */
301 GoFx(kStatus) GoMaterial_SetCameraGainDigital(GoMaterial material, k64f value);
302 
303 /**
304  * Returns the user defined digital camera gain value.
305  *
306  * @public @memberof GoMaterial
307  * @version Introduced in firmware 4.1.3.106
308  * @param material GoMaterial object.
309  * @return The digital camera gain system value.
310  */
311 GoFx(k64f) GoMaterial_CameraGainDigital(GoMaterial material);
312 
313 /**
314  * Returns the digital camera gain minimum value limit.
315  *
316  * @public @memberof GoMaterial
317  * @version Introduced in firmware 4.1.3.106
318  * @param material GoMaterial object.
319  * @return Digital camera gain minimum value limit.
320  */
321 GoFx(k64f) GoMaterial_CameraGainDigitalLimitMin(GoMaterial material);
322 
323 /**
324  * Returns the digital camera gain maximum value limit.
325  *
326  * @public @memberof GoMaterial
327  * @version Introduced in firmware 4.1.3.106
328  * @param material GoMaterial object.
329  * @return Digital camera gain maximum value limit.
330  */
331 GoFx(k64f) GoMaterial_CameraGainDigitalLimitMax(GoMaterial material);
332 
333 /**
334  * Returns a boolean value representing whether the user's digital camera gain value is used by the system.
335  *
336  * @public @memberof GoMaterial
337  * @version Introduced in firmware 4.1.3.106
338  * @param material GoMaterial object.
339  * @return kTRUE if used and kFALSE otherwise.
340  */
341 GoFx(kBool) GoMaterial_IsCameraGainDigitalUsed(GoMaterial material);
342 
343 /**
344  * Returns the system's digital camera gain value.
345  *
346  * @public @memberof GoMaterial
347  * @version Introduced in firmware 4.1.3.106
348  * @param material GoMaterial object.
349  * @return Digital camera gain system value.
350  */
351 GoFx(k64f) GoMaterial_CameraGainDigitalSystemValue(GoMaterial material);
352 
353 /**
354  * Sets the dynamic sensitivity.
355  *
356  * @public @memberof GoMaterial
357  * @version Introduced in firmware 4.1.3.106
358  * @param material GoMaterial object.
359  * @param value Dynamic sensitivity.
360  * @return Operation status.
361  */
362 GoFx(kStatus) GoMaterial_SetDynamicSensitivity(GoMaterial material, k64f value);
363 
364 /**
365  * Returns the user defined dynamic sensitivity value.
366  *
367  * @public @memberof GoMaterial
368  * @version Introduced in firmware 4.1.3.106
369  * @param material GoMaterial object.
370  * @return User defined dynamic sensitivity value.
371  */
372 GoFx(k64f) GoMaterial_DynamicSensitivity(GoMaterial material);
373 
374 /**
375  * Returns the dynamic sensitivity minimum value limit.
376  *
377  * @public @memberof GoMaterial
378  * @version Introduced in firmware 4.1.3.106
379  * @param material GoMaterial object.
380  * @return Dynamic sensitivity minimum value limit.
381  */
382 GoFx(k64f) GoMaterial_DynamicSensitivityLimitMin(GoMaterial material);
383 
384 /**
385  * Returns the dynamic sensitivity maximum value limit.
386  *
387  * @public @memberof GoMaterial
388  * @version Introduced in firmware 4.1.3.106
389  * @param material GoMaterial object.
390  * @return Dynamic sensitivity maximum value limit.
391  */
392 GoFx(k64f) GoMaterial_DynamicSensitivityLimitMax(GoMaterial material);
393 
394 /**
395  * Returns a boolean representing whether the user defined dynamic sensitivity value is used.
396  *
397  * @public @memberof GoMaterial
398  * @version Introduced in firmware 4.1.3.106
399  * @param material GoMaterial object.
400  * @return kTRUE if used and kFALSE otherwise.
401  */
402 GoFx(kBool) GoMaterial_IsDynamicSensitivityUsed(GoMaterial material);
403 
404 /**
405  * Returns the dynamic sensitivity system value.
406  *
407  * @public @memberof GoMaterial
408  * @version Introduced in firmware 4.1.3.106
409  * @param material GoMaterial object.
410  * @return Dynamic sensitivity system value.
411  */
412 GoFx(k64f) GoMaterial_DynamicSensitivitySystemValue(GoMaterial material);
413 
414 /**
415  * Sets the dynamic threshold.
416  *
417  * @public @memberof GoMaterial
418  * @version Introduced in firmware 4.1.3.106
419  * @param material GoMaterial object.
420  * @param value Dynamic threshold.
421  * @return Operation status.
422  */
423 GoFx(kStatus) GoMaterial_SetDynamicThreshold(GoMaterial material, k32u value);
424 
425 /**
426  * Returns the dynamic threshold minimum value limit.
427  *
428  * @public @memberof GoMaterial
429  * @version Introduced in firmware 4.1.3.106
430  * @param material GoMaterial object.
431  * @return Dynamic threshold minimum value limit.
432  */
433 GoFx(k32u) GoMaterial_DynamicThresholdLimitMin(GoMaterial material);
434 
435 /**
436  * Returns the dynamic threshold maximum value limit.
437  *
438  * @public @memberof GoMaterial
439  * @version Introduced in firmware 4.1.3.106
440  * @param material GoMaterial object.
441  * @return Dynamic threshold maximum value limit.
442  */
443 GoFx(k32u) GoMaterial_DynamicThresholdLimitMax(GoMaterial material);
444 
445 /**
446  * Returns the user defined dynamic threshold value.
447  *
448  * @public @memberof GoMaterial
449  * @version Introduced in firmware 4.1.3.106
450  * @param material GoMaterial object.
451  * @return The user defined dynamic threshold value.
452  */
453 GoFx(k32u) GoMaterial_DynamicThreshold(GoMaterial material);
454 
455 /**
456  * Returns a boolean representing whether or not the user defined dynamic threshold is used by the system.
457  *
458  * @public @memberof GoMaterial
459  * @version Introduced in firmware 4.1.3.106
460  * @param material GoMaterial object.
461  * @return Dynamic threshold minimum value limit.
462  */
463 GoFx(kBool) GoMaterial_IsDynamicThresholdUsed(GoMaterial material);
464 
465 /**
466  * Returns the dynamic threshold system value.
467  *
468  * @public @memberof GoMaterial
469  * @version Introduced in firmware 4.1.3.106
470  * @param material GoMaterial object.
471  * @return Dynamic threshold system value.
472  */
473 GoFx(k32u) GoMaterial_DynamicThresholdSystemValue(GoMaterial material);
474 
475 /**
476  * Sets the gamma type.
477  *
478  * @public @memberof GoMaterial
479  * @version Introduced in firmware 4.1.3.106
480  * @param material GoMaterial object.
481  * @param value Gamma type.
482  * @return Operation status.
483  */
484 GoFx(kStatus) GoMaterial_SetGammaType(GoMaterial material, GoGammaType value);
485 
486 /**
487  * Returns the user defined gamma type.
488  *
489  * @public @memberof GoMaterial
490  * @version Introduced in firmware 4.1.3.106
491  * @param material GoMaterial object.
492  * @return User defined gamma type.
493  */
494 GoFx(GoGammaType) GoMaterial_GammaType(GoMaterial material);
495 
496 /**
497  * Returns a boolean representing whether the user defined gamma type is used by the system.
498  *
499  * @public @memberof GoMaterial
500  * @version Introduced in firmware 4.1.3.106
501  * @param material GoMaterial object.
502  * @return kTRUE if used and kFALSE otherwise.
503  */
504 GoFx(kBool) GoMaterial_IsGammaTypeUsed(GoMaterial material);
505 
506 /**
507  * Returns the system's gamma type value.
508  *
509  * @public @memberof GoMaterial
510  * @version Introduced in firmware 4.1.3.106
511  * @param material GoMaterial object.
512  * @return The system gamma type value.
513  */
514 GoFx(GoGammaType) GoMaterial_GammaTypeSystemValue(GoMaterial material);
515 
516 /**
517  * Enables or disables senstivity compensation. NOTE: This is only applicable to
518  * 2300 B series sensors.
519  *
520  * @public @memberof GoMaterial
521  * @param material GoMaterial object.
522  * @param value kTRUE to enable and kFALSE to disable.
523  * @return Operation status.
524  */
525 GoFx(kStatus) GoMaterial_EnableSensitivityCompensation(GoMaterial material, kBool value);
526 
527 /**
528  * Returns the user defined sensitivity compensation value.
529  *
530  * @public @memberof GoMaterial
531  * @param material GoMaterial object.
532  * @return User defined sensitivity compensation.
533  */
534 GoFx(kBool) GoMaterial_SensitivityCompensationEnabled(GoMaterial material);
535 
536 /**
537  * Returns a boolean representing whether the user defined sensitivity compensation is used by the system.
538  *
539  * @public @memberof GoMaterial
540  * @param material GoMaterial object.
541  * @return kTRUE if used and kFALSE otherwise.
542  */
543 GoFx(kBool) GoMaterial_IsSensitivityCompensationEnabledUsed(GoMaterial material);
544 
545 /**
546  * Returns the system's sensitivity compensation value.
547  *
548  * @public @memberof GoMaterial
549  * @param material GoMaterial object.
550  * @return kTRUE if enabled and kFALSE otherwise.
551  */
552 GoFx(kBool) GoMaterial_SensitivityCompensationEnabledSystemValue(GoMaterial material);
553 
554 
555 kEndHeader()
556 #include <GoSdk/GoMaterial.x.h>
557 
558 #endif
559 
560 /// @endcond
Essential SDK declarations.
Represents a material gamma type.