From 9d1cb8cfa70bd5ce53fdc2d14b6691c910023bda Mon Sep 17 00:00:00 2001 From: ptrkrysik Date: Sat, 7 Feb 2015 19:27:57 +0100 Subject: Removed get_bcch_or_cch_bursts block --- lib/demapping/get_bcch_or_ccch_bursts_impl.cc | 102 -------------------------- lib/demapping/get_bcch_or_ccch_bursts_impl.h | 47 ------------ 2 files changed, 149 deletions(-) delete mode 100644 lib/demapping/get_bcch_or_ccch_bursts_impl.cc delete mode 100644 lib/demapping/get_bcch_or_ccch_bursts_impl.h (limited to 'lib/demapping') diff --git a/lib/demapping/get_bcch_or_ccch_bursts_impl.cc b/lib/demapping/get_bcch_or_ccch_bursts_impl.cc deleted file mode 100644 index 5817627..0000000 --- a/lib/demapping/get_bcch_or_ccch_bursts_impl.cc +++ /dev/null @@ -1,102 +0,0 @@ -/* -*- c++ -*- */ -/* - * @file - * @author Piotr Krysik - * @section LICENSE - * - * Gr-gsm is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * Gr-gsm is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with gr-gsm; see the file COPYING. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, - * Boston, MA 02110-1301, USA. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include -#include -#include "get_bcch_or_ccch_bursts_impl.h" - -namespace gr { - namespace gsm { - - get_bcch_or_ccch_bursts::sptr - get_bcch_or_ccch_bursts::make(unsigned int fn51_start) - { - return gnuradio::get_initial_sptr - (new get_bcch_or_ccch_bursts_impl(fn51_start)); - } - - /* - * The private constructor - */ - get_bcch_or_ccch_bursts_impl::get_bcch_or_ccch_bursts_impl(unsigned int fn51_start) - : gr::block("get_bcch_or_ccch_bursts", - gr::io_signature::make(0, 0, 0), - gr::io_signature::make(0, 0, 0)), - d_fn51_start(fn51_start) - { - message_port_register_in(pmt::mp("bursts")); - set_msg_handler(pmt::mp("bursts"), boost::bind(&get_bcch_or_ccch_bursts_impl::filter_ccch, this, _1)); - message_port_register_out(pmt::mp("bursts")); - } - - /* - * Our virtual destructor. - */ - get_bcch_or_ccch_bursts_impl::~get_bcch_or_ccch_bursts_impl() - { - } - - void get_bcch_or_ccch_bursts_impl::filter_ccch(pmt::pmt_t msg) - { - pmt::pmt_t header_plus_burst = pmt::cdr(msg); - gsmtap_hdr * header = (gsmtap_hdr *)pmt::blob_data(header_plus_burst); - uint32_t frame_nr = be32toh(header->frame_number); - - uint32_t fn_mod51 = frame_nr % 51; - int fn51_stop = d_fn51_start+3; - - if(header->timeslot==0){ - if(fn_mod51>=d_fn51_start && fn_mod51<=fn51_stop){ - uint32_t ii = fn_mod51-d_fn51_start; - d_frame_numbers[ii]=frame_nr; - d_bursts[ii] = msg; - } - - if(fn_mod51==fn51_stop){ - //check for a situation where some BCCH bursts were lost - //in this situation frame numbers won't be consecutive - bool frames_are_consecutive = true; - for(int jj=1; jj<4; jj++) - { - if((d_frame_numbers[jj]-d_frame_numbers[jj-1])!=1){ - frames_are_consecutive = false; - } - } - if(frames_are_consecutive) - { - //send bursts to the output - for(int jj=0; jj<4; jj++) - { - message_port_pub(pmt::mp("bursts"), d_bursts[jj]); - } - } - } - } - } - } /* namespace gsm */ -} /* namespace gr */ - diff --git a/lib/demapping/get_bcch_or_ccch_bursts_impl.h b/lib/demapping/get_bcch_or_ccch_bursts_impl.h deleted file mode 100644 index ebf63e3..0000000 --- a/lib/demapping/get_bcch_or_ccch_bursts_impl.h +++ /dev/null @@ -1,47 +0,0 @@ -/* -*- c++ -*- */ -/* - * @file - * @author Piotr Krysik - * @section LICENSE - * - * Gr-gsm is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3, or (at your option) - * any later version. - * - * Gr-gsm is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with gr-gsm; see the file COPYING. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, - * Boston, MA 02110-1301, USA. - */ - -#ifndef INCLUDED_GSM_GET_BCCH_OR_CCCH_BURSTS_IMPL_H -#define INCLUDED_GSM_GET_BCCH_OR_CCCH_BURSTS_IMPL_H - -#include - -namespace gr { - namespace gsm { - - class get_bcch_or_ccch_bursts_impl : public get_bcch_or_ccch_bursts - { - private: - unsigned int d_fn51_start; - uint32_t d_frame_numbers[4]; - pmt::pmt_t d_bursts[4]; - public: - get_bcch_or_ccch_bursts_impl(unsigned int fn51_start); - ~get_bcch_or_ccch_bursts_impl(); - void filter_ccch(pmt::pmt_t msg); - }; - - } // namespace gsm -} // namespace gr - -#endif /* INCLUDED_GSM_GET_BCCH_OR_CCCH_BURSTS_IMPL_H */ - -- cgit v1.2.3