Gocator API

- Home
- Topics
- Types
- Files

All Classes Files Functions Variables Typedefs Macros Modules Pages
GoAnalog.h
Go to the documentation of this file.
1 /**
2 * @file GoAnalog.h
3 * @brief Declares the GoAnalog class.
4 *
5 * @internal
6 * Copyright (C) 2016-2022 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 #ifndef GO_SDK_ANALOG_H
11 #define GO_SDK_ANALOG_H
12
13 #include <GoSdk/GoSdkDef.h>
14
15 /**
16 * @class GoAnalog
17 * @extends kObject
18 * @ingroup GoSdk-Analog
19 * @brief Represents Analog output settings.
20 */
21 typedef kObject GoAnalog;
22
23
24 /**
25 * Gets the event which triggers this output to fire.
26 *
27 * @public @memberof GoAnalog
28 * @version Introduced in firmware 4.0.10.27
29 * @param analog GoAnalog object.
30 * @return The output event.
31 */
32 GoFx(GoAnalogEvent) GoAnalog_Event(GoAnalog analog);
33
34 /**
35 * Set the event which triggers this output to fire.
36 *
37 * @public @memberof GoAnalog
38 * @version Introduced in firmware 4.0.10.27
39 * @param analog GoAnalog object.
40 * @param event The selected output event.
41 * @return Operation status.
42 */
43 GoFx(kStatus) GoAnalog_SetEvent(GoAnalog analog, GoAnalogEvent event);
44
45 /**
46 * Gets the number of measurement value source options.
47 *
48 * @public @memberof GoAnalog
49 * @version Introduced in firmware 4.0.10.27
50 * @param analog GoAnalog object.
51 * @return Count of source options.
52 */
53 GoFx(kSize) GoAnalog_OptionCount(GoAnalog analog);
54
55 /**
56 * Gets the measurement value source option at the specified index.
57 *
58 * @public @memberof GoAnalog
59 * @version Introduced in firmware 4.0.10.27
60 * @param analog GoAnalog object.
61 * @param index Source option index.
62 * @return Source option.
63 */
64 GoFx(k32u) GoAnalog_OptionAt(GoAnalog analog, kSize index);
65
66 /**
67 * Selects a source type and source identifier for output.
68 *
69 * @public @memberof GoAnalog
70 * @version Introduced in firmware 4.0.10.27
71 * @param analog GoAnalog object.
72 * @param sourceId Output source identifier.
73 * @return Operation status.
74 */
75 GoFx(kStatus) GoAnalog_SetSource(GoAnalog analog, k32u sourceId);
76
77 /**
78 * Gets the selected source identifier.
79 *
80 * @public @memberof GoAnalog
81 * @version Introduced in firmware 4.0.10.27
82 * @param analog GoAnalog object.
83 * @return Selected source identifier.
84 */
85 GoFx(k32u) GoAnalog_Source(GoAnalog analog);
86
87 /**
88 * Clears the currently selected source identifier.
89 *
90 * @public @memberof GoAnalog
91 * @version Introduced in firmware 4.0.10.27
92 * @param analog GoAnalog object.
93 * @return Operation status.
94 */
95 GoFx(kStatus) GoAnalog_ClearSource(GoAnalog analog);
96
97 /**
98 * Gets the minimum valid value for CurrentMin, CurrentMax and CurrentInvalid settings.
99 *
100 * @public @memberof GoAnalog
101 * @version Introduced in firmware 4.0.10.27
102 * @param analog GoAnalog object.
103 * @return Minimum valid current value (mA).
104 */
105 GoFx(k64f) GoAnalog_CurrentLimitMin(GoAnalog analog);
106
107 /**
108 * Gets the maximum valid value for CurrentMin, CurrentMax and CurrentInvalid settings.
109 *
110 * @public @memberof GoAnalog
111 * @version Introduced in firmware 4.0.10.27
112 * @param analog GoAnalog object.
113 * @return Maximum valid current value (mA).
114 */
115 GoFx(k64f) GoAnalog_CurrentLimitMax(GoAnalog analog);
116
117 /**
118 * Sets the minimum current output level.
119 *
120 * @public @memberof GoAnalog
121 * @version Introduced in firmware 4.0.10.27
122 * @param analog GoAnalog object.
123 * @param min Minimum current output level (mA).
124 * @return Operation status.
125 */
126 GoFx(kStatus) GoAnalog_SetCurrentMin(GoAnalog analog, k64f min);
127
128 /**
129 * Gets the minimum current output level.
130 *
131 * @public @memberof GoAnalog
132 * @version Introduced in firmware 4.0.10.27
133 * @param analog GoAnalog object.
134 * @return Minimum current output (mA).
135 */
136 GoFx(k64f) GoAnalog_CurrentMin(GoAnalog analog);
137
138 /**
139 * Gets the minimum allowable current output level to be set for the minimum current.
140 *
141 * @public @memberof GoAnalog
142 * @version Introduced in firmware 4.0.10.27
143 * @param analog GoAnalog object.
144 * @return Maximum current output (mA).
145 */
146 GoFx(k64f) GoAnalog_CurrentMinLimitMin(GoAnalog analog);
147
148 /**
149 * Gets the maximum allowable current output level to be set for the minimum current.
150 *
151 * @public @memberof GoAnalog
152 * @version Introduced in firmware 4.0.10.27
153 * @param analog GoAnalog object.
154 * @return Maximum current output (mA).
155 */
156 GoFx(k64f) GoAnalog_CurrentMinLimitMax(GoAnalog analog);
157
158 /**
159 * Sets the maximum current output level.
160 *
161 * @public @memberof GoAnalog
162 * @version Introduced in firmware 4.0.10.27
163 * @param analog GoAnalog object.
164 * @param max Maximum current output level (mA).
165 * @return Operation status.
166 */
167 GoFx(kStatus) GoAnalog_SetCurrentMax(GoAnalog analog, k64f max);
168
169 /**
170 * Gets the maximum current output level.
171 *
172 * @public @memberof GoAnalog
173 * @version Introduced in firmware 4.0.10.27
174 * @param analog GoAnalog object.
175 * @return Maximum current output (mA).
176 */
177 GoFx(k64f) GoAnalog_CurrentMax(GoAnalog analog);
178
179 /**
180 * Gets the minimum allowable current output level to be set for the maximum current.
181 *
182 * @public @memberof GoAnalog
183 * @version Introduced in firmware 4.0.10.27
184 * @param analog GoAnalog object.
185 * @return Maximum current output (mA).
186 */
187 GoFx(k64f) GoAnalog_CurrentMaxLimitMin(GoAnalog analog);
188
189 /**
190 * Gets the maximum allowable current output level to be set for the maximum current.
191 *
192 * @public @memberof GoAnalog
193 * @version Introduced in firmware 4.0.10.27
194 * @param analog GoAnalog object.
195 * @return Maximum current output (mA).
196 */
197 GoFx(k64f) GoAnalog_CurrentMaxLimitMax(GoAnalog analog);
198
199
200 /**
201 * Enables the current output level associated with an invalid measurement.
202 * When this is disabled, the output value will be held constant on an invalid measurement
203 *
204 * @public @memberof GoAnalog
205 * @version Introduced in firmware 4.0.10.27
206 * @param analog GoAnalog object.
207 * @param enable kTRUE to enable, or kFALSE to disable.
208 * @return Operation status.
209 */
210 GoFx(kStatus) GoAnalog_EnableCurrentInvalid(GoAnalog analog, kBool enable);
211
212 /**
213 * Gets the status of the invalid current enabled option
214 *
215 * @public @memberof GoAnalog
216 * @version Introduced in firmware 4.0.10.27
217 * @param analog GoAnalog object.
218 * @return Whether invalid current is enabled for this output.
219 */
220 GoFx(kBool) GoAnalog_CurrentInvalidEnabled(GoAnalog analog);
221
222 /**
223 * Sets the current output level associated with an invalid measurement.
224 *
225 * @public @memberof GoAnalog
226 * @version Introduced in firmware 4.0.10.27
227 * @param analog GoAnalog object.
228 * @param invalid Invalid output current (mA).
229 * @return Operation status.
230 */
231 GoFx(kStatus) GoAnalog_SetCurrentInvalid(GoAnalog analog, k64f invalid);
232
233 /**
234 * Gets the current output level associated with an invalid measurement.
235 *
236 * @public @memberof GoAnalog
237 * @version Introduced in firmware 4.0.10.27
238 * @param analog GoAnalog object.
239 * @return Invalid current level (mA).
240 */
241 GoFx(k64f) GoAnalog_CurrentInvalid(GoAnalog analog);
242
243 /**
244 * Gets the maximum allowable current output level to be set for the invalid value current.
245 *
246 * @public @memberof GoAnalog
247 * @version Introduced in firmware 4.0.10.27
248 * @param analog GoAnalog object.
249 * @return Maximum current output (mA).
250 */
251 GoFx(k64f) GoAnalog_CurrentInvalidLimitMax(GoAnalog analog);
252
253 /**
254 * Gets the minimum allowable current output level to be set for the invalid value current.
255 *
256 * @public @memberof GoAnalog
257 * @version Introduced in firmware 4.0.10.27
258 * @param analog GoAnalog object.
259 * @return Maximum current output (mA).
260 */
261 GoFx(k64f) GoAnalog_CurrentInvalidLimitMin(GoAnalog analog);
262
263 /**
264 * Sets the measurement value associated with the minimum output current value.
265 *
266 * @public @memberof GoAnalog
267 * @version Introduced in firmware 4.0.10.27
268 * @param analog GoAnalog object.
269 * @param min Minimum measurement value (units are measurement dependent).
270 * @return Operation status.
271 */
272 GoFx(kStatus) GoAnalog_SetDataScaleMin(GoAnalog analog, k64f min);
273
274 /**
275 * Gets the measurement value associated with the minimum output current value.
276 *
277 * @public @memberof GoAnalog
278 * @version Introduced in firmware 4.0.10.27
279 * @param analog GoAnalog object.
280 * @return Minimum measurement value (units are measurement dependent).
281 */
282 GoFx(k64f) GoAnalog_DataScaleMin(GoAnalog analog);
283
284 /**
285 * Sets the measurement value associated with the maximum output current value.
286 *
287 * @public @memberof GoAnalog
288 * @version Introduced in firmware 4.0.10.27
289 * @param analog GoAnalog object.
290 * @param max Maximum measurement value (units are measurement dependent).
291 * @return Operation status.
292 */
293 GoFx(kStatus) GoAnalog_SetDataScaleMax(GoAnalog analog, k64f max);
294
295 /**
296 * Gets the measurement value associated with the maximum output current value.
297 *
298 * @public @memberof GoAnalog
299 * @version Introduced in firmware 4.0.10.27
300 * @param analog GoAnalog object.
301 * @return Maximum measurement value (units are measurement dependent).
302 */
303 GoFx(k64f) GoAnalog_DataScaleMax(GoAnalog analog);
304
305 /**
306 * Sets the delay from exposure until output is triggered, in units based on GoDomain
307 * mm when GoDomain is distance, uS when GoDomain is time.
308 *
309 * The delay is ignored when GoDomain is Immediate or when output is Software triggered.
310 *
311 * @public @memberof GoAnalog
312 * @version Introduced in firmware 4.0.10.27
313 * @param analog GoAnalog object.
314 * @param delay The delay (uS or mm)
315 * @return Operation status.
316 */
317 GoFx(kStatus) GoAnalog_SetDelay(GoAnalog analog, k64s delay);
318
319 /**
320 * Gets the output delay.
321 *
322 * @public @memberof GoAnalog
323 * @version Introduced in firmware 4.0.10.27
324 * @param analog GoAnalog object.
325 * @return The output delay (uS or mm).
326 */
327 GoFx(k64s) GoAnalog_Delay(GoAnalog analog);
328
329 /**
330 * Sets the output delay domain.
331 *
332 * @public @memberof GoAnalog
333 * @version Introduced in firmware 4.0.10.27
334 * @param analog GoAnalog object.
335 * @param delayDomain Output delay domain.
336 * @return The output delay domain (time or encoder value).
337 */
338 GoFx(kStatus) GoAnalog_SetDelayDomain(GoAnalog analog, GoOutputDelayDomain delayDomain);
339
340 /**
341 * Gets the output delay domain.
342 *
343 * @public @memberof GoAnalog
344 * @version Introduced in firmware 4.0.10.27
345 * @param analog GoAnalog object.
346 * @return The output delay domain.
347 */
348 GoFx(GoOutputDelayDomain) GoAnalog_DelayDomain(GoAnalog analog);
349
350 /**
351 * Enables or disables the scheduler for this output.
352 *
353 * @public @memberof GoAnalog
354 * @version Introduced in firmware 4.0.10.27
355 * @param analog GoAnalog object.
356 * @param enabled kTRUE to enable, kFALSE to disable
357 * @return Operation status.
358 */
359 GoFx(kStatus) GoAnalog_EnableSchedule(GoAnalog analog, kBool enabled );
360
361 /**
362 * Gets the enabled state of the scheduler for this output.
363 *
364 * @public @memberof GoAnalog
365 * @version Introduced in firmware 4.0.10.27
366 * @param analog GoAnalog object.
367 * @return kTRUE if the scheduler is enabled; kFALSE otherwise.
368 */
369 GoFx(kBool) GoAnalog_ScheduleEnabled(GoAnalog analog);
370
371 #include <GoSdk/Outputs/GoAnalog.x.h>
372
373 #endif
GoAnalog::GoAnalog_EnableCurrentInvalid
kStatus GoAnalog_EnableCurrentInvalid(GoAnalog analog, kBool enable)
Enables the current output level associated with an invalid measurement.
GoAnalog::GoAnalog_Source
k32u GoAnalog_Source(GoAnalog analog)
Gets the selected source identifier.
k32u
GoOutputDelayDomain
Represents an output delay domain.
GoAnalog::GoAnalog_SetDelayDomain
kStatus GoAnalog_SetDelayDomain(GoAnalog analog, GoOutputDelayDomain delayDomain)
Sets the output delay domain.
GoAnalog::GoAnalog_CurrentLimitMax
k64f GoAnalog_CurrentLimitMax(GoAnalog analog)
Gets the maximum valid value for CurrentMin, CurrentMax and CurrentInvalid settings.
GoAnalog::GoAnalog_SetCurrentMin
kStatus GoAnalog_SetCurrentMin(GoAnalog analog, k64f min)
Sets the minimum current output level.
GoAnalog::GoAnalog_SetDataScaleMin
kStatus GoAnalog_SetDataScaleMin(GoAnalog analog, k64f min)
Sets the measurement value associated with the minimum output current value.
GoAnalog::GoAnalog_EnableSchedule
kStatus GoAnalog_EnableSchedule(GoAnalog analog, kBool enabled)
Enables or disables the scheduler for this output.
GoAnalog::GoAnalog_CurrentMinLimitMin
k64f GoAnalog_CurrentMinLimitMin(GoAnalog analog)
Gets the minimum allowable current output level to be set for the minimum current.
GoAnalog::GoAnalog_Delay
k64s GoAnalog_Delay(GoAnalog analog)
Gets the output delay.
kSize
GoAnalog::GoAnalog_CurrentInvalid
k64f GoAnalog_CurrentInvalid(GoAnalog analog)
Gets the current output level associated with an invalid measurement.
GoAnalog::GoAnalog_SetCurrentInvalid
kStatus GoAnalog_SetCurrentInvalid(GoAnalog analog, k64f invalid)
Sets the current output level associated with an invalid measurement.
GoAnalog::GoAnalog_CurrentInvalidEnabled
kBool GoAnalog_CurrentInvalidEnabled(GoAnalog analog)
Gets the status of the invalid current enabled option.
GoAnalog::GoAnalog_CurrentMinLimitMax
k64f GoAnalog_CurrentMinLimitMax(GoAnalog analog)
Gets the maximum allowable current output level to be set for the minimum current.
GoAnalog::GoAnalog_OptionAt
k32u GoAnalog_OptionAt(GoAnalog analog, kSize index)
Gets the measurement value source option at the specified index.
GoAnalog::GoAnalog_ClearSource
kStatus GoAnalog_ClearSource(GoAnalog analog)
Clears the currently selected source identifier.
GoAnalog::GoAnalog_ScheduleEnabled
kBool GoAnalog_ScheduleEnabled(GoAnalog analog)
Gets the enabled state of the scheduler for this output.
GoSdkDef.h
Essential SDK declarations.
GoAnalog::GoAnalog_DataScaleMin
k64f GoAnalog_DataScaleMin(GoAnalog analog)
Gets the measurement value associated with the minimum output current value.
GoAnalog::GoAnalog_CurrentMax
k64f GoAnalog_CurrentMax(GoAnalog analog)
Gets the maximum current output level.
GoAnalog::GoAnalog_CurrentLimitMin
k64f GoAnalog_CurrentLimitMin(GoAnalog analog)
Gets the minimum valid value for CurrentMin, CurrentMax and CurrentInvalid settings.
GoAnalog::GoAnalog_CurrentInvalidLimitMax
k64f GoAnalog_CurrentInvalidLimitMax(GoAnalog analog)
Gets the maximum allowable current output level to be set for the invalid value current.
GoAnalog::GoAnalog_CurrentInvalidLimitMin
k64f GoAnalog_CurrentInvalidLimitMin(GoAnalog analog)
Gets the minimum allowable current output level to be set for the invalid value current.
k64s
GoAnalog::GoAnalog_Event
GoAnalogEvent GoAnalog_Event(GoAnalog analog)
Gets the event which triggers this output to fire.
GoAnalog::GoAnalog_SetSource
kStatus GoAnalog_SetSource(GoAnalog analog, k32u sourceId)
Selects a source type and source identifier for output.
GoAnalogEvent
Represents a analog output event.
GoAnalog::GoAnalog_OptionCount
kSize GoAnalog_OptionCount(GoAnalog analog)
Gets the number of measurement value source options.
GoAnalog::GoAnalog_SetDelay
kStatus GoAnalog_SetDelay(GoAnalog analog, k64s delay)
Sets the delay from exposure until output is triggered, in units based on GoDomain mm when GoDomain i...
GoAnalog::GoAnalog_SetEvent
kStatus GoAnalog_SetEvent(GoAnalog analog, GoAnalogEvent event)
Set the event which triggers this output to fire.
kObject
kStatus
GoAnalog::GoAnalog_DataScaleMax
k64f GoAnalog_DataScaleMax(GoAnalog analog)
Gets the measurement value associated with the maximum output current value.
GoAnalog::GoAnalog_DelayDomain
GoOutputDelayDomain GoAnalog_DelayDomain(GoAnalog analog)
Gets the output delay domain.
GoAnalog::GoAnalog_CurrentMin
k64f GoAnalog_CurrentMin(GoAnalog analog)
Gets the minimum current output level.
GoAnalog::GoAnalog_SetCurrentMax
kStatus GoAnalog_SetCurrentMax(GoAnalog analog, k64f max)
Sets the maximum current output level.
k64f
GoAnalog::GoAnalog_SetDataScaleMax
kStatus GoAnalog_SetDataScaleMax(GoAnalog analog, k64f max)
Sets the measurement value associated with the maximum output current value.
kBool
GoAnalog::GoAnalog_CurrentMaxLimitMax
k64f GoAnalog_CurrentMaxLimitMax(GoAnalog analog)
Gets the maximum allowable current output level to be set for the maximum current.
GoAnalog
Represents Analog output settings.
GoAnalog::GoAnalog_CurrentMaxLimitMin
k64f GoAnalog_CurrentMaxLimitMin(GoAnalog analog)
Gets the minimum allowable current output level to be set for the maximum current.