From 41c64343e91dd72d161694ef6653751a3fc57619 Mon Sep 17 00:00:00 2001
From: Sergey Musikhin <musihin_sergei@mail.ru>
Date: Tue, 15 Jun 2021 18:09:55 +0000
Subject: [PATCH] remove common_hier_block.h

---
 include/bladeRF/CMakeLists.txt |  2 +-
 include/bladeRF/sink.h         |  4 ++--
 include/bladeRF/source.h       |  3 +--
 lib/common_hier_block.h        | 27 ---------------------------
 lib/sink_impl.cc               |  9 +++++----
 lib/sink_impl.h                |  1 -
 lib/source_impl.cc             |  9 +++++----
 python/bindings/sink_python.cc |  2 +-
 8 files changed, 15 insertions(+), 42 deletions(-)
 delete mode 100644 lib/common_hier_block.h

diff --git a/include/bladeRF/CMakeLists.txt b/include/bladeRF/CMakeLists.txt
index aabaf26..5cc8c30 100644
--- a/include/bladeRF/CMakeLists.txt
+++ b/include/bladeRF/CMakeLists.txt
@@ -14,6 +14,6 @@ install(FILES
     pimpl.h
     ranges.h
     time_spec.h
-    source.h
+    source.h    
     sink.h DESTINATION include/bladeRF
 )
diff --git a/include/bladeRF/sink.h b/include/bladeRF/sink.h
index e3b5e99..8cc31ee 100644
--- a/include/bladeRF/sink.h
+++ b/include/bladeRF/sink.h
@@ -5,7 +5,7 @@
 #include <bladeRF/api.h>
 #include "ranges.h"
 #include "time_spec.h"
-#include "common_hier_block.h"
+#include <gnuradio/hier_block2.h>
 
 namespace gr {
   namespace bladeRF {
@@ -15,7 +15,7 @@ namespace gr {
      * \ingroup bladeRF
      *
      */
-    class BLADERF_API sink : virtual public common_hier_block
+    class BLADERF_API sink : virtual public gr::hier_block2
     {
      public:
       typedef std::shared_ptr<sink> sptr;
diff --git a/include/bladeRF/source.h b/include/bladeRF/source.h
index 3743c58..fff4929 100644
--- a/include/bladeRF/source.h
+++ b/include/bladeRF/source.h
@@ -12,7 +12,6 @@
 #include <gnuradio/hier_block2.h>
 #include "ranges.h"
 #include "time_spec.h"
-#include "common_hier_block.h"
 
 namespace gr {
   namespace bladeRF {
@@ -22,7 +21,7 @@ namespace gr {
      * \ingroup bladeRF
      *
      */
-    class BLADERF_API source : virtual public common_hier_block
+    class BLADERF_API source : virtual public gr::hier_block2
     {
      public:
       typedef std::shared_ptr<source> sptr;
diff --git a/lib/common_hier_block.h b/lib/common_hier_block.h
deleted file mode 100644
index 53f0121..0000000
--- a/lib/common_hier_block.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#pragma once
-#include <gnuradio/hier_block2.h>
-
-class common_hier_block: public gr::hier_block2
-{
-public:
-   common_hier_block(const std::string& name,
-               gr::io_signature::sptr input_signature,
-               gr::io_signature::sptr output_signature)
-               : gr::hier_block2(name, input_signature, output_signature)
-   {
-   }
-   void setup_message_ports()
-   {
-        message_port_register_hier_in(pmt::mp("pmic_in"));
-        message_port_register_hier_out(pmt::mp("pmic_out"));
-
-   }
-   template<typename T>
-   void setup_device_connects(T device)
-   {
-        msg_connect(self(), pmt::mp("pmic_in"), device, pmt::mp("pmic_in"));
-        msg_connect(device,pmt::mp("pmic_out"), self(), pmt::mp("pmic_out"));
-   }
-   
-   
-};
diff --git a/lib/sink_impl.cc b/lib/sink_impl.cc
index 9e3f3c3..b337a99 100644
--- a/lib/sink_impl.cc
+++ b/lib/sink_impl.cc
@@ -5,7 +5,6 @@
  * SPDX-License-Identifier: GPL-3.0-or-later
  */
 
-#include "common_hier_block.h"
 #include "sink_impl.h"
 #include "arg_helpers.h"
 
@@ -22,12 +21,13 @@ namespace gr {
      * The private constructor
      */
     sink_impl::sink_impl(const std::string & args)
-      : common_hier_block("sink_impl",
+      : gr::hier_block2("sink_impl",
                         args_to_io_signature(args),
                         gr::io_signature::make(0, 0, 0))
       , sample_rate_(0)
     {
-        setup_message_ports();
+        message_port_register_hier_in(pmt::mp("pmic_in"));
+        message_port_register_hier_out(pmt::mp("pmic_out"));
 
         auto dev_list = bladerf_sink_c::get_devices();
         if(dev_list.size() == 0)
@@ -40,7 +40,8 @@ namespace gr {
             connect(self(), i, device_, i);
         }
 
-        setup_device_connects(device_);
+        msg_connect(self(), pmt::mp("pmic_in"), device_, pmt::mp("pmic_in"));
+        msg_connect(device_, pmt::mp("pmic_out"), self(), pmt::mp("pmic_out"));
     }
 
     /*
diff --git a/lib/sink_impl.h b/lib/sink_impl.h
index 535c0be..81aae28 100644
--- a/lib/sink_impl.h
+++ b/lib/sink_impl.h
@@ -22,7 +22,6 @@ namespace gr {
         channel_store<std::string> antenna_;
         channel_store<double> bandwidth_;
 
-
      public:
       sink_impl(const std::string & args);
       ~sink_impl();
diff --git a/lib/source_impl.cc b/lib/source_impl.cc
index 0fcf59c..2ea2ed2 100644
--- a/lib/source_impl.cc
+++ b/lib/source_impl.cc
@@ -5,7 +5,6 @@
  * SPDX-License-Identifier: GPL-3.0-or-later
  */
 
-#include "common_hier_block.h"
 #include "source_impl.h"
 #include "arg_helpers.h"
 
@@ -21,11 +20,12 @@ namespace gr {
      * The private constructor
      */
     source_impl::source_impl(const std::string & args)
-      : common_hier_block("source",
+      : gr::hier_block2("source",
               gr::io_signature::make(0,0,0),
               args_to_io_signature(args))
     {
-        setup_message_ports();
+        message_port_register_hier_in(pmt::mp("pmic_in"));
+        message_port_register_hier_out(pmt::mp("pmic_out"));
 
         auto dev_list = bladerf_source_c::get_devices();
         if(dev_list.size() == 0)
@@ -51,7 +51,8 @@ namespace gr {
   #endif
 
         }
-        setup_device_connects(device_);
+        msg_connect(self(), pmt::mp("pmic_in"), device_, pmt::mp("pmic_in"));
+        msg_connect(device_, pmt::mp("pmic_out"), self(), pmt::mp("pmic_out"));
      }
 
     source_impl::~source_impl()
diff --git a/python/bindings/sink_python.cc b/python/bindings/sink_python.cc
index f144b0f..e8c6225 100644
--- a/python/bindings/sink_python.cc
+++ b/python/bindings/sink_python.cc
@@ -14,7 +14,7 @@
 /* BINDTOOL_GEN_AUTOMATIC(0)                                                       */
 /* BINDTOOL_USE_PYGCCXML(0)                                                        */
 /* BINDTOOL_HEADER_FILE(sink.h)                                        */
-/* BINDTOOL_HEADER_FILE_HASH(2ab4178636b0828c83826fb6420afc7b)                     */
+/* BINDTOOL_HEADER_FILE_HASH(5c531e3e1b40d852b4c20862cd23bee4)                     */
 /***********************************************************************************/
 
 #include <pybind11/complex.h>
-- 
GitLab