1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-12-14 20:20:35 +00:00

Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into next

This commit is contained in:
Javier Arribas 2016-04-25 20:43:52 +02:00
commit d2fdc16e2a
5 changed files with 69 additions and 63 deletions

View File

@ -97,7 +97,7 @@ Channel::Channel(ConfigurationInterface *configuration, unsigned int channel,
gnss_signal_ = Gnss_Signal(implementation_); gnss_signal_ = Gnss_Signal(implementation_);
chennel_msg_rx= channel_msg_receiver_make_cc(&channel_fsm_, repeat_); channel_msg_rx = channel_msg_receiver_make_cc(&channel_fsm_, repeat_);
} }
@ -132,8 +132,8 @@ void Channel::connect(gr::top_block_sptr top_block)
DLOG(INFO) << "MSG FEEDBACK CHANNEL telemetry_decoder -> tracking"; DLOG(INFO) << "MSG FEEDBACK CHANNEL telemetry_decoder -> tracking";
//std::cout<<"has port: "<<trk_->get_right_block()->has_msg_port(pmt::mp("events"))<<std::endl; //std::cout<<"has port: "<<trk_->get_right_block()->has_msg_port(pmt::mp("events"))<<std::endl;
top_block->msg_connect(acq_->get_right_block(),pmt::mp("events"), chennel_msg_rx,pmt::mp("events")); top_block->msg_connect(acq_->get_right_block(), pmt::mp("events"), channel_msg_rx, pmt::mp("events"));
top_block->msg_connect(trk_->get_right_block(),pmt::mp("events"), chennel_msg_rx,pmt::mp("events")); top_block->msg_connect(trk_->get_right_block(), pmt::mp("events"), channel_msg_rx, pmt::mp("events"));
connected_ = true; connected_ = true;
} }
@ -156,11 +156,13 @@ void Channel::disconnect(gr::top_block_sptr top_block)
connected_ = false; connected_ = false;
} }
gr::basic_block_sptr Channel::get_left_block() gr::basic_block_sptr Channel::get_left_block()
{ {
return pass_through_->get_left_block(); return pass_through_->get_left_block();
} }
gr::basic_block_sptr Channel::get_right_block() gr::basic_block_sptr Channel::get_right_block()
{ {
return nav_->get_right_block(); return nav_->get_right_block();
@ -180,6 +182,7 @@ void Channel::set_signal(const Gnss_Signal& gnss_signal)
nav_->set_satellite(gnss_signal_.get_satellite()); nav_->set_satellite(gnss_signal_.get_satellite());
} }
void Channel::start_acquisition() void Channel::start_acquisition()
{ {
channel_fsm_.Event_start_acquisition(); channel_fsm_.Event_start_acquisition();

View File

@ -87,7 +87,7 @@ public:
private: private:
channel_msg_receiver_cc_sptr chennel_msg_rx; channel_msg_receiver_cc_sptr channel_msg_rx;
GNSSBlockInterface *pass_through_; GNSSBlockInterface *pass_through_;
AcquisitionInterface *acq_; AcquisitionInterface *acq_;
TrackingInterface *trk_; TrackingInterface *trk_;

View File

@ -44,7 +44,8 @@ channel_msg_receiver_cc_sptr channel_msg_receiver_make_cc(ChannelFsm* channel_fs
void channel_msg_receiver_cc::msg_handler_events(pmt::pmt_t msg) void channel_msg_receiver_cc::msg_handler_events(pmt::pmt_t msg)
{ {
try { try
{
long int message = pmt::to_long(msg); long int message = pmt::to_long(msg);
switch (message) switch (message)
{ {
@ -72,16 +73,17 @@ void channel_msg_receiver_cc::msg_handler_events(pmt::pmt_t msg)
LOG(WARNING) << "Default case, invalid message."; LOG(WARNING) << "Default case, invalid message.";
break; break;
} }
}catch(boost::bad_any_cast& e) }
catch(boost::bad_any_cast& e)
{ {
LOG(WARNING) << "msg_handler_telemetry Bad any cast!\n"; LOG(WARNING) << "msg_handler_telemetry Bad any cast!";
} }
} }
channel_msg_receiver_cc::channel_msg_receiver_cc(ChannelFsm* channel_fsm, bool repeat) : channel_msg_receiver_cc::channel_msg_receiver_cc(ChannelFsm* channel_fsm, bool repeat) :
gr::block("channel_msg_receiver_cc", gr::io_signature::make(0, 0, 0), gr::io_signature::make(0, 0, 0)) gr::block("channel_msg_receiver_cc", gr::io_signature::make(0, 0, 0), gr::io_signature::make(0, 0, 0))
{ {
this->message_port_register_in(pmt::mp("events")); this->message_port_register_in(pmt::mp("events"));
this->set_msg_handler(pmt::mp("events"), boost::bind(&channel_msg_receiver_cc::msg_handler_events, this, _1)); this->set_msg_handler(pmt::mp("events"), boost::bind(&channel_msg_receiver_cc::msg_handler_events, this, _1));
@ -89,6 +91,7 @@ channel_msg_receiver_cc::channel_msg_receiver_cc(ChannelFsm* channel_fsm, bool r
d_repeat = repeat; d_repeat = repeat;
} }
channel_msg_receiver_cc::~channel_msg_receiver_cc() channel_msg_receiver_cc::~channel_msg_receiver_cc()
{} {}

View File

@ -41,7 +41,7 @@ typedef boost::shared_ptr<channel_msg_receiver_cc> channel_msg_receiver_cc_sptr;
channel_msg_receiver_cc_sptr channel_msg_receiver_make_cc(ChannelFsm* channel_fsm, bool repeat); channel_msg_receiver_cc_sptr channel_msg_receiver_make_cc(ChannelFsm* channel_fsm, bool repeat);
/*! /*!
* \brief This class implements a block that computes the PVT solution with Galileo E1 signals * \brief GNU Radio block that receives asynchronous channel messages from acquisition and tracking blocks
*/ */
class channel_msg_receiver_cc : public gr::block class channel_msg_receiver_cc : public gr::block
{ {