diff options
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 | 75 |
1 files changed, 75 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..7c57b980c5 --- /dev/null +++ b/gr-fec/python/fec/bindings/ldpc_H_matrix_python.cc @@ -0,0 +1,75 @@ +/* + * 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(ldpc_H_matrix.h) */ +/* BINDTOOL_HEADER_FILE_HASH(68956287d34e6a1208c0d84fda0d8af4) */ +/***********************************************************************************/ + +#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)) + + ; +} |