added arfcn parameter to the receiver
diff --git a/lib/bursts_printer_impl.cc b/lib/bursts_printer_impl.cc
index 4fdb373..ba4ff4c 100644
--- a/lib/bursts_printer_impl.cc
+++ b/lib/bursts_printer_impl.cc
@@ -24,18 +24,38 @@
#include <gnuradio/io_signature.h>
#include "bursts_printer_impl.h"
+#include <gsmtap.h>
+#include <iterator>
+#include <algorithm>
namespace gr {
namespace gsm {
- void bursts_printer_impl::bursts_print(pmt::pmt_t burst)
+ void bursts_printer_impl::bursts_print(pmt::pmt_t msg)
{
- int ii;
- size_t burst_len;
- int8_t *burst_elements = pmt::s8vector_writable_elements(burst, burst_len);
+ 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);
- for(ii=0; ii<burst_len; ii++)
+ 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++)
{
- std::cout << std::setprecision(1) << static_cast<int>(burst_elements[ii]) << "";
+ std::cout << std::setprecision(1) << static_cast<int>(burst_elements[ii]) << " ";
}
std::cout << std::endl;
}