From 66bb3cdc3137e46436ed18a1c453d59176051158 Mon Sep 17 00:00:00 2001 From: Piotr K Date: Wed, 13 Aug 2014 19:04:57 +0200 Subject: Changed directory structure. Corrected clock_offset_corrector (for some streange and yet unknown reason fractional resampler eats strem tags for some values of sps). (this commit may contain some changes that are not described) --- lib/misc_utils/controlled_const_source_f_impl.cc | 2 -- lib/misc_utils/controlled_rotator_cc_impl.cc | 6 ++++-- lib/misc_utils/extract_system_info_impl.cc | 17 +++++++++++++++-- lib/receiver/receiver_impl.cc | 2 +- 4 files changed, 20 insertions(+), 7 deletions(-) (limited to 'lib') diff --git a/lib/misc_utils/controlled_const_source_f_impl.cc b/lib/misc_utils/controlled_const_source_f_impl.cc index d58f04f..4aa2f14 100644 --- a/lib/misc_utils/controlled_const_source_f_impl.cc +++ b/lib/misc_utils/controlled_const_source_f_impl.cc @@ -78,8 +78,6 @@ namespace gr { void controlled_const_source_f_impl::set_constant(float constant){ d_constant = constant; } - - } /* namespace gsm */ } /* namespace gr */ diff --git a/lib/misc_utils/controlled_rotator_cc_impl.cc b/lib/misc_utils/controlled_rotator_cc_impl.cc index 5877ab1..ee72a6a 100644 --- a/lib/misc_utils/controlled_rotator_cc_impl.cc +++ b/lib/misc_utils/controlled_rotator_cc_impl.cc @@ -83,14 +83,16 @@ namespace gr { while(ii < noutput_items){ //look for different values on phase increment control input if(d_phase_inc != (*pp)){ + set_phase_inc(*(pp)); //set new value of phase increment float freq_offset_setting = (*(pp) / (2*M_PI)) * d_samp_rate; //send stream tag with a new value of the frequency offset - int offset = nitems_written(0); + + uint64_t offset = nitems_written(0); pmt::pmt_t key = pmt::string_to_symbol("setting_freq_offset"); pmt::pmt_t value = pmt::from_double(freq_offset_setting); add_item_tag(0,offset, key, value); - + break; } pp++; diff --git a/lib/misc_utils/extract_system_info_impl.cc b/lib/misc_utils/extract_system_info_impl.cc index 1d20d8d..6b6ce5f 100644 --- a/lib/misc_utils/extract_system_info_impl.cc +++ b/lib/misc_utils/extract_system_info_impl.cc @@ -90,7 +90,6 @@ namespace gr { info.lac = (msg_elements[6]<<8)+msg_elements[7]; //wyciągnij lac info.mnc = (msg_elements[5]>>4); //wyciągnij id operatora - std::set::iterator iter = d_c0_channels.find(info); boost::mutex::scoped_lock lock(extract_mutex); if(iter != d_c0_channels.end()){ @@ -178,7 +177,21 @@ namespace gr { void extract_system_info_impl::reset() { - d_c0_channels.clear(); + std::set::iterator iter; + + chan_info info; + + for(iter = d_c0_channels.begin(); iter != d_c0_channels.end(); iter++){ + info.id = iter->id; + info.cell_id = iter->cell_id; //wyciągnij cell id + info.lac = iter->lac; //wyciągnij lac + info.mnc = iter->mnc; + info.pwr_db = -111; + d_c0_channels.erase(iter); + d_c0_channels.insert(info); + } +// d_c0_channels.clear(); + if(!empty_p(pmt::mp("bursts"))){ delete_head_blocking(pmt::mp("bursts")); } diff --git a/lib/receiver/receiver_impl.cc b/lib/receiver/receiver_impl.cc index a6f1a16..0917f1e 100644 --- a/lib/receiver/receiver_impl.cc +++ b/lib/receiver/receiver_impl.cc @@ -241,7 +241,7 @@ receiver_impl::work(int noutput_items, d_state = fcch_search; pmt::pmt_t msg = pmt::make_tuple(pmt::mp("freq_offset"),pmt::from_double(0.0),pmt::mp("sync_loss")); message_port_pub(pmt::mp("measurements"), msg); - DCOUT("Re-Synchronization!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); + COUT("Re-Synchronization!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); } } } -- cgit v1.2.3