Gocator API

- Home
- Topics
- Types
- Files

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