Gocator Development Kit
 All Classes Files Functions Variables Typedefs Friends Modules Pages
GdkToolInfo.h
Go to the documentation of this file.
1 /**
2 * @file GdkToolInfo.h
3 * @brief Declares the GdkToolCfg class.
4 *
5 * Copyright (C) 2015 by LMI Technologies Inc. All rights reserved.
6 */
7 #ifndef GDK_TOOL_INFO_H
8 #define GDK_TOOL_INFO_H
9 
10 #include <Gdk/GdkDef.h>
14 
15 kBeginHeader()
16 
17 /**
18 * Describes a tool type.
19 *
20 * @class GdkToolInfo
21 * @extends kObject
22 * @ingroup Gdk-Tools
23 */
24 typedef kObject GdkToolInfo;
25 kDeclareClass(Gdk, GdkToolInfo, kObject)
26 
27 /**
28 * Adds a tool configuration version.
29 *
30 * @public @memberof GdkToolInfo
31 * @param info Info object.
32 * @param name Version name (can be empty string).
33 * @param newVersion Pointer to receive new version object.
34 * @return Operation status.
35 */
36 GdkFx(kStatus) GdkToolInfo_AddVersion(GdkToolInfo info, const kChar* name, GdkToolVersionInfo* newVersion);
37 
38 /**
39 * Returns the first version info object. This object is implicitly added and is
40 * used by GdkToolInfo methods that access version information directly.
41 *
42 * @public @memberof GdkToolInfo
43 * @param info Info object.
44 * @return Version info object.
45 */
46 GdkFx(GdkToolVersionInfo) GdkToolInfo_FirstVersion(GdkToolInfo info);
47 
48 /**
49 * Finds version object by name.
50 *
51 * @public @memberof GdkToolInfo
52 * @param info Info object.
53 * @param name Version name (can be empty string).
54 * @return Found version object or kNULL.
55 */
56 GdkFx(GdkToolVersionInfo) GdkToolInfo_FindVersion(GdkToolInfo info, const kChar* name);
57 
58 /**
59 * Return the default version object. This is the version information that is
60 * used when a new tool is instantiated.
61 *
62 * @public @memberof GdkToolInfo
63 * @param info Info object.
64 * @return Version object.
65 */
66 GdkFx(GdkToolVersionInfo) GdkToolInfo_DefaultVersion(GdkToolInfo info);
67 
68 /**
69 * Sets the default version object.
70 *
71 * @public @memberof GdkToolInfo
72 * @param info Info object.
73 * @param version Version object that should be used as the default for new tool instances.
74 * @return Operation status.
75 */
76 GdkFx(kStatus) GdkToolInfo_SetDefaultVersion(GdkToolInfo info, GdkToolVersionInfo version);
77 
78 /**
79 * Returns the number of version objects. Note that this always at least 1.
80 *
81 * @public @memberof GdkToolInfo
82 * @param info Info object.
83 * @return Number of version objects.
84 */
85 GdkFx(kSize) GdkToolInfo_VersionCount(GdkToolInfo info);
86 
87 /**
88 * Returns the version object at the specified index.
89 *
90 * @public @memberof GdkToolInfo
91 * @param info Info object.
92 * @param index Index of version object.
93 * @return Version object at index.
94 */
95 GdkFx(GdkToolVersionInfo) GdkToolInfo_VersionAt(GdkToolInfo info, kSize index);
96 
97 /**
98 * Convenience method for setting the name of the first version.
99 *
100 * @public @memberof GdkToolInfo
101 * @param info Info object.
102 * @param name Version name.
103 * @return Operation status.
104 */
105 GdkFx(kStatus) GdkToolInfo_SetFirstVersionName(GdkToolInfo info, const kChar* name);
106 
107 /**
108 * Sets the tool type name.
109 *
110 * @public @memberof GdkToolInfo
111 * @param info Info object.
112 * @param name Type name.
113 * @return Operation status.
114 */
115 GdkFx(kStatus) GdkToolInfo_SetTypeName(GdkToolInfo info, const kChar* name);
116 
117 /**
118 * Returns the tool type name.
119 *
120 * @public @memberof GdkToolInfo
121 * @param info Info object.
122 * @return Type name.
123 */
124 GdkFx(const kChar*) GdkToolInfo_TypeName(GdkToolInfo info);
125 
126 /**
127 * Sets the tool display label.
128 *
129 * @public @memberof GdkToolInfo
130 * @param info Info object.
131 * @param label Display label.
132 * @return Operation status.
133 */
134 GdkFx(kStatus) GdkToolInfo_SetLabel(GdkToolInfo info, const kChar* label);
135 
136 /**
137 * Returns the tool display label.
138 *
139 * @public @memberof GdkToolInfo
140 * @param info Info object.
141 * @return Display label.
142 */
143 GdkFx(const kChar*) GdkToolInfo_Label(GdkToolInfo info);
144 
145 /**
146 * Sets the data source type accepted by the tool.
147 *
148 * @public @memberof GdkToolInfo
149 * @param info Info object.
150 * @param type Data source type.
151 * @return Operation status.
152 */
153 GdkFx(kStatus) GdkToolInfo_SetSourceType(GdkToolInfo info, GdkDataType type);
154 
155 /**
156 * Returns the data source type accepted by the tool.
157 *
158 * @public @memberof GdkToolInfo
159 * @param info Info object.
160 * @return Data source type.
161 */
162 GdkFx(GdkDataType) GdkToolInfo_SourceType(GdkToolInfo info);
163 
164 /**
165 * Add an option to the list of acceptable data sources.
166 *
167 * @public @memberof GdkToolInfo
168 * @param info Info object.
169 * @param source Data source option.
170 * @return Data type.
171 */
172 GdkFx(kStatus) GdkToolInfo_AddSourceOption(GdkToolInfo info, GdkDataSource source);
173 
174 /**
175 * Clears the list of acceptable data sources.
176 *
177 * @public @memberof GdkToolInfo
178 * @param info Info object.
179 * @return Operation status.
180 */
181 GdkFx(kStatus) GdkToolInfo_ClearSourceOptions(GdkToolInfo info);
182 
183 /**
184 * Returns the number of acceptable data sources.
185 *
186 * @public @memberof GdkToolInfo
187 * @param info Info object.
188 * @return Data source count.
189 */
190 GdkFx(kSize) GdkToolInfo_SourceOptionCount(GdkToolInfo info);
191 
192 /**
193 * Returns the data source option at a specified index.
194 *
195 * @public @memberof GdkToolInfo
196 * @param info Info object.
197 * @param index Index of data source.
198 * @return Data source.
199 */
200 GdkFx(GdkDataSource) GdkToolInfo_SourceOptionAt(GdkToolInfo info, kSize index);
201 
202 /**
203 * Sets whether or not this tool requires intensity data.
204 *
205 * @public @memberof GdkToolInfo
206 * @param info Info object.
207 * @param required Whether or not intensity is required.
208 * @return Operation status.
209 */
210 GdkFx(kStatus) GdkToolInfo_RequireIntensity(GdkToolInfo info, kBool required);
211 
212 /**
213 * Returns whether or not this tool requires intensity data.
214 *
215 * @public @memberof GdkToolInfo
216 * @param info Info object.
217 * @return Intensity requirement.
218 */
219 GdkFx(kBool) GdkToolInfo_IntensityRequired(GdkToolInfo info);
220 
221 /**
222 * Enables or disables anchoring capability for a specified axis.
223 *
224 * @public @memberof GdkToolInfo
225 * @param info Info object.
226 * @param axis Anchoring axis.
227 * @param enabled Enabled state.
228 * @return Operation status.
229 */
230 GdkFx(kStatus) GdkToolInfo_EnableAnchoring(GdkToolInfo info, GdkAxis axis, kBool enabled);
231 
232 /**
233 * Checks anchoring capability for a specified axis.
234 *
235 * @public @memberof GdkToolInfo
236 * @param info Info object.
237 * @param axis Anchoring axis.
238 * @return Whether or not anchoring capability is enabled.
239 */
240 GdkFx(kBool) GdkToolInfo_AnchoringEnabled(GdkToolInfo info, GdkAxis axis);
241 
242 /**
243 * Returns the schema for the parameters.
244 *
245 * @public @memberof GdkToolInfo
246 * @param info Info object.
247 * @return Params info.
248 */
249 GdkFx(GdkParamsInfo) GdkToolInfo_Params(GdkToolInfo info);
250 
251 /**
252 * Add a measurement type.
253 *
254 * @public @memberof GdkToolInfo
255 * @param info Info object.
256 * @param type Measurement type name (should be unique within the tool).
257 * @param measurementInfo Pointer to receive the new measurement info.
258 * @return Operation status.
259 */
260 GdkFx(kStatus) GdkToolInfo_AddMeasurement(GdkToolInfo info, const kChar* type, GdkMeasurementInfo* measurementInfo);
261 
262 /**
263 * Clears measurement types.
264 *
265 * @public @memberof GdkToolInfo
266 * @param info Info object.
267 * @return Operation status.
268 */
269 GdkFx(kStatus) GdkToolInfo_ClearMeasurements(GdkToolInfo info);
270 
271 /**
272 * Returns the number of measurement types.
273 *
274 * @public @memberof GdkToolInfo
275 * @param info Info object.
276 * @return Measurement type count.
277 */
278 GdkFx(kSize) GdkToolInfo_MeasurementCount(GdkToolInfo info);
279 
280 /**
281 * Returns the measurement type at a specified index.
282 *
283 * @public @memberof GdkToolInfo
284 * @param info Info object.
285 * @param index Measurement type index.
286 * @return Measurement type.
287 */
288 GdkFx(GdkMeasurementInfo) GdkToolInfo_MeasurementAt(GdkToolInfo info, kSize index);
289 
290 kEndHeader()
291 
292 #endif
Essential Gdk declarations.
kSize GdkToolInfo_SourceOptionCount(GdkToolInfo info)
Returns the number of acceptable data sources.
GdkDataType GdkToolInfo_SourceType(GdkToolInfo info)
Returns the data source type accepted by the tool.
kStatus GdkToolInfo_SetTypeName(GdkToolInfo info, const kChar *name)
Sets the tool type name.
Describes a tool type.
kStatus GdkToolInfo_AddMeasurement(GdkToolInfo info, const kChar *type, GdkMeasurementInfo *measurementInfo)
Add a measurement type.
const kChar * GdkToolInfo_TypeName(GdkToolInfo info)
Returns the tool type name.
kStatus GdkToolInfo_RequireIntensity(GdkToolInfo info, kBool required)
Sets whether or not this tool requires intensity data.
GdkMeasurementInfo GdkToolInfo_MeasurementAt(GdkToolInfo info, kSize index)
Returns the measurement type at a specified index.
GdkToolVersionInfo GdkToolInfo_FirstVersion(GdkToolInfo info)
Returns the first version info object.
GdkToolVersionInfo GdkToolInfo_DefaultVersion(GdkToolInfo info)
Return the default version object.
kStatus GdkToolInfo_SetDefaultVersion(GdkToolInfo info, GdkToolVersionInfo version)
Sets the default version object.
kStatus GdkToolInfo_AddSourceOption(GdkToolInfo info, GdkDataSource source)
Add an option to the list of acceptable data sources.
kStatus GdkToolInfo_SetLabel(GdkToolInfo info, const kChar *label)
Sets the tool display label.
kStatus GdkToolInfo_EnableAnchoring(GdkToolInfo info, GdkAxis axis, kBool enabled)
Enables or disables anchoring capability for a specified axis.
GdkParamsInfo GdkToolInfo_Params(GdkToolInfo info)
Returns the schema for the parameters.
kSize GdkToolInfo_VersionCount(GdkToolInfo info)
Returns the number of version objects.
Describes a measurement type.
Represents a data source selections.
Declares the GdkToolCfg class.
const kChar * GdkToolInfo_Label(GdkToolInfo info)
Returns the tool display label.
kBool GdkToolInfo_AnchoringEnabled(GdkToolInfo info, GdkAxis axis)
Checks anchoring capability for a specified axis.
kBool GdkToolInfo_IntensityRequired(GdkToolInfo info)
Returns whether or not this tool requires intensity data.
Represents the schema of a parameter set.
GdkToolVersionInfo GdkToolInfo_VersionAt(GdkToolInfo info, kSize index)
Returns the version object at the specified index.
Declares the GdkParamsInfo class.
GdkDataSource GdkToolInfo_SourceOptionAt(GdkToolInfo info, kSize index)
Returns the data source option at a specified index.
kStatus GdkToolInfo_ClearSourceOptions(GdkToolInfo info)
Clears the list of acceptable data sources.
kSize GdkToolInfo_MeasurementCount(GdkToolInfo info)
Returns the number of measurement types.
kStatus GdkToolInfo_ClearMeasurements(GdkToolInfo info)
Clears measurement types.
kStatus GdkToolInfo_SetFirstVersionName(GdkToolInfo info, const kChar *name)
Convenience method for setting the name of the first version.
kObject kStatus GdkToolInfo_AddVersion(GdkToolInfo info, const kChar *name, GdkToolVersionInfo *newVersion)
Adds a tool configuration version.
Describes a tool config version.
Represents data source selections.
Represents data source selections. Used as a bitmask.
kStatus GdkToolInfo_SetSourceType(GdkToolInfo info, GdkDataType type)
Sets the data source type accepted by the tool.
Declares the GdkToolCfg class.
GdkToolVersionInfo GdkToolInfo_FindVersion(GdkToolInfo info, const kChar *name)
Finds version object by name.