aboutsummaryrefslogtreecommitdiffstats
path: root/include/gsm/misc_utils/bursts_printer.h
diff options
context:
space:
mode:
authorPiotr K <pkrysik@elka.pw.edu.pl>2014-08-13 19:04:57 +0200
committerPiotr K <pkrysik@elka.pw.edu.pl>2014-08-13 19:04:57 +0200
commit66bb3cdc3137e46436ed18a1c453d59176051158 (patch)
tree8072de4539dccfbabfd8f6b2f5de7ee50e0e20f9 /include/gsm/misc_utils/bursts_printer.h
parentc917af4e3a7c4c66f5b4e2494e1456f41dd12a47 (diff)
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)
Diffstat (limited to 'include/gsm/misc_utils/bursts_printer.h')
-rw-r--r--include/gsm/misc_utils/bursts_printer.h88
1 files changed, 88 insertions, 0 deletions
diff --git a/include/gsm/misc_utils/bursts_printer.h b/include/gsm/misc_utils/bursts_printer.h
new file mode 100644
index 0000000..c814810
--- /dev/null
+++ b/include/gsm/misc_utils/bursts_printer.h
@@ -0,0 +1,88 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2014 <+YOU OR YOUR COMPANY+>.
+ *
+ * This 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.
+ *
+ * This software 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 this software; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+
+
+#ifndef INCLUDED_GSM_BURSTS_PRINTER_H
+#define INCLUDED_GSM_BURSTS_PRINTER_H
+
+#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 {
+
+ /*!
+ * \brief <+description of block+>
+ * \ingroup gsm
+ *
+ */
+ class GSM_API bursts_printer : virtual public gr::block
+ {
+ public:
+ typedef boost::shared_ptr<bursts_printer> sptr;
+
+ /*!
+ * \brief Return a shared_ptr to a new instance of gsm::bursts_printer.
+ *
+ * To avoid accidental use of raw pointers, gsm::bursts_printer's
+ * constructor is in a private implementation
+ * class. gsm::bursts_printer::make is the public interface for
+ * creating new instances.
+ */
+ static sptr make();
+ };
+
+ } // namespace gsm
+} // namespace gr
+
+#endif /* INCLUDED_GSM_BURSTS_PRINTER_H */
+