Main MRPT website > C++ reference for MRPT 1.5.6
xsrawgpssvinfo.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-2017, 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 XSRAWGPSSVINFO_H
10 #define XSRAWGPSSVINFO_H
11 
12 #include "pstdint.h"
13 
14 #ifdef _MSC_VER
15 #pragma pack(push, 1)
16 #endif
17 
18 #ifndef __cplusplus
19 #define XSSVINFO_INITIALIZER { 0, 0, 0, 0, 0, 0, 0, 0 }
20 #define XSRAWGPSSVINFO_INITIALIZER { 0, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER, XSSVINFO_INITIALIZER };
21 #endif
22 
23 //! \brief A container for information of one satellite
24 struct XsSvInfo
25 {
26  uint8_t m_chn; //!< channel number, range 0..NCH-1
27  uint8_t m_svid; //!< Satellite ID
28  uint8_t m_flags; /*!< Bitmask, made up of the following bit values
29  0x01 = SV is used for navigation
30  0x02 = Differential correction data is available for this SV
31  0x04 = Orbit information is available for this SV (Ephemeris or Almanach)
32  0x08 = Orbit information is Ephemeris
33  0x10 = SV is unhealthy / shall not be used
34  0x20 = reserved
35  0x40 = reserved
36  0x80 = reserved
37  */
38  int8_t m_qi; /*!< Signal Quality indicator (range 0..7). The following list shows the meaning of the different QI values:
39  0: This channel is idle
40  1, 2: Channel is searching
41  3: Signal detected but unusable
42  4: Code Lock on Signal
43  5, 6: Code and Carrier locked
44  7: Code and Carrier locked, receiving 50bps data
45  */
46  uint8_t m_cno; //!< Carrier to Noise Ratio (Signal Strength) (dbHz)
47  int8_t m_elev; //!< Elevation in integer (deg)
48  int16_t m_azim; //!< Azimuth in integer (deg)
49  int32_t m_prres; //!< Pseudo range residual (cm)
50 };
51 typedef struct XsSvInfo XsSvInfo;
52 
53 /*! \brief A container for NAV-SVINFO data
54 */
56 {
57  uint32_t m_itow; //!< Gps time of week (ms)
58  uint8_t m_nch; //!< Number of channels range 0..16
59  uint8_t m_res1; //!< Reserved
60  uint16_t m_res2; //!< Reserved
61  XsSvInfo m_svInfos[16]; //!< The information of all satellites, maxmimum 16
62 };
64 
65 #ifdef _MSC_VER
66 #pragma pack(pop)
67 #endif
68 
69 #endif // file guard
unsigned __int16 uint16_t
Definition: rptypes.h:46
uint8_t m_nch
Number of channels range 0..16.
signed char int8_t
Definition: rptypes.h:42
int8_t m_elev
Elevation in integer (deg)
unsigned char uint8_t
Definition: rptypes.h:43
__int16 int16_t
Definition: rptypes.h:45
uint32_t m_itow
Gps time of week (ms)
uint16_t m_res2
Reserved.
int16_t m_azim
Azimuth in integer (deg)
uint8_t m_cno
Carrier to Noise Ratio (Signal Strength) (dbHz)
uint8_t m_res1
Reserved.
int32_t m_prres
Pseudo range residual (cm)
uint8_t m_chn
channel number, range 0..NCH-1
__int32 int32_t
Definition: rptypes.h:48
int8_t m_qi
A container for information of one satellite.
uint8_t m_flags
A container for NAV-SVINFO data.
unsigned __int32 uint32_t
Definition: rptypes.h:49
uint8_t m_svid
Satellite ID.
XsSvInfo m_svInfos[16]
The information of all satellites, maxmimum 16.



Page generated by Doxygen 1.8.14 for MRPT 1.5.6 Git: 4c65e8431 Tue Apr 24 08:18:17 2018 +0200 at lun oct 28 01:35:26 CET 2019