MRPT  1.9.9
xsresultvalue.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | https://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2019, Individual contributors, see AUTHORS file |
6  | See: https://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See: https://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 #ifndef XSRESULTVALUE_H
10 #define XSRESULTVALUE_H
11 
12 #include "xstypesconfig.h"
13 
14 #ifdef __cplusplus
15 extern "C"
16 {
17 #endif
18 
19  //////////////////////////////////////////////////////////////////////////////////////////
20  /*! \addtogroup enums Global enumerations
21  @{
22  */
23  /*! \brief Xsens result values
24  \details These values are used to signal success or specific failures of
25  functions
26  \sa XsResultValue_toString
27  */
29  {
30  // general OK
31  /** 0: Operation was performed successfully */
32  XRV_OK = 0
33 
34  // communication protocol
35  /** 1: No bus communication possible */
36  ,
38  /** 2: InitBus and/or SetBID are not issued */
39  ,
41  /** 3: Period sent is invalid */
42  ,
44  /** 4: The message is invalid or not implemented */
45  ,
47  /** 16: A slave did not respond to WaitForSetBID */
48  ,
50  /** 17: An incorrect answer received after WaitForSetBID */
51  ,
53  /** 18: After four bus-scans still undetected Motion Trackers */
54  ,
56  /** 20: No reply to SetBID message during SetBID procedure */
57  ,
59  /** 21: Other than SetBIDAck received */
60  ,
62  /** 24: Timer overflow - period too short to collect all data from
63  Motion Trackers */
64  ,
66  /** 25: Motion Tracker responds with other than SlaveData message */
67  ,
69  /** 26: Total bytes of data of Motion Trackers including sample counter
70  exceeds 255 bytes */
71  ,
73  /** 27: Timer overflows during measurement */
74  ,
76  /** 28: Timer overflows during measurement */
77  ,
79  /** 29: No correct response from Motion Tracker during measurement */
80  ,
82  /** 30: Timer overflows during measurement */
83  ,
85  /** 32: Baud rate does not comply with valid range */
86  ,
88  /** 33: An invalid parameter is supplied */
89  ,
91  /** 35: TX PC Buffer is full */
92  ,
94  /** 36: TX PC Buffer overflow, cannot fit full message */
95  ,
97  /** 40: The device generated an error, try updating the firmware */
98  ,
100  /** 41: The device generates more data than the bus communication can
101  handle (baud rate may be too low) */
102  ,
104  /** 42: The sample buffer of the device was full during a communication
105  outage */
106  ,
108 
109  // CMT / XDA / XME / etc
110  /** 256: A generic error occurred */
111  ,
112  XRV_ERROR = 256
113  /** 257: Operation not implemented in this version (yet) */
114  ,
116  /** 258: A timeout occurred */
117  ,
119  /** 259: Operation aborted because of no data read */
120  ,
122  /** 260: Checksum fault occurred */
123  ,
125  /** 261: No internal memory available */
126  ,
128  /** 262: The requested item was not found */
129  ,
131  /** 263: Unexpected message received (e.g. no acknowledge message
132  * received)
133  */
134  ,
136  /** 264: Invalid id supplied */
137  ,
139  /** 265: Operation is invalid at this point */
140  ,
142  /** 266: Insufficient buffer space available */
143  ,
145  /** 267: The specified i/o device can not be opened */
146  ,
148  /** 268: The specified i/o device can not be opened */
149  ,
151  /** 269: An I/O device is already opened with this object */
152  ,
154  /** 270: End of file is reached */
155  ,
157  /** 271: A required settings file could not be opened or is missing some
158  data */
159  ,
161  /** 272: No data is available */
162  ,
164  /** 273: Tried to change a read-only value */
165  ,
167  /** 274: Tried to supply a nullptr value where it is not allowed */
168  ,
170  /** 275: Insufficient data was supplied to a function */
171  ,
173  /** 276: Busy processing, try again later */
174  ,
175  XRV_BUSY = 276
176  /** 277: Invalid instance called */
177  ,
179  /** 278: A trusted data stream proves to contain corrupted data */
180  ,
182 
183  /** 279: Failure during read of settings */
184  ,
186  /** 280: Could not find any MVN-compatible hardware */
187  ,
189  /** 281: Found only one responding Xbus Master */
190  ,
192  /** 282: No sensors found */
193  ,
195  /** 283: One or more sensors are not where they were expected */
196  ,
198  /** 284: Not enough sensors were found */
199  ,
201  /** 285: Failure during initialization of Fusion Engine */
202  ,
204  /** 286: Something else was received than was requested */
205  ,
206  XRV_OTHER = 286
207 
208  /** 287: No file opened for reading/writing */
209  ,
211  /** 288: No serial port opened for reading/writing */
212  ,
214  /** 289: No file or serial port opened for reading/writing */
215  ,
217  /** 290: A required port could not be found */
218  ,
220  /** 291: The low-level port handler failed to initialize */
221  ,
223  /** 292: A calibration routine failed */
224  ,
226 
227  /** 293: The in-config check of the device failed */
228  ,
230  /** 294: The operation is once only and has already been performed */
231  ,
233 
234  /** 295: The single connected device is configured as a slave */
235  ,
237  /** 296: More than one master was detected */
238  ,
240  /** 297: A device was detected that was neither master nor slave */
241  ,
243  /** 298: No master detected */
244  ,
246  /** 299: A device is not sending enough data */
247  ,
249 
250  /** 300: The version of the object is too low for the requested
251  operation */
252  ,
254  /** 301: The object has an unrecognized version, so it's not safe to
255  perform the operation */
256  ,
258 
259  /** 302: The process was aborted by an external event, usually a user
260  action or process termination */
261  ,
263  /** 303: The requested functionality is not supported by the device */
264  ,
266 
267  /** 304: A packet counter value was missed */
268  ,
270 
271  /** 305: An error occured while trying to put the device in measurement
272  * mode
273  */
274  ,
276  };
277  /*! @} */
279 
280  //! These enum values can be used to specify a device error (XRV_DEVICEERROR
281  //! 0x28), i.e. a xbus message like [FA FF 42 05 28 XXXXXXXX CS]
283  {
292  };
294 
295  //////////////////////////////////////////////////////////////////////////////////////////
296 
297  /* \brief Retrieve a string corresponding to the given result code.
298 
299  This function uses the XsResultText list to return a string with the
300  relevant result
301  code in a textual format. If the supplied result code is invalid the
302  "!!Invalid result code!!" string is returned.
303  */
305 
306 #ifdef __cplusplus
307 } // extern "C"
308 #endif
309 
310 #endif // file guard
XSTYPES_DLL_API const char * XsResultValue_toString(XsResultValue result)
0: Operation was performed successfully
Definition: xsresultvalue.h:32
XsResultValue
Xsens result values.
Definition: xsresultvalue.h:28
#define XSTYPES_DLL_API
Definition: xstypesconfig.h:9
XsDeviceErrorType
These enum values can be used to specify a device error (XRV_DEVICEERROR 0x28), i.e.



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 8fe78517f Sun Jul 14 19:43:28 2019 +0200 at lun oct 28 02:10:00 CET 2019