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 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  * Gets the profile region based on the given index.
191  *
192  * @public @memberof GoProfileLine
193  * @version Introduced in firmware 4.0.10.27
194  * @param lineRegion GoProfileLineRegion object.
195  * @param index The index of the profile region to return.
196  * @return The profile region.
197  * @see GoProfileLineRegion_RegionCount
198  */
199 GoFx(GoProfileRegion) GoProfileLineRegion_RegionAt(GoProfileLineRegion lineRegion, kSize index);
200 
201 /**
202  * Enables the region.
203  *
204  * @public @memberof GoProfileRegion
205  * @version Introduced in firmware 4.4.4.14
206  * @param lineRegion GoProfileLineRegion object.
207  * @param index The region index of which to modify.
208  * @param enable kTRUE to use the region, kFALSE otherwise.
209  * @return Operation status.
210  */
211 GoFx(kStatus) GoProfileLineRegion_EnableRegionAt(GoProfileLineRegion lineRegion, kSize index, kBool enable);
212 
213 /**
214  * Indicates whether the region is enabled.
215  *
216  * @public @memberof GoProfileLineRegion
217  * @version Introduced in firmware 4.4.4.14
218  * @param lineRegion GoProfileLineRegion object.
219  * @param index The region index to retrieve the enabled state from.
220  * @return kTRUE if the region is enabled and kFALSE otherwise.
221  */
222 GoFx(kBool) GoProfileLineRegion_RegionEnabledAt(GoProfileLineRegion lineRegion, kSize index);
223 
224 /**
225 * @class GoProfileEdge
226 * @extends kObject
227 * @ingroup GoSdk-ProfileTools
228 * @brief Represents a profile edge used in various profile tools.
229 */
230 typedef kObject GoProfileEdge;
231 
232 /**
233  * Sets the profile edge type.
234  *
235  * @public @memberof GoProfileEdge
236  * @version Introduced in firmware 4.0.10.27
237  * @param edge GoProfileEdge object.
238  * @param type The type of the profile edge.
239  * @return Operation status.
240  */
241 GoFx(kStatus) GoProfileEdge_SetType(GoProfileEdge edge, GoProfileEdgeType type);
242 
243 /**
244  * Gets the profile edge type.
245  *
246  * @public @memberof GoProfileEdge
247  * @version Introduced in firmware 4.0.10.27
248  * @param edge GoProfileEdge object.
249  * @return The profile edge type.
250  */
251 GoFx(GoProfileEdgeType) GoProfileEdge_Type(GoProfileEdge edge);
252 
253 /**
254  * Gets the profile region.
255  *
256  * @public @memberof GoProfileEdge
257  * @version Introduced in firmware 4.0.10.27
258  * @param edge GoProfileEdge object.
259  * @return The profile region.
260  */
261 GoFx(GoProfileRegion) GoProfileEdge_Region(GoProfileEdge edge);
262 
263 /**
264  * Enables the region.
265  *
266  * @public @memberof GoProfileRegion
267  * @version Introduced in firmware 4.4.4.14
268  * @param edge GoProfileEdge object.
269  * @param enable kTRUE to use the region, kFALSE otherwise.
270  * @return Operation status.
271  */
272 GoFx(kStatus) GoProfileEdge_EnableRegion(GoProfileEdge edge, kBool enable);
273 
274 /**
275  * Indicates whether the region is enabled.
276  *
277  * @public @memberof GoProfileEdge
278  * @version Introduced in firmware 4.4.4.14
279  * @param edge GoProfileEdge object.
280  * @return kTRUE if the region is enabled and kFALSE otherwise.
281  */
282 GoFx(kBool) GoProfileEdge_RegionEnabled(GoProfileEdge edge);
283 
284 /**
285  * Sets the maximum void width.
286  *
287  * @public @memberof GoProfileEdge
288  * @version Introduced in firmware 4.0.10.27
289  * @param edge GoProfileEdge object.
290  * @param width The width to set for the maximum void width.
291  * @return Operation status.
292  */
293 GoFx(kStatus) GoProfileEdge_SetVoidWidthMax(GoProfileEdge edge, k64f width);
294 
295 /**
296  * Gets the maximum void width.
297  *
298  * @public @memberof GoProfileEdge
299  * @version Introduced in firmware 4.0.10.27
300  * @param edge GoProfileEdge object.
301  * @return Maximum void width.
302  */
303 GoFx(k64f) GoProfileEdge_VoidWidthMax(GoProfileEdge edge);
304 
305 /**
306  * Sets the minimum depth.
307  *
308  * @public @memberof GoProfileEdge
309  * @version Introduced in firmware 4.0.10.27
310  * @param edge GoProfileEdge object.
311  * @param depth The minimum depth.
312  * @return Operation status.
313  */
314 GoFx(kStatus) GoProfileEdge_SetDepthMin(GoProfileEdge edge, k64f depth);
315 
316 /**
317  * Gets the minimum depth.
318  *
319  * @public @memberof GoProfileEdge
320  * @version Introduced in firmware 4.0.10.27
321  * @param edge GoProfileEdge object.
322  * @return The minimum depth.
323  */
324 GoFx(k64f) GoProfileEdge_DepthMin(GoProfileEdge edge);
325 
326 /**
327  * Sets the surface width.
328  *
329  * @public @memberof GoProfileEdge
330  * @version Introduced in firmware 4.0.10.27
331  * @param edge GoProfileEdge object.
332  * @param width The surface width.
333  * @return Operation status.
334  */
335 GoFx(kStatus) GoProfileEdge_SetSurfaceWidth(GoProfileEdge edge, k64f width);
336 
337 /**
338  * Gets the surface width.
339  *
340  * @public @memberof GoProfileEdge
341  * @version Introduced in firmware 4.0.10.27
342  * @param edge GoProfileEdge object.
343  * @return The surface width.
344  */
345 GoFx(k64f) GoProfileEdge_SurfaceWidth(GoProfileEdge edge);
346 
347 /**
348  * Sets the surface offset.
349  *
350  * @public @memberof GoProfileEdge
351  * @version Introduced in firmware 4.0.10.27
352  * @param edge GoProfileEdge object.
353  * @param offset The surface offset.
354  * @return Operation status.
355  */
356 GoFx(kStatus) GoProfileEdge_SetSurfaceOffset(GoProfileEdge edge, k64f offset);
357 
358 /**
359  * Gets the surface offset.
360  *
361  * @public @memberof GoProfileEdge
362  * @version Introduced in firmware 4.0.10.27
363  * @param edge GoProfileEdge object.
364  * @return The surface offset.
365  */
366 GoFx(k64f) GoProfileEdge_SurfaceOffset(GoProfileEdge edge);
367 
368 /**
369  * Sets the nominal radius.
370  *
371  * @public @memberof GoProfileEdge
372  * @version Introduced in firmware 4.0.10.27
373  * @param edge GoProfileEdge object.
374  * @param radius The nominal radius.
375  * @return Operation status.
376  */
377 GoFx(kStatus) GoProfileEdge_SetNominalRadius(GoProfileEdge edge, k64f radius);
378 
379 /**
380  * Gets the nominal radius.
381  *
382  * @public @memberof GoProfileEdge
383  * @version Introduced in firmware 4.0.10.27
384  * @param edge GoProfileEdge object.
385  * @return The nominal radius.
386  */
387 GoFx(k64f) GoProfileEdge_NominalRadius(GoProfileEdge edge);
388 
389 /**
390  * Sets the edge angle.
391  *
392  * @public @memberof GoProfileEdge
393  * @version Introduced in firmware 4.0.10.27
394  * @param edge GoProfileEdge object.
395  * @param angle k64f object.
396  * @return Operation status.
397  */
398 GoFx(kStatus) GoProfileEdge_SetEdgeAngle(GoProfileEdge edge, k64f angle);
399 
400 /**
401  * Gets the edge angle.
402  *
403  * @public @memberof GoProfileEdge
404  * @version Introduced in firmware 4.0.10.27
405  * @param edge GoProfileEdge object.
406  * @return The edge angle.
407  */
408 GoFx(k64f) GoProfileEdge_EdgeAngle(GoProfileEdge edge);
409 
410 
411 kEndHeader()
412 #include <GoSdk/Tools/GoProfileToolUtils.x.h>
413 
414 #endif
415 /// @endcond
Contains various helper functions.
Essential SDK declarations.