Moved burst printer to different directory
diff --git a/include/gsm/bursts_printer.h b/include/gsm/bursts_printer.h
index 3ec595f..c814810 100644
--- a/include/gsm/bursts_printer.h
+++ b/include/gsm/bursts_printer.h
@@ -24,6 +24,38 @@
#include <gsm/api.h>
#include <gnuradio/block.h>
+#include <string>
+#include <vector>
+
+
+
+class chan_info {
+ public:
+ unsigned int id;
+ int8_t pwr_db;
+ unsigned int arfcn;
+ float freq;
+ unsigned int lac;
+ unsigned int cell_id;
+ unsigned int mnc;
+
+ chan_info() : id(-1), pwr_db(0), arfcn(0), freq(0), lac(0), cell_id(0), mnc(0){}
+ chan_info(const chan_info & info) : id(info.id), pwr_db(info.pwr_db), arfcn(info.arfcn), freq(info.freq), lac(info.lac), cell_id(info.cell_id), mnc(info.mnc){}
+ ~chan_info(){}
+};
+
+struct compare_id {
+ inline bool operator()(const chan_info &a, const chan_info &b) const
+ {
+ return a.id < b.id;
+ }
+};
+struct compare_pwr {
+ inline bool operator()(const chan_info &a, const chan_info &b) const
+ {
+ return a.pwr_db < b.pwr_db;
+ }
+};
namespace gr {
namespace gsm {
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index 79fa57a..8e707be 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -29,7 +29,7 @@
receiver/receiver_config.cc
receiver/viterbi_detector.cc
receiver/sch.c
- burst_printer/bursts_printer_impl.cc
+ misc_utils/bursts_printer_impl.cc
demapping/get_bcch_or_ccch_bursts_impl.cc
decoding/control_channels_decoder_impl.cc
decoding/cch.c
diff --git a/lib/burst_printer/bursts_printer_impl.cc b/lib/misc_utils/bursts_printer_impl.cc
similarity index 82%
rename from lib/burst_printer/bursts_printer_impl.cc
rename to lib/misc_utils/bursts_printer_impl.cc
index c37838b..deedf02 100644
--- a/lib/burst_printer/bursts_printer_impl.cc
+++ b/lib/misc_utils/bursts_printer_impl.cc
@@ -27,31 +27,23 @@
#include <iterator>
#include <algorithm>
#include "bursts_printer_impl.h"
+#include <unistd.h>
+
+#include <iostream>
namespace gr {
namespace gsm {
+ boost::mutex printer_mutex;
void bursts_printer_impl::bursts_print(pmt::pmt_t msg)
{
+ boost::mutex::scoped_lock lock(printer_mutex);
+
pmt::pmt_t burst = pmt::cdr(msg);
int8_t * burst_elements = (int8_t *)pmt::blob_data(burst);
size_t burst_len=pmt::blob_length(burst);
pmt::pmt_t header_blob = pmt::car(msg);
gsmtap_hdr * header = (gsmtap_hdr *)pmt::blob_data(header_blob);
- d_c0_channels.insert(header->arfcn);
-
-// d_channels_dbm.insert(header->signal_dbm);
-// std::copy(
-// d_c0_channels.begin(),
-// d_c0_channels.end(),
-// std::ostream_iterator<uint16_t>(std::cout, " ")
-// );
-// std::cout << std::endl;
-// std::copy(
-// d_channels_dbm.begin(),
-// d_channels_dbm.end(),
-// std::ostream_iterator<int>(std::cout, " ")
-// );
for(int ii=0; ii<burst_len; ii++)
{
@@ -59,7 +51,7 @@
}
std::cout << std::endl;
}
-
+
bursts_printer::sptr
bursts_printer::make()
{
diff --git a/lib/burst_printer/bursts_printer_impl.h b/lib/misc_utils/bursts_printer_impl.h
similarity index 96%
rename from lib/burst_printer/bursts_printer_impl.h
rename to lib/misc_utils/bursts_printer_impl.h
index 81e8be6..1a6368a 100644
--- a/lib/burst_printer/bursts_printer_impl.h
+++ b/lib/misc_utils/bursts_printer_impl.h
@@ -31,8 +31,6 @@
{
private:
void bursts_print(pmt::pmt_t burst);
- std::set<uint16_t> d_c0_channels;
-
public:
bursts_printer_impl();
~bursts_printer_impl();