diff options
Diffstat (limited to 'gr-fec/python/fec/bindings/ccsds_encoder_python.cc')
-rw-r--r-- | gr-fec/python/fec/bindings/ccsds_encoder_python.cc | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/gr-fec/python/fec/bindings/ccsds_encoder_python.cc b/gr-fec/python/fec/bindings/ccsds_encoder_python.cc new file mode 100644 index 0000000000..1fcd2afbdd --- /dev/null +++ b/gr-fec/python/fec/bindings/ccsds_encoder_python.cc @@ -0,0 +1,59 @@ +/* + * 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(ccsds_encoder.h) */ +/* BINDTOOL_HEADER_FILE_HASH(8b96a214e173c2cd31a24fdbdb9a90e0) */ +/***********************************************************************************/ + +#include <pybind11/complex.h> +#include <pybind11/pybind11.h> +#include <pybind11/stl.h> + +namespace py = pybind11; + +#include <gnuradio/fec/ccsds_encoder.h> +// pydoc.h is automatically generated in the build directory +#include <ccsds_encoder_pydoc.h> + +void bind_ccsds_encoder(py::module& m) +{ + + + py::module m_code = m.def_submodule("code"); + + using ccsds_encoder = ::gr::fec::code::ccsds_encoder; + + + py::class_<ccsds_encoder, gr::fec::generic_encoder, std::shared_ptr<ccsds_encoder>>( + m_code, "ccsds_encoder", D(code, ccsds_encoder)) + + .def_static("make", + &ccsds_encoder::make, + py::arg("frame_size"), + py::arg("start_state") = 0, + py::arg("mode") = ::_cc_mode_t::CC_STREAMING, + D(code, ccsds_encoder, make)) + + + .def("set_frame_size", + &ccsds_encoder::set_frame_size, + py::arg("frame_size"), + D(code, ccsds_encoder, set_frame_size)) + + + .def("rate", &ccsds_encoder::rate, D(code, ccsds_encoder, rate)) + + ; +} |