diff options
author | Josh Morman <mormjb@gmail.com> | 2020-04-23 08:57:13 -0400 |
---|---|---|
committer | Josh Morman <mormjb@gmail.com> | 2020-06-04 10:05:47 -0400 |
commit | ac45d95b4ee421b1e1a76ba199a490a603c15c6b (patch) | |
tree | 5ae672e16f30c63c5b27ddbcdc085eb0fa8b5926 /gr-fec/python/fec/bindings/ldpc_H_matrix_python.cc | |
parent | a49a9cced34393f3f755f58797c970c171087fa5 (diff) |
fec: add pybind11 bindings
Diffstat (limited to 'gr-fec/python/fec/bindings/ldpc_H_matrix_python.cc')
-rw-r--r-- | gr-fec/python/fec/bindings/ldpc_H_matrix_python.cc | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/gr-fec/python/fec/bindings/ldpc_H_matrix_python.cc b/gr-fec/python/fec/bindings/ldpc_H_matrix_python.cc new file mode 100644 index 0000000000..9f5c6250ff --- /dev/null +++ b/gr-fec/python/fec/bindings/ldpc_H_matrix_python.cc @@ -0,0 +1,67 @@ +/* + * 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 */ + +#include <pybind11/complex.h> +#include <pybind11/pybind11.h> +#include <pybind11/stl.h> + +namespace py = pybind11; + +#include <gnuradio/fec/ldpc_H_matrix.h> +// pydoc.h is automatically generated in the build directory +#include <ldpc_H_matrix_pydoc.h> + +void bind_ldpc_H_matrix(py::module& m) +{ + + + py::module m_code = m.def_submodule("code"); + + using ldpc_H_matrix = ::gr::fec::code::ldpc_H_matrix; + + + py::class_<ldpc_H_matrix, gr::fec::code::fec_mtrx, std::shared_ptr<ldpc_H_matrix>>( + m_code, "ldpc_H_matrix", D(code, ldpc_H_matrix)) + + .def(py::init(&ldpc_H_matrix::make), + py::arg("filename"), + py::arg("gap"), + D(code, ldpc_H_matrix, make)) + + + .def("encode", + &ldpc_H_matrix::encode, + py::arg("outbuffer"), + py::arg("inbuffer"), + D(code, ldpc_H_matrix, encode)) + + + .def("decode", + &ldpc_H_matrix::decode, + py::arg("outbuffer"), + py::arg("inbuffer"), + py::arg("frame_size"), + py::arg("max_iterations"), + D(code, ldpc_H_matrix, decode)) + + + .def("n", &ldpc_H_matrix::n, D(code, ldpc_H_matrix, n)) + + + .def("k", &ldpc_H_matrix::k, D(code, ldpc_H_matrix, k)) + + + .def("get_base_sptr", + &ldpc_H_matrix::get_base_sptr, + D(code, ldpc_H_matrix, get_base_sptr)) + + ; +} |