Main MRPT website > C++ reference for MRPT 1.9.9
xsdataidentifier.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 #ifndef XSDATAIDENTIFIER_H
10 #define XSDATAIDENTIFIER_H
11 
12 //////////////////////////////////////////////////////////////////////////////////////////
13 /*! \addtogroup enums Global enumerations
14  @{
15 */
16 
17 /*! \enum XsDataIdentifier
18  \brief Defines the data identifiers
19 
20  \internal
21  IMPORTANT! How to add new TYPE values:
22  Use the bit reverse of 1, 2, 3 .. etc..
23  This way we have the possibility to play with the border between TYPE and
24  FORMAT at a later stage
25  so\n
26  0 = 0b000000..00 = 0x0000\n
27  1 = 0b100000..00 = 0x8000\n
28  2 = 0b010000..00 = 0x4000\n
29  3 = 0b110000..00 = 0xC000\n
30  4 = 0b001000..00 = 0x2000\n
31  etc\n
32  8 = 0b000100..00 = 0x1000
33 
34  So the TYPE grows from left to right
35  the FORMAT grows from right to left
36 
37  Data that is output in float, fixedpoint or double (etc...) a sub format
38  range is used (currently the lowest 4 bits).
39 */
41 {
42  XDI_None = 0x0000,
43  XDI_TypeMask = 0xFE00,
44  XDI_FullTypeMask = 0xFFF0,
45  XDI_FullMask = 0xFFFF,
46  XDI_FormatMask = 0x01FF,
48 
49  XDI_SubFormatMask = 0x0003, // determines, float, fp12.20, fp16.32, double
50  // output... (where applicable)
55 
57  XDI_Temperature = 0x0810,
58 
60  XDI_UtcTime = 0x1010,
62  XDI_Itow = 0x1030,
63  XDI_GpsAge = 0x1040,
64  XDI_PressureAge = 0x1050,
67  XDI_FrameRange = 0x1080, // add for MTw (if needed)
69  XDI_SampleTime64 = 0x10A0,
70 
72  XDI_CoordSysMask = 0x000C,
73  XDI_CoordSysEnu = 0x0000,
74  XDI_CoordSysNed = 0x0004,
75  XDI_CoordSysNwu = 0x0008,
76  XDI_Quaternion = 0x2010,
78  XDI_EulerAngles = 0x2030,
79 
81  XDI_BaroPressure = 0x3010,
82 
84  XDI_DeltaV = 0x4010,
85  XDI_Acceleration = 0x4020,
87 #ifdef NOT_FOR_PUBLIC_RELEASE
88 // XDI_TransposedAcceleration = 0x4040,
89 #endif // NOT_FOR_PUBLIC_RELEASE
90 
92  XDI_AltitudeMsl = 0x5010,
94  XDI_PositionEcef = 0x5030,
95  XDI_LatLon = 0x5040,
96 
98  XDI_RateOfTurn = 0x8020,
99  XDI_DeltaQ = 0x8030,
100 
101  XDI_GpsGroup = 0x8800,
102  XDI_GpsDop = 0x8830,
103  XDI_GpsSol = 0x8840,
104  XDI_GpsTimeUtc = 0x8880,
105  XDI_GpsSvInfo = 0x88A0,
106 
109  XDI_RawGyroTemp = 0xA020,
110  XDI_RawAcc = 0xA030,
111  XDI_RawGyr = 0xA040,
112  XDI_RawMag = 0xA050,
113 
115  XDI_AnalogIn1 = 0xB010,
116  XDI_AnalogIn2 = 0xB020,
117 
120 
122  XDI_VelocityXYZ = 0xD010,
123 
124  XDI_StatusGroup = 0xE000,
125  XDI_StatusByte = 0xE010,
126  XDI_StatusWord = 0xE020,
127  XDI_Rssi = 0xE040,
128 
130  0x4800, // 0100.1000 -> bit reverse = 0001.0010 -> type 18
131  XDI_TriggerIn1 = 0x4810,
132  XDI_TriggerIn2 = 0x4820,
133 
134 #ifdef NOT_FOR_PUBLIC_RELEASE
135 /*
136 XDI_Accuracy = 0xF000,
137 XDI_GpsHAcc = 0xF010,
138 XDI_GpsVAcc = 0xF020,
139 XDI_GpsSAcc = 0xF030,
140 */
141 #endif // NOT_FOR_PUBLIC_RELEASE
142 };
143 /*! @} */
144 
146 
147 #define XDI_MAX_FREQUENCY ((uint16_t)0xFFFF)
148 
149 #ifdef __cplusplus
151 {
152  return (XsDataIdentifier)((int)a | (int)b);
153 }
154 
156 {
157  return (XsDataIdentifier)((int)a & (int)b);
158 }
159 
161 {
162  return (XsDataIdentifier) ~((unsigned short)a);
163 }
164 #endif
165 
166 #endif // file guard
XDI_Itow
@ XDI_Itow
Definition: xsdataidentifier.h:62
XDI_IndicationGroup
@ XDI_IndicationGroup
Definition: xsdataidentifier.h:129
XDI_RotationMatrix
@ XDI_RotationMatrix
Definition: xsdataidentifier.h:77
XDI_PositionGroup
@ XDI_PositionGroup
Definition: xsdataidentifier.h:91
XDI_PacketCounter8
@ XDI_PacketCounter8
Definition: xsdataidentifier.h:68
XDI_TriggerIn1
@ XDI_TriggerIn1
Definition: xsdataidentifier.h:131
XDI_LatLon
@ XDI_LatLon
Definition: xsdataidentifier.h:95
XDI_RawAcc
@ XDI_RawAcc
Definition: xsdataidentifier.h:110
XDI_RawGyr
@ XDI_RawGyr
Definition: xsdataidentifier.h:111
XDI_FrameRange
@ XDI_FrameRange
Definition: xsdataidentifier.h:67
XDI_AccelerationGroup
@ XDI_AccelerationGroup
Definition: xsdataidentifier.h:83
XDI_AngularVelocityGroup
@ XDI_AngularVelocityGroup
Definition: xsdataidentifier.h:97
XDI_RateOfTurn
@ XDI_RateOfTurn
Definition: xsdataidentifier.h:98
XDI_BaroPressure
@ XDI_BaroPressure
Definition: xsdataidentifier.h:81
XDI_SampleTimeCoarse
@ XDI_SampleTimeCoarse
Definition: xsdataidentifier.h:66
XDI_None
@ XDI_None
Definition: xsdataidentifier.h:42
XDI_AnalogIn2
@ XDI_AnalogIn2
Definition: xsdataidentifier.h:116
XDI_SubFormatFp1632
@ XDI_SubFormatFp1632
Definition: xsdataidentifier.h:53
XDI_UtcTime
@ XDI_UtcTime
Definition: xsdataidentifier.h:60
XDI_VelocityGroup
@ XDI_VelocityGroup
Definition: xsdataidentifier.h:121
XDI_CoordSysEnu
@ XDI_CoordSysEnu
Definition: xsdataidentifier.h:73
XDI_SubFormatFp1220
@ XDI_SubFormatFp1220
Definition: xsdataidentifier.h:52
XDI_CoordSysNwu
@ XDI_CoordSysNwu
Definition: xsdataidentifier.h:75
XDI_AnalogIn1
@ XDI_AnalogIn1
Definition: xsdataidentifier.h:115
XDI_SampleTime64
@ XDI_SampleTime64
Definition: xsdataidentifier.h:69
XDI_TriggerIn2
@ XDI_TriggerIn2
Definition: xsdataidentifier.h:132
XDI_GpsDop
@ XDI_GpsDop
Definition: xsdataidentifier.h:102
XDI_PacketCounter
@ XDI_PacketCounter
Definition: xsdataidentifier.h:61
XDI_MagneticGroup
@ XDI_MagneticGroup
Definition: xsdataidentifier.h:118
XDI_FullTypeMask
@ XDI_FullTypeMask
Definition: xsdataidentifier.h:44
XDI_Quaternion
@ XDI_Quaternion
Definition: xsdataidentifier.h:76
XDI_MagneticField
@ XDI_MagneticField
Definition: xsdataidentifier.h:119
XDI_StatusByte
@ XDI_StatusByte
Definition: xsdataidentifier.h:125
XsDataIdentifier
XsDataIdentifier
Defines the data identifiers.
Definition: xsdataidentifier.h:40
XDI_GpsAge
@ XDI_GpsAge
Definition: xsdataidentifier.h:63
XDI_RawSensorGroup
@ XDI_RawSensorGroup
Definition: xsdataidentifier.h:107
XDI_GpsSvInfo
@ XDI_GpsSvInfo
Definition: xsdataidentifier.h:105
XDI_AnalogInGroup
@ XDI_AnalogInGroup
Definition: xsdataidentifier.h:114
XDI_GpsSol
@ XDI_GpsSol
Definition: xsdataidentifier.h:103
XDI_RawMag
@ XDI_RawMag
Definition: xsdataidentifier.h:112
XDI_DataFormatMask
@ XDI_DataFormatMask
Definition: xsdataidentifier.h:47
XDI_TimestampGroup
@ XDI_TimestampGroup
Definition: xsdataidentifier.h:59
b
GLubyte GLubyte b
Definition: glext.h:6279
XDI_SubFormatDouble
@ XDI_SubFormatDouble
Definition: xsdataidentifier.h:54
XDI_Temperature
@ XDI_Temperature
Definition: xsdataidentifier.h:57
XDI_FullMask
@ XDI_FullMask
Definition: xsdataidentifier.h:45
XDI_StatusGroup
@ XDI_StatusGroup
Definition: xsdataidentifier.h:124
XDI_GpsTimeUtc
@ XDI_GpsTimeUtc
Definition: xsdataidentifier.h:104
XDI_CoordSysMask
@ XDI_CoordSysMask
Definition: xsdataidentifier.h:72
XDI_DeltaQ
@ XDI_DeltaQ
Definition: xsdataidentifier.h:99
XDI_SubFormatFloat
@ XDI_SubFormatFloat
Definition: xsdataidentifier.h:51
XDI_SubFormatMask
@ XDI_SubFormatMask
Definition: xsdataidentifier.h:49
XDI_FreeAcceleration
@ XDI_FreeAcceleration
Definition: xsdataidentifier.h:86
XDI_DeltaV
@ XDI_DeltaV
Definition: xsdataidentifier.h:84
mrpt::math::operator~
const Eigen::MatrixBase< Derived >::AdjointReturnType operator~(const Eigen::MatrixBase< Derived > &m)
Transpose operator for matrices.
Definition: ops_matrices.h:33
XDI_AltitudeMsl
@ XDI_AltitudeMsl
Definition: xsdataidentifier.h:92
XDI_GpsGroup
@ XDI_GpsGroup
Definition: xsdataidentifier.h:101
XDI_PressureGroup
@ XDI_PressureGroup
Definition: xsdataidentifier.h:80
XDI_AltitudeEllipsoid
@ XDI_AltitudeEllipsoid
Definition: xsdataidentifier.h:93
XDI_Acceleration
@ XDI_Acceleration
Definition: xsdataidentifier.h:85
XDI_SampleTimeFine
@ XDI_SampleTimeFine
Definition: xsdataidentifier.h:65
XDI_OrientationGroup
@ XDI_OrientationGroup
Definition: xsdataidentifier.h:71
XDI_RawAccGyrMagTemp
@ XDI_RawAccGyrMagTemp
Definition: xsdataidentifier.h:108
XDI_PositionEcef
@ XDI_PositionEcef
Definition: xsdataidentifier.h:94
XDI_TemperatureGroup
@ XDI_TemperatureGroup
Definition: xsdataidentifier.h:56
XDI_Rssi
@ XDI_Rssi
Definition: xsdataidentifier.h:127
XDI_CoordSysNed
@ XDI_CoordSysNed
Definition: xsdataidentifier.h:74
XDI_PressureAge
@ XDI_PressureAge
Definition: xsdataidentifier.h:64
XDI_StatusWord
@ XDI_StatusWord
Definition: xsdataidentifier.h:126
XDI_FormatMask
@ XDI_FormatMask
Definition: xsdataidentifier.h:46
XDI_EulerAngles
@ XDI_EulerAngles
Definition: xsdataidentifier.h:78
XDI_TypeMask
@ XDI_TypeMask
Definition: xsdataidentifier.h:43
a
GLubyte GLubyte GLubyte a
Definition: glext.h:6279
XDI_RawGyroTemp
@ XDI_RawGyroTemp
Definition: xsdataidentifier.h:109
XDI_VelocityXYZ
@ XDI_VelocityXYZ
Definition: xsdataidentifier.h:122



Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST