summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/python/gnuradio/gr/bindings/io_signature_python.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gnuradio-runtime/python/gnuradio/gr/bindings/io_signature_python.cc')
-rw-r--r--gnuradio-runtime/python/gnuradio/gr/bindings/io_signature_python.cc90
1 files changed, 90 insertions, 0 deletions
diff --git a/gnuradio-runtime/python/gnuradio/gr/bindings/io_signature_python.cc b/gnuradio-runtime/python/gnuradio/gr/bindings/io_signature_python.cc
new file mode 100644
index 0000000000..56ed5c2fe5
--- /dev/null
+++ b/gnuradio-runtime/python/gnuradio/gr/bindings/io_signature_python.cc
@@ -0,0 +1,90 @@
+/*
+ * Copyright 2020 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ *
+ */
+
+/***********************************************************************************/
+/* This file is automatically generated using bindtool and can be manually edited */
+/* The following lines can be configured to regenerate this file during cmake */
+/* If manual edits are made, the following tags should be modified accordingly. */
+/* BINDTOOL_GEN_AUTOMATIC(0) */
+/* BINDTOOL_USE_PYGCCXML(0) */
+/* BINDTOOL_HEADER_FILE(io_signature.h) */
+/* BINDTOOL_HEADER_FILE_HASH(aa246441b45c1a5b872509ed410615ae) */
+/***********************************************************************************/
+
+#include <pybind11/complex.h>
+#include <pybind11/pybind11.h>
+#include <pybind11/stl.h>
+
+namespace py = pybind11;
+
+#include <gnuradio/io_signature.h>
+// pydoc.h is automatically generated in the build directory
+#include <io_signature_pydoc.h>
+
+void bind_io_signature(py::module& m)
+{
+
+ using io_signature = ::gr::io_signature;
+
+
+ py::class_<io_signature, std::shared_ptr<io_signature>>(
+ m, "io_signature", D(io_signature))
+
+ .def(py::init(&io_signature::make),
+ py::arg("min_streams"),
+ py::arg("max_streams"),
+ py::arg("sizeof_stream_item"),
+ D(io_signature, make))
+
+
+ .def_static("make2",
+ &io_signature::make2,
+ py::arg("min_streams"),
+ py::arg("max_streams"),
+ py::arg("sizeof_stream_item1"),
+ py::arg("sizeof_stream_item2"),
+ D(io_signature, make2))
+
+
+ .def_static("make3",
+ &io_signature::make3,
+ py::arg("min_streams"),
+ py::arg("max_streams"),
+ py::arg("sizeof_stream_item1"),
+ py::arg("sizeof_stream_item2"),
+ py::arg("sizeof_stream_item3"),
+ D(io_signature, make3))
+
+
+ .def_static("makev",
+ &io_signature::makev,
+ py::arg("min_streams"),
+ py::arg("max_streams"),
+ py::arg("sizeof_stream_items"),
+ D(io_signature, makev))
+
+
+ .def("min_streams", &io_signature::min_streams, D(io_signature, min_streams))
+
+
+ .def("max_streams", &io_signature::max_streams, D(io_signature, max_streams))
+
+
+ .def("sizeof_stream_item",
+ &io_signature::sizeof_stream_item,
+ py::arg("index"),
+ D(io_signature, sizeof_stream_item))
+
+
+ .def("sizeof_stream_items",
+ &io_signature::sizeof_stream_items,
+ D(io_signature, sizeof_stream_items))
+
+ ;
+}