aboutsummaryrefslogtreecommitdiffstats
path: root/host
diff options
context:
space:
mode:
authorAaron Rossetto <aaron.rossetto@ni.com>2020-06-16 13:38:29 -0500
committerAaron Rossetto <aaron.rossetto@ni.com>2020-06-29 13:41:15 -0500
commitf2509fd88c819e5222014442741f757c7fcba5fa (patch)
tree97b0275495b70a53cfda49de5599ed98d006e762 /host
parent2dbed2d90ebc763847a91f35aa7dc26a9ae72835 (diff)
downloaduhd-f2509fd88c819e5222014442741f757c7fcba5fa.tar.gz
uhd-f2509fd88c819e5222014442741f757c7fcba5fa.tar.bz2
uhd-f2509fd88c819e5222014442741f757c7fcba5fa.zip
python: Add window RFNoC block controller bindings
Diffstat (limited to 'host')
-rw-r--r--host/lib/rfnoc/window_block_control_python.hpp22
-rw-r--r--host/python/pyuhd.cpp2
-rw-r--r--host/python/uhd/rfnoc.py2
3 files changed, 25 insertions, 1 deletions
diff --git a/host/lib/rfnoc/window_block_control_python.hpp b/host/lib/rfnoc/window_block_control_python.hpp
new file mode 100644
index 000000000..4c195f9f0
--- /dev/null
+++ b/host/lib/rfnoc/window_block_control_python.hpp
@@ -0,0 +1,22 @@
+//
+// Copyright 2020 Ettus Research, a National Instruments Brand
+//
+// SPDX-License-Identifier: GPL-3.0-or-later
+//
+
+#pragma once
+
+#include "block_controller_factory_python.hpp"
+#include <uhd/rfnoc/window_block_control.hpp>
+
+using namespace uhd::rfnoc;
+
+void export_window_block_control(py::module& m)
+{
+ py::class_<window_block_control, noc_block_base, window_block_control::sptr>(
+ m, "window_block_control")
+ .def(py::init(&block_controller_factory<window_block_control>::make_from))
+ .def("get_max_num_coefficients", &window_block_control::get_max_num_coefficients)
+ .def("set_coefficients", &window_block_control::set_coefficients)
+ .def("get_coefficients", &window_block_control::get_coefficients);
+}
diff --git a/host/python/pyuhd.cpp b/host/python/pyuhd.cpp
index b0fce9b55..287680986 100644
--- a/host/python/pyuhd.cpp
+++ b/host/python/pyuhd.cpp
@@ -23,6 +23,7 @@ namespace py = pybind11;
#include "rfnoc/radio_control_python.hpp"
#include "rfnoc/rfnoc_python.hpp"
#include "rfnoc/vector_iir_block_control_python.hpp"
+#include "rfnoc/window_block_control_python.hpp"
#include "stream_python.hpp"
#include "types/filters_python.hpp"
#include "types/metadata_python.hpp"
@@ -90,6 +91,7 @@ PYBIND11_MODULE(libpyuhd, m)
export_null_block_control(rfnoc_module);
export_radio_control(rfnoc_module);
export_vector_iir_block_control(rfnoc_module);
+ export_window_block_control(rfnoc_module);
// Register calibration submodule
auto cal_module = m.def_submodule("cal", "Calibration Objects");
diff --git a/host/python/uhd/rfnoc.py b/host/python/uhd/rfnoc.py
index 0f25b8a6a..60699226e 100644
--- a/host/python/uhd/rfnoc.py
+++ b/host/python/uhd/rfnoc.py
@@ -26,4 +26,4 @@ FirFilterBlockControl = lib.rfnoc.fir_filter_block_control
NullBlockControl = lib.rfnoc.null_block_control
RadioControl = lib.rfnoc.radio_control
VectorIirBlockControl = lib.rfnoc.vector_iir_block_control
-
+WindowBlockControl = lib.rfnoc.window_block_control