MRPT  1.9.9
packetfixeddata.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 PACKETFIXEDDATA_H
10 #define PACKETFIXEDDATA_H
11 
12 #include <xsens/xsscrdata.h>
13 #include <xsens/xsdeviceid.h>
14 
15 #ifndef NOT_FOR_PUBLIC_RELEASE
16 struct XsControl; // required by DLL for supporting advanced features
17 #endif
18 
19 struct XsDataFormat;
20 
21 //! Indicates that a data item is not available in the packet
22 #define XS_DATA_ITEM_NOT_AVAILABLE 65535
23 
24 /*! \brief Contains offset information about data in the packet
25  \details All items are initialized to \a XS_DATA_ITEM_NOT_AVAILABLE and set
26  to their proper
27  value by LegacyDataPacket::updateInfoList and/or the LegacyDataPacket update
28  functions.
29 */
30 struct PacketInfo
31 {
32  /** Offset of first data byte (whatever it is) */
34  /** Offset of raw data */
36  /** Offset of raw acceleration data */
38  /** Offset of raw gyroscope data */
40  /** Offset of raw magnetometer data */
42  /** Offset of raw temperature data. Note that usually only the first item is
43  * used. */
45  /** Offset of calibrated temperature data. Note that usually only the first
46  * item is used. */
48  /** Offset of calibrated data */
50  /** Offset of calibrated acceleration data */
52  /** Offset of calibrated gyroscope data */
54  /** Offset of calibrated magnetometer data */
56  /** Offset of orientation in quaternion format */
58  /** Offset of orientation in euler format */
60  /** Offset of orientation in matrix format */
62  /** Offset of analog in channel 1 data */
64  /** Offset of analog in channel 2 data */
66  /** Offset of Latitude-Longitude-Altitude position data */
68  /** Offset of velocity data */
70  /** Offset of status data */
72  /** Offset of detailed status data */
74  /** Offset of sample counter */
76  /** Offset of UTC time data */
78  /** Offset of nanosecond part of UTC time */
80  /** Offset of year part of UTC time */
82  /** Offset of month part of UTC time */
84  /** Offset of day part of UTC time */
86  /** Offset of hour part of UTC time */
88  /** Offset of minute part of UTC time */
90  /** Offset of second part of UTC time */
92  /** Offset of validity part of UTC time */
94  /** Offset of acceleration in global frame */
96  /** Offset of GPS & pressure data */
98  /** Offset of pressure data */
100  /** Offset of pressure age */
102  /** Offset of raw GPS data */
104  /** Offset of raw GPS ITOW (Integer Time Of Week) data */
106  /** Offset of raw GPS latitude data */
108  /** Offset of raw GPS longitude data */
110  /** Offset of raw GPS height data */
112  /** Offset of raw GPS northward velocity data */
114  /** Offset of raw GPS eastward velocity data */
116  /** Offset of raw GPS dowanward velocity data */
118  /** Offset of raw GPS horizontal accuracy estimate data */
120  /** Offset of raw GPS vertical accuracy estimate data */
122  /** Offset of raw GPS speed accuracy estimate data */
124  /** Offset of raw GPS age */
126  /** Offset of MTw SDI data */
128  /** Offset of MTw SDI client ID data */
130  /** Offset of MTw SDI time sync data */
132  /** Offset of MTw SDI first frame number in interval data */
134  /** Offset of MTw SDI last frame number in interval data */
136  /** Offset of MTw SDI gyroscope bias data */
138  /** Offset of MTw SDI orientation increment data */
140  /** Offset of MTw SDI velocity increment data */
142  /** Offset of MTw SDI aiding data */
144  /** Offset of MTw SDI barometer data */
146  /** Offset of MTw SDI magnetometer data */
148  /** Offset of MTw SDI RSSI data */
150  /** Total size of the data */
152  /** Boundary where the original data format is ignored and values are stored
153  * in double precision */
155 
156  /*! \brief Default contructor, sets all values to XS_DATA_ITEM_NOT_AVAILABLE
157  */
158  PacketInfo() { memset(this, 0xFF, sizeof(*this)); }
159 };
160 
161 //! A structure containing fixed packet data, which should not change during a
162 //! measurement for the same device
164 {
165  PacketFixedData();
167  PacketFixedData(const PacketFixedData& pack);
169 
170  void operator=(const PacketFixedData& data);
171 
172  /** Contains information about data in the packet and the format of that
173  * data */
175  /** A list of the formats of the data items */
177  /** A list of the device-ids in this packet */
179  /** Indicates that xbus-formatting is used */
180  bool m_xm;
181  /** The number of data items in the message */
183 };
184 
185 #endif // file guard
uint16_t m_rawData
Offset of raw data.
uint16_t m_offset
Offset of first data byte (whatever it is)
GLuint GLuint GLsizei count
Definition: glext.h:3528
XsDataFormat * m_formatList
A list of the formats of the data items.
uint16_t m_gpsPvtLatitude
Offset of raw GPS latitude data.
uint16_t m_gpsPvtGpsData
Offset of raw GPS data.
unsigned __int16 uint16_t
Definition: rptypes.h:44
#define XS_MAX_TEMPERATURE_CHANNELS
Definition: xsscrdata.h:27
uint16_t m_wClientId
Offset of MTw SDI client ID data.
uint16_t m_gpsPvtVeld
Offset of raw GPS dowanward velocity data.
uint16_t m_utcMonth
Offset of month part of UTC time.
uint16_t m_gpsPvtLongitude
Offset of raw GPS longitude data.
uint16_t m_wAidingData
Offset of MTw SDI aiding data.
uint16_t m_wTimeSync
Offset of MTw SDI time sync data.
uint16_t m_rawAcc
Offset of raw acceleration data.
uint16_t m_wFirstFrameNumber
Offset of MTw SDI first frame number in interval data.
uint16_t m_velNEDorNWU
Offset of velocity data.
uint16_t m_gpsPvtPressure
Offset of pressure data.
uint16_t m_gpsPvtHeight
Offset of raw GPS height data.
uint16_t m_utcTime
Offset of UTC time data.
uint16_t m_gpsPvtVacc
Offset of raw GPS vertical accuracy estimate data.
uint16_t m_rawTemp[XS_MAX_TEMPERATURE_CHANNELS]
Offset of raw temperature data.
uint16_t m_calMag
Offset of calibrated magnetometer data.
uint16_t m_calAcc
Offset of calibrated acceleration data.
uint16_t m_utcValid
Offset of validity part of UTC time.
uint16_t m_oriQuat
Offset of orientation in quaternion format.
uint16_t m_mtwSdiData
Offset of MTw SDI data.
PacketInfo()
Default contructor, sets all values to XS_DATA_ITEM_NOT_AVAILABLE.
uint16_t m_status
Offset of status data.
uint16_t m_utcSecond
Offset of second part of UTC time.
uint16_t m_gpsPvtPressureAge
Offset of pressure age.
uint16_t m_oriEul
Offset of orientation in euler format.
uint16_t m_rawGyr
Offset of raw gyroscope data.
uint16_t m_wCurrentBias
Offset of MTw SDI gyroscope bias data.
uint16_t m_itemCount
The number of data items in the message.
uint16_t m_gpsPvtItow
Offset of raw GPS ITOW (Integer Time Of Week) data.
uint16_t m_doubleBoundary
Boundary where the original data format is ignored and values are stored in double precision...
uint16_t m_gpsPvtGpsAge
Offset of raw GPS age.
uint16_t m_gpsPvtData
Offset of GPS & pressure data.
uint16_t m_calGyr
Offset of calibrated gyroscope data.
PacketFixedData()
Default constructor, creates an empty (invalid) object.
uint16_t m_utcHour
Offset of hour part of UTC time.
Contains offset information about data in the packet.
uint16_t m_analogIn1
Offset of analog in channel 1 data.
uint16_t m_wVelocityIncrement
Offset of MTw SDI velocity increment data.
uint16_t m_oriMat
Offset of orientation in matrix format.
uint16_t m_gpsPvtSacc
Offset of raw GPS speed accuracy estimate data.
PacketInfo * m_infoList
Contains information about data in the packet and the format of that data.
uint16_t m_wRssi
Offset of MTw SDI RSSI data.
uint16_t m_rawMag
Offset of raw magnetometer data.
uint16_t m_acc_g
Offset of acceleration in global frame.
uint16_t m_temp[XS_MAX_TEMPERATURE_CHANNELS]
Offset of calibrated temperature data.
uint16_t m_utcNano
Offset of nanosecond part of UTC time.
uint16_t m_wLastFrameNumber
Offset of MTw SDI last frame number in interval data.
~PacketFixedData()
Destructor.
uint16_t m_utcYear
Offset of year part of UTC time.
A structure for storing data formats.
Definition: xsdataformat.h:17
uint16_t m_gpsPvtVele
Offset of raw GPS eastward velocity data.
uint16_t m_wBaroMeter
Offset of MTw SDI barometer data.
uint16_t m_detailedStatus
Offset of detailed status data.
uint16_t m_size
Total size of the data.
A structure containing fixed packet data, which should not change during a measurement for the same d...
uint16_t m_gpsPvtVeln
Offset of raw GPS northward velocity data.
uint16_t m_gpsPvtHacc
Offset of raw GPS horizontal accuracy estimate data.
uint16_t m_analogIn2
Offset of analog in channel 2 data.
uint16_t m_utcMinute
Offset of minute part of UTC time.
uint16_t m_calData
Offset of calibrated data.
uint16_t m_wOrientationIncrement
Offset of MTw SDI orientation increment data.
uint16_t m_wMagnetoMeter
Offset of MTw SDI magnetometer data.
uint16_t m_posLLA
Offset of Latitude-Longitude-Altitude position data.
void operator=(const PacketFixedData &data)
Assignment operator, copies contents from data.
uint16_t m_sc
Offset of sample counter.
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: glext.h:3546
bool m_xm
Indicates that xbus-formatting is used.
uint16_t m_utcDay
Offset of day part of UTC time.
XsDeviceId * m_idList
A list of the device-ids in this packet.



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 7d5e6d718 Fri Aug 24 01:51:28 2018 +0200 at lun nov 2 08:35:50 CET 2020