summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/python/gnuradio/ctrlport
Commit message (Collapse)AuthorAgeFilesLines
* runtime: pep8 formattingJosh Morman2021-11-247-279/+355
| | | | Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* qtgui: Replace pyqwidget() with qwidget()David Winter2021-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* runtime: ctrlport: cmake: Fix thrift dependency for OOTs.Ryan Volz2021-06-011-2/+2
| | | | | | | | | | | | | | | | | | | First, this moves find_package(THRIFT) up to the gnuradio-runtime CMakeLists.txt so that cache variables no longer have to be used to mark the found components. This fixes an issue where the thrift-specific headers were not installed even when thrift was enabled, because on first run the detection was occurring AFTER the runtime include CMakeLists.txt was evaluated. See further discussion in #2734, which solved one issue related to this setup. Further, even with thrift enabled, the thrift headers are not required for OOTs to build against gnuradio-runtime. OOTs would need to take special action to use those headers, in which case they should detect/enable thrift on their own. Thus, this makes the change to not add thrift as an extra dependency for OOTs and switches linking of Thrift::thrift from PUBLIC to PRIVATE. Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
* runtime: ctrlport: cmake: Add target for thrift python bindings.Ryan Volz2021-06-011-0/+4
| | | | | | | | Without a target, the Python bindings are not built (i.e. the custom command is not run) until they are needed, during install. By adding a target, they will be generated during the build step. Signed-off-by: Ryan Volz <ryan.volz@gmail.com>
* add import fft to python files that reference fft.windowJosh Morman2020-12-181-1/+1
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* global replace of filter.firdes.WIN_ with fft.window.WIN_Josh Morman2020-12-181-2/+2
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* pybind11: Remove SWIG remnants.Ron Economos2020-10-121-2/+0
|
* python: Remove unnecessary 'from __future__ import'Oleksandr Kravchuk2020-08-037-12/+0
| | | | | | | | | | | | | | | | All of the removed `from __future__ import` were needed in older versions of Python (mostly 2.5.x and below) but later became mandatory in most versions of Python 3 hence are not necessary anymore. More specifically, according to __future__.py[1]: - unicode_literals is part of Python since versions 2.6.0 and 3.0.0; - print_function is part of Python since versions 2.6.0 and 3.0.0; - absolute_import is part of Python since versions 2.5.0 and 3.0.0; - division is part of Python since versions 2.2.0 and 3.0.0; Get rid of those unnecessary imports to slightly clean up the codebase. [1] https://github.com/python/cpython/blob/master/Lib/__future__.py
* Update license header to SPDX formatdevnulling2020-01-279-114/+9
|
* ctrlport monitors: fix config checkBastian Bloessl2019-06-193-16/+11
|
* ctrlport: monitor error handlingBastian Bloessl2019-06-191-3/+3
|
* perf-monitor: port gr3.8 and qt5Bastian Bloessl2019-06-191-256/+245
|
* ctrport-monitor: fix error handlingBastian Bloessl2019-06-194-123/+87
|
* runtime: port ctrlport monitor to 3.8 and qt5Bastian Bloessl2019-06-196-170/+148
|
* ctrlport: install Python apps as PROGRAMS, not FILESMichael Dickens2018-11-161-1/+1
|
* gr-runtime: Improve exception handling in ControlPort MonitorBrennan Ashton2018-11-151-10/+7
|
* gr-runtime: Properly handle optional support for thrift RPC TransportBrennan Ashton2018-11-151-2/+9
|
* ctrlport: gr-perf-monitorx: remove iteritems usageBrent Stapleton2018-11-131-2/+2
| | | | | | | Removing usage of dict.iteritems in gr-perf-monitorx. Replaced with items() because - the dictionaries are sufficiently small - We're calling sorted() on them anyway
* Fix invalid escape sequences.Clayton Smith2018-11-011-2/+2
|
* ctrlport: Remove superfluous 'import exceptions'Martin Braun2018-07-142-15/+11
| | | | | It's not needed, not even with Python 2.7. It will fail with Python 3, though.
* Merge branch 'python3_fix' into nextAndrej Rode2018-06-247-38/+52
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Manual merge conflict resolution has been applied to following conflicts: * Typos: * gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py * gr-blocks/python/blocks/qa_wavfile.py * gr-filter/examples/gr_filtdes_api.py * grc/blocks/parameter.xml * gr-uhd/python/uhd/__init__.py * ValueError -> RuntimeError: * gr-blocks/python/blocks/qa_hier_block2.py * relative Imports & other Py3k: * gr-digital/python/digital/psk_constellations.py * gr-digital/python/digital/qam_constellations.py * gr-digital/python/digital/test_soft_decisions.py * gr-digital/python/digital/gfsk.py * SequenceCompleter: * gr-utils/python/modtool/modtool_add.py * gr-utils/python/modtool/modtool_rename.py * gr-utils/python/modtool/modtool_rm.py * Updated API on next: * gr-blocks/grc/blocks_file_source.xml * gr-blocks/python/blocks/qa_file_source_sink.py * gr-qtgui/grc/qtgui_time_sink_x.xml * GRC Py3k Updates: * grc/core/Block.py * grc/core/Constants.py * grc/core/Platform.py * grc/core/utils/odict.py * grc/gui/Actions.py * grc/gui/Block.py * grc/gui/Executor.py * grc/gui/Port.py
| * Merge branch 'next' into python3Johnathan Corgan2017-03-161-15/+19
| |\ | | | | | | | | | | | | | | | Conflicts: gr-blocks/swig/blocks_swig.py.in gr-uhd/apps/uhd_app.py
| * | python3: update non-GRC components to use python2 or python3Douglas Anderson2017-02-267-38/+52
| | |
* | | Merge branch 'master' into nextMartin Braun2018-02-031-1/+1
|\ \ \ | |_|/ |/| |
| * | Comment typo fixing.luz.paz2018-02-031-1/+1
| | | | | | | | | | | | Luzpaz went ahead and found typos using `codespell -q 3`.
* | | runtime: move thrift dependencies before commandNathan West2017-03-151-10/+10
| | |
* | | Merge branch 'master' into nextJohnathan Corgan2017-03-051-10/+14
|\| | | |/ |/| | | | | Conflicts: gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt
| * Helped CMake maintain a clear dependency treeMarcus Müller2017-01-231-16/+19
| | | | | | | | | | | | | | | | by converting EXECUTE_COMMAND directives to add_custom_command with well-defined OUTPUT. This is all that was necessary to make GNU Radio build with Ninja in place of GNU Make.
* | Merge branch 'master' into nextJohnathan Corgan2016-10-281-1/+1
|\| | | | | | | | | | | | | Conflicts: gr-digital/swig/CMakeLists.txt gr-digital/swig/digital_swig.i gr-trellis/swig/CMakeLists.txt
| * gr-perf-monitorx: Remove unused PyQwt import.Philip Balister2016-10-251-1/+1
| | | | | | | | | | Reported-by: Kyle Unice <kyle.unice@L-3com.com> Signed-off-by: Philip Balister <philip@balister.org>
* | cmake: nuke cpack from existenceJohnathan Corgan2016-08-031-5/+0
|/ | | | | | CPack is not used, unmaintaned, and broken. This does not eliminate any MSVC build functionality.
* float(version) doesn't work with "1.9.0"; fixed nx version checkingMarcus Müller2016-04-141-2/+11
|
* ctrlport: gr-perf-monitorx: add small offset to avoid log(0) calls.Tom Rondeau2016-03-091-2/+2
|
* ctrlport: gr-perf-monitorx - don't stash the canvas, ask the figure.Tom Rondeau2016-03-091-12/+8
|
* ctrlport: Some version issues for running gr-perf-monitorxTom Rondeau2016-03-091-3/+19
| | | | | | Newer Matplotlib and Networkx modules have altered a few things on us. Doing some extra checks and setup to work with, hopefully, all current versions.
* ctrlport: provides a ControlPort model that connects directly with aTom Rondeau2015-10-162-0/+20
| | | | | | | | block's message handler. We still need to register this in setup_rpc, but there might be a way to automate the registering of this during set_msg_handler if ControlPort is enabled.
* Merge remote-tracking branch 'ckuethe/trap_import_errors'Johnathan Corgan2015-08-281-8/+13
|\
| * clarify missing module exception.Chris Kuethe2015-08-281-8/+13
| | | | | | | | reduces surprise and tells me what i need to do to fix it.
* | whitespace fixes and some minor adjustments for building the PythonTom Rondeau2015-08-171-1/+1
|/ | | | manual.
* ctrlport: fix gr-perf-monitorx crash when manipulating displayTom Rondeau2015-06-231-9/+36
|
* controlport: use proper default return value from prefs get_bool.Tom Rondeau2015-04-221-4/+4
|
* controlport: fixed up performance monitor.Tom Rondeau2015-04-221-58/+77
| | | | | | | | | Fixed a problem with display runtime or buffer graphs by not clearing and redrawing the entire graph, just updating the height of the bars. Only update table or graph when they are the visible elements. Shuts down timer when the graphs are closed.
* controlport: more cleanup and conveniencesTom Rondeau2015-04-021-1/+1
|
* controlport: cleaning up; trying to handle shutdown better.Tom Rondeau2015-04-021-0/+8
| | | | Added QA code in for testing probes and other basic connection features. Requires nthreads >= 10.
* controlport: adding performance and controlport monitor GRC blocks.Tom Rondeau2015-04-021-3/+3
| | | | | Updated thrift server conf to set an endpoint -- need to get host address instead of hardcoding to 127.0.0.1.
* controlport: Adds ability to configure Thrift through a config fileTom Rondeau2015-04-021-1/+13
| | | | Checks GNU Radio's preference files for [ControlPort] config option to point to a file name. That file is the same prefs structure with [Thrift] and key value pairs such as "port = 9090" to set config specific to Thrift.
* controlport: reorg abstraction layers for RPC connections.Tom Rondeau2015-04-025-291/+322
| | | | ThriftRadioClient has merged with and renamed to RPCConnectionThrift.
* controlport: more work on the translation layer; properties and setting ↵Tom Rondeau2015-04-024-86/+163
| | | | parameters in gr-ctrlport-monitor now working.
* controlport: more cleanup of python code to help generalize the interfaceTom Rondeau2015-04-024-81/+71
|
* controlport: cleanup and switching over to new Python common interface.Tom Rondeau2015-04-024-99/+123
|