Gocator API

- Home
- Types
- Files

All Classes Files Functions Variables Typedefs Macros Modules Pages
GoSensor.h
Go to the documentation of this file.
1 /**
2 * @file GoSensor.h
3 * @brief Declares the GoSensor class.
4 *
5 * @internal
6 * Copyright (C) 2015 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 #ifndef GO_SENSOR_H
11 #define GO_SENSOR_H
12
13 #include <GoSdk/GoSdkDef.h>
14 #include <GoSdk/GoSetup.h>
15 #include <GoSdk/GoPartModel.h>
16 #include <GoSdk/GoTransform.h>
17 #include <GoSdk/GoSensorInfo.h>
18 #include <GoSdk/Messages/GoDataSet.h>
19 #include <GoSdk/Outputs/GoOutput.h>
20 #include <GoSdk/Tools/GoTools.h>
21
22 kBeginHeader()
23
24 #define GO_SENSOR_LIVE_JOB_NAME "_live.job" //<<< Represents the active live job on the sensor
25 #define GO_SENSOR_LIVE_LOG_NAME "_live.log" //<<< Represents the log file on the sensor
26
27 /**
28 * @class GoSensor
29 * @extends kObject
30 * @ingroup GoSdk
31 * @brief Represents a Gocator sensor.
32 */
33 typedef kObject GoSensor;
34
35 /**
36 * Initiates a sensor configuration, model file, and transformation synchronization
37 * if modifications are present.
38 *
39 * @public @memberof GoSetup
40 * @version Introduced in firmware 4.0.10.27
41 * @param sensor GoSensor object.
42 * @return Operation status.
43 */
44 GoFx(kStatus) GoSensor_Flush(GoSensor sensor);
45
46 /**
47 * Configures a sensor's network address settings.
48 *
49 * This function uses UDP broadcasts for sensor configuration; the sensor does not need to
50 * be connected, and can be on a different subnet than the client.
51 *
52 * The sensor will automatically reboot if the address is successfully changed.
53 *
54 * @public @memberof GoSensor
55 * @version Introduced in firmware 4.0.10.27
56 * @param sensor GoSensor object.
57 * @param info New address settings.
58 * @param wait Should this function block until the sensor finishes rebooting?
59 * @return Operation status.
60 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
61 */
62 GoFx(kStatus) GoSensor_SetAddress(GoSensor sensor, const GoAddressInfo* info, kBool wait);
63
64 /**
65 * Retrieves the sensor's network address settings.
66 *
67 * @public @memberof GoSensor
68 * @version Introduced in firmware 4.0.10.27
69 * @param sensor GoSensor object.
70 * @param info Receives current address configuration.
71 * @return Operation status.
72 */
73 GoFx(kStatus) GoSensor_Address(GoSensor sensor, GoAddressInfo* info);
74
75 /**
76 * Creates a connection to the sensor.
77 *
78 * @public @memberof GoSensor
79 * @version Introduced in firmware 4.0.10.27
80 * @param sensor GoSensor object.
81 * @return Operation status.
82 */
83 GoFx(kStatus) GoSensor_Connect(GoSensor sensor);
84
85 /**
86 * Disconnects from the sensor.
87 *
88 * @public @memberof GoSensor
89 * @version Introduced in firmware 4.0.10.27
90 * @param sensor GoSensor object.
91 * @return Operation status.
92 */
93 GoFx(kStatus) GoSensor_Disconnect(GoSensor sensor);
94
95 /**
96 * Reports whether the the sensor is currently connected.
97 *
98 * @public @memberof GoSensor
99 * @version Introduced in firmware 4.0.10.27
100 * @param sensor GoSensor object.
101 * @return kTRUE if the sensor is connected; kFALSE otherwise.
102 */
103 GoFx(kBool) GoSensor_IsConnected(GoSensor sensor);
104
105 /**
106 * Refreshes sensor state.
107 *
108 * Unresponsive sensors will be disconnected, and canceled sensors will be reconnected.
109 * Sensors in any other state will discard all locally-cached information.
110 *
111 * This function should be used to update sensors in the GO_SENSOR_INCONSISTENT state. This
112 * state can arise due to buddy changes performed by remote sensors (e.g. a main sensor boots
113 * and claims ownership of a buddy sensor, but the buddy sensor has already been detected and
114 * loaded as a main sensor by the client).
115 *
116 * @public @memberof GoSensor
117 * @version Introduced in firmware 4.0.10.27
118 * @param sensor GoSensor object.
119 * @return kTRUE if the sensor is connected; kFALSE otherwise.
120 */
121 GoFx(kStatus) GoSensor_Refresh(GoSensor sensor);
122
123 /**
124 * Assigns a buddy sensor.
125 *
126 * NOTE: The provided buddy sensor handle must already be connected.
127 *
128 * @public @memberof GoSensor
129 * @version Introduced in firmware 4.0.10.27
130 * @param sensor GoSensor object.
131 * @param buddy Sensor to be assigned as buddy.
132 * @return Operation status.
133 * @see GoSensor_Connect, GoSensor_HasBuddy, GoSensor_BuddyId, GoSensor_RemoveBuddy
134 */
135 GoFx(kStatus) GoSensor_AddBuddy(GoSensor sensor, GoSensor buddy);
136
137 /**
138 * Removes the current buddy sensor.
139 *
140 * @public @memberof GoSensor
141 * @version Introduced in firmware 4.0.10.27
142 * @param sensor GoSensor object.
143 * @return Operation status.
144 */
145 GoFx(kStatus) GoSensor_RemoveBuddy(GoSensor sensor);
146
147 /**
148 * Reports whether a buddy had been assigned.
149 *
150 * @public @memberof GoSensor
151 * @version Introduced in firmware 4.0.10.27
152 * @param sensor GoSensor object.
153 * @return kTRUE if sensor has a buddy; kFALSE otherwise.
154 */
155 GoFx(kBool) GoSensor_HasBuddy(GoSensor sensor);
156
157 /**
158 * Gets the buddy sensor.
159 *
160 * @public @memberof GoSensor
161 * @version Introduced in firmware 4.0.10.27
162 * @param sensor GoSensor object.
163 * @return Buddy sensor (or kNULL if not assigned or not online).
164 */
165 GoFx(GoSensor) GoSensor_Buddy(GoSensor sensor);
166
167 /**
168 * Gets the buddy sensor's device ID.
169 *
170 * @public @memberof GoSensor
171 * @version Introduced in firmware 4.0.10.27
172 * @param sensor GoSensor object.
173 * @return Buddy device ID (or k32U_NULL if not assigned).
174 */
175 GoFx(k32u) GoSensor_BuddyId(GoSensor sensor);
176
177 /**
178 * Gets the sensor's scan mode.
179 *
180 * @public @memberof GoSensor
181 * @version Introduced in firmware 4.0.10.27
182 * @param sensor GoSensor object.
183 * @return Scan mode.
184 */
185 GoFx(GoMode) GoSensor_ScanMode(GoSensor sensor);
186
187 /**
188 * Enables or disables the sensor's data channel.
189 *
190 * @public @memberof GoSensor
191 * @version Introduced in firmware 4.0.10.27
192 * @param sensor GoSensor object.
193 * @param enable kTRUE to enable, or kFALSE to disable.
194 * @return Operation status.
195 */
196 GoFx(kStatus) GoSensor_EnableData(GoSensor sensor, kBool enable);
197
198 /**
199 * Starts the sensor.
200 *
201 * @public @memberof GoSensor
202 * @version Introduced in firmware 4.0.10.27
203 * @param sensor GoSensor object.
204 * @return Operation status.
205 */
206 GoFx(kStatus) GoSensor_Start(GoSensor sensor);
207
208 /**
209 * Starts the sensor at a scheduled value relating to the current time or encoder value as reported by the sensor.
210 *
211 * @public @memberof GoSensor
212 * @version Introduced in firmware 4.1.3.106
213 * @param sensor GoSensor object.
214 * @param value Scheduled start value. uS when time triggered and ticks when encoder triggered.
215 * @return Operation status.
216 * @see GoSetup_SetTriggerSource, GoSetup_TriggerSource, GoSystem_Timestamp, GoSystem_Encoder
217 */
218 GoFx(kStatus) GoSensor_ScheduledStart(GoSensor sensor, k64s value);
219
220 /**
221 * Stops the sensor.
222 *
223 * @public @memberof GoSensor
224 * @version Introduced in firmware 4.0.10.27
225 * @param sensor GoSensor object.
226 * @return Operation status.
227 */
228 GoFx(kStatus) GoSensor_Stop(GoSensor sensor);
229
230 /**
231 * Perform alignment using the configured alignment type and target.
232 *
233 * NOTE: This operation will result in a sensor start for the duration of the
234 * alignment. It can be canceled via GoSensor_Stop. This function's operation
235 * status does not correspond to the actual alignment result. In order to
236 * retrieve the alignment result, you must enable the data channel before calling
237 * this function, receive an alignment data message and then check its status.
238 *
239 * @public @memberof GoSensor
240 * @version Introduced in firmware 4.0.10.27
241 * @param sensor GoSensor object.
242 * @return Operation status.
243 * @see GoSensor_EnableData, GoSystem_ReceiveData, GoSetup_AlignmentType, GoSetup_AlignmentMovingTarget, GoSetup_AlignmentStationaryTarget, GoAlignMsg_Status, GoSensor_Stop
244 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
245 */
246 GoFx(kStatus) GoSensor_Align(GoSensor sensor);
247
248
249 /**
250 * Clears the current sensor alignment.
251 *
252 * @public @memberof GoSensor
253 * @version Introduced in firmware 4.1.3.106
254 * @param sensor GoSensor object.
255 * @return Operation status.
256 * @see GoSensor_Align
257 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
258 */
259 GoFx(kStatus) GoSensor_ClearAlignment(GoSensor sensor);
260
261
262 /**
263 * Perform an exposure auto set.
264 *
265 * NOTE: This operation will result in a sensor start for the duration of the
266 * exposure AutoSet. A successful operation status does NOT modify the configuration.
267 * You must retrieve the resulting exposure value and set it for the appropriate
268 * exposure setting. This involves enabling the data connection prior to running
269 * exposure auto set and then receiving an exposure auto set message, which
270 * you can then use to query the status and access the resulting value.
271 *
272 * @public @memberof GoSensor
273 * @version Introduced in firmware 4.0.10.27
274 * @param sensor GoSensor object.
275 * @param role The role of the device to auto set.
276 * @return Operation status.
277 * @see GoRole, GoSensor_EnableData, GoSystem_ReceiveData, GoExposureCalMsg_Status, GoExposureCalMsg_Exposure
278 */
279 GoFx(kStatus) GoSensor_ExposureAutoSet(GoSensor sensor, GoRole role);
280
281 /**
282 * Gets the alignment state of the sensor.
283 *
284 * @public @memberof GoSensor
285 * @version Introduced in firmware 4.0.10.27
286 * @param sensor GoSensor object.
287 * @return A GoAlignmentState.
288 */
289 GoFx(GoAlignmentState) GoSensor_AlignmentState(GoSensor sensor);
290
291
292 /**
293 * Sets the alignment reference of the sensor.
294 *
295 * @public @memberof GoSensor
296 * @version Introduced in firmware 4.0.10.27
297 * @param sensor GoSensor object.
298 * @param reference The alignment reference value to set.
299 * @return Operation status.
300 */
301 GoFx(kStatus) GoSensor_SetAlignmentReference(GoSensor sensor, GoAlignmentRef reference);
302
303 /**
304 * Gets the alignment reference of the sensor.
305 *
306 * @public @memberof GoSensor
307 * @version Introduced in firmware 4.0.10.27
308 * @param sensor GoSensor object.
309 * @param reference A pointer that will hold the current alignment reference value.
310 * @return Operation status.
311 */
312 GoFx(kStatus) GoSensor_AlignmentReference(GoSensor sensor, GoAlignmentRef* reference);
313
314 /**
315 * Reboots the main sensor and any connected buddy sensors.
316 *
317 * @public @memberof GoSensor
318 * @version Introduced in firmware 4.0.10.27
319 * @param sensor GoSensor object.
320 * @param wait kTRUE to wait for reboot and then reconnect.
321 * @return Operation status.
322 */
323 GoFx(kStatus) GoSensor_Reset(GoSensor sensor, kBool wait);
324
325 /**
326 * Aborts ongoing sensor communication.
327 *
328 * This method asynchronously aborts ongoing communication; the next time that any
329 * I/O operation blocks for an extended period of time, it will be terminated. This method
330 * is thread-safe.
331 *
332 * In order to resume communication, call GoSensor_Refresh or GoSensor_Connect.
333 *
334 * @public @memberof GoSensor
335 * @version Introduced in firmware 4.0.10.27
336 * @param sensor GoSensor object.
337 * @return Operation status.
338 */
339 GoFx(kStatus) GoSensor_Cancel(GoSensor sensor);
340
341 /**
342 * Gets the current time stamp (common among all synchronized sensors).
343 *
344 * @public @memberof GoSensor
345 * @version Introduced in firmware 4.0.10.27
346 * @param sensor GoSensor object.
347 * @param time Receives the current time stamp(us).
348 * @return Operation status.
349 */
350 GoFx(kStatus) GoSensor_Timestamp(GoSensor sensor, k64u* time);
351
352 /**
353 * Gets the current encoder count.
354 *
355 * @public @memberof GoSensor
356 * @version Introduced in firmware 4.0.10.27
357 * @param sensor GoSensor object.
358 * @param encoder Receives the encoder count (ticks).
359 * @return Operation status.
360 */
361 GoFx(kStatus) GoSensor_Encoder(GoSensor sensor, k64s* encoder);
362
363 /**
364 * Sends a software trigger to the sensor.
365 *
366 * This method is used in conjunction with sensors that are configured to accept
367 * software triggers.
368 *
369 * @public @memberof GoSensor
370 * @version Introduced in firmware 4.0.10.27
371 * @param sensor GoSensor object.
372 * @return Operation status.
373 * @see GoSetup_TriggerSource, GoSetup_SetTriggerSource
374 */
375 GoFx(kStatus) GoSensor_Trigger(GoSensor sensor);
376
377 /**
378 * Schedules a digital output.
379 *
380 * This method requires that the output is configured to trigger on software control.
381 *
382 * @public @memberof GoSensor
383 * @version Introduced in firmware 4.0.10.27
384 * @param sensor GoSensor object.
385 * @param index The digital output index.
386 * @param target The time or position target (us or mm), depending on GoDomain. Ignored if
387 * GoDigital_ScheduleEnabled is false or GoDigital_SignalType is pulsed.
388 * @param value The value of scheduled output (0-Low or 1-High). Ignored if output
389 * GoDigital_SignalType is pulsed.
390 * @return Operation status.
391 */
392 GoFx(kStatus) GoSensor_EmitDigital(GoSensor sensor, k16u index, k64s target, k8u value);
393
394 /**
395 * Schedules an analog output.
396 *
397 * This method requires that the output be configured to trigger on software control.
398 * NOTE: It is not possible to schedule a continuous output. The operation will
399 * fail accordingly if attempted.
400 *
401 * @public @memberof GoSensor
402 * @version Introduced in firmware 4.0.10.27
403 * @param sensor GoSensor object.
404 * @param index The analog output index.
405 * @param target The time or position target (us or mm), depending on GoDomain. Ignored if
406 * GoAnalog_ScheduleEnabled is false.
407 * @param value The value of the scheduled output (mA).
408 * @return Operation status.
409 */
410 GoFx(kStatus) GoSensor_EmitAnalog(GoSensor sensor, k16u index, k64s target, k32s value);
411
412 /**
413 * Gets the number of files available from the connected sensor.
414 *
415 * @public @memberof GoSensor
416 * @version Introduced in firmware 4.0.10.27
417 * @param sensor GoSensor object.
418 * @return File count.
419 */
420 GoFx(kSize) GoSensor_FileCount(GoSensor sensor);
421
422 /**
423 * Gets the file name at the specified index.
424 *
425 * @public @memberof GoSensor
426 * @version Introduced in firmware 4.0.10.27
427 * @param sensor GoSensor object.
428 * @param index Index of the desired file name.
429 * @param name Receives the name of the file.
430 * @param capacity Capacity of the file name buffer.
431 * @return Operation status.
432 */
433 GoFx(kStatus) GoSensor_FileNameAt(GoSensor sensor, kSize index, kChar* name, kSize capacity);
434
435 /**
436 * Uploads a file to the connected sensor.
437 *
438 * @public @memberof GoSensor
439 * @version Introduced in firmware 4.0.10.27
440 * @param sensor GoSensor object.
441 * @param sourcePath Source file system path for the file to be uploaded.
442 * @param destName Destination name for the uploaded file (maximum 63 characters).
443 * @return Operation status.
444 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
445 */
446 GoFx(kStatus) GoSensor_UploadFile(GoSensor sensor, const kChar* sourcePath, const kChar* destName);
447
448 /**
449 * Downloads a file from the connected sensor.
450 *
451 * @public @memberof GoSensor
452 * @version Introduced in firmware 4.0.10.27
453 * @param sensor GoSensor object.
454 * @param sourceName Source name of the file to be downloaded.
455 * @param destPath Destination file system path for the file to be downloaded.
456 * @return Operation status.
457 */
458 GoFx(kStatus) GoSensor_DownloadFile(GoSensor sensor, const kChar* sourceName, const kChar* destPath);
459
460 /**
461 * Copies a file within the connected sensor.
462 *
463 * @public @memberof GoSensor
464 * @version Introduced in firmware 4.0.10.27
465 * @param sensor GoSensor object.
466 * @param sourceName Source name for the file to be copied.
467 * @param destName Destination name for the file (maximum 63 characters).
468 * @return Operation status.
469 * @remark Calling this function can result in writing operations to flash storage if the destination is not a live file(e.g. "_live.job"). Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
470 */
471 GoFx(kStatus) GoSensor_CopyFile(GoSensor sensor, const kChar* sourceName, const kChar* destName);
472
473 /**
474 * Deletes a file within the connected sensor.
475 *
476 * @public @memberof GoSensor
477 * @version Introduced in firmware 4.0.10.27
478 * @param sensor GoSensor object.
479 * @param name Name of the file to be deleted.
480 * @return Operation status.
481 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
482 */
483 GoFx(kStatus) GoSensor_DeleteFile(GoSensor sensor, const kChar* name);
484
485 /**
486 * Checks whether the specified file is present on the sensor.
487 *
488 * @public @memberof GoSensor
489 * @version Introduced in firmware 4.0.10.27
490 * @param sensor GoSensor object.
491 * @param name Name of the file to be checked.
492 * @return Operation status.
493 */
494 GoFx(kBool) GoSensor_FileExists(GoSensor sensor, const kChar* name);
495
496 /**
497 * Sets a default job file to be loaded on boot.
498 *
499 * @public @memberof GoSensor
500 * @version Introduced in firmware 4.0.10.27
501 * @param sensor GoSensor object.
502 * @param fileName Name of the default file.
503 * @return Operation status.
504 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
505 */
506 GoFx(kStatus) GoSensor_SetDefaultJob(GoSensor sensor, const kChar* fileName);
507
508 /**
509 * Gets the name of the default job file to be loaded on boot.
510 *
511 * @public @memberof GoSensor
512 * @version Introduced in firmware 4.0.10.27
513 * @param sensor GoSensor object.
514 * @param fileName Receives name of the default file.
515 * @param capacity Name buffer capacity.
516 * @return Operation status.
517 */
518 GoFx(kStatus) GoSensor_DefaultJob(GoSensor sensor, kChar* fileName, kSize capacity);
519
520 /**
521 * Gets the name of the loaded job file and whether it has been modified since loading.
522 *
523 * @public @memberof GoSensor
524 * @version Introduced in firmware 4.0.10.27
525 * @param sensor GoSensor object.
526 * @param fileName Receives name of the loaded file.
527 * @param capacity Name buffer capacity.
528 * @param changed Receives the status of whether the file has changed.
529 * @return Operation status.
530 */
531 GoFx(kStatus) GoSensor_LoadedJob(GoSensor sensor, kChar* fileName, kSize capacity, kBool* changed);
532
533 /**
534 * Logs into the sensor using the specified user name and password.
535 *
536 * Logging in is not required in order to programmatically control a sensor. The Gocator log-in feature is
537 * intended only to support administrative user interfaces, by allowing the username and password to be
538 * stored in the sensor.
539 *
540 * @public @memberof GoSensor
541 * @version Introduced in firmware 4.0.10.27
542 * @param sensor GoSensor object.
543 * @param user User account.
544 * @param password User password.
545 * @return Operation status.
546 */
547 GoFx(kStatus) GoSensor_LogIn(GoSensor sensor, GoUser user, const kChar* password);
548
549 /**
550 * Changes the password associated with the specified user account.
551 *
552 * @public @memberof GoSensor
553 * @version Introduced in firmware 4.0.10.27
554 * @param sensor GoSensor object.
555 * @param user User account.
556 * @param password New password.
557 * @return Operation status.
558 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
559 */
560 GoFx(kStatus) GoSensor_ChangePassword(GoSensor sensor, GoUser user, const kChar* password);
561
562 /**
563 * Upgrades sensor firmware.
564 *
565 * This function will block until the upgrade is completed. For sensors
566 * upgrading from a 4.X firmware, an automatic reboot is required in order
567 * for the upgrade to take effect. Otherwise, a manual reboot must be called.
568 *
569 * @public @memberof GoSensor
570 * @version Introduced in firmware 4.0.10.27
571 * @param sensor GoSensor object.
572 * @param sourcePath Local file system path to the upgrade file.
573 * @param onUpdate Callback function to receive progress updates, or kNULL.
574 * @param context Context handle to be passed to the upgrade callback.
575 * @return Operation status.
576 * @see GoSensor_Reset
577 * @remark Calling this function will result in writing
578 * operations to flash storage. Should the process
579 * be disrupted due to power loss or other factors,
580 * the sensor may enter Rescue mode.
581 */
582 GoFx(kStatus) GoSensor_Upgrade(GoSensor sensor, const kChar* sourcePath, GoUpgradeFx onUpdate, kPointer context);
583
584 /**
585 * Creates a backup of sensor files and downloads the backup to the specified location.
586 *
587 * @public @memberof GoSensor
588 * @version Introduced in firmware 4.0.10.27
589 * @param sensor GoSensor object.
590 * @param destPath Local file system path for the saved backup file.
591 * @return Operation status.
592 */
593 GoFx(kStatus) GoSensor_Backup(GoSensor sensor, const kChar* destPath);
594
595 /**
596 * Restores a backup of sensor files.
597 *
598 * @public @memberof GoSensor
599 * @version Introduced in firmware 4.0.10.27
600 * @param sensor GoSensor object.
601 * @param sourcePath Local file system path of the saved backup file.
602 * @return Operation status.
603 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
604 */
605 GoFx(kStatus) GoSensor_Restore(GoSensor sensor, const kChar* sourcePath);
606
607 /**
608 * Restores factory default settings.
609 *
610 * @public @memberof GoSensor
611 * @version Introduced in firmware 4.0.10.27
612 * @param sensor GoSensor object.
613 * @param restoreAddress kTRUE to restore the factory default IP address; False otherwise.
614 * @return Operation status.
615 * @remark Calling this function will result in writing operations to flash storage. Should the process be disrupted due to power loss or other factors, the sensor may enter Rescue mode.
616 */
617 GoFx(kStatus) GoSensor_RestoreDefaults(GoSensor sensor, kBool restoreAddress);
618
619 /**
620 * Gets the GoSetup instance associated with the sensor.
621 *
622 * @public @memberof GoSensor
623 * @version Introduced in firmware 4.0.10.27
624 * @param sensor GoSensor object.
625 * @return A GoSetup object module
626 */
627 GoFx(GoSetup) GoSensor_Setup(GoSensor sensor);
628
629 /**
630 * Gets the sensor's tools module, used for measurement configuration.
631 *
632 * @public @memberof GoSensor
633 * @version Introduced in firmware 4.0.10.27
634 * @param sensor GoSensor object.
635 * @return Measurement configuration module.
636 */
637 GoFx(GoTools) GoSensor_Tools(GoSensor sensor);
638
639 /**
640 * Gets the output module, used for output configuration.
641 *
642 * @public @memberof GoSensor
643 * @version Introduced in firmware 4.0.10.27
644 * @param sensor GoSensor object.
645 * @return Output configuration module.
646 */
647 GoFx(GoOutput) GoSensor_Output(GoSensor sensor);
648
649 /**
650 * Gets the transform module, used for transformation configuration.
651 *
652 * @public @memberof GoSensor
653 * @version Introduced in firmware 4.0.10.27
654 * @param sensor GoSensor object.
655 * @return Transformation configuration module.
656 */
657 GoFx(GoTransform) GoSensor_Transform(GoSensor sensor);
658
659 /**
660 * Gets the device identifier associated with this sensor.
661 *
662 * @public @memberof GoSensor
663 * @version Introduced in firmware 4.0.10.27
664 * @param sensor GoSensor object.
665 * @return The sensor's device ID.
666 */
667 GoFx(k32u) GoSensor_Id(GoSensor sensor);
668
669 /**
670 * Gets the model number associated with this sensor.
671 *
672 * @public @memberof GoSensor
673 * @version Introduced in firmware 4.0.10.27
674 * @param sensor GoSensor object.
675 * @param model Receives sensor model.
676 * @param capacity Capacity of model buffer.
677 * @return Model number.
678 */
679 GoFx(kStatus) GoSensor_Model(GoSensor sensor, kChar* model, kSize capacity);
680
681 /**
682 * Reports the current state of the sensor.
683 *
684 * @public @memberof GoSensor
685 * @version Introduced in firmware 4.0.10.27
686 * @param sensor GoSensor object.
687 * @return Sensor state.
688 */
689 GoFx(GoState) GoSensor_State(GoSensor sensor);
690
691 /**
692 * Reports the current states of the sensor.
693 *
694 * @public @memberof GoSensor
695 * @version Introduced in firmware 4.0.10.27
696 * @param sensor GoSensor object.
697 * @param states Reference to updated states.
698 * @return Operation status.
699 */
700 GoFx(kStatus) GoSensor_States(GoSensor sensor, GoStates* states);
701
702 /**
703 * Gets the sensor's current role within the system.
704 *
705 * @public @memberof GoSensor
706 * @version Introduced in firmware 4.0.10.27
707 * @param sensor GoSensor object.
708 * @return Sensor role.
709 */
710 GoFx(GoRole) GoSensor_Role(GoSensor sensor);
711
712 /**
713 * Reports the user account associated with the current user.
714 *
715 * @public @memberof GoSensor
716 * @version Introduced in firmware 4.0.10.27
717 * @param sensor GoSensor object.
718 * @return User account id.
719 */
720 GoFx(GoUser) GoSensor_User(GoSensor sensor);
721
722 /**
723 * Gets the sensor's protocol version.
724 *
725 * @public @memberof GoSensor
726 * @version Introduced in firmware 4.0.10.27
727 * @param sensor GoSensor object.
728 * @return Protocol version.
729 */
730 GoFx(kVersion) GoSensor_ProtocolVersion(GoSensor sensor);
731
732 /**
733 * Gets the sensor's firmware version.
734 *
735 * @public @memberof GoSensor
736 * @version Introduced in firmware 4.0.10.27
737 * @param sensor GoSensor object.
738 * @return Firmware version.
739 */
740 GoFx(kVersion) GoSensor_FirmwareVersion(GoSensor sensor);
741
742 /**
743 * Sets the recording state of the sensor.
744 *
745 * @public @memberof GoSensor
746 * @version Introduced in firmware 4.0.10.27
747 * @param sensor GoSensor object.
748 * @param enable Enables or disables recording.
749 * @return Operation status.
750 */
751 GoFx(kStatus) GoSensor_EnableRecording(GoSensor sensor, kBool enable);
752
753 /**
754 * Gets the recording state of the sensor.
755 *
756 * @public @memberof GoSensor
757 * @version Introduced in firmware 4.0.10.27
758 * @param sensor GoSensor object.
759 * @return kTRUE if recording is enabled. kFALSE otherwise.
760 */
761 GoFx(kBool) GoSensor_RecordingEnabled(GoSensor sensor);
762
763 /**
764 * Sets the input source of the sensor.
765 *
766 * @public @memberof GoSensor
767 * @version Introduced in firmware 4.0.10.27
768 * @param sensor GoSensor object.
769 * @param source The input source to use.
770 * @return Operation status.
771 */
772 GoFx(kStatus) GoSensor_SetInputSource(GoSensor sensor, GoInputSource source);
773
774 /**
775 * Gets the input source currently used by the sensor.
776 *
777 * @public @memberof GoSensor
778 * @version Introduced in firmware 4.0.10.27
779 * @param sensor GoSensor object.
780 * @return A GoInputSource.
781 */
782 GoFx(GoInputSource) GoSensor_InputSource(GoSensor sensor);
783
784 /**
785 * Simulates the current frame in the live recording buffer.
786 *
787 * @public @memberof GoSensor
788 * @version Introduced in firmware 4.0.10.27
789 * @param sensor GoSensor object.
790 * @param isBufferValid kTRUE if the source simulation buffer was valid. kFALSE otherwise.
791 * @return Operation status.
792 */
793 GoFx(kStatus) GoSensor_Simulate(GoSensor sensor, kBool* isBufferValid);
794
795
796 /**
797 * Advances one frame from the current replay position.
798 *
799 * @public @memberof GoSensor
800 * @version Introduced in firmware 4.0.10.27
801 * @param sensor GoSensor object.
802 * @param direction Direction with which to step.
803 * @return Operation status.
804 */
805 GoFx(kStatus) GoSensor_PlaybackStep(GoSensor sensor, GoSeekDirection direction);
806
807 /**
808 * Sets the current frame position for a replay.
809 *
810 * @public @memberof GoSensor
811 * @version Introduced in firmware 4.0.10.27
812 * @param sensor GoSensor object.
813 * @param position The frame position to seek.
814 * @return Operation status.
815 */
816 GoFx(kStatus) GoSensor_PlaybackSeek(GoSensor sensor, kSize position);
817
818 /**
819 * Gets the current replay frame position.
820 *
821 * @public @memberof GoSensor
822 * @version Introduced in firmware 4.0.10.27
823 * @param sensor GoSensor object.
824 * @param position The current frame position index.
825 * @param count The frame count.
826 * @return Operation status.
827 */
828 GoFx(kStatus) GoSensor_PlaybackPosition(GoSensor sensor, kSize* position, kSize* count);
829
830 /**
831 * Clears the replay buffer.
832 *
833 * @public @memberof GoSensor
834 * @version Introduced in firmware 4.0.10.27
835 * @param sensor GoSensor object.
836 * @return Operation status.
837 */
838 GoFx(kStatus) GoSensor_ClearReplayData(GoSensor sensor);
839
840 /**
841 * Resets the measurement statistics reported by the health channel
842 *
843 * @public @memberof GoSensor
844 * @version Introduced in firmware 4.0.10.27
845 * @param sensor GoSensor object.
846 * @return A GoAlignmentState.
847 */
848 GoFx(kStatus) GoSensor_ClearMeasurementStats(GoSensor sensor);
849
850 /**
851 * Exports the current frame of a replay in the form of a bitmap.
852 *
853 * @public @memberof GoSensor
854 * @version Introduced in firmware 4.0.10.27
855 * @param sensor GoSensor object.
856 * @param type The type of data to export.
857 * @param source The device data source to export from.
858 * @param dstFileName The destination file name of the exported bitmap file.
859 * @return Operation status.
860 */
861 GoFx(kStatus) GoSensor_ExportBitmap(GoSensor sensor,
862 GoReplayExportSourceType type,
863 GoDataSource source,
864 const kChar* dstFileName);
865
866 /**
867 * Exports replay data in CSV format.
868 *
869 * @public @memberof GoSensor
870 * @version Introduced in firmware 4.0.10.27
871 * @param sensor GoSensor object.
872 * @param dstFileName The destination file name of the exported CSV file.
873 * @return Operation status.
874 */
875 GoFx(kStatus) GoSensor_ExportCsv(GoSensor sensor, const kChar* dstFileName);
876
877 /**
878 * Returns an enumerator value representing the current sensor's family.
879 *
880 * @public @memberof GoSensor
881 * @version Introduced in firmware 4.0.10.27
882 * @param sensor GoSensor object.
883 * @return A GoFamily value.
884 */
885 GoFx(GoFamily) GoSensor_Family(GoSensor sensor);
886
887 /**
888 * Clears the log file (_live.log).
889 *
890 * @public @memberof GoSensor
891 * @version Introduced in firmware 4.0.10.27
892 * @param sensor GoSensor object.
893 * @return Operation status.
894 */
895 GoFx(kStatus) GoSensor_ClearLog(GoSensor sensor);
896
897 /**
898 * Sets the AutoStart enabled state of the sensor.
899 *
900 * @public @memberof GoSensor
901 * @version Introduced in firmware 4.0.10.27
902 * @param sensor GoSensor object.
903 * @param enable The AutoStart enabled state to use.
904 * @return Operation status.
905 */
906 GoFx(kStatus) GoSensor_EnableAutoStart(GoSensor sensor, kBool enable);
907
908 /**
909 * Gets the AutoStart enabled state currently used by the sensor.
910 *
911 * @public @memberof GoSensor
912 * @version Introduced in firmware 4.0.10.27
913 * @param sensor GoSensor object.
914 * @return kTRUE if auto start is enabled and kFALSE otherwise.
915 */
916 GoFx(kBool) GoSensor_AutoStartEnabled(GoSensor sensor);
917
918 /**
919 * Gets the count of remote sensor information held by the sensor.
920 *
921 * @public @memberof GoSensor
922 * @version Introduced in firmware 4.0.10.27
923 * @param sensor GoSensor object.
924 * @return The remote sensor information count.
925 */
926 GoFx(kSize) GoSensor_RemoteInfoCount(GoSensor sensor);
927
928 /**
929 * Gets the remote sensor information at the given index.
930 *
931 * @public @memberof GoSensor
932 * @version Introduced in firmware 4.0.10.27
933 * @param sensor GoSensor object.
934 * @param index The index of the remote sensor information to retrieve.
935 * @return A handle to the selected remote sensor information or kNULL if an invalid index is provided.
936 */
937 GoFx(GoSensorInfo) GoSensor_RemoteInfoAt(GoSensor sensor, kSize index);
938
939 /**
940 * Return the number of files contained in the specified path with an optional extension filter applied.
941 *
942 * @public @memberof GoSensor
943 * @version Introduced in firmware 4.1.3.106
944 * @param sensor GoSensor object.
945 * @param extensionFilter An optional extension filter to apply. Send "" to not apply a filter.
946 * @param path The file system path to retrieve the file count for.
947 * @param isRecursive kTRUE to include files in sub-folders of the path and kFALSE to only count files in the immediate path.
948 * @return The number of files contained in the specified path with an optional extension filter applied.
949 */
950 GoFx(kSize) GoSensor_DirectoryFileCount(GoSensor sensor, const kChar* extensionFilter, const kChar* path, kBool isRecursive);
951
952 /**
953 * Retrievesthe file name at the specified index for a given path and optional extension filter.
954 *
955 * @public @memberof GoSensor
956 * @version Introduced in firmware 4.1.3.106
957 * @param sensor GoSensor object.
958 * @param extensionFilter An optional extension filter to apply. Send "" to not apply a filter.
959 * @param path The file system path to retrieve the file count for.
960 * @param isRecursive kTRUE to include files in sub-folders of the path and kFALSE to only count files in the immediate path.
961 * @param index The index of the file name to retrieve.
962 * @param fileName The pointer to a character array of which to store the retrieve file name.
963 * @param capacity The maximum capacity of the character array.
964 * @return Operation status.
965 */
966 GoFx(kStatus) GoSensor_DirectoryFileNameAt(GoSensor sensor, const kChar* extensionFilter, const kChar* path, kBool isRecursive, kSize index, kChar* fileName, kSize capacity);
967
968 /**
969 * Defines the signature for a custom data message handler.
970 *
971 * @public @memberof GoSensor
972 * @version Introduced in firmware 4.1.3.106
973 * @param context A pointer to an application context to use with the provided data set.
974 * @param sensor GoSensor object.
975 * @param dataSet The data set.
976 * @return Operation status.
977 * @see GoSensor_SetDataHandler
978 */
979 typedef kStatus (kCall* GoSensorDataSetFx)(kPointer context, GoSensor sensor, GoDataSet dataSet);
980
981 /**
982 * Sets the data callback function to be used upon receipt of data.
983 *
984 * @public @memberof GoSensor
985 * @version Introduced in firmware 4.1.3.106
986 * @param sensor GoSensor object.
987 * @param function The function pointer to use when data has been received from the sensor. Send kNULL to revert back to the GoSystem data set storage behavior.
988 * @param context The context to use with the function pointer.
989 * @return Operation status.
990 * @see GoSensorDataSetFx
991 */
992 GoFx(kStatus) GoSensor_SetDataHandler(GoSensor sensor, GoSensorDataSetFx function, kPointer context);
993
994
995 /**
996 * Creates a part matching model based on the current part data.
997 *
998 * @public @memberof GoSensor
999 * @version Introduced in firmware 4.2.4.7
1000 * @param sensor GoSensor object.
1001 * @param name The intended name of the part match model.
1002 * @return Operation status.
1003 */
1004 GoFx(kStatus) GoSensor_PartMatchCreateModel(GoSensor sensor, const kChar* name);
1005
1006 /**
1007 * Detect the edges of the specified part model.
1008 *
1009 * @public @memberof GoSensor
1010 * @version Introduced in firmware 4.2.4.7
1011 * @param sensor GoSensor object.
1012 * @param name The name of the part match model to detect edges on.
1013 * @param sensitivity The sensitivity to use for model edge detection.
1014 * @return Operation status.
1015 */
1016 GoFx(kStatus) GoSensor_PartMatchDetectModelEdges(GoSensor sensor, const kChar* name, k16u sensitivity);
1017
1018 /**
1019 * Returns a handle to a part model based on a given name.
1020 *
1021 * @public @memberof GoSensor
1022 * @version Introduced in firmware 4.2.4.7
1023 * @param sensor GoSensor object.
1024 * @param name The name of the part match model to retrieve.
1025 * @return A GoPartModel handle.
1026 */
1027 GoFx(GoPartModel) GoSensor_PartMatchModel(GoSensor sensor, const kChar* name);
1028
1029 /**
1030 * Returns the number of part match models present in the currently loaded job.
1031 *
1032 * @public @memberof GoSensor
1033 * @version Introduced in firmware 4.2.4.7
1034 * @param sensor GoSensor object.
1035 * @return The count of part match models in the currently loaded job.
1036 */
1037 GoFx(kSize) GoSensor_PartMatchModelCount(GoSensor sensor);
1038
1039 /**
1040 * Returns a handle to a part model based on a given index.
1041 *
1042 * @public @memberof GoSensor
1043 * @version Introduced in firmware 4.2.4.7
1044 * @param sensor GoSensor object.
1045 * @param index The index of the part model to retrieve.
1046 * @return A GoPartModel handle.
1047 */
1048 GoFx(GoPartModel) GoSensor_PartMatchModelAt(GoSensor sensor, kSize index);
1049
1050 kEndHeader()
1051 #include <GoSdk/GoSensor.x.h>
1052
1053 #endif
GoSensor::GoSensor_FirmwareVersion
kVersion GoSensor_FirmwareVersion(GoSensor sensor)
Gets the sensor's firmware version.
GoSensor::GoSensor_FileExists
kBool GoSensor_FileExists(GoSensor sensor, const kChar *name)
Checks whether the specified file is present on the sensor.
GoSensor::GoSensor_RestoreDefaults
kStatus GoSensor_RestoreDefaults(GoSensor sensor, kBool restoreAddress)
Restores factory default settings.
GoSensor::GoSensor_PlaybackPosition
kStatus GoSensor_PlaybackPosition(GoSensor sensor, kSize *position, kSize *count)
Gets the current replay frame position.
GoStates
Sensor state, login, alignment information, recording state, playback source, uptime, playback information, and auto-start setting state.
Definition: GoSdkDef.h:550
k32u
GoInputSource
Represents a data input source.
GoSensorInfo
Represents read-only sensor information.
GoPartModel
Represents a part model configuration.
GoSensor::GoSensor_ExportBitmap
kStatus GoSensor_ExportBitmap(GoSensor sensor, GoReplayExportSourceType type, GoDataSource source, const kChar *dstFileName)
Exports the current frame of a replay in the form of a bitmap.
GoSensor::GoSensor_SetAlignmentReference
kStatus GoSensor_SetAlignmentReference(GoSensor sensor, GoAlignmentRef reference)
Sets the alignment reference of the sensor.
GoSeekDirection
Represents a playback seek direction.
GoReplayExportSourceType
Represents the replay export source type.
GoSensor::GoSensorDataSetFx
kStatus(kCall * GoSensorDataSetFx)(kPointer context, GoSensor sensor, GoDataSet dataSet)
Defines the signature for a custom data message handler.
Definition: GoSensor.h:979
GoSensor::GoSensor_EnableAutoStart
kStatus GoSensor_EnableAutoStart(GoSensor sensor, kBool enable)
Sets the AutoStart enabled state of the sensor.
GoSensor::GoSensor_ClearReplayData
kStatus GoSensor_ClearReplayData(GoSensor sensor)
Clears the replay buffer.
k64u
GoSensor::GoSensor_Simulate
kStatus GoSensor_Simulate(GoSensor sensor, kBool *isBufferValid)
Simulates the current frame in the live recording buffer.
GoSensor::GoSensor_ClearLog
kStatus GoSensor_ClearLog(GoSensor sensor)
Clears the log file (_live.log).
kPointer
GoSensor::GoSensor_Backup
kStatus GoSensor_Backup(GoSensor sensor, const kChar *destPath)
Creates a backup of sensor files and downloads the backup to the specified location.
GoSensor::GoSensor_FileCount
kSize GoSensor_FileCount(GoSensor sensor)
Gets the number of files available from the connected sensor.
GoSensor::GoSensor_Trigger
kStatus GoSensor_Trigger(GoSensor sensor)
Sends a software trigger to the sensor.
GoFamily
Represents the supported Gocator hardware families.
k16u
GoRole
Represents a user role.
kSize
GoSensor::GoSensor_AlignmentState
GoAlignmentState GoSensor_AlignmentState(GoSensor sensor)
Gets the alignment state of the sensor.
GoOutput.h
Declares the GoOutput class.
GoSensor::GoSensor_Refresh
kStatus GoSensor_Refresh(GoSensor sensor)
Refreshes sensor state.
GoSensor::GoSensor_PartMatchCreateModel
kStatus GoSensor_PartMatchCreateModel(GoSensor sensor, const kChar *name)
Creates a part matching model based on the current part data.
GoSensor::GoSensor_ClearAlignment
kStatus GoSensor_ClearAlignment(GoSensor sensor)
Clears the current sensor alignment.
GoSensor::GoSensor_Restore
kStatus GoSensor_Restore(GoSensor sensor, const kChar *sourcePath)
Restores a backup of sensor files.
GoDataSource
Represents a data source.
k8u
GoSensor::GoSensor_PlaybackSeek
kStatus GoSensor_PlaybackSeek(GoSensor sensor, kSize position)
Sets the current frame position for a replay.
GoSensor::GoSensor_PartMatchModelAt
GoPartModel GoSensor_PartMatchModelAt(GoSensor sensor, kSize index)
Returns a handle to a part model based on a given index.
GoDataSet.h
Declares the GoDataSet class.
kChar
GoSensor::GoSensor_PlaybackStep
kStatus GoSensor_PlaybackStep(GoSensor sensor, GoSeekDirection direction)
Advances one frame from the current replay position.
GoSensorInfo.h
Declares the GoSensorInfo class.
GoSensor::GoSensor_UploadFile
kStatus GoSensor_UploadFile(GoSensor sensor, const kChar *sourcePath, const kChar *destName)
Uploads a file to the connected sensor.
GoAlignmentState
Represents an alignment state.
GoSensor::GoSensor_Address
kStatus GoSensor_Address(GoSensor sensor, GoAddressInfo *info)
Retrieves the sensor's network address settings.
GoSensor::GoSensor_LoadedJob
kStatus GoSensor_LoadedJob(GoSensor sensor, kChar *fileName, kSize capacity, kBool *changed)
Gets the name of the loaded job file and whether it has been modified since loading.
GoSensor::GoSensor_FileNameAt
kStatus GoSensor_FileNameAt(GoSensor sensor, kSize index, kChar *name, kSize capacity)
Gets the file name at the specified index.
GoSensor::GoSensor_DownloadFile
kStatus GoSensor_DownloadFile(GoSensor sensor, const kChar *sourceName, const kChar *destPath)
Downloads a file from the connected sensor.
GoOutput
Represents output configuration.
GoSensor::GoSensor_DefaultJob
kStatus GoSensor_DefaultJob(GoSensor sensor, kChar *fileName, kSize capacity)
Gets the name of the default job file to be loaded on boot.
GoSensor::GoSensor_SetDataHandler
kStatus GoSensor_SetDataHandler(GoSensor sensor, GoSensorDataSetFx function, kPointer context)
Sets the data callback function to be used upon receipt of data.
GoSdkDef.h
Essential SDK declarations.
GoSensor::GoSensor_DirectoryFileNameAt
kStatus GoSensor_DirectoryFileNameAt(GoSensor sensor, const kChar *extensionFilter, const kChar *path, kBool isRecursive, kSize index, kChar *fileName, kSize capacity)
Retrievesthe file name at the specified index for a given path and optional extension filter...
GoSensor::GoSensor_Buddy
GoSensor GoSensor_Buddy(GoSensor sensor)
Gets the buddy sensor.
GoSensor::GoSensor_Family
GoFamily GoSensor_Family(GoSensor sensor)
Returns an enumerator value representing the current sensor's family.
GoSensor::GoSensor_BuddyId
k32u GoSensor_BuddyId(GoSensor sensor)
Gets the buddy sensor's device ID.
GoSensor::GoSensor_EnableRecording
kStatus GoSensor_EnableRecording(GoSensor sensor, kBool enable)
Sets the recording state of the sensor.
GoSensor::GoSensor_InputSource
GoInputSource GoSensor_InputSource(GoSensor sensor)
Gets the input source currently used by the sensor.
GoSensor::GoSensor_PartMatchModel
GoPartModel GoSensor_PartMatchModel(GoSensor sensor, const kChar *name)
Returns a handle to a part model based on a given name.
GoSensor::GoSensor_LogIn
kStatus GoSensor_LogIn(GoSensor sensor, GoUser user, const kChar *password)
Logs into the sensor using the specified user name and password.
GoSensor::GoSensor_State
GoState GoSensor_State(GoSensor sensor)
Reports the current state of the sensor.
GoTransform.h
Declares the GoTransform class.
GoSensor::GoSensor_PartMatchDetectModelEdges
kStatus GoSensor_PartMatchDetectModelEdges(GoSensor sensor, const kChar *name, k16u sensitivity)
Detect the edges of the specified part model.
GoSensor::GoSensor_ExportCsv
kStatus GoSensor_ExportCsv(GoSensor sensor, const kChar *dstFileName)
Exports replay data in CSV format.
GoSetup::GoSensor_Flush
kStatus GoSensor_Flush(GoSensor sensor)
Initiates a sensor configuration, model file, and transformation synchronization if modifications are...
GoSensor::GoSensor_DeleteFile
kStatus GoSensor_DeleteFile(GoSensor sensor, const kChar *name)
Deletes a file within the connected sensor.
GoDataSet
Represents a collection of data channel or health channel messages.
GoSensor::GoSensor_Disconnect
kStatus GoSensor_Disconnect(GoSensor sensor)
Disconnects from the sensor.
GoSensor::GoSensor_Transform
GoTransform GoSensor_Transform(GoSensor sensor)
Gets the transform module, used for transformation configuration.
GoTools
Represents a collection of tools.
GoSensor::GoSensor_ExposureAutoSet
kStatus GoSensor_ExposureAutoSet(GoSensor sensor, GoRole role)
Perform an exposure auto set.
GoSensor::GoSensor_Setup
GoSetup GoSensor_Setup(GoSensor sensor)
Gets the GoSetup instance associated with the sensor.
GoPartModel.h
Declares the GoPartModel and GoPartModelEdge class.
GoSensor::GoSensor_Tools
GoTools GoSensor_Tools(GoSensor sensor)
Gets the sensor's tools module, used for measurement configuration.
GoSensor::GoSensor_Cancel
kStatus GoSensor_Cancel(GoSensor sensor)
Aborts ongoing sensor communication.
k32s
GoSensor::GoSensor_RemoveBuddy
kStatus GoSensor_RemoveBuddy(GoSensor sensor)
Removes the current buddy sensor.
GoSensor::GoSensor_ScanMode
GoMode GoSensor_ScanMode(GoSensor sensor)
Gets the sensor's scan mode.
GoUser
Represents a user id.
GoSensor::GoSensor_EmitAnalog
kStatus GoSensor_EmitAnalog(GoSensor sensor, k16u index, k64s target, k32s value)
Schedules an analog output.
GoSensor::GoSensor_AlignmentReference
kStatus GoSensor_AlignmentReference(GoSensor sensor, GoAlignmentRef *reference)
Gets the alignment reference of the sensor.
GoSensor::GoSensor_Model
kStatus GoSensor_Model(GoSensor sensor, kChar *model, kSize capacity)
Gets the model number associated with this sensor.
GoSensor::GoSensor_ClearMeasurementStats
kStatus GoSensor_ClearMeasurementStats(GoSensor sensor)
Resets the measurement statistics reported by the health channel.
GoAlignmentRef
Represents an alignment reference.
GoSensor::GoSensor_Start
kStatus GoSensor_Start(GoSensor sensor)
Starts the sensor.
k64s
GoSensor::GoSensor_Align
kStatus GoSensor_Align(GoSensor sensor)
Perform alignment using the configured alignment type and target.
GoSensor::GoSensor_User
GoUser GoSensor_User(GoSensor sensor)
Reports the user account associated with the current user.
GoSensor::GoSensor_Encoder
kStatus GoSensor_Encoder(GoSensor sensor, k64s *encoder)
Gets the current encoder count.
GoSensor::GoSensor_Id
k32u GoSensor_Id(GoSensor sensor)
Gets the device identifier associated with this sensor.
GoSensor::GoSensor_Connect
kStatus GoSensor_Connect(GoSensor sensor)
Creates a connection to the sensor.
GoSensor::GoSensor_Output
GoOutput GoSensor_Output(GoSensor sensor)
Gets the output module, used for output configuration.
GoTools.h
Declares the GoTool classes.
GoSensor::GoSensor_CopyFile
kStatus GoSensor_CopyFile(GoSensor sensor, const kChar *sourceName, const kChar *destName)
Copies a file within the connected sensor.
GoSensor::GoSensor_HasBuddy
kBool GoSensor_HasBuddy(GoSensor sensor)
Reports whether a buddy had been assigned.
GoSetup.h
Declares the GoSetup class.
GoSensor::GoSensor_AutoStartEnabled
kBool GoSensor_AutoStartEnabled(GoSensor sensor)
Gets the AutoStart enabled state currently used by the sensor.
kObject
GoMode
Represents a scan mode.
kVersion
GoSensor::GoSensor_Stop
kStatus GoSensor_Stop(GoSensor sensor)
Stops the sensor.
kStatus
GoSensor::GoSensor_SetDefaultJob
kStatus GoSensor_SetDefaultJob(GoSensor sensor, const kChar *fileName)
Sets a default job file to be loaded on boot.
GoSensor::GoSensor_RemoteInfoCount
kSize GoSensor_RemoteInfoCount(GoSensor sensor)
Gets the count of remote sensor information held by the sensor.
GoTransform
Represents a sensor transformation.
GoSensor::GoSensor_EnableData
kStatus GoSensor_EnableData(GoSensor sensor, kBool enable)
Enables or disables the sensor's data channel.
GoSensor::GoSensor_Upgrade
kStatus GoSensor_Upgrade(GoSensor sensor, const kChar *sourcePath, GoUpgradeFx onUpdate, kPointer context)
Upgrades sensor firmware.
GoSensor::GoSensor_DirectoryFileCount
kSize GoSensor_DirectoryFileCount(GoSensor sensor, const kChar *extensionFilter, const kChar *path, kBool isRecursive)
Return the number of files contained in the specified path with an optional extension filter applied...
GoSensor::GoSensor_SetAddress
kStatus GoSensor_SetAddress(GoSensor sensor, const GoAddressInfo *info, kBool wait)
Configures a sensor's network address settings.
GoSensor::GoSensor_ProtocolVersion
kVersion GoSensor_ProtocolVersion(GoSensor sensor)
Gets the sensor's protocol version.
GoSensor::GoSensor_Timestamp
kStatus GoSensor_Timestamp(GoSensor sensor, k64u *time)
Gets the current time stamp (common among all synchronized sensors).
GoSensor::GoSensor_States
kStatus GoSensor_States(GoSensor sensor, GoStates *states)
Reports the current states of the sensor.
GoSensor::GoSensor_RecordingEnabled
kBool GoSensor_RecordingEnabled(GoSensor sensor)
Gets the recording state of the sensor.
GoSensor::GoSensor_RemoteInfoAt
GoSensorInfo GoSensor_RemoteInfoAt(GoSensor sensor, kSize index)
Gets the remote sensor information at the given index.
GoSensor::GoSensor_AddBuddy
kStatus GoSensor_AddBuddy(GoSensor sensor, GoSensor buddy)
Assigns a buddy sensor.
kBool
GoSensor::GoSensor_EmitDigital
kStatus GoSensor_EmitDigital(GoSensor sensor, k16u index, k64s target, k8u value)
Schedules a digital output.
GoSensor::GoSensor_SetInputSource
kStatus GoSensor_SetInputSource(GoSensor sensor, GoInputSource source)
Sets the input source of the sensor.
GoSetup
Represents a device configuration.
GoSensor
Represents a Gocator sensor.
GoSensor::GoSensor_Reset
kStatus GoSensor_Reset(GoSensor sensor, kBool wait)
Reboots the main sensor and any connected buddy sensors.
GoSensor::GoSensor_ScheduledStart
kStatus GoSensor_ScheduledStart(GoSensor sensor, k64s value)
Starts the sensor at a scheduled value relating to the current time or encoder value as reported by t...
GoSensor::GoSensor_ChangePassword
kStatus GoSensor_ChangePassword(GoSensor sensor, GoUser user, const kChar *password)
Changes the password associated with the specified user account.
GoSensor::GoSensor_Role
GoRole GoSensor_Role(GoSensor sensor)
Gets the sensor's current role within the system.
GoAddressInfo
Sensor network address settings.
Definition: GoSdkDef.h:571
GoState
Represents the current state of a sensor object.
GoSensor::GoSensor_PartMatchModelCount
kSize GoSensor_PartMatchModelCount(GoSensor sensor)
Returns the number of part match models present in the currently loaded job.
GoSensor::GoSensor_IsConnected
kBool GoSensor_IsConnected(GoSensor sensor)
Reports whether the the sensor is currently connected.