Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoExtTool.h
1 ///@cond private
2 
3 /**
4  * @file GoExtTool.h
5  * @brief Declares the base GoExtTool class.
6  *
7  * @internal
8  * Copyright (C) 2015 by LMI Technologies Inc.
9  * Licensed under the MIT License.
10  * Redistributed files must retain the above copyright notice.
11  */
12 #ifndef GO_EXT_TOOL_H
13 #define GO_EXT_TOOL_H
14 
15 #include <GoSdk/GoSdkDef.h>
16 #include <GoSdk/Tools/GoTool.h>
17 #include <kApi/Data/kXml.h>
18 kBeginHeader()
19 
20 /**
21  * @class GoExtTool
22  * @extends GoTool
23  * @ingroup GoSdk-Tools
24  * @brief Represents an extensible tool.
25  */
26 typedef GoTool GoExtTool;
27 
28 /**
29  * Returns the measurement count.
30  *
31  * @public @memberof GoExtTool
32  * @param tool GoExtTool object.
33  * @return The measurement count.
34  */
35 GoFx(kSize) GoExtTool_MeasurementCount(GoExtTool tool);
36 
37 /**
38  * Retrieves the measurement at the given index.
39  *
40  * @public @memberof GoExtTool
41  * @param tool GoExtTool object.
42  * @param index The index of the measurement.
43  * @return The measurement at the given index or kNULL if an invalid index is provided.
44  */
45 GoFx(GoMeasurement) GoExtTool_MeasurementAt(GoExtTool tool, kSize index);
46 
47 /**
48 * Sets the name of the tool.
49 *
50 * @public @memberof GoExtTool
51 * @param tool GoExtTool object.
52 * @param name The name to be set for the tool.
53 * @return Operation status.
54 */
55 GoFx(kStatus) GoExtTool_SetDisplayName(GoExtTool tool, const kChar* name);
56 
57 /**
58  * Retrieves the display name of the tool.
59  *
60  * @public @memberof GoExtTool
61  * @param tool GoExtTool object.
62  * @return The tool display name.
63  */
64 GoFx(const kChar*) GoExtTool_DisplayName(GoExtTool tool);
65 
66 /**
67  * Retrieves the name of the tool.
68  *
69  * @public @memberof GoExtTool
70  * @param tool GoExtTool object.
71  * @param type Receives the type of the custom tool.
72  * @param capacity The maximum capacity of the name array.
73  * @return Operation status.
74  */
75 GoFx(kStatus) GoExtTool_Type(GoExtTool tool, kChar* type, kSize capacity);
76 
77 /**
78  * Sets the data source.
79  *
80  * @public @memberof GoExtTool
81  * @param tool GoExtTool object.
82  * @param source GoDataSource object.
83  * @return Operation status.
84  * @see GoExtTool_IntensitySupportEnabled
85  */
86 GoFx(kStatus) GoExtTool_SetSource(GoExtTool tool, GoDataSource source);
87 
88 /**
89  * Gets the data source.
90  *
91  * @public @memberof GoExtTool
92  * @param tool GoExtTool object.
93  * @return The data source.
94  */
95 GoFx(GoDataSource) GoExtTool_Source(GoExtTool tool);
96 
97 /**
98  * Gets the data source option list count.
99  *
100  * @public @memberof GoExtTool
101  * @param tool GoExtTool object.
102  * @return The current tool data source option list count.
103  */
104 GoFx(kSize) GoExtTool_SourceOptionCount(GoExtTool tool);
105 
106 /**
107  * Gets the data source option at the given index.
108  *
109  * @public @memberof GoExtTool
110  * @param tool GoExtTool object.
111  * @param index The index of the option list to access.
112  * @return The tool data source option at the given index, or k32U_MAX if an invalid index is given.
113  */
114 GoFx(k32u) GoExtTool_SourceOptionAt(GoExtTool tool, kSize index);
115 
116 /**
117  * Returns a boolean value representing whether the tool supports anchoring.
118  *
119  * @public @memberof GoExtTool
120  * @param tool GoExtTool object.
121  * @return kTRUE if supported, kFALSE if not.
122  */
123 GoFx(kBool) GoExtTool_XAnchorSupportEnabled(GoExtTool tool);
124 
125 /**
126  * Gets the X-anchoring option list count.
127  *
128  * @public @memberof GoExtTool
129  *
130  * @param tool GoExtTool object.
131  * @return The X-anchoring option list count.
132  */
133 GoFx(kSize) GoExtTool_XAnchorOptionCount(GoExtTool tool);
134 
135 /**
136  * Gets the X-anchoring option at the given index.
137  *
138  * @public @memberof GoExtTool
139  *
140  * @param tool GoExtTool object.
141  * @param index The index of the option list to access.
142  * @return The X-anchoring option at the given index or k32U_MAX if invalid.
143  */
144 GoFx(k32u) GoExtTool_XAnchorOptionAt(GoExtTool tool, kSize index);
145 
146 /**
147  * Gets the current X-anchoring source.
148  *
149  * @public @memberof GoExtTool
150  *
151  * @param tool GoExtTool object.
152  * @return The X-anchoring source or -1 if no source is currently set.
153  */
154 GoFx(k32s) GoExtTool_XAnchor(GoExtTool tool);
155 
156 /**
157  * Sets the X-anchoring source.
158  *
159  * @public @memberof GoExtTool
160  *
161  * @param tool GoExtTool object.
162  * @param id The measurement ID of a valid X-anchoring source.
163  * @return Operation status.
164  * @see GoExtTool_AnchorSupportEnabled
165  */
166 GoFx(kStatus) GoExtTool_SetXAnchor(GoExtTool tool, k32s id);
167 
168 /**
169  * Returns a boolean value representing whether or not a valid X-anchoring source has been set for X-anchoring.
170  *
171  * @public @memberof GoExtTool
172  *
173  * @param tool GoExtTool object.
174  * @return kTRUE if a valid anchoring source is currently set and kFALSE otherwise.
175  * @see GoExtTool_AnchorSupportEnabled
176  */
177 GoFx(kBool) GoExtTool_XAnchorEnabled(GoExtTool tool);
178 
179 /// @cond (Gocator_3x00)
180 
181 /**
182  * Gets the Y-anchoring option list count.
183  *
184  * @public @memberof GoExtTool
185  *
186  * @param tool GoExtTool object.
187  * @return The Y-anchoring option list count.
188  */
189 GoFx(kSize) GoExtTool_YAnchorOptionCount(GoExtTool tool);
190 
191 /**
192  * Gets the Y-anchoring option at the given index.
193  *
194  * @public @memberof GoExtTool
195  *
196  * @param tool GoExtTool object.
197  * @param index The index of the option list to access.
198  * @return The Y-anchoring option at the given index or k32U_MAX if invalid.
199  */
200 GoFx(k32u) GoExtTool_YAnchorOptionAt(GoExtTool tool, kSize index);
201 
202 /**
203  * Gets the current Y-anchoring source.
204  *
205  * @public @memberof GoExtTool
206  *
207  * @param tool GoExtTool object.
208  * @return The Y-anchoring source or -1 if no source is currently set.
209  */
210 GoFx(k32s) GoExtTool_YAnchor(GoExtTool tool);
211 
212 /**
213  * Sets the Y-anchoring source.
214  *
215  * @public @memberof GoExtTool
216  * @param tool GoExtTool object.
217  * @param id The measurement ID of a valid Y-anchoring source.
218  * @return Operation status.
219  * @see GoExtTool_AnchorSupportEnabled, GoExtTool_Type
220  */
221 GoFx(kStatus) GoExtTool_SetYAnchor(GoExtTool tool, k32s id);
222 
223 /**
224  * Returns a boolean value representing whether or not a valid Y-anchoring source has been set for Y-anchoring.
225  *
226  * @public @memberof GoExtTool
227  * @param tool GoExtTool object.
228  * @return kTRUE if a valid anchoring source is currently set and kFALSE otherwise.
229  * @see GoExtTool_AnchorSupportEnabled, GoExtTool_Type
230  */
231 GoFx(kBool) GoExtTool_YAnchorEnabled(GoExtTool tool);
232 
233 /// @endcond
234 
235 /// @cond (Gocator_2x00 || Gocator_3x00)
236 
237 /**
238  * Gets the Z-anchoring option list count.
239  *
240  * @public @memberof GoExtTool
241  * @param tool GoExtTool object.
242  * @return The X-anchoring option list count.
243  */
244 GoFx(kSize) GoExtTool_ZAnchorOptionCount(GoExtTool tool);
245 
246 /**
247  * Gets the Z-anchoring option at the given index.
248  *
249  * @public @memberof GoExtTool
250  * @param tool GoExtTool object.
251  * @param index The index of the option list to access.
252  * @return The Z-anchoring option at the given index or k32U_MAX if invalid.
253  */
254 GoFx(k32u) GoExtTool_ZAnchorOptionAt(GoExtTool tool, kSize index);
255 
256 /**
257  * Gets the current Z-anchoring source.
258  *
259  * @public @memberof GoExtTool
260  * @param tool GoExtTool object.
261  * @return The Z-anchoring source or -1 if no source is currently set.
262  */
263 GoFx(k32s) GoExtTool_ZAnchor(GoExtTool tool);
264 
265 /**
266  * Sets the Z-anchoring source.
267  *
268  * @public @memberof GoExtTool
269  * @param tool GoExtTool object.
270  * @param id The measurement ID of a valid Z-anchoring source.
271  * @return Operation status.
272  * @see GoExtTool_AnchorSupportEnabled, GoExtTool_Type
273  */
274 GoFx(kStatus) GoExtTool_SetZAnchor(GoExtTool tool, k32s id);
275 
276 /**
277  * Returns a boolean value representing whether or not a valid Z-anchoring source has been set for Z-anchoring.
278  *
279  * @public @memberof GoExtTool
280  * @param tool GoExtTool object.
281  * @return kTRUE if a valid anchoring source is currently set and kFALSE otherwise.
282  * @see GoExtTool_AnchorSupportEnabled, GoExtTool_Type
283  */
284 GoFx(kBool) GoExtTool_ZAnchorEnabled(GoExtTool tool);
285 
286 /// @endcond
287 
288 /**
289  * Retrieves the first found instance of a measurement for a given enumeration type.
290  *
291  * @public @memberof GoExtTo
292  * @param tool GoExtTool object.
293  * @param name The name of the measurement to retrieve.
294  * @return A measurement object if one is found, otherwise kNULL.
295  */
296 GoFx(GoMeasurement) GoExtTool_FindMeasurementByName(GoExtTool tool, const kChar* name);
297 
298 GoFx(kSize) GoExtTool_ParameterCount(GoExtTool tool);
299 GoFx(GoExtParam) GoExtTool_ParameterAt(GoExtTool tool, kSize index);
300 GoFx(GoExtParam) GoExtTool_FindParameterById(GoExtTool tool, const kChar* label);
301 
302 kEndHeader()
303 #include <GoSdk/Tools/GoExtTool.x.h>
304 
305 #endif
306 
307 ///@endcond
Declares the base GoTool class.
Represents the base class for a tool measurement or script output.
Represents a data source.
Essential SDK declarations.
Represents the base tool class.