GoWebScan API
GoWebScanCalCollector.h
Go to the documentation of this file.
1 /**
2 * @file GoWebScanCalCollector.h
3 * @brief Declares a GoWebScanCalCollector object.
4 *
5 * @internal
6 * Copyright (C) 2017-2026 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 
11 #ifndef GO_WEB_SCAN_CAL_COLLECTOR_H
12 #define GO_WEB_SCAN_CAL_COLLECTOR_H
13 
14 
19 #include <GoSdk/GoSdk.h>
20 
21 /**
22 * @class GoWebScanCalCollector
23 * @extends kObject
24 * @ingroup GoWebScanSdk-Calibration
25 * @brief Represents a task to coordinate collection of sensor messages, matching of messages in Y to
26 * produce system tiles, and detection of the calibration bar during system calibration. Sensor
27 * messages should be given to this class until the class has determined the calibration bar
28 * has been detected. At that point, a calibration input dataset is generated which contains
29 * system tiles containing the calibration bar, and this dataset can be provided to the
30 * calibration processor (GoWebScanCalProcessor). The class coordinates combining messages
31 * to form Y-matched tiles via the GoWebScanCalCombiner algorithm, and detects the bar
32 * via the GoWebScanCalDetector algorithm.
33 * @see GoWebScanCalProcessor, GoWebScanCalCombiner, GoWebScanCalDetector
34 */
36 
37 /** Defines the signature for the handler for when the collector is complete. */
39 
40 /**
41  * Constructs a GoWebScanCalCollector object.
42  *
43  * @public @memberof GoWebScanCalCollector
44  * @param collector Receives the constructed GoWebScanCalCollector object.
45  * @param config System configuration.
46  * @param allocator Memory allocator (or kNULL for default).
47  * @return Operation status.
48  */
49 GoWebScanFx(kStatus) GoWebScanCalCollector_Construct(GoWebScanCalCollector* collector, GoWebScanConfig config, kAlloc allocator);
50 
51 /**
52  * Adds a sensor message to the collector. The messages are cloned into internal message
53  * objects. As such, the GoDataSet object is still owned by the calling function and must be
54  * destroyed by it.
55  *
56  * @public @memberof GoWebScanCalCollector
57  * @param collector GoWebScanCalCollector object.
58  * @param dataSet Input sensor message.
59  * @return Operation status.
60  */
62 
63 /**
64  * Flush any existing sensor messages currently in the pipeline.
65  *
66  * @public @memberof GoWebScanCalCollector
67  * @param collector GoWebScanCalCollector object.
68  * @return Operation status.
69  */
71 
72 /**
73  * Gets a flag for whether the calibration collector has completed collection of sensor messages.
74  *
75  * @public @memberof GoWebScanCalCollector
76  * @param collector GoWebScanCalCollector object.
77  * @return Flag representing whether collection completed.
78  */
80 
81 /**
82 * Gets a flag for whether the calibration collector had any errors during collection.
83 *
84 * @public @memberof GoWebScanCalCollector
85 * @param collector GoWebScanCalCollector object.
86 * @return Flag representing whether any errors are present.
87 */
89 
90 /**
91  * Gets a pointer to the calibration input file that can be provided to the calibration
92  * processor for processing. Ownership of the calibration input is transferred to the calling
93  * function.
94  *
95  * @public @memberof GoWebScanCalCollector
96  * @param collector GoWebScanCalCollector object.
97  * @param data Receives the constructed GoWebScanCalInput object.
98  * @return Operation status.
99  */
101 
102 /**
103  * Gets a pointer to the recording of sensor message sets used to perform calibration. Ownership of the
104  * calibration input is transferred to the calling function.
105  *
106  * @public @memberof GoWebScanCalCollector
107  * @param collector GoWebScanCalCollector object.
108  * @param recording Receives the constructed GoWebScanRecording object.
109  * @return Operation status.
110  */
112 
113 /**
114  * Sets a callback function for when the calibration collector has completed collection of sensor messages.
115  *
116  * @public @memberof GoWebScanCalCollector
117  * @param collector GoWebScanCalCollector object.
118  * @param function Data callback function (or kNULL to unregister).
119  * @param receiver Receiver argument for callback.
120  * @return Operation status.
121  */
123 
124 /**
125  * Enable or disable frame drop check.
126  *
127  * @public @memberof GoWebScanCalCollector
128  * @param collector GoWebScanCalCollector object.
129  * @param enable Enable frame drop check.
130  * @return Operation status.
131  */
133 
134 /**
135  * Get value for whether or not frame drops are checked.
136  *
137  * @public @memberof GoWebScanCalCollector
138  * @param collector GoWebScanCalCollector object.
139  * @return Boolean if frame drops are checked.
140  */
142 
143 /**
144  * Reset the collector to its original state.
145  *
146  * @public @memberof GoWebScanCalCollector
147  * @param collector GoWebScanCalCollector object.
148  * @return Operation status.
149  */
151 
152 #include <GoWebScanSdk/GoWebScanCalCollector.x.h>
153 
154 #endif
kStatus GoWebScanCalCollector_Flush(GoWebScanCalCollector collector)
Flush any existing sensor messages currently in the pipeline.
Represents a task to coordinate collection of sensor messages, matching of messages in Y to produce s...
kBool GoWebScanCalCollector_FrameDropsChecked(GoWebScanCalCollector collector)
Get value for whether or not frame drops are checked.
kStatus GoWebScanCalCollector_GetCalRecording(GoWebScanCalCollector collector, GoWebScanRecording *recording)
Gets a pointer to the recording of sensor message sets used to perform calibration.
Declares a GoWebScanRecording object.
Declares a GoWebScanCalInput object.
kStatus GoWebScanCalCollector_GetProcessorData(GoWebScanCalCollector collector, GoWebScanCalInput *data)
Gets a pointer to the calibration input file that can be provided to the calibration processor for pr...
Essential GoWebScan declarations.
kStatus(kCall * GoWebScanCalCollectorCompleteFx)(kPointer context)
Defines the signature for the handler for when the collector is complete.
Definition: GoWebScanCalCollector.h:38
kBool GoWebScanCalCollector_Reset(GoWebScanCalCollector collector)
Reset the collector to its original state.
Represents Y-matched system data containing a calibration bar, used for calibration processing...
kBool GoWebScanCalCollector_HasErrors(GoWebScanCalCollector collector)
Gets a flag for whether the calibration collector had any errors during collection.
kStatus GoWebScanCalCollector_Construct(GoWebScanCalCollector *collector, GoWebScanConfig config, kAlloc allocator)
Constructs a GoWebScanCalCollector object.
kStatus GoWebScanCalCollector_AddMsg(GoWebScanCalCollector collector, GoDataSet dataSet)
Adds a sensor message to the collector.
kStatus GoWebScanCalCollector_SetOnCompleteHandler(GoWebScanCalCollector collector, GoWebScanCalCollectorCompleteFx function, kPointer receiver)
Sets a callback function for when the calibration collector has completed collection of sensor messag...
kBool GoWebScanCalCollector_IsCompleted(GoWebScanCalCollector collector)
Gets a flag for whether the calibration collector has completed collection of sensor messages...
kStatus GoWebScanCalCollector_CheckFrameDrops(GoWebScanCalCollector collector, kBool enable)
Enable or disable frame drop check.
A class for storing sensor messages, which can be reused, or saved to and loaded from disk...
Represents a container for system-level parameters which are translated from user parameters set in G...
Declares a GoWebScanConfig object.