mirror of
				https://github.com/gnss-sdr/gnss-sdr
				synced 2025-10-30 23:03:05 +00:00 
			
		
		
		
	Change blocks name from L2_M to L2C
This commit is contained in:
		| @@ -178,18 +178,18 @@ Tracking_2S.order=3; | |||||||
| Tracking_2S.early_late_space_chips=0.5; | Tracking_2S.early_late_space_chips=0.5; | ||||||
|  |  | ||||||
| ;######### TELEMETRY DECODER GPS CONFIG ############ | ;######### TELEMETRY DECODER GPS CONFIG ############ | ||||||
| TelemetryDecoder_2S.implementation=GPS_L2_M_Telemetry_Decoder | TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder | ||||||
| TelemetryDecoder_2S.dump=false | TelemetryDecoder_2S.dump=false | ||||||
| TelemetryDecoder_2S.decimation_factor=1; | TelemetryDecoder_2S.decimation_factor=1; | ||||||
|  |  | ||||||
| ;######### OBSERVABLES CONFIG ############. | ;######### OBSERVABLES CONFIG ############. | ||||||
| Observables.implementation=GPS_L1_CA_Observables | Observables.implementation=Hybrid_Observables | ||||||
| Observables.dump=false | Observables.dump=false | ||||||
| Observables.dump_filename=./observables.dat | Observables.dump_filename=./observables.dat | ||||||
|  |  | ||||||
|  |  | ||||||
| ;######### PVT CONFIG ############ | ;######### PVT CONFIG ############ | ||||||
| PVT.implementation=GPS_L1_CA_PVT | PVT.implementation=Hybrid_PVT | ||||||
| PVT.averaging_depth=10 | PVT.averaging_depth=10 | ||||||
| PVT.flag_averaging=true | PVT.flag_averaging=true | ||||||
| PVT.output_rate_ms=100 | PVT.output_rate_ms=100 | ||||||
|   | |||||||
| @@ -134,18 +134,18 @@ Tracking_2S.order=2; | |||||||
| Tracking_2S.early_late_space_chips=0.5; | Tracking_2S.early_late_space_chips=0.5; | ||||||
|  |  | ||||||
| ;######### TELEMETRY DECODER GPS CONFIG ############ | ;######### TELEMETRY DECODER GPS CONFIG ############ | ||||||
| TelemetryDecoder_2S.implementation=GPS_L2_M_Telemetry_Decoder | TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder | ||||||
| TelemetryDecoder_2S.dump=true | TelemetryDecoder_2S.dump=true | ||||||
| TelemetryDecoder_2S.decimation_factor=1; | TelemetryDecoder_2S.decimation_factor=1; | ||||||
|  |  | ||||||
| ;######### OBSERVABLES CONFIG ############. | ;######### OBSERVABLES CONFIG ############. | ||||||
| Observables.implementation=GPS_L1_CA_Observables | Observables.implementation=Hybrid_Observables | ||||||
| Observables.dump=false | Observables.dump=false | ||||||
| Observables.dump_filename=./observables.dat | Observables.dump_filename=./observables.dat | ||||||
|  |  | ||||||
|  |  | ||||||
| ;######### PVT CONFIG ############ | ;######### PVT CONFIG ############ | ||||||
| PVT.implementation=GPS_L1_CA_PVT | PVT.implementation=Hybrid_PVT | ||||||
| PVT.averaging_depth=10 | PVT.averaging_depth=10 | ||||||
| PVT.flag_averaging=true | PVT.flag_averaging=true | ||||||
| PVT.output_rate_ms=100 | PVT.output_rate_ms=100 | ||||||
|   | |||||||
| @@ -438,14 +438,14 @@ TelemetryDecoder_1C.decimation_factor=20; | |||||||
|  |  | ||||||
| ;######### TELEMETRY DECODER GPS L2 CONFIG ############ | ;######### TELEMETRY DECODER GPS L2 CONFIG ############ | ||||||
| ;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L2 M | ;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L2 M | ||||||
| TelemetryDecoder_2S.implementation=GPS_L2_M_Telemetry_Decoder | TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder | ||||||
| TelemetryDecoder_2S.dump=false | TelemetryDecoder_2S.dump=false | ||||||
| TelemetryDecoder_2S.decimation_factor=1; | TelemetryDecoder_2S.decimation_factor=1; | ||||||
|  |  | ||||||
|  |  | ||||||
| ;######### OBSERVABLES CONFIG ############ | ;######### OBSERVABLES CONFIG ############ | ||||||
| ;#implementation: Use [GPS_L1_CA_Observables] for GPS L1 C/A.Mixed_Observables | ;#implementation: Use [GPS_L1_CA_Observables] for GPS L1 C/A.Mixed_Observables | ||||||
| Observables.implementation=GPS_L1_CA_Observables | Observables.implementation=Hybrid_Observables | ||||||
|  |  | ||||||
| ;#dump: Enable or disable the Observables internal binary data file logging [true] or [false] | ;#dump: Enable or disable the Observables internal binary data file logging [true] or [false] | ||||||
| Observables.dump=false | Observables.dump=false | ||||||
| @@ -456,7 +456,7 @@ Observables.dump_filename=./observables.dat | |||||||
|  |  | ||||||
| ;######### PVT CONFIG ############ | ;######### PVT CONFIG ############ | ||||||
| ;#implementation: Position Velocity and Time (PVT) implementation algorithm: Use [GPS_L1_CA_PVT] in this version. | ;#implementation: Position Velocity and Time (PVT) implementation algorithm: Use [GPS_L1_CA_PVT] in this version. | ||||||
| PVT.implementation=GPS_L1_CA_PVT | PVT.implementation=Hybrid_PVT | ||||||
|  |  | ||||||
| ;#averaging_depth: Number of PVT observations in the moving average algorithm | ;#averaging_depth: Number of PVT observations in the moving average algorithm | ||||||
| PVT.averaging_depth=10 | PVT.averaging_depth=10 | ||||||
|   | |||||||
| @@ -440,7 +440,7 @@ TelemetryDecoder_1C.decimation_factor=20; | |||||||
|  |  | ||||||
| ;######### TELEMETRY DECODER GPS L2 CONFIG ############ | ;######### TELEMETRY DECODER GPS L2 CONFIG ############ | ||||||
| ;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L2 M | ;#implementation: Use [GPS_L1_CA_Telemetry_Decoder] for GPS L2 M | ||||||
| TelemetryDecoder_2S.implementation=GPS_L2_M_Telemetry_Decoder | TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder | ||||||
| TelemetryDecoder_2S.dump=false | TelemetryDecoder_2S.dump=false | ||||||
| TelemetryDecoder_2S.decimation_factor=1; | TelemetryDecoder_2S.decimation_factor=1; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -378,14 +378,14 @@ TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder | |||||||
| TelemetryDecoder_1C.dump=false | TelemetryDecoder_1C.dump=false | ||||||
| TelemetryDecoder_1C.decimation_factor=20; | TelemetryDecoder_1C.decimation_factor=20; | ||||||
|  |  | ||||||
| TelemetryDecoder_2S.implementation=GPS_L2_M_Telemetry_Decoder | TelemetryDecoder_2S.implementation=GPS_L2C_Telemetry_Decoder | ||||||
| TelemetryDecoder_2S.dump=false | TelemetryDecoder_2S.dump=false | ||||||
| TelemetryDecoder_2S.decimation_factor=1; | TelemetryDecoder_2S.decimation_factor=1; | ||||||
|  |  | ||||||
|  |  | ||||||
| ;######### OBSERVABLES CONFIG ############ | ;######### OBSERVABLES CONFIG ############ | ||||||
| ;#implementation: Use [GPS_L1_CA_Observables] for GPS L1 C/A. | ;#implementation: Use [GPS_L1_CA_Observables] for GPS L1 C/A. | ||||||
| Observables.implementation=GPS_L1_CA_Observables | Observables.implementation=Hybrid_Observables | ||||||
|  |  | ||||||
| ;#dump: Enable or disable the Observables internal binary data file logging [true] or [false] | ;#dump: Enable or disable the Observables internal binary data file logging [true] or [false] | ||||||
| Observables.dump=false | Observables.dump=false | ||||||
| @@ -396,7 +396,7 @@ Observables.dump_filename=./observables.dat | |||||||
|  |  | ||||||
| ;######### PVT CONFIG ############ | ;######### PVT CONFIG ############ | ||||||
| ;#implementation: Position Velocity and Time (PVT) implementation algorithm: Use [GPS_L1_CA_PVT] in this version. | ;#implementation: Position Velocity and Time (PVT) implementation algorithm: Use [GPS_L1_CA_PVT] in this version. | ||||||
| PVT.implementation=GPS_L1_CA_PVT | PVT.implementation=Hybrid_PVT | ||||||
|  |  | ||||||
| ;#averaging_depth: Number of PVT observations in the moving average algorithm | ;#averaging_depth: Number of PVT observations in the moving average algorithm | ||||||
| PVT.averaging_depth=10 | PVT.averaging_depth=10 | ||||||
|   | |||||||
| @@ -18,7 +18,7 @@ | |||||||
|  |  | ||||||
| set(TELEMETRY_DECODER_ADAPTER_SOURCES  | set(TELEMETRY_DECODER_ADAPTER_SOURCES  | ||||||
|     gps_l1_ca_telemetry_decoder.cc  |     gps_l1_ca_telemetry_decoder.cc  | ||||||
|     gps_l2_m_telemetry_decoder.cc  |     gps_l2c_telemetry_decoder.cc  | ||||||
|     galileo_e1b_telemetry_decoder.cc |     galileo_e1b_telemetry_decoder.cc | ||||||
|     sbas_l1_telemetry_decoder.cc |     sbas_l1_telemetry_decoder.cc | ||||||
|     galileo_e5a_telemetry_decoder.cc |     galileo_e5a_telemetry_decoder.cc | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| /*!
 | /*!
 | ||||||
|  * \file gps_l2_m_telemetry_decoder.cc |  * \file gps_l2c_telemetry_decoder.cc | ||||||
|  * \brief Implementation of an adapter of a GPS L2C M NAV data decoder block |  * \brief Implementation of an adapter of a GPS L2C M NAV data decoder block | ||||||
|  * to a TelemetryDecoderInterface |  * to a TelemetryDecoderInterface | ||||||
|  * \author Javier Arribas, 2015. jarribas(at)cttc.es |  * \author Javier Arribas, 2015. jarribas(at)cttc.es | ||||||
| @@ -30,7 +30,7 @@ | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| #include "gps_l2_m_telemetry_decoder.h" | #include "gps_l2c_telemetry_decoder.h" | ||||||
| #include <gnuradio/io_signature.h> | #include <gnuradio/io_signature.h> | ||||||
| #include <glog/logging.h> | #include <glog/logging.h> | ||||||
| #include "concurrent_queue.h" | #include "concurrent_queue.h" | ||||||
| @@ -43,7 +43,7 @@ | |||||||
| 
 | 
 | ||||||
| using google::LogMessage; | using google::LogMessage; | ||||||
| 
 | 
 | ||||||
| GpsL2MTelemetryDecoder::GpsL2MTelemetryDecoder(ConfigurationInterface* configuration, | GpsL2CTelemetryDecoder::GpsL2CTelemetryDecoder(ConfigurationInterface* configuration, | ||||||
|         std::string role, |         std::string role, | ||||||
|         unsigned int in_streams, |         unsigned int in_streams, | ||||||
|         unsigned int out_streams) : |         unsigned int out_streams) : | ||||||
| @@ -56,7 +56,7 @@ GpsL2MTelemetryDecoder::GpsL2MTelemetryDecoder(ConfigurationInterface* configura | |||||||
|     dump_ = configuration->property(role + ".dump", false); |     dump_ = configuration->property(role + ".dump", false); | ||||||
|     dump_filename_ = configuration->property(role + ".dump_filename", default_dump_filename); |     dump_filename_ = configuration->property(role + ".dump_filename", default_dump_filename); | ||||||
|     // make telemetry decoder object
 |     // make telemetry decoder object
 | ||||||
|     telemetry_decoder_ = gps_l2_m_make_telemetry_decoder_cc(satellite_, dump_); // TODO fix me
 |     telemetry_decoder_ = gps_l2c_make_telemetry_decoder_cc(satellite_, dump_); // TODO fix me
 | ||||||
|     DLOG(INFO) << "telemetry_decoder(" << telemetry_decoder_->unique_id() << ")"; |     DLOG(INFO) << "telemetry_decoder(" << telemetry_decoder_->unique_id() << ")"; | ||||||
| 
 | 
 | ||||||
|     //decimation factor
 |     //decimation factor
 | ||||||
| @@ -67,11 +67,11 @@ GpsL2MTelemetryDecoder::GpsL2MTelemetryDecoder(ConfigurationInterface* configura | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| GpsL2MTelemetryDecoder::~GpsL2MTelemetryDecoder() | GpsL2CTelemetryDecoder::~GpsL2CTelemetryDecoder() | ||||||
| {} | {} | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void GpsL2MTelemetryDecoder::set_satellite(Gnss_Satellite satellite) | void GpsL2CTelemetryDecoder::set_satellite(Gnss_Satellite satellite) | ||||||
| { | { | ||||||
|     satellite_ = Gnss_Satellite(satellite.get_system(), satellite.get_PRN()); |     satellite_ = Gnss_Satellite(satellite.get_system(), satellite.get_PRN()); | ||||||
|     telemetry_decoder_->set_satellite(satellite_); |     telemetry_decoder_->set_satellite(satellite_); | ||||||
| @@ -79,7 +79,7 @@ void GpsL2MTelemetryDecoder::set_satellite(Gnss_Satellite satellite) | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void GpsL2MTelemetryDecoder::connect(gr::top_block_sptr top_block) | void GpsL2CTelemetryDecoder::connect(gr::top_block_sptr top_block) | ||||||
| { | { | ||||||
|     if(top_block) { /* top_block is not null */}; |     if(top_block) { /* top_block is not null */}; | ||||||
|     // Nothing to connect internally
 |     // Nothing to connect internally
 | ||||||
| @@ -87,20 +87,20 @@ void GpsL2MTelemetryDecoder::connect(gr::top_block_sptr top_block) | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void GpsL2MTelemetryDecoder::disconnect(gr::top_block_sptr top_block) | void GpsL2CTelemetryDecoder::disconnect(gr::top_block_sptr top_block) | ||||||
| { | { | ||||||
|     if(top_block) { /* top_block is not null */}; |     if(top_block) { /* top_block is not null */}; | ||||||
|     // Nothing to disconnect
 |     // Nothing to disconnect
 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| gr::basic_block_sptr GpsL2MTelemetryDecoder::get_left_block() | gr::basic_block_sptr GpsL2CTelemetryDecoder::get_left_block() | ||||||
| { | { | ||||||
|     return telemetry_decoder_; |     return telemetry_decoder_; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| gr::basic_block_sptr GpsL2MTelemetryDecoder::get_right_block() | gr::basic_block_sptr GpsL2CTelemetryDecoder::get_right_block() | ||||||
| { | { | ||||||
|     return telemetry_decoder_; |     return telemetry_decoder_; | ||||||
| } | } | ||||||
| @@ -1,6 +1,6 @@ | |||||||
| /*!
 | /*!
 | ||||||
|  * \file gps_l2_m_telemetry_decoder.h |  * \file gps_l2c_telemetry_decoder.h | ||||||
|  * \brief Interface of an adapter of a GPS L1 C/A NAV data decoder block |  * \brief Interface of an adapter of a GPS L2C (CNAV) data decoder block | ||||||
|  * to a TelemetryDecoderInterface |  * to a TelemetryDecoderInterface | ||||||
|  * \author Javier Arribas, 2015. jarribas(at)cttc.es |  * \author Javier Arribas, 2015. jarribas(at)cttc.es | ||||||
|  * |  * | ||||||
| @@ -30,12 +30,12 @@ | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| #ifndef GNSS_SDR_GPS_L2_M_TELEMETRY_DECODER_H_ | #ifndef GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_H_ | ||||||
| #define GNSS_SDR_GPS_L2_M_TELEMETRY_DECODER_H_ | #define GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_H_ | ||||||
| 
 | 
 | ||||||
| #include <string> | #include <string> | ||||||
| #include "telemetry_decoder_interface.h" | #include "telemetry_decoder_interface.h" | ||||||
| #include "gps_l2_m_telemetry_decoder_cc.h" | #include "gps_l2c_telemetry_decoder_cc.h" | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class ConfigurationInterface; | class ConfigurationInterface; | ||||||
| @@ -43,24 +43,24 @@ class ConfigurationInterface; | |||||||
| /*!
 | /*!
 | ||||||
|  * \brief This class implements a NAV data decoder for GPS L2 M |  * \brief This class implements a NAV data decoder for GPS L2 M | ||||||
|  */ |  */ | ||||||
| class GpsL2MTelemetryDecoder : public TelemetryDecoderInterface | class GpsL2CTelemetryDecoder : public TelemetryDecoderInterface | ||||||
| { | { | ||||||
| public: | public: | ||||||
|     GpsL2MTelemetryDecoder(ConfigurationInterface* configuration, |     GpsL2CTelemetryDecoder(ConfigurationInterface* configuration, | ||||||
|             std::string role, |             std::string role, | ||||||
|             unsigned int in_streams, |             unsigned int in_streams, | ||||||
|             unsigned int out_streams); |             unsigned int out_streams); | ||||||
| 
 | 
 | ||||||
|     virtual ~GpsL2MTelemetryDecoder(); |     virtual ~GpsL2CTelemetryDecoder(); | ||||||
|     std::string role() |     std::string role() | ||||||
|     { |     { | ||||||
|         return role_; |         return role_; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     //! Returns "GPS_L2_M_Telemetry_Decoder"
 |     //! Returns "GPS_L2C_Telemetry_Decoder"
 | ||||||
|     std::string implementation() |     std::string implementation() | ||||||
|     { |     { | ||||||
|         return "GPS_L2_M_Telemetry_Decoder"; |         return "GPS_L2C_Telemetry_Decoder"; | ||||||
|     } |     } | ||||||
|     void connect(gr::top_block_sptr top_block); |     void connect(gr::top_block_sptr top_block); | ||||||
|     void disconnect(gr::top_block_sptr top_block); |     void disconnect(gr::top_block_sptr top_block); | ||||||
| @@ -78,7 +78,7 @@ public: | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| private: | private: | ||||||
|     gps_l2_m_telemetry_decoder_cc_sptr telemetry_decoder_; |     gps_l2c_telemetry_decoder_cc_sptr telemetry_decoder_; | ||||||
|     Gnss_Satellite satellite_; |     Gnss_Satellite satellite_; | ||||||
|     int channel_; |     int channel_; | ||||||
|     bool dump_; |     bool dump_; | ||||||
| @@ -18,7 +18,7 @@ | |||||||
|  |  | ||||||
| set(TELEMETRY_DECODER_GR_BLOCKS_SOURCES  | set(TELEMETRY_DECODER_GR_BLOCKS_SOURCES  | ||||||
|      gps_l1_ca_telemetry_decoder_cc.cc |      gps_l1_ca_telemetry_decoder_cc.cc | ||||||
|      gps_l2_m_telemetry_decoder_cc.cc |      gps_l2c_telemetry_decoder_cc.cc | ||||||
|      galileo_e1b_telemetry_decoder_cc.cc |      galileo_e1b_telemetry_decoder_cc.cc | ||||||
|      sbas_l1_telemetry_decoder_cc.cc |      sbas_l1_telemetry_decoder_cc.cc | ||||||
|      galileo_e5a_telemetry_decoder_cc.cc |      galileo_e5a_telemetry_decoder_cc.cc | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| /*!
 | /*!
 | ||||||
|  * \file gps_l2_m_telemetry_decoder_cc.cc |  * \file gps_l2c_telemetry_decoder_cc.cc | ||||||
|  * \brief Implementation of a NAV message demodulator block based on |  * \brief Implementation of a NAV message demodulator block based on | ||||||
|  * Kay Borre book MATLAB-based GPS receiver |  * Kay Borre book MATLAB-based GPS receiver | ||||||
|  * \author Javier Arribas, 2015. jarribas(at)cttc.es |  * \author Javier Arribas, 2015. jarribas(at)cttc.es | ||||||
| @@ -35,7 +35,7 @@ | |||||||
| #include <glog/logging.h> | #include <glog/logging.h> | ||||||
| #include <boost/lexical_cast.hpp> | #include <boost/lexical_cast.hpp> | ||||||
| #include "gnss_synchro.h" | #include "gnss_synchro.h" | ||||||
| #include "gps_l2_m_telemetry_decoder_cc.h" | #include "gps_l2c_telemetry_decoder_cc.h" | ||||||
| 
 | 
 | ||||||
| using google::LogMessage; | using google::LogMessage; | ||||||
| 
 | 
 | ||||||
| @@ -47,18 +47,18 @@ using google::LogMessage; | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| gps_l2_m_telemetry_decoder_cc_sptr | gps_l2c_telemetry_decoder_cc_sptr | ||||||
| gps_l2_m_make_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump) | gps_l2c_make_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump) | ||||||
| { | { | ||||||
|     return gps_l2_m_telemetry_decoder_cc_sptr(new gps_l2_m_telemetry_decoder_cc(satellite, dump)); |     return gps_l2c_telemetry_decoder_cc_sptr(new gps_l2c_telemetry_decoder_cc(satellite, dump)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| gps_l2_m_telemetry_decoder_cc::gps_l2_m_telemetry_decoder_cc( | gps_l2c_telemetry_decoder_cc::gps_l2c_telemetry_decoder_cc( | ||||||
|         Gnss_Satellite satellite, |         Gnss_Satellite satellite, | ||||||
|         bool dump) : |         bool dump) : | ||||||
|                 gr::block("gps_l2_m_telemetry_decoder_cc", |                 gr::block("gps_l2c_telemetry_decoder_cc", | ||||||
|                 gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)), |                 gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)), | ||||||
|                 gr::io_signature::make(1, 1, sizeof(Gnss_Synchro))) |                 gr::io_signature::make(1, 1, sizeof(Gnss_Synchro))) | ||||||
| { | { | ||||||
| @@ -85,13 +85,13 @@ gps_l2_m_telemetry_decoder_cc::gps_l2_m_telemetry_decoder_cc( | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| gps_l2_m_telemetry_decoder_cc::~gps_l2_m_telemetry_decoder_cc() | gps_l2c_telemetry_decoder_cc::~gps_l2c_telemetry_decoder_cc() | ||||||
| { | { | ||||||
|     d_dump_file.close(); |     d_dump_file.close(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::forecast (int noutput_items, gr_vector_int &ninput_items_required) | void gps_l2c_telemetry_decoder_cc::forecast (int noutput_items, gr_vector_int &ninput_items_required) | ||||||
| { | { | ||||||
|     if (noutput_items != 0) |     if (noutput_items != 0) | ||||||
|         { |         { | ||||||
| @@ -103,13 +103,13 @@ void gps_l2_m_telemetry_decoder_cc::forecast (int noutput_items, gr_vector_int & | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::set_decimation(int decimation) | void gps_l2c_telemetry_decoder_cc::set_decimation(int decimation) | ||||||
| { | { | ||||||
|     d_decimation_output_factor = decimation; |     d_decimation_output_factor = decimation; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| int gps_l2_m_telemetry_decoder_cc::general_work (int noutput_items __attribute__((unused)), gr_vector_int &ninput_items __attribute__((unused)), | int gps_l2c_telemetry_decoder_cc::general_work (int noutput_items __attribute__((unused)), gr_vector_int &ninput_items __attribute__((unused)), | ||||||
|         gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) |         gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) | ||||||
| { | { | ||||||
|     // get pointers on in- and output gnss-synchro objects
 |     // get pointers on in- and output gnss-synchro objects
 | ||||||
| @@ -276,7 +276,7 @@ int gps_l2_m_telemetry_decoder_cc::general_work (int noutput_items __attribute__ | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::set_satellite(Gnss_Satellite satellite) | void gps_l2c_telemetry_decoder_cc::set_satellite(Gnss_Satellite satellite) | ||||||
| { | { | ||||||
|     d_satellite = Gnss_Satellite(satellite.get_system(), satellite.get_PRN()); |     d_satellite = Gnss_Satellite(satellite.get_system(), satellite.get_PRN()); | ||||||
|     LOG(INFO) << "GPS L2C CNAV telemetry decoder in channel " << this->d_channel << " set to satellite " << d_satellite; |     LOG(INFO) << "GPS L2C CNAV telemetry decoder in channel " << this->d_channel << " set to satellite " << d_satellite; | ||||||
| @@ -284,7 +284,7 @@ void gps_l2_m_telemetry_decoder_cc::set_satellite(Gnss_Satellite satellite) | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::set_channel(int channel) | void gps_l2c_telemetry_decoder_cc::set_channel(int channel) | ||||||
| { | { | ||||||
|     d_channel = channel; |     d_channel = channel; | ||||||
|     LOG(INFO) << "GPS L2C CNAV channel set to " << channel; |     LOG(INFO) << "GPS L2C CNAV channel set to " << channel; | ||||||
| @@ -292,7 +292,7 @@ void gps_l2_m_telemetry_decoder_cc::set_channel(int channel) | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| // ### helper class for symbol alignment and viterbi decoding ###
 | // ### helper class for symbol alignment and viterbi decoding ###
 | ||||||
| gps_l2_m_telemetry_decoder_cc::symbol_aligner_and_decoder::symbol_aligner_and_decoder() | gps_l2c_telemetry_decoder_cc::symbol_aligner_and_decoder::symbol_aligner_and_decoder() | ||||||
| { | { | ||||||
|     // convolutional code properties
 |     // convolutional code properties
 | ||||||
|     d_KK = 7; |     d_KK = 7; | ||||||
| @@ -307,14 +307,14 @@ gps_l2_m_telemetry_decoder_cc::symbol_aligner_and_decoder::symbol_aligner_and_de | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| gps_l2_m_telemetry_decoder_cc::symbol_aligner_and_decoder::~symbol_aligner_and_decoder() | gps_l2c_telemetry_decoder_cc::symbol_aligner_and_decoder::~symbol_aligner_and_decoder() | ||||||
| { | { | ||||||
|     delete d_vd1; |     delete d_vd1; | ||||||
|     delete d_vd2; |     delete d_vd2; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::symbol_aligner_and_decoder::reset() | void gps_l2c_telemetry_decoder_cc::symbol_aligner_and_decoder::reset() | ||||||
| { | { | ||||||
|     d_past_symbol = 0; |     d_past_symbol = 0; | ||||||
|     d_vd1->reset(); |     d_vd1->reset(); | ||||||
| @@ -322,7 +322,7 @@ void gps_l2_m_telemetry_decoder_cc::symbol_aligner_and_decoder::reset() | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| bool gps_l2_m_telemetry_decoder_cc::symbol_aligner_and_decoder::get_bits(const std::vector<double> & symbols, std::vector<int> & bits) | bool gps_l2c_telemetry_decoder_cc::symbol_aligner_and_decoder::get_bits(const std::vector<double> & symbols, std::vector<int> & bits) | ||||||
| { | { | ||||||
|     const int traceback_depth = 5 * d_KK; |     const int traceback_depth = 5 * d_KK; | ||||||
|     int nbits_requested = symbols.size() / GPS_L2_SYMBOLS_PER_BIT; |     int nbits_requested = symbols.size() / GPS_L2_SYMBOLS_PER_BIT; | ||||||
| @@ -362,13 +362,13 @@ bool gps_l2_m_telemetry_decoder_cc::symbol_aligner_and_decoder::get_bits(const s | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| // ### helper class for detecting the preamble and collect the corresponding message candidates ###
 | // ### helper class for detecting the preamble and collect the corresponding message candidates ###
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::frame_detector::reset() | void gps_l2c_telemetry_decoder_cc::frame_detector::reset() | ||||||
| { | { | ||||||
|     d_buffer.clear(); |     d_buffer.clear(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::frame_detector::get_frame_candidates(const std::vector<int> & bits, std::vector<std::pair<int,std::vector<int>>> & msg_candidates) | void gps_l2c_telemetry_decoder_cc::frame_detector::get_frame_candidates(const std::vector<int> & bits, std::vector<std::pair<int,std::vector<int>>> & msg_candidates) | ||||||
| { | { | ||||||
|     //std::stringstream ss;
 |     //std::stringstream ss;
 | ||||||
|     unsigned int cnav_msg_length = 300; |     unsigned int cnav_msg_length = 300; | ||||||
| @@ -426,12 +426,12 @@ void gps_l2_m_telemetry_decoder_cc::frame_detector::get_frame_candidates(const s | |||||||
| 
 | 
 | ||||||
| // ### helper class for checking the CRC of the message candidates ###
 | // ### helper class for checking the CRC of the message candidates ###
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::crc_verifier::reset() | void gps_l2c_telemetry_decoder_cc::crc_verifier::reset() | ||||||
| { | { | ||||||
| 
 | 
 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::crc_verifier::get_valid_frames(const std::vector<msg_candiate_int_t> & msg_candidates, std::vector<msg_candiate_int_t> & valid_msgs) | void gps_l2c_telemetry_decoder_cc::crc_verifier::get_valid_frames(const std::vector<msg_candiate_int_t> & msg_candidates, std::vector<msg_candiate_int_t> & valid_msgs) | ||||||
| { | { | ||||||
|     std::vector <unsigned char> tmp_msg; |     std::vector <unsigned char> tmp_msg; | ||||||
|     LOG(INFO) << "get_valid_frames(): " << "msg_candidates.size()=" << msg_candidates.size(); |     LOG(INFO) << "get_valid_frames(): " << "msg_candidates.size()=" << msg_candidates.size(); | ||||||
| @@ -457,7 +457,7 @@ void gps_l2_m_telemetry_decoder_cc::crc_verifier::get_valid_frames(const std::ve | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::crc_verifier::zerropad_back_and_convert_to_bytes(const std::vector<int> & msg_candidate, std::vector<unsigned char> & bytes) | void gps_l2c_telemetry_decoder_cc::crc_verifier::zerropad_back_and_convert_to_bytes(const std::vector<int> & msg_candidate, std::vector<unsigned char> & bytes) | ||||||
| { | { | ||||||
|     //std::stringstream ss;
 |     //std::stringstream ss;
 | ||||||
|     const size_t bits_per_byte = 8; |     const size_t bits_per_byte = 8; | ||||||
| @@ -482,7 +482,7 @@ void gps_l2_m_telemetry_decoder_cc::crc_verifier::zerropad_back_and_convert_to_b | |||||||
|     //            << std::setfill(' ') << std::resetiosflags(std::ios::hex);
 |     //            << std::setfill(' ') << std::resetiosflags(std::ios::hex);
 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void gps_l2_m_telemetry_decoder_cc::crc_verifier::zerropad_front_and_convert_to_bytes(const std::vector<int> & msg_candidate, std::vector<unsigned char> & bytes) | void gps_l2c_telemetry_decoder_cc::crc_verifier::zerropad_front_and_convert_to_bytes(const std::vector<int> & msg_candidate, std::vector<unsigned char> & bytes) | ||||||
| { | { | ||||||
|     //std::stringstream ss;
 |     //std::stringstream ss;
 | ||||||
|     const size_t bits_per_byte = 8; |     const size_t bits_per_byte = 8; | ||||||
| @@ -1,6 +1,6 @@ | |||||||
| /*!
 | /*!
 | ||||||
|  * \file gps_l2_m_telemetry_decoder_cc.h |  * \file gps_l2c_telemetry_decoder_cc.h | ||||||
|  * \brief Interface of a NAV message demodulator block based on |  * \brief Interface of a CNAV message demodulator block based on | ||||||
|  * Kay Borre book MATLAB-based GPS receiver |  * Kay Borre book MATLAB-based GPS receiver | ||||||
|  * \author Javier Arribas, 2015. jarribas(at)cttc.es |  * \author Javier Arribas, 2015. jarribas(at)cttc.es | ||||||
|  * ------------------------------------------------------------------------- |  * ------------------------------------------------------------------------- | ||||||
| @@ -28,8 +28,8 @@ | |||||||
|  * ------------------------------------------------------------------------- |  * ------------------------------------------------------------------------- | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| #ifndef GNSS_SDR_GPS_L2_M_TELEMETRY_DECODER_CC_H | #ifndef GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_CC_H | ||||||
| #define GNSS_SDR_GPS_L2_M_TELEMETRY_DECODER_CC_H | #define GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_CC_H | ||||||
| 
 | 
 | ||||||
| #include <algorithm> // for copy | #include <algorithm> // for copy | ||||||
| #include <deque> | #include <deque> | ||||||
| @@ -47,21 +47,21 @@ | |||||||
| #include "concurrent_queue.h" | #include "concurrent_queue.h" | ||||||
| #include "GPS_L2C.h" | #include "GPS_L2C.h" | ||||||
| 
 | 
 | ||||||
| class gps_l2_m_telemetry_decoder_cc; | class gps_l2c_telemetry_decoder_cc; | ||||||
| 
 | 
 | ||||||
| typedef boost::shared_ptr<gps_l2_m_telemetry_decoder_cc> gps_l2_m_telemetry_decoder_cc_sptr; | typedef boost::shared_ptr<gps_l2c_telemetry_decoder_cc> gps_l2c_telemetry_decoder_cc_sptr; | ||||||
| 
 | 
 | ||||||
| gps_l2_m_telemetry_decoder_cc_sptr | gps_l2c_telemetry_decoder_cc_sptr | ||||||
| gps_l2_m_make_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump); | gps_l2c_make_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump); | ||||||
| 
 | 
 | ||||||
| /*!
 | /*!
 | ||||||
|  * \brief This class implements a block that decodes the SBAS integrity and corrections data defined in RTCA MOPS DO-229 |  * \brief This class implements a block that decodes the SBAS integrity and corrections data defined in RTCA MOPS DO-229 | ||||||
|  * |  * | ||||||
|  */ |  */ | ||||||
| class gps_l2_m_telemetry_decoder_cc : public gr::block | class gps_l2c_telemetry_decoder_cc : public gr::block | ||||||
| { | { | ||||||
| public: | public: | ||||||
|     ~gps_l2_m_telemetry_decoder_cc(); |     ~gps_l2c_telemetry_decoder_cc(); | ||||||
|     void set_satellite(Gnss_Satellite satellite);  //!< Set satellite PRN
 |     void set_satellite(Gnss_Satellite satellite);  //!< Set satellite PRN
 | ||||||
|     void set_channel(int channel);                 //!< Set receiver's channel
 |     void set_channel(int channel);                 //!< Set receiver's channel
 | ||||||
|     void set_decimation(int decimation); |     void set_decimation(int decimation); | ||||||
| @@ -79,9 +79,9 @@ public: | |||||||
|     void forecast (int noutput_items, gr_vector_int &ninput_items_required); |     void forecast (int noutput_items, gr_vector_int &ninput_items_required); | ||||||
| 
 | 
 | ||||||
| private: | private: | ||||||
|     friend gps_l2_m_telemetry_decoder_cc_sptr |     friend gps_l2c_telemetry_decoder_cc_sptr | ||||||
|     gps_l2_m_make_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump); |     gps_l2c_make_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump); | ||||||
|     gps_l2_m_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump); |     gps_l2c_telemetry_decoder_cc(Gnss_Satellite satellite, bool dump); | ||||||
| 
 | 
 | ||||||
|     void viterbi_decoder(double *page_part_symbols, int *page_part_bits); |     void viterbi_decoder(double *page_part_symbols, int *page_part_bits); | ||||||
|     void align_samples(); |     void align_samples(); | ||||||
| @@ -85,7 +85,7 @@ | |||||||
| #include "galileo_e5a_dll_pll_tracking.h" | #include "galileo_e5a_dll_pll_tracking.h" | ||||||
| #include "gps_l2_m_dll_pll_tracking.h" | #include "gps_l2_m_dll_pll_tracking.h" | ||||||
| #include "gps_l1_ca_telemetry_decoder.h" | #include "gps_l1_ca_telemetry_decoder.h" | ||||||
| #include "gps_l2_m_telemetry_decoder.h" | #include "gps_l2c_telemetry_decoder.h" | ||||||
| #include "galileo_e1b_telemetry_decoder.h" | #include "galileo_e1b_telemetry_decoder.h" | ||||||
| #include "galileo_e5a_telemetry_decoder.h" | #include "galileo_e5a_telemetry_decoder.h" | ||||||
| #include "sbas_l1_telemetry_decoder.h" | #include "sbas_l1_telemetry_decoder.h" | ||||||
| @@ -1031,6 +1031,12 @@ std::unique_ptr<GNSSBlockInterface> GNSSBlockFactory::GetBlock( | |||||||
|                     out_streams)); |                     out_streams)); | ||||||
|             block = std::move(block_); |             block = std::move(block_); | ||||||
|         } |         } | ||||||
|  |     else if (implementation.compare("GPS_L2C_Telemetry_Decoder") == 0) | ||||||
|  |         { | ||||||
|  |             std::unique_ptr<GNSSBlockInterface> block_(new GpsL2CTelemetryDecoder(configuration.get(), role, in_streams, | ||||||
|  |                     out_streams)); | ||||||
|  |             block = std::move(block_); | ||||||
|  |         } | ||||||
|     else if (implementation.compare("Galileo_E1B_Telemetry_Decoder") == 0) |     else if (implementation.compare("Galileo_E1B_Telemetry_Decoder") == 0) | ||||||
|         { |         { | ||||||
|             std::unique_ptr<GNSSBlockInterface> block_(new GalileoE1BTelemetryDecoder(configuration.get(), role, in_streams, |             std::unique_ptr<GNSSBlockInterface> block_(new GalileoE1BTelemetryDecoder(configuration.get(), role, in_streams, | ||||||
| @@ -1324,9 +1330,9 @@ std::unique_ptr<TelemetryDecoderInterface> GNSSBlockFactory::GetTlmBlock( | |||||||
|                     out_streams)); |                     out_streams)); | ||||||
|             block = std::move(block_); |             block = std::move(block_); | ||||||
|         } |         } | ||||||
|     else if (implementation.compare("GPS_L2_M_Telemetry_Decoder") == 0) |     else if (implementation.compare("GPS_L2C_Telemetry_Decoder") == 0) | ||||||
|         { |         { | ||||||
|             std::unique_ptr<TelemetryDecoderInterface> block_(new GpsL2MTelemetryDecoder(configuration.get(), role, in_streams, |             std::unique_ptr<TelemetryDecoderInterface> block_(new GpsL2CTelemetryDecoder(configuration.get(), role, in_streams, | ||||||
|                     out_streams)); |                     out_streams)); | ||||||
|             block = std::move(block_); |             block = std::move(block_); | ||||||
|         } |         } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Carles Fernandez
					Carles Fernandez