diff options
Diffstat (limited to 'mpm/include')
-rw-r--r-- | mpm/include/mpm/ad9361/ad9361_ctrl.hpp | 61 | ||||
-rw-r--r-- | mpm/include/mpm/ad9361/e31x_defaults.hpp | 33 | ||||
-rw-r--r-- | mpm/include/mpm/ad937x/ad937x_ctrl.hpp | 37 | ||||
-rw-r--r-- | mpm/include/mpm/types/types_python.hpp | 4 |
4 files changed, 63 insertions, 72 deletions
diff --git a/mpm/include/mpm/ad9361/ad9361_ctrl.hpp b/mpm/include/mpm/ad9361/ad9361_ctrl.hpp index 2405317fd..2c3de0187 100644 --- a/mpm/include/mpm/ad9361/ad9361_ctrl.hpp +++ b/mpm/include/mpm/ad9361/ad9361_ctrl.hpp @@ -12,9 +12,9 @@ #include <boost/make_shared.hpp> #include <boost/noncopyable.hpp> #include <functional> +#include <future> #include <string> #include <vector> -#include <future> namespace mpm { namespace chips { using uhd::usrp::ad9361_ctrl; @@ -64,47 +64,30 @@ void export_catalina(py::module& top_module) .def("set_filter", &ad9361_ctrl::set_filter) .def("output_digital_test_tone", &ad9361_ctrl::output_digital_test_tone); - m.def("async__tune", +[]( - ad9361_ctrl& catalina, - const std::string &which, - const double value - ){ - handle_tune = std::async(std::launch::async, - &ad9361_ctrl::tune, - &catalina, - which, - value - ); + m.def("async__tune", + +[](ad9361_ctrl& catalina, const std::string& which, const double value) { + handle_tune = std::async( + std::launch::async, &ad9361_ctrl::tune, &catalina, which, value); + }); + m.def("await__tune", +[]() -> bool { + if (handle_tune.wait_for(std::chrono::seconds(0)) == std::future_status::ready) { + handle_tune.get(); + return true; + } + return false; }); - m.def("await__tune", +[]( - )->bool{ - if (handle_tune.wait_for(std::chrono::seconds(0)) - == std::future_status::ready){ - handle_tune.get(); - return true; - } - return false; + m.def("async__set_clock_rate", +[](ad9361_ctrl& catalina, const double value) { + handle_set_clock_rate = std::async( + std::launch::async, &ad9361_ctrl::set_clock_rate, &catalina, value); }); - m.def("async__set_clock_rate", +[]( - ad9361_ctrl& catalina, - const double value - ){ - handle_set_clock_rate = std::async(std::launch::async, - &ad9361_ctrl::set_clock_rate, - &catalina, - value - ); + m.def("await__set_clock_rate", +[]() -> bool { + if (handle_set_clock_rate.wait_for(std::chrono::seconds(0)) + == std::future_status::ready) { + handle_set_clock_rate.get(); + return true; + } + return false; }); - m.def("await__set_clock_rate", +[]( - )->bool{ - if (handle_set_clock_rate.wait_for(std::chrono::seconds(0)) - == std::future_status::ready){ - handle_set_clock_rate.get(); - return true; - } - return false; - }); - } #endif diff --git a/mpm/include/mpm/ad9361/e31x_defaults.hpp b/mpm/include/mpm/ad9361/e31x_defaults.hpp index c2188af8b..0dec39361 100644 --- a/mpm/include/mpm/ad9361/e31x_defaults.hpp +++ b/mpm/include/mpm/ad9361/e31x_defaults.hpp @@ -13,33 +13,42 @@ namespace mpm { namespace types { namespace e31x { using namespace uhd::usrp; -class e31x_ad9361_client_t : public uhd::usrp::ad9361_params { +class e31x_ad9361_client_t : public uhd::usrp::ad9361_params +{ public: ~e31x_ad9361_client_t() {} - double get_band_edge(frequency_band_t band) { + double get_band_edge(frequency_band_t band) + { switch (band) { - case AD9361_RX_BAND0: return 1.2e9; - case AD9361_RX_BAND1: return 2.6e9; - case AD9361_TX_BAND0: return 2940.0e6; - default: return 0; + case AD9361_RX_BAND0: + return 1.2e9; + case AD9361_RX_BAND1: + return 2.6e9; + case AD9361_TX_BAND0: + return 2940.0e6; + default: + return 0; } } - clocking_mode_t get_clocking_mode() { + clocking_mode_t get_clocking_mode() + { return clocking_mode_t::AD9361_XTAL_N_CLK_PATH; } - digital_interface_mode_t get_digital_interface_mode() { + digital_interface_mode_t get_digital_interface_mode() + { return AD9361_DDR_FDD_LVCMOS; } - digital_interface_delays_t get_digital_interface_timing() { + digital_interface_delays_t get_digital_interface_timing() + { digital_interface_delays_t delays; - delays.rx_clk_delay = 0; + delays.rx_clk_delay = 0; delays.rx_data_delay = 0xF; - delays.tx_clk_delay = 0; + delays.tx_clk_delay = 0; delays.tx_data_delay = 0xF; return delays; } }; -}}} // namespace +}}} // namespace mpm::types::e31x #endif // INCLUDED_E31X_DEFAULTS_HPP diff --git a/mpm/include/mpm/ad937x/ad937x_ctrl.hpp b/mpm/include/mpm/ad937x/ad937x_ctrl.hpp index 44e814e60..787bc41b5 100644 --- a/mpm/include/mpm/ad937x/ad937x_ctrl.hpp +++ b/mpm/include/mpm/ad937x/ad937x_ctrl.hpp @@ -360,30 +360,27 @@ void export_mykonos(py::module& top_module) .def("set_clock_rate", &ad937x_ctrl::set_clock_rate) .def("enable_channel", &ad937x_ctrl::enable_channel) .def("set_freq", &ad937x_ctrl::set_freq) - .def("async__set_freq", +[]( - ad937x_ctrl& self, - const std::string &which, - const double value, - const bool wait_for_lock - ){ + .def("async__set_freq", + +[](ad937x_ctrl& self, + const std::string& which, + const double value, + const bool wait_for_lock) { self.handle_set_freq = std::async(std::launch::async, &ad937x_ctrl::set_freq, &self, which, value, - wait_for_lock - ); - }) - .def("await__set_freq", +[]( - ad937x_ctrl& self - )->bool{ + wait_for_lock); + }) + .def("await__set_freq", + +[](ad937x_ctrl& self) -> bool { if (self.handle_set_freq.wait_for(std::chrono::seconds(0)) - == std::future_status::ready){ + == std::future_status::ready) { self.handle_set_freq.get(); return true; } return false; - }) + }) .def("get_freq", &ad937x_ctrl::get_freq) .def("get_lo_locked", &ad937x_ctrl::get_lo_locked) .def("set_fir", &ad937x_ctrl::set_fir) @@ -397,11 +394,14 @@ void export_mykonos(py::module& top_module) .def_readonly_static("RX_GAIN_DELAY", &ad937x_ctrl::RX_GAIN_DELAY) .def_readonly_static("FLASH_CAL", &ad937x_ctrl::FLASH_CAL) .def_readonly_static("PATH_DELAY", &ad937x_ctrl::PATH_DELAY) - .def_readonly_static("TX_LO_LEAKAGE_INTERNAL", &ad937x_ctrl::TX_LO_LEAKAGE_INTERNAL) - .def_readonly_static("TX_LO_LEAKAGE_EXTERNAL", &ad937x_ctrl::TX_LO_LEAKAGE_EXTERNAL) + .def_readonly_static( + "TX_LO_LEAKAGE_INTERNAL", &ad937x_ctrl::TX_LO_LEAKAGE_INTERNAL) + .def_readonly_static( + "TX_LO_LEAKAGE_EXTERNAL", &ad937x_ctrl::TX_LO_LEAKAGE_EXTERNAL) .def_readonly_static("TX_QEC_INIT", &ad937x_ctrl::TX_QEC_INIT) .def_readonly_static("LOOPBACK_RX_LO_DELAY", &ad937x_ctrl::LOOPBACK_RX_LO_DELAY) - .def_readonly_static("LOOPBACK_RX_RX_QEC_INIT", &ad937x_ctrl::LOOPBACK_RX_RX_QEC_INIT) + .def_readonly_static( + "LOOPBACK_RX_RX_QEC_INIT", &ad937x_ctrl::LOOPBACK_RX_RX_QEC_INIT) .def_readonly_static("RX_LO_DELAY", &ad937x_ctrl::RX_LO_DELAY) .def_readonly_static("RX_QEC_INIT", &ad937x_ctrl::RX_QEC_INIT) .def_readonly_static("DPD_INIT", &ad937x_ctrl::DPD_INIT) @@ -424,7 +424,8 @@ void export_mykonos(py::module& top_module) .def_readonly_static("TRACK_ORX1_QEC_SNLO", &ad937x_ctrl::TRACK_ORX1_QEC_SNLO) .def_readonly_static("TRACK_ORX2_QEC_SNLO", &ad937x_ctrl::TRACK_ORX2_QEC_SNLO) .def_readonly_static("TRACK_SRX_QEC", &ad937x_ctrl::TRACK_SRX_QEC) - .def_readonly_static("DEFAULT_INIT_CALS_MASKS", &ad937x_ctrl::DEFAULT_INIT_CALS_MASKS) + .def_readonly_static( + "DEFAULT_INIT_CALS_MASKS", &ad937x_ctrl::DEFAULT_INIT_CALS_MASKS) .def_readonly_static( "DEFAULT_TRACKING_CALS_MASKS", &ad937x_ctrl::DEFAULT_TRACKING_CALS_MASKS) .def_readonly_static( diff --git a/mpm/include/mpm/types/types_python.hpp b/mpm/include/mpm/types/types_python.hpp index b934605ad..cb2af5c4b 100644 --- a/mpm/include/mpm/types/types_python.hpp +++ b/mpm/include/mpm/types/types_python.hpp @@ -30,9 +30,7 @@ void export_types(py::module& top_module) py::class_<log_buf, std::shared_ptr<log_buf>>(m, "log_buf") .def_static("make_singleton", &log_buf::make_singleton) .def("set_notify_callback", - +[](log_buf& self, py::object object) { - self.set_notify_callback(object); - }) + +[](log_buf& self, py::object object) { self.set_notify_callback(object); }) .def("pop", [](log_buf& self) { auto log_msg = self.pop(); return py::make_tuple(static_cast<int>(std::get<0>(log_msg)), |