83 double utc_time(
double beidoutime_corrected)
const;
85 bool satellite_validation();
112 i_satellite_PRN = prn;
115 inline void set_signal_type(int32_t signal_type)
117 i_signal_type = signal_type;
120 inline bool get_flag_CRC_test()
const
122 return flag_crc_test;
125 inline bool get_flag_new_SOW_available()
const
127 return flag_new_SOW_available;
130 inline void set_flag_new_SOW_available(
bool new_SOW_available)
132 flag_new_SOW_available = new_SOW_available;
135 inline double get_SOW()
const
141 uint64_t read_navigation_unsigned(
const std::bitset<BEIDOU_DNAV_SUBFRAME_DATA_BITS>& bits,
const std::vector<std::pair<int32_t, int32_t>>& parameter)
const;
142 int64_t read_navigation_signed(
const std::bitset<BEIDOU_DNAV_SUBFRAME_DATA_BITS>& bits,
const std::vector<std::pair<int32_t, int32_t>>& parameter)
const;
143 bool read_navigation_bool(
const std::bitset<BEIDOU_DNAV_SUBFRAME_DATA_BITS>& bits,
const std::vector<std::pair<int32_t, int32_t>>& parameter)
const;
144 void print_beidou_word_bytes(uint32_t BEIDOU_word)
const;
161 double d_eccentricity{};
178 double d_OMEGA_DOT{};
182 int32_t i_BEIDOU_week{};
185 int32_t i_SV_accuracy{};
186 int32_t i_SV_health{};
203 uint64_t d_A_f1_msb_bits{};
204 uint64_t d_A_f1_lsb_bits{};
205 uint64_t d_Cuc_msb_bits{};
206 uint64_t d_Cuc_lsb_bits{};
207 uint64_t d_eccentricity_msb{};
208 uint64_t d_eccentricity_lsb{};
209 uint64_t d_Cic_msb_bits{};
210 uint64_t d_Cic_lsb_bits{};
211 uint64_t d_eccentricity_msb_bits{};
212 uint64_t d_eccentricity_lsb_bits{};
213 uint64_t d_i_0_msb_bits{};
214 uint64_t d_i_0_lsb_bits{};
215 uint64_t d_OMEGA_msb_bits{};
216 uint64_t d_OMEGA_lsb_bits{};
217 uint64_t d_OMEGA_DOT_msb_bits{};
218 uint64_t d_OMEGA_DOT_lsb_bits{};
223 std::map<int32_t, int32_t> almanacHealth;
225 std::map<int32_t, std::string> satelliteBlock;
228 int32_t i_signal_type{};
229 uint32_t i_satellite_PRN{};
244 int32_t i_DeltaT_LS{};
247 double d_DeltaT_LSF{};
255 double d_SQRT_A_ALMANAC{};
256 double d_A1_ALMANAC{};
257 double d_A0_ALMANAC{};
258 double d_OMEGA0_ALMANAC{};
259 double d_E_ALMANAC{};
262 double d_OMEGA_DOT_ALMANAC{};
263 double d_OMEGA_ALMANAC{};
264 double d_M0_ALMANAC{};
265 int32_t almanac_WN{};
269 bool flag_eph_valid{};
270 bool flag_utc_model_valid{};
271 bool flag_iono_valid{};
277 bool flag_new_SOW_available{};
278 bool flag_crc_test{};
279 double d_previous_aode{};
283 bool flag_d1_sf5_p9{};
284 bool flag_d1_sf5_p10{};