Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoProfileToolUtils.h
1 /// @cond (Gocator_1x00 || Gocator_2x00)
2 
3 /**
4  * @file GoProfileToolUtils.h
5  * @brief Declares shared profile tool configuration classes.
6  *
7  * @internal
8  * Copyright (C) 2016-2018 by LMI Technologies Inc.
9  * Licensed under the MIT License.
10  * Redistributed files must retain the above copyright notice.
11  */
12 #ifndef GO_PROFILE_TOOL_UTILS_H
13 #define GO_PROFILE_TOOL_UTILS_H
14 
15 #include <GoSdk/GoSdkDef.h>
16 #include <GoSdk/GoUtils.h>
17 kBeginHeader()
18 
19 /**
20  * @class GoProfileRegion
21  * @extends kObject
22  * @ingroup GoSdk-ProfileTools
23  * @brief Represents a profile region used in various profile tools.
24  */
25 typedef kObject GoProfileRegion;
26 
27 /**
28  * Sets the X position.
29  *
30  * @public @memberof GoProfileRegion
31  * @version Introduced in firmware 4.0.10.27
32  * @param region GoProfileRegion object.
33  * @param x The X-position to set.
34  * @return Operation status.
35  */
36 GoFx(kStatus) GoProfileRegion_SetX(GoProfileRegion region, k64f x);
37 
38 /**
39  * Gets the X-position.
40  *
41  * @public @memberof GoProfileRegion
42  * @version Introduced in firmware 4.0.10.27
43  * @param region GoProfileRegion object.
44  * @return The X-position of the region.
45  */
46 GoFx(k64f) GoProfileRegion_X(GoProfileRegion region);
47 
48 /**
49  * Sets the Z-position.
50  *
51  * @public @memberof GoProfileRegion
52  * @version Introduced in firmware 4.0.10.27
53  * @param region GoProfileRegion object.
54  * @param z The Z-position to set.
55  * @return Operation status.
56  */
57 GoFx(kStatus) GoProfileRegion_SetZ(GoProfileRegion region, k64f z);
58 
59 /**
60  * Gets the Z-position.
61  *
62  * @public @memberof GoProfileRegion
63  * @version Introduced in firmware 4.0.10.27
64  * @param region GoProfileRegion object.
65  * @return The Z-position of the region.
66  */
67 GoFx(k64f) GoProfileRegion_Z(GoProfileRegion region);
68 
69 /**
70  * Sets the width.
71  *
72  * @public @memberof GoProfileRegion
73  * @version Introduced in firmware 4.0.10.27
74  * @param region GoProfileRegion object.
75  * @param width The width to set.
76  * @return Operation status.
77  */
78 GoFx(kStatus) GoProfileRegion_SetWidth(GoProfileRegion region, k64f width);
79 
80 /**
81  * Gets the width.
82  *
83  * @public @memberof GoProfileRegion
84  * @version Introduced in firmware 4.0.10.27
85  * @param region GoProfileRegion object.
86  * @return The width of the region.
87  */
88 GoFx(k64f) GoProfileRegion_Width(GoProfileRegion region);
89 
90 /**
91  * Sets the height.
92  *
93  * @public @memberof GoProfileRegion
94  * @version Introduced in firmware 4.0.10.27
95  * @param region GoProfileRegion object.
96  * @param height The height to set.
97  * @return Operation status.
98  */
99 GoFx(kStatus) GoProfileRegion_SetHeight(GoProfileRegion region, k64f height);
100 
101 /**
102  * Gets the height.
103  *
104  * @public @memberof GoProfileRegion
105  * @version Introduced in firmware 4.0.10.27
106  * @param region GoProfileRegion object.
107  * @return The height of the region.
108  */
109 GoFx(k64f) GoProfileRegion_Height(GoProfileRegion region);
110 
111 /**
112 * @class GoProfileFeature
113 * @extends kObject
114 * @ingroup GoSdk-ProfileTools
115 * @brief Represents a profile feature used in various profile tools.
116 */
117 typedef kObject GoProfileFeature;
118 
119 /**
120  * Sets the feature type.
121  *
122  * @public @memberof GoProfileFeature
123  * @version Introduced in firmware 4.0.10.27
124  * @param feature GoProfileFeature object.
125  * @param type GoProfileFeatureType object.
126  * @return Operation status.
127  */
128 GoFx(kStatus) GoProfileFeature_SetType(GoProfileFeature feature, GoProfileFeatureType type);
129 
130 /**
131  * Gets the profile feature type.
132  *
133  * @public @memberof GoProfileFeature
134  * @version Introduced in firmware 4.0.10.27
135  * @param feature GoProfileFeature object.
136  * @return The feature type.
137  */
138 GoFx(GoProfileFeatureType) GoProfileFeature_Type(GoProfileFeature feature);
139 
140 /**
141  * Gets the profile feature region.
142  *
143  * @public @memberof GoProfileFeature
144  * @version Introduced in firmware 4.0.10.27
145  * @param feature GoProfileFeature object.
146  * @return A GoProfileRegion object.
147  */
148 GoFx(GoProfileRegion) GoProfileFeature_Region(GoProfileFeature feature);
149 
150 /**
151  * Enables the region.
152  *
153  * @public @memberof GoProfileRegion
154  * @version Introduced in firmware 4.4.4.14
155  * @param feature GoProfileFeature object.
156  * @param enable kTRUE to use the region, kFALSE otherwise.
157  * @return Operation status.
158  */
159 GoFx(kStatus) GoProfileFeature_EnableRegion(GoProfileFeature feature, kBool enable);
160 
161 /**
162  * Indicates whether the region is enabled.
163  *
164  * @public @memberof GoProfileFeature
165  * @version Introduced in firmware 4.4.4.14
166  * @param feature GoProfileFeature object.
167  * @return kTRUE if the region is enabled and kFALSE otherwise.
168  */
169 GoFx(kBool) GoProfileFeature_RegionEnabled(GoProfileFeature feature);
170 
171 /**
172 * @class GoProfileLine
173 * @extends kObject
174 * @ingroup GoSdk-ProfileTools
175 * @brief Represents a profile line region used in various profile tools.
176 */
177 typedef kObject GoProfileLineRegion;
178 
179 /**
180  * Returns the number of regions.
181  *
182  * @public @memberof GoProfileLine
183  * @version Introduced in firmware 4.0.10.27
184  * @param lineRegion GoProfileLineRegion object.
185  * @return The region count.
186  */
187 GoFx(k32u) GoProfileLineRegion_RegionCount(GoProfileLineRegion lineRegion);
188 
189 /**
190 * Sets the number of regions in use.
191 *
192 * @public @memberof GoProfileLine
193 * @version Introduced in firmware 4.7.11.65
194 * @param lineRegion GoProfileLineRegion object.
195 * @param count number of regions configured
196 * @return Operation status.
197 */
198 GoFx(kStatus) GoProfileLineRegion_SetRegionCount(GoProfileLineRegion lineRegion, kSize count);
199 
200 /**
201  * Gets the profile region based on the given index.
202  *
203  * @public @memberof GoProfileLine
204  * @version Introduced in firmware 4.0.10.27
205  * @param lineRegion GoProfileLineRegion object.
206  * @param index The index of the profile region to return.
207  * @return The profile region.
208  * @see GoProfileLineRegion_RegionCount
209  */
210 GoFx(GoProfileRegion) GoProfileLineRegion_RegionAt(GoProfileLineRegion lineRegion, kSize index);
211 
212 /**
213  * Enables the region.
214  *
215  * @public @memberof GoProfileRegion
216  * @version Introduced in firmware 4.4.4.14
217  * @param lineRegion GoProfileLineRegion object.
218  * @param index The region index of which to modify.
219  * @param enable kTRUE to use the region, kFALSE otherwise.
220  * @return Operation status.
221  */
222 GoFx(kStatus) GoProfileLineRegion_EnableRegionAt(GoProfileLineRegion lineRegion, kSize index, kBool enable);
223 
224 /**
225  * Indicates whether the region is enabled.
226  *
227  * @public @memberof GoProfileLineRegion
228  * @version Introduced in firmware 4.4.4.14
229  * @param lineRegion GoProfileLineRegion object.
230  * @param index The region index to retrieve the enabled state from.
231  * @return kTRUE if the region is enabled and kFALSE otherwise.
232  */
233 GoFx(kBool) GoProfileLineRegion_RegionEnabledAt(GoProfileLineRegion lineRegion, kSize index);
234 
235 /**
236 * @class GoProfileEdge
237 * @extends kObject
238 * @ingroup GoSdk-ProfileTools
239 * @brief Represents a profile edge used in various profile tools.
240 */
241 typedef kObject GoProfileEdge;
242 
243 /**
244  * Sets the profile edge type.
245  *
246  * @public @memberof GoProfileEdge
247  * @version Introduced in firmware 4.0.10.27
248  * @param edge GoProfileEdge object.
249  * @param type The type of the profile edge.
250  * @return Operation status.
251  */
252 GoFx(kStatus) GoProfileEdge_SetType(GoProfileEdge edge, GoProfileEdgeType type);
253 
254 /**
255  * Gets the profile edge type.
256  *
257  * @public @memberof GoProfileEdge
258  * @version Introduced in firmware 4.0.10.27
259  * @param edge GoProfileEdge object.
260  * @return The profile edge type.
261  */
262 GoFx(GoProfileEdgeType) GoProfileEdge_Type(GoProfileEdge edge);
263 
264 /**
265  * Gets the profile region.
266  *
267  * @public @memberof GoProfileEdge
268  * @version Introduced in firmware 4.0.10.27
269  * @param edge GoProfileEdge object.
270  * @return The profile region.
271  */
272 GoFx(GoProfileRegion) GoProfileEdge_Region(GoProfileEdge edge);
273 
274 /**
275  * Enables the region.
276  *
277  * @public @memberof GoProfileRegion
278  * @version Introduced in firmware 4.4.4.14
279  * @param edge GoProfileEdge object.
280  * @param enable kTRUE to use the region, kFALSE otherwise.
281  * @return Operation status.
282  */
283 GoFx(kStatus) GoProfileEdge_EnableRegion(GoProfileEdge edge, kBool enable);
284 
285 /**
286  * Indicates whether the region is enabled.
287  *
288  * @public @memberof GoProfileEdge
289  * @version Introduced in firmware 4.4.4.14
290  * @param edge GoProfileEdge object.
291  * @return kTRUE if the region is enabled and kFALSE otherwise.
292  */
293 GoFx(kBool) GoProfileEdge_RegionEnabled(GoProfileEdge edge);
294 
295 /**
296  * Sets the maximum void width.
297  *
298  * @public @memberof GoProfileEdge
299  * @version Introduced in firmware 4.0.10.27
300  * @param edge GoProfileEdge object.
301  * @param width The width to set for the maximum void width.
302  * @return Operation status.
303  */
304 GoFx(kStatus) GoProfileEdge_SetVoidWidthMax(GoProfileEdge edge, k64f width);
305 
306 /**
307  * Gets the maximum void width.
308  *
309  * @public @memberof GoProfileEdge
310  * @version Introduced in firmware 4.0.10.27
311  * @param edge GoProfileEdge object.
312  * @return Maximum void width.
313  */
314 GoFx(k64f) GoProfileEdge_VoidWidthMax(GoProfileEdge edge);
315 
316 /**
317  * Sets the minimum depth.
318  *
319  * @public @memberof GoProfileEdge
320  * @version Introduced in firmware 4.0.10.27
321  * @param edge GoProfileEdge object.
322  * @param depth The minimum depth.
323  * @return Operation status.
324  */
325 GoFx(kStatus) GoProfileEdge_SetDepthMin(GoProfileEdge edge, k64f depth);
326 
327 /**
328  * Gets the minimum depth.
329  *
330  * @public @memberof GoProfileEdge
331  * @version Introduced in firmware 4.0.10.27
332  * @param edge GoProfileEdge object.
333  * @return The minimum depth.
334  */
335 GoFx(k64f) GoProfileEdge_DepthMin(GoProfileEdge edge);
336 
337 /**
338  * Sets the surface width.
339  *
340  * @public @memberof GoProfileEdge
341  * @version Introduced in firmware 4.0.10.27
342  * @param edge GoProfileEdge object.
343  * @param width The surface width.
344  * @return Operation status.
345  */
346 GoFx(kStatus) GoProfileEdge_SetSurfaceWidth(GoProfileEdge edge, k64f width);
347 
348 /**
349  * Gets the surface width.
350  *
351  * @public @memberof GoProfileEdge
352  * @version Introduced in firmware 4.0.10.27
353  * @param edge GoProfileEdge object.
354  * @return The surface width.
355  */
356 GoFx(k64f) GoProfileEdge_SurfaceWidth(GoProfileEdge edge);
357 
358 /**
359  * Sets the surface offset.
360  *
361  * @public @memberof GoProfileEdge
362  * @version Introduced in firmware 4.0.10.27
363  * @param edge GoProfileEdge object.
364  * @param offset The surface offset.
365  * @return Operation status.
366  */
367 GoFx(kStatus) GoProfileEdge_SetSurfaceOffset(GoProfileEdge edge, k64f offset);
368 
369 /**
370  * Gets the surface offset.
371  *
372  * @public @memberof GoProfileEdge
373  * @version Introduced in firmware 4.0.10.27
374  * @param edge GoProfileEdge object.
375  * @return The surface offset.
376  */
377 GoFx(k64f) GoProfileEdge_SurfaceOffset(GoProfileEdge edge);
378 
379 /**
380  * Sets the nominal radius.
381  *
382  * @public @memberof GoProfileEdge
383  * @version Introduced in firmware 4.0.10.27
384  * @param edge GoProfileEdge object.
385  * @param radius The nominal radius.
386  * @return Operation status.
387  */
388 GoFx(kStatus) GoProfileEdge_SetNominalRadius(GoProfileEdge edge, k64f radius);
389 
390 /**
391  * Gets the nominal radius.
392  *
393  * @public @memberof GoProfileEdge
394  * @version Introduced in firmware 4.0.10.27
395  * @param edge GoProfileEdge object.
396  * @return The nominal radius.
397  */
398 GoFx(k64f) GoProfileEdge_NominalRadius(GoProfileEdge edge);
399 
400 /**
401  * Sets the edge angle.
402  *
403  * @public @memberof GoProfileEdge
404  * @version Introduced in firmware 4.0.10.27
405  * @param edge GoProfileEdge object.
406  * @param angle k64f object.
407  * @return Operation status.
408  */
409 GoFx(kStatus) GoProfileEdge_SetEdgeAngle(GoProfileEdge edge, k64f angle);
410 
411 /**
412  * Gets the edge angle.
413  *
414  * @public @memberof GoProfileEdge
415  * @version Introduced in firmware 4.0.10.27
416  * @param edge GoProfileEdge object.
417  * @return The edge angle.
418  */
419 GoFx(k64f) GoProfileEdge_EdgeAngle(GoProfileEdge edge);
420 
421 
422 kEndHeader()
423 #include <GoSdk/Tools/GoProfileToolUtils.x.h>
424 
425 #endif
426 /// @endcond
Contains various helper functions.
Essential SDK declarations.