Fixed all hierarchical blocks in the project
by adding a hier_block class that solves incompatibility between GNU Radio >=3.7.9 and <=3.7.8
and inheriting all hierarchical blocks from it.
This commit fixes #135
diff --git a/python/misc_utils/clock_offset_corrector.py b/python/misc_utils/clock_offset_corrector.py
index 403b513..b75d682 100644
--- a/python/misc_utils/clock_offset_corrector.py
+++ b/python/misc_utils/clock_offset_corrector.py
@@ -14,19 +14,16 @@
 import grgsm
 import math
 
-class clock_offset_corrector(gr.hier_block2):
+class clock_offset_corrector(grgsm.hier_block):
 
     def __init__(self, fc=936.6e6, ppm=0, samp_rate_in=1625000.0/6.0*4.0):
-        gr.hier_block2.__init__(
+        grgsm.hier_block.__init__(
             self, "Clock offset corrector",
             gr.io_signature(1, 1, gr.sizeof_gr_complex*1),
             gr.io_signature(1, 1, gr.sizeof_gr_complex*1),
         )
-        if version(gr.version()) >= version('3.7.9'):
-            self.message_port_register_hier_in("ppm_in")
-        else:
-            self.message_port_register_hier_out("ppm_in")
-
+        self.message_port_register_hier_in("ppm_in")
+        
         ##################################################
         # Parameters
         ##################################################
diff --git a/python/misc_utils/hier_block.py b/python/misc_utils/hier_block.py
new file mode 100644
index 0000000..a3ca1e6
--- /dev/null
+++ b/python/misc_utils/hier_block.py
@@ -0,0 +1,19 @@
+from gnuradio import gr
+from distutils.version import LooseVersion as version
+
+#class created to solve incompatibility of reginstration of message inputs
+#that was introduced in gnuradio 3.7.9
+
+class hier_block(gr.hier_block2):
+    def message_port_register_hier_in(self, port_id):
+        if version(gr.version()) >= version('3.7.9'):
+            super(hier_block, self).message_port_register_hier_in(port_id)
+        else:
+            super(hier_block, self).message_port_register_hier_out(port_id)
+
+    def message_port_register_hier_out(self, port_id):
+        if version(gr.version()) >= version('3.7.9'):
+            super(hier_block, self).message_port_register_hier_out(port_id)
+        else:
+            super(hier_block, self).message_port_register_hier_in(port_id)
+