diff --git a/src/algorithms/channel/adapters/channel.cc b/src/algorithms/channel/adapters/channel.cc index 69b84ca0c..444eef958 100644 --- a/src/algorithms/channel/adapters/channel.cc +++ b/src/algorithms/channel/adapters/channel.cc @@ -212,6 +212,13 @@ gr::basic_block_sptr Channel::get_right_block() } +Gnss_Signal Channel::get_signal() +{ + std::lock_guard lk(mx_); + return gnss_signal_; +} + + void Channel::set_signal(const Gnss_Signal& gnss_signal) { std::lock_guard lk(mx_); diff --git a/src/algorithms/channel/adapters/channel.h b/src/algorithms/channel/adapters/channel.h index a8e80123a..834cc5cd7 100644 --- a/src/algorithms/channel/adapters/channel.h +++ b/src/algorithms/channel/adapters/channel.h @@ -84,7 +84,7 @@ public: inline std::string role() override { return role_; } inline std::string implementation() override { return std::string("Channel"); } //!< Returns "Channel" inline size_t item_size() override { return 2 * sizeof(float); } - inline Gnss_Signal get_signal() const override { return gnss_signal_; } + Gnss_Signal get_signal() override; void start_acquisition() override; //!< Start the State Machine void stop_channel() override; //!< Stop the State Machine void set_signal(const Gnss_Signal& gnss_signal_) override; //!< Sets the channel GNSS signal diff --git a/src/core/interfaces/channel_interface.h b/src/core/interfaces/channel_interface.h index da0da3ccc..9224ed0e3 100644 --- a/src/core/interfaces/channel_interface.h +++ b/src/core/interfaces/channel_interface.h @@ -49,7 +49,7 @@ public: virtual gr::basic_block_sptr get_right_block_acq() = 0; virtual gr::basic_block_sptr get_left_block() = 0; virtual gr::basic_block_sptr get_right_block() = 0; - virtual Gnss_Signal get_signal() const = 0; + virtual Gnss_Signal get_signal() = 0; virtual void start_acquisition() = 0; virtual void assist_acquisition_doppler(double Carrier_Doppler_hz) = 0; virtual void stop_channel() = 0;