Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoRangeTools.h
1 /// @cond Gocator_1x00
2 /**
3  * @file GoRangeTools.h
4  * @brief Declares all range tools and their related classes.
5  *
6  * @internal
7  * Copyright (C) 2015 by LMI Technologies Inc.
8  * Licensed under the MIT License.
9  * Redistributed files must retain the above copyright notice.
10  */
11 #ifndef GO_RANGE_TOOLS_H
12 #define GO_RANGE_TOOLS_H
13 
14 #include <GoSdk/GoSdkDef.h>
15 #include <GoSdk/GoUtils.h>
16 #include <GoSdk/Tools/GoTool.h>
17 kBeginHeader()
18 
19 /**
20  * @class GoRangeTool
21  * @extends GoTool
22  * @ingroup GoSdk-RangeTools
23  * @brief Represents a base range tool.
24  */
25 typedef GoTool GoRangeTool;
26 
27 /**
28  * Sets the data source. Note that source validation will only occur if tool
29  * is in the tool options list.
30  *
31  * @public @memberof GoRangeTool
32  * @version Introduced in firmware 4.0.10.27
33  * @param tool GoRangeTool object.
34  * @param source GoDataSource object.
35  * @return Operation status.
36  * @see GoTools_ToolOptionCount, GoTools_ToolOptionAt
37  */
38 GoFx(kStatus) GoRangeTool_SetSource(GoRangeTool tool, GoDataSource source);
39 
40 /**
41  * Gets the data source.
42  *
43  * @public @memberof GoRangeTool
44  * @version Introduced in firmware 4.0.10.27
45  * @param tool GoRangeTool object.
46  * @return The data source.
47  */
48 GoFx(GoDataSource) GoRangeTool_Source(GoRangeTool tool);
49 
50 /**
51  * Gets the data source option list count.
52  *
53  * @public @memberof GoRangeTool
54  * @version Introduced in firmware 4.0.10.27
55  * @param tool GoRangeTool object.
56  * @return The data source option list count.
57  */
58 GoFx(kSize) GoRangeTool_SourceOptionCount(GoRangeTool tool);
59 
60 /**
61  * Gets the data source option at the given index.
62  *
63  * @public @memberof GoRangeTool
64  * @version Introduced in firmware 4.0.10.27
65  * @param tool GoRangeTool object.
66  * @param index The index with which to retrieve a data source option.
67  * @return The data source option at the given index or k32U_MAX if an invalid index is given.
68  */
69 GoFx(GoDataSource) GoRangeTool_SourceOptionAt(GoRangeTool tool, kSize index);
70 
71 /**
72  * @class GoRangePosition
73  * @extends GoRangeTool
74  * @ingroup GoSdk-RangeTools
75  * @brief Represents a range position tool.
76  */
77 typedef GoRangeTool GoRangePosition;
78 
79 /**
80  * Returns a range position tool Z measurement object.
81  *
82  * @public @memberof GoRangePosition
83  * @version Introduced in firmware 4.0.10.27
84  * @param tool GoRangePosition object.
85  * @return A GoRangePositionZ measurement.
86  */
87 GoFx(GoRangePositionZ) GoRangePosition_ZMeasurement(GoRangePosition tool);
88 
89 /**
90  * @class GoRangeThickness
91  * @extends GoRangeTool
92  * @ingroup GoSdk-RangeTools
93  * @brief Represents a range thickness tool.
94  */
95 typedef GoRangeTool GoRangeThickness;
96 
97 /**
98  * Returns a boolean value representing whether or not the measurement is set to return an absolute value.
99  *
100  * @public @memberof GoRangePosition
101  * @version Introduced in firmware 4.0.10.27
102  * @param tool GoRangePosition object.
103  * @return kTRUE if enabled and kFALSE otherwise.
104  */
105 GoFx(kBool) GoRangeThickness_AbsoluteEnabled(GoRangeThickness tool);
106 
107 /**
108  * Enable or disable absolute value measurement output.
109  *
110  * @public @memberof GoRangePosition
111  * @version Introduced in firmware 4.0.10.27
112  * @param tool GoRangePosition object.
113  * @param enable kTRUE to enable absolute value and kFALSE to disable it.
114  * @return Operation status.
115  */
116 GoFx(kStatus) GoRangeThickness_EnableAbsolute(GoRangeThickness tool, kBool enable);
117 
118 /**
119  * Returns a range thickness tool Thickness measurement object.
120  *
121  * @public @memberof GoRangeThickness
122  * @version Introduced in firmware 4.0.10.27
123  * @param tool GoRangeThickness object.
124  * @return A GoRangeThicknessThickness measurement.
125  */
126 GoFx(GoRangeThickness) GoRangeThickness_ThicknessMeasurement(GoRangeThickness tool);
127 
128 kEndHeader()
129 
130 #include <GoSdk/Tools/GoRangeTools.x.h>
131 
132 #endif
133 /// @endcond
Declares the base GoTool class.
Represents a data source.
Contains various helper functions.
Essential SDK declarations.
Represents the base tool class.