Gocator API

GoFeature.h
Go to the documentation of this file.
1 /**
2 * @file GoFeature.h
3 * @brief Declares the GoFeature class.
4 *
5 * @internal
6 * Copyright (C) 2017-2020 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 #ifndef GO_FEATURE_H
11 #define GO_FEATURE_H
12
13 #include <GoSdk/GoSdkDef.h>
14
15 kBeginHeader()
16
17 /**
18 * @class GoFeature
19 * @extends kObject
20 * @ingroup GoSdk
21 * @brief Represents the base class for a tool Feature or script output.
22 */
23 typedef kObject GoFeature;
24
25 /**
26 * Returns whether or not the given Feature has a valid ID assigned to it.
27 *
28 * @public @memberof GoFeature
29 * @version Introduced in firmware 4.6.3.27
30 * @param feature GoFeature object.
31 * @return kTRUE if there is an ID; kFALSE otherwise.
32 */
33 GoFx(kBool) GoFeature_HasId(GoFeature feature);
34
35 /**
36 * Clears the assigned ID for the given Feature.
37 *
38 * @public @memberof GoFeature
39 * @version Introduced in firmware 4.6.3.27
40 * @param feature GoFeature object.
41 * @return Operation status.
42 */
43 GoFx(kStatus) GoFeature_ClearId(GoFeature feature);
44
45 /**
46 * Sets an ID number for the given Feature.
47 *
48 * @public @memberof GoFeature
49 * @version Introduced in firmware 4.6.3.27
50 * @param feature GoFeature object.
51 * @param id The ID value to set for the feature.
52 * @return Operation status.
53 */
54 GoFx(kStatus) GoFeature_SetId(GoFeature feature, k32u id);
55
56 /**
57 * Gets the ID for the given feature.
58 *
59 * @public @memberof GoFeature
60 * @version Introduced in firmware 4.6.3.27
61 * @param feature GoFeature object.
62 * @return The ID value if there is one assigned. Otherwise, -1 is returned.
63 */
64 GoFx(k32s) GoFeature_Id(GoFeature feature);
65
66 /**
67 * Gets the name for the given feature.
68 *
69 * @public @memberof GoFeature
70 * @version Introduced in firmware 4.6.3.27
71 * @param feature GoFeature object.
72 * @return A character array pointer for the feature name.
73 */
74 GoFx(const kChar*) GoFeature_Name(GoFeature feature);
75
76 /**
77 * Sets the name for the given feature.
78 *
79 * @public @memberof GoFeature
80 * @version Introduced in firmware 4.6.3.27
81 * @param feature GoFeature object.
82 * @param name The name to assign to the feature.
83 * @return Operation status.
84 */
85 GoFx(kStatus) GoFeature_SetName(GoFeature feature, const kChar* name);
86
87 /**
88 * Returns the source tool of the given feature.
89 *
90 * @public @memberof GoFeature
91 * @version Introduced in firmware 4.6.3.27
92 * @param feature GoFeature object.
93 * @return A pointer to the source tool for the feature.
94 */
95 GoFx(kObject) GoFeature_SourceTool(GoFeature feature);
96
97 /**
98 * Enables the given feature for output.
99 *
100 * @public @memberof GoFeature
101 * @version Introduced in firmware 4.6.3.27
102 * @param feature GoFeature object.
103 * @param enable Set to kTRUE to enable the feature, kFALSE to disable it.
104 * @return Operation status.
105 */
106 GoFx(kStatus) GoFeature_Enable(GoFeature feature, kBool enable);
107
108 /**
109 * Returns a boolean value representing whether the given feature is enabled.
110 *
111 * @public @memberof GoFeature
112 * @version Introduced in firmware 4.6.3.27
113 * @param feature GoFeature object.
114 * @return kTRUE if enabled; kFALSE otherwise.
115 */
116 GoFx(kBool) GoFeature_Enabled(GoFeature feature);
117
118 /**
119 * Gets the feature type for the given feature.
120 *
121 * @public @memberof GoFeature
122 * @version Introduced in firmware 4.6.3.27
123 * @param feature GoFeature object.
124 * @return A character array pointer for the feature type.
125 */
126 GoFx(const kChar*) GoFeature_Type(GoFeature feature);
127
128 /**
129 * Gets the feature data type for the given feature.
130 *
131 * @public @memberof GoFeature
132 * @version Introduced in firmware 4.6.3.27
133 * @param feature GoFeature object.
134 * @return The feature data type enumerator value.
135 */
136 GoFx(GoFeatureDataType) GoFeature_DataType(GoFeature feature);
137
138 /**
139 * Gets the feature type id for the given feature.
140 *
141 * @public @memberof GoFeature
142 * @version Introduced in firmware 4.6.3.27
143 * @param feature GoFeature object.
144 * @return The feature type enumerator value.
145 */
146 GoFx(GoFeatureType) GoFeature_TypeId(GoFeature feature);
147
148
149 kEndHeader()
150 #include <GoSdk/Tools/GoFeature.x.h>
151
152 #endif
k32u
GoFeature::GoFeature_ClearId
kStatus GoFeature_ClearId(GoFeature feature)
Clears the assigned ID for the given Feature.
GoFeature::GoFeature_TypeId
GoFeatureType GoFeature_TypeId(GoFeature feature)
Gets the feature type id for the given feature.
GoFeature::GoFeature_SourceTool
kObject GoFeature_SourceTool(GoFeature feature)
Returns the source tool of the given feature.
GoFeature::GoFeature_Name
const kChar * GoFeature_Name(GoFeature feature)
Gets the name for the given feature.
GoFeature::GoFeature_Enabled
kBool GoFeature_Enabled(GoFeature feature)
Returns a boolean value representing whether the given feature is enabled.
kChar
GoFeatureType
Lists all feature types.
GoFeatureDataType
Lists all feature data types.
GoFeature::GoFeature_Id
k32s GoFeature_Id(GoFeature feature)
Gets the ID for the given feature.
GoSdkDef.h
Essential SDK declarations.
GoFeature::GoFeature_SetName
kStatus GoFeature_SetName(GoFeature feature, const kChar *name)
Sets the name for the given feature.
GoFeature::GoFeature_Type
const kChar * GoFeature_Type(GoFeature feature)
Gets the feature type for the given feature.
GoFeature::GoFeature_SetId
kStatus GoFeature_SetId(GoFeature feature, k32u id)
Sets an ID number for the given Feature.
k32s
GoFeature
Represents the base class for a tool Feature or script output.
kObject
GoFeature::GoFeature_HasId
kBool GoFeature_HasId(GoFeature feature)
Returns whether or not the given Feature has a valid ID assigned to it.
kStatus
GoFeature::GoFeature_DataType
GoFeatureDataType GoFeature_DataType(GoFeature feature)
Gets the feature data type for the given feature.
GoFeature::GoFeature_Enable
kStatus GoFeature_Enable(GoFeature feature, kBool enable)
Enables the given feature for output.
kBool