Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoSurfaceToolUtils.h
Go to the documentation of this file.
1 /// @cond (Gocator_2x00 || Gocator_3x00)
2 /**
3  * @file GoSurfaceToolUtils.h
4  * @brief Declares all surface tools and their related classes.
5  *
6  * @internal
7  * Copyright (C) 2016 by LMI Technologies Inc.
8  * Licensed under the MIT License.
9  * Redistributed files must retain the above copyright notice.
10  */
11 
12 #ifndef GO_SURFACE_TOOL_UTILS_H
13 #define GO_SURFACE_TOOL_UTILS_H
14 
15 #include <GoSdk/GoSdkDef.h>
16 #include <GoSdk/GoUtils.h>
17 #include <GoSdk/Tools/GoFeature.h>
18 
19 kBeginHeader()
20 
21 /**
22 * @class GoSurfaceRegion2d
23 * @extends kObject
24 * @ingroup GoSdk-SurfaceTools
25 * @brief Represents a two dimensional surface tool region.
26 */
27 typedef kObject GoSurfaceRegion2d;
28 
29 /**
30  * Sets the X position.
31  *
32  * @public @memberof GoSurfaceRegion2d
33  * @version Introduced in firmware 4.0.10.27
34  * @param region GoSurfaceRegion2d object.
35  * @param x The X position to set.
36  * @return Operation status.
37  */
38 GoFx(kStatus) GoSurfaceRegion2d_SetX(GoSurfaceRegion2d region, k64f x);
39 
40 /**
41  * Gets the X position.
42  *
43  * @public @memberof GoSurfaceRegion2d
44  * @version Introduced in firmware 4.0.10.27
45  * @param region GoSurfaceRegion2d object.
46  * @return The X position of the region.
47  */
48 GoFx(k64f) GoSurfaceRegion2d_X(GoSurfaceRegion2d region);
49 
50 /**
51  * Sets the Y position.
52  *
53  * @public @memberof GoSurfaceRegion2d
54  * @version Introduced in firmware 4.0.10.27
55  * @param region GoSurfaceRegion2d object.
56  * @param value The Y position to set.
57  * @return Operation status.
58  */
59 GoFx(kStatus) GoSurfaceRegion2d_SetY(GoSurfaceRegion2d region, k64f value);
60 
61 /**
62  * Gets the Y position.
63  *
64  * @public @memberof GoSurfaceRegion2d
65  * @version Introduced in firmware 4.0.10.27
66  * @param region GoSurfaceRegion2d object.
67  * @return The Y position of the region.
68  */
69 GoFx(k64f) GoSurfaceRegion2d_Y(GoSurfaceRegion2d region);
70 
71 /**
72  * Sets the width.
73  *
74  * @public @memberof GoSurfaceRegion2d
75  * @version Introduced in firmware 4.0.10.27
76  * @param region GoSurfaceRegion2d object.
77  * @param width The width to set.
78  * @return Operation status.
79  */
80 GoFx(kStatus) GoSurfaceRegion2d_SetWidth(GoSurfaceRegion2d region, k64f width);
81 
82 /**
83  * Gets the width.
84  *
85  * @public @memberof GoSurfaceRegion2d
86  * @version Introduced in firmware 4.0.10.27
87  * @param region GoSurfaceRegion2d object.
88  * @return The width of the region.
89  */
90 GoFx(k64f) GoSurfaceRegion2d_Width(GoSurfaceRegion2d region);
91 
92 /**
93  * Sets the length.
94  *
95  * @public @memberof GoSurfaceRegion2d
96  * @version Introduced in firmware 4.0.10.27
97  * @param region GoSurfaceRegion2d object.
98  * @param length The length to set.
99  * @return Operation status.
100  */
101 GoFx(kStatus) GoSurfaceRegion2d_SetLength(GoSurfaceRegion2d region, k64f length);
102 
103 /**
104  * Gets the length.
105  *
106  * @public @memberof GoSurfaceRegion2d
107  * @version Introduced in firmware 4.0.10.27
108  * @param region GoSurfaceRegion2d object.
109  * @return The length of the region.
110  */
111 GoFx(k64f) GoSurfaceRegion2d_Length(GoSurfaceRegion2d region);
112 
113 /**
114 * Sets the length.
115 *
116 * @public @memberof GoSurfaceRegion2d
117 * @version Introduced in firmware 4.0.10.27
118 * @param region GoSurfaceRegion2d object.
119 * @param zAngle The zAngle to set.
120 * @return Operation status.
121 */
122 GoFx(kStatus) GoSurfaceRegion2d_SetZAngle(GoSurfaceRegion2d region, k64f zAngle);
123 
124 /**
125 * Gets the length.
126 *
127 * @public @memberof GoSurfaceRegion2d
128 * @version Introduced in firmware 4.0.10.27
129 * @param region GoSurfaceRegion2d object.
130 * @return The zAngle of the region.
131 */
132 GoFx(k64f) GoSurfaceRegion2d_ZAngle(GoSurfaceRegion2d region);
133 
134 
135 /**
136 * @class GoRegion3d
137 * @extends kObject
138 * @ingroup GoSdk-SurfaceTools
139 * @brief Represents a three dimensional surface region.
140 */
141 typedef kObject GoRegion3d;
142 
143 /**
144  * Sets the X position.
145  *
146  * @public @memberof GoRegion3d
147  * @version Introduced in firmware 4.0.10.27
148  * @param region GoRegion3d object.
149  * @param x The X position to set.
150  * @return Operation status.
151  */
152 GoFx(kStatus) GoRegion3d_SetX(GoRegion3d region, k64f x);
153 
154 /**
155  * Gets the X position.
156  *
157  * @public @memberof GoRegion3d
158  * @version Introduced in firmware 4.0.10.27
159  * @param region GoRegion3d object.
160  * @return The X position of the region.
161  */
162 GoFx(k64f) GoRegion3d_X(GoRegion3d region);
163 
164 /**
165  * Sets the Y position.
166  *
167  * @public @memberof GoRegion3d
168  * @version Introduced in firmware 4.0.10.27
169  * @param region GoRegion3d object.
170  * @param value The Y position to set.
171  * @return Operation status.
172  */
173 GoFx(kStatus) GoRegion3d_SetY(GoRegion3d region, k64f value);
174 
175 /**
176  * Gets the Y position.
177  *
178  * @public @memberof GoRegion3d
179  * @version Introduced in firmware 4.0.10.27
180  * @param region GoRegion3d object.
181  * @return The Y position of the region.
182  */
183 GoFx(k64f) GoRegion3d_Y(GoRegion3d region);
184 
185 /**
186  * Sets the Z-position.
187  *
188  * @public @memberof GoRegion3d
189  * @version Introduced in firmware 4.0.10.27
190  * @param region GoRegion3d object.
191  * @param z The Z-position to set.
192  * @return Operation status.
193  */
194 GoFx(kStatus) GoRegion3d_SetZ(GoRegion3d region, k64f z);
195 
196 /**
197  * Gets the Z-position.
198  *
199  * @public @memberof GoRegion3d
200  * @version Introduced in firmware 4.0.10.27
201  * @param region GoRegion3d object.
202  * @return The Z-position of the region.
203  */
204 GoFx(k64f) GoRegion3d_Z(GoRegion3d region);
205 
206 /**
207  * Sets the width.
208  *
209  * @public @memberof GoRegion3d
210  * @version Introduced in firmware 4.0.10.27
211  * @param region GoRegion3d object.
212  * @param width The width to set.
213  * @return Operation status.
214  */
215 GoFx(kStatus) GoRegion3d_SetWidth(GoRegion3d region, k64f width);
216 
217 /**
218  * Gets the width.
219  *
220  * @public @memberof GoRegion3d
221  * @version Introduced in firmware 4.0.10.27
222  * @param region GoRegion3d object.
223  * @return The width of the region.
224  */
225 GoFx(k64f) GoRegion3d_Width(GoRegion3d region);
226 
227 /**
228  * Sets the length.
229  *
230  * @public @memberof GoRegion3d
231  * @version Introduced in firmware 4.0.10.27
232  * @param region GoRegion3d object.
233  * @param length The length to set.
234  * @return Operation status.
235  */
236 GoFx(kStatus) GoRegion3d_SetLength(GoRegion3d region, k64f length);
237 
238 /**
239  * Gets the length.
240  *
241  * @public @memberof GoRegion3d
242  * @version Introduced in firmware 4.0.10.27
243  * @param region GoRegion3d object.
244  * @return The length of the region.
245  */
246 GoFx(k64f) GoRegion3d_Length(GoRegion3d region);
247 
248 /**
249  * Sets the height.
250  *
251  * @public @memberof GoRegion3d
252  * @version Introduced in firmware 4.0.10.27
253  * @param region GoRegion3d object.
254  * @param height The height to set.
255  * @return Operation status.
256  */
257 GoFx(kStatus) GoRegion3d_SetHeight(GoRegion3d region, k64f height);
258 
259 /**
260  * Gets the height.
261  *
262  * @public @memberof GoRegion3d
263  * @version Introduced in firmware 4.0.10.27
264  * @param region GoRegion3d object.
265  * @return The height of the region.
266  */
267 GoFx(k64f) GoRegion3d_Height(GoRegion3d region);
268 
269 /**
270 * Sets the height.
271 *
272 * @public @memberof GoRegion3d
273 * @version Introduced in firmware 4.0.10.27
274 * @param region GoRegion3d object.
275 * @param zAngle The zAngle to set.
276 * @return Operation status.
277 */
278 GoFx(kStatus) GoRegion3d_SetZAngle(GoRegion3d region, k64f zAngle);
279 
280 /**
281 * Gets the height.
282 *
283 * @public @memberof GoRegion3d
284 * @version Introduced in firmware 4.0.10.27
285 * @param region GoRegion3d object.
286 * @return The zAngle of the region.
287 */
288 GoFx(k64f) GoRegion3d_ZAngle(GoRegion3d region);
289 
290 
291 /**
292 * @class GoCylinderRegion
293 * @extends kObject
294 * @ingroup GoSdk-SurfaceTools
295 * @brief Represents a cylinder region for select surface tools.
296 */
297 typedef kObject GoCylinderRegion;
298 
299 /**
300  * Sets the X position.
301  *
302  * @public @memberof GoCylinderRegion
303  * @version Introduced in firmware 4.0.10.27
304  * @param region GoCylinderRegion object.
305  * @param x The X position to set.
306  * @return Operation status.
307  */
308 GoFx(kStatus) GoCylinderRegion_SetX(GoCylinderRegion region, k64f x);
309 
310 /**
311  * Gets the X position.
312  *
313  * @public @memberof GoCylinderRegion
314  * @version Introduced in firmware 4.0.10.27
315  * @param region GoCylinderRegion object.
316  * @return The X position of the region.
317  */
318 GoFx(k64f) GoCylinderRegion_X(GoCylinderRegion region);
319 
320 /**
321  * Sets the Y position.
322  *
323  * @public @memberof GoCylinderRegion
324  * @version Introduced in firmware 4.0.10.27
325  * @param region GoCylinderRegion object.
326  * @param value The Y position to set.
327  * @return Operation status.
328  */
329 GoFx(kStatus) GoCylinderRegion_SetY(GoCylinderRegion region, k64f value);
330 
331 /**
332  * Gets the Y position.
333  *
334  * @public @memberof GoCylinderRegion
335  * @version Introduced in firmware 4.0.10.27
336  * @param region GoCylinderRegion object.
337  * @return The Y position of the region.
338  */
339 GoFx(k64f) GoCylinderRegion_Y(GoCylinderRegion region);
340 
341 /**
342  * Sets the Z-position.
343  *
344  * @public @memberof GoCylinderRegion
345  * @version Introduced in firmware 4.0.10.27
346  * @param region GoCylinderRegion object.
347  * @param z The Z-position to set.
348  * @return Operation status.
349  */
350 GoFx(kStatus) GoCylinderRegion_SetZ(GoCylinderRegion region, k64f z);
351 
352 /**
353  * Gets the Z-position.
354  *
355  * @public @memberof GoCylinderRegion
356  * @version Introduced in firmware 4.0.10.27
357  * @param region GoCylinderRegion object.
358  * @return The Z-position of the region.
359  */
360 GoFx(k64f) GoCylinderRegion_Z(GoCylinderRegion region);
361 
362 /**
363  * Sets the radius.
364  *
365  * @public @memberof GoCylinderRegion
366  * @version Introduced in firmware 4.0.10.27
367  * @param region GoCylinderRegion object.
368  * @param value The radius to set.
369  * @return Operation status.
370  */
371 GoFx(kStatus) GoCylinderRegion_SetRadius(GoCylinderRegion region, k64f value);
372 
373 /**
374  * Gets the radius.
375  *
376  * @public @memberof GoCylinderRegion
377  * @version Introduced in firmware 4.0.10.27
378  * @param region GoCylinderRegion object.
379  * @return The radius of the region.
380  */
381 GoFx(k64f) GoCylinderRegion_Radius(GoCylinderRegion region);
382 
383 /**
384  * Sets the height.
385  *
386  * @public @memberof GoCylinderRegion
387  * @version Introduced in firmware 4.0.10.27
388  * @param region GoCylinderRegion object.
389  * @param value The height to set.
390  * @return Operation status.
391  */
392 GoFx(kStatus) GoCylinderRegion_SetHeight(GoCylinderRegion region, k64f value);
393 
394 /**
395  * Gets the height.
396  *
397  * @public @memberof GoCylinderRegion
398  * @version Introduced in firmware 4.0.10.27
399  * @param region GoCylinderRegion object.
400  * @return The height of the region.
401  */
402 GoFx(k64f) GoCylinderRegion_Height(GoCylinderRegion region);
403 
404 
405 /**
406 * @class GoSurfaceFeature
407 * @extends kObject
408 * @ingroup GoSdk-SurfaceTools
409 * @brief Represents a surface feature for select surface tools.
410 */
411 typedef kObject GoSurfaceFeature;
412 
413 /**
414  * Gets the surface feature type.
415  *
416  * @public @memberof GoSurfaceFeature
417  * @version Introduced in firmware 4.0.10.27
418  * @param feature GoSurfaceFeature object.
419  * @return The surface feature type.
420  */
421 GoFx(GoSurfaceFeatureType) GoSurfaceFeature_Type(GoSurfaceFeature feature);
422 
423 /**
424  * Sets the surface feature type.
425  *
426  * @public @memberof GoSurfaceFeature
427  * @version Introduced in firmware 4.0.10.27
428  * @param feature GoSurfaceFeature object.
429  * @param type The feature type value to set.
430  * @return Operation status.
431  */
432 GoFx(kStatus) GoSurfaceFeature_SetType(GoSurfaceFeature feature, GoSurfaceFeatureType type);
433 
434 /**
435  * Gets the current state the surface feature region.
436  *
437  * @public @memberof GoSurfaceFeature
438  * @version Introduced in firmware 4.0.10.27
439  * @param feature GoSurfaceFeature object.
440  * @return kTRUE if enabled and kFALSE if disabled.
441  */
442 GoFx(kBool) GoSurfaceFeature_RegionEnabled(GoSurfaceFeature feature);
443 
444 /**
445  * Enable or disable the surface feature region.
446  *
447  * @public @memberof GoSurfaceFeature
448  * @version Introduced in firmware 4.0.10.27
449  * @param feature GoSurfaceFeature object.
450  * @param enable kTRUE to enable, or kFALSE to disable.
451  * @return Operation status.
452  */
453 GoFx(kStatus) GoSurfaceFeature_EnableRegion(GoSurfaceFeature feature, kBool enable);
454 
455 /**
456  * Gets the 3d region for the feature.
457  *
458  * @public @memberof GoSurfaceFeature
459  * @version Introduced in firmware 4.0.10.27
460  * @param feature GoSurfaceFeature object.
461  * @return A GoRegion3d object.
462  */
463 GoFx(GoRegion3d) GoSurfaceFeature_Region(GoSurfaceFeature feature);
464 
465 
466 kEndHeader()
467 #include <GoSdk/Tools/GoSurfaceToolUtils.x.h>
468 
469 #endif
470 
471 /// @endcond
kStatus GoSurfaceRegion2d_SetWidth(GoSurfaceRegion2d region, k64f width)
Sets the width.
k64f GoSurfaceRegion2d_Length(GoSurfaceRegion2d region)
Gets the length.
k64f GoCylinderRegion_Y(GoCylinderRegion region)
Gets the Y position.
Represents a surface feature type.
k64f GoRegion3d_X(GoRegion3d region)
Gets the X position.
kStatus GoRegion3d_SetHeight(GoRegion3d region, k64f height)
Sets the height.
kStatus GoRegion3d_SetLength(GoRegion3d region, k64f length)
Sets the length.
k64f GoCylinderRegion_Radius(GoCylinderRegion region)
Gets the radius.
kStatus GoRegion3d_SetZ(GoRegion3d region, k64f z)
Sets the Z-position.
GoRegion3d GoSurfaceFeature_Region(GoSurfaceFeature feature)
Gets the 3d region for the feature.
k64f GoCylinderRegion_X(GoCylinderRegion region)
Gets the X position.
kStatus GoCylinderRegion_SetX(GoCylinderRegion region, k64f x)
Sets the X position.
k64f GoCylinderRegion_Z(GoCylinderRegion region)
Gets the Z-position.
kStatus GoCylinderRegion_SetY(GoCylinderRegion region, k64f value)
Sets the Y position.
k64f GoSurfaceRegion2d_ZAngle(GoSurfaceRegion2d region)
Gets the length.
kBool GoSurfaceFeature_RegionEnabled(GoSurfaceFeature feature)
Gets the current state the surface feature region.
Represents a cylinder region for select surface tools.
Contains various helper functions.
k64f GoRegion3d_Y(GoRegion3d region)
Gets the Y position.
k64f GoSurfaceRegion2d_Y(GoSurfaceRegion2d region)
Gets the Y position.
kStatus GoCylinderRegion_SetZ(GoCylinderRegion region, k64f z)
Sets the Z-position.
k64f GoSurfaceRegion2d_X(GoSurfaceRegion2d region)
Gets the X position.
GoSurfaceFeatureType GoSurfaceFeature_Type(GoSurfaceFeature feature)
Gets the surface feature type.
Essential SDK declarations.
kStatus GoSurfaceRegion2d_SetX(GoSurfaceRegion2d region, k64f x)
Sets the X position.
Declares the GoFeature class.
k64f GoCylinderRegion_Height(GoCylinderRegion region)
Gets the height.
Represents a two dimensional surface tool region.
kStatus GoSurfaceRegion2d_SetLength(GoSurfaceRegion2d region, k64f length)
Sets the length.
kStatus GoRegion3d_SetWidth(GoRegion3d region, k64f width)
Sets the width.
kStatus GoSurfaceRegion2d_SetY(GoSurfaceRegion2d region, k64f value)
Sets the Y position.
Represents a three dimensional surface region.
k64f GoRegion3d_Z(GoRegion3d region)
Gets the Z-position.
kStatus GoRegion3d_SetX(GoRegion3d region, k64f x)
Sets the X position.
k64f GoRegion3d_ZAngle(GoRegion3d region)
Gets the height.
kStatus GoSurfaceFeature_SetType(GoSurfaceFeature feature, GoSurfaceFeatureType type)
Sets the surface feature type.
k64f GoRegion3d_Width(GoRegion3d region)
Gets the width.
kStatus GoCylinderRegion_SetHeight(GoCylinderRegion region, k64f value)
Sets the height.
k64f GoRegion3d_Height(GoRegion3d region)
Gets the height.
kStatus GoRegion3d_SetZAngle(GoRegion3d region, k64f zAngle)
Sets the height.
kStatus GoSurfaceFeature_EnableRegion(GoSurfaceFeature feature, kBool enable)
Enable or disable the surface feature region.
kStatus GoCylinderRegion_SetRadius(GoCylinderRegion region, k64f value)
Sets the radius.
Represents a surface feature for select surface tools.
kStatus GoSurfaceRegion2d_SetZAngle(GoSurfaceRegion2d region, k64f zAngle)
Sets the length.
k64f GoRegion3d_Length(GoRegion3d region)
Gets the length.
k64f GoSurfaceRegion2d_Width(GoSurfaceRegion2d region)
Gets the width.
kStatus GoRegion3d_SetY(GoRegion3d region, k64f value)
Sets the Y position.