summaryrefslogtreecommitdiff
path: root/gr-blocks/python/blocks/bindings
Commit message (Collapse)AuthorAgeFilesLines
* blocks: document the supported operations in transcendentalMarcus Müller2022-01-031-1/+1
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* blocks: Throttle consume-only modeMarcus Müller2021-07-191-1/+1
| | | | | | | | | When throttling a sample flow, it's not necessary to produce items at the desired average rate - consuming them at a limited rate suffices to slow down the processing of the whole flow graph just as well, and avoids a copy. Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* blocks: zero-output, zero-copy Head modeMarcus Müller2021-06-281-1/+1
| | | | | | | | | If you don't want to test a stream with an exact number of input, but just want your flow graph to terminate after a given number of items, having a head block without an output enables you to do that without copying the data from Head's in- to its output. Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* global: automatically remove unused boost includesMarcus Müller2021-06-221-1/+1
| | | | | | | | used command: sed -i '/^#include.*boost.*$/d' $(ag -L '(boost::|BOOST)' $(ag --cpp -l '#include <boost')) Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* gr-blocks: Add missing pybind11 binding for Phase Shift block.Ron Economos2021-06-041-0/+1
| | | | Signed-off-by: Ron Economos <w6rz@comcast.net>
* blocks: use VOLK popcnt implementations for count_bitsNicholas Corgan2021-05-131-2/+2
| | | | | | * Changed count_bits64 input parameter type to uint64_t Signed-off-by: Nicholas Corgan <n.corgan@gmail.com>
* blocks: remove deprecated network blocksJosh Morman2021-04-218-290/+0
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* blocks: Add msg port to set rotator's phase incIgor Freire2021-04-171-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Receivers commonly estimate the frequency offset on a block that is downstream relative to the frequency correction NCO. In such architectures, typically the frequency offset estimator feeds the estimation back to the NCO. Until now, this was not possible if using the rotator block as the NCO. This patch adds a message port to the rotator block such that the referred feedback architecture becomes feasible. A downstream block can estimate the frequency offset and send a message to the rotator block to update its rotating frequency (i.e., its phase increment). The requesting block can schedule the phase increment update to a specific absolute sample index. This feature is useful for receivers that rely on a frame structure and pilot-aided frequency offset estimation. If the true frequency offset is allowed to change at any random instant throughout the frame, the frame-averaged frequency offset estimation can become less reliable. Instead, it is often better to update the frequency correction right at the start of a new frame. With that, the true frequency offset is preserved in the course of a frame and only changes around the boundary between consecutive frames. For flexibility when using this feature, it is the responsibility of the downstream block to schedule the phase increment update properly. For example, if there is a decimator in between the rotator block and the frequency offset estimator, the latter will need to take the sample rate conversion into account when defining the absolute sample offset when the update should be applied. Besides, the rotator block can now place a tag on the sample where it updates the phase increment. This allows a downstream block to better calibrate and validate the scheduling of phase increment updates. Signed-off-by: Igor Freire <igor@blockstream.com>
* blocks: message_debug: vector indices are size_t, not signed intMarcus Müller2021-03-231-1/+1
| | | | Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* gr-blocks: remove pdu blocksJacob Gilbert2021-03-1820-751/+0
| | | | | | | | | | | | | | | | | | | | | | | | The following have been moved to the new gr::pdu module or to gr::network and are no longer needed in gr::blocks: - pdu (noblock) - pdu_filter block - pdu_remove block - pdu_set block - pdu_to_tagged_stream block - random_pdu block - socket_pdu block - stream_pdu_base (noblock) - tagged_stream_to_pdu block - tcp_connection (noblock) - tuntap_pdu block The digital and FEC modules had a large number of references to the PDU blocks that were moved from gr-blocks to gr-pdu, this updates these changes in example flowgraphs and a few python files. The usage-manual update will be propagated to the wiki so that future exports will remain up to date. Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
* gr-blocks: deprecate print_pdu port of message_debug blockJacob Gilbert2021-02-251-2/+2
| | | | | | | | | Having two print ports on this block has confused a number of people, most recently issue #4191, and combining them is straightforward and should make this block easier to use. The print_pdu formatting is now be applied on the print port if the message is a PDU. Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
* clang-tidy: run full .clang-tidy on C++17 codebaseMarcus Müller2021-01-194-4/+4
| | | | | | | | | | | | | | | | | | | | run /usr/share/clang/run-clang-tidy.py -checks=file '-header-filter=.*' -fix .. from build directory. Then, clang-format -i $(git diff --name-only origin/master) to clang-format changed files. Then, refresh all header hashes in pybind bindings (*/python/bindings/*.cc) Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* rotator: add getter rotator::phase()Jeff Long2020-11-251-1/+4
|
* modernization: `override` instead of virtual in all compilation unitsMarcus Müller2020-11-031-1/+1
|
* Fix typos throughout the codeluzpaz2020-10-293-6/+6
| | | | | | | * Fix various typos Found via `codespell v2.0.dev` `codespell -q 3 -L ans,fo,hist,inout,ist,ith,nd,sinc,uint -S ./volk`
* pybind: add implicit conversion from int to enummormj2020-10-284-0/+8
| | | | | | | | | | | | | * dtv: add implicit conversion from int to enum * analog: add implicit conversion from int to enum * blocks: add implicit conversion from int to enum * digital: add implicit conversion from int to enum * fec: add implicit conversion from int to enum * fft: add implicit conversion from int to enum * filter: add implicit conversion from int to enum * qtgui: add implicit conversion from int to enum * trellis: add implicit conversion from int to enum * vocoder: add implicit conversion from int to enum * bindtool: add implicitly_convertible to all enums
* blocks: improvements to the message_debug blockJacob Gilbert2020-10-242-2/+13
| | | | aggregates the data to be printed into a stringstream so that it is printed at the same time reducing debug information becoming muddled between competing cout statements. this change also provides an argument to this block to disable the printing of PDU uniform vectors which are often not needed for debug purposes
* blocks: comment fix, typo in complex_to_real.h, complex_to_imag.hPaul Boven2020-10-122-4/+4
|
* gr-blocks: Add missing methods to Add Const block pybind11 binding.Ron Economos2020-10-081-1/+3
|
* gr-blocks: Add missing methods to Multiply Const block pybind11 binding.Ron Economos2020-10-071-1/+3
|
* blocks: New block 'Stream Demux'David Pi2020-09-254-2/+75
| | | | | | | | | | | | | | | | Stream demuxing block to demultiplex one stream into N output streams. Demuxes a stream producing N outputs streams that contains n_0 items in the first stream, n_1 items in the second, etc. and repeats. Number of items of each output stream is specified using the 'lengths' parameter like so [n_0, n_1, ..., n_N-1]. Example: lengths = [2, 3, 4] input stream: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...] output_streams: [0, 1, 9, 10, ...] [2, 3, 4, 11, ...] [5, 6, 7, 8, ...]
* gr-blocks: More graceful error handling of missing sndfile dependency.Ron Economos2020-09-202-3/+11
|
* blocks/correctiq: Clean up member initializationThomas Habets2020-09-092-2/+2
|
* gr-blocks: Transition the WAV sink and source blocks to libsndfile.Ron Economos2020-09-014-49/+39
| | | | Compressed input and output with FLAC and Ogg Vorbis now supported.
* blocks: remove log2_constMarcus Müller2020-08-144-94/+0
| | | | | | | | | | | | Was not standards-compliant (assert(0) in constexpr) Only used in packed_to_unpacked to get the log2(number of bits(type)) in packed_to_unpacked<type>. Was not wrapped to python nor public API. To little surprise, a static method compiles faster, and gets compile-time-calculated by a modern compiler, too.
* pybind: add hash check to binding file creation (#3472)mormj2020-06-04165-163/+1543
|
* pybind: run clang-formatJosh Morman2020-06-041-7/+6
|
* blocks: add pybind11 bindingsJosh Morman2020-06-04324-0/+12565