diff options
author | David Winter <david.winter@analog.com> | 2021-08-09 13:24:24 +0200 |
---|---|---|
committer | mormj <34754695+mormj@users.noreply.github.com> | 2021-09-03 16:12:30 -0400 |
commit | 956f332e410331fde426e1485589d905cdf80fb1 (patch) | |
tree | c1004bbc58e99afe1ed2daf404d11020626e2980 /gr-qtgui/python/qtgui | |
parent | 4d0f2900e887b87e547a1af5874b5d502b5fc71e (diff) |
qtgui: Replace pyqwidget() with qwidget()
Previously, two versions of the `qtwidget` functions existed,
`qwidget()` and `pyqwidget()`, with the only difference being that
`qwidget()` returned a pointer to the `QWidget` object managed by the
corresponding block, while `pyqwidget()` returned that same pointer, but as
an integer (Or `PyLong` in this case).
While `qwidget()` is used by C++ code accessing the widgets,
`pyqwidget()` is only used for the python interface. This makes these
two methods redundant, thus this commit entirely removes `pyqwidget()`,
and modifies the `qwidget()` python wrapper to behave like
`pyqwidget()`. Note that we can be fairly confident that this change
will not effect potential users of `qwidget()`, because any invocation
on the objects previously returned by `qwidget()` would cause a
segmentation fault.
This commit also fixes a memory leak:
Internally, the `pyqwidget()` functions were returning a PyLong `PyObject *`,
which was then upwrapped in a pybind trampoline without decrementing
the reference count of that python object.
Signed-off-by: David Winter <david.winter@analog.com>
Diffstat (limited to 'gr-qtgui/python/qtgui')
37 files changed, 68 insertions, 282 deletions
diff --git a/gr-qtgui/python/qtgui/auto_correlator_sink.py b/gr-qtgui/python/qtgui/auto_correlator_sink.py index 5d8024d2d0..ed69395d1a 100644 --- a/gr-qtgui/python/qtgui/auto_correlator_sink.py +++ b/gr-qtgui/python/qtgui/auto_correlator_sink.py @@ -129,4 +129,4 @@ class AutoCorrelatorSink(gr.hier_block2): def getWidget(self): - return sip.wrapinstance(self.timeSink.pyqwidget(), QWidget) + return sip.wrapinstance(self.timeSink.qwidget(), QWidget) diff --git a/gr-qtgui/python/qtgui/bindings/ber_sink_b_python.cc b/gr-qtgui/python/qtgui/bindings/ber_sink_b_python.cc index 7d8071d8d4..664c9ca7e6 100644 --- a/gr-qtgui/python/qtgui/bindings/ber_sink_b_python.cc +++ b/gr-qtgui/python/qtgui/bindings/ber_sink_b_python.cc @@ -55,19 +55,6 @@ void bind_ber_sink_b(py::module& m) .def("exec_", &ber_sink_b::exec_, D(ber_sink_b, exec_)) - // .def("pyqwidget",&ber_sink_b::pyqwidget, - // D(ber_sink_b,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. - .def( - "pyqwidget", - [](std::shared_ptr<ber_sink_b> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(ber_sink_b, pyqwidget)) - - .def("set_y_axis", &ber_sink_b::set_y_axis, py::arg("min"), diff --git a/gr-qtgui/python/qtgui/bindings/const_sink_c_python.cc b/gr-qtgui/python/qtgui/bindings/const_sink_c_python.cc index bd0fd5912b..db2558d1c4 100644 --- a/gr-qtgui/python/qtgui/bindings/const_sink_c_python.cc +++ b/gr-qtgui/python/qtgui/bindings/const_sink_c_python.cc @@ -56,20 +56,12 @@ void bind_const_sink_c(py::module& m) .def("exec_", &const_sink_c::exec_, D(const_sink_c, exec_)) - .def("qwidget", &const_sink_c::qwidget, D(const_sink_c, qwidget)) - - - // .def("pyqwidget",&const_sink_c::pyqwidget, - // D(const_sink_c,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<const_sink_c> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](const_sink_c& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(const_sink_c, pyqwidget)) + D(const_sink_c, qwidget)) .def("set_y_axis", diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/ber_sink_b_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/ber_sink_b_pydoc_template.h index 9af5de6831..114cbe350e 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/ber_sink_b_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/ber_sink_b_pydoc_template.h @@ -30,9 +30,6 @@ static const char* __doc_gr_qtgui_ber_sink_b_make = R"doc()doc"; static const char* __doc_gr_qtgui_ber_sink_b_exec_ = R"doc()doc"; -static const char* __doc_gr_qtgui_ber_sink_b_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_ber_sink_b_set_y_axis = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/const_sink_c_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/const_sink_c_pydoc_template.h index 09bda38572..b6443ee4e8 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/const_sink_c_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/const_sink_c_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_const_sink_c_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_const_sink_c_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_const_sink_c_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_const_sink_c_set_y_axis = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/edit_box_msg_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/edit_box_msg_pydoc_template.h index 80c299d0c0..e9b3199b7a 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/edit_box_msg_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/edit_box_msg_pydoc_template.h @@ -31,6 +31,3 @@ static const char* __doc_gr_qtgui_edit_box_msg_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_edit_box_msg_qwidget = R"doc()doc"; - - -static const char* __doc_gr_qtgui_edit_box_msg_pyqwidget = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_c_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_c_pydoc_template.h index 53bb9f47a9..4a7db88bd3 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_c_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_c_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_eye_sink_c_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_eye_sink_c_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_eye_sink_c_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_eye_sink_c_set_y_axis = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_f_pydoc_template.h index e9dc5fd9b8..4ecf3455d0 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/eye_sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_eye_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_eye_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_eye_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_eye_sink_f_set_y_axis = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_c_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_c_pydoc_template.h index 3134354a9a..5f7be5cb5a 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_c_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_c_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_freq_sink_c_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_freq_sink_c_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_freq_sink_c_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_freq_sink_c_set_fft_size = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_f_pydoc_template.h index be6020de4a..58296f2d05 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/freq_sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_freq_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_freq_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_freq_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_freq_sink_f_set_fft_size = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/histogram_sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/histogram_sink_f_pydoc_template.h index a6804fd279..ed4bd4c547 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/histogram_sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/histogram_sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_histogram_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_histogram_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_histogram_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_histogram_sink_f_title = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/number_sink_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/number_sink_pydoc_template.h index 4d69a0b6a1..f56d23b629 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/number_sink_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/number_sink_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_number_sink_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_number_sink_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_number_sink_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_number_sink_set_update_time = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/sink_c_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/sink_c_pydoc_template.h index 5422434a7b..58f3410622 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/sink_c_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/sink_c_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_sink_c_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_sink_c_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_sink_c_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_sink_c_set_fft_size = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/sink_f_pydoc_template.h index d0e4fb4b20..018e73a8a2 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_sink_f_set_fft_size = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_b_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_b_pydoc_template.h index 4ca1ce62ee..e930fa41db 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_b_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_b_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_time_raster_sink_b_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_time_raster_sink_b_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_time_raster_sink_b_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_time_raster_sink_b_set_x_label = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_f_pydoc_template.h index c8b20bbaa9..5babd88600 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/time_raster_sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_time_raster_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_time_raster_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_time_raster_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_time_raster_sink_f_set_x_label = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_c_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_c_pydoc_template.h index aab6d92778..f000574379 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_c_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_c_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_time_sink_c_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_time_sink_c_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_time_sink_c_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_time_sink_c_set_y_axis = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_f_pydoc_template.h index 42c319490c..93337d102b 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/time_sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_time_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_time_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_time_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_time_sink_f_set_y_axis = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/vector_sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/vector_sink_f_pydoc_template.h index a420fe3b7c..e6c593bda9 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/vector_sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/vector_sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_vector_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_vector_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_vector_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_vector_sink_f_vlen = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_c_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_c_pydoc_template.h index 8beacb4201..999c47a637 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_c_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_c_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_waterfall_sink_c_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_waterfall_sink_c_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_waterfall_sink_c_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_waterfall_sink_c_clear_data = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_f_pydoc_template.h b/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_f_pydoc_template.h index ed9b5b2bfe..dcbf6af834 100644 --- a/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_f_pydoc_template.h +++ b/gr-qtgui/python/qtgui/bindings/docstrings/waterfall_sink_f_pydoc_template.h @@ -33,9 +33,6 @@ static const char* __doc_gr_qtgui_waterfall_sink_f_exec_ = R"doc()doc"; static const char* __doc_gr_qtgui_waterfall_sink_f_qwidget = R"doc()doc"; -static const char* __doc_gr_qtgui_waterfall_sink_f_pyqwidget = R"doc()doc"; - - static const char* __doc_gr_qtgui_waterfall_sink_f_clear_data = R"doc()doc"; diff --git a/gr-qtgui/python/qtgui/bindings/edit_box_msg_python.cc b/gr-qtgui/python/qtgui/bindings/edit_box_msg_python.cc index e65d81721b..b4bc1ee4ca 100644 --- a/gr-qtgui/python/qtgui/bindings/edit_box_msg_python.cc +++ b/gr-qtgui/python/qtgui/bindings/edit_box_msg_python.cc @@ -55,23 +55,11 @@ void bind_edit_box_msg(py::module& m) .def("exec_", &edit_box_msg::exec_, D(edit_box_msg, exec_)) - // .def("pyqwidget",&edit_box_msg::pyqwidget, - // D(edit_box_msg,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. + .def( - "pyqwidget", - [](std::shared_ptr<edit_box_msg> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](edit_box_msg& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(edit_box_msg, pyqwidget)) - - - .def("qwidget", &edit_box_msg::qwidget, D(edit_box_msg, qwidget)) - - - .def("pyqwidget", &edit_box_msg::pyqwidget, D(edit_box_msg, pyqwidget)) - - ; + D(edit_box_msg, qwidget)); } diff --git a/gr-qtgui/python/qtgui/bindings/eye_sink_c_python.cc b/gr-qtgui/python/qtgui/bindings/eye_sink_c_python.cc index b37f303baf..c737c74c37 100644 --- a/gr-qtgui/python/qtgui/bindings/eye_sink_c_python.cc +++ b/gr-qtgui/python/qtgui/bindings/eye_sink_c_python.cc @@ -59,20 +59,11 @@ void bind_eye_sink_c(py::module& m) .def("exec_", &eye_sink_c::exec_, D(eye_sink_c, exec_)) - .def("qwidget", &eye_sink_c::qwidget, D(eye_sink_c, qwidget)) - - - // .def("pyqwidget",&eye_sink_c::pyqwidget, - // D(eye_sink_c,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<eye_sink_c> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(eye_sink_c, pyqwidget)) + "qwidget", + [](eye_sink_c& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(eye_sink_c, qwidget)) + .def("set_y_axis", &eye_sink_c::set_y_axis, diff --git a/gr-qtgui/python/qtgui/bindings/eye_sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/eye_sink_f_python.cc index 61a902b962..ac8d759da0 100644 --- a/gr-qtgui/python/qtgui/bindings/eye_sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/eye_sink_f_python.cc @@ -56,20 +56,11 @@ void bind_eye_sink_f(py::module& m) .def("exec_", &eye_sink_f::exec_, D(eye_sink_f, exec_)) - .def("qwidget", &eye_sink_f::qwidget, D(eye_sink_f, qwidget)) - - - // .def("pyqwidget",&eye_sink_f::pyqwidget, - // D(eye_sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<eye_sink_f> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(eye_sink_f, pyqwidget)) + "qwidget", + [](eye_sink_f& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(eye_sink_f, qwidget)) + .def("set_y_axis", &eye_sink_f::set_y_axis, diff --git a/gr-qtgui/python/qtgui/bindings/freq_sink_c_python.cc b/gr-qtgui/python/qtgui/bindings/freq_sink_c_python.cc index bdb0f9b6a4..6ca230c7d9 100644 --- a/gr-qtgui/python/qtgui/bindings/freq_sink_c_python.cc +++ b/gr-qtgui/python/qtgui/bindings/freq_sink_c_python.cc @@ -59,20 +59,10 @@ void bind_freq_sink_c(py::module& m) .def("exec_", &freq_sink_c::exec_, D(freq_sink_c, exec_)) - .def("qwidget", &freq_sink_c::qwidget, D(freq_sink_c, qwidget)) - - - // .def("pyqwidget",&freq_sink_c::pyqwidget, - // D(freq_sink_c,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<freq_sink_c> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(freq_sink_c, pyqwidget)) + "qwidget", + [](freq_sink_c& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(freq_sink_c, qwidget)) .def("set_fft_size", diff --git a/gr-qtgui/python/qtgui/bindings/freq_sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/freq_sink_f_python.cc index 35ac7a5f68..975fadf18f 100644 --- a/gr-qtgui/python/qtgui/bindings/freq_sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/freq_sink_f_python.cc @@ -59,20 +59,10 @@ void bind_freq_sink_f(py::module& m) .def("exec_", &freq_sink_f::exec_, D(freq_sink_f, exec_)) - .def("qwidget", &freq_sink_f::qwidget, D(freq_sink_f, qwidget)) - - - // .def("pyqwidget",&freq_sink_f::pyqwidget, - // D(freq_sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<freq_sink_f> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(freq_sink_f, pyqwidget)) + "qwidget", + [](freq_sink_f& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(freq_sink_f, qwidget)) .def("set_fft_size", diff --git a/gr-qtgui/python/qtgui/bindings/histogram_sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/histogram_sink_f_python.cc index f0ff24abc5..ca25ab7894 100644 --- a/gr-qtgui/python/qtgui/bindings/histogram_sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/histogram_sink_f_python.cc @@ -60,20 +60,12 @@ void bind_histogram_sink_f(py::module& m) .def("exec_", &histogram_sink_f::exec_, D(histogram_sink_f, exec_)) - .def("qwidget", &histogram_sink_f::qwidget, D(histogram_sink_f, qwidget)) - - - // .def("pyqwidget",&histogram_sink_f::pyqwidget, - // D(histogram_sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<histogram_sink_f> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](histogram_sink_f& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(histogram_sink_f, pyqwidget)) + D(histogram_sink_f, qwidget)) .def("title", &histogram_sink_f::title, D(histogram_sink_f, title)) diff --git a/gr-qtgui/python/qtgui/bindings/number_sink_python.cc b/gr-qtgui/python/qtgui/bindings/number_sink_python.cc index 8d7c4c3616..c172806b33 100644 --- a/gr-qtgui/python/qtgui/bindings/number_sink_python.cc +++ b/gr-qtgui/python/qtgui/bindings/number_sink_python.cc @@ -57,20 +57,10 @@ void bind_number_sink(py::module& m) .def("exec_", &number_sink::exec_, D(number_sink, exec_)) - .def("qwidget", &number_sink::qwidget, D(number_sink, qwidget)) - - - // .def("pyqwidget",&number_sink::pyqwidget, - // D(number_sink,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<number_sink> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(number_sink, pyqwidget)) + "qwidget", + [](number_sink& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(number_sink, qwidget)) .def("set_update_time", diff --git a/gr-qtgui/python/qtgui/bindings/sink_c_python.cc b/gr-qtgui/python/qtgui/bindings/sink_c_python.cc index 39315217f7..c765408178 100644 --- a/gr-qtgui/python/qtgui/bindings/sink_c_python.cc +++ b/gr-qtgui/python/qtgui/bindings/sink_c_python.cc @@ -59,18 +59,10 @@ void bind_sink_c(py::module& m) .def("exec_", &sink_c::exec_, D(sink_c, exec_)) - .def("qwidget", &sink_c::qwidget, D(sink_c, qwidget)) - - - // .def("pyqwidget",&sink_c::pyqwidget, - // D(sink_c,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<sink_c> p) { return PyLong_AsLongLong(p->pyqwidget()); }, - D(sink_c, pyqwidget)) + "qwidget", + [](sink_c& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(sink_c, qwidget)) .def("set_fft_size", diff --git a/gr-qtgui/python/qtgui/bindings/sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/sink_f_python.cc index e2635b72b8..3d4473ca53 100644 --- a/gr-qtgui/python/qtgui/bindings/sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/sink_f_python.cc @@ -59,18 +59,10 @@ void bind_sink_f(py::module& m) .def("exec_", &sink_f::exec_, D(sink_f, exec_)) - .def("qwidget", &sink_f::qwidget, D(sink_f, qwidget)) - - - // .def("pyqwidget",&sink_f::pyqwidget, - // D(sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<sink_f> p) { return PyLong_AsLongLong(p->pyqwidget()); }, - D(sink_f, pyqwidget)) + "qwidget", + [](sink_f& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(sink_f, qwidget)) .def("set_fft_size", diff --git a/gr-qtgui/python/qtgui/bindings/time_raster_sink_b_python.cc b/gr-qtgui/python/qtgui/bindings/time_raster_sink_b_python.cc index 8e4de7f443..2fb84e3e44 100644 --- a/gr-qtgui/python/qtgui/bindings/time_raster_sink_b_python.cc +++ b/gr-qtgui/python/qtgui/bindings/time_raster_sink_b_python.cc @@ -61,20 +61,13 @@ void bind_time_raster_sink_b(py::module& m) .def("exec_", &time_raster_sink_b::exec_, D(time_raster_sink_b, exec_)) - .def("qwidget", &time_raster_sink_b::qwidget, D(time_raster_sink_b, qwidget)) - - - // .def("pyqwidget",&time_raster_sink_b::pyqwidget, - // D(time_raster_sink_b,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<time_raster_sink_b> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](time_raster_sink_b& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(time_raster_sink_b, pyqwidget)) + D(time_raster_sink_b, qwidget)) + .def("set_x_range", &time_raster_sink_b::set_x_range, diff --git a/gr-qtgui/python/qtgui/bindings/time_raster_sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/time_raster_sink_f_python.cc index 4665015eeb..539b97bce9 100644 --- a/gr-qtgui/python/qtgui/bindings/time_raster_sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/time_raster_sink_f_python.cc @@ -61,20 +61,13 @@ void bind_time_raster_sink_f(py::module& m) .def("exec_", &time_raster_sink_f::exec_, D(time_raster_sink_f, exec_)) - .def("qwidget", &time_raster_sink_f::qwidget, D(time_raster_sink_f, qwidget)) - - - // .def("pyqwidget",&time_raster_sink_f::pyqwidget, - // D(time_raster_sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<time_raster_sink_f> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](time_raster_sink_f& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(time_raster_sink_f, pyqwidget)) + D(time_raster_sink_f, qwidget)) + .def("set_x_range", &time_raster_sink_f::set_x_range, diff --git a/gr-qtgui/python/qtgui/bindings/time_sink_c_python.cc b/gr-qtgui/python/qtgui/bindings/time_sink_c_python.cc index f28614f920..41bec62115 100644 --- a/gr-qtgui/python/qtgui/bindings/time_sink_c_python.cc +++ b/gr-qtgui/python/qtgui/bindings/time_sink_c_python.cc @@ -60,20 +60,11 @@ void bind_time_sink_c(py::module& m) .def("exec_", &time_sink_c::exec_, D(time_sink_c, exec_)) - .def("qwidget", &time_sink_c::qwidget, D(time_sink_c, qwidget)) - - - // .def("pyqwidget",&time_sink_c::pyqwidget, - // D(time_sink_c,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<time_sink_c> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(time_sink_c, pyqwidget)) + "qwidget", + [](time_sink_c& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(time_sink_c, qwidget)) + .def("set_y_axis", &time_sink_c::set_y_axis, diff --git a/gr-qtgui/python/qtgui/bindings/time_sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/time_sink_f_python.cc index 20d65ac786..e7cd5673ee 100644 --- a/gr-qtgui/python/qtgui/bindings/time_sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/time_sink_f_python.cc @@ -57,20 +57,11 @@ void bind_time_sink_f(py::module& m) .def("exec_", &time_sink_f::exec_, D(time_sink_f, exec_)) - .def("qwidget", &time_sink_f::qwidget, D(time_sink_f, qwidget)) - - - // .def("pyqwidget",&time_sink_f::pyqwidget, - // D(time_sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<time_sink_f> p) { - return PyLong_AsLongLong(p->pyqwidget()); - }, - D(time_sink_f, pyqwidget)) + "qwidget", + [](time_sink_f& self) { return reinterpret_cast<uintptr_t>(self.qwidget()); }, + D(time_sink_f, qwidget)) + .def("set_y_axis", &time_sink_f::set_y_axis, diff --git a/gr-qtgui/python/qtgui/bindings/vector_sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/vector_sink_f_python.cc index be616dd18c..f5b85e4251 100644 --- a/gr-qtgui/python/qtgui/bindings/vector_sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/vector_sink_f_python.cc @@ -60,20 +60,12 @@ void bind_vector_sink_f(py::module& m) .def("exec_", &vector_sink_f::exec_, D(vector_sink_f, exec_)) - .def("qwidget", &vector_sink_f::qwidget, D(vector_sink_f, qwidget)) - - - // .def("pyqwidget",&time_sink_c::pyqwidget, - // D(vector_sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<vector_sink_f> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](vector_sink_f& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(vector_sink_f, pyqwidget)) + D(vector_sink_f, qwidget)) .def("vlen", &vector_sink_f::vlen, D(vector_sink_f, vlen)) diff --git a/gr-qtgui/python/qtgui/bindings/waterfall_sink_c_python.cc b/gr-qtgui/python/qtgui/bindings/waterfall_sink_c_python.cc index 240bcefbe7..73c04ab2f7 100644 --- a/gr-qtgui/python/qtgui/bindings/waterfall_sink_c_python.cc +++ b/gr-qtgui/python/qtgui/bindings/waterfall_sink_c_python.cc @@ -60,20 +60,12 @@ void bind_waterfall_sink_c(py::module& m) .def("exec_", &waterfall_sink_c::exec_, D(waterfall_sink_c, exec_)) - .def("qwidget", &waterfall_sink_c::qwidget, D(waterfall_sink_c, qwidget)) - - - // .def("pyqwidget",&waterfall_sink_c::pyqwidget, - // D(waterfall_sink_c,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<waterfall_sink_c> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](waterfall_sink_c& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(waterfall_sink_c, pyqwidget)) + D(waterfall_sink_c, qwidget)) .def("clear_data", &waterfall_sink_c::clear_data, D(waterfall_sink_c, clear_data)) diff --git a/gr-qtgui/python/qtgui/bindings/waterfall_sink_f_python.cc b/gr-qtgui/python/qtgui/bindings/waterfall_sink_f_python.cc index c3a48d6a38..434f8ea878 100644 --- a/gr-qtgui/python/qtgui/bindings/waterfall_sink_f_python.cc +++ b/gr-qtgui/python/qtgui/bindings/waterfall_sink_f_python.cc @@ -60,20 +60,13 @@ void bind_waterfall_sink_f(py::module& m) .def("exec_", &waterfall_sink_f::exec_, D(waterfall_sink_f, exec_)) - .def("qwidget", &waterfall_sink_f::qwidget, D(waterfall_sink_f, qwidget)) - - - // .def("pyqwidget",&waterfall_sink_f::pyqwidget, - // D(waterfall_sink_f,pyqwidget) - // ) - // For the sip conversion to python to work, the widget object - // needs to be explicitly converted to long long. .def( - "pyqwidget", - [](std::shared_ptr<waterfall_sink_f> p) { - return PyLong_AsLongLong(p->pyqwidget()); + "qwidget", + [](waterfall_sink_f& self) { + return reinterpret_cast<uintptr_t>(self.qwidget()); }, - D(waterfall_sink_f, pyqwidget)) + D(waterfall_sink_f, qwidget)) + .def("clear_data", &waterfall_sink_f::clear_data, D(waterfall_sink_f, clear_data)) |