diff --git a/include/bladeRF/CMakeLists.txt b/include/bladeRF/CMakeLists.txt index aabaf267c11ad476916305b83b788d1e62232755..5cc8c30937180c705ebf6ade28dab0f04f3bad7b 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 e3b5e9957307e87b2faf5000c0cb2a4fa7638fa9..8cc31eee1d30af58778f7d5ee5840826c8bb44e9 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 3743c58d1e699b2cfdb7056a7f28102316e096e2..fff492921f63666a8a4314b39581eb536b99f31b 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 53f0121d4a656d3c7b534dcd1b22167575fa8115..0000000000000000000000000000000000000000 --- 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 9e3f3c3cc18cf8ff655f8b295b68f11a0a1982ea..b337a998b2a918e1aef091d4d53c4d2f3c7b6b40 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 535c0be030fd3be466fdb1582188c9a94ed6b724..81aae287da07b9667cd2ac0f55760415ef7ecf7a 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 0fcf59c0123d24d75f8a1bb3c1565105f5c30168..2ea2ed2e0aae070a5575acafc14dd375b0421ee8 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 f144b0fd09a8098a04d0af082b41c0b9ce44df2c..e8c62250c1febabe049c7f07294b3b32b39b269a 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>