22 #ifndef GNSS_SDR_GALILEO_INAV_MESSAGE_H 23 #define GNSS_SDR_GALILEO_INAV_MESSAGE_H 50 void split_page(std::string page_string, int32_t flag_even_word);
57 int32_t page_jk_decoder(
const char* data_jk);
62 bool have_new_ephemeris();
67 bool have_new_iono_and_GST();
72 bool have_new_utc_model();
77 bool have_new_almanac();
99 inline bool get_flag_CRC_test()
const 101 return flag_CRC_test;
104 inline bool get_flag_TOW_set()
const 109 inline void set_flag_TOW_set(
bool flag_tow)
111 flag_TOW_set = flag_tow;
114 inline int32_t get_Galileo_week()
const 119 inline bool is_TOW_set()
const 124 inline int32_t get_TOW5()
const 129 inline int32_t get_TOW6()
const 134 inline bool is_TOW5_set()
const 139 inline void set_TOW5_flag(
bool flag_tow5)
141 flag_TOW_5 = flag_tow5;
144 inline bool is_TOW6_set()
const 149 inline void set_TOW6_flag(
bool flag_tow6)
151 flag_TOW_6 = flag_tow6;
154 inline bool get_flag_GGTO()
const 156 return (flag_GGTO_1 ==
true and flag_GGTO_2 ==
true and flag_GGTO_3 ==
true and flag_GGTO_4 ==
true);
159 inline double get_A0G()
const 164 inline double get_A1G()
const 169 inline double get_t0G()
const 174 inline double get_WN0G()
const 180 bool CRC_test(std::bitset<GALILEO_DATA_FRAME_BITS> bits, uint32_t checksum)
const;
181 bool read_navigation_bool(std::bitset<GALILEO_DATA_JK_BITS> bits,
const std::vector<std::pair<int32_t, int32_t> >& parameter)
const;
182 uint64_t read_navigation_unsigned(std::bitset<GALILEO_DATA_JK_BITS> bits,
const std::vector<std::pair<int32_t, int32_t> >& parameter)
const;
183 uint64_t read_page_type_unsigned(std::bitset<GALILEO_PAGE_TYPE_BITS> bits,
const std::vector<std::pair<int32_t, int32_t> >& parameter)
const;
184 int64_t read_navigation_signed(std::bitset<GALILEO_DATA_JK_BITS> bits,
const std::vector<std::pair<int32_t, int32_t> >& parameter)
const;
186 std::string page_Even{};
188 int32_t Page_type_time_stamp{};
189 int32_t IOD_ephemeris{};
207 double OMEGA_dot_3{};
217 int32_t SV_ID_PRN_4{};
235 bool Region1_flag_5{};
236 bool Region2_flag_5{};
237 bool Region3_flag_5{};
238 bool Region4_flag_5{};
239 bool Region5_flag_5{};
240 double BGD_E1E5a_5{};
241 double BGD_E1E5b_5{};
256 int32_t Delta_tLS_6{};
261 int32_t Delta_tLSF_6{};
274 double Omega_dot_7{};
289 double Omega_dot_8{};
309 double Omega_dot_10{};
327 double Galileo_satClkDrift{};
329 bool flag_CRC_test{};
330 bool flag_all_ephemeris{};
331 bool flag_ephemeris_1{};
332 bool flag_ephemeris_2{};
333 bool flag_ephemeris_3{};
334 bool flag_ephemeris_4{};
336 bool flag_iono_and_GST{};
340 bool flag_utc_model{};
342 bool flag_all_almanac{};
343 bool flag_almanac_1{};
344 bool flag_almanac_2{};
345 bool flag_almanac_3{};
346 bool flag_almanac_4{};
354 #endif // GNSS_SDR_GALILEO_INAV_MESSAGE_H This class is a storage for the GALILEO ALMANAC data as described in GALILEO ICD. ...
This class handles the Galileo I/NAV Data message, as described in the Galileo Open Service Signal in...
This class is a storage for the GALILEO IONOSPHERIC data as described in Galileo ICD paragraph 5...
Interface of a Galileo UTC MODEL storage.
Interface of a Galileo ALMANAC storage helper.
This class is a storage and orbital model functions for the Galileo SV ephemeris data as described in...
This class is a storage for the GALILEO UTC MODEL data as described in Galileo ICD https://www...
Interface of a Galileo Ionospheric Model storage.
Interface of a Galileo EPHEMERIS storage.
Galileo INAV mesage constants.