Gocator API
 All Classes Files Functions Variables Typedefs Macros Groups 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) 2011-2012 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/GoDataSet.h>
15 #include <GoSdk/GoOutput.h>
16 #include <GoSdk/GoSetup.h>
17 #include <GoSdk/GoTools.h>
18 #include <GoSdk/GoTransform.h>
19 
20 kBeginHeader()
21 
22 /**
23  * @class GoSensor
24  * @extends kObject
25  * @ingroup GoSdk
26  * @brief Represents a Gocator sensor.
27  */
28 typedef kObject GoSensor;
29 
30 /**
31  * Configures a sensor's network address settings.
32  *
33  * This function uses UDP broadcasts for sensor configuration; the sensor does not need to
34  * be connected, and can be on a different subnet than the client.
35  *
36  * The sensor will automatically reboot if the address is successfully changed.
37  *
38  * @public @memberof GoSensor
39  * @param sensor GoSensor object.
40  * @param info New address settings.
41  * @param wait Should this function block until the sensor finishes rebooting?
42  * @return Operation status.
43  */
44 GoFx(kStatus) GoSensor_SetAddress(GoSensor sensor, const GoAddressInfo* info, kBool wait);
45 
46 /**
47  * Retrieves the sensor's network address settings.
48  *
49  * @public @memberof GoSensor
50  * @param sensor GoSensor object.
51  * @param info Receives current address configuration.
52  * @return Operation status.
53  */
54 GoFx(kStatus) GoSensor_Address(GoSensor sensor, GoAddressInfo* info);
55 
56 /**
57  * Creates a connection to the sensor.
58  *
59  * @public @memberof GoSensor
60  * @param sensor GoSensor object.
61  * @return Operation status.
62  */
63 GoFx(kStatus) GoSensor_Connect(GoSensor sensor);
64 
65 /**
66  * Disconnects from the sensor.
67  *
68  * @public @memberof GoSensor
69  * @param sensor GoSensor object.
70  * @return Operation status.
71  */
72 GoFx(kStatus) GoSensor_Disconnect(GoSensor sensor);
73 
74 /**
75  * Reports whether the the sensor is currently connected.
76  *
77  * @public @memberof GoSensor
78  * @param sensor GoSensor object.
79  * @return kTRUE if the sensor is connected; kFALSE otherwise.
80  */
81 GoFx(kBool) GoSensor_IsConnected(GoSensor sensor);
82 
83 /**
84  * Refreshes sensor state.
85  *
86  * Unresponsive sensors will be disconnected, and cancelled sensors will be reconnected.
87  * Sensors in any other state will discard all locally-cached information.
88  *
89  * This function should be used to update sensors in the GO_SENSOR_INCONSISTENT state. This
90  * state can arise due to buddy changes performed by remote sensors (e.g. a main sensor boots
91  * and claims ownership of a buddy sensor, but the buddy sensor has already been detected and
92  * loaded as a main sensor by the client).
93  *
94  * @public @memberof GoSensor
95  * @param sensor GoSensor object.
96  * @return kTRUE if the sensor is connected; kFALSE otherwise.
97  */
98 GoFx(kStatus) GoSensor_Refresh(GoSensor sensor);
99 
100 /**
101  * Assigns a buddy sensor.
102  *
103  * @public @memberof GoSensor
104  * @param sensor GoSensor object.
105  * @param buddy Sensor to be assigned as buddy.
106  * @return Operation status.
107  */
108 GoFx(kStatus) GoSensor_AddBuddy(GoSensor sensor, GoSensor buddy);
109 
110 /**
111  * Removes the current buddy sensor.
112  *
113  * @public @memberof GoSensor
114  * @param sensor GoSensor object.
115  * @return Operation status.
116  */
117 GoFx(kStatus) GoSensor_RemoveBuddy(GoSensor sensor);
118 
119 /**
120  * Reports whether a buddy had been assigned.
121  *
122  * @public @memberof GoSensor
123  * @param sensor GoSensor object.
124  * @return kTRUE if sensor has a buddy; kFALSE otherwise.
125  */
126 GoFx(kBool) GoSensor_HasBuddy(GoSensor sensor);
127 
128 /**
129  * Gets the buddy sensor.
130  *
131  * @public @memberof GoSensor
132  * @param sensor GoSensor object.
133  * @return Buddy sensor (or kNULL if not assigned or not online).
134  */
135 GoFx(GoSensor) GoSensor_Buddy(GoSensor sensor);
136 
137 /**
138  * Gets the buddy sensor's device ID.
139  *
140  * @public @memberof GoSensor
141  * @param sensor GoSensor object.
142  * @return Buddy device ID (or k32U_NULL if not assigned).
143  */
144 GoFx(k32u) GoSensor_BuddyId(GoSensor sensor);
145 
146 /**
147  * Gets the sensor's scan mode.
148  *
149  * @public @memberof GoSensor
150  * @param sensor GoSensor object.
151  * @return Scan mode.
152  */
153 GoFx(GoMode) GoSensor_ScanMode(GoSensor sensor);
154 
155 /**
156  * Enables or disables the sensor's data channel.
157  *
158  * @public @memberof GoSensor
159  * @param sensor GoSensor object.
160  * @param enable kTRUE to enable, or kFALSE to disable.
161  * @return Operation status.
162  */
163 GoFx(kStatus) GoSensor_EnableData(GoSensor sensor, kBool enable);
164 
165 /**
166  * Gets the alignment state of the sensor.
167  *
168  * @public @memberof GoSensor
169  * @param sensor GoSensor object.
170  * @return A GoAlignmentState.
171  */
172 GoFx(GoAlignmentState) GoSensor_AlignmentState(GoSensor sensor);
173 
174 GoFx(kStatus) GoSensor_SetAlignmentReference(GoSensor sensor, GoAlignmentRef reference);
175 GoFx(kStatus) GoSensor_GetAlignmentReference(GoSensor sensor, GoAlignmentRef* reference);
176 
177 /**
178  * Reboots the main sensor and any connected buddy sensors.
179  *
180  * @public @memberof GoSensor
181  * @param sensor GoSensor object.
182  * @param wait kTRUE to wait for reboot and then reconnect.
183  * @return Operation status.
184  */
185 GoFx(kStatus) GoSensor_Reset(GoSensor sensor, kBool wait);
186 
187 /**
188  * Aborts ongoing sensor communication.
189  *
190  * This method asynchronously aborts ongoing communication; the next time that any
191  * I/O operation blocks for an extended period of time, it will be terminated. This method
192  * is thread-safe.
193  *
194  * In order to resume communication, call GoSensor_Refresh or GoSensor_Connect.
195  *
196  * @public @memberof GoSensor
197  * @param sensor GoSensor object.
198  * @return Operation status.
199  */
200 GoFx(kStatus) GoSensor_Cancel(GoSensor sensor);
201 
202 /**
203  * Gets the current time stamp (common among all synchronized sensors).
204  *
205  * @public @memberof GoSensor
206  * @param sensor GoSensor object.
207  * @param time Receives the current time stamp(us).
208  * @return Operation status.
209  */
210 GoFx(kStatus) GoSensor_GetTimeStamp(GoSensor sensor, k64u* time);
211 
212 /**
213  * Gets the current encoder count.
214  *
215  * @public @memberof GoSensor
216  * @param sensor GoSensor object.
217  * @param encoder Receives the encoder count (ticks).
218  * @return Operation status.
219  */
220 GoFx(kStatus) GoSensor_GetEncoder(GoSensor sensor, k64s* encoder);
221 
222 /**
223  * Sends a software trigger to the sensor.
224  *
225  * This method is used in conjunction with sensors that are configured to accept
226  * software triggers.
227  *
228  * @public @memberof GoSensor
229  * @param sensor GoSensor object.
230  * @return Operation status.
231  * @see GoSetup_TriggerSource, GoSetup_SetTriggerSource
232  */
233 GoFx(kStatus) GoSensor_Trigger(GoSensor sensor);
234 
235 /**
236  * Schedules a digital output.
237  *
238  * This method requires that the output is configured to trigger on software control.
239  *
240  * @public @memberof GoSensor
241  * @param sensor GoSensor object.
242  * @param index The digital output index.
243  * @param target The time or position target (us or mm), depending on GoDomain. Ignored if
244  * GoDigital_ScheduleEnabled is false or GoDigital_SignalType is pulsed.
245  * @param value The value of scheduled output (0-Low or 1-High). Ignored if output
246  * GoDigital_SignalType is pulsed.
247  * @return Operation status.
248  */
249 GoFx(kStatus) GoSensor_EmitDigital(GoSensor sensor, k16u index, k64s target, k8u value);
250 
251 /**
252  * Schedules an analog output.
253  *
254  * This method requires that the output be configured to trigger on software control.
255  *
256  * @public @memberof GoSensor
257  * @param sensor GoSensor object.
258  * @param index The analog output index.
259  * @param target The time or position target (us or mm), depending on GoDomain. Ignored if
260  * GoAnalog_ScheduleEnabled is false.
261  * @param value The value of the scheduled output (mA).
262  * @return Operation status.
263  */
264 GoFx(kStatus) GoSensor_EmitAnalog(GoSensor sensor, k16u index, k64s target, k32s value);
265 
266 /**
267  * Gets the number of files available from the connected sensor.
268  *
269  * @public @memberof GoSensor
270  * @param sensor GoSensor object.
271  * @return File count.
272  */
273 GoFx(kSize) GoSensor_FileCount(GoSensor sensor);
274 
275 /**
276  * Gets the file name at the specified index.
277  *
278  * @public @memberof GoSensor
279  * @param sensor GoSensor object.
280  * @param index Index of the desired file name.
281  * @param name Receives the name of the file.
282  * @param capacity Capacity of the file name buffer.
283  * @return Operation status.
284  */
285 GoFx(kStatus) GoSensor_FileNameAt(GoSensor sensor, kSize index, kChar* name, kSize capacity);
286 
287 /**
288  * Uploads a file to the connected sensor.
289  *
290  * @public @memberof GoSensor
291  * @param sensor GoSensor object.
292  * @param sourcePath Source file system path for the file to be uploaded.
293  * @param destName Destination name for the uploaded file (maximum 63 characters).
294  * @return Operation status.
295  */
296 GoFx(kStatus) GoSensor_UploadFile(GoSensor sensor, const kChar* sourcePath, const kChar* destName);
297 
298 /**
299  * Downloads a file from the connected sensor.
300  *
301  * @public @memberof GoSensor
302  * @param sensor GoSensor object.
303  * @param sourceName Source name of the file to be downloaded.
304  * @param destPath Destination file system path for the file to be downloaded.
305  * @return Operation status.
306  */
307 GoFx(kStatus) GoSensor_DownloadFile(GoSensor sensor, const kChar* sourceName, const kChar* destPath);
308 
309 /**
310  * Copies a file within the connected sensor.
311  *
312  * @public @memberof GoSensor
313  * @param sensor GoSensor object.
314  * @param sourceName Source name for the file to be copied.
315  * @param destName Destination name for the file (maximum 63 characters).
316  * @return Operation status.
317  */
318 GoFx(kStatus) GoSensor_CopyFile(GoSensor sensor, const kChar* sourceName, const kChar* destName);
319 
320 /**
321  * Deletes a file within the connected sensor.
322  *
323  * @public @memberof GoSensor
324  * @param sensor GoSensor object.
325  * @param name Name of the file to be deleted.
326  * @return Operation status.
327  */
328 GoFx(kStatus) GoSensor_DeleteFile(GoSensor sensor, const kChar* name);
329 
330 /**
331  * Checks whether the specified file is present on the sensor.
332  *
333  * @public @memberof GoSensor
334  * @param sensor GoSensor object.
335  * @param name Name of the file to be checked.
336  * @return Operation status.
337  */
338 GoFx(kBool) GoSensor_FileExists(GoSensor sensor, const kChar* name);
339 
340 /**
341  * Sets a default job file to be loaded on boot.
342  *
343  * @public @memberof GoSensor
344  * @param sensor GoSensor object.
345  * @param fileName Name of the default file.
346  * @return Operation status.
347  */
348 GoFx(kStatus) GoSensor_SetDefaultJob(GoSensor sensor, const kChar* fileName);
349 
350 /**
351  * Gets the name of the default job file to be loaded on boot.
352  *
353  * @public @memberof GoSensor
354  * @param sensor GoSensor object.
355  * @param fileName Receives name of the default file.
356  * @param capacity Name buffer capacity.
357  * @return Operation status.
358  */
359 GoFx(kStatus) GoSensor_DefaultJob(GoSensor sensor, kChar* fileName, kSize capacity);
360 
361 /**
362  * Gets the name of the loaded job file and whether it has been modified since loading.
363  *
364  * @public @memberof GoSensor
365  * @param sensor GoSensor object.
366  * @param fileName Receives name of the loaded file.
367  * @param capacity Name buffer capacity.
368  * @param changed Receives the status of whether the file has changed.
369  * @return Operation status.
370  */
371 GoFx(kStatus) GoSensor_LoadedJob(GoSensor sensor, kChar* fileName, kSize capacity, kBool* changed);
372 
373 /**
374  * Logs into the sensor using the specified user name and password.
375  *
376  * Logging in is not required in order to programmatically control a sensor. The Gocator log-in feature is
377  * intended only to support administrative user interfaces, by allowing the username and password to be
378  * stored onboard the sensor.
379  *
380  * @public @memberof GoSensor
381  * @param sensor GoSensor object.
382  * @param user User account.
383  * @param password User password.
384  * @return Operation status.
385  */
386 GoFx(kStatus) GoSensor_LogIn(GoSensor sensor, GoUser user, const kChar* password);
387 
388 /**
389  * Changes the password associated with the specified user account.
390  *
391  * @public @memberof GoSensor
392  * @param sensor GoSensor object.
393  * @param user User account.
394  * @param password New password.
395  * @return Operation status.
396  */
397 GoFx(kStatus) GoSensor_ChangePassword(GoSensor sensor, GoUser user, const kChar* password);
398 
399 /**
400  * Upgrades sensor firmware.
401  *
402  * This function will block until the upgrade is completed. A reboot is required in order for
403  * the upgrade to take effet, but the reboot is not automatic. Call GoSensor_Reset to reboot.
404  *
405  * @public @memberof GoSensor
406  * @param sensor GoSensor object.
407  * @param sourcePath Local file system path to the upgrade file.
408  * @param onUpdate Callback function to receive progress updates, or kNULL.
409  * @param context Context handle to be passed to the upgrade callback.
410  * @return Operation status.
411  */
412 GoFx(kStatus) GoSensor_Upgrade(GoSensor sensor, const kChar* sourcePath, GoUpgradeFx onUpdate, kPointer context);
413 
414 /**
415  * Creates a backup of sensor files and downloads the backup to the specified location.
416  *
417  * @public @memberof GoSensor
418  * @param sensor GoSensor object.
419  * @param destPath Local file system path for the saved backup file.
420  * @return Operation status.
421  */
422 GoFx(kStatus) GoSensor_Backup(GoSensor sensor, const kChar* destPath);
423 
424 /**
425  * Restores a backup of sensor files.
426  *
427  * @public @memberof GoSensor
428  * @param sensor GoSensor object.
429  * @param sourcePath Local file system path of the saved backup file.
430  * @return Operation status.
431  */
432 GoFx(kStatus) GoSensor_Restore(GoSensor sensor, const kChar* sourcePath);
433 
434 /**
435  * Restores factory default settings.
436  *
437  * @public @memberof GoSensor
438  * @param sensor GoSensor object.
439  * @param restoreAddress kTRUE to restore the factory default IP address; False otherwise.
440  * @return Operation status.
441  */
442 GoFx(kStatus) GoSensor_RestoreDefaults(GoSensor sensor, kBool restoreAddress);
443 
444 /**
445  * Gets the GoSetup instance associated with the sensor.
446  *
447  * @public @memberof GoSensor
448  * @param sensor GoSensor object.
449  * @return A GoSetup object module
450  */
451 GoFx(GoSetup) GoSensor_Setup(GoSensor sensor);
452 
453 /**
454  * Gets the sensor's tools module, used for measurement configuration.
455  *
456  * @public @memberof GoSensor
457  * @param sensor GoSensor object.
458  * @return Measurement configuration module.
459  */
460 GoFx(GoTools) GoSensor_Tools(GoSensor sensor);
461 
462 /**
463  * Gets the output module, used for output configuration.
464  *
465  * @public @memberof GoSensor
466  * @param sensor GoSensor object.
467  * @return Output configuration module.
468  */
469 GoFx(GoOutput) GoSensor_Output(GoSensor sensor);
470 
471 /**
472  * Gets the transform module, used for transformation configuration.
473  *
474  * @public @memberof GoSensor
475  * @param sensor GoSensor object.
476  * @return Transformation configuration module.
477  */
478 GoFx(GoTransform) GoSensor_Transform(GoSensor sensor);
479 
480 /**
481  * Gets the device identifier associated with this sensor.
482  *
483  * @public @memberof GoSensor
484  * @param sensor GoSensor object.
485  * @return The sensor's device ID.
486  */
487 GoFx(k32u) GoSensor_Id(GoSensor sensor);
488 
489 /**
490  * Gets the model number associated with this sensor.
491  *
492  * @public @memberof GoSensor
493  * @param sensor GoSensor object.
494  * @param model Receives sensor model.
495  * @param capacity Capacity of model buffer.
496  * @return Model number.
497  */
498 GoFx(kStatus) GoSensor_Model(GoSensor sensor, kChar* model, kSize capacity);
499 
500 /**
501  * Reports the current state of the sensor.
502  *
503  * @public @memberof GoSensor
504  * @param sensor GoSensor object.
505  * @return Sensor state.
506  */
507 GoFx(GoState) GoSensor_State(GoSensor sensor);
508 
509 /**
510  * Reports the current states of the sensor.
511  *
512  * @public @memberof GoSensor
513  * @param sensor GoSensor object.
514  * @return Sensor states.
515  */
516 GoFx(kStatus) GoSensor_States(GoSensor sensor, GoStates* states);
517 
518 /**
519  * Gets the sensor's current role within the system.
520  *
521  * @public @memberof GoSensor
522  * @param sensor GoSensor object.
523  * @return Sensor role.
524  */
525 GoFx(GoRole) GoSensor_Role(GoSensor sensor);
526 
527 /**
528  * Reports the user account associated with the current user.
529  *
530  * @public @memberof GoSensor
531  * @param sensor GoSensor object.
532  * @return User account id.
533  */
534 GoFx(GoUser) GoSensor_User(GoSensor sensor);
535 
536 /**
537  * Gets the sensor's protocol version.
538  *
539  * @public @memberof GoSensor
540  * @param sensor GoSensor object.
541  * @return Protocol version.
542  */
543 GoFx(kVersion) GoSensor_ProtocolVersion(GoSensor sensor);
544 
545 /**
546  * Gets the sensor's firmware version.
547  *
548  * @public @memberof GoSensor
549  * @param sensor GoSensor object.
550  * @return Firmware version.
551  */
552 GoFx(kVersion) GoSensor_FirmwareVersion(GoSensor sensor);
553 
554 /**
555  * Sets the recording state of the sensor.
556  *
557  * @public @memberof GoSensor
558  * @param sensor GoSensor object.
559  * @param enable Enables or disables recording.
560  * @return Operation status.
561  */
562 GoFx(kStatus) GoSensor_SetRecordingEnabled(GoSensor sensor, kBool enable);
563 
564 /**
565  * Gets the recording state of the sensor.
566  *
567  * @public @memberof GoSensor
568  * @param sensor GoSensor object.
569  * @return kTRUE if recording is enabled. kFALSE otherwise.
570  */
571 GoFx(kBool) GoSensor_GetRecordingEnabled(GoSensor sensor);
572 
573 /**
574  * Sets the input source of the sensor.
575  *
576  * @public @memberof GoSensor
577  * @param sensor GoSensor object.
578  * @param source The input source to use.
579  * @return Operation status.
580  */
581 GoFx(kStatus) GoSensor_SetInputSource(GoSensor sensor, GoInputSource source);
582 
583 /**
584  * Gets the input source currently used by the sensor.
585  *
586  * @public @memberof GoSensor
587  * @param sensor GoSensor object.
588  * @return A GoInputSource.
589  */
590 GoFx(GoInputSource) GoSensor_GetInputSource(GoSensor sensor);
591 
592 /**
593  * Simulates the current frame in the live recording buffer.
594  *
595  * @public @memberof GoSensor
596  * @param sensor GoSensor object.
597 
598  * @param isBufferValid kTRUE if the source simulation buffer was valid. kFALSE otherwise.
599  * @return Operation status.
600  */
601 GoFx(kStatus) GoSensor_Simulate(GoSensor sensor, kBool* isBufferValid);
602 
603 
604 /**
605  * Advances one frame from the current replay position.
606  *
607  * @public @memberof GoSensor
608  * @param sensor GoSensor object.
609  * @param direction Direction with which to step.
610  * @return Operation status.
611  */
612 GoFx(kStatus) GoSensor_PlaybackStep(GoSensor sensor, GoSeekDirection direction);
613 
614 /**
615  * Sets the current frame position for a replay.
616  *
617  * @public @memberof GoSensor
618  * @param sensor GoSensor object.
619  * @param position The frame position to seek.
620  * @return Operation status.
621  */
622 GoFx(kStatus) GoSensor_PlaybackSeek(GoSensor sensor, k32u position);
623 
624 /**
625  * Gets the current replay frame position.
626  *
627  * @public @memberof GoSensor
628  * @param sensor GoSensor object.
629  * @param position The current frame position index.
630  * @param count The frame count.
631  * @return Operation status.
632  */
633 GoFx(kStatus) GoSensor_PlaybackPosition(GoSensor sensor, kSize* position, kSize* count);
634 
635 /**
636  * Gets the current replay frame count.
637  *
638  * @public @memberof GoSensor
639  * @param sensor GoSensor object.
640  * @return The current frame count.
641  */
642 GoFx(kSize) GoSensor_PlaybackFrameCount(GoSensor sensor);
643 
644 
645 /**
646  * Clears the replay buffer.
647  *
648  * @public @memberof GoSensor
649  * @param sensor GoSensor object.
650  * @return Operation status.
651  */
652 GoFx(kStatus) GoSensor_ClearReplayData(GoSensor sensor);
653 
654 /**
655  * Resets the measurment statistics reported by the health channel
656  *
657  * @public @memberof GoSensor
658  * @param sensor GoSensor object.
659  * @return A GoAlignmentState.
660  */
661 GoFx(kStatus) GoSensor_ClearMeasurementStats(GoSensor sensor);
662 
663 /**
664  * Exports the current frame of a replay in the form of a bitmap.
665  *
666  * @public @memberof GoSensor
667  * @param sensor GoSensor object.
668  * @param type The type of data to export.
669  * @param source The device data source to export from.
670  * @param dstFileName The destination file name of the exported CSV file.
671  * @return Operation status.
672  */
673 GoFx(kStatus) GoSensor_ExportBitmap(GoSensor sensor,
674  GoReplayExportSourceType type,
675  GoDataSource source,
676  const kChar* dstFileName);
677 
678 /**
679  * Exports replay data in CSV format.
680  *
681  * @public @memberof GoSensor
682  * @param sensor GoSensor object.
683  * @param dstFileName The destination file name of the exported CSV file.
684  * @return Operation status.
685  */
686 GoFx(kStatus) GoSensor_ExportCsv(GoSensor sensor, const kChar* dstFileName);
687 
688 /**
689  * Returns an enumerator value representing the current sensor's family.
690  *
691  * @public @memberof GoSensor
692  * @param sensor GoSensor object.
693  * @return A GoFamily value.
694  */
695 GoFx(GoFamily) GoSensor_Family(GoSensor sensor);
696 
697 /**
698  * Clears the log file (_live.log).
699  *
700  * @public @memberof GoSensor
701  * @param sensor GoSensor object.
702  * @return Operation status.
703  */
704 GoFx(kStatus) GoSensor_ClearLog(GoSensor sensor);
705 
706 /**
707  * Sets the AutoStart enabled state of the sensor.
708  *
709  * @public @memberof GoSensor
710  * @param sensor GoSensor object.
711  * @param enable The AutoStart enabled state to use.
712  * @return Operation status.
713  */
714 GoFx(kStatus) GoSensor_SetAutoStartEnabled(GoSensor sensor, kBool enable);
715 
716 /**
717  * Gets the AutoStart enabled state currently used by the sensor.
718  *
719  * @public @memberof GoSensor
720  * @param sensor GoSensor object.
721  * @return A GoAutoStart.
722  */
723 GoFx(kBool) GoSensor_GetAutoStartEnabled(GoSensor sensor);
724 
725 
726 kEndHeader()
727 #include <GoSdk/GoSensor.x.h>
728 
729 #endif
Sensor state, login, alignment reference, alignment state, recording state, and playback source...
Definition: GoSdkDef.h:362
GoState GoSensor_State(GoSensor sensor)
Reports the current state of the sensor.
kStatus GoSensor_Upgrade(GoSensor sensor, const kChar *sourcePath, GoUpgradeFx onUpdate, kPointer context)
Upgrades sensor firmware.
GoSensor GoSensor_Buddy(GoSensor sensor)
Gets the buddy sensor.
kStatus GoSensor_DownloadFile(GoSensor sensor, const kChar *sourceName, const kChar *destPath)
Downloads a file from the connected sensor.
kStatus GoSensor_GetEncoder(GoSensor sensor, k64s *encoder)
Gets the current encoder count.
kStatus GoSensor_ClearReplayData(GoSensor sensor)
Clears the replay buffer.
kBool GoSensor_FileExists(GoSensor sensor, const kChar *name)
Checks whether the specified file is present on the sensor.
kStatus GoSensor_EmitDigital(GoSensor sensor, k16u index, k64s target, k8u value)
Schedules a digital output.
GoSetup GoSensor_Setup(GoSensor sensor)
Gets the GoSetup instance associated with the sensor.
kStatus GoSensor_EmitAnalog(GoSensor sensor, k16u index, k64s target, k32s value)
Schedules an analog output.
kStatus GoSensor_Reset(GoSensor sensor, kBool wait)
Reboots the main sensor and any connected buddy sensors.
kBool GoSensor_IsConnected(GoSensor sensor)
Reports whether the the sensor is currently connected.
kStatus GoSensor_FileNameAt(GoSensor sensor, kSize index, kChar *name, kSize capacity)
Gets the file name at the specified index.
kBool GoSensor_GetAutoStartEnabled(GoSensor sensor)
Gets the AutoStart enabled state currently used by the sensor.
kStatus GoSensor_SetAddress(GoSensor sensor, const GoAddressInfo *info, kBool wait)
Configures a sensor's network address settings.
kStatus GoSensor_UploadFile(GoSensor sensor, const kChar *sourcePath, const kChar *destName)
Uploads a file to the connected sensor.
kStatus GoSensor_SetInputSource(GoSensor sensor, GoInputSource source)
Sets the input source of the sensor.
Declares the GoOutput class.
Represents a data source.
kStatus GoSensor_SetAutoStartEnabled(GoSensor sensor, kBool enable)
Sets the AutoStart enabled state of the sensor.
kStatus GoSensor_Address(GoSensor sensor, GoAddressInfo *info)
Retrieves the sensor's network address settings.
Declares the GoDataSet class.
kStatus GoSensor_AddBuddy(GoSensor sensor, GoSensor buddy)
Assigns a buddy sensor.
kVersion GoSensor_FirmwareVersion(GoSensor sensor)
Gets the sensor's firmware version.
kStatus GoSensor_SetDefaultJob(GoSensor sensor, const kChar *fileName)
Sets a default job file to be loaded on boot.
kStatus GoSensor_SetRecordingEnabled(GoSensor sensor, kBool enable)
Sets the recording state of the sensor.
kStatus GoSensor_Disconnect(GoSensor sensor)
Disconnects from the sensor.
kSize GoSensor_FileCount(GoSensor sensor)
Gets the number of files available from the connected sensor.
kStatus GoSensor_Backup(GoSensor sensor, const kChar *destPath)
Creates a backup of sensor files and downloads the backup to the specified location.
kStatus GoSensor_States(GoSensor sensor, GoStates *states)
Reports the current states of the sensor.
kStatus GoSensor_DeleteFile(GoSensor sensor, const kChar *name)
Deletes a file within the connected sensor.
GoOutput GoSensor_Output(GoSensor sensor)
Gets the output module, used for output configuration.
Represents output configuration.
Definition: GoOutput.h:15
kStatus GoSensor_ClearMeasurementStats(GoSensor sensor)
Resets the measurment statistics reported by the health channel.
Essential API declarations.
kStatus GoSensor_RemoveBuddy(GoSensor sensor)
Removes the current buddy sensor.
GoMode GoSensor_ScanMode(GoSensor sensor)
Gets the sensor's scan mode.
kStatus GoSensor_PlaybackSeek(GoSensor sensor, k32u position)
Sets the current frame position for a replay.
Declares the GoTransform class.
GoUser GoSensor_User(GoSensor sensor)
Reports the user account associated with the current user.
kBool GoSensor_GetRecordingEnabled(GoSensor sensor)
Gets the recording state of the sensor.
kStatus GoSensor_Restore(GoSensor sensor, const kChar *sourcePath)
Restores a backup of sensor files.
Represents a ...
Definition: GoTools.h:16
kStatus GoSensor_Connect(GoSensor sensor)
Creates a connection to the sensor.
kStatus GoSensor_Refresh(GoSensor sensor)
Refreshes sensor state.
Represents a user id.
Definition: GoSdkDef.h:15
GoTools GoSensor_Tools(GoSensor sensor)
Gets the sensor's tools module, used for measurement configuration.
GoAlignmentState GoSensor_AlignmentState(GoSensor sensor)
Gets the alignment state of the sensor.
kStatus GoSensor_CopyFile(GoSensor sensor, const kChar *sourceName, const kChar *destName)
Copies a file within the connected sensor.
GoTransform GoSensor_Transform(GoSensor sensor)
Gets the transform module, used for transformation configuration.
kStatus GoSensor_Trigger(GoSensor sensor)
Sends a software trigger to the sensor.
kSize GoSensor_PlaybackFrameCount(GoSensor sensor)
Gets the current replay frame count.
kStatus GoSensor_ChangePassword(GoSensor sensor, GoUser user, const kChar *password)
Changes the password associated with the specified user account.
GoRole GoSensor_Role(GoSensor sensor)
Gets the sensor's current role within the system.
Declares the GoTool classes.
kStatus GoSensor_GetTimeStamp(GoSensor sensor, k64u *time)
Gets the current time stamp (common among all synchronized sensors).
kStatus GoSensor_Simulate(GoSensor sensor, kBool *isBufferValid)
Simulates the current frame in the live recording buffer.
Declares the GoSetup class.
Represents a ...
Definition: GoTransform.h:15
k32u GoSensor_Id(GoSensor sensor)
Gets the device identifier associated with this sensor.
kStatus GoSensor_PlaybackPosition(GoSensor sensor, kSize *position, kSize *count)
Gets the current replay frame position.
kBool GoSensor_HasBuddy(GoSensor sensor)
Reports whether a buddy had been assigned.
kVersion GoSensor_ProtocolVersion(GoSensor sensor)
Gets the sensor's protocol version.
GoFamily GoSensor_Family(GoSensor sensor)
Returns an enumerator value representing the current sensor's family.
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.
GoInputSource GoSensor_GetInputSource(GoSensor sensor)
Gets the input source currently used by the sensor.
kStatus GoSensor_ExportCsv(GoSensor sensor, const kChar *dstFileName)
Exports replay data in CSV format.
kStatus GoSensor_LogIn(GoSensor sensor, GoUser user, const kChar *password)
Logs into the sensor using the specified user name and password.
kStatus GoSensor_ClearLog(GoSensor sensor)
Clears the log file (_live.log).
kStatus GoSensor_Model(GoSensor sensor, kChar *model, kSize capacity)
Gets the model number associated with this sensor.
kStatus GoSensor_EnableData(GoSensor sensor, kBool enable)
Enables or disables the sensor's data channel.
kStatus GoSensor_Cancel(GoSensor sensor)
Aborts ongoing sensor communication.
kStatus GoSensor_DefaultJob(GoSensor sensor, kChar *fileName, kSize capacity)
Gets the name of the default job file to be loaded on boot.
Represents a ...
Definition: GoSetup.h:17
k32u GoSensor_BuddyId(GoSensor sensor)
Gets the buddy sensor's device ID.
Represents a Gocator sensor.
Definition: GoSensor.h:20
kStatus GoSensor_RestoreDefaults(GoSensor sensor, kBool restoreAddress)
Restores factory default settings.
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.
Sensor network address settings.
Definition: GoSdkDef.h:382
kStatus GoSensor_PlaybackStep(GoSensor sensor, GoSeekDirection direction)
Advances one frame from the current replay position.
Represents the current state of a sensor object.