Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoRangeTools.h
Go to the documentation of this file.
1 /**
2  * @file GoRangeTools.h
3  * @brief Declares all range tools and their related classes.
4  *
5  * @internal
6  * Copyright (C) 2016-2021 by LMI Technologies Inc.
7  * Licensed under the MIT License.
8  * Redistributed files must retain the above copyright notice.
9  */
10 #ifndef GO_RANGE_TOOLS_H
11 #define GO_RANGE_TOOLS_H
12 
13 #include <GoSdk/GoSdkDef.h>
14 #include <GoSdk/GoUtils.h>
15 #include <GoSdk/Tools/GoTool.h>
16 
17 /**
18  * @class GoRangeTool
19  * @extends GoTool
20  * @note Supported with G1
21  * @ingroup GoSdk-RangeTools
22  * @brief Represents a base range tool.
23  */
24 typedef GoTool GoRangeTool;
25 
26 /**
27  * Sets the data stream. Note that stream validation will only occur if tool
28  * is in the tool options list.
29  *
30  * @public @memberof GoRangeTool
31  * @note Supported with G1
32  * @version Introduced in firmware 5.3.19.50
33  * @param tool GoRangeTool object.
34  * @param stream GoDataStream value.
35  * @return Operation status.
36  * @see GoRangeTool_StreamOptionCount, GoRangeTool_StreamOptionAt
37  */
39 
40 /**
41  * Gets the data stream.
42  *
43  * @public @memberof GoRangeTool
44  * @note Supported with G1
45  * @version Introduced in firmware 5.3.19.50
46  * @param tool GoRangeTool object.
47  * @return The current Range tool data stream value.
48  */
50 
51 /**
52  * Gets the data stream option list count.
53  *
54  * @public @memberof GoRangeTool
55  * @note Supported with G1
56  * @version Introduced in firmware 5.3.19.50
57  * @param tool GoRangeTool object.
58  * @return The current Range tool data stream option list count.
59  */
61 
62 /**
63  * Gets the data stream option at the given index.
64  *
65  * @public @memberof GoRangeTool
66  * @note Supported with G1
67  * @version Introduced in firmware 5.3.19.50
68  * @param tool GoRangeTool object.
69  * @param index The index of the option list to access.
70  * @return The Range tool data stream option at the given index, or k32U_MAX if an invalid index is given.
71  */
73 
74 /**
75  * Sets the data source. Note that source validation will only occur if tool
76  * is in the tool options list.
77  *
78  * @public @memberof GoRangeTool
79  * @note Supported with G1
80  * @version Introduced in firmware 4.0.10.27
81  * @param tool GoRangeTool object.
82  * @param source GoDataSource object.
83  * @return Operation status.
84  * @see GoTools_ToolOptionCount, GoTools_ToolOptionAt
85  */
87 
88 /**
89  * Gets the data source.
90  *
91  * @public @memberof GoRangeTool
92  * @note Supported with G1
93  * @version Introduced in firmware 4.0.10.27
94  * @param tool GoRangeTool object.
95  * @return The data source.
96  */
98 
99 /**
100  * Gets the data source option list count.
101  *
102  * @public @memberof GoRangeTool
103  * @note Supported with G1
104  * @version Introduced in firmware 4.0.10.27
105  * @param tool GoRangeTool object.
106  * @return The data source option list count.
107  */
109 
110 /**
111  * Gets the data source option at the given index.
112  *
113  * @public @memberof GoRangeTool
114  * @note Supported with G1
115  * @version Introduced in firmware 4.0.10.27
116  * @param tool GoRangeTool object.
117  * @param index The index with which to retrieve a data source option.
118  * @return The data source option at the given index or k32U_MAX if an invalid index is given.
119  */
121 
122 /**
123  * @class GoRangePosition
124  * @extends GoRangeTool
125  * @note Supported with G1
126  * @ingroup GoSdk-RangeTools
127  * @brief Represents a range position tool.
128  */
130 
131 /**
132  * Returns a range position tool Z measurement object.
133  *
134  * @public @memberof GoRangePosition
135  * @note Supported with G1
136  * @version Introduced in firmware 4.0.10.27
137  * @param tool GoRangePosition object.
138  * @return A GoRangePositionZ measurement.
139  */
140 GoFx(GoRangePositionZ) GoRangePosition_ZMeasurement(GoRangePosition tool);
141 
142 /**
143  * @class GoRangeThickness
144  * @extends GoRangeTool
145  * @note Supported with G1
146  * @ingroup GoSdk-RangeTools
147  * @brief Represents a range thickness tool.
148  */
150 
151 /**
152  * Returns a boolean value representing whether or not the measurement is set to return an absolute value.
153  *
154  * @public @memberof GoRangePosition
155  * @note Supported with G1
156  * @version Introduced in firmware 4.0.10.27
157  * @param tool GoRangePosition object.
158  * @return kTRUE if enabled and kFALSE otherwise.
159  */
160 GoFx(kBool) GoRangeThickness_AbsoluteEnabled(GoRangeThickness tool);
161 
162 /**
163  * Enable or disable absolute value measurement output.
164  *
165  * @public @memberof GoRangePosition
166  * @note Supported with G1
167  * @version Introduced in firmware 4.0.10.27
168  * @param tool GoRangePosition object.
169  * @param enable kTRUE to enable absolute value and kFALSE to disable it.
170  * @return Operation status.
171  */
172 GoFx(kStatus) GoRangeThickness_EnableAbsolute(GoRangeThickness tool, kBool enable);
173 
174 /**
175  * Returns a range thickness tool Thickness measurement object.
176  *
177  * @public @memberof GoRangeThickness
178  * @note Supported with G1
179  * @version Introduced in firmware 4.0.10.27
180  * @param tool GoRangeThickness object.
181  * @return A GoRangeThicknessThickness measurement.
182  */
183 GoFx(GoRangeThickness) GoRangeThickness_ThicknessMeasurement(GoRangeThickness tool);
184 
185 #include <GoSdk/Tools/GoRangeTools.x.h>
186 
187 #endif
kBool GoRangeThickness_AbsoluteEnabled(GoRangeThickness tool)
Returns a boolean value representing whether or not the measurement is set to return an absolute valu...
GoDataSource GoRangeTool_SourceOptionAt(GoRangeTool tool, kSize index)
Gets the data source option at the given index.
Declares the base GoTool class.
Represents a range position tool.
Represents a range thickness tool.
kSize GoRangeTool_StreamOptionCount(GoRangeTool tool)
Gets the data stream option list count.
GoDataStream GoRangeTool_StreamOptionAt(GoRangeTool tool, kSize index)
Gets the data stream option at the given index.
Represents a data stream which consists of a data step and ID.
Definition: GoSdkDef.h:1249
Represents a data source.
Represents a position Z measurement of a Range Position tool.
Contains various helper functions.
kStatus GoRangeThickness_EnableAbsolute(GoRangeThickness tool, kBool enable)
Enable or disable absolute value measurement output.
GoDataStream GoRangeTool_Stream(GoRangeTool tool)
Gets the data stream.
Essential SDK declarations.
Represents the base tool class.
kStatus GoRangeTool_SetSource(GoRangeTool tool, GoDataSource source)
Sets the data source.
Represents a base range tool.
GoRangeThickness GoRangeThickness_ThicknessMeasurement(GoRangeThickness tool)
Returns a range thickness tool Thickness measurement object.
kSize GoRangeTool_SourceOptionCount(GoRangeTool tool)
Gets the data source option list count.
GoRangePositionZ GoRangePosition_ZMeasurement(GoRangePosition tool)
Returns a range position tool Z measurement object.
kStatus GoRangeTool_SetStream(GoRangeTool tool, GoDataStream stream)
Sets the data stream.
GoDataSource GoRangeTool_Source(GoRangeTool tool)
Gets the data source.