Gocator API

- Home
- Types
- Files

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